trigger_system 1.3.0 → 1.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,58 +1,58 @@
1
- import{createRequire as cY}from"node:module";var gY=Object.create;var{getPrototypeOf:vY,defineProperty:L6,getOwnPropertyNames:r3,getOwnPropertyDescriptor:xY}=Object,o3=Object.prototype.hasOwnProperty;function n3(Z){return this[Z]}var hY,mY,t3=(Z,X,Q)=>{var U=Z!=null&&typeof Z==="object";if(U){var q=X?hY??=new WeakMap:mY??=new WeakMap,J=q.get(Z);if(J)return J}Q=Z!=null?gY(vY(Z)):{};let Y=X||!Z||!Z.__esModule?L6(Q,"default",{value:Z,enumerable:!0}):Q;for(let W of r3(Z))if(!o3.call(Y,W))L6(Y,W,{get:n3.bind(Z,W),enumerable:!0});if(U)q.set(Z,Y);return Y},e3=(Z)=>{var X=(a3??=new WeakMap).get(Z),Q;if(X)return X;if(X=L6({},"__esModule",{value:!0}),Z&&typeof Z==="object"||typeof Z==="function"){for(var U of r3(Z))if(!o3.call(X,U))L6(X,U,{get:n3.bind(Z,U),enumerable:!(Q=xY(Z,U))||Q.enumerable})}return a3.set(Z,X),X},a3,C=(Z,X)=>()=>(X||Z((X={exports:{}}).exports,X),X.exports);var uY=(Z)=>Z;function pY(Z,X){this[Z]=uY.bind(null,X)}var lY=(Z,X)=>{for(var Q in X)L6(Z,Q,{get:X[Q],enumerable:!0,configurable:!0,set:pY.bind(X,Q)})};var R=(Z,X)=>()=>(Z&&(X=Z(Z=0)),X);var M2=cY(import.meta.url);var K1=(Z)=>Array.isArray(Z)?Z:[Z],ZQ=(Z,X)=>{let Q=[[],[]];for(let U of Z)if(X(U))Q[0].push(U);else Q[1].push(U);return Q},A4,y0=(Z,X)=>Z.includes(X),XQ=(Z,X=0)=>[...Array(Z)].map((Q,U)=>U+X),m=(Z,X,Q)=>{if(Z===void 0)return X===void 0?[]:Array.isArray(X)?X:[X];if(Q?.prepend)if(Array.isArray(X))Z.unshift(...X);else Z.unshift(X);else if(Array.isArray(X))Z.push(...X);else Z.push(X);return Z},G1=(Z,X)=>{if(X===void 0||X===null)return Z??[];if(Z===void 0||Z===null)return K1(X);return Z.concat(X)},QQ=(...Z)=>Z.reduce(G1,[]),t0=(Z,X,Q)=>{if(Z===void 0)return Array.isArray(X)?X:[X];let U=Q?.isEqual??((q,J)=>q===J);for(let q of K1(X))if(!Z.some((J)=>U(J,q)))Z.push(q);return Z},UQ=(Z,X)=>Z.reduce((Q,U)=>{let q=U[X];return Q[q]=m(Q[q],U),Q},{}),V1=(Z,X,Q)=>Z.length===X.length&&Z.every(Q?.isEqual?(U,q)=>Q.isEqual(U,X[q]):(U,q)=>U===X[q]);var S4=R(()=>{A4=Array});var P0=(Z,X)=>G0(Z)===X,G0=(Z)=>{let X=typeof Z;return X==="object"?Z===null?"null":"object":X==="function"?"object":X},w0,qQ;var R2=R(()=>{w0={boolean:"boolean",null:"null",undefined:"undefined",bigint:"a bigint",number:"a number",object:"an object",string:"a string",symbol:"a symbol"},qQ={...w0,function:"a function"}});var JQ,l=(Z)=>a1(Z,JQ),a1=(Z,X=Error)=>{throw new X(Z)},G6,M=(Z)=>a1(Z,G6),c0=(Z)=>` ${Z}`,YQ="​";var e0=R(()=>{JQ=class JQ extends Error{};G6=class G6 extends Error{name="ParseError"}});var k=(Z,X)=>{let Q={},U=Array.isArray(Z),q=!1;for(let[J,Y]of Object.entries(Z).entries()){let W=U?X(J,Y[1]):X(...Y,J);q||=typeof W[0]==="number";let $=Array.isArray(W[0])||W.length===0?W:[W];for(let[L,V]of $)if(typeof L==="object")Q[L.group]=m(Q[L.group],V);else Q[L]=V}return q?Object.values(Q):Q};var zZ=R(()=>{S4()});class FZ{constructor(Z){Object.assign(this,Z)}}var HZ,V0=(Z,X)=>(Z in X),O2=(Z,X)=>(X in Z),WQ=class{},V6,dY=(Z,X)=>{let Q={},U={},q;for(q in Z)if(q in X)Q[q]=Z[q];else U[q]=Z[q];return[Q,U]},j4=(Z,X)=>dY(Z,X)[1],Z1=(Z)=>Object.keys(Z).length===0,r1=(Z)=>[...Object.entries(Z),...Object.getOwnPropertySymbols(Z).map((X)=>[X,Z[X]])],$Q=(Z,X)=>Object.defineProperties(Z,Object.getOwnPropertyDescriptors(X)),LQ=(Z)=>{let X=Object.keys(Z).sort(),Q={};for(let U=0;U<X.length;U++)Q[X[U]]=Z[X[U]];return Q},A0,GQ=(Z)=>Object.values(Z).filter((X)=>{if(typeof X==="number")return!0;return typeof Z[X]!=="number"});var T2=R(()=>{e0();zZ();HZ=Object.entries;V6=class V6 extends WQ{};A0=c0(`unset${YQ}`)});var BZ,MZ,RZ,iY,o1,_6=(Z)=>{let X=Object.getPrototypeOf(Z);while(X?.constructor&&(!V0(X.constructor.name,o1)||!(Z instanceof o1[X.constructor.name])))X=Object.getPrototypeOf(X);let Q=X?.constructor?.name;if(Q===void 0||Q==="Object")return;return Q},z6=(Z)=>typeof Z==="object"&&Z!==null?_6(Z)??"object":G0(Z),n,sY,aY,rY,VQ,H6=(Z)=>{let X=Object(Z).name??null;return X&&V0(X,o1)&&o1[X]===Z?X:null},OZ=(Z,X)=>{let Q=Z.prototype;while(Q!==null){if(Q===X.prototype)return!0;Q=Object.getPrototypeOf(Q)}return!1};var F6=R(()=>{R2();T2();BZ={Array,Boolean,Date,Error,Function,Map,Number,Promise,RegExp,Set,String,WeakMap,WeakSet},MZ=globalThis.File??Blob,RZ={ArrayBuffer,Blob,File:MZ,FormData,Headers,Request,Response,URL},iY={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array},o1={...BZ,...RZ,...iY,String,Number,Boolean},n=Array.isArray,sY={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"},aY={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"},rY={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"},VQ={...sY,...aY,...rY}});var _Q=(Z)=>zQ(Z,new Map),zQ=(Z,X)=>{if(typeof Z!=="object"||Z===null)return Z;if(X?.has(Z))return X.get(Z);let Q=H6(Z.constructor);if(Q==="Date")return new Date(Z.getTime());if(Q&&Q!=="Array")return Z;let U=Array.isArray(Z)?Z.slice():Object.create(Object.getPrototypeOf(Z)),q=Object.getOwnPropertyDescriptors(Z);if(X){X.set(Z,U);for(let J in q){let Y=q[J];if("get"in Y||"set"in Y)continue;Y.value=zQ(Y.value,X)}}return Object.defineProperties(U,q),U};var HQ=R(()=>{F6()});var FQ=()=>{};class S0{constructor(Z,...[X]){return Object.assign(Object.setPrototypeOf(Z.bind(X?.bind??this),this.constructor.prototype),X?.attach)}}var oY=(Z)=>{let X=A0;return()=>X===A0?X=Z():X},D1=(Z)=>typeof Z==="function"&&Z.length===0,BQ,MQ;var RQ=R(()=>{e0();T2();BQ=class extends Function{constructor(...Z){let X=Z.slice(0,-1),Q=Z[Z.length-1];try{super(...X,Q)}catch(U){return l(`Encountered an unexpected error while compiling your definition:
1
+ import{createRequire as dY}from"node:module";var gY=Object.create;var{getPrototypeOf:vY,defineProperty:L6,getOwnPropertyNames:r3,getOwnPropertyDescriptor:xY}=Object,o3=Object.prototype.hasOwnProperty;function n3(Z){return this[Z]}var hY,mY,t3=(Z,X,Q)=>{var U=Z!=null&&typeof Z==="object";if(U){var q=X?hY??=new WeakMap:mY??=new WeakMap,J=q.get(Z);if(J)return J}Q=Z!=null?gY(vY(Z)):{};let Y=X||!Z||!Z.__esModule?L6(Q,"default",{value:Z,enumerable:!0}):Q;for(let W of r3(Z))if(!o3.call(Y,W))L6(Y,W,{get:n3.bind(Z,W),enumerable:!0});if(U)q.set(Z,Y);return Y},e3=(Z)=>{var X=(a3??=new WeakMap).get(Z),Q;if(X)return X;if(X=L6({},"__esModule",{value:!0}),Z&&typeof Z==="object"||typeof Z==="function"){for(var U of r3(Z))if(!o3.call(X,U))L6(X,U,{get:n3.bind(Z,U),enumerable:!(Q=xY(Z,U))||Q.enumerable})}return a3.set(Z,X),X},a3,C=(Z,X)=>()=>(X||Z((X={exports:{}}).exports,X),X.exports);var uY=(Z)=>Z;function pY(Z,X){this[Z]=uY.bind(null,X)}var lY=(Z,X)=>{for(var Q in X)L6(Z,Q,{get:X[Q],enumerable:!0,configurable:!0,set:pY.bind(X,Q)})};var O=(Z,X)=>()=>(Z&&(X=Z(Z=0)),X);var M2=dY(import.meta.url);var K1=(Z)=>Array.isArray(Z)?Z:[Z],ZQ=(Z,X)=>{let Q=[[],[]];for(let U of Z)if(X(U))Q[0].push(U);else Q[1].push(U);return Q},A4,y0=(Z,X)=>Z.includes(X),XQ=(Z,X=0)=>[...Array(Z)].map((Q,U)=>U+X),m=(Z,X,Q)=>{if(Z===void 0)return X===void 0?[]:Array.isArray(X)?X:[X];if(Q?.prepend)if(Array.isArray(X))Z.unshift(...X);else Z.unshift(X);else if(Array.isArray(X))Z.push(...X);else Z.push(X);return Z},G1=(Z,X)=>{if(X===void 0||X===null)return Z??[];if(Z===void 0||Z===null)return K1(X);return Z.concat(X)},QQ=(...Z)=>Z.reduce(G1,[]),t0=(Z,X,Q)=>{if(Z===void 0)return Array.isArray(X)?X:[X];let U=Q?.isEqual??((q,J)=>q===J);for(let q of K1(X))if(!Z.some((J)=>U(J,q)))Z.push(q);return Z},UQ=(Z,X)=>Z.reduce((Q,U)=>{let q=U[X];return Q[q]=m(Q[q],U),Q},{}),V1=(Z,X,Q)=>Z.length===X.length&&Z.every(Q?.isEqual?(U,q)=>Q.isEqual(U,X[q]):(U,q)=>U===X[q]);var S4=O(()=>{A4=Array});var P0=(Z,X)=>G0(Z)===X,G0=(Z)=>{let X=typeof Z;return X==="object"?Z===null?"null":"object":X==="function"?"object":X},w0,qQ;var O2=O(()=>{w0={boolean:"boolean",null:"null",undefined:"undefined",bigint:"a bigint",number:"a number",object:"an object",string:"a string",symbol:"a symbol"},qQ={...w0,function:"a function"}});var JQ,l=(Z)=>a1(Z,JQ),a1=(Z,X=Error)=>{throw new X(Z)},G6,M=(Z)=>a1(Z,G6),d0=(Z)=>` ${Z}`,YQ="​";var e0=O(()=>{JQ=class JQ extends Error{};G6=class G6 extends Error{name="ParseError"}});var k=(Z,X)=>{let Q={},U=Array.isArray(Z),q=!1;for(let[J,Y]of Object.entries(Z).entries()){let W=U?X(J,Y[1]):X(...Y,J);q||=typeof W[0]==="number";let $=Array.isArray(W[0])||W.length===0?W:[W];for(let[L,V]of $)if(typeof L==="object")Q[L.group]=m(Q[L.group],V);else Q[L]=V}return q?Object.values(Q):Q};var zZ=O(()=>{S4()});class FZ{constructor(Z){Object.assign(this,Z)}}var HZ,V0=(Z,X)=>(Z in X),R2=(Z,X)=>(X in Z),WQ=class{},V6,cY=(Z,X)=>{let Q={},U={},q;for(q in Z)if(q in X)Q[q]=Z[q];else U[q]=Z[q];return[Q,U]},j4=(Z,X)=>cY(Z,X)[1],Z1=(Z)=>Object.keys(Z).length===0,r1=(Z)=>[...Object.entries(Z),...Object.getOwnPropertySymbols(Z).map((X)=>[X,Z[X]])],$Q=(Z,X)=>Object.defineProperties(Z,Object.getOwnPropertyDescriptors(X)),LQ=(Z)=>{let X=Object.keys(Z).sort(),Q={};for(let U=0;U<X.length;U++)Q[X[U]]=Z[X[U]];return Q},A0,GQ=(Z)=>Object.values(Z).filter((X)=>{if(typeof X==="number")return!0;return typeof Z[X]!=="number"});var T2=O(()=>{e0();zZ();HZ=Object.entries;V6=class V6 extends WQ{};A0=d0(`unset${YQ}`)});var BZ,MZ,OZ,iY,o1,_6=(Z)=>{let X=Object.getPrototypeOf(Z);while(X?.constructor&&(!V0(X.constructor.name,o1)||!(Z instanceof o1[X.constructor.name])))X=Object.getPrototypeOf(X);let Q=X?.constructor?.name;if(Q===void 0||Q==="Object")return;return Q},z6=(Z)=>typeof Z==="object"&&Z!==null?_6(Z)??"object":G0(Z),n,sY,aY,rY,VQ,H6=(Z)=>{let X=Object(Z).name??null;return X&&V0(X,o1)&&o1[X]===Z?X:null},RZ=(Z,X)=>{let Q=Z.prototype;while(Q!==null){if(Q===X.prototype)return!0;Q=Object.getPrototypeOf(Q)}return!1};var F6=O(()=>{O2();T2();BZ={Array,Boolean,Date,Error,Function,Map,Number,Promise,RegExp,Set,String,WeakMap,WeakSet},MZ=globalThis.File??Blob,OZ={ArrayBuffer,Blob,File:MZ,FormData,Headers,Request,Response,URL},iY={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array},o1={...BZ,...OZ,...iY,String,Number,Boolean},n=Array.isArray,sY={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"},aY={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"},rY={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"},VQ={...sY,...aY,...rY}});var _Q=(Z)=>zQ(Z,new Map),zQ=(Z,X)=>{if(typeof Z!=="object"||Z===null)return Z;if(X?.has(Z))return X.get(Z);let Q=H6(Z.constructor);if(Q==="Date")return new Date(Z.getTime());if(Q&&Q!=="Array")return Z;let U=Array.isArray(Z)?Z.slice():Object.create(Object.getPrototypeOf(Z)),q=Object.getOwnPropertyDescriptors(Z);if(X){X.set(Z,U);for(let J in q){let Y=q[J];if("get"in Y||"set"in Y)continue;Y.value=zQ(Y.value,X)}}return Object.defineProperties(U,q),U};var HQ=O(()=>{F6()});var FQ=()=>{};class S0{constructor(Z,...[X]){return Object.assign(Object.setPrototypeOf(Z.bind(X?.bind??this),this.constructor.prototype),X?.attach)}}var oY=(Z)=>{let X=A0;return()=>X===A0?X=Z():X},D1=(Z)=>typeof Z==="function"&&Z.length===0,BQ,MQ;var OQ=O(()=>{e0();T2();BQ=class extends Function{constructor(...Z){let X=Z.slice(0,-1),Q=Z[Z.length-1];try{super(...X,Q)}catch(U){return l(`Encountered an unexpected error while compiling your definition:
2
2
  Message: ${U}
3
3
  Source: (${Z.slice(0,-1)}) => {
4
4
  ${Z[Z.length-1]}
5
- }`)}}};MQ=oY(()=>{try{return Function("return false")()}catch{return!0}})});var oT,OQ;var TQ=R(()=>{e0();oT=c0("brand"),OQ=c0("arkInferred")});class M0{constructor(){}}var eT;var KQ=R(()=>{e0();eT=c0("args")});var DQ=()=>{};var nY=()=>{try{return((Error().stack?.split(`
6
- `)[2]?.trim()||"").match(/\(?(.+?)(?::\d+:\d+)?\)?$/)?.[1]||"unknown").replace(/^file:\/\//,"")}catch{return"unknown"}},tY,PQ;var TZ=R(()=>{tY=globalThis.process?.env??{},PQ={fileName:nY,env:tY}});var wQ=()=>{};var AQ=(Z)=>Z[0].toUpperCase()+Z.slice(1),SQ=(Z)=>Z[0].toLowerCase()+Z.slice(1),KZ=(Z)=>new RegExp(eY(Z),typeof Z==="string"?"":Z.flags),eY=(Z)=>{return`^(?:${typeof Z==="string"?Z:Z.source})$`},_1,t1="\\",P1;var C4=R(()=>{_1={negativeLookahead:(Z)=>`(?!${Z})`,nonCapturingGroup:(Z)=>`(?:${Z})`},P1={" ":1,"\n":1,"\t":1}});var ZW,CQ,XW,QW,NQ=(Z)=>KZ(_1.negativeLookahead(ZW)+_1.nonCapturingGroup("-?"+_1.nonCapturingGroup(_1.nonCapturingGroup("0|"+CQ)+_1.nonCapturingGroup(Z.decimalPattern)+"?")+(Z.allowDecimalOnly?"|"+Z.decimalPattern:"")+"?")),jQ,UW,N4,YK,qW,JW=(Z)=>Z.length!==0&&qW.test(Z),B6,YW,DZ,WW,EQ,bQ=(Z,X)=>`'${Z}' was parsed as ${EQ[X]} but could not be narrowed to a literal value. Avoid unnecessary leading or trailing zeros and other abnormal notation`,$W=(Z,X)=>X==="number"?UW(Z):YW(Z),LW=(Z,X)=>X==="number"?Number(Z):Number.parseInt(Z),GW=(Z,X)=>X==="number"?JW(Z):WW(Z),IQ=(Z,X)=>PZ(Z,"number",X),fQ=(Z,X)=>PZ(Z,"number",{...X,strict:!0}),yQ=(Z,X)=>PZ(Z,"integer",X),PZ=(Z,X,Q)=>{let U=LW(Z,X);if(!Number.isNaN(U)){if(GW(Z,X)){if(Q?.strict)return $W(Z,X)?U:M(bQ(Z,X));return U}}return Q?.errorOnFail?M(Q?.errorOnFail===!0?`Failed to parse ${EQ[X]} from '${Z}'`:Q?.errorOnFail):void 0},kQ=(Z)=>{if(Z[Z.length-1]!=="n")return;let X=Z.slice(0,-1),Q;try{Q=BigInt(X)}catch{return}if(B6.test(X))return Q;if(DZ.test(X))return M(bQ(Z,"bigint"))};var gQ=R(()=>{e0();C4();ZW=/^-0\.?0*$/.source,CQ=/[1-9]\d*/.source,XW=/\.\d+/.source,QW=/\.\d*[1-9]/.source,jQ=NQ({decimalPattern:QW,allowDecimalOnly:!1}),UW=jQ.test.bind(jQ),N4=NQ({decimalPattern:XW,allowDecimalOnly:!0}),YK=N4.test.bind(N4),qW=/^-?\d*\.?\d*$/,B6=KZ(_1.negativeLookahead("^-0$")+"-?"+_1.nonCapturingGroup(_1.nonCapturingGroup("0|"+CQ))),YW=B6.test.bind(B6),DZ=/^-?\d+$/,WW=DZ.test.bind(DZ),EQ={number:"a number",bigint:"a bigint",integer:"an integer"}});var VW="0.56.0",_W,e1,vQ,wZ,M6=(Z)=>{let X=vQ.get(Z);if(X)return X;let Q=zW(Z);if(wZ[Q])Q=`${Q}${wZ[Q]++}`;else wZ[Q]=1;return e1[Q]=Z,vQ.set(Z,Q),Q},w1=(Z)=>/^[$A-Z_a-z][\w$]*$/.test(Z),zW=(Z)=>{switch(typeof Z){case"object":{if(Z===null)break;let X=_6(Z)??"object";return X[0].toLowerCase()+X.slice(1)}case"function":return w1(Z.name)?Z.name:"fn";case"symbol":return Z.description&&w1(Z.description)?Z.description:"symbol"}return l(`Unexpected attempt to register serializable value of type ${G0(Z)}`)};var E4=R(()=>{R2();e0();TZ();F6();_W={version:VW,filename:PQ.fileName(),FileConstructor:MZ},e1=_W,vQ=new Map,wZ=Object.create(null)});var R6=(Z)=>typeof Z==="string"?JSON.stringify(Z):typeof Z==="bigint"?`${Z}n`:`${Z}`;var xQ=(Z,X={})=>O6(Z,{onUndefined:"$ark.undefined",onBigInt:(Q)=>`$ark.bigint-${Q}`,...X},[]),g=(Z,X)=>{switch(G0(Z)){case"object":let Q=Z,U=Q.constructor?.name??"Object";return U==="Object"||U==="Array"?X?.quoteKeys===!1?b4(Q,X?.indent??0,""):JSON.stringify(O6(Q,K2,[]),null,X?.indent):b4(Q,X?.indent??0,"");case"symbol":return K2.onSymbol(Z);default:return R6(Z)}},b4=(Z,X,Q)=>{if(typeof Z==="function")return K2.onFunction(Z);if(typeof Z!=="object"||Z===null)return R6(Z);let U=Q+" ".repeat(X);if(Array.isArray(Z)){if(Z.length===0)return"[]";let J=Z.map((Y)=>b4(Y,X,U)).join(`,
5
+ }`)}}};MQ=oY(()=>{try{return Function("return false")()}catch{return!0}})});var oT,RQ;var TQ=O(()=>{e0();oT=d0("brand"),RQ=d0("arkInferred")});class M0{constructor(){}}var eT;var KQ=O(()=>{e0();eT=d0("args")});var DQ=()=>{};var nY=()=>{try{return((Error().stack?.split(`
6
+ `)[2]?.trim()||"").match(/\(?(.+?)(?::\d+:\d+)?\)?$/)?.[1]||"unknown").replace(/^file:\/\//,"")}catch{return"unknown"}},tY,PQ;var TZ=O(()=>{tY=globalThis.process?.env??{},PQ={fileName:nY,env:tY}});var wQ=()=>{};var AQ=(Z)=>Z[0].toUpperCase()+Z.slice(1),SQ=(Z)=>Z[0].toLowerCase()+Z.slice(1),KZ=(Z)=>new RegExp(eY(Z),typeof Z==="string"?"":Z.flags),eY=(Z)=>{return`^(?:${typeof Z==="string"?Z:Z.source})$`},_1,t1="\\",P1;var C4=O(()=>{_1={negativeLookahead:(Z)=>`(?!${Z})`,nonCapturingGroup:(Z)=>`(?:${Z})`},P1={" ":1,"\n":1,"\t":1}});var ZW,CQ,XW,QW,NQ=(Z)=>KZ(_1.negativeLookahead(ZW)+_1.nonCapturingGroup("-?"+_1.nonCapturingGroup(_1.nonCapturingGroup("0|"+CQ)+_1.nonCapturingGroup(Z.decimalPattern)+"?")+(Z.allowDecimalOnly?"|"+Z.decimalPattern:"")+"?")),jQ,UW,N4,YK,qW,JW=(Z)=>Z.length!==0&&qW.test(Z),B6,YW,DZ,WW,EQ,bQ=(Z,X)=>`'${Z}' was parsed as ${EQ[X]} but could not be narrowed to a literal value. Avoid unnecessary leading or trailing zeros and other abnormal notation`,$W=(Z,X)=>X==="number"?UW(Z):YW(Z),LW=(Z,X)=>X==="number"?Number(Z):Number.parseInt(Z),GW=(Z,X)=>X==="number"?JW(Z):WW(Z),IQ=(Z,X)=>PZ(Z,"number",X),fQ=(Z,X)=>PZ(Z,"number",{...X,strict:!0}),yQ=(Z,X)=>PZ(Z,"integer",X),PZ=(Z,X,Q)=>{let U=LW(Z,X);if(!Number.isNaN(U)){if(GW(Z,X)){if(Q?.strict)return $W(Z,X)?U:M(bQ(Z,X));return U}}return Q?.errorOnFail?M(Q?.errorOnFail===!0?`Failed to parse ${EQ[X]} from '${Z}'`:Q?.errorOnFail):void 0},kQ=(Z)=>{if(Z[Z.length-1]!=="n")return;let X=Z.slice(0,-1),Q;try{Q=BigInt(X)}catch{return}if(B6.test(X))return Q;if(DZ.test(X))return M(bQ(Z,"bigint"))};var gQ=O(()=>{e0();C4();ZW=/^-0\.?0*$/.source,CQ=/[1-9]\d*/.source,XW=/\.\d+/.source,QW=/\.\d*[1-9]/.source,jQ=NQ({decimalPattern:QW,allowDecimalOnly:!1}),UW=jQ.test.bind(jQ),N4=NQ({decimalPattern:XW,allowDecimalOnly:!0}),YK=N4.test.bind(N4),qW=/^-?\d*\.?\d*$/,B6=KZ(_1.negativeLookahead("^-0$")+"-?"+_1.nonCapturingGroup(_1.nonCapturingGroup("0|"+CQ))),YW=B6.test.bind(B6),DZ=/^-?\d+$/,WW=DZ.test.bind(DZ),EQ={number:"a number",bigint:"a bigint",integer:"an integer"}});var VW="0.56.0",_W,e1,vQ,wZ,M6=(Z)=>{let X=vQ.get(Z);if(X)return X;let Q=zW(Z);if(wZ[Q])Q=`${Q}${wZ[Q]++}`;else wZ[Q]=1;return e1[Q]=Z,vQ.set(Z,Q),Q},w1=(Z)=>/^[$A-Z_a-z][\w$]*$/.test(Z),zW=(Z)=>{switch(typeof Z){case"object":{if(Z===null)break;let X=_6(Z)??"object";return X[0].toLowerCase()+X.slice(1)}case"function":return w1(Z.name)?Z.name:"fn";case"symbol":return Z.description&&w1(Z.description)?Z.description:"symbol"}return l(`Unexpected attempt to register serializable value of type ${G0(Z)}`)};var E4=O(()=>{O2();e0();TZ();F6();_W={version:VW,filename:PQ.fileName(),FileConstructor:MZ},e1=_W,vQ=new Map,wZ=Object.create(null)});var O6=(Z)=>typeof Z==="string"?JSON.stringify(Z):typeof Z==="bigint"?`${Z}n`:`${Z}`;var xQ=(Z,X={})=>R6(Z,{onUndefined:"$ark.undefined",onBigInt:(Q)=>`$ark.bigint-${Q}`,...X},[]),g=(Z,X)=>{switch(G0(Z)){case"object":let Q=Z,U=Q.constructor?.name??"Object";return U==="Object"||U==="Array"?X?.quoteKeys===!1?b4(Q,X?.indent??0,""):JSON.stringify(R6(Q,K2,[]),null,X?.indent):b4(Q,X?.indent??0,"");case"symbol":return K2.onSymbol(Z);default:return O6(Z)}},b4=(Z,X,Q)=>{if(typeof Z==="function")return K2.onFunction(Z);if(typeof Z!=="object"||Z===null)return O6(Z);let U=Q+" ".repeat(X);if(Array.isArray(Z)){if(Z.length===0)return"[]";let J=Z.map((Y)=>b4(Y,X,U)).join(`,
7
7
  `+U);return X?`[
8
8
  ${U}${J}
9
9
  ${Q}]`:`[${J}]`}let q=Z.constructor?.name??"Object";if(q==="Object"){let J=r1(Z).map(([Y,W])=>{let $=typeof Y==="symbol"?K2.onSymbol(Y):w1(Y)?Y:JSON.stringify(Y),L=b4(W,X,U);return`${U}${$}: ${L}`});if(J.length===0)return"{}";return X?`{
10
10
  ${J.join(`,
11
11
  `)}
12
- ${Q}}`:`{${J.join(", ")}}`}if(Z instanceof Date)return Z2(Z);if("expression"in Z&&typeof Z.expression==="string")return Z.expression;return q},K2,O6=(Z,X,Q)=>{switch(G0(Z)){case"object":{let U=Z;if("toJSON"in U&&typeof U.toJSON==="function")return U.toJSON();if(typeof U==="function")return K2.onFunction(U);if(Q.includes(U))return"(cycle)";let q=[...Q,U];if(Array.isArray(U))return U.map((Y)=>O6(Y,X,q));if(U instanceof Date)return U.toDateString();let J={};for(let Y in U)J[Y]=O6(U[Y],X,q);for(let Y of Object.getOwnPropertySymbols(U))J[X.onSymbol?.(Y)??Y.toString()]=O6(U[Y],X,q);return J}case"symbol":return K2.onSymbol(Z);case"bigint":return X.onBigInt?.(Z)??`${Z}n`;case"undefined":return X.onUndefined??"undefined";case"string":return Z.replace(/\\/g,"\\\\");default:return Z}},Z2=(Z)=>{let X=Z.getFullYear(),Q=Z.getMonth(),U=Z.getDate(),q=Z.getHours(),J=Z.getMinutes(),Y=Z.getSeconds(),W=Z.getMilliseconds();if(Q===0&&U===1&&q===0&&J===0&&Y===0&&W===0)return`${X}`;let $=`${HW[Q]} ${U}, ${X}`;if(q===0&&J===0&&Y===0&&W===0)return $;let L=Z.toLocaleTimeString(),V=L.endsWith(" AM")||L.endsWith(" PM")?L.slice(-3):"";if(V)L=L.slice(0,-V.length);if(W)L+=`.${BW(W,3)}`;else if(FW.test(L))L=L.slice(0,-3);return`${L+V}, ${$}`},HW,FW,BW=(Z,X)=>String(Z).padStart(X,"0");var AZ=R(()=>{R2();T2();E4();K2={onCycle:()=>"(cycle)",onSymbol:(Z)=>`Symbol(${M6(Z)})`,onFunction:(Z)=>`Function(${M6(Z)})`},HW=["January","February","March","April","May","June","July","August","September","October","November","December"],FW=/:\d\d:00$/});var hQ=(Z,X,...[Q])=>{let U=Q?.stringifySymbol??g,q=Z;switch(typeof X){case"string":q=w1(X)?Z===""?X:`${Z}.${X}`:`${Z}[${JSON.stringify(X)}]`;break;case"number":q=`${Z}[${X}]`;break;case"symbol":q=`${Z}[${U(X)}]`;break;default:if(Q?.stringifyNonKey)q=`${Z}[${Q.stringifyNonKey(X)}]`;else M(`${g(X)} must be a PropertyKey or stringifyNonKey must be passed to options`)}return q},z1=(Z,...X)=>Z.reduce((Q,U)=>hQ(Q,U,...X),""),T6;var mQ=R(()=>{S4();e0();E4();AZ();T6=class T6 extends A4{cache={};constructor(...Z){super();this.push(...Z)}toJSON(){if(this.cache.json)return this.cache.json;this.cache.json=[];for(let Z=0;Z<this.length;Z++)this.cache.json.push(typeof this[Z]==="symbol"?g(this[Z]):this[Z]);return this.cache.json}stringify(){if(this.cache.stringify)return this.cache.stringify;return this.cache.stringify=z1(this)}stringifyAncestors(){if(this.cache.stringifyAncestors)return this.cache.stringifyAncestors;let Z="",X=[Z];for(let Q of this)Z=hQ(Z,Q),X.push(Z);return this.cache.stringifyAncestors=X}}});class K6{chars;i;def;constructor(Z){this.def=Z,this.chars=[...Z],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(Z){let X="";while(this.lookahead)if(Z(this,X))break;else X+=this.shift();return X}shiftUntilEscapable(Z){let X="";while(this.lookahead)if(this.lookahead===t1)if(this.shift(),Z(this,X))X+=this.shift();else if(this.lookahead===t1)X+=this.shift();else X+=`${t1}${this.shift()}`;else if(Z(this,X))break;else X+=this.shift();return X}shiftUntilLookahead(Z){return typeof Z==="string"?this.shiftUntil((X)=>X.lookahead===Z):this.shiftUntil((X)=>(X.lookahead in Z))}shiftUntilNonWhitespace(){return this.shiftUntil(()=>!(this.lookahead in P1))}jumpToIndex(Z){this.i=Z<0?this.length+Z:Z}jumpForward(Z){this.i+=Z}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(Z,X){return this.chars.slice(Z,X).join("")}lookaheadIs(Z){return this.lookahead===Z}lookaheadIsIn(Z){return this.lookahead in Z}}var uQ=(Z,X)=>`Unmatched ${Z}${X===""?"":` before ${X}`}`,I4=(Z)=>`Missing ${Z}`;var pQ=R(()=>{C4()});var bK;var lQ=R(()=>{R2();e0();F6();T2();bK=c0("implementedTraits")});var cQ=()=>{};var b=R(()=>{S4();HQ();FQ();R2();e0();zZ();RQ();TQ();KQ();DQ();TZ();wQ();gQ();F6();mQ();T2();E4();pQ();AZ();C4();lQ();cQ()});var SZ="$ark",MW=2,dQ,T,RW=(Z)=>`${dQ}.${Z}`,U0=(Z)=>RW(M6(Z));var c=R(()=>{b();while(SZ in globalThis)SZ=`$ark${MW++}`;dQ=SZ;globalThis[dQ]=e1;T=e1});var f4,d0=(Z)=>P0(Z,"object")||typeof Z==="symbol"?U0(Z):R6(Z),jZ=(Z,X=!1)=>{if(typeof Z==="string"&&w1(Z))return`${X?"?":""}.${Z}`;return iQ(OW(Z),X)},OW=(Z)=>typeof Z==="symbol"?U0(Z):JSON.stringify(Z),iQ=(Z,X=!1)=>`${X?"?.":""}[${Z}]`,D6;var A1=R(()=>{b();c();f4=class f4 extends V6{argNames;body="";constructor(...Z){super();this.argNames=Z;for(let X of Z){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(Z,X=!1){return jZ(Z,X)}index(Z,X=!1){return iQ(`${Z}`,X)}line(Z){return this.body+=`${" ".repeat(this.indentation)}${Z}
12
+ ${Q}}`:`{${J.join(", ")}}`}if(Z instanceof Date)return Z2(Z);if("expression"in Z&&typeof Z.expression==="string")return Z.expression;return q},K2,R6=(Z,X,Q)=>{switch(G0(Z)){case"object":{let U=Z;if("toJSON"in U&&typeof U.toJSON==="function")return U.toJSON();if(typeof U==="function")return K2.onFunction(U);if(Q.includes(U))return"(cycle)";let q=[...Q,U];if(Array.isArray(U))return U.map((Y)=>R6(Y,X,q));if(U instanceof Date)return U.toDateString();let J={};for(let Y in U)J[Y]=R6(U[Y],X,q);for(let Y of Object.getOwnPropertySymbols(U))J[X.onSymbol?.(Y)??Y.toString()]=R6(U[Y],X,q);return J}case"symbol":return K2.onSymbol(Z);case"bigint":return X.onBigInt?.(Z)??`${Z}n`;case"undefined":return X.onUndefined??"undefined";case"string":return Z.replace(/\\/g,"\\\\");default:return Z}},Z2=(Z)=>{let X=Z.getFullYear(),Q=Z.getMonth(),U=Z.getDate(),q=Z.getHours(),J=Z.getMinutes(),Y=Z.getSeconds(),W=Z.getMilliseconds();if(Q===0&&U===1&&q===0&&J===0&&Y===0&&W===0)return`${X}`;let $=`${HW[Q]} ${U}, ${X}`;if(q===0&&J===0&&Y===0&&W===0)return $;let L=Z.toLocaleTimeString(),V=L.endsWith(" AM")||L.endsWith(" PM")?L.slice(-3):"";if(V)L=L.slice(0,-V.length);if(W)L+=`.${BW(W,3)}`;else if(FW.test(L))L=L.slice(0,-3);return`${L+V}, ${$}`},HW,FW,BW=(Z,X)=>String(Z).padStart(X,"0");var AZ=O(()=>{O2();T2();E4();K2={onCycle:()=>"(cycle)",onSymbol:(Z)=>`Symbol(${M6(Z)})`,onFunction:(Z)=>`Function(${M6(Z)})`},HW=["January","February","March","April","May","June","July","August","September","October","November","December"],FW=/:\d\d:00$/});var hQ=(Z,X,...[Q])=>{let U=Q?.stringifySymbol??g,q=Z;switch(typeof X){case"string":q=w1(X)?Z===""?X:`${Z}.${X}`:`${Z}[${JSON.stringify(X)}]`;break;case"number":q=`${Z}[${X}]`;break;case"symbol":q=`${Z}[${U(X)}]`;break;default:if(Q?.stringifyNonKey)q=`${Z}[${Q.stringifyNonKey(X)}]`;else M(`${g(X)} must be a PropertyKey or stringifyNonKey must be passed to options`)}return q},z1=(Z,...X)=>Z.reduce((Q,U)=>hQ(Q,U,...X),""),T6;var mQ=O(()=>{S4();e0();E4();AZ();T6=class T6 extends A4{cache={};constructor(...Z){super();this.push(...Z)}toJSON(){if(this.cache.json)return this.cache.json;this.cache.json=[];for(let Z=0;Z<this.length;Z++)this.cache.json.push(typeof this[Z]==="symbol"?g(this[Z]):this[Z]);return this.cache.json}stringify(){if(this.cache.stringify)return this.cache.stringify;return this.cache.stringify=z1(this)}stringifyAncestors(){if(this.cache.stringifyAncestors)return this.cache.stringifyAncestors;let Z="",X=[Z];for(let Q of this)Z=hQ(Z,Q),X.push(Z);return this.cache.stringifyAncestors=X}}});class K6{chars;i;def;constructor(Z){this.def=Z,this.chars=[...Z],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(Z){let X="";while(this.lookahead)if(Z(this,X))break;else X+=this.shift();return X}shiftUntilEscapable(Z){let X="";while(this.lookahead)if(this.lookahead===t1)if(this.shift(),Z(this,X))X+=this.shift();else if(this.lookahead===t1)X+=this.shift();else X+=`${t1}${this.shift()}`;else if(Z(this,X))break;else X+=this.shift();return X}shiftUntilLookahead(Z){return typeof Z==="string"?this.shiftUntil((X)=>X.lookahead===Z):this.shiftUntil((X)=>(X.lookahead in Z))}shiftUntilNonWhitespace(){return this.shiftUntil(()=>!(this.lookahead in P1))}jumpToIndex(Z){this.i=Z<0?this.length+Z:Z}jumpForward(Z){this.i+=Z}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(Z,X){return this.chars.slice(Z,X).join("")}lookaheadIs(Z){return this.lookahead===Z}lookaheadIsIn(Z){return this.lookahead in Z}}var uQ=(Z,X)=>`Unmatched ${Z}${X===""?"":` before ${X}`}`,I4=(Z)=>`Missing ${Z}`;var pQ=O(()=>{C4()});var bK;var lQ=O(()=>{O2();e0();F6();T2();bK=d0("implementedTraits")});var dQ=()=>{};var b=O(()=>{S4();HQ();FQ();O2();e0();zZ();OQ();TQ();KQ();DQ();TZ();wQ();gQ();F6();mQ();T2();E4();pQ();AZ();C4();lQ();dQ()});var SZ="$ark",MW=2,cQ,T,OW=(Z)=>`${cQ}.${Z}`,U0=(Z)=>OW(M6(Z));var d=O(()=>{b();while(SZ in globalThis)SZ=`$ark${MW++}`;cQ=SZ;globalThis[cQ]=e1;T=e1});var f4,c0=(Z)=>P0(Z,"object")||typeof Z==="symbol"?U0(Z):O6(Z),jZ=(Z,X=!1)=>{if(typeof Z==="string"&&w1(Z))return`${X?"?":""}.${Z}`;return iQ(RW(Z),X)},RW=(Z)=>typeof Z==="symbol"?U0(Z):JSON.stringify(Z),iQ=(Z,X=!1)=>`${X?"?.":""}[${Z}]`,D6;var A1=O(()=>{b();d();f4=class f4 extends V6{argNames;body="";constructor(...Z){super();this.argNames=Z;for(let X of Z){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(Z,X=!1){return jZ(Z,X)}index(Z,X=!1){return iQ(`${Z}`,X)}line(Z){return this.body+=`${" ".repeat(this.indentation)}${Z}
13
13
  `,this}const(Z,X){return this.line(`const ${Z} = ${X}`),this}let(Z,X){return this.line(`let ${Z} = ${X}`)}set(Z,X){return this.line(`${Z} = ${X}`)}if(Z,X){return this.block(`if (${Z})`,X)}elseIf(Z,X){return this.block(`else if (${Z})`,X)}else(Z){return this.block("else",Z)}for(Z,X,Q=0){return this.block(`for (let i = ${Q}; ${Z}; i++)`,X)}forIn(Z,X){return this.block(`for (const k in ${Z})`,X)}block(Z,X,Q=""){return this.line(`${Z} {`),this.indent(),X(this),this.dedent(),this.line(`}${Q}`)}return(Z=""){return this.line(`return ${Z}`)}write(Z="anonymous",X=0){return`${Z}(${this.argNames.join(", ")}) { ${X?this.body.split(`
14
14
  `).map((Q)=>" ".repeat(X)+`${Q}`).join(`
15
- `):this.body} }`}compile(){return new BQ(...this.argNames,this.body)}};D6=class D6 extends f4{traversalKind;optimistic;constructor(Z){super("data","ctx");this.traversalKind=Z.kind,this.optimistic=Z.optimistic===!0}invoke(Z,X){let Q=X?.arg??this.data,U=typeof Z==="string"?!0:this.requiresContextFor(Z),q=typeof Z==="string"?Z:Z.id;if(U)return`${this.referenceToId(q,X)}(${Q}, ${this.ctx})`;return`${this.referenceToId(q,X)}(${Q})`}referenceToId(Z,X){let Q=X?.kind??this.traversalKind,U=`this.${Z}${Q}`;return X?.bind?`${U}.bind(${X?.bind})`:U}requiresContextFor(Z){return this.traversalKind==="Apply"||Z.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(Z,X,Q){let U=this.requiresContextFor(Q);if(U)this.line(`${this.ctx}.path.push(${Z})`);if(this.check(Q,{arg:X}),U)this.line(`${this.ctx}.path.pop()`);return this}check(Z,X){return this.traversalKind==="Allows"?this.if(`!${this.invoke(Z,X)}`,()=>this.return(!1)):this.line(this.invoke(Z,X))}}});var y4=(Z)=>k(Z,(X,Q)=>[X,n(Q)?[...Q]:Q]),O0,I=(Z,X)=>Z?.[O0]===X,e=(Z)=>I(Z,"root")||I(Z,"constraint");var Y0=R(()=>{b();O0=c0("arkKind")});var sQ,D2,CZ,NZ,k4,P2,TW,g4,aQ,rQ,w2=(Z)=>typeof Z==="string"&&(Z in rQ),A2=(Z)=>rQ[Z],v4=(Z)=>P2.slice(A2(Z)+1),HD,FD,k0=(Z)=>{if(typeof Z==="string"||typeof Z==="boolean"||Z===null)return Z;if(typeof Z==="number"){if(Number.isNaN(Z))return"NaN";if(Z===Number.POSITIVE_INFINITY)return"Infinity";if(Z===Number.NEGATIVE_INFINITY)return"-Infinity";return Z}return d0(Z)},S1=(Z)=>{let X="{ ";for(let[Q,U]of Object.entries(Z))X+=`${Q}: ${d0(U)}, `;return X+" }"},v=(Z)=>{let X=Z;if(X.hasAssociatedError)X.defaults.expected??=(Q)=>("description"in Q)?Q.description:X.defaults.description(Q),X.defaults.actual??=(Q)=>g(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 U=`${Q.propString} ${Q.problem}`;if(U[0]==="[")return`value at ${U}`;return U};return X};var s=R(()=>{b();A1();Y0();sQ=["unit","proto","domain"],D2=["required","optional","index","sequence"],CZ=["pattern","divisor","exactLength","max","min","maxLength","minLength","before","after"],NZ=[...CZ,"structure","predicate"],k4=[...NZ,...D2],P2=["alias","union","morph","unit","intersection","proto","domain"],TW=[...P2,...k4],g4=k(k4,(Z,X)=>[X,1]),aQ=k([...D2,"undeclared"],(Z,X)=>[X,1]),rQ=k(TW,(Z,X)=>[X,Z]),HD=[...v4("union"),"alias"],FD=[...v4("morph"),"alias"]});var oQ,KW,X0;var j1=R(()=>{b();oQ=class oQ extends Error{name="ToJsonSchemaError";code;context;constructor(Z,X){super(g(X,{quoteKeys:!1,indent:4}));this.code=Z,this.context=X}hasCode(Z){return this.code===Z}};KW={target:"draft-2020-12",dialect:"https://json-schema.org/draft/2020-12/schema",useRefs:!1,fallback:{arrayObject:(Z)=>X0.throw("arrayObject",Z),arrayPostfix:(Z)=>X0.throw("arrayPostfix",Z),defaultValue:(Z)=>X0.throw("defaultValue",Z),domain:(Z)=>X0.throw("domain",Z),morph:(Z)=>X0.throw("morph",Z),patternIntersection:(Z)=>X0.throw("patternIntersection",Z),predicate:(Z)=>X0.throw("predicate",Z),proto:(Z)=>X0.throw("proto",Z),symbolKey:(Z)=>X0.throw("symbolKey",Z),unit:(Z)=>X0.throw("unit",Z),date:(Z)=>X0.throw("date",Z)}},X0={Error:oQ,throw:(...Z)=>{throw new X0.Error(...Z)},throwInternalOperandError:(Z,X)=>l(`Unexpected JSON Schema input for ${Z}: ${g(X)}`),defaultConfig:KW}});var P6=(Z,X)=>{if(!X)return Z;let Q={...Z},U;for(U in X){let q={...Z.keywords};if(U==="keywords"){for(let J in X[U]){let Y=X.keywords[J];if(Y===void 0)continue;q[J]=typeof Y==="string"?{description:Y}:Y}Q.keywords=q}else if(U==="toJsonSchema")Q[U]=EZ(Z.toJsonSchema,X.toJsonSchema);else if(w2(U))Q[U]={...Z[U],...X[U]};else Q[U]=X[U]}return Q},DW,EZ=(Z,X)=>{if(!Z)return nQ(X??{},void 0);if(!X)return Z;let Q={...Z},U;for(U in X)if(U==="fallback")Q.fallback=PW(Z.fallback,X.fallback);else Q[U]=X[U];return nQ(Q,X)},nQ=(Z,X)=>{if(X?.dialect!==void 0)return Z;if(X?.target!==void 0)return{...Z,dialect:DW[X.target]};return Z},PW=(Z,X)=>{Z=tQ(Z),X=tQ(X);let Q={},U;for(U in X0.defaultConfig.fallback)Q[U]=X[U]??X.default??Z[U]??Z.default??X0.defaultConfig.fallback[U];return Q},tQ=(Z)=>typeof Z==="function"?{default:Z}:Z??{};var S2=R(()=>{s();c();j1();T.config??={};DW={"draft-2020-12":"https://json-schema.org/draft/2020-12/schema","draft-07":"http://json-schema.org/draft-07/schema#"}});var C1,j0,bZ,wW=(Z)=>Z.toString().split(`
15
+ `):this.body} }`}compile(){return new BQ(...this.argNames,this.body)}};D6=class D6 extends f4{traversalKind;optimistic;constructor(Z){super("data","ctx");this.traversalKind=Z.kind,this.optimistic=Z.optimistic===!0}invoke(Z,X){let Q=X?.arg??this.data,U=typeof Z==="string"?!0:this.requiresContextFor(Z),q=typeof Z==="string"?Z:Z.id;if(U)return`${this.referenceToId(q,X)}(${Q}, ${this.ctx})`;return`${this.referenceToId(q,X)}(${Q})`}referenceToId(Z,X){let Q=X?.kind??this.traversalKind,U=`this.${Z}${Q}`;return X?.bind?`${U}.bind(${X?.bind})`:U}requiresContextFor(Z){return this.traversalKind==="Apply"||Z.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(Z,X,Q){let U=this.requiresContextFor(Q);if(U)this.line(`${this.ctx}.path.push(${Z})`);if(this.check(Q,{arg:X}),U)this.line(`${this.ctx}.path.pop()`);return this}check(Z,X){return this.traversalKind==="Allows"?this.if(`!${this.invoke(Z,X)}`,()=>this.return(!1)):this.line(this.invoke(Z,X))}}});var y4=(Z)=>k(Z,(X,Q)=>[X,n(Q)?[...Q]:Q]),R0,I=(Z,X)=>Z?.[R0]===X,e=(Z)=>I(Z,"root")||I(Z,"constraint");var Y0=O(()=>{b();R0=d0("arkKind")});var sQ,D2,CZ,NZ,k4,P2,TW,g4,aQ,rQ,w2=(Z)=>typeof Z==="string"&&(Z in rQ),A2=(Z)=>rQ[Z],v4=(Z)=>P2.slice(A2(Z)+1),HD,FD,k0=(Z)=>{if(typeof Z==="string"||typeof Z==="boolean"||Z===null)return Z;if(typeof Z==="number"){if(Number.isNaN(Z))return"NaN";if(Z===Number.POSITIVE_INFINITY)return"Infinity";if(Z===Number.NEGATIVE_INFINITY)return"-Infinity";return Z}return c0(Z)},S1=(Z)=>{let X="{ ";for(let[Q,U]of Object.entries(Z))X+=`${Q}: ${c0(U)}, `;return X+" }"},v=(Z)=>{let X=Z;if(X.hasAssociatedError)X.defaults.expected??=(Q)=>("description"in Q)?Q.description:X.defaults.description(Q),X.defaults.actual??=(Q)=>g(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 U=`${Q.propString} ${Q.problem}`;if(U[0]==="[")return`value at ${U}`;return U};return X};var s=O(()=>{b();A1();Y0();sQ=["unit","proto","domain"],D2=["required","optional","index","sequence"],CZ=["pattern","divisor","exactLength","max","min","maxLength","minLength","before","after"],NZ=[...CZ,"structure","predicate"],k4=[...NZ,...D2],P2=["alias","union","morph","unit","intersection","proto","domain"],TW=[...P2,...k4],g4=k(k4,(Z,X)=>[X,1]),aQ=k([...D2,"undeclared"],(Z,X)=>[X,1]),rQ=k(TW,(Z,X)=>[X,Z]),HD=[...v4("union"),"alias"],FD=[...v4("morph"),"alias"]});var oQ,KW,X0;var j1=O(()=>{b();oQ=class oQ extends Error{name="ToJsonSchemaError";code;context;constructor(Z,X){super(g(X,{quoteKeys:!1,indent:4}));this.code=Z,this.context=X}hasCode(Z){return this.code===Z}};KW={target:"draft-2020-12",dialect:"https://json-schema.org/draft/2020-12/schema",useRefs:!1,fallback:{arrayObject:(Z)=>X0.throw("arrayObject",Z),arrayPostfix:(Z)=>X0.throw("arrayPostfix",Z),defaultValue:(Z)=>X0.throw("defaultValue",Z),domain:(Z)=>X0.throw("domain",Z),morph:(Z)=>X0.throw("morph",Z),patternIntersection:(Z)=>X0.throw("patternIntersection",Z),predicate:(Z)=>X0.throw("predicate",Z),proto:(Z)=>X0.throw("proto",Z),symbolKey:(Z)=>X0.throw("symbolKey",Z),unit:(Z)=>X0.throw("unit",Z),date:(Z)=>X0.throw("date",Z)}},X0={Error:oQ,throw:(...Z)=>{throw new X0.Error(...Z)},throwInternalOperandError:(Z,X)=>l(`Unexpected JSON Schema input for ${Z}: ${g(X)}`),defaultConfig:KW}});var P6=(Z,X)=>{if(!X)return Z;let Q={...Z},U;for(U in X){let q={...Z.keywords};if(U==="keywords"){for(let J in X[U]){let Y=X.keywords[J];if(Y===void 0)continue;q[J]=typeof Y==="string"?{description:Y}:Y}Q.keywords=q}else if(U==="toJsonSchema")Q[U]=EZ(Z.toJsonSchema,X.toJsonSchema);else if(w2(U))Q[U]={...Z[U],...X[U]};else Q[U]=X[U]}return Q},DW,EZ=(Z,X)=>{if(!Z)return nQ(X??{},void 0);if(!X)return Z;let Q={...Z},U;for(U in X)if(U==="fallback")Q.fallback=PW(Z.fallback,X.fallback);else Q[U]=X[U];return nQ(Q,X)},nQ=(Z,X)=>{if(X?.dialect!==void 0)return Z;if(X?.target!==void 0)return{...Z,dialect:DW[X.target]};return Z},PW=(Z,X)=>{Z=tQ(Z),X=tQ(X);let Q={},U;for(U in X0.defaultConfig.fallback)Q[U]=X[U]??X.default??Z[U]??Z.default??X0.defaultConfig.fallback[U];return Q},tQ=(Z)=>typeof Z==="function"?{default:Z}:Z??{};var S2=O(()=>{s();d();j1();T.config??={};DW={"draft-2020-12":"https://json-schema.org/draft/2020-12/schema","draft-07":"http://json-schema.org/draft-07/schema#"}});var C1,j0,bZ,wW=(Z)=>Z.toString().split(`
16
16
  `).join(`
17
- `);var w6=R(()=>{b();Y0();C1=class C1 extends V6{[O0]="error";path;data;nodeConfig;input;ctx;constructor({prefixPath:Z,relativePath:X,...Q},U){super();this.input=Q,this.ctx=U,$Q(this,Q);let q=U.data;if(Q.code==="union")Q.errors=Q.errors.flatMap((Y)=>{let W=Y.hasCode("union")?Y.errors:[Y];if(!Z&&!X)return W;return W.map(($)=>$.transform((L)=>({...L,path:QQ(Z,L.path,X)})))});this.nodeConfig=U.config[this.code];let J=[...Q.path??U.path];if(X)J.push(...X);if(Z)J.unshift(...Z);this.path=new T6(...J),this.data="data"in Q?Q.data:q}transform(Z){return new C1(Z({data:this.data,path:this.path,...this.input}),this.ctx)}hasCode(Z){return this.code===Z}get propString(){return z1(this.path)}get expected(){if(this.input.expected)return this.input.expected;let Z=this.meta?.expected??this.nodeConfig.expected;return typeof Z==="function"?Z(this.input):Z}get actual(){if(this.input.actual)return this.input.actual;let Z=this.meta?.actual??this.nodeConfig.actual;return typeof Z==="function"?Z(this.data):Z}get problem(){if(this.input.problem)return this.input.problem;let Z=this.meta?.problem??this.nodeConfig.problem;return typeof Z==="function"?Z(this):Z}get message(){if(this.input.message)return this.input.message;let Z=this.meta?.message??this.nodeConfig.message;return typeof Z==="function"?Z(this):Z}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}};j0=class j0 extends A4{[O0]="errors";ctx;constructor(Z){super();this.ctx=Z}byPath=Object.create(null);get flatByPath(){return k(this.byPath,(Z,X)=>[Z,X.flat])}get flatProblemsByPath(){return k(this.byPath,(Z,X)=>[Z,X.flat.map((Q)=>Q.problem)])}byAncestorPath=Object.create(null);count=0;mutable=this;throw(){throw this.toTraversalError()}toTraversalError(){return new bZ(this)}add(Z){let X=this.byPath[Z.propString];if(X){if(Z===X)return;if(X.hasCode("union")&&X.errors.length===0)return;let Q=Z.hasCode("union")&&Z.errors.length===0?Z:new C1({code:"intersection",errors:X.hasCode("intersection")?[...X.errors,Z]:[X,Z]},this.ctx),U=this.indexOf(X);this.mutable[U===-1?this.length:U]=Q,this.byPath[Z.propString]=Q,this.addAncestorPaths(Z)}else this.byPath[Z.propString]=Z,this.addAncestorPaths(Z),this.mutable.push(Z);this.count++}transform(Z){let X=new j0(this.ctx);for(let Q of this)X.add(Z(Q));return X}merge(Z){for(let X of Z)this.add(new C1({...X,path:[...this.ctx.path,...X.path]},this.ctx))}affectsPath(Z){if(this.length===0)return!1;return Z.stringifyAncestors().some((X)=>(X in this.byPath))||Z.stringify()in this.byAncestorPath}get summary(){return this.toString()}get issues(){return this}toJSON(){return[...this.map((Z)=>Z.toJSON())]}toString(){return this.join(`
17
+ `);var w6=O(()=>{b();Y0();C1=class C1 extends V6{[R0]="error";path;data;nodeConfig;input;ctx;constructor({prefixPath:Z,relativePath:X,...Q},U){super();this.input=Q,this.ctx=U,$Q(this,Q);let q=U.data;if(Q.code==="union")Q.errors=Q.errors.flatMap((Y)=>{let W=Y.hasCode("union")?Y.errors:[Y];if(!Z&&!X)return W;return W.map(($)=>$.transform((L)=>({...L,path:QQ(Z,L.path,X)})))});this.nodeConfig=U.config[this.code];let J=[...Q.path??U.path];if(X)J.push(...X);if(Z)J.unshift(...Z);this.path=new T6(...J),this.data="data"in Q?Q.data:q}transform(Z){return new C1(Z({data:this.data,path:this.path,...this.input}),this.ctx)}hasCode(Z){return this.code===Z}get propString(){return z1(this.path)}get expected(){if(this.input.expected)return this.input.expected;let Z=this.meta?.expected??this.nodeConfig.expected;return typeof Z==="function"?Z(this.input):Z}get actual(){if(this.input.actual)return this.input.actual;let Z=this.meta?.actual??this.nodeConfig.actual;return typeof Z==="function"?Z(this.data):Z}get problem(){if(this.input.problem)return this.input.problem;let Z=this.meta?.problem??this.nodeConfig.problem;return typeof Z==="function"?Z(this):Z}get message(){if(this.input.message)return this.input.message;let Z=this.meta?.message??this.nodeConfig.message;return typeof Z==="function"?Z(this):Z}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}};j0=class j0 extends A4{[R0]="errors";ctx;constructor(Z){super();this.ctx=Z}byPath=Object.create(null);get flatByPath(){return k(this.byPath,(Z,X)=>[Z,X.flat])}get flatProblemsByPath(){return k(this.byPath,(Z,X)=>[Z,X.flat.map((Q)=>Q.problem)])}byAncestorPath=Object.create(null);count=0;mutable=this;throw(){throw this.toTraversalError()}toTraversalError(){return new bZ(this)}add(Z){let X=this.byPath[Z.propString];if(X){if(Z===X)return;if(X.hasCode("union")&&X.errors.length===0)return;let Q=Z.hasCode("union")&&Z.errors.length===0?Z:new C1({code:"intersection",errors:X.hasCode("intersection")?[...X.errors,Z]:[X,Z]},this.ctx),U=this.indexOf(X);this.mutable[U===-1?this.length:U]=Q,this.byPath[Z.propString]=Q,this.addAncestorPaths(Z)}else this.byPath[Z.propString]=Z,this.addAncestorPaths(Z),this.mutable.push(Z);this.count++}transform(Z){let X=new j0(this.ctx);for(let Q of this)X.add(Z(Q));return X}merge(Z){for(let X of Z)this.add(new C1({...X,path:[...this.ctx.path,...X.path]},this.ctx))}affectsPath(Z){if(this.length===0)return!1;return Z.stringifyAncestors().some((X)=>(X in this.byPath))||Z.stringify()in this.byAncestorPath}get summary(){return this.toString()}get issues(){return this}toJSON(){return[...this.map((Z)=>Z.toJSON())]}toString(){return this.join(`
18
18
  `)}addAncestorPaths(Z){for(let X of Z.path.stringifyAncestors())this.byAncestorPath[X]=m(this.byAncestorPath[X],Z)}};bZ=class bZ extends Error{name="TraversalError";constructor(Z){if(Z.length===1)super(Z.summary);else super(`
19
19
  `+Z.map((X)=>` • ${wW(X)}`).join(`
20
- `));Object.defineProperty(this,"arkErrors",{value:Z,enumerable:!1})}}});class i0{path=[];errors=new j0(this);root;config;queuedMorphs=[];branches=[];seen={};constructor(Z,X){this.root=Z,this.config=X}get data(){let Z=this.root;for(let X of this.path)Z=Z?.[X];return Z}get propString(){return z1(this.path)}reject(Z){return this.error(Z),!1}mustBe(Z){return this.error(Z),!1}error(Z){let X=typeof Z==="object"?Z.code?Z:{...Z,code:"predicate"}:{code:"predicate",expected:Z};return this.errorFromContext(X)}hasError(){return this.currentErrorCount!==0}get currentBranch(){return this.branches[this.branches.length-1]}queueMorphs(Z){let X={path:new T6(...this.path),morphs:Z};if(this.currentBranch)this.currentBranch.queuedMorphs.push(X);else this.queuedMorphs.push(X)}finalize(Z){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 Z?Z(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(Z){return this.errorFromContext(Z)}errorFromContext(Z){let X=new C1(Z,this);if(this.currentBranch)this.currentBranch.error=X;else this.errors.add(X);return X}applyQueuedMorphs(){while(this.queuedMorphs.length){let Z=this.queuedMorphs;this.queuedMorphs=[];for(let{path:X,morphs:Q}of Z){if(this.errors.affectsPath(X))continue;this.applyMorphsAtPath(X,Q)}}}applyMorphsAtPath(Z,X){let Q=Z[Z.length-1],U;if(Q!==void 0){U=this.root;for(let q=0;q<Z.length-1;q++)U=U[Z[q]]}for(let q of X){this.path=[...Z];let J=e(q),Y=q(U===void 0?this.root:U[Q],this);if(Y instanceof C1){if(!this.errors.includes(Y))this.errors.add(Y);break}if(Y instanceof j0){if(!J)this.errors.merge(Y);this.queuedMorphs=[];break}if(U===void 0)this.root=Y;else U[Q]=Y;this.applyQueuedMorphs()}}}var C0=(Z,X,Q)=>{if(!Q)return X();Q.path.push(Z);let U=X();return Q.path.pop(),U};var X1=R(()=>{b();w6();Y0()});var S6,A6,eQ=(Z,X)=>`${Z} had no references matching ${g(X)}.`,AW=(Z)=>z1(Z,{stringifyNonKey:(X)=>X.expression}),SW,jW=(Z)=>JSON.stringify(Z).replace(SW,"$1"),s0=(Z,X)=>({path:Z,node:X,propString:AW(Z)}),ZU=(Z,X)=>Z.propString===X.propString&&Z.node.equals(X.node),IZ=(Z,X)=>t0(Z,X,{isEqual:ZU}),CW=(Z,X)=>t0(Z,X,{isEqual:(Q,U)=>Q.equals(U)});var X2=R(()=>{b();s();c();X1();Y0();S6=class S6 extends S0{attachments;$;onFail;includesTransform;includesContextualPredicate;isCyclic;allowsRequiresContext;rootApplyStrategy;contextFreeMorph;rootApply;referencesById;shallowReferences;flatRefs;flatMorphs;allows;get shallowMorphs(){return[]}constructor(Z,X){super((U,q,J=this.onFail)=>{if(q)return this.traverseApply(U,q),q.hasError()?q.errors:q.data;return this.rootApply(U,J)},{attach:Z});this.attachments=Z,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((U,q)=>CW(U,q.shallowReferences),[this]);let Q=this.isStructural();this.flatRefs=[],this.flatMorphs=[];for(let U=0;U<this.children.length;U++){if(this.includesTransform||=this.children[U].includesTransform,this.includesContextualPredicate||=this.children[U].includesContextualPredicate,this.isCyclic||=this.children[U].isCyclic,!Q){let q=this.children[U].flatRefs;for(let J=0;J<q.length;J++){let Y=q[J];if(!this.flatRefs.some((W)=>ZU(W,Y))){this.flatRefs.push(Y);for(let W of Y.node.branches)if(W.hasKind("morph")||W.hasKind("intersection")&&W.structure?.structuralMorph!==void 0)this.flatMorphs.push({path:Y.path,propString:Y.propString,node:W})}}}Object.assign(this.referencesById,this.children[U].referencesById)}this.flatRefs.sort((U,q)=>U.path.length>q.path.length?1:U.path.length<q.path.length?-1:U.propString>q.propString?1:U.propString<q.propString?-1:U.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((U)=>U.length===1||U.name==="$arkStructuralMorph")?this.hasKind("union")?this.branches.some((U)=>U.shallowMorphs.length>1)?"contextual":"branchedOptimistic":this.shallowMorphs.length>1?"contextual":"optimistic":"contextual":"contextual",this.rootApply=this.createRootApply(),this.allows=this.allowsRequiresContext?(U)=>this.traverseAllows(U,new i0(U,this.$.resolvedConfig)):(U)=>this.traverseAllows(U)}createRootApply(){switch(this.rootApplyStrategy){case"allows":return(X,Q)=>{if(this.allows(X))return X;let U=new i0(X,this.$.resolvedConfig);return this.traverseApply(X,U),U.finalize(Q)};case"contextual":return(X,Q)=>{let U=new i0(X,this.$.resolvedConfig);return this.traverseApply(X,U),U.finalize(Q)};case"optimistic":this.contextFreeMorph=this.shallowMorphs[0];let Z=this.$.resolvedConfig.clone;return(X,Q)=>{if(this.allows(X))return this.contextFreeMorph(Z&&(typeof X==="object"&&X!==null||typeof X==="function")?Z(X):X);let U=new i0(X,this.$.resolvedConfig);return this.traverseApply(X,U),U.finalize(Q)};case"branchedOptimistic":return this.createBranchedOptimisticRootApply();default:return this.rootApplyStrategy,l(`Unexpected rootApplyStrategy ${this.rootApplyStrategy}`)}}compiledMeta=jW(this.metaJson);cacheGetter(Z,X){return Object.defineProperty(this,Z,{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=A2(this.kind);precompilation;assert=(Z,X)=>this(Z,X,(Q)=>Q.throw());traverse(Z,X){return this(Z,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(Z){if(!this.includesTransform)return this;let X={};for(let[Q,U]of this.innerEntries){let q=this.impl.keys[Q];if(q.reduceIo)q.reduceIo(Z,X,U);else if(q.child){let J=U;X[Q]=n(J)?J.map((Y)=>Z==="in"?Y.rawIn:Y.rawOut):Z==="in"?J.rawIn:J.rawOut}else X[Q]=U}return this.$.node(this.kind,X)}toJSON(){return this.json}toString(){return`Type<${this.expression}>`}equals(Z){let X=e(Z)?Z:this.$.parseDefinition(Z);return this.innerHash===X.innerHash}ifEquals(Z){return this.equals(Z)?this:void 0}hasKind(Z){return this.kind===Z}assertHasKind(Z){if(this.kind!==Z)a1(`${this.kind} node was not of asserted kind ${Z}`);return this}hasKindIn(...Z){return Z.includes(this.kind)}assertHasKindIn(...Z){if(!y0(Z,this.kind))a1(`${this.kind} node was not one of asserted kinds ${Z}`);return this}isBasis(){return y0(sQ,this.kind)}isConstraint(){return y0(k4,this.kind)}isStructural(){return y0(D2,this.kind)}isRefinement(){return y0(NZ,this.kind)}isRoot(){return y0(P2,this.kind)}isUnknown(){return this.hasKind("intersection")&&this.children.length===0}isNever(){return this.hasKind("union")&&this.children.length===0}hasUnit(Z){return this.hasKind("unit")&&this.allows(Z)}hasOpenIntersection(){return this.impl.intersectionIsOpen}get nestableExpression(){return this.expression}select(Z){let X=A6.normalize(Z);return this._select(X)}_select(Z){let X=A6.applyBoundary[Z.boundary??"references"](this);if(Z.kind)X=X.filter((Q)=>Q.kind===Z.kind);if(Z.where)X=X.filter(Z.where);return A6.applyMethod[Z.method??"filter"](X,this,Z)}transform(Z,X){return this._transform(Z,this._createTransformContext(X))}_createTransformContext(Z){return{root:this,selected:void 0,seen:{},path:[],parseOptions:{prereduced:Z?.prereduced??!1},undeclaredKeyHandling:void 0,...Z}}_transform(Z,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 U;if(X.seen[this.id]=()=>U,this.hasKind("structure")&&this.undeclared!==X.undeclaredKeyHandling)X={...X,undeclaredKeyHandling:this.undeclared};let q=k(this.inner,(L,V)=>{if(!this.impl.keys[L].child)return[L,V];let G=V;if(!n(G)){let H=G._transform(Z,X);return H?[L,H]:[]}if(G.length===0)return[L,V];let _=G.flatMap((H)=>{return H._transform(Z,X)??[]});return _.length?[L,_]:[]});delete X.seen[this.id];let J=Object.assign(q,{meta:this.meta}),Y=X.selected&&!X.selected.includes(this)?J:Z(this.kind,J,X);if(Y===null)return null;if(e(Y))return U=Y;let W=Object.keys(Y);if((W.length===0||W.length===1&&W[0]==="meta")&&!Z1(this.inner))return null;if((this.kind==="required"||this.kind==="optional"||this.kind==="index")&&!("value"in Y))return X.undeclaredKeyHandling?{...Y,value:T.intrinsic.unknown}:null;if(this.kind==="morph")Y.in??=T.intrinsic.unknown;return U=Q.node(this.kind,Y,X.parseOptions)}configureReferences(Z,X="references"){let Q=A6.normalize(X),U=typeof Z==="string"?(W,$)=>({...$,meta:{...$.meta,description:Z}}):typeof Z==="function"?(W,$)=>({...$,meta:Z($.meta)}):(W,$)=>({...$,meta:{...$.meta,...Z}});if(Q.boundary==="self")return this.$.node(this.kind,U(this.kind,{...this.inner,meta:this.meta}));let q=this._select(Q),J=q&&K1(q),Y=Q.boundary==="child"?(W,$)=>$.root.children.includes(W):Q.boundary==="shallow"?(W)=>W.kind!=="structure":()=>!0;return this.$.finalize(this.transform(U,{shouldTransform:Y,selected:J}))}};A6={applyBoundary:{self:(Z)=>[Z],child:(Z)=>[...Z.children],shallow:(Z)=>[...Z.shallowReferences],references:(Z)=>[...Z.references]},applyMethod:{filter:(Z)=>Z,assertFilter:(Z,X,Q)=>{if(Z.length===0)a1(eQ(X,Q));return Z},find:(Z)=>Z[0],assertFind:(Z,X,Q)=>{if(Z.length===0)a1(eQ(X,Q));return Z[0]}},normalize:(Z)=>typeof Z==="function"?{boundary:"references",method:"filter",where:Z}:typeof Z==="string"?V0(Z,A6.applyBoundary)?{method:"filter",boundary:Z}:{boundary:"references",method:"filter",kind:Z}:{boundary:"references",method:"filter",...Z}},SW=/"(\$ark\.[^"]+)"/g});var j,XU=(Z,X)=>`${fZ(Z)} and ${fZ(X)}`,fZ=(Z)=>e(Z)?Z.expression:n(Z)?Z.map(fZ).join(" | ")||"never":String(Z),yZ=(Z)=>`${Z} results in an unsatisfiable type`;var q0=R(()=>{b();c();Y0();j=class j extends Array{static init(Z,X,Q,U){return new j({kind:Z,l:X,r:Q,path:U?.path??[],optional:U?.optional??!1})}add(Z,X,Q,U){return this.push({kind:Z,l:X,r:Q,path:U?.path??[],optional:U?.optional??!1}),this}get summary(){return this.describeReasons()}describeReasons(){if(this.length===1){let{path:Z,l:X,r:Q}=this[0],U=z1(Z);return yZ(`Intersection${U&&` at ${U}`} of ${XU(X,Q)}`)}return`The following intersections result in unsatisfiable types:
20
+ `));Object.defineProperty(this,"arkErrors",{value:Z,enumerable:!1})}}});class i0{path=[];errors=new j0(this);root;config;queuedMorphs=[];branches=[];seen={};constructor(Z,X){this.root=Z,this.config=X}get data(){let Z=this.root;for(let X of this.path)Z=Z?.[X];return Z}get propString(){return z1(this.path)}reject(Z){return this.error(Z),!1}mustBe(Z){return this.error(Z),!1}error(Z){let X=typeof Z==="object"?Z.code?Z:{...Z,code:"predicate"}:{code:"predicate",expected:Z};return this.errorFromContext(X)}hasError(){return this.currentErrorCount!==0}get currentBranch(){return this.branches[this.branches.length-1]}queueMorphs(Z){let X={path:new T6(...this.path),morphs:Z};if(this.currentBranch)this.currentBranch.queuedMorphs.push(X);else this.queuedMorphs.push(X)}finalize(Z){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 Z?Z(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(Z){return this.errorFromContext(Z)}errorFromContext(Z){let X=new C1(Z,this);if(this.currentBranch)this.currentBranch.error=X;else this.errors.add(X);return X}applyQueuedMorphs(){while(this.queuedMorphs.length){let Z=this.queuedMorphs;this.queuedMorphs=[];for(let{path:X,morphs:Q}of Z){if(this.errors.affectsPath(X))continue;this.applyMorphsAtPath(X,Q)}}}applyMorphsAtPath(Z,X){let Q=Z[Z.length-1],U;if(Q!==void 0){U=this.root;for(let q=0;q<Z.length-1;q++)U=U[Z[q]]}for(let q of X){this.path=[...Z];let J=e(q),Y=q(U===void 0?this.root:U[Q],this);if(Y instanceof C1){if(!this.errors.includes(Y))this.errors.add(Y);break}if(Y instanceof j0){if(!J)this.errors.merge(Y);this.queuedMorphs=[];break}if(U===void 0)this.root=Y;else U[Q]=Y;this.applyQueuedMorphs()}}}var C0=(Z,X,Q)=>{if(!Q)return X();Q.path.push(Z);let U=X();return Q.path.pop(),U};var X1=O(()=>{b();w6();Y0()});var S6,A6,eQ=(Z,X)=>`${Z} had no references matching ${g(X)}.`,AW=(Z)=>z1(Z,{stringifyNonKey:(X)=>X.expression}),SW,jW=(Z)=>JSON.stringify(Z).replace(SW,"$1"),s0=(Z,X)=>({path:Z,node:X,propString:AW(Z)}),ZU=(Z,X)=>Z.propString===X.propString&&Z.node.equals(X.node),IZ=(Z,X)=>t0(Z,X,{isEqual:ZU}),CW=(Z,X)=>t0(Z,X,{isEqual:(Q,U)=>Q.equals(U)});var X2=O(()=>{b();s();d();X1();Y0();S6=class S6 extends S0{attachments;$;onFail;includesTransform;includesContextualPredicate;isCyclic;allowsRequiresContext;rootApplyStrategy;contextFreeMorph;rootApply;referencesById;shallowReferences;flatRefs;flatMorphs;allows;get shallowMorphs(){return[]}constructor(Z,X){super((U,q,J=this.onFail)=>{if(q)return this.traverseApply(U,q),q.hasError()?q.errors:q.data;return this.rootApply(U,J)},{attach:Z});this.attachments=Z,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((U,q)=>CW(U,q.shallowReferences),[this]);let Q=this.isStructural();this.flatRefs=[],this.flatMorphs=[];for(let U=0;U<this.children.length;U++){if(this.includesTransform||=this.children[U].includesTransform,this.includesContextualPredicate||=this.children[U].includesContextualPredicate,this.isCyclic||=this.children[U].isCyclic,!Q){let q=this.children[U].flatRefs;for(let J=0;J<q.length;J++){let Y=q[J];if(!this.flatRefs.some((W)=>ZU(W,Y))){this.flatRefs.push(Y);for(let W of Y.node.branches)if(W.hasKind("morph")||W.hasKind("intersection")&&W.structure?.structuralMorph!==void 0)this.flatMorphs.push({path:Y.path,propString:Y.propString,node:W})}}}Object.assign(this.referencesById,this.children[U].referencesById)}this.flatRefs.sort((U,q)=>U.path.length>q.path.length?1:U.path.length<q.path.length?-1:U.propString>q.propString?1:U.propString<q.propString?-1:U.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((U)=>U.length===1||U.name==="$arkStructuralMorph")?this.hasKind("union")?this.branches.some((U)=>U.shallowMorphs.length>1)?"contextual":"branchedOptimistic":this.shallowMorphs.length>1?"contextual":"optimistic":"contextual":"contextual",this.rootApply=this.createRootApply(),this.allows=this.allowsRequiresContext?(U)=>this.traverseAllows(U,new i0(U,this.$.resolvedConfig)):(U)=>this.traverseAllows(U)}createRootApply(){switch(this.rootApplyStrategy){case"allows":return(X,Q)=>{if(this.allows(X))return X;let U=new i0(X,this.$.resolvedConfig);return this.traverseApply(X,U),U.finalize(Q)};case"contextual":return(X,Q)=>{let U=new i0(X,this.$.resolvedConfig);return this.traverseApply(X,U),U.finalize(Q)};case"optimistic":this.contextFreeMorph=this.shallowMorphs[0];let Z=this.$.resolvedConfig.clone;return(X,Q)=>{if(this.allows(X))return this.contextFreeMorph(Z&&(typeof X==="object"&&X!==null||typeof X==="function")?Z(X):X);let U=new i0(X,this.$.resolvedConfig);return this.traverseApply(X,U),U.finalize(Q)};case"branchedOptimistic":return this.createBranchedOptimisticRootApply();default:return this.rootApplyStrategy,l(`Unexpected rootApplyStrategy ${this.rootApplyStrategy}`)}}compiledMeta=jW(this.metaJson);cacheGetter(Z,X){return Object.defineProperty(this,Z,{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=A2(this.kind);precompilation;assert=(Z,X)=>this(Z,X,(Q)=>Q.throw());traverse(Z,X){return this(Z,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(Z){if(!this.includesTransform)return this;let X={};for(let[Q,U]of this.innerEntries){let q=this.impl.keys[Q];if(q.reduceIo)q.reduceIo(Z,X,U);else if(q.child){let J=U;X[Q]=n(J)?J.map((Y)=>Z==="in"?Y.rawIn:Y.rawOut):Z==="in"?J.rawIn:J.rawOut}else X[Q]=U}return this.$.node(this.kind,X)}toJSON(){return this.json}toString(){return`Type<${this.expression}>`}equals(Z){let X=e(Z)?Z:this.$.parseDefinition(Z);return this.innerHash===X.innerHash}ifEquals(Z){return this.equals(Z)?this:void 0}hasKind(Z){return this.kind===Z}assertHasKind(Z){if(this.kind!==Z)a1(`${this.kind} node was not of asserted kind ${Z}`);return this}hasKindIn(...Z){return Z.includes(this.kind)}assertHasKindIn(...Z){if(!y0(Z,this.kind))a1(`${this.kind} node was not one of asserted kinds ${Z}`);return this}isBasis(){return y0(sQ,this.kind)}isConstraint(){return y0(k4,this.kind)}isStructural(){return y0(D2,this.kind)}isRefinement(){return y0(NZ,this.kind)}isRoot(){return y0(P2,this.kind)}isUnknown(){return this.hasKind("intersection")&&this.children.length===0}isNever(){return this.hasKind("union")&&this.children.length===0}hasUnit(Z){return this.hasKind("unit")&&this.allows(Z)}hasOpenIntersection(){return this.impl.intersectionIsOpen}get nestableExpression(){return this.expression}select(Z){let X=A6.normalize(Z);return this._select(X)}_select(Z){let X=A6.applyBoundary[Z.boundary??"references"](this);if(Z.kind)X=X.filter((Q)=>Q.kind===Z.kind);if(Z.where)X=X.filter(Z.where);return A6.applyMethod[Z.method??"filter"](X,this,Z)}transform(Z,X){return this._transform(Z,this._createTransformContext(X))}_createTransformContext(Z){return{root:this,selected:void 0,seen:{},path:[],parseOptions:{prereduced:Z?.prereduced??!1},undeclaredKeyHandling:void 0,...Z}}_transform(Z,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 U;if(X.seen[this.id]=()=>U,this.hasKind("structure")&&this.undeclared!==X.undeclaredKeyHandling)X={...X,undeclaredKeyHandling:this.undeclared};let q=k(this.inner,(L,V)=>{if(!this.impl.keys[L].child)return[L,V];let G=V;if(!n(G)){let H=G._transform(Z,X);return H?[L,H]:[]}if(G.length===0)return[L,V];let _=G.flatMap((H)=>{return H._transform(Z,X)??[]});return _.length?[L,_]:[]});delete X.seen[this.id];let J=Object.assign(q,{meta:this.meta}),Y=X.selected&&!X.selected.includes(this)?J:Z(this.kind,J,X);if(Y===null)return null;if(e(Y))return U=Y;let W=Object.keys(Y);if((W.length===0||W.length===1&&W[0]==="meta")&&!Z1(this.inner))return null;if((this.kind==="required"||this.kind==="optional"||this.kind==="index")&&!("value"in Y))return X.undeclaredKeyHandling?{...Y,value:T.intrinsic.unknown}:null;if(this.kind==="morph")Y.in??=T.intrinsic.unknown;return U=Q.node(this.kind,Y,X.parseOptions)}configureReferences(Z,X="references"){let Q=A6.normalize(X),U=typeof Z==="string"?(W,$)=>({...$,meta:{...$.meta,description:Z}}):typeof Z==="function"?(W,$)=>({...$,meta:Z($.meta)}):(W,$)=>({...$,meta:{...$.meta,...Z}});if(Q.boundary==="self")return this.$.node(this.kind,U(this.kind,{...this.inner,meta:this.meta}));let q=this._select(Q),J=q&&K1(q),Y=Q.boundary==="child"?(W,$)=>$.root.children.includes(W):Q.boundary==="shallow"?(W)=>W.kind!=="structure":()=>!0;return this.$.finalize(this.transform(U,{shouldTransform:Y,selected:J}))}};A6={applyBoundary:{self:(Z)=>[Z],child:(Z)=>[...Z.children],shallow:(Z)=>[...Z.shallowReferences],references:(Z)=>[...Z.references]},applyMethod:{filter:(Z)=>Z,assertFilter:(Z,X,Q)=>{if(Z.length===0)a1(eQ(X,Q));return Z},find:(Z)=>Z[0],assertFind:(Z,X,Q)=>{if(Z.length===0)a1(eQ(X,Q));return Z[0]}},normalize:(Z)=>typeof Z==="function"?{boundary:"references",method:"filter",where:Z}:typeof Z==="string"?V0(Z,A6.applyBoundary)?{method:"filter",boundary:Z}:{boundary:"references",method:"filter",kind:Z}:{boundary:"references",method:"filter",...Z}},SW=/"(\$ark\.[^"]+)"/g});var j,XU=(Z,X)=>`${fZ(Z)} and ${fZ(X)}`,fZ=(Z)=>e(Z)?Z.expression:n(Z)?Z.map(fZ).join(" | ")||"never":String(Z),yZ=(Z)=>`${Z} results in an unsatisfiable type`;var q0=O(()=>{b();d();Y0();j=class j extends Array{static init(Z,X,Q,U){return new j({kind:Z,l:X,r:Q,path:U?.path??[],optional:U?.optional??!1})}add(Z,X,Q,U){return this.push({kind:Z,l:X,r:Q,path:U?.path??[],optional:U?.optional??!1}),this}get summary(){return this.describeReasons()}describeReasons(){if(this.length===1){let{path:Z,l:X,r:Q}=this[0],U=z1(Z);return yZ(`Intersection${U&&` at ${U}`} of ${XU(X,Q)}`)}return`The following intersections result in unsatisfiable types:
21
21
  • ${this.map(({path:Z,l:X,r:Q})=>`${Z}: ${XU(X,Q)}`).join(`
22
- • `)}`}throw(){return M(this.describeReasons())}invert(){let Z=this.map((X)=>({...X,l:X.r,r:X.l}));if(!(Z instanceof j))return new j(...Z);return Z}withPrefixKey(Z,X){return this.map((Q)=>({...Q,path:[Z,...Q.path],optional:Q.optional||X==="optional"}))}toNeverIfDisjoint(){return T.intrinsic.never}}});var j2,N0=(Z,X,Q)=>Z0(Z,X,{$:Q,invert:!1,pipe:!1}),j6=(Z,X,Q)=>Z0(Z,X,{$:Q,invert:!1,pipe:!0}),Z0=(Z,X,Q)=>{let U=Q.pipe?"|>":"&",q=`${Z.hash}${U}${X.hash}`;if(j2[q]!==void 0)return j2[q];if(!Q.pipe){let W=`${X.hash}${U}${Z.hash}`;if(j2[W]!==void 0){let $=j2[W],L=$ instanceof j?$.invert():$;return j2[q]=L,L}}let J=!Q.pipe||!Z.includesTransform&&!X.includesTransform;if(J&&Z.equals(X))return Z;let Y=J?kZ(Z,X,Q):Z.hasKindIn(...P2)?NW(Z,X,Q):kZ(Z,X,Q);if(e(Y)){if(Z.equals(Y))Y=Z;else if(X.equals(Y))Y=X}return j2[q]=Y,Y},kZ=(Z,X,Q)=>{let U=Z.precedence<X.precedence?Z.kind:X.kind,q=Z.impl.intersections[X.kind]??X.impl.intersections[Z.kind];if(q===void 0)return null;else if(U===Z.kind)return q(Z,X,Q);else{let J=q(X,Z,{...Q,invert:!Q.invert});if(J instanceof j)J=J.invert();return J}},NW=(Z,X,Q)=>Z.includesTransform||X.includesTransform?Q.invert?QU(X,Z,Q):QU(Z,X,Q):kZ(Z,X,Q),QU=(Z,X,Q)=>Z.distribute((U)=>EW(U,X,Q),(U)=>{let q=U.filter(e);if(q.length===0)return j.init("union",Z.branches,X.branches);if(q.length<Z.branches.length||!Z.branches.every((W,$)=>W.rawIn.equals(q[$].rawIn)))return Q.$.parseSchema(q);let J;if(q.length===1){let W=q[0];if(!J)return W;return Q.$.node("morph",{...W.inner,in:W.rawIn.configure(J,"self")})}let Y={branches:q};if(J)Y.meta=J;return Q.$.parseSchema(Y)}),EW=(Z,X,Q)=>{if(Z.hasKind("morph")){let q=[...Z.morphs];if(Z.lastMorphIfNode){let J=Z0(Z.lastMorphIfNode,X,Q);if(J instanceof j)return J;q[q.length-1]=J}else q.push(X);return Q.$.node("morph",{morphs:q,in:Z.inner.in})}if(X.hasKind("morph")){let q=Z0(Z,X.rawIn,Q);if(q instanceof j)return q;return Q.$.node("morph",{morphs:[X],in:q})}return Q.$.node("morph",{morphs:[X],in:Z})};var g0=R(()=>{q0();s();Y0();j2={}});var v0,H1,R0=(Z)=>(X,Q)=>{if(n(X)){if(X.length===0)return;let q=X.map((J)=>Q.$.node(Z,J));if(Z==="predicate")return q;return q.sort((J,Y)=>J.hash<Y.hash?-1:1)}let U=Q.$.node(Z,X);return U.hasOpenIntersection()?[U]:U},C2=(Z)=>{let X=Z.r.shift();if(!X){let U=Z.l.length===0&&Z.kind==="structure"?T.intrinsic.unknown.internal:Z.ctx.$.node(Z.kind,Object.assign(Z.baseInner,bW(Z.l)),{prereduced:!0});for(let q of Z.roots){if(U instanceof j)return U;U=Z0(q,U,Z.ctx)}return U}let Q=!1;for(let U=0;U<Z.l.length;U++){let q=Z0(Z.l[U],X,Z.ctx);if(q===null)continue;if(q instanceof j)return q;if(q.isRoot())return Z.roots.push(q),Z.l.splice(U),C2(Z);if(!Q)Z.l[U]=q,Q=!0;else if(!Z.l.includes(q))return l(`Unexpectedly encountered multiple distinct intersection results for refinement ${X}`)}if(!Q)Z.l.push(X);if(Z.kind==="intersection"){if(X.impliedSiblings)for(let U of X.impliedSiblings)t0(Z.r,U)}return C2(Z)},N2=(Z)=>{return Object.entries(Z).flatMap(([Q,U])=>(Q in g4)?U:[]).sort((Q,U)=>Q.precedence<U.precedence?-1:Q.precedence>U.precedence?1:Q.kind==="predicate"&&U.kind==="predicate"?0:Q.hash<U.hash?-1:1)},bW=(Z)=>{let X={};for(let Q of Z)if(Q.hasOpenIntersection())X[Q.kind]=m(X[Q.kind],Q);else{if(X[Q.kind])return l(`Unexpected intersection of closed refinements of kind ${Q.kind}`);X[Q.kind]=Q}return X},UU=(...Z)=>M(qU(...Z)),qU=(Z,X,Q)=>{let U=Q.hasKind("morph")?"a morph":Q.isUnknown()?"unknown":Q.exclude(X).defaultShortDescription;return`${AQ(Z)} operand must be ${X.description} (was ${U})`};var I0=R(()=>{b();X2();q0();s();g0();c();Y0();v0=class v0 extends S6{constructor(Z,X){super(Z,X);Object.defineProperty(this,O0,{value:"constraint",enumerable:!1})}impliedSiblings;intersect(Z){return N0(this,Z,this.$)}};H1=class H1 extends v0{traverseApply=(Z,X)=>{if(!this.traverseAllows(Z,X))X.errorFromNodeContext(this.errorContext)};compile(Z){if(Z.traversalKind==="Allows")Z.return(this.compiledCondition);else Z.if(this.compiledNegation,()=>Z.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}get errorContext(){return{code:this.kind,description:this.description,meta:this.meta,...this.inner}}get compiledErrorContext(){return S1(this.errorContext)}}});var JU=(Z,X,Q)=>new N1(Z,X,Q,Q,null),x4,N1,IW=(Z,X,Q)=>`${Z} must be assignable to ${X} (was ${Q})`;var gZ=R(()=>{b();c();Y0();x4=class x4 extends S0{};N1=class N1 extends S0{[O0]="generic";paramDefs;bodyDef;$;arg$;baseInstantiation;hkt;description;constructor(Z,X,Q,U,q){super((...J)=>{let Y=k(this.names,(W,$)=>{let L=this.arg$.parse(J[W]);if(!L.extends(this.constraints[W]))M(IW($,this.constraints[W].expression,L.expression));return[$,L]});if(this.defIsLazy()){let W=this.bodyDef(Y);return this.$.parse(W)}return this.$.parse(X,{args:Y})});this.paramDefs=Z,this.bodyDef=X,this.$=Q,this.arg$=U,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 x4}cacheGetter(Z,X){return Object.defineProperty(this,Z,{value:X}),X}get json(){return this.cacheGetter("json",{params:this.params.map((Z)=>Z[1].isUnknown()?Z[0]:[Z[0],Z[1].json]),body:xQ(this.bodyDef)})}get params(){return this.cacheGetter("params",this.paramDefs.map((Z)=>typeof Z==="string"?[Z,T.intrinsic.unknown]:[Z[0],this.$.parse(Z[1])]))}get names(){return this.cacheGetter("names",this.params.map((Z)=>Z[0]))}get constraints(){return this.cacheGetter("constraints",this.params.map((Z)=>Z[1]))}get internal(){return this}get referencesById(){return this.baseInstantiation.internal.referencesById}get references(){return this.baseInstantiation.internal.references}}});var fW,YU,vZ;var xZ=R(()=>{I0();s();c();fW=v({kind:"predicate",hasAssociatedError:!0,collapsibleKey:"predicate",keys:{predicate:{}},normalize:(Z)=>typeof Z==="function"?{predicate:Z}:Z,defaults:{description:(Z)=>`valid according to ${Z.predicate.name||"an anonymous predicate"}`},intersectionIsOpen:!0,intersections:{predicate:()=>null}});YU=class YU extends v0{serializedPredicate=U0(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=S1(this.errorContext);traverseApply=(Z,X)=>{let Q=X.currentErrorCount;if(!this.predicate(Z,X.external)&&X.currentErrorCount===Q)X.errorFromNodeContext(this.errorContext)};compile(Z){if(Z.traversalKind==="Allows"){Z.return(this.compiledCondition);return}Z.initializeErrorCount(),Z.if(`${this.compiledNegation} && ctx.currentErrorCount === errorCount`,()=>Z.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}reduceJsonSchema(Z,X){return X.fallback.predicate({code:"predicate",base:Z,predicate:this.predicate})}};vZ={implementation:fW,Node:YU}});var yW,WU,hZ,kW=(Z)=>`divisor must be an integer (was ${Z})`,gW=(Z,X)=>{let Q,U=Z,q=X;while(q!==0)Q=q,q=U%q,U=Q;return U};var mZ=R(()=>{b();I0();s();c();yW=v({kind:"divisor",collapsibleKey:"rule",keys:{rule:{parse:(Z)=>Number.isInteger(Z)?Z:M(kW(Z))}},normalize:(Z)=>typeof Z==="number"?{rule:Z}:Z,hasAssociatedError:!0,defaults:{description:(Z)=>Z.rule===1?"an integer":Z.rule===2?"even":`a multiple of ${Z.rule}`},intersections:{divisor:(Z,X,Q)=>Q.$.node("divisor",{rule:Math.abs(Z.rule*X.rule/gW(Z.rule,X.rule))})},obviatesBasisDescription:!0});WU=class WU extends H1{traverseAllows=(Z)=>Z%this.rule===0;compiledCondition=`data % ${this.rule} === 0`;compiledNegation=`data % ${this.rule} !== 0`;impliedBasis=T.intrinsic.number.internal;expression=`% ${this.rule}`;reduceJsonSchema(Z){if(Z.type="integer",this.rule===1)return Z;return Z.multipleOf=this.rule,Z}};hZ={implementation:yW,Node:WU}});var f0,vW,xW,h4,m4=(Z)=>(X)=>{if(typeof X==="number")return{rule:X};let{exclusive:Q,...U}=X;return Q?{...U,rule:Z==="minLength"?U.rule+1:U.rule-1}:U},u4=(Z)=>(X)=>{if(typeof X==="number"||typeof X==="string"||X instanceof Date)return{rule:X};let{exclusive:Q,...U}=X;if(!Q)return U;let q=typeof U.rule==="number"?U.rule:typeof U.rule==="string"?new Date(U.rule).valueOf():U.rule.valueOf();return Q?{...U,rule:Z==="after"?q+1:q-1}:U},p4=(Z)=>typeof Z==="string"||typeof Z==="number"?new Date(Z):Z,hW=(Z,X)=>`${Z} bound must be a positive integer (was ${X})`,E2=(Z)=>(X)=>{if(!Number.isInteger(X)||X<0)M(hW(Z,X));return X},mW,uW=(Z,X)=>`${V0(Z,xW)?">":"<"}${X?"":"="}`,pW=(Z)=>typeof Z==="string"?Z:new Date(Z).toLocaleString(),$U=(Z)=>`Bounded expression ${Z} must be exactly one of number, string, Array, or Date`;var F1=R(()=>{b();I0();f0=class f0 extends H1{boundOperandKind=mW[this.kind];compiledActual=this.boundOperandKind==="value"?"data":this.boundOperandKind==="length"?"data.length":"data.valueOf()";comparator=uW(this.kind,this.exclusive);numericLimit=this.rule.valueOf();expression=`${this.comparator} ${this.rule}`;compiledCondition=`${this.compiledActual} ${this.comparator} ${this.numericLimit}`;compiledNegation=`${this.compiledActual} ${vW[this.comparator]} ${this.numericLimit}`;stringLimit=this.boundOperandKind==="date"?pW(this.numericLimit):`${this.numericLimit}`;limitKind=this.comparator["0"]==="<"?"upper":"lower";isStricterThan(Z){return(this.limitKind==="upper"?this.numericLimit<Z.numericLimit:this.numericLimit>Z.numericLimit)||this.numericLimit===Z.numericLimit&&this.exclusive===!0&&!Z.exclusive}overlapsRange(Z){if(this.isStricterThan(Z))return!1;if(this.numericLimit===Z.numericLimit&&(this.exclusive||Z.exclusive))return!1;return!0}overlapIsUnit(Z){return this.numericLimit===Z.numericLimit&&!this.exclusive&&!Z.exclusive}};vW={"<":">=","<=":">",">":"<=",">=":"<"},xW={min:"max",minLength:"maxLength",after:"before"},h4={parse:(Z)=>Z||void 0},mW={min:"value",max:"value",minLength:"length",maxLength:"length",after:"date",before:"date"}});var lW,LU,uZ;var pZ=R(()=>{b();s();c();F1();lW=v({kind:"after",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:p4,serialize:(Z)=>Z.toISOString()}},normalize:u4("after"),defaults:{description:(Z)=>`${Z.collapsibleLimitString} or later`,actual:Z2},intersections:{after:(Z,X)=>Z.isStricterThan(X)?Z:X}});LU=class LU extends f0{impliedBasis=T.intrinsic.Date.internal;collapsibleLimitString=Z2(this.rule);traverseAllows=(Z)=>Z>=this.rule;reduceJsonSchema(Z,X){return X.fallback.date({code:"date",base:Z,after:this.rule})}};uZ={implementation:lW,Node:LU}});var cW,GU,lZ;var cZ=R(()=>{b();q0();s();c();F1();cW=v({kind:"before",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:p4,serialize:(Z)=>Z.toISOString()}},normalize:u4("before"),defaults:{description:(Z)=>`${Z.collapsibleLimitString} or earlier`,actual:Z2},intersections:{before:(Z,X)=>Z.isStricterThan(X)?Z:X,after:(Z,X,Q)=>Z.overlapsRange(X)?Z.overlapIsUnit(X)?Q.$.node("unit",{unit:Z.rule}):null:j.init("range",Z,X)}});GU=class GU extends f0{collapsibleLimitString=Z2(this.rule);traverseAllows=(Z)=>Z<=this.rule;impliedBasis=T.intrinsic.Date.internal;reduceJsonSchema(Z,X){return X.fallback.date({code:"date",base:Z,before:this.rule})}};lZ={implementation:cW,Node:GU}});var dW,VU,dZ;var iZ=R(()=>{I0();q0();s();c();j1();F1();dW=v({kind:"exactLength",collapsibleKey:"rule",keys:{rule:{parse:E2("exactLength")}},normalize:(Z)=>typeof Z==="number"?{rule:Z}:Z,hasAssociatedError:!0,defaults:{description:(Z)=>`exactly length ${Z.rule}`,actual:(Z)=>`${Z.length}`},intersections:{exactLength:(Z,X,Q)=>j.init("unit",Q.$.node("unit",{unit:Z.rule}),Q.$.node("unit",{unit:X.rule}),{path:["length"]}),minLength:(Z,X)=>Z.rule>=X.rule?Z:j.init("range",Z,X),maxLength:(Z,X)=>Z.rule<=X.rule?Z:j.init("range",Z,X)}});VU=class VU extends H1{traverseAllows=(Z)=>Z.length===this.rule;compiledCondition=`data.length === ${this.rule}`;compiledNegation=`data.length !== ${this.rule}`;impliedBasis=T.intrinsic.lengthBoundable.internal;expression=`== ${this.rule}`;reduceJsonSchema(Z){switch(Z.type){case"string":return Z.minLength=this.rule,Z.maxLength=this.rule,Z;case"array":return Z.minItems=this.rule,Z.maxItems=this.rule,Z;default:return X0.throwInternalOperandError("exactLength",Z)}}};dZ={implementation:dW,Node:VU}});var iW,_U,sZ;var aZ=R(()=>{q0();s();c();F1();iW=v({kind:"max",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:h4},normalize:(Z)=>typeof Z==="number"?{rule:Z}:Z,defaults:{description:(Z)=>{if(Z.rule===0)return Z.exclusive?"negative":"non-positive";return`${Z.exclusive?"less than":"at most"} ${Z.rule}`}},intersections:{max:(Z,X)=>Z.isStricterThan(X)?Z:X,min:(Z,X,Q)=>Z.overlapsRange(X)?Z.overlapIsUnit(X)?Q.$.node("unit",{unit:Z.rule}):null:j.init("range",Z,X)},obviatesBasisDescription:!0});_U=class _U extends f0{impliedBasis=T.intrinsic.number.internal;traverseAllows=this.exclusive?(Z)=>Z<this.rule:(Z)=>Z<=this.rule;reduceJsonSchema(Z){if(this.exclusive)Z.exclusiveMaximum=this.rule;else Z.maximum=this.rule;return Z}};sZ={implementation:iW,Node:_U}});var sW,zU,rZ;var oZ=R(()=>{q0();s();c();j1();F1();sW=v({kind:"maxLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:E2("maxLength")}},reduce:(Z,X)=>Z.rule===0?X.node("exactLength",Z):void 0,normalize:m4("maxLength"),defaults:{description:(Z)=>`at most length ${Z.rule}`,actual:(Z)=>`${Z.length}`},intersections:{maxLength:(Z,X)=>Z.isStricterThan(X)?Z:X,minLength:(Z,X,Q)=>Z.overlapsRange(X)?Z.overlapIsUnit(X)?Q.$.node("exactLength",{rule:Z.rule}):null:j.init("range",Z,X)}});zU=class zU extends f0{impliedBasis=T.intrinsic.lengthBoundable.internal;traverseAllows=(Z)=>Z.length<=this.rule;reduceJsonSchema(Z){switch(Z.type){case"string":return Z.maxLength=this.rule,Z;case"array":return Z.maxItems=this.rule,Z;default:return X0.throwInternalOperandError("maxLength",Z)}}};rZ={implementation:sW,Node:zU}});var aW,HU,nZ;var tZ=R(()=>{s();c();F1();aW=v({kind:"min",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:h4},normalize:(Z)=>typeof Z==="number"?{rule:Z}:Z,defaults:{description:(Z)=>{if(Z.rule===0)return Z.exclusive?"positive":"non-negative";return`${Z.exclusive?"more than":"at least"} ${Z.rule}`}},intersections:{min:(Z,X)=>Z.isStricterThan(X)?Z:X},obviatesBasisDescription:!0});HU=class HU extends f0{impliedBasis=T.intrinsic.number.internal;traverseAllows=this.exclusive?(Z)=>Z>this.rule:(Z)=>Z>=this.rule;reduceJsonSchema(Z){if(this.exclusive)Z.exclusiveMinimum=this.rule;else Z.minimum=this.rule;return Z}};nZ={implementation:aW,Node:HU}});var rW,FU,eZ;var Z8=R(()=>{s();c();j1();F1();rW=v({kind:"minLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:E2("minLength")}},reduce:(Z)=>Z.rule===0?T.intrinsic.unknown:void 0,normalize:m4("minLength"),defaults:{description:(Z)=>Z.rule===1?"non-empty":`at least length ${Z.rule}`,actual:(Z)=>Z.length===0?"":`${Z.length}`},intersections:{minLength:(Z,X)=>Z.isStricterThan(X)?Z:X}});FU=class FU extends f0{impliedBasis=T.intrinsic.lengthBoundable.internal;traverseAllows=(Z)=>Z.length>=this.rule;reduceJsonSchema(Z){switch(Z.type){case"string":return Z.minLength=this.rule,Z;case"array":return Z.minItems=this.rule,Z;default:return X0.throwInternalOperandError("minLength",Z)}}};eZ={implementation:rW,Node:FU}});var BU,MU;var X8=R(()=>{pZ();cZ();iZ();aZ();oZ();tZ();Z8();BU={min:nZ.implementation,max:sZ.implementation,minLength:eZ.implementation,maxLength:rZ.implementation,exactLength:dZ.implementation,after:uZ.implementation,before:lZ.implementation},MU={min:nZ.Node,max:sZ.Node,minLength:eZ.Node,maxLength:rZ.Node,exactLength:dZ.Node,after:uZ.Node,before:lZ.Node}});var oW,RU,Q8;var U8=R(()=>{I0();s();c();oW=v({kind:"pattern",collapsibleKey:"rule",keys:{rule:{},flags:{}},normalize:(Z)=>typeof Z==="string"?{rule:Z}:Z instanceof RegExp?Z.flags?{rule:Z.source,flags:Z.flags}:{rule:Z.source}:Z,obviatesBasisDescription:!0,obviatesBasisExpression:!0,hasAssociatedError:!0,intersectionIsOpen:!0,defaults:{description:(Z)=>`matched by ${Z.rule}`},intersections:{pattern:()=>null}});RU=class RU extends H1{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=T.intrinsic.string.internal;reduceJsonSchema(Z,X){if(Z.pattern)return X.fallback.patternIntersection({code:"patternIntersection",base:Z,pattern:this.rule});return Z.pattern=this.rule,Z}};Q8={implementation:oW,Node:RU}});var C6=(Z,X)=>{let Q=nW(Z);if(X&&!X.includes(Q))return M(`Root of kind ${Q} should be one of ${X}`);return Q},nW=(Z)=>{if(I(Z,"root"))return Z.kind;if(typeof Z==="string")return Z[0]==="$"?"alias":(Z in w0)?"domain":"proto";if(typeof Z==="function")return"proto";if(typeof Z!=="object"||Z===null)return M(OU(Z));if("morphs"in Z)return"morph";if("branches"in Z||n(Z))return"union";if("unit"in Z)return"unit";if("reference"in Z)return"alias";let X=Object.keys(Z);if(X.length===0||X.some((Q)=>(Q in g4)))return"intersection";if("proto"in Z)return"proto";if("domain"in Z)return"domain";return M(OU(Z))},OU=(Z)=>`${g(Z)} is not a valid type schema`,TU,tW=(Z)=>n(Z)?Z.map((X)=>X.collapsibleJson):Z.collapsibleJson,T0,q8=(Z)=>{return TU[Z]??=0,`${Z}${++TU[Z]}`},J8=(Z)=>{let X=b2[Z.kind],Q=X.applyConfig?.(Z.def,Z.$.resolvedConfig)??Z.def,U={},{meta:q,...J}=Q,Y=q===void 0?{}:typeof q==="string"?{description:q}:q,W=HZ(J).sort(([L],[V])=>w2(L)?w2(V)?A2(L)-A2(V):1:w2(V)?-1:L<V?-1:1).filter(([L,V])=>{if(L.startsWith("meta.")){let G=L.slice(5);return Y[G]=V,!1}return!0});for(let L of W){let V=L[0],G=X.keys[V];if(!G)return M(`Key ${V} is not valid on ${Z.kind} schema`);let _=G.parse?G.parse(L[1],Z):L[1];if(_!==A0&&(_!==void 0||G.preserveUndefined))U[V]=_}if(X.reduce&&!Z.prereduced){let L=X.reduce(U,Z.$);if(L){if(L instanceof j)return L.throw();return eW(L,Y)}}return Y8({id:Z.id,kind:Z.kind,inner:U,meta:Y,$:Z.$})},Y8=({id:Z,kind:X,inner:Q,meta:U,$:q,ignoreCache:J})=>{let Y=b2[X],W=HZ(Q),$=[],L={};for(let[K,P]of W){let w=Y.keys[K],O=w.serialize??(w.child?tW:k0);if(L[K]=O(P),w.child===!0){let S=P;if(n(S))$.push(...S);else $.push(S)}else if(typeof w.child==="function")$.push(...w.child(P))}if(Y.finalizeInnerJson)L=Y.finalizeInnerJson(L);let V={...L},G={};if(!Z1(U))G=k(U,(K,P)=>[K,K==="examples"?P:k0(P)]),V.meta=l4(G,"description",!0);L=l4(L,Y.collapsibleKey,!1);let _=JSON.stringify({kind:X,...L});V=l4(V,Y.collapsibleKey,!1);let H=l4(V,Y.collapsibleKey,!0),F=JSON.stringify({kind:X,...V});if(q.nodesByHash[F]&&!J)return q.nodesByHash[F];let z={id:Z,kind:X,impl:Y,inner:Q,innerEntries:W,innerJson:L,innerHash:_,meta:U,metaJson:G,json:V,hash:F,collapsibleJson:H,children:$};if(X!=="intersection"){for(let K in Q)if(K!=="in"&&K!=="out")z[K]=Q[K]}let B=new DU[X](z,q);return q.nodesByHash[F]=B},KU=(Z,X)=>{if(Z.id===X)return Z;if(e(T0[X]))l(`Unexpected attempt to overwrite node id ${X}`);return Y8({id:X,kind:Z.kind,inner:Z.inner,meta:Z.meta,$:Z.$,ignoreCache:!0})},eW=(Z,X,Q)=>{if(Q&&e(T0[Q]))l(`Unexpected attempt to overwrite node id ${Q}`);return Y8({id:Q??q8(X.alias??Z.kind),kind:Z.kind,inner:Z.inner,meta:X,$:Z.$})},l4=(Z,X,Q)=>{let U=Object.keys(Z);if(U.length===1&&U[0]===X){let q=Z[X];if(Q)return q;if(P0(q,"object")&&(Object.keys(q).length===1||Array.isArray(q)))return q}return Z};var c4=R(()=>{b();d4();q0();s();c();Y0();TU={},T0={};T.nodesByRegisteredId=T0});var N6=(Z,X,Q)=>{if(Z.key!==X.key)return null;let U=Z.key,q=Z0(Z.value,X.value,Q),J=Z.required||X.required?"required":"optional";if(q instanceof j)if(J==="optional")q=T.intrinsic.never.internal;else return q.withPrefixKey(Z.key,Z.required&&X.required?"required":"optional");if(J==="required")return Q.$.node("required",{key:U,value:q});let Y=Z.hasDefault()?X.hasDefault()?Z.default===X.default?Z.default:M(W8(Z.default,X.default)):Z.default:X.hasDefault()?X.default:A0;return Q.$.node("optional",{key:U,value:q,default:Y})},E6,W8=(Z,X)=>`Invalid intersection of default values ${g(Z)} & ${g(X)}`;var b6=R(()=>{b();I0();X2();A1();q0();g0();c();X1();E6=class E6 extends v0{required=this.kind==="required";optional=this.kind==="optional";impliedBasis=T.intrinsic.object.internal;serializedKey=d0(this.key);compiledKey=typeof this.key==="string"?this.key:this.serializedKey;flatRefs=m(this.value.flatRefs.map((Z)=>s0([this.key,...Z.path],Z.node)),s0([this.key],this.value));_transform(Z,X){X.path.push(this.key);let Q=super._transform(Z,X);return X.path.pop(),Q}hasDefault(){return"default"in this.inner}traverseAllows=(Z,X)=>{if(this.key in Z)return C0(this.key,()=>this.value.traverseAllows(Z[this.key],X),X);return this.optional};traverseApply=(Z,X)=>{if(this.key in Z)C0(this.key,()=>this.value.traverseApply(Z[this.key],X),X);else if(this.hasKind("required"))X.errorFromNodeContext(this.errorContext)};compile(Z){if(Z.if(`${this.serializedKey} in data`,()=>Z.traverseKey(this.serializedKey,`data${Z.prop(this.key)}`,this.value)),this.hasKind("required"))Z.else(()=>Z.traversalKind==="Apply"?Z.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`):Z.return(!1));if(Z.traversalKind==="Allows")Z.return(!0)}}});var Z$,PU,I6,X$,Q$=(Z)=>{if(!Z.hasDefault())return;let X=`{${Z.compiledKey}: ${Z.value.id} = ${k0(Z.default)}}`;return X$[X]??=$8(Z.key,Z.value,Z.default)},$8=(Z,X,Q)=>{if(typeof Q==="function")return X.includesTransform?(q,J)=>{return C0(Z,()=>X(q[Z]=Q(),J),J),q}:(q)=>{return q[Z]=Q(),q};let U=X.includesTransform?X.assert(Q):Q;return P0(U,"object")?(q,J)=>{return C0(Z,()=>X(q[Z]=Q,J),J),q}:(q)=>{return q[Z]=U,q}},f6=(Z,X,Q)=>{let U=D1(X);if(P0(X,"object")&&!U)M(U$(Q));let q=Z.in(U?X():X);if(q instanceof j0){if(Q===null)M(`Default ${q.summary}`);let J=q.transform((Y)=>Y.transform((W)=>({...W,prefixPath:[Q]})));M(`Default for ${J.summary}`)}return X},U$=(Z)=>{return`Non-primitive default ${Z===null?"":typeof Z==="number"?`for value at [${Z}] `:`for ${d0(Z)} `}must be specified as a function like () => ({my: 'object'})`};var I2=R(()=>{b();i4();A1();w6();s();c();X1();b6();Z$=v({kind:"optional",hasAssociatedError:!1,intersectionIsOpen:!0,keys:{key:{},value:{child:!0,parse:(Z,X)=>X.$.parseSchema(Z)},default:{preserveUndefined:!0}},normalize:(Z)=>Z,reduce:(Z,X)=>{if(X.resolvedConfig.exactOptionalPropertyTypes===!1){if(!Z.value.allows(void 0))return X.node("optional",{...Z,value:Z.value.or(f.undefined)},{prereduced:!0})}},defaults:{description:(Z)=>`${Z.compiledKey}?: ${Z.value.description}`},intersections:{optional:N6}});PU=class PU extends E6{constructor(...Z){super(...Z);if("default"in this.inner)f6(this.value,this.inner.default,this.key)}get rawIn(){let Z=super.rawIn;if(!this.hasDefault())return Z;return this.$.node("optional",j4(Z.inner,{default:!0}),{prereduced:!0})}get outProp(){if(!this.hasDefault())return this;let{default:Z,...X}=this.inner;return this.cacheGetter("outProp",this.$.node("required",X,{prereduced:!0}))}expression=this.hasDefault()?`${this.compiledKey}: ${this.value.expression} = ${g(this.inner.default)}`:`${this.compiledKey}?: ${this.value.expression}`;defaultValueMorph=Q$(this);defaultValueMorphRef=this.defaultValueMorph&&U0(this.defaultValueMorph)};I6={implementation:Z$,Node:PU},X$={}});var x0,q$="Expected a non-empty brand name after #",jU,J$=(Z)=>`JSONSchema target '${Z}' is not supported (must be ${jU.map((X)=>`"${X}"`).join(" or ")})`,wU=(Z)=>{if(!y0(jU,Z))M(J$(Z));return Z},f2=(Z)=>typeof Z==="object"&&!(Z instanceof Date)?{...Z,exclusive:!0}:{rule:Z,exclusive:!0},y6=(Z,X)=>I(X,"root")?I(Z,"root")?Z.extends(X):X.allows(Z):I(Z,"root")?Z.hasUnit(X):X===Z,AU=(Z)=>{if(Z.hasKind("morph"))return null;if(Z.hasKind("intersection"))return Z.inner.structure??(Z.basis?.domain==="object"?Z.$.bindReference(T.intrinsic.emptyStructure):null);if(Z.isBasis()&&Z.domain==="object")return Z.$.bindReference(T.intrinsic.emptyStructure);return null},Y$=(Z)=>`Props cannot be extracted from a union. Use .distribute to extract props from each branch instead. Received:
23
- ${Z}`,SU=(Z,X)=>`${Z} operand must be an object (was ${X})`;var E1=R(()=>{b();S2();I0();X2();q0();w6();s();g0();c();Y0();I2();x0=class x0 extends S6{constructor(Z,X){super(Z,X);Object.defineProperty(this,O0,{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:(Z)=>{let X=this(Z);if(X instanceof j0)return X;return{value:X}},jsonSchema:{input:(Z)=>this.rawIn.toJsonSchema({target:wU(Z.target),...Z.libraryOptions}),output:(Z)=>this.rawOut.toJsonSchema({target:wU(Z.target),...Z.libraryOptions})}}}as(){return this}brand(Z){if(Z==="")return M(q$);return this}readonly(){return this}branches=this.hasKind("union")?this.inner.branches:[this];distribute(Z,X){let Q=this.branches.map(Z);return X?.(Q)??Q}get shortDescription(){return this.meta.description??this.defaultShortDescription}toJsonSchema(Z={}){let X=EZ(this.$.resolvedConfig.toJsonSchema,Z);X.useRefs||=this.isCyclic;let Q=typeof X.dialect==="string"?{$schema:X.dialect}:{};if(Object.assign(Q,this.toJsonSchemaRecurse(X)),X.useRefs){let U=k(this.references,(q,J)=>J.isRoot()&&!J.alwaysExpandJsonSchema?[J.id,J.toResolvedJsonSchema(X)]:[]);if(X.target==="draft-07")Object.assign(Q,{definitions:U});else Q.$defs=U}return Q}toJsonSchemaRecurse(Z){if(Z.useRefs&&!this.alwaysExpandJsonSchema)return{$ref:`#/${Z.target==="draft-07"?"definitions":"$defs"}/${this.id}`};return this.toResolvedJsonSchema(Z)}get alwaysExpandJsonSchema(){return this.isBasis()||this.kind==="alias"||this.hasKind("union")&&this.isBoolean}toResolvedJsonSchema(Z){let X=this.innerToJsonSchema(Z);return Object.assign(X,this.metaJson)}intersect(Z){let X=this.$.parseDefinition(Z),Q=this.rawIntersect(X);if(Q instanceof j)return Q;return this.$.finalize(Q)}rawIntersect(Z){return N0(this,Z,this.$)}toNeverIfDisjoint(){return this}and(Z){let X=this.intersect(Z);return X instanceof j?X.throw():X}rawAnd(Z){let X=this.rawIntersect(Z);return X instanceof j?X.throw():X}or(Z){let X=this.$.parseDefinition(Z);return this.$.finalize(this.rawOr(X))}rawOr(Z){let X=[...this.branches,...Z.branches];return this.$.node("union",X)}map(Z){return this.$.schema(this.applyStructuralOperation("map",[Z]))}pick(...Z){return this.$.schema(this.applyStructuralOperation("pick",Z))}omit(...Z){return this.$.schema(this.applyStructuralOperation("omit",Z))}required(){return this.$.schema(this.applyStructuralOperation("required",[]))}partial(){return this.$.schema(this.applyStructuralOperation("partial",[]))}_keyof;keyof(){if(this._keyof)return this._keyof;let Z=this.applyStructuralOperation("keyof",[]).reduce((X,Q)=>X.intersect(Q).toNeverIfDisjoint(),T.intrinsic.unknown.internal);if(Z.branches.length===0)M(yZ(`keyof ${this.expression}`));return this._keyof=this.$.finalize(Z)}get props(){if(this.branches.length!==1)return M(Y$(this.expression));return[...this.applyStructuralOperation("props",[])[0]]}merge(Z){let X=this.$.parseDefinition(Z);return this.$.schema(X.distribute((Q)=>this.applyStructuralOperation("merge",[AU(Q)??M(SU("merge",Q.expression))])))}applyStructuralOperation(Z,X){return this.distribute((Q)=>{if(Q.equals(T.intrinsic.object)&&Z!=="merge")return Q;let U=AU(Q);if(!U)M(SU(Z,Q.expression));if(Z==="keyof")return U.keyof();if(Z==="get")return U.get(...X);if(Z==="props")return U.props;let q=Z==="required"?"require":Z==="partial"?"optionalize":Z;return this.$.node("intersection",{domain:"object",structure:U[q](...X)})})}get(...Z){if(Z[0]===void 0)return this;return this.$.schema(this.applyStructuralOperation("get",Z))}extract(Z){let X=this.$.parseDefinition(Z);return this.$.schema(this.branches.filter((Q)=>Q.extends(X)))}exclude(Z){let X=this.$.parseDefinition(Z);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(Z){return!(this.intersect(Z)instanceof j)}extends(Z){if(this.isNever())return!0;let X=this.intersect(Z);return!(X instanceof j)&&this.equals(X)}ifExtends(Z){return this.extends(Z)?this:void 0}subsumes(Z){return this.$.parseDefinition(Z).extends(this)}configure(Z,X="shallow"){return this.configureReferences(Z,X)}describe(Z,X="shallow"){return this.configure({description:Z},X)}optional(){return[this,"?"]}default(Z){return f6(this,Z,null),[this,"=",Z]}from(Z){return this.assert(Z)}_pipe(...Z){let X=Z.reduce((Q,U)=>Q.rawPipeOnce(U),this);return this.$.finalize(X)}tryPipe(...Z){let X=Z.reduce((Q,U)=>Q.rawPipeOnce(I(U,"root")?U:(q,J)=>{try{return U(q,J)}catch(Y){return J.error({code:"predicate",predicate:U,actual:`aborted due to error:
22
+ • `)}`}throw(){return M(this.describeReasons())}invert(){let Z=this.map((X)=>({...X,l:X.r,r:X.l}));if(!(Z instanceof j))return new j(...Z);return Z}withPrefixKey(Z,X){return this.map((Q)=>({...Q,path:[Z,...Q.path],optional:Q.optional||X==="optional"}))}toNeverIfDisjoint(){return T.intrinsic.never}}});var j2,N0=(Z,X,Q)=>Z0(Z,X,{$:Q,invert:!1,pipe:!1}),j6=(Z,X,Q)=>Z0(Z,X,{$:Q,invert:!1,pipe:!0}),Z0=(Z,X,Q)=>{let U=Q.pipe?"|>":"&",q=`${Z.hash}${U}${X.hash}`;if(j2[q]!==void 0)return j2[q];if(!Q.pipe){let W=`${X.hash}${U}${Z.hash}`;if(j2[W]!==void 0){let $=j2[W],L=$ instanceof j?$.invert():$;return j2[q]=L,L}}let J=!Q.pipe||!Z.includesTransform&&!X.includesTransform;if(J&&Z.equals(X))return Z;let Y=J?kZ(Z,X,Q):Z.hasKindIn(...P2)?NW(Z,X,Q):kZ(Z,X,Q);if(e(Y)){if(Z.equals(Y))Y=Z;else if(X.equals(Y))Y=X}return j2[q]=Y,Y},kZ=(Z,X,Q)=>{let U=Z.precedence<X.precedence?Z.kind:X.kind,q=Z.impl.intersections[X.kind]??X.impl.intersections[Z.kind];if(q===void 0)return null;else if(U===Z.kind)return q(Z,X,Q);else{let J=q(X,Z,{...Q,invert:!Q.invert});if(J instanceof j)J=J.invert();return J}},NW=(Z,X,Q)=>Z.includesTransform||X.includesTransform?Q.invert?QU(X,Z,Q):QU(Z,X,Q):kZ(Z,X,Q),QU=(Z,X,Q)=>Z.distribute((U)=>EW(U,X,Q),(U)=>{let q=U.filter(e);if(q.length===0)return j.init("union",Z.branches,X.branches);if(q.length<Z.branches.length||!Z.branches.every((W,$)=>W.rawIn.equals(q[$].rawIn)))return Q.$.parseSchema(q);let J;if(q.length===1){let W=q[0];if(!J)return W;return Q.$.node("morph",{...W.inner,in:W.rawIn.configure(J,"self")})}let Y={branches:q};if(J)Y.meta=J;return Q.$.parseSchema(Y)}),EW=(Z,X,Q)=>{if(Z.hasKind("morph")){let q=[...Z.morphs];if(Z.lastMorphIfNode){let J=Z0(Z.lastMorphIfNode,X,Q);if(J instanceof j)return J;q[q.length-1]=J}else q.push(X);return Q.$.node("morph",{morphs:q,in:Z.inner.in})}if(X.hasKind("morph")){let q=Z0(Z,X.rawIn,Q);if(q instanceof j)return q;return Q.$.node("morph",{morphs:[X],in:q})}return Q.$.node("morph",{morphs:[X],in:Z})};var g0=O(()=>{q0();s();Y0();j2={}});var v0,H1,O0=(Z)=>(X,Q)=>{if(n(X)){if(X.length===0)return;let q=X.map((J)=>Q.$.node(Z,J));if(Z==="predicate")return q;return q.sort((J,Y)=>J.hash<Y.hash?-1:1)}let U=Q.$.node(Z,X);return U.hasOpenIntersection()?[U]:U},C2=(Z)=>{let X=Z.r.shift();if(!X){let U=Z.l.length===0&&Z.kind==="structure"?T.intrinsic.unknown.internal:Z.ctx.$.node(Z.kind,Object.assign(Z.baseInner,bW(Z.l)),{prereduced:!0});for(let q of Z.roots){if(U instanceof j)return U;U=Z0(q,U,Z.ctx)}return U}let Q=!1;for(let U=0;U<Z.l.length;U++){let q=Z0(Z.l[U],X,Z.ctx);if(q===null)continue;if(q instanceof j)return q;if(q.isRoot())return Z.roots.push(q),Z.l.splice(U),C2(Z);if(!Q)Z.l[U]=q,Q=!0;else if(!Z.l.includes(q))return l(`Unexpectedly encountered multiple distinct intersection results for refinement ${X}`)}if(!Q)Z.l.push(X);if(Z.kind==="intersection"){if(X.impliedSiblings)for(let U of X.impliedSiblings)t0(Z.r,U)}return C2(Z)},N2=(Z)=>{return Object.entries(Z).flatMap(([Q,U])=>(Q in g4)?U:[]).sort((Q,U)=>Q.precedence<U.precedence?-1:Q.precedence>U.precedence?1:Q.kind==="predicate"&&U.kind==="predicate"?0:Q.hash<U.hash?-1:1)},bW=(Z)=>{let X={};for(let Q of Z)if(Q.hasOpenIntersection())X[Q.kind]=m(X[Q.kind],Q);else{if(X[Q.kind])return l(`Unexpected intersection of closed refinements of kind ${Q.kind}`);X[Q.kind]=Q}return X},UU=(...Z)=>M(qU(...Z)),qU=(Z,X,Q)=>{let U=Q.hasKind("morph")?"a morph":Q.isUnknown()?"unknown":Q.exclude(X).defaultShortDescription;return`${AQ(Z)} operand must be ${X.description} (was ${U})`};var I0=O(()=>{b();X2();q0();s();g0();d();Y0();v0=class v0 extends S6{constructor(Z,X){super(Z,X);Object.defineProperty(this,R0,{value:"constraint",enumerable:!1})}impliedSiblings;intersect(Z){return N0(this,Z,this.$)}};H1=class H1 extends v0{traverseApply=(Z,X)=>{if(!this.traverseAllows(Z,X))X.errorFromNodeContext(this.errorContext)};compile(Z){if(Z.traversalKind==="Allows")Z.return(this.compiledCondition);else Z.if(this.compiledNegation,()=>Z.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}get errorContext(){return{code:this.kind,description:this.description,meta:this.meta,...this.inner}}get compiledErrorContext(){return S1(this.errorContext)}}});var JU=(Z,X,Q)=>new N1(Z,X,Q,Q,null),x4,N1,IW=(Z,X,Q)=>`${Z} must be assignable to ${X} (was ${Q})`;var gZ=O(()=>{b();d();Y0();x4=class x4 extends S0{};N1=class N1 extends S0{[R0]="generic";paramDefs;bodyDef;$;arg$;baseInstantiation;hkt;description;constructor(Z,X,Q,U,q){super((...J)=>{let Y=k(this.names,(W,$)=>{let L=this.arg$.parse(J[W]);if(!L.extends(this.constraints[W]))M(IW($,this.constraints[W].expression,L.expression));return[$,L]});if(this.defIsLazy()){let W=this.bodyDef(Y);return this.$.parse(W)}return this.$.parse(X,{args:Y})});this.paramDefs=Z,this.bodyDef=X,this.$=Q,this.arg$=U,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 x4}cacheGetter(Z,X){return Object.defineProperty(this,Z,{value:X}),X}get json(){return this.cacheGetter("json",{params:this.params.map((Z)=>Z[1].isUnknown()?Z[0]:[Z[0],Z[1].json]),body:xQ(this.bodyDef)})}get params(){return this.cacheGetter("params",this.paramDefs.map((Z)=>typeof Z==="string"?[Z,T.intrinsic.unknown]:[Z[0],this.$.parse(Z[1])]))}get names(){return this.cacheGetter("names",this.params.map((Z)=>Z[0]))}get constraints(){return this.cacheGetter("constraints",this.params.map((Z)=>Z[1]))}get internal(){return this}get referencesById(){return this.baseInstantiation.internal.referencesById}get references(){return this.baseInstantiation.internal.references}}});var fW,YU,vZ;var xZ=O(()=>{I0();s();d();fW=v({kind:"predicate",hasAssociatedError:!0,collapsibleKey:"predicate",keys:{predicate:{}},normalize:(Z)=>typeof Z==="function"?{predicate:Z}:Z,defaults:{description:(Z)=>`valid according to ${Z.predicate.name||"an anonymous predicate"}`},intersectionIsOpen:!0,intersections:{predicate:()=>null}});YU=class YU extends v0{serializedPredicate=U0(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=S1(this.errorContext);traverseApply=(Z,X)=>{let Q=X.currentErrorCount;if(!this.predicate(Z,X.external)&&X.currentErrorCount===Q)X.errorFromNodeContext(this.errorContext)};compile(Z){if(Z.traversalKind==="Allows"){Z.return(this.compiledCondition);return}Z.initializeErrorCount(),Z.if(`${this.compiledNegation} && ctx.currentErrorCount === errorCount`,()=>Z.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}reduceJsonSchema(Z,X){return X.fallback.predicate({code:"predicate",base:Z,predicate:this.predicate})}};vZ={implementation:fW,Node:YU}});var yW,WU,hZ,kW=(Z)=>`divisor must be an integer (was ${Z})`,gW=(Z,X)=>{let Q,U=Z,q=X;while(q!==0)Q=q,q=U%q,U=Q;return U};var mZ=O(()=>{b();I0();s();d();yW=v({kind:"divisor",collapsibleKey:"rule",keys:{rule:{parse:(Z)=>Number.isInteger(Z)?Z:M(kW(Z))}},normalize:(Z)=>typeof Z==="number"?{rule:Z}:Z,hasAssociatedError:!0,defaults:{description:(Z)=>Z.rule===1?"an integer":Z.rule===2?"even":`a multiple of ${Z.rule}`},intersections:{divisor:(Z,X,Q)=>Q.$.node("divisor",{rule:Math.abs(Z.rule*X.rule/gW(Z.rule,X.rule))})},obviatesBasisDescription:!0});WU=class WU extends H1{traverseAllows=(Z)=>Z%this.rule===0;compiledCondition=`data % ${this.rule} === 0`;compiledNegation=`data % ${this.rule} !== 0`;impliedBasis=T.intrinsic.number.internal;expression=`% ${this.rule}`;reduceJsonSchema(Z){if(Z.type="integer",this.rule===1)return Z;return Z.multipleOf=this.rule,Z}};hZ={implementation:yW,Node:WU}});var f0,vW,xW,h4,m4=(Z)=>(X)=>{if(typeof X==="number")return{rule:X};let{exclusive:Q,...U}=X;return Q?{...U,rule:Z==="minLength"?U.rule+1:U.rule-1}:U},u4=(Z)=>(X)=>{if(typeof X==="number"||typeof X==="string"||X instanceof Date)return{rule:X};let{exclusive:Q,...U}=X;if(!Q)return U;let q=typeof U.rule==="number"?U.rule:typeof U.rule==="string"?new Date(U.rule).valueOf():U.rule.valueOf();return Q?{...U,rule:Z==="after"?q+1:q-1}:U},p4=(Z)=>typeof Z==="string"||typeof Z==="number"?new Date(Z):Z,hW=(Z,X)=>`${Z} bound must be a positive integer (was ${X})`,E2=(Z)=>(X)=>{if(!Number.isInteger(X)||X<0)M(hW(Z,X));return X},mW,uW=(Z,X)=>`${V0(Z,xW)?">":"<"}${X?"":"="}`,pW=(Z)=>typeof Z==="string"?Z:new Date(Z).toLocaleString(),$U=(Z)=>`Bounded expression ${Z} must be exactly one of number, string, Array, or Date`;var F1=O(()=>{b();I0();f0=class f0 extends H1{boundOperandKind=mW[this.kind];compiledActual=this.boundOperandKind==="value"?"data":this.boundOperandKind==="length"?"data.length":"data.valueOf()";comparator=uW(this.kind,this.exclusive);numericLimit=this.rule.valueOf();expression=`${this.comparator} ${this.rule}`;compiledCondition=`${this.compiledActual} ${this.comparator} ${this.numericLimit}`;compiledNegation=`${this.compiledActual} ${vW[this.comparator]} ${this.numericLimit}`;stringLimit=this.boundOperandKind==="date"?pW(this.numericLimit):`${this.numericLimit}`;limitKind=this.comparator["0"]==="<"?"upper":"lower";isStricterThan(Z){return(this.limitKind==="upper"?this.numericLimit<Z.numericLimit:this.numericLimit>Z.numericLimit)||this.numericLimit===Z.numericLimit&&this.exclusive===!0&&!Z.exclusive}overlapsRange(Z){if(this.isStricterThan(Z))return!1;if(this.numericLimit===Z.numericLimit&&(this.exclusive||Z.exclusive))return!1;return!0}overlapIsUnit(Z){return this.numericLimit===Z.numericLimit&&!this.exclusive&&!Z.exclusive}};vW={"<":">=","<=":">",">":"<=",">=":"<"},xW={min:"max",minLength:"maxLength",after:"before"},h4={parse:(Z)=>Z||void 0},mW={min:"value",max:"value",minLength:"length",maxLength:"length",after:"date",before:"date"}});var lW,LU,uZ;var pZ=O(()=>{b();s();d();F1();lW=v({kind:"after",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:p4,serialize:(Z)=>Z.toISOString()}},normalize:u4("after"),defaults:{description:(Z)=>`${Z.collapsibleLimitString} or later`,actual:Z2},intersections:{after:(Z,X)=>Z.isStricterThan(X)?Z:X}});LU=class LU extends f0{impliedBasis=T.intrinsic.Date.internal;collapsibleLimitString=Z2(this.rule);traverseAllows=(Z)=>Z>=this.rule;reduceJsonSchema(Z,X){return X.fallback.date({code:"date",base:Z,after:this.rule})}};uZ={implementation:lW,Node:LU}});var dW,GU,lZ;var dZ=O(()=>{b();q0();s();d();F1();dW=v({kind:"before",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:p4,serialize:(Z)=>Z.toISOString()}},normalize:u4("before"),defaults:{description:(Z)=>`${Z.collapsibleLimitString} or earlier`,actual:Z2},intersections:{before:(Z,X)=>Z.isStricterThan(X)?Z:X,after:(Z,X,Q)=>Z.overlapsRange(X)?Z.overlapIsUnit(X)?Q.$.node("unit",{unit:Z.rule}):null:j.init("range",Z,X)}});GU=class GU extends f0{collapsibleLimitString=Z2(this.rule);traverseAllows=(Z)=>Z<=this.rule;impliedBasis=T.intrinsic.Date.internal;reduceJsonSchema(Z,X){return X.fallback.date({code:"date",base:Z,before:this.rule})}};lZ={implementation:dW,Node:GU}});var cW,VU,cZ;var iZ=O(()=>{I0();q0();s();d();j1();F1();cW=v({kind:"exactLength",collapsibleKey:"rule",keys:{rule:{parse:E2("exactLength")}},normalize:(Z)=>typeof Z==="number"?{rule:Z}:Z,hasAssociatedError:!0,defaults:{description:(Z)=>`exactly length ${Z.rule}`,actual:(Z)=>`${Z.length}`},intersections:{exactLength:(Z,X,Q)=>j.init("unit",Q.$.node("unit",{unit:Z.rule}),Q.$.node("unit",{unit:X.rule}),{path:["length"]}),minLength:(Z,X)=>Z.rule>=X.rule?Z:j.init("range",Z,X),maxLength:(Z,X)=>Z.rule<=X.rule?Z:j.init("range",Z,X)}});VU=class VU extends H1{traverseAllows=(Z)=>Z.length===this.rule;compiledCondition=`data.length === ${this.rule}`;compiledNegation=`data.length !== ${this.rule}`;impliedBasis=T.intrinsic.lengthBoundable.internal;expression=`== ${this.rule}`;reduceJsonSchema(Z){switch(Z.type){case"string":return Z.minLength=this.rule,Z.maxLength=this.rule,Z;case"array":return Z.minItems=this.rule,Z.maxItems=this.rule,Z;default:return X0.throwInternalOperandError("exactLength",Z)}}};cZ={implementation:cW,Node:VU}});var iW,_U,sZ;var aZ=O(()=>{q0();s();d();F1();iW=v({kind:"max",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:h4},normalize:(Z)=>typeof Z==="number"?{rule:Z}:Z,defaults:{description:(Z)=>{if(Z.rule===0)return Z.exclusive?"negative":"non-positive";return`${Z.exclusive?"less than":"at most"} ${Z.rule}`}},intersections:{max:(Z,X)=>Z.isStricterThan(X)?Z:X,min:(Z,X,Q)=>Z.overlapsRange(X)?Z.overlapIsUnit(X)?Q.$.node("unit",{unit:Z.rule}):null:j.init("range",Z,X)},obviatesBasisDescription:!0});_U=class _U extends f0{impliedBasis=T.intrinsic.number.internal;traverseAllows=this.exclusive?(Z)=>Z<this.rule:(Z)=>Z<=this.rule;reduceJsonSchema(Z){if(this.exclusive)Z.exclusiveMaximum=this.rule;else Z.maximum=this.rule;return Z}};sZ={implementation:iW,Node:_U}});var sW,zU,rZ;var oZ=O(()=>{q0();s();d();j1();F1();sW=v({kind:"maxLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:E2("maxLength")}},reduce:(Z,X)=>Z.rule===0?X.node("exactLength",Z):void 0,normalize:m4("maxLength"),defaults:{description:(Z)=>`at most length ${Z.rule}`,actual:(Z)=>`${Z.length}`},intersections:{maxLength:(Z,X)=>Z.isStricterThan(X)?Z:X,minLength:(Z,X,Q)=>Z.overlapsRange(X)?Z.overlapIsUnit(X)?Q.$.node("exactLength",{rule:Z.rule}):null:j.init("range",Z,X)}});zU=class zU extends f0{impliedBasis=T.intrinsic.lengthBoundable.internal;traverseAllows=(Z)=>Z.length<=this.rule;reduceJsonSchema(Z){switch(Z.type){case"string":return Z.maxLength=this.rule,Z;case"array":return Z.maxItems=this.rule,Z;default:return X0.throwInternalOperandError("maxLength",Z)}}};rZ={implementation:sW,Node:zU}});var aW,HU,nZ;var tZ=O(()=>{s();d();F1();aW=v({kind:"min",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:h4},normalize:(Z)=>typeof Z==="number"?{rule:Z}:Z,defaults:{description:(Z)=>{if(Z.rule===0)return Z.exclusive?"positive":"non-negative";return`${Z.exclusive?"more than":"at least"} ${Z.rule}`}},intersections:{min:(Z,X)=>Z.isStricterThan(X)?Z:X},obviatesBasisDescription:!0});HU=class HU extends f0{impliedBasis=T.intrinsic.number.internal;traverseAllows=this.exclusive?(Z)=>Z>this.rule:(Z)=>Z>=this.rule;reduceJsonSchema(Z){if(this.exclusive)Z.exclusiveMinimum=this.rule;else Z.minimum=this.rule;return Z}};nZ={implementation:aW,Node:HU}});var rW,FU,eZ;var Z8=O(()=>{s();d();j1();F1();rW=v({kind:"minLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:E2("minLength")}},reduce:(Z)=>Z.rule===0?T.intrinsic.unknown:void 0,normalize:m4("minLength"),defaults:{description:(Z)=>Z.rule===1?"non-empty":`at least length ${Z.rule}`,actual:(Z)=>Z.length===0?"":`${Z.length}`},intersections:{minLength:(Z,X)=>Z.isStricterThan(X)?Z:X}});FU=class FU extends f0{impliedBasis=T.intrinsic.lengthBoundable.internal;traverseAllows=(Z)=>Z.length>=this.rule;reduceJsonSchema(Z){switch(Z.type){case"string":return Z.minLength=this.rule,Z;case"array":return Z.minItems=this.rule,Z;default:return X0.throwInternalOperandError("minLength",Z)}}};eZ={implementation:rW,Node:FU}});var BU,MU;var X8=O(()=>{pZ();dZ();iZ();aZ();oZ();tZ();Z8();BU={min:nZ.implementation,max:sZ.implementation,minLength:eZ.implementation,maxLength:rZ.implementation,exactLength:cZ.implementation,after:uZ.implementation,before:lZ.implementation},MU={min:nZ.Node,max:sZ.Node,minLength:eZ.Node,maxLength:rZ.Node,exactLength:cZ.Node,after:uZ.Node,before:lZ.Node}});var oW,OU,Q8;var U8=O(()=>{I0();s();d();oW=v({kind:"pattern",collapsibleKey:"rule",keys:{rule:{},flags:{}},normalize:(Z)=>typeof Z==="string"?{rule:Z}:Z instanceof RegExp?Z.flags?{rule:Z.source,flags:Z.flags}:{rule:Z.source}:Z,obviatesBasisDescription:!0,obviatesBasisExpression:!0,hasAssociatedError:!0,intersectionIsOpen:!0,defaults:{description:(Z)=>`matched by ${Z.rule}`},intersections:{pattern:()=>null}});OU=class OU extends H1{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=T.intrinsic.string.internal;reduceJsonSchema(Z,X){if(Z.pattern)return X.fallback.patternIntersection({code:"patternIntersection",base:Z,pattern:this.rule});return Z.pattern=this.rule,Z}};Q8={implementation:oW,Node:OU}});var C6=(Z,X)=>{let Q=nW(Z);if(X&&!X.includes(Q))return M(`Root of kind ${Q} should be one of ${X}`);return Q},nW=(Z)=>{if(I(Z,"root"))return Z.kind;if(typeof Z==="string")return Z[0]==="$"?"alias":(Z in w0)?"domain":"proto";if(typeof Z==="function")return"proto";if(typeof Z!=="object"||Z===null)return M(RU(Z));if("morphs"in Z)return"morph";if("branches"in Z||n(Z))return"union";if("unit"in Z)return"unit";if("reference"in Z)return"alias";let X=Object.keys(Z);if(X.length===0||X.some((Q)=>(Q in g4)))return"intersection";if("proto"in Z)return"proto";if("domain"in Z)return"domain";return M(RU(Z))},RU=(Z)=>`${g(Z)} is not a valid type schema`,TU,tW=(Z)=>n(Z)?Z.map((X)=>X.collapsibleJson):Z.collapsibleJson,T0,q8=(Z)=>{return TU[Z]??=0,`${Z}${++TU[Z]}`},J8=(Z)=>{let X=b2[Z.kind],Q=X.applyConfig?.(Z.def,Z.$.resolvedConfig)??Z.def,U={},{meta:q,...J}=Q,Y=q===void 0?{}:typeof q==="string"?{description:q}:q,W=HZ(J).sort(([L],[V])=>w2(L)?w2(V)?A2(L)-A2(V):1:w2(V)?-1:L<V?-1:1).filter(([L,V])=>{if(L.startsWith("meta.")){let G=L.slice(5);return Y[G]=V,!1}return!0});for(let L of W){let V=L[0],G=X.keys[V];if(!G)return M(`Key ${V} is not valid on ${Z.kind} schema`);let _=G.parse?G.parse(L[1],Z):L[1];if(_!==A0&&(_!==void 0||G.preserveUndefined))U[V]=_}if(X.reduce&&!Z.prereduced){let L=X.reduce(U,Z.$);if(L){if(L instanceof j)return L.throw();return eW(L,Y)}}return Y8({id:Z.id,kind:Z.kind,inner:U,meta:Y,$:Z.$})},Y8=({id:Z,kind:X,inner:Q,meta:U,$:q,ignoreCache:J})=>{let Y=b2[X],W=HZ(Q),$=[],L={};for(let[K,P]of W){let w=Y.keys[K],R=w.serialize??(w.child?tW:k0);if(L[K]=R(P),w.child===!0){let S=P;if(n(S))$.push(...S);else $.push(S)}else if(typeof w.child==="function")$.push(...w.child(P))}if(Y.finalizeInnerJson)L=Y.finalizeInnerJson(L);let V={...L},G={};if(!Z1(U))G=k(U,(K,P)=>[K,K==="examples"?P:k0(P)]),V.meta=l4(G,"description",!0);L=l4(L,Y.collapsibleKey,!1);let _=JSON.stringify({kind:X,...L});V=l4(V,Y.collapsibleKey,!1);let H=l4(V,Y.collapsibleKey,!0),F=JSON.stringify({kind:X,...V});if(q.nodesByHash[F]&&!J)return q.nodesByHash[F];let z={id:Z,kind:X,impl:Y,inner:Q,innerEntries:W,innerJson:L,innerHash:_,meta:U,metaJson:G,json:V,hash:F,collapsibleJson:H,children:$};if(X!=="intersection"){for(let K in Q)if(K!=="in"&&K!=="out")z[K]=Q[K]}let B=new DU[X](z,q);return q.nodesByHash[F]=B},KU=(Z,X)=>{if(Z.id===X)return Z;if(e(T0[X]))l(`Unexpected attempt to overwrite node id ${X}`);return Y8({id:X,kind:Z.kind,inner:Z.inner,meta:Z.meta,$:Z.$,ignoreCache:!0})},eW=(Z,X,Q)=>{if(Q&&e(T0[Q]))l(`Unexpected attempt to overwrite node id ${Q}`);return Y8({id:Q??q8(X.alias??Z.kind),kind:Z.kind,inner:Z.inner,meta:X,$:Z.$})},l4=(Z,X,Q)=>{let U=Object.keys(Z);if(U.length===1&&U[0]===X){let q=Z[X];if(Q)return q;if(P0(q,"object")&&(Object.keys(q).length===1||Array.isArray(q)))return q}return Z};var d4=O(()=>{b();c4();q0();s();d();Y0();TU={},T0={};T.nodesByRegisteredId=T0});var N6=(Z,X,Q)=>{if(Z.key!==X.key)return null;let U=Z.key,q=Z0(Z.value,X.value,Q),J=Z.required||X.required?"required":"optional";if(q instanceof j)if(J==="optional")q=T.intrinsic.never.internal;else return q.withPrefixKey(Z.key,Z.required&&X.required?"required":"optional");if(J==="required")return Q.$.node("required",{key:U,value:q});let Y=Z.hasDefault()?X.hasDefault()?Z.default===X.default?Z.default:M(W8(Z.default,X.default)):Z.default:X.hasDefault()?X.default:A0;return Q.$.node("optional",{key:U,value:q,default:Y})},E6,W8=(Z,X)=>`Invalid intersection of default values ${g(Z)} & ${g(X)}`;var b6=O(()=>{b();I0();X2();A1();q0();g0();d();X1();E6=class E6 extends v0{required=this.kind==="required";optional=this.kind==="optional";impliedBasis=T.intrinsic.object.internal;serializedKey=c0(this.key);compiledKey=typeof this.key==="string"?this.key:this.serializedKey;flatRefs=m(this.value.flatRefs.map((Z)=>s0([this.key,...Z.path],Z.node)),s0([this.key],this.value));_transform(Z,X){X.path.push(this.key);let Q=super._transform(Z,X);return X.path.pop(),Q}hasDefault(){return"default"in this.inner}traverseAllows=(Z,X)=>{if(this.key in Z)return C0(this.key,()=>this.value.traverseAllows(Z[this.key],X),X);return this.optional};traverseApply=(Z,X)=>{if(this.key in Z)C0(this.key,()=>this.value.traverseApply(Z[this.key],X),X);else if(this.hasKind("required"))X.errorFromNodeContext(this.errorContext)};compile(Z){if(Z.if(`${this.serializedKey} in data`,()=>Z.traverseKey(this.serializedKey,`data${Z.prop(this.key)}`,this.value)),this.hasKind("required"))Z.else(()=>Z.traversalKind==="Apply"?Z.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`):Z.return(!1));if(Z.traversalKind==="Allows")Z.return(!0)}}});var Z$,PU,I6,X$,Q$=(Z)=>{if(!Z.hasDefault())return;let X=`{${Z.compiledKey}: ${Z.value.id} = ${k0(Z.default)}}`;return X$[X]??=$8(Z.key,Z.value,Z.default)},$8=(Z,X,Q)=>{if(typeof Q==="function")return X.includesTransform?(q,J)=>{return C0(Z,()=>X(q[Z]=Q(),J),J),q}:(q)=>{return q[Z]=Q(),q};let U=X.includesTransform?X.assert(Q):Q;return P0(U,"object")?(q,J)=>{return C0(Z,()=>X(q[Z]=Q,J),J),q}:(q)=>{return q[Z]=U,q}},f6=(Z,X,Q)=>{let U=D1(X);if(P0(X,"object")&&!U)M(U$(Q));let q=Z.in(U?X():X);if(q instanceof j0){if(Q===null)M(`Default ${q.summary}`);let J=q.transform((Y)=>Y.transform((W)=>({...W,prefixPath:[Q]})));M(`Default for ${J.summary}`)}return X},U$=(Z)=>{return`Non-primitive default ${Z===null?"":typeof Z==="number"?`for value at [${Z}] `:`for ${c0(Z)} `}must be specified as a function like () => ({my: 'object'})`};var I2=O(()=>{b();i4();A1();w6();s();d();X1();b6();Z$=v({kind:"optional",hasAssociatedError:!1,intersectionIsOpen:!0,keys:{key:{},value:{child:!0,parse:(Z,X)=>X.$.parseSchema(Z)},default:{preserveUndefined:!0}},normalize:(Z)=>Z,reduce:(Z,X)=>{if(X.resolvedConfig.exactOptionalPropertyTypes===!1){if(!Z.value.allows(void 0))return X.node("optional",{...Z,value:Z.value.or(f.undefined)},{prereduced:!0})}},defaults:{description:(Z)=>`${Z.compiledKey}?: ${Z.value.description}`},intersections:{optional:N6}});PU=class PU extends E6{constructor(...Z){super(...Z);if("default"in this.inner)f6(this.value,this.inner.default,this.key)}get rawIn(){let Z=super.rawIn;if(!this.hasDefault())return Z;return this.$.node("optional",j4(Z.inner,{default:!0}),{prereduced:!0})}get outProp(){if(!this.hasDefault())return this;let{default:Z,...X}=this.inner;return this.cacheGetter("outProp",this.$.node("required",X,{prereduced:!0}))}expression=this.hasDefault()?`${this.compiledKey}: ${this.value.expression} = ${g(this.inner.default)}`:`${this.compiledKey}?: ${this.value.expression}`;defaultValueMorph=Q$(this);defaultValueMorphRef=this.defaultValueMorph&&U0(this.defaultValueMorph)};I6={implementation:Z$,Node:PU},X$={}});var x0,q$="Expected a non-empty brand name after #",jU,J$=(Z)=>`JSONSchema target '${Z}' is not supported (must be ${jU.map((X)=>`"${X}"`).join(" or ")})`,wU=(Z)=>{if(!y0(jU,Z))M(J$(Z));return Z},f2=(Z)=>typeof Z==="object"&&!(Z instanceof Date)?{...Z,exclusive:!0}:{rule:Z,exclusive:!0},y6=(Z,X)=>I(X,"root")?I(Z,"root")?Z.extends(X):X.allows(Z):I(Z,"root")?Z.hasUnit(X):X===Z,AU=(Z)=>{if(Z.hasKind("morph"))return null;if(Z.hasKind("intersection"))return Z.inner.structure??(Z.basis?.domain==="object"?Z.$.bindReference(T.intrinsic.emptyStructure):null);if(Z.isBasis()&&Z.domain==="object")return Z.$.bindReference(T.intrinsic.emptyStructure);return null},Y$=(Z)=>`Props cannot be extracted from a union. Use .distribute to extract props from each branch instead. Received:
23
+ ${Z}`,SU=(Z,X)=>`${Z} operand must be an object (was ${X})`;var E1=O(()=>{b();S2();I0();X2();q0();w6();s();g0();d();Y0();I2();x0=class x0 extends S6{constructor(Z,X){super(Z,X);Object.defineProperty(this,R0,{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:(Z)=>{let X=this(Z);if(X instanceof j0)return X;return{value:X}},jsonSchema:{input:(Z)=>this.rawIn.toJsonSchema({target:wU(Z.target),...Z.libraryOptions}),output:(Z)=>this.rawOut.toJsonSchema({target:wU(Z.target),...Z.libraryOptions})}}}as(){return this}brand(Z){if(Z==="")return M(q$);return this}readonly(){return this}branches=this.hasKind("union")?this.inner.branches:[this];distribute(Z,X){let Q=this.branches.map(Z);return X?.(Q)??Q}get shortDescription(){return this.meta.description??this.defaultShortDescription}toJsonSchema(Z={}){let X=EZ(this.$.resolvedConfig.toJsonSchema,Z);X.useRefs||=this.isCyclic;let Q=typeof X.dialect==="string"?{$schema:X.dialect}:{};if(Object.assign(Q,this.toJsonSchemaRecurse(X)),X.useRefs){let U=k(this.references,(q,J)=>J.isRoot()&&!J.alwaysExpandJsonSchema?[J.id,J.toResolvedJsonSchema(X)]:[]);if(X.target==="draft-07")Object.assign(Q,{definitions:U});else Q.$defs=U}return Q}toJsonSchemaRecurse(Z){if(Z.useRefs&&!this.alwaysExpandJsonSchema)return{$ref:`#/${Z.target==="draft-07"?"definitions":"$defs"}/${this.id}`};return this.toResolvedJsonSchema(Z)}get alwaysExpandJsonSchema(){return this.isBasis()||this.kind==="alias"||this.hasKind("union")&&this.isBoolean}toResolvedJsonSchema(Z){let X=this.innerToJsonSchema(Z);return Object.assign(X,this.metaJson)}intersect(Z){let X=this.$.parseDefinition(Z),Q=this.rawIntersect(X);if(Q instanceof j)return Q;return this.$.finalize(Q)}rawIntersect(Z){return N0(this,Z,this.$)}toNeverIfDisjoint(){return this}and(Z){let X=this.intersect(Z);return X instanceof j?X.throw():X}rawAnd(Z){let X=this.rawIntersect(Z);return X instanceof j?X.throw():X}or(Z){let X=this.$.parseDefinition(Z);return this.$.finalize(this.rawOr(X))}rawOr(Z){let X=[...this.branches,...Z.branches];return this.$.node("union",X)}map(Z){return this.$.schema(this.applyStructuralOperation("map",[Z]))}pick(...Z){return this.$.schema(this.applyStructuralOperation("pick",Z))}omit(...Z){return this.$.schema(this.applyStructuralOperation("omit",Z))}required(){return this.$.schema(this.applyStructuralOperation("required",[]))}partial(){return this.$.schema(this.applyStructuralOperation("partial",[]))}_keyof;keyof(){if(this._keyof)return this._keyof;let Z=this.applyStructuralOperation("keyof",[]).reduce((X,Q)=>X.intersect(Q).toNeverIfDisjoint(),T.intrinsic.unknown.internal);if(Z.branches.length===0)M(yZ(`keyof ${this.expression}`));return this._keyof=this.$.finalize(Z)}get props(){if(this.branches.length!==1)return M(Y$(this.expression));return[...this.applyStructuralOperation("props",[])[0]]}merge(Z){let X=this.$.parseDefinition(Z);return this.$.schema(X.distribute((Q)=>this.applyStructuralOperation("merge",[AU(Q)??M(SU("merge",Q.expression))])))}applyStructuralOperation(Z,X){return this.distribute((Q)=>{if(Q.equals(T.intrinsic.object)&&Z!=="merge")return Q;let U=AU(Q);if(!U)M(SU(Z,Q.expression));if(Z==="keyof")return U.keyof();if(Z==="get")return U.get(...X);if(Z==="props")return U.props;let q=Z==="required"?"require":Z==="partial"?"optionalize":Z;return this.$.node("intersection",{domain:"object",structure:U[q](...X)})})}get(...Z){if(Z[0]===void 0)return this;return this.$.schema(this.applyStructuralOperation("get",Z))}extract(Z){let X=this.$.parseDefinition(Z);return this.$.schema(this.branches.filter((Q)=>Q.extends(X)))}exclude(Z){let X=this.$.parseDefinition(Z);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(Z){return!(this.intersect(Z)instanceof j)}extends(Z){if(this.isNever())return!0;let X=this.intersect(Z);return!(X instanceof j)&&this.equals(X)}ifExtends(Z){return this.extends(Z)?this:void 0}subsumes(Z){return this.$.parseDefinition(Z).extends(this)}configure(Z,X="shallow"){return this.configureReferences(Z,X)}describe(Z,X="shallow"){return this.configure({description:Z},X)}optional(){return[this,"?"]}default(Z){return f6(this,Z,null),[this,"=",Z]}from(Z){return this.assert(Z)}_pipe(...Z){let X=Z.reduce((Q,U)=>Q.rawPipeOnce(U),this);return this.$.finalize(X)}tryPipe(...Z){let X=Z.reduce((Q,U)=>Q.rawPipeOnce(I(U,"root")?U:(q,J)=>{try{return U(q,J)}catch(Y){return J.error({code:"predicate",predicate:U,actual:`aborted due to error:
24
24
  ${Y}
25
- `})}}),this);return this.$.finalize(X)}pipe=Object.assign(this._pipe.bind(this),{try:this.tryPipe.bind(this)});to(Z){return this.$.finalize(this.toNode(this.$.parseDefinition(Z)))}toNode(Z){let X=j6(this,Z,this.$);if(X instanceof j)return X.throw();return X}rawPipeOnce(Z){if(I(Z,"root"))return this.toNode(Z);return this.distribute((X)=>X.hasKind("morph")?this.$.node("morph",{in:X.inner.in,morphs:[...X.morphs,Z]}):this.$.node("morph",{in:X,morphs:[Z]}),this.$.parseSchema)}narrow(Z){return this.constrainOut("predicate",Z)}constrain(Z,X){return this._constrain("root",Z,X)}constrainIn(Z,X){return this._constrain("in",Z,X)}constrainOut(Z,X){return this._constrain("out",Z,X)}_constrain(Z,X,Q){let U=this.$.node(X,Q);if(U.isRoot())return U.isUnknown()?this:l(`Unexpected constraint node ${U}`);let q=Z==="root"?this:Z==="in"?this.rawIn:this.rawOut;if(q.hasKind("morph")||U.impliedBasis&&!q.extends(U.impliedBasis))return UU(X,U.impliedBasis,this);let J=this.$.node("intersection",{[U.kind]:U}),Y=Z==="out"?j6(this,J,this.$):N0(this,J,this.$);if(Y instanceof j)Y.throw();return this.$.finalize(Y)}onUndeclaredKey(Z){let X=typeof Z==="string"?Z:Z.rule,Q=typeof Z==="string"?!1:Z.deep;return this.$.finalize(this.transform((U,q)=>U==="structure"?X==="ignore"?j4(q,{undeclared:1}):{...q,undeclared:X}:q,Q?void 0:{shouldTransform:(U)=>!y0(D2,U.kind)}))}hasEqualMorphs(Z){if(!this.includesTransform&&!Z.includesTransform)return!0;if(!V1(this.shallowMorphs,Z.shallowMorphs))return!1;if(!V1(this.flatMorphs,Z.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(Z){return this.onUndeclaredKey({rule:Z,deep:!0})}filter(Z){return this.constrainIn("predicate",Z)}divisibleBy(Z){return this.constrain("divisor",Z)}matching(Z){return this.constrain("pattern",Z)}atLeast(Z){return this.constrain("min",Z)}atMost(Z){return this.constrain("max",Z)}moreThan(Z){return this.constrain("min",f2(Z))}lessThan(Z){return this.constrain("max",f2(Z))}atLeastLength(Z){return this.constrain("minLength",Z)}atMostLength(Z){return this.constrain("maxLength",Z)}moreThanLength(Z){return this.constrain("minLength",f2(Z))}lessThanLength(Z){return this.constrain("maxLength",f2(Z))}exactlyLength(Z){return this.constrain("exactLength",Z)}atOrAfter(Z){return this.constrain("after",Z)}atOrBefore(Z){return this.constrain("before",Z)}laterThan(Z){return this.constrain("after",f2(Z))}earlierThan(Z){return this.constrain("before",f2(Z))}};jU=["draft-2020-12","draft-07"]});var Q1=(Z,X)=>k(v4(Z),(Q,U)=>[U,X]);var y2=R(()=>{b();s()});var W$=(Z)=>typeof Z==="string"?{reference:Z}:Z,CU=(Z)=>Z instanceof j?T.intrinsic.never.internal:Z,$$,NU,L$=(Z,X)=>`Alias '${Z}' has a shallow resolution cycle: ${[...X,Z].join("->")}`,k6;var L8=R(()=>{b();c4();q0();s();g0();c();Y0();E1();y2();$$=v({kind:"alias",hasAssociatedError:!1,collapsibleKey:"reference",keys:{reference:{serialize:(Z)=>Z.startsWith("$")?Z:`$ark.${Z}`},resolve:{}},normalize:W$,defaults:{description:(Z)=>Z.reference},intersections:{alias:(Z,X,Q)=>Q.$.lazilyResolve(()=>CU(Z0(Z.resolution,X.resolution,Q)),`${Z.reference}${Q.pipe?"=>":"&"}${X.reference}`),...Q1("alias",(Z,X,Q)=>{if(X.isUnknown())return Z;if(X.isNever())return X;if(X.isBasis()&&!X.overlaps(T.intrinsic.object))return j.init("assignability",T.intrinsic.object,X);return Q.$.lazilyResolve(()=>CU(Z0(Z.resolution,X,Q)),`${Z.reference}${Q.pipe?"=>":"&"}${X.id}`)})}});NU=class NU extends x0{expression=this.reference;structure=void 0;get resolution(){let Z=this._resolve();return T0[this.id]=Z}_resolve(){if(this.resolve)return this.resolve();if(this.reference[0]==="$")return this.$.resolveRoot(this.reference.slice(1));let Z=this.reference,X=T0[Z],Q=[];while(I(X,"context")){if(Q.includes(X.id))return M(L$(X.id,Q));Q.push(X.id),X=T0[X.id]}if(!I(X,"root"))return l(`Unexpected resolution for reference ${this.reference}
25
+ `})}}),this);return this.$.finalize(X)}pipe=Object.assign(this._pipe.bind(this),{try:this.tryPipe.bind(this)});to(Z){return this.$.finalize(this.toNode(this.$.parseDefinition(Z)))}toNode(Z){let X=j6(this,Z,this.$);if(X instanceof j)return X.throw();return X}rawPipeOnce(Z){if(I(Z,"root"))return this.toNode(Z);return this.distribute((X)=>X.hasKind("morph")?this.$.node("morph",{in:X.inner.in,morphs:[...X.morphs,Z]}):this.$.node("morph",{in:X,morphs:[Z]}),this.$.parseSchema)}narrow(Z){return this.constrainOut("predicate",Z)}constrain(Z,X){return this._constrain("root",Z,X)}constrainIn(Z,X){return this._constrain("in",Z,X)}constrainOut(Z,X){return this._constrain("out",Z,X)}_constrain(Z,X,Q){let U=this.$.node(X,Q);if(U.isRoot())return U.isUnknown()?this:l(`Unexpected constraint node ${U}`);let q=Z==="root"?this:Z==="in"?this.rawIn:this.rawOut;if(q.hasKind("morph")||U.impliedBasis&&!q.extends(U.impliedBasis))return UU(X,U.impliedBasis,this);let J=this.$.node("intersection",{[U.kind]:U}),Y=Z==="out"?j6(this,J,this.$):N0(this,J,this.$);if(Y instanceof j)Y.throw();return this.$.finalize(Y)}onUndeclaredKey(Z){let X=typeof Z==="string"?Z:Z.rule,Q=typeof Z==="string"?!1:Z.deep;return this.$.finalize(this.transform((U,q)=>U==="structure"?X==="ignore"?j4(q,{undeclared:1}):{...q,undeclared:X}:q,Q?void 0:{shouldTransform:(U)=>!y0(D2,U.kind)}))}hasEqualMorphs(Z){if(!this.includesTransform&&!Z.includesTransform)return!0;if(!V1(this.shallowMorphs,Z.shallowMorphs))return!1;if(!V1(this.flatMorphs,Z.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(Z){return this.onUndeclaredKey({rule:Z,deep:!0})}filter(Z){return this.constrainIn("predicate",Z)}divisibleBy(Z){return this.constrain("divisor",Z)}matching(Z){return this.constrain("pattern",Z)}atLeast(Z){return this.constrain("min",Z)}atMost(Z){return this.constrain("max",Z)}moreThan(Z){return this.constrain("min",f2(Z))}lessThan(Z){return this.constrain("max",f2(Z))}atLeastLength(Z){return this.constrain("minLength",Z)}atMostLength(Z){return this.constrain("maxLength",Z)}moreThanLength(Z){return this.constrain("minLength",f2(Z))}lessThanLength(Z){return this.constrain("maxLength",f2(Z))}exactlyLength(Z){return this.constrain("exactLength",Z)}atOrAfter(Z){return this.constrain("after",Z)}atOrBefore(Z){return this.constrain("before",Z)}laterThan(Z){return this.constrain("after",f2(Z))}earlierThan(Z){return this.constrain("before",f2(Z))}};jU=["draft-2020-12","draft-07"]});var Q1=(Z,X)=>k(v4(Z),(Q,U)=>[U,X]);var y2=O(()=>{b();s()});var W$=(Z)=>typeof Z==="string"?{reference:Z}:Z,CU=(Z)=>Z instanceof j?T.intrinsic.never.internal:Z,$$,NU,L$=(Z,X)=>`Alias '${Z}' has a shallow resolution cycle: ${[...X,Z].join("->")}`,k6;var L8=O(()=>{b();d4();q0();s();g0();d();Y0();E1();y2();$$=v({kind:"alias",hasAssociatedError:!1,collapsibleKey:"reference",keys:{reference:{serialize:(Z)=>Z.startsWith("$")?Z:`$ark.${Z}`},resolve:{}},normalize:W$,defaults:{description:(Z)=>Z.reference},intersections:{alias:(Z,X,Q)=>Q.$.lazilyResolve(()=>CU(Z0(Z.resolution,X.resolution,Q)),`${Z.reference}${Q.pipe?"=>":"&"}${X.reference}`),...Q1("alias",(Z,X,Q)=>{if(X.isUnknown())return Z;if(X.isNever())return X;if(X.isBasis()&&!X.overlaps(T.intrinsic.object))return j.init("assignability",T.intrinsic.object,X);return Q.$.lazilyResolve(()=>CU(Z0(Z.resolution,X,Q)),`${Z.reference}${Q.pipe?"=>":"&"}${X.id}`)})}});NU=class NU extends x0{expression=this.reference;structure=void 0;get resolution(){let Z=this._resolve();return T0[this.id]=Z}_resolve(){if(this.resolve)return this.resolve();if(this.reference[0]==="$")return this.$.resolveRoot(this.reference.slice(1));let Z=this.reference,X=T0[Z],Q=[];while(I(X,"context")){if(Q.includes(X.id))return M(L$(X.id,Q));Q.push(X.id),X=T0[X.id]}if(!I(X,"root"))return l(`Unexpected resolution for reference ${this.reference}
26
26
  Seen: [${Q.join("->")}]
27
- Resolution: ${g(X)}`);return X}get resolutionId(){if(this.reference.includes("&")||this.reference.includes("=>"))return this.resolution.id;if(this.reference[0]!=="$")return this.reference;let Z=this.reference.slice(1),X=this.$.resolutions[Z];if(typeof X==="string")return X;if(I(X,"root"))return X.id;return l(`Unexpected resolution for reference ${this.reference}: ${g(X)}`)}get defaultShortDescription(){return w0.object}innerToJsonSchema(Z){return this.resolution.toJsonSchemaRecurse(Z)}traverseAllows=(Z,X)=>{let Q=X.seen[this.reference];if(Q?.includes(Z))return!0;return X.seen[this.reference]=m(Q,Z),this.resolution.traverseAllows(Z,X)};traverseApply=(Z,X)=>{let Q=X.seen[this.reference];if(Q?.includes(Z))return;X.seen[this.reference]=m(Q,Z),this.resolution.traverseApply(Z,X)};compile(Z){let X=this.resolutionId;Z.if(`ctx.seen.${X} && ctx.seen.${X}.includes(data)`,()=>Z.return(!0)),Z.if(`!ctx.seen.${X}`,()=>Z.line(`ctx.seen.${X} = []`)),Z.line(`ctx.seen.${X}.push(data)`),Z.return(Z.invoke(X))}};k6={implementation:$$,Node:NU}});var Q2;var s4=R(()=>{s();E1();Q2=class Q2 extends x0{traverseApply=(Z,X)=>{if(!this.traverseAllows(Z,X))X.errorFromNodeContext(this.errorContext)};get errorContext(){return{code:this.kind,description:this.description,meta:this.meta,...this.inner}}get compiledErrorContext(){return S1(this.errorContext)}compile(Z){if(Z.traversalKind==="Allows")Z.return(this.compiledCondition);else Z.if(this.compiledNegation,()=>Z.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}}});var G$,EU,a4;var G8=R(()=>{b();q0();s();s4();G$=v({kind:"domain",hasAssociatedError:!0,collapsibleKey:"domain",keys:{domain:{},numberAllowsNaN:{}},normalize:(Z)=>typeof Z==="string"?{domain:Z}:O2(Z,"numberAllowsNaN")&&Z.domain!=="number"?M(a4.writeBadAllowNanMessage(Z.domain)):Z,applyConfig:(Z,X)=>Z.numberAllowsNaN===void 0&&Z.domain==="number"&&X.numberAllowsNaN?{...Z,numberAllowsNaN:!0}:Z,defaults:{description:(Z)=>w0[Z.domain],actual:(Z)=>Number.isNaN(Z)?"NaN":w0[G0(Z)]},intersections:{domain:(Z,X)=>Z.domain==="number"&&X.domain==="number"?Z.numberAllowsNaN?X:Z:j.init("domain",Z,X)}});EU=class EU extends Q2{requiresNaNCheck=this.domain==="number"&&!this.numberAllowsNaN;traverseAllows=this.requiresNaNCheck?(Z)=>typeof Z==="number"&&!Number.isNaN(Z):(Z)=>G0(Z)===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 w0[this.domain]}innerToJsonSchema(Z){if(this.domain==="bigint"||this.domain==="symbol")return Z.fallback.domain({code:"domain",base:{},domain:this.domain});return{type:this.domain}}};a4={implementation:G$,Node:EU,writeBadAllowNanMessage:(Z)=>`numberAllowsNaN may only be specified with domain "number" (was ${Z})`}});var V$,IU,V8,_$=(Z)=>{if(Z.structure?.expression)return Z.structure.expression;let X=Z.basis&&!Z.prestructurals.some((q)=>q.impl.obviatesBasisExpression)?Z.basis.nestableExpression:"",Q=Z.prestructurals.map((q)=>q.expression).join(" & "),U=`${X}${X?" ":""}${Q}`;if(U==="Array == 0")return"[]";return U||"unknown"},bU=(Z,X,Q)=>{let U={},q=Z.proto??Z.domain,J=X.proto??X.domain,Y=q?J?Z0(q,J,Q):q:J;if(Y instanceof j)return Y;if(Y)U[Y.kind]=Y;return C2({kind:"intersection",baseInner:U,l:N2(Z),r:N2(X),roots:[],ctx:Q})};var _8=R(()=>{b();I0();q0();s();g0();Y0();E1();y2();V$=v({kind:"intersection",hasAssociatedError:!0,normalize:(Z)=>{if(e(Z))return Z;let{structure:X,...Q}=Z,U=!!X,q=X??{},J=k(Q,(Y,W)=>{if(V0(Y,aQ)){if(U)M(`Flattened structure key ${Y} cannot be specified alongside a root 'structure' key.`);return q[Y]=W,[]}return[Y,W]});if(I(q,"constraint")||!Z1(q))J.structure=q;return J},finalizeInnerJson:({structure:Z,...X})=>P0(Z,"object")?{...Z,...X}:X,keys:{domain:{child:!0,parse:(Z,X)=>X.$.node("domain",Z)},proto:{child:!0,parse:(Z,X)=>X.$.node("proto",Z)},structure:{child:!0,parse:(Z,X)=>X.$.node("structure",Z),serialize:(Z)=>{if(!Z.sequence?.minLength)return Z.collapsibleJson;let{sequence:X,...Q}=Z.collapsibleJson,{minVariadicLength:U,...q}=X,J=q.variadic&&Object.keys(q).length===1?q.variadic:q;return{...Q,sequence:J}}},divisor:{child:!0,parse:R0("divisor")},max:{child:!0,parse:R0("max")},min:{child:!0,parse:R0("min")},maxLength:{child:!0,parse:R0("maxLength")},minLength:{child:!0,parse:R0("minLength")},exactLength:{child:!0,parse:R0("exactLength")},before:{child:!0,parse:R0("before")},after:{child:!0,parse:R0("after")},pattern:{child:!0,parse:R0("pattern")},predicate:{child:!0,parse:R0("predicate")}},reduce:(Z,X)=>bU({},Z,{$:X,invert:!1,pipe:!1}),defaults:{description:(Z)=>{if(Z.children.length===0)return"unknown";if(Z.structure)return Z.structure.description;let X=[];if(Z.basis&&!Z.prestructurals.some((Q)=>Q.impl.obviatesBasisDescription))X.push(Z.basis.description);if(Z.prestructurals.length){let Q=Z.prestructurals.slice().sort((U,q)=>U.kind==="min"&&q.kind==="max"?-1:0).map((U)=>U.description);X.push(...Q)}if(Z.inner.predicate)X.push(...Z.inner.predicate.map((Q)=>Q.description));return X.join(" and ")},expected:(Z)=>` ◦ ${Z.errors.map((X)=>X.expected).join(`
27
+ Resolution: ${g(X)}`);return X}get resolutionId(){if(this.reference.includes("&")||this.reference.includes("=>"))return this.resolution.id;if(this.reference[0]!=="$")return this.reference;let Z=this.reference.slice(1),X=this.$.resolutions[Z];if(typeof X==="string")return X;if(I(X,"root"))return X.id;return l(`Unexpected resolution for reference ${this.reference}: ${g(X)}`)}get defaultShortDescription(){return w0.object}innerToJsonSchema(Z){return this.resolution.toJsonSchemaRecurse(Z)}traverseAllows=(Z,X)=>{let Q=X.seen[this.reference];if(Q?.includes(Z))return!0;return X.seen[this.reference]=m(Q,Z),this.resolution.traverseAllows(Z,X)};traverseApply=(Z,X)=>{let Q=X.seen[this.reference];if(Q?.includes(Z))return;X.seen[this.reference]=m(Q,Z),this.resolution.traverseApply(Z,X)};compile(Z){let X=this.resolutionId;Z.if(`ctx.seen.${X} && ctx.seen.${X}.includes(data)`,()=>Z.return(!0)),Z.if(`!ctx.seen.${X}`,()=>Z.line(`ctx.seen.${X} = []`)),Z.line(`ctx.seen.${X}.push(data)`),Z.return(Z.invoke(X))}};k6={implementation:$$,Node:NU}});var Q2;var s4=O(()=>{s();E1();Q2=class Q2 extends x0{traverseApply=(Z,X)=>{if(!this.traverseAllows(Z,X))X.errorFromNodeContext(this.errorContext)};get errorContext(){return{code:this.kind,description:this.description,meta:this.meta,...this.inner}}get compiledErrorContext(){return S1(this.errorContext)}compile(Z){if(Z.traversalKind==="Allows")Z.return(this.compiledCondition);else Z.if(this.compiledNegation,()=>Z.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}}});var G$,EU,a4;var G8=O(()=>{b();q0();s();s4();G$=v({kind:"domain",hasAssociatedError:!0,collapsibleKey:"domain",keys:{domain:{},numberAllowsNaN:{}},normalize:(Z)=>typeof Z==="string"?{domain:Z}:R2(Z,"numberAllowsNaN")&&Z.domain!=="number"?M(a4.writeBadAllowNanMessage(Z.domain)):Z,applyConfig:(Z,X)=>Z.numberAllowsNaN===void 0&&Z.domain==="number"&&X.numberAllowsNaN?{...Z,numberAllowsNaN:!0}:Z,defaults:{description:(Z)=>w0[Z.domain],actual:(Z)=>Number.isNaN(Z)?"NaN":w0[G0(Z)]},intersections:{domain:(Z,X)=>Z.domain==="number"&&X.domain==="number"?Z.numberAllowsNaN?X:Z:j.init("domain",Z,X)}});EU=class EU extends Q2{requiresNaNCheck=this.domain==="number"&&!this.numberAllowsNaN;traverseAllows=this.requiresNaNCheck?(Z)=>typeof Z==="number"&&!Number.isNaN(Z):(Z)=>G0(Z)===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 w0[this.domain]}innerToJsonSchema(Z){if(this.domain==="bigint"||this.domain==="symbol")return Z.fallback.domain({code:"domain",base:{},domain:this.domain});return{type:this.domain}}};a4={implementation:G$,Node:EU,writeBadAllowNanMessage:(Z)=>`numberAllowsNaN may only be specified with domain "number" (was ${Z})`}});var V$,IU,V8,_$=(Z)=>{if(Z.structure?.expression)return Z.structure.expression;let X=Z.basis&&!Z.prestructurals.some((q)=>q.impl.obviatesBasisExpression)?Z.basis.nestableExpression:"",Q=Z.prestructurals.map((q)=>q.expression).join(" & "),U=`${X}${X?" ":""}${Q}`;if(U==="Array == 0")return"[]";return U||"unknown"},bU=(Z,X,Q)=>{let U={},q=Z.proto??Z.domain,J=X.proto??X.domain,Y=q?J?Z0(q,J,Q):q:J;if(Y instanceof j)return Y;if(Y)U[Y.kind]=Y;return C2({kind:"intersection",baseInner:U,l:N2(Z),r:N2(X),roots:[],ctx:Q})};var _8=O(()=>{b();I0();q0();s();g0();Y0();E1();y2();V$=v({kind:"intersection",hasAssociatedError:!0,normalize:(Z)=>{if(e(Z))return Z;let{structure:X,...Q}=Z,U=!!X,q=X??{},J=k(Q,(Y,W)=>{if(V0(Y,aQ)){if(U)M(`Flattened structure key ${Y} cannot be specified alongside a root 'structure' key.`);return q[Y]=W,[]}return[Y,W]});if(I(q,"constraint")||!Z1(q))J.structure=q;return J},finalizeInnerJson:({structure:Z,...X})=>P0(Z,"object")?{...Z,...X}:X,keys:{domain:{child:!0,parse:(Z,X)=>X.$.node("domain",Z)},proto:{child:!0,parse:(Z,X)=>X.$.node("proto",Z)},structure:{child:!0,parse:(Z,X)=>X.$.node("structure",Z),serialize:(Z)=>{if(!Z.sequence?.minLength)return Z.collapsibleJson;let{sequence:X,...Q}=Z.collapsibleJson,{minVariadicLength:U,...q}=X,J=q.variadic&&Object.keys(q).length===1?q.variadic:q;return{...Q,sequence:J}}},divisor:{child:!0,parse:O0("divisor")},max:{child:!0,parse:O0("max")},min:{child:!0,parse:O0("min")},maxLength:{child:!0,parse:O0("maxLength")},minLength:{child:!0,parse:O0("minLength")},exactLength:{child:!0,parse:O0("exactLength")},before:{child:!0,parse:O0("before")},after:{child:!0,parse:O0("after")},pattern:{child:!0,parse:O0("pattern")},predicate:{child:!0,parse:O0("predicate")}},reduce:(Z,X)=>bU({},Z,{$:X,invert:!1,pipe:!1}),defaults:{description:(Z)=>{if(Z.children.length===0)return"unknown";if(Z.structure)return Z.structure.description;let X=[];if(Z.basis&&!Z.prestructurals.some((Q)=>Q.impl.obviatesBasisDescription))X.push(Z.basis.description);if(Z.prestructurals.length){let Q=Z.prestructurals.slice().sort((U,q)=>U.kind==="min"&&q.kind==="max"?-1:0).map((U)=>U.description);X.push(...Q)}if(Z.inner.predicate)X.push(...Z.inner.predicate.map((Q)=>Q.description));return X.join(" and ")},expected:(Z)=>` ◦ ${Z.errors.map((X)=>X.expected).join(`
28
28
  ◦ `)}`,problem:(Z)=>`(${Z.actual}) must be...
29
29
  ${Z.expected}`},intersections:{intersection:(Z,X,Q)=>bU(Z.inner,X.inner,Q),...Q1("intersection",(Z,X,Q)=>{if(Z.children.length===0)return X;let{domain:U,proto:q,...J}=Z.inner,Y=q??U,W=Y?Z0(Y,X,Q):X;return W instanceof j?W:Z?.basis?.equals(W)?Z:Z.$.node("intersection",{...J,[W.kind]:W},{prereduced:!0})})}});IU=class IU extends x0{basis=this.inner.domain??this.inner.proto??null;prestructurals=[];refinements=this.children.filter((Z)=>{if(!Z.isRefinement())return!1;if(y0(CZ,Z.kind))this.prestructurals.push(Z);return!0});structure=this.inner.structure;expression=_$(this);get shallowMorphs(){return this.inner.structure?.structuralMorph?[this.inner.structure.structuralMorph]:[]}get defaultShortDescription(){return this.basis?.defaultShortDescription??"present"}innerToJsonSchema(Z){return this.children.reduce((X,Q)=>Q.isBasis()?Q.toJsonSchemaRecurse(Z):Q.reduceJsonSchema(X,Z),{})}traverseAllows=(Z,X)=>this.children.every((Q)=>Q.traverseAllows(Z,X));traverseApply=(Z,X)=>{let Q=X.currentErrorCount;if(this.basis){if(this.basis.traverseApply(Z,X),X.currentErrorCount>Q)return}if(this.prestructurals.length){for(let U=0;U<this.prestructurals.length-1;U++)if(this.prestructurals[U].traverseApply(Z,X),X.failFast&&X.currentErrorCount>Q)return;if(this.prestructurals[this.prestructurals.length-1].traverseApply(Z,X),X.currentErrorCount>Q)return}if(this.structure){if(this.structure.traverseApply(Z,X),X.currentErrorCount>Q)return}if(this.inner.predicate){for(let U=0;U<this.inner.predicate.length-1;U++)if(this.inner.predicate[U].traverseApply(Z,X),X.failFast&&X.currentErrorCount>Q)return;this.inner.predicate[this.inner.predicate.length-1].traverseApply(Z,X)}};compile(Z){if(Z.traversalKind==="Allows"){for(let X of this.children)Z.check(X);Z.return(!0);return}if(Z.initializeErrorCount(),this.basis){if(Z.check(this.basis),this.children.length>1)Z.returnIfFail()}if(this.prestructurals.length){for(let X=0;X<this.prestructurals.length-1;X++)Z.check(this.prestructurals[X]),Z.returnIfFailFast();if(Z.check(this.prestructurals[this.prestructurals.length-1]),this.structure||this.inner.predicate)Z.returnIfFail()}if(this.structure){if(Z.check(this.structure),this.inner.predicate)Z.returnIfFail()}if(this.inner.predicate){for(let X=0;X<this.inner.predicate.length-1;X++)Z.check(this.inner.predicate[X]),Z.returnIfFail();Z.check(this.inner.predicate[this.inner.predicate.length-1])}}};V8={implementation:V$,Node:IU}});var z$,fU,z8,H$=(Z,X)=>`The intersection of distinct morphs at a single path is indeterminate:
30
30
  Left: ${Z}
31
- Right: ${X}`;var H8=R(()=>{b();q0();s();g0();c();Y0();E1();y2();z$=v({kind:"morph",hasAssociatedError:!1,keys:{in:{child:!0,parse:(Z,X)=>X.$.parseSchema(Z)},morphs:{parse:K1,serialize:(Z)=>Z.map((X)=>I(X,"root")?X.json:U0(X))},declaredIn:{child:!1,serialize:(Z)=>Z.json},declaredOut:{child:!1,serialize:(Z)=>Z.json}},normalize:(Z)=>Z,defaults:{description:(Z)=>`a morph from ${Z.rawIn.description} to ${Z.rawOut?.description??"unknown"}`},intersections:{morph:(Z,X,Q)=>{if(!Z.hasEqualMorphs(X))return M(H$(Z.expression,X.expression));let U=Z0(Z.rawIn,X.rawIn,Q);if(U instanceof j)return U;let q={morphs:Z.morphs};if(Z.declaredIn||X.declaredIn){let J=Z0(Z.rawIn,X.rawIn,Q);if(J instanceof j)return J.throw();else q.declaredIn=J}if(Z.declaredOut||X.declaredOut){let J=Z0(Z.rawOut,X.rawOut,Q);if(J instanceof j)return J.throw();else q.declaredOut=J}return U.distribute((J)=>Q.$.node("morph",{...q,in:J}),Q.$.parseSchema)},...Q1("morph",(Z,X,Q)=>{let U=Z.inner.in?Z0(Z.inner.in,X,Q):X;return U instanceof j?U:U.equals(Z.inner.in)?Z:Q.$.node("morph",{...Z.inner,in:U})})}});fU=class fU extends x0{serializedMorphs=this.morphs.map(U0);compiledMorphs=`[${this.serializedMorphs}]`;lastMorph=this.inner.morphs[this.inner.morphs.length-1];lastMorphIfNode=I(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??T.intrinsic.unknown.internal}get rawOut(){return this.declaredOut??this.introspectableOut??T.intrinsic.unknown.internal}declareIn(Z){return this.$.node("morph",{...this.inner,declaredIn:Z})}declareOut(Z){return this.$.node("morph",{...this.inner,declaredOut:Z})}expression=`(In: ${this.rawIn.expression}) => ${this.lastMorphIfNode?"To":"Out"}<${this.rawOut.expression}>`;get defaultShortDescription(){return this.rawIn.meta.description??this.rawIn.defaultShortDescription}innerToJsonSchema(Z){return Z.fallback.morph({code:"morph",base:this.rawIn.toJsonSchemaRecurse(Z),out:this.introspectableOut?.toJsonSchemaRecurse(Z)??null})}compile(Z){if(Z.traversalKind==="Allows"){if(!this.introspectableIn)return;Z.return(Z.invoke(this.introspectableIn));return}if(this.introspectableIn)Z.line(Z.invoke(this.introspectableIn));Z.line(`ctx.queueMorphs(${this.compiledMorphs})`)}traverseAllows=(Z,X)=>!this.introspectableIn||this.introspectableIn.traverseAllows(Z,X);traverseApply=(Z,X)=>{if(this.introspectableIn)this.introspectableIn.traverseApply(Z,X);X.queueMorphs(this.morphs)};hasEqualMorphs(Z){return V1(this.morphs,Z.morphs,{isEqual:(X,Q)=>X===Q||I(X,"root")&&I(Q,"root")&&X.equals(Q)})}};z8={implementation:z$,Node:fU}});var F$,yU,g6;var F8=R(()=>{b();q0();s();c();Y0();s4();F$=v({kind:"proto",hasAssociatedError:!0,collapsibleKey:"proto",keys:{proto:{serialize:(Z)=>H6(Z)??k0(Z)},dateAllowsInvalid:{}},normalize:(Z)=>{let X=typeof Z==="string"?{proto:o1[Z]}:typeof Z==="function"?e(Z)?Z:{proto:Z}:typeof Z.proto==="string"?{...Z,proto:o1[Z.proto]}:Z;if(typeof X.proto!=="function")M(g6.writeInvalidSchemaMessage(X.proto));if(O2(X,"dateAllowsInvalid")&&X.proto!==Date)M(g6.writeBadInvalidDateMessage(X.proto));return X},applyConfig:(Z,X)=>{if(Z.dateAllowsInvalid===void 0&&Z.proto===Date&&X.dateAllowsInvalid)return{...Z,dateAllowsInvalid:!0};return Z},defaults:{description:(Z)=>Z.builtinName?VQ[Z.builtinName]:`an instance of ${Z.proto.name}`,actual:(Z)=>Z instanceof Date&&Z.toString()==="Invalid Date"?"an invalid Date":z6(Z)},intersections:{proto:(Z,X)=>Z.proto===Date&&X.proto===Date?Z.dateAllowsInvalid?X:Z:OZ(Z.proto,X.proto)?Z:OZ(X.proto,Z.proto)?X:j.init("proto",Z,X),domain:(Z,X)=>X.domain==="object"?Z:j.init("domain",T.intrinsic.object.internal,X)}});yU=class yU extends Q2{builtinName=H6(this.proto);serializedConstructor=this.json.proto;requiresInvalidDateCheck=this.proto===Date&&!this.dateAllowsInvalid;traverseAllows=this.requiresInvalidDateCheck?(Z)=>Z instanceof Date&&Z.toString()!=="Invalid Date":(Z)=>Z instanceof this.proto;compiledCondition=`data instanceof ${this.serializedConstructor}${this.requiresInvalidDateCheck?' && data.toString() !== "Invalid Date"':""}`;compiledNegation=`!(${this.compiledCondition})`;innerToJsonSchema(Z){switch(this.builtinName){case"Array":return{type:"array"};case"Date":return Z.fallback.date?.({code:"date",base:{}})??Z.fallback.proto({code:"proto",base:{},proto:this.proto});default:return Z.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}};g6={implementation:F$,Node:yU,writeBadInvalidDateMessage:(Z)=>`dateAllowsInvalid may only be specified with constructor Date (was ${Z.name})`,writeInvalidSchemaMessage:(Z)=>`instanceOf operand must be a function (was ${G0(Z)})`}});var B$,vU,M$=(Z,X)=>{let U=Z.sort((Y,W)=>Y.path.length===W.path.length?Object.keys(W.cases).length-Object.keys(Y.cases).length:Y.path.length-W.path.length)[0],q={kind:U.kind,path:U.path,optionallyChainedPropString:xU(U.path)},J=X.branches.map((Y,W)=>({originalIndex:W,branch:Y}));return{best:U,location:q,defaultEntries:J,node:X}},R$=(Z,X)=>{let Q=Z.best.cases[X],U=T$(Q.condition,Z.location.path,Z.node.$),q=[],J=[];for(let Y=0;Y<Z.defaultEntries.length;Y++){let W=Z.defaultEntries[Y];if(Q.branchIndices.includes(W.originalIndex)){let $=kU(Z.node.branches[W.originalIndex],Z.location);if($===null)q=null;else q?.push({originalIndex:W.originalIndex,branch:$})}else if(W.branch.hasKind("alias")&&U.hasKind("domain")&&U.domain==="object")q?.push(W);else{if(W.branch.rawIn.overlaps(U)){let $=kU(W.branch,Z.location);q?.push({originalIndex:W.originalIndex,branch:$})}J.push(W)}}return Z.defaultEntries=J,q},O$=(Z,X)=>{return Z.filter((U)=>{let q=Object.values(U.cases).map((J)=>J.branchIndices);for(let J=0;J<q.length-1;J++){let Y=q[J];for(let W=J+1;W<q.length;W++){let $=q[W];for(let L of Y)for(let V of $)if(L>V){if(X[L].overlaps(X[V]))return!1}}}return!0})},T$=(Z,X,Q)=>{let U=Z==="undefined"?Q.node("unit",{unit:void 0}):Z==="null"?Q.node("unit",{unit:null}):Z==="boolean"?Q.units([!0,!1]):Z;for(let q=X.length-1;q>=0;q--){let J=X[q];U=Q.node("intersection",typeof J==="number"?{proto:"Array",sequence:[...XQ(J).map((Y)=>({})),U]}:{domain:"object",required:[{key:J,value:U}]})}return U},xU=(Z)=>Z.reduce((X,Q)=>X+jZ(Q,!0),"data"),K$,D$,M8,P$=(Z)=>({kind:Z.kind,path:Z.path.map((X)=>typeof X==="string"?X:d0(X)),cases:k(Z.cases,(X,Q)=>[X,Q===!0?Q:Q.hasKind("union")&&Q.discriminantJson?Q.discriminantJson:Q.json])}),w$,A$=(Z)=>k2(Z,w$),k2=(Z,X)=>{let Q=X?.delimiter??", ",U=X?.finalDelimiter??" or ";if(Z.length===0)return"never";if(Z.length===1)return Z[0];if(Z.length===2&&Z[0]==="false"&&Z[1]==="true"||Z[0]==="true"&&Z[1]==="false")return"boolean";let q={},J=Z.filter((W)=>q[W]?!1:q[W]=!0),Y=J.pop();return`${J.join(Q)}${J.length?U:""}${Y}`},B8=(Z,X,Q)=>{let U=X.map(()=>[]);for(let J=0;J<Z.length;J++){let Y={};for(let W=0;W<X.length;W++){if(U[W]===null)continue;if(Z[J].equals(X[W])){U[W]=null,Y={};break}let $=Z0(Z[J],X[W],Q);if($ instanceof j)continue;if($.equals(Z[J])){U[W].push(Z[J]),Y={};break}if($.equals(X[W]))U[W]=null;else Y[W]=$}for(let W in Y)U[W][J]=Y[W]}let q=U.flatMap((J,Y)=>J?.flatMap((W)=>W.branches)??X[Y]);return q.length===0?j.init("union",Z,X):q},S$=({branches:Z,ordered:X})=>{if(Z.length<2)return Z;let Q=Z.map(()=>!0);for(let U=0;U<Z.length;U++)for(let q=U+1;q<Z.length&&Q[U]&&Q[q];q++){if(Z[U].equals(Z[q])){Q[q]=!1;continue}let J=N0(Z[U].rawIn,Z[q].rawIn,Z[0].$);if(J instanceof j)continue;if(!X)j$(Z[U],Z[q]);if(J.equals(Z[U].rawIn))Q[U]=!!X;else if(J.equals(Z[q].rawIn))Q[q]=!1}return Z.filter((U,q)=>Q[q])},j$=(Z,X)=>{if(!Z.includesTransform&&!X.includesTransform)return;if(!V1(Z.shallowMorphs,X.shallowMorphs))M(gU(Z.expression,X.expression));if(!V1(Z.flatMorphs,X.flatMorphs,{isEqual:(Q,U)=>Q.propString===U.propString&&(Q.node.hasKind("morph")&&U.node.hasKind("morph")?Q.node.hasEqualMorphs(U.node):Q.node.hasKind("intersection")&&U.node.hasKind("intersection")?Q.node.structure?.structuralMorphRef===U.node.structure?.structuralMorphRef:!1)}))M(gU(Z.expression,X.expression))},kU=(Z,X)=>Z.transform((Q,U)=>{if(Q==="domain"||Q==="unit")return null;return U},{shouldTransform:(Q,U)=>{let q=xU(U.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"}}),gU=(Z,X)=>`An unordered union of a type including a morph and a type with overlapping input is indeterminate:
31
+ Right: ${X}`;var H8=O(()=>{b();q0();s();g0();d();Y0();E1();y2();z$=v({kind:"morph",hasAssociatedError:!1,keys:{in:{child:!0,parse:(Z,X)=>X.$.parseSchema(Z)},morphs:{parse:K1,serialize:(Z)=>Z.map((X)=>I(X,"root")?X.json:U0(X))},declaredIn:{child:!1,serialize:(Z)=>Z.json},declaredOut:{child:!1,serialize:(Z)=>Z.json}},normalize:(Z)=>Z,defaults:{description:(Z)=>`a morph from ${Z.rawIn.description} to ${Z.rawOut?.description??"unknown"}`},intersections:{morph:(Z,X,Q)=>{if(!Z.hasEqualMorphs(X))return M(H$(Z.expression,X.expression));let U=Z0(Z.rawIn,X.rawIn,Q);if(U instanceof j)return U;let q={morphs:Z.morphs};if(Z.declaredIn||X.declaredIn){let J=Z0(Z.rawIn,X.rawIn,Q);if(J instanceof j)return J.throw();else q.declaredIn=J}if(Z.declaredOut||X.declaredOut){let J=Z0(Z.rawOut,X.rawOut,Q);if(J instanceof j)return J.throw();else q.declaredOut=J}return U.distribute((J)=>Q.$.node("morph",{...q,in:J}),Q.$.parseSchema)},...Q1("morph",(Z,X,Q)=>{let U=Z.inner.in?Z0(Z.inner.in,X,Q):X;return U instanceof j?U:U.equals(Z.inner.in)?Z:Q.$.node("morph",{...Z.inner,in:U})})}});fU=class fU extends x0{serializedMorphs=this.morphs.map(U0);compiledMorphs=`[${this.serializedMorphs}]`;lastMorph=this.inner.morphs[this.inner.morphs.length-1];lastMorphIfNode=I(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??T.intrinsic.unknown.internal}get rawOut(){return this.declaredOut??this.introspectableOut??T.intrinsic.unknown.internal}declareIn(Z){return this.$.node("morph",{...this.inner,declaredIn:Z})}declareOut(Z){return this.$.node("morph",{...this.inner,declaredOut:Z})}expression=`(In: ${this.rawIn.expression}) => ${this.lastMorphIfNode?"To":"Out"}<${this.rawOut.expression}>`;get defaultShortDescription(){return this.rawIn.meta.description??this.rawIn.defaultShortDescription}innerToJsonSchema(Z){return Z.fallback.morph({code:"morph",base:this.rawIn.toJsonSchemaRecurse(Z),out:this.introspectableOut?.toJsonSchemaRecurse(Z)??null})}compile(Z){if(Z.traversalKind==="Allows"){if(!this.introspectableIn)return;Z.return(Z.invoke(this.introspectableIn));return}if(this.introspectableIn)Z.line(Z.invoke(this.introspectableIn));Z.line(`ctx.queueMorphs(${this.compiledMorphs})`)}traverseAllows=(Z,X)=>!this.introspectableIn||this.introspectableIn.traverseAllows(Z,X);traverseApply=(Z,X)=>{if(this.introspectableIn)this.introspectableIn.traverseApply(Z,X);X.queueMorphs(this.morphs)};hasEqualMorphs(Z){return V1(this.morphs,Z.morphs,{isEqual:(X,Q)=>X===Q||I(X,"root")&&I(Q,"root")&&X.equals(Q)})}};z8={implementation:z$,Node:fU}});var F$,yU,g6;var F8=O(()=>{b();q0();s();d();Y0();s4();F$=v({kind:"proto",hasAssociatedError:!0,collapsibleKey:"proto",keys:{proto:{serialize:(Z)=>H6(Z)??k0(Z)},dateAllowsInvalid:{}},normalize:(Z)=>{let X=typeof Z==="string"?{proto:o1[Z]}:typeof Z==="function"?e(Z)?Z:{proto:Z}:typeof Z.proto==="string"?{...Z,proto:o1[Z.proto]}:Z;if(typeof X.proto!=="function")M(g6.writeInvalidSchemaMessage(X.proto));if(R2(X,"dateAllowsInvalid")&&X.proto!==Date)M(g6.writeBadInvalidDateMessage(X.proto));return X},applyConfig:(Z,X)=>{if(Z.dateAllowsInvalid===void 0&&Z.proto===Date&&X.dateAllowsInvalid)return{...Z,dateAllowsInvalid:!0};return Z},defaults:{description:(Z)=>Z.builtinName?VQ[Z.builtinName]:`an instance of ${Z.proto.name}`,actual:(Z)=>Z instanceof Date&&Z.toString()==="Invalid Date"?"an invalid Date":z6(Z)},intersections:{proto:(Z,X)=>Z.proto===Date&&X.proto===Date?Z.dateAllowsInvalid?X:Z:RZ(Z.proto,X.proto)?Z:RZ(X.proto,Z.proto)?X:j.init("proto",Z,X),domain:(Z,X)=>X.domain==="object"?Z:j.init("domain",T.intrinsic.object.internal,X)}});yU=class yU extends Q2{builtinName=H6(this.proto);serializedConstructor=this.json.proto;requiresInvalidDateCheck=this.proto===Date&&!this.dateAllowsInvalid;traverseAllows=this.requiresInvalidDateCheck?(Z)=>Z instanceof Date&&Z.toString()!=="Invalid Date":(Z)=>Z instanceof this.proto;compiledCondition=`data instanceof ${this.serializedConstructor}${this.requiresInvalidDateCheck?' && data.toString() !== "Invalid Date"':""}`;compiledNegation=`!(${this.compiledCondition})`;innerToJsonSchema(Z){switch(this.builtinName){case"Array":return{type:"array"};case"Date":return Z.fallback.date?.({code:"date",base:{}})??Z.fallback.proto({code:"proto",base:{},proto:this.proto});default:return Z.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}};g6={implementation:F$,Node:yU,writeBadInvalidDateMessage:(Z)=>`dateAllowsInvalid may only be specified with constructor Date (was ${Z.name})`,writeInvalidSchemaMessage:(Z)=>`instanceOf operand must be a function (was ${G0(Z)})`}});var B$,vU,M$=(Z,X)=>{let U=Z.sort((Y,W)=>Y.path.length===W.path.length?Object.keys(W.cases).length-Object.keys(Y.cases).length:Y.path.length-W.path.length)[0],q={kind:U.kind,path:U.path,optionallyChainedPropString:xU(U.path)},J=X.branches.map((Y,W)=>({originalIndex:W,branch:Y}));return{best:U,location:q,defaultEntries:J,node:X}},O$=(Z,X)=>{let Q=Z.best.cases[X],U=T$(Q.condition,Z.location.path,Z.node.$),q=[],J=[];for(let Y=0;Y<Z.defaultEntries.length;Y++){let W=Z.defaultEntries[Y];if(Q.branchIndices.includes(W.originalIndex)){let $=kU(Z.node.branches[W.originalIndex],Z.location);if($===null)q=null;else q?.push({originalIndex:W.originalIndex,branch:$})}else if(W.branch.hasKind("alias")&&U.hasKind("domain")&&U.domain==="object")q?.push(W);else{if(W.branch.rawIn.overlaps(U)){let $=kU(W.branch,Z.location);q?.push({originalIndex:W.originalIndex,branch:$})}J.push(W)}}return Z.defaultEntries=J,q},R$=(Z,X)=>{return Z.filter((U)=>{let q=Object.values(U.cases).map((J)=>J.branchIndices);for(let J=0;J<q.length-1;J++){let Y=q[J];for(let W=J+1;W<q.length;W++){let $=q[W];for(let L of Y)for(let V of $)if(L>V){if(X[L].overlaps(X[V]))return!1}}}return!0})},T$=(Z,X,Q)=>{let U=Z==="undefined"?Q.node("unit",{unit:void 0}):Z==="null"?Q.node("unit",{unit:null}):Z==="boolean"?Q.units([!0,!1]):Z;for(let q=X.length-1;q>=0;q--){let J=X[q];U=Q.node("intersection",typeof J==="number"?{proto:"Array",sequence:[...XQ(J).map((Y)=>({})),U]}:{domain:"object",required:[{key:J,value:U}]})}return U},xU=(Z)=>Z.reduce((X,Q)=>X+jZ(Q,!0),"data"),K$,D$,M8,P$=(Z)=>({kind:Z.kind,path:Z.path.map((X)=>typeof X==="string"?X:c0(X)),cases:k(Z.cases,(X,Q)=>[X,Q===!0?Q:Q.hasKind("union")&&Q.discriminantJson?Q.discriminantJson:Q.json])}),w$,A$=(Z)=>k2(Z,w$),k2=(Z,X)=>{let Q=X?.delimiter??", ",U=X?.finalDelimiter??" or ";if(Z.length===0)return"never";if(Z.length===1)return Z[0];if(Z.length===2&&Z[0]==="false"&&Z[1]==="true"||Z[0]==="true"&&Z[1]==="false")return"boolean";let q={},J=Z.filter((W)=>q[W]?!1:q[W]=!0),Y=J.pop();return`${J.join(Q)}${J.length?U:""}${Y}`},B8=(Z,X,Q)=>{let U=X.map(()=>[]);for(let J=0;J<Z.length;J++){let Y={};for(let W=0;W<X.length;W++){if(U[W]===null)continue;if(Z[J].equals(X[W])){U[W]=null,Y={};break}let $=Z0(Z[J],X[W],Q);if($ instanceof j)continue;if($.equals(Z[J])){U[W].push(Z[J]),Y={};break}if($.equals(X[W]))U[W]=null;else Y[W]=$}for(let W in Y)U[W][J]=Y[W]}let q=U.flatMap((J,Y)=>J?.flatMap((W)=>W.branches)??X[Y]);return q.length===0?j.init("union",Z,X):q},S$=({branches:Z,ordered:X})=>{if(Z.length<2)return Z;let Q=Z.map(()=>!0);for(let U=0;U<Z.length;U++)for(let q=U+1;q<Z.length&&Q[U]&&Q[q];q++){if(Z[U].equals(Z[q])){Q[q]=!1;continue}let J=N0(Z[U].rawIn,Z[q].rawIn,Z[0].$);if(J instanceof j)continue;if(!X)j$(Z[U],Z[q]);if(J.equals(Z[U].rawIn))Q[U]=!!X;else if(J.equals(Z[q].rawIn))Q[q]=!1}return Z.filter((U,q)=>Q[q])},j$=(Z,X)=>{if(!Z.includesTransform&&!X.includesTransform)return;if(!V1(Z.shallowMorphs,X.shallowMorphs))M(gU(Z.expression,X.expression));if(!V1(Z.flatMorphs,X.flatMorphs,{isEqual:(Q,U)=>Q.propString===U.propString&&(Q.node.hasKind("morph")&&U.node.hasKind("morph")?Q.node.hasEqualMorphs(U.node):Q.node.hasKind("intersection")&&U.node.hasKind("intersection")?Q.node.structure?.structuralMorphRef===U.node.structure?.structuralMorphRef:!1)}))M(gU(Z.expression,X.expression))},kU=(Z,X)=>Z.transform((Q,U)=>{if(Q==="domain"||Q==="unit")return null;return U},{shouldTransform:(Q,U)=>{let q=xU(U.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"}}),gU=(Z,X)=>`An unordered union of a type including a morph and a type with overlapping input is indeterminate:
32
32
  Left: ${Z}
33
33
  Right: ${X}`,C$=(Z,X)=>`The intersection of two ordered unions is indeterminate:
34
34
  Left: ${Z}
35
- Right: ${X}`;var R8=R(()=>{b();A1();q0();s();g0();c();X1();Y0();E1();y2();B$=v({kind:"union",hasAssociatedError:!0,collapsibleKey:"branches",keys:{ordered:{},branches:{child:!0,parse:(Z,X)=>{let Q=[];for(let U of Z){let q=I(U,"root")?U.branches:X.$.parseSchema(U).branches;for(let J of q)if(J.hasKind("morph")){let Y=Q.findIndex((W)=>W.hasKind("morph")&&W.hasEqualMorphs(J));if(Y===-1)Q.push(J);else{let W=Q[Y];Q[Y]=X.$.node("morph",{...W.inner,in:W.rawIn.rawOr(J.rawIn)})}}else Q.push(J)}if(!X.def.ordered)Q.sort((U,q)=>U.hash<q.hash?-1:1);return Q}}},normalize:(Z)=>n(Z)?{branches:Z}:Z,reduce:(Z,X)=>{let Q=S$(Z);if(Q.length===1)return Q[0];if(Q.length===Z.branches.length)return;return X.node("union",{...Z,branches:Q},{prereduced:!0})},defaults:{description:(Z)=>Z.distribute((X)=>X.description,k2),expected:(Z)=>{let X=UQ(Z.errors,"propString"),Q=Object.entries(X).map(([U,q])=>{let J=[];for(let $ of q)t0(J,$.expected);let Y=k2(J),W=q.every(($)=>$.actual===q[0].actual)?q[0].actual:g(q[0].data);return`${U&&`${U} `}must be ${Y}${W&&` (was ${W})`}`});return k2(Q)},problem:(Z)=>Z.expected,message:(Z)=>{if(Z.problem[0]==="[")return`value at ${Z.problem}`;return Z.problem}},intersections:{union:(Z,X,Q)=>{if(Z.isNever!==X.isNever)return j.init("presence",Z,X);let U;if(Z.ordered){if(X.ordered)M(C$(Z.expression,X.expression));if(U=B8(X.branches,Z.branches,Q),U instanceof j)U.invert()}else U=B8(Z.branches,X.branches,Q);if(U instanceof j)return U;return Q.$.parseSchema(Z.ordered||X.ordered?{branches:U,ordered:!0}:{branches:U})},...Q1("union",(Z,X,Q)=>{let U=B8(Z.branches,[X],Q);if(U instanceof j)return U;if(U.length===1)return U[0];return Q.$.parseSchema(Z.ordered?{branches:U,ordered:!0}:{branches:U})})}});vU=class vU extends x0{isBoolean=this.branches.length===2&&this.branches[0].hasUnit(!1)&&this.branches[1].hasUnit(!0);get branchGroups(){let Z=[],X=-1;for(let Q of this.branches){if(Q.hasKind("unit")&&Q.domain==="boolean"){if(X===-1)X=Z.length,Z.push(Q);else Z[X]=T.intrinsic.boolean;continue}Z.push(Q)}return Z}unitBranches=this.branches.filter((Z)=>Z.rawIn.hasKind("unit"));discriminant=this.discriminate();discriminantJson=this.discriminant?P$(this.discriminant):null;expression=this.distribute((Z)=>Z.nestableExpression,A$);createBranchedOptimisticRootApply(){return(Z,X)=>{let Q=this.traverseOptimistic(Z);if(Q!==A0)return Q;let U=new i0(Z,this.$.resolvedConfig);return this.traverseApply(Z,U),U.finalize(X)}}get shallowMorphs(){return this.branches.reduce((Z,X)=>t0(Z,X.shallowMorphs),[])}get defaultShortDescription(){return this.distribute((Z)=>Z.defaultShortDescription,k2)}innerToJsonSchema(Z){if(this.branchGroups.length===1&&this.branchGroups[0].equals(T.intrinsic.boolean))return{type:"boolean"};let X=this.branchGroups.map((Q)=>Q.toJsonSchemaRecurse(Z));if(X.every((Q)=>Object.keys(Q).length===1&&O2(Q,"const")))return{enum:X.map((Q)=>Q.const)};return{anyOf:X}}traverseAllows=(Z,X)=>this.branches.some((Q)=>Q.traverseAllows(Z,X));traverseApply=(Z,X)=>{let Q=[];for(let U=0;U<this.branches.length;U++){if(X.pushBranch(),this.branches[U].traverseApply(Z,X),!X.hasError()){if(this.branches[U].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=(Z)=>{for(let X=0;X<this.branches.length;X++){let Q=this.branches[X];if(Q.traverseAllows(Z)){if(Q.contextFreeMorph)return Q.contextFreeMorph(Z);return Z}}return A0};compile(Z){if(!this.discriminant||this.unitBranches.length===this.branches.length&&this.branches.length===2)return this.compileIndiscriminable(Z);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,U=Object.keys(Q),{optimistic:q}=Z;if(Z.optimistic=!1,Z.block(`switch(${X})`,()=>{for(let L in Q){let V=Q[L],G=L==="default"?L:`case ${L}`,_;if(V===!0)_=q?"data":"true";else if(q)if(V.rootApplyStrategy==="branchedOptimistic")_=Z.invoke(V,{kind:"Optimistic"});else if(V.contextFreeMorph)_=`${Z.invoke(V)} ? ${U0(V.contextFreeMorph)}(data) : "${A0}"`;else _=`${Z.invoke(V)} ? data : "${A0}"`;else _=Z.invoke(V);Z.line(`${G}: return ${_}`)}return Z}),Z.traversalKind==="Allows"){Z.return(q?`"${A0}"`:!1);return}let J=k2(this.discriminant.kind==="domain"?U.map((L)=>{let V=L.slice(1,-1);return V==="function"?w0.object:w0[V]}):U),Y=this.discriminant.path.map((L)=>typeof L==="symbol"?U0(L):JSON.stringify(L)),W=JSON.stringify(J),$=this.discriminant.kind==="domain"?`${K$}[${X}]`:`${D$}(${X})`;Z.line(`ctx.errorFromNodeContext({
35
+ Right: ${X}`;var O8=O(()=>{b();A1();q0();s();g0();d();X1();Y0();E1();y2();B$=v({kind:"union",hasAssociatedError:!0,collapsibleKey:"branches",keys:{ordered:{},branches:{child:!0,parse:(Z,X)=>{let Q=[];for(let U of Z){let q=I(U,"root")?U.branches:X.$.parseSchema(U).branches;for(let J of q)if(J.hasKind("morph")){let Y=Q.findIndex((W)=>W.hasKind("morph")&&W.hasEqualMorphs(J));if(Y===-1)Q.push(J);else{let W=Q[Y];Q[Y]=X.$.node("morph",{...W.inner,in:W.rawIn.rawOr(J.rawIn)})}}else Q.push(J)}if(!X.def.ordered)Q.sort((U,q)=>U.hash<q.hash?-1:1);return Q}}},normalize:(Z)=>n(Z)?{branches:Z}:Z,reduce:(Z,X)=>{let Q=S$(Z);if(Q.length===1)return Q[0];if(Q.length===Z.branches.length)return;return X.node("union",{...Z,branches:Q},{prereduced:!0})},defaults:{description:(Z)=>Z.distribute((X)=>X.description,k2),expected:(Z)=>{let X=UQ(Z.errors,"propString"),Q=Object.entries(X).map(([U,q])=>{let J=[];for(let $ of q)t0(J,$.expected);let Y=k2(J),W=q.every(($)=>$.actual===q[0].actual)?q[0].actual:g(q[0].data);return`${U&&`${U} `}must be ${Y}${W&&` (was ${W})`}`});return k2(Q)},problem:(Z)=>Z.expected,message:(Z)=>{if(Z.problem[0]==="[")return`value at ${Z.problem}`;return Z.problem}},intersections:{union:(Z,X,Q)=>{if(Z.isNever!==X.isNever)return j.init("presence",Z,X);let U;if(Z.ordered){if(X.ordered)M(C$(Z.expression,X.expression));if(U=B8(X.branches,Z.branches,Q),U instanceof j)U.invert()}else U=B8(Z.branches,X.branches,Q);if(U instanceof j)return U;return Q.$.parseSchema(Z.ordered||X.ordered?{branches:U,ordered:!0}:{branches:U})},...Q1("union",(Z,X,Q)=>{let U=B8(Z.branches,[X],Q);if(U instanceof j)return U;if(U.length===1)return U[0];return Q.$.parseSchema(Z.ordered?{branches:U,ordered:!0}:{branches:U})})}});vU=class vU extends x0{isBoolean=this.branches.length===2&&this.branches[0].hasUnit(!1)&&this.branches[1].hasUnit(!0);get branchGroups(){let Z=[],X=-1;for(let Q of this.branches){if(Q.hasKind("unit")&&Q.domain==="boolean"){if(X===-1)X=Z.length,Z.push(Q);else Z[X]=T.intrinsic.boolean;continue}Z.push(Q)}return Z}unitBranches=this.branches.filter((Z)=>Z.rawIn.hasKind("unit"));discriminant=this.discriminate();discriminantJson=this.discriminant?P$(this.discriminant):null;expression=this.distribute((Z)=>Z.nestableExpression,A$);createBranchedOptimisticRootApply(){return(Z,X)=>{let Q=this.traverseOptimistic(Z);if(Q!==A0)return Q;let U=new i0(Z,this.$.resolvedConfig);return this.traverseApply(Z,U),U.finalize(X)}}get shallowMorphs(){return this.branches.reduce((Z,X)=>t0(Z,X.shallowMorphs),[])}get defaultShortDescription(){return this.distribute((Z)=>Z.defaultShortDescription,k2)}innerToJsonSchema(Z){if(this.branchGroups.length===1&&this.branchGroups[0].equals(T.intrinsic.boolean))return{type:"boolean"};let X=this.branchGroups.map((Q)=>Q.toJsonSchemaRecurse(Z));if(X.every((Q)=>Object.keys(Q).length===1&&R2(Q,"const")))return{enum:X.map((Q)=>Q.const)};return{anyOf:X}}traverseAllows=(Z,X)=>this.branches.some((Q)=>Q.traverseAllows(Z,X));traverseApply=(Z,X)=>{let Q=[];for(let U=0;U<this.branches.length;U++){if(X.pushBranch(),this.branches[U].traverseApply(Z,X),!X.hasError()){if(this.branches[U].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=(Z)=>{for(let X=0;X<this.branches.length;X++){let Q=this.branches[X];if(Q.traverseAllows(Z)){if(Q.contextFreeMorph)return Q.contextFreeMorph(Z);return Z}}return A0};compile(Z){if(!this.discriminant||this.unitBranches.length===this.branches.length&&this.branches.length===2)return this.compileIndiscriminable(Z);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,U=Object.keys(Q),{optimistic:q}=Z;if(Z.optimistic=!1,Z.block(`switch(${X})`,()=>{for(let L in Q){let V=Q[L],G=L==="default"?L:`case ${L}`,_;if(V===!0)_=q?"data":"true";else if(q)if(V.rootApplyStrategy==="branchedOptimistic")_=Z.invoke(V,{kind:"Optimistic"});else if(V.contextFreeMorph)_=`${Z.invoke(V)} ? ${U0(V.contextFreeMorph)}(data) : "${A0}"`;else _=`${Z.invoke(V)} ? data : "${A0}"`;else _=Z.invoke(V);Z.line(`${G}: return ${_}`)}return Z}),Z.traversalKind==="Allows"){Z.return(q?`"${A0}"`:!1);return}let J=k2(this.discriminant.kind==="domain"?U.map((L)=>{let V=L.slice(1,-1);return V==="function"?w0.object:w0[V]}):U),Y=this.discriminant.path.map((L)=>typeof L==="symbol"?U0(L):JSON.stringify(L)),W=JSON.stringify(J),$=this.discriminant.kind==="domain"?`${K$}[${X}]`:`${D$}(${X})`;Z.line(`ctx.errorFromNodeContext({
36
36
  code: "predicate",
37
37
  expected: ${W},
38
38
  actual: ${$},
39
39
  relativePath: [${Y}],
40
40
  meta: ${this.compiledMeta}
41
- })`)}compileIndiscriminable(Z){if(Z.traversalKind==="Apply"){Z.const("errors","[]");for(let X of this.branches)Z.line("ctx.pushBranch()").line(Z.invoke(X)).if("!ctx.hasError()",()=>Z.return(X.includesTransform?"ctx.queuedMorphs.push(...ctx.popBranch().queuedMorphs)":"ctx.popBranch()")).line("errors.push(ctx.popBranch().error)");Z.line(`ctx.errorFromNodeContext({ code: "union", errors, meta: ${this.compiledMeta} })`)}else{let{optimistic:X}=Z;Z.optimistic=!1;for(let Q of this.branches)Z.if(`${Z.invoke(Q)}`,()=>Z.return(X?Q.contextFreeMorph?`${U0(Q.contextFreeMorph)}(data)`:"data":!0));Z.return(X?`"${A0}"`:!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=k(this.unitBranches,(J,Y)=>[`${Y.rawIn.serializedValue}`,Y.hasKind("morph")?Y:!0]);return{kind:"unit",path:[],optionallyChainedPropString:"data",cases:q}}let Z=[];for(let q=0;q<this.branches.length-1;q++){let J=this.branches[q];for(let Y=q+1;Y<this.branches.length;Y++){let W=this.branches[Y],$=N0(J.rawIn,W.rawIn,J.$);if(!($ instanceof j))continue;for(let L of $){if(!L.kind||L.optional)continue;let V,G;if(L.kind==="domain"){let{l:H,r:F}=L;V=`"${typeof H==="string"?H:H.domain}"`,G=`"${typeof F==="string"?F:F.domain}"`}else if(L.kind==="unit")V=L.l.serializedValue,G=L.r.serializedValue;else continue;let _=Z.find((H)=>V1(H.path,L.path)&&H.kind===L.kind);if(!_)Z.push({kind:L.kind,cases:{[V]:{branchIndices:[q],condition:L.l},[G]:{branchIndices:[Y],condition:L.r}},path:L.path});else{if(_.cases[V])_.cases[V].branchIndices=t0(_.cases[V].branchIndices,q);else _.cases[V]??={branchIndices:[q],condition:L.l};if(_.cases[G])_.cases[G].branchIndices=t0(_.cases[G].branchIndices,Y);else _.cases[G]??={branchIndices:[Y],condition:L.r}}}}}let X=this.ordered?O$(Z,this.branches):Z;if(!X.length)return null;let Q=M$(X,this),U={};for(let q in Q.best.cases){let J=R$(Q,q);if(J===null){U[q]=!0;continue}if(J.length===this.branches.length)return null;if(this.ordered)J.sort(($,L)=>$.originalIndex-L.originalIndex);let Y=J.map(($)=>$.branch),W=Y.length===1?Y[0]:this.$.node("union",this.ordered?{branches:Y,ordered:!0}:Y);Object.assign(this.referencesById,W.referencesById),U[q]=W}if(Q.defaultEntries.length){let q=Q.defaultEntries.map((J)=>J.branch);U.default=this.$.node("union",this.ordered?{branches:q,ordered:!0}:q,{prereduced:!0}),Object.assign(this.referencesById,U.default.referencesById)}return Object.assign(Q.location,{cases:U})}};K$=U0(qQ),D$=U0(g),M8={implementation:B$,Node:vU},w$={delimiter:" | ",finalDelimiter:" | "}});var N$,mU,O8,hU=(Z,X,Q)=>{if(Z instanceof Date){let U=`data instanceof Date && data.toISOString() === ${X}`;return Q?`!(${U})`:U}if(Number.isNaN(Z))return`${Q?"!":""}Number.isNaN(data)`;return`data ${Q?"!":"="}== ${X}`};var T8=R(()=>{b();q0();s();c();s4();y2();N$=v({kind:"unit",hasAssociatedError:!0,keys:{unit:{preserveUndefined:!0,serialize:(Z)=>Z instanceof Date?Z.toISOString():k0(Z)}},normalize:(Z)=>Z,defaults:{description:(Z)=>g(Z.unit),problem:({expected:Z,actual:X})=>`${Z===X?`must be reference equal to ${Z} (serialized to the same value)`:`must be ${Z} (was ${X})`}`},intersections:{unit:(Z,X)=>j.init("unit",Z,X),...Q1("unit",(Z,X)=>{if(X.allows(Z.unit))return Z;let Q=X.hasKind("intersection")?X.basis:X;if(Q){let U=Q.hasKind("domain")?Q:T.intrinsic.object;if(Z.domain!==U.domain){let q=Z.domain==="undefined"||Z.domain==="null"||Z.domain==="boolean"?Z.domain:T.intrinsic[Z.domain];return j.init("domain",q,U)}}return j.init("assignability",Z,X.hasKind("intersection")?X.children.find((U)=>!U.allows(Z.unit)):X)})}});mU=class mU extends Q2{compiledValue=this.json.unit;serializedValue=typeof this.unit==="string"||this.unit instanceof Date?JSON.stringify(this.compiledValue):`${this.compiledValue}`;compiledCondition=hU(this.unit,this.serializedValue);compiledNegation=hU(this.unit,this.serializedValue,"negated");expression=g(this.unit);domain=G0(this.unit);get defaultShortDescription(){return this.domain==="object"?w0.object:this.description}innerToJsonSchema(Z){return this.unit===null?{type:"null"}:T.intrinsic.jsonPrimitive.allows(this.unit)?{const:this.unit}:Z.fallback.unit({code:"unit",base:{},unit:this.unit})}traverseAllows=this.unit instanceof Date?(Z)=>Z instanceof Date&&Z.toISOString()===this.compiledValue:Number.isNaN(this.unit)?(Z)=>Number.isNaN(Z):(Z)=>Z===this.unit};O8={implementation:N$,Node:mU}});var E$,uU,K8,b$=(Z)=>`Index keys ${Z.join(", ")} should be specified as named props.`,I$=(Z)=>`Indexed key definition '${Z}' must be a string or symbol`;var D8=R(()=>{b();I0();X2();q0();s();g0();c();X1();E$=v({kind:"index",hasAssociatedError:!1,intersectionIsOpen:!0,keys:{signature:{child:!0,parse:(Z,X)=>{let Q=X.$.parseSchema(Z);if(!Q.extends(T.intrinsic.key))return M(I$(Q.expression));let U=Q.branches.filter((q)=>q.hasKind("unit"));if(U.length)return M(b$(U.map((q)=>g(q.unit))));return Q}},value:{child:!0,parse:(Z,X)=>X.$.parseSchema(Z)}},normalize:(Z)=>Z,defaults:{description:(Z)=>`[${Z.signature.expression}]: ${Z.value.description}`},intersections:{index:(Z,X,Q)=>{if(Z.signature.equals(X.signature)){let U=Z0(Z.value,X.value,Q),q=U instanceof j?T.intrinsic.never.internal:U;return Q.$.node("index",{signature:Z.signature,value:q})}if(Z.signature.extends(X.signature)&&Z.value.subsumes(X.value))return X;if(X.signature.extends(Z.signature)&&X.value.subsumes(Z.value))return Z;return null}}});uU=class uU extends v0{impliedBasis=T.intrinsic.object.internal;expression=`[${this.signature.expression}]: ${this.value.expression}`;flatRefs=m(this.value.flatRefs.map((Z)=>s0([this.signature,...Z.path],Z.node)),s0([this.signature],this.value));traverseAllows=(Z,X)=>r1(Z).every((Q)=>{if(this.signature.traverseAllows(Q[0],X))return C0(Q[0],()=>this.value.traverseAllows(Q[1],X),X);return!0});traverseApply=(Z,X)=>{for(let Q of r1(Z))if(this.signature.traverseAllows(Q[0],X))C0(Q[0],()=>this.value.traverseApply(Q[1],X),X)};_transform(Z,X){X.path.push(this.signature);let Q=super._transform(Z,X);return X.path.pop(),Q}compile(){}};K8={implementation:E$,Node:uU}});var f$,pU,P8;var w8=R(()=>{s();b6();f$=v({kind:"required",hasAssociatedError:!0,intersectionIsOpen:!0,keys:{key:{},value:{child:!0,parse:(Z,X)=>X.$.parseSchema(Z)}},normalize:(Z)=>Z,defaults:{description:(Z)=>`${Z.compiledKey}: ${Z.value.description}`,expected:(Z)=>Z.missingValueDescription,actual:()=>"missing"},intersections:{required:N6,optional:N6}});pU=class pU extends E6{expression=`${this.compiledKey}: ${this.value.expression}`;errorContext=Object.freeze({code:"required",missingValueDescription:this.value.defaultShortDescription,relativePath:[this.key],meta:this.meta});compiledErrorContext=S1(this.errorContext)};P8={implementation:f$,Node:pU}});var y$,dU,k$,g$=(Z)=>{if(!Z.defaultables)return[];let X=[],Q="[",U=Z.prefixLength+Z.defaultablesLength-1;for(let q=Z.prefixLength;q<=U;q++){let[J,Y]=Z.defaultables[q-Z.prefixLength];X.push($8(q,J,Y)),Q+=`${q}: ${J.id} = ${k0(Y)}, `}return Q+="]",k$[Q]??=X},A8,v$=(Z)=>{let X=[];if(Z.prefix)for(let Q of Z.prefix)X.push({kind:"prefix",node:Q});if(Z.defaultables)for(let[Q,U]of Z.defaultables)X.push({kind:"defaultables",node:Q,default:U});if(Z.optionals)for(let Q of Z.optionals)X.push({kind:"optionals",node:Q});if(Z.variadic)X.push({kind:"variadic",node:Z.variadic});if(Z.postfix)for(let Q of Z.postfix)X.push({kind:"postfix",node:Q});return X},lU=(Z)=>Z.reduce((X,Q)=>{if(Q.kind==="variadic")X.variadic=Q.node;else if(Q.kind==="defaultables")X.defaultables=m(X.defaultables,[[Q.node,Q.default]]);else X[Q.kind]=m(X[Q.kind],Q.node);return X},{}),S8="A postfix required element cannot follow an optional or defaultable element",x$="A postfix element requires a variadic element",v6=(Z)=>{let[X,...Q]=Z.l,[U,...q]=Z.r;if(!X||!U)return Z;let J=Q[Q.length-1]?.kind==="postfix",Y=q[q.length-1]?.kind==="postfix",W=X.kind==="prefix"||U.kind==="prefix"?"prefix":X.kind==="postfix"||U.kind==="postfix"?"postfix":X.kind==="variadic"&&U.kind==="variadic"?"variadic":J||Y?"prefix":X.kind==="defaultables"||U.kind==="defaultables"?"defaultables":"optionals";if(X.kind==="prefix"&&U.kind==="variadic"&&Y){let G=v6({...Z,fixedVariants:[],r:q.map((_)=>({..._,kind:"prefix"}))});if(G.disjoint.length===0)Z.fixedVariants.push(G)}else if(U.kind==="prefix"&&X.kind==="variadic"&&J){let G=v6({...Z,fixedVariants:[],l:Q.map((_)=>({..._,kind:"prefix"}))});if(G.disjoint.length===0)Z.fixedVariants.push(G)}let $=Z0(X.node,U.node,Z.ctx);if($ instanceof j)if(W==="prefix"||W==="postfix")Z.disjoint.push(...$.withPrefixKey(W==="prefix"?Z.result.length:`-${Q.length+1}`,cU(X)&&cU(U)?"required":"optional")),Z.result=[...Z.result,{kind:W,node:T.intrinsic.never.internal}];else if(W==="optionals"||W==="defaultables")return Z;else return v6({...Z,fixedVariants:[],l:Q.map((G)=>({...G,kind:"prefix"})),r:Q.map((G)=>({...G,kind:"prefix"}))});else if(W==="defaultables"){if(X.kind==="defaultables"&&U.kind==="defaultables"&&X.default!==U.default)M(W8(X.default,U.default));Z.result=[...Z.result,{kind:W,node:$,default:X.kind==="defaultables"?X.default:U.kind==="defaultables"?U.default:l(`Unexpected defaultable intersection from ${X.kind} and ${U.kind} elements.`)}]}else Z.result=[...Z.result,{kind:W,node:$}];let L=Z.l.length,V=Z.r.length;if(X.kind!=="variadic"||L>=V&&(U.kind==="variadic"||V===1))Z.l=Q;if(U.kind!=="variadic"||V>=L&&(X.kind==="variadic"||L===1))Z.r=q;return v6(Z)},cU=(Z)=>Z.kind==="prefix"||Z.kind==="postfix";var j8=R(()=>{b();I0();X2();q0();s();g0();c();X1();I2();b6();y$=v({kind:"sequence",hasAssociatedError:!1,collapsibleKey:"variadic",keys:{prefix:{child:!0,parse:(Z,X)=>{if(Z.length===0)return;return Z.map((Q)=>X.$.parseSchema(Q))}},optionals:{child:!0,parse:(Z,X)=>{if(Z.length===0)return;return Z.map((Q)=>X.$.parseSchema(Q))}},defaultables:{child:(Z)=>Z.map((X)=>X[0]),parse:(Z,X)=>{if(Z.length===0)return;return Z.map((Q)=>{let U=X.$.parseSchema(Q[0]);return f6(U,Q[1],null),[U,Q[1]]})},serialize:(Z)=>Z.map((X)=>[X[0].collapsibleJson,k0(X[1])]),reduceIo:(Z,X,Q)=>{if(Z==="in"){X.optionals=Q.map((U)=>U[0].rawIn);return}X.prefix=Q.map((U)=>U[0].rawOut);return}},variadic:{child:!0,parse:(Z,X)=>X.$.parseSchema(Z,X)},minVariadicLength:{parse:(Z)=>Z===0?void 0:Z},postfix:{child:!0,parse:(Z,X)=>{if(Z.length===0)return;return Z.map((Q)=>X.$.parseSchema(Q))}}},normalize:(Z)=>{if(typeof Z==="string")return{variadic:Z};if("variadic"in Z||"prefix"in Z||"defaultables"in Z||"optionals"in Z||"postfix"in Z||"minVariadicLength"in Z){if(Z.postfix?.length){if(!Z.variadic)return M(x$);if(Z.optionals?.length||Z.defaultables?.length)return M(S8)}if(Z.minVariadicLength&&!Z.variadic)return M("minVariadicLength may not be specified without a variadic element");return Z}return{variadic:Z}},reduce:(Z,X)=>{let Q=Z.minVariadicLength??0,U=Z.prefix?.slice()??[],q=Z.defaultables?.slice()??[],J=Z.optionals?.slice()??[],Y=Z.postfix?.slice()??[];if(Z.variadic){while(J[J.length-1]?.equals(Z.variadic))J.pop();if(J.length===0&&q.length===0)while(U[U.length-1]?.equals(Z.variadic))U.pop(),Q++;while(Y[0]?.equals(Z.variadic))Y.shift(),Q++}else if(J.length===0&&q.length===0)U.push(...Y.splice(0));if(Q!==Z.minVariadicLength||Z.prefix&&Z.prefix.length!==U.length)return X.node("sequence",{...Z,prefix:U,defaultables:q,optionals:J,postfix:Y,minVariadicLength:Q},{prereduced:!0})},defaults:{description:(Z)=>{if(Z.isVariadicOnly)return`${Z.variadic.nestableExpression}[]`;return`[${Z.tuple.map((Q)=>Q.kind==="defaultables"?`${Q.node.nestableExpression} = ${g(Q.default)}`:Q.kind==="optionals"?`${Q.node.nestableExpression}?`:Q.kind==="variadic"?`...${Q.node.nestableExpression}[]`:Q.node.expression).join(", ")}]`}},intersections:{sequence:(Z,X,Q)=>{let U=v6({l:Z.tuple,r:X.tuple,disjoint:new j,result:[],fixedVariants:[],ctx:Q}),q=U.disjoint.length===0?[U,...U.fixedVariants]:U.fixedVariants;return q.length===0?U.disjoint:q.length===1?Q.$.node("sequence",lU(q[0].result)):Q.$.node("union",q.map((J)=>({proto:Array,sequence:lU(J.result)})))}}});dU=class dU extends v0{impliedBasis=T.intrinsic.Array.internal;tuple=v$(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((Z)=>{if(Z.kind==="defaultables"||Z.kind==="optionals")return this.defaultablesAndOptionals.push(Z.node),!0;return Z.kind==="prefix"});variadicOrPostfix=G1(this.variadic&&[this.variadic],this.postfix);flatRefs=this.addFlatRefs();addFlatRefs(){return IZ(this.flatRefs,this.prevariadic.flatMap((Z,X)=>m(Z.node.flatRefs.map((Q)=>s0([`${X}`,...Q.path],Q.node)),s0([`${X}`],Z.node)))),IZ(this.flatRefs,this.variadicOrPostfix.flatMap((Z)=>m(Z.flatRefs.map((X)=>s0([T.intrinsic.nonNegativeIntegerString.internal,...X.path],X.node)),s0([T.intrinsic.nonNegativeIntegerString.internal],Z)))),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=g$(this);defaultValueMorphsReference=this.defaultValueMorphs.length?U0(this.defaultValueMorphs):void 0;elementAtIndex(Z,X){if(X<this.prevariadic.length)return this.tuple[X];let Q=Z.length-this.postfixLength;if(X>=Q)return{kind:"postfix",node:this.postfix[X-Q]};return{kind:"variadic",node:this.variadic??l(`Unexpected attempt to access index ${X} on ${this}`)}}traverseAllows=(Z,X)=>{for(let Q=0;Q<Z.length;Q++)if(!this.elementAtIndex(Z,Q).node.traverseAllows(Z[Q],X))return!1;return!0};traverseApply=(Z,X)=>{let Q=0;for(;Q<Z.length;Q++)C0(Q,()=>this.elementAtIndex(Z,Q).node.traverseApply(Z[Q],X),X)};get element(){return this.cacheGetter("element",this.$.node("union",this.children))}compile(Z){if(this.prefix)for(let[X,Q]of this.prefix.entries())Z.traverseKey(`${X}`,`data[${X}]`,Q);for(let[X,Q]of this.defaultablesAndOptionals.entries()){let U=`${X+this.prefixLength}`;Z.if(`${U} >= data.length`,()=>Z.traversalKind==="Allows"?Z.return(!0):Z.return()),Z.traverseKey(U,`data[${U}]`,Q)}if(this.variadic){if(this.postfix)Z.const("firstPostfixIndex",`data.length${this.postfix?`- ${this.postfix.length}`:""}`);if(Z.for(`i < ${this.postfix?"firstPostfixIndex":"data.length"}`,()=>Z.traverseKey("i","data[i]",this.variadic),this.prevariadic.length),this.postfix)for(let[X,Q]of this.postfix.entries()){let U=`firstPostfixIndex + ${X}`;Z.traverseKey(U,`data[${U}]`,Q)}}if(Z.traversalKind==="Allows")Z.return(!0)}_transform(Z,X){X.path.push(T.intrinsic.nonNegativeIntegerString.internal);let Q=super._transform(Z,X);return X.path.pop(),Q}expression=this.description;reduceJsonSchema(Z,X){let Q=X.target==="draft-07";if(this.prevariadic.length){let U=this.prevariadic.map((q)=>{let J=q.node.toJsonSchemaRecurse(X);if(q.kind==="defaultables"){let Y=typeof q.default==="function"?q.default():q.default;J.default=T.intrinsic.jsonData.allows(Y)?Y:X.fallback.defaultValue({code:"defaultValue",base:J,value:Y})}return J});if(Q)Z.items=U;else Z.prefixItems=U}if(this.minLength)Z.minItems=this.minLength;if(this.variadic){let U=this.variadic.toJsonSchemaRecurse(X);if(Q&&this.prevariadic.length)Z.additionalItems=U;else Z.items=U;if(this.maxLength)Z.maxItems=this.maxLength;if(this.postfix){let q=this.postfix.map((J)=>J.toJsonSchemaRecurse(X));Z=X.fallback.arrayPostfix({code:"arrayPostfix",base:Z,elements:q})}}else{if(Q)Z.additionalItems=!1;else Z.items=!1;delete Z.maxItems}return Z}};k$={},A8={implementation:y$,Node:dU}});var rU=(Z)=>(X)=>{if(X.props.length||X.index){let Q=X.index?.map((q)=>q[Z])??[];for(let q of X.props)Q.push(q[Z]);if(X.undeclared)Q.push(`+ (undeclared): ${X.undeclared}`);let U=`{ ${Q.join(", ")} }`;return X.sequence?`${U} & ${X.sequence.description}`:U}return X.sequence?.description??"{}"},h$,m$,iU=(Z,X,Q)=>{let U=Z.required?"required":"optional";if(!X.signature.allows(Z.key))return null;let q=N0(Z.value,X.value,Q);if(q instanceof j)return U==="optional"?Q.node("optional",{key:Z.key,value:T.intrinsic.never.internal}):q.withPrefixKey(Z.key,Z.kind);return null},u$,oU,C8,p$=(Z)=>{let X="";for(let Q=0;Q<Z.defaultable.length;Q++)X+=Z.defaultable[Q].defaultValueMorphRef;if(Z.sequence?.defaultValueMorphsReference)X+=Z.sequence?.defaultValueMorphsReference;if(Z.undeclared==="delete"){if(X+="delete !(",Z.required)for(let Q of Z.required)X+=Q.compiledKey+" | ";if(Z.optional)for(let Q of Z.optional)X+=Q.compiledKey+" | ";if(Z.index)for(let Q of Z.index)X+=Q.signature.id+" | ";if(Z.sequence)if(Z.sequence.maxLength===null)X+=f.nonNegativeIntegerString.id;else for(let Q=0;Q<Z.sequence.tuple.length;Q++)X+=Q+" | ";X+=")"}return X},l$=(Z)=>{let X=p$(Z);if(!X)return;if(C8[X])return C8[X];let Q=(U,q)=>{for(let J=0;J<Z.defaultable.length;J++)if(!(Z.defaultable[J].key in U))Z.defaultable[J].defaultValueMorph(U,q);if(Z.sequence?.defaultables)for(let J=U.length-Z.sequence.prefixLength;J<Z.sequence.defaultables.length;J++)Z.sequence.defaultValueMorphs[J](U,q);if(Z.undeclared==="delete"){for(let J in U)if(!Z.declaresKey(J))delete U[J]}return U};return C8[X]=Q},c$=(Z,X)=>{let U=`(data${X.defaultable.some((q)=>q.defaultValueMorph.length===2)||X.sequence?.defaultValueMorphs.some((q)=>q.length===2)?", ctx":""})`;return Z.block(`${U} => `,(q)=>{for(let J=0;J<X.defaultable.length;J++){let{serializedKey:Y,defaultValueMorphRef:W}=X.defaultable[J];q.if(`!(${Y} in data)`,($)=>$.line(`${W}${U}`))}if(X.sequence?.defaultables)q.for(`i < ${X.sequence.defaultables.length}`,(J)=>J.set("data[i]",5),`data.length - ${X.sequence.prefixLength}`);if(X.undeclared==="delete")q.forIn("data",(J)=>J.if(`!(${X._compileDeclaresKey(J)})`,(Y)=>Y.line("delete data[k]")));return q.return("data")})},N8,d$=(Z)=>{if(I(Z,"root")&&Z.hasKind("unit"))Z=Z.unit;if(typeof Z==="number")Z=`${Z}`;return Z},i$=(Z,X)=>`${Z} is not allowed as an array index on ${X}. Use the 'nonNegativeIntegerString' keyword instead.`,r4=(Z,X,Q)=>{let[U,q]=ZQ(Z.branches,(Y)=>Y.hasKind("unit"));if(!U.length)return{index:Q.node("index",{signature:Z,value:X})};let J={};for(let Y of U){let W=Q.node("required",{key:Y.unit,value:X});J[W.kind]=m(J[W.kind],W)}if(q.length)J.index=Q.node("index",{signature:q,value:X});return J},s$=(Z)=>I(Z,"root")?Z.expression:g(Z),sU=(Z,X)=>`Key${X.length===1?"":"s"} ${X.map(s$).join(", ")} ${X.length===1?"does":"do"} not exist on ${Z}`,aU=(Z)=>`Duplicate key ${d0(Z)}`;var E8=R(()=>{b();I0();i4();E1();A1();q0();s();g0();c();j1();X1();Y0();I2();h$=rU("description"),m$=rU("expression"),u$=v({kind:"structure",hasAssociatedError:!1,normalize:(Z)=>Z,applyConfig:(Z,X)=>{if(!Z.undeclared&&X.onUndeclaredKey!=="ignore")return{...Z,undeclared:X.onUndeclaredKey};return Z},keys:{required:{child:!0,parse:R0("required"),reduceIo:(Z,X,Q)=>{X.required=m(X.required,Q.map((U)=>Z==="in"?U.rawIn:U.rawOut));return}},optional:{child:!0,parse:R0("optional"),reduceIo:(Z,X,Q)=>{if(Z==="in"){X.optional=Q.map((U)=>U.rawIn);return}for(let U of Q)X[U.outProp.kind]=m(X[U.outProp.kind],U.outProp.rawOut)}},index:{child:!0,parse:R0("index")},sequence:{child:!0,parse:R0("sequence")},undeclared:{parse:(Z)=>Z==="ignore"?void 0:Z,reduceIo:(Z,X,Q)=>{if(Q==="reject"){X.undeclared="reject";return}if(Z==="in")delete X.undeclared;else X.undeclared="reject"}}},defaults:{description:h$},intersections:{structure:(Z,X,Q)=>{let U={...Z.inner},q={...X.inner},J=new j;if(Z.undeclared){let $=Z.keyof();for(let L of X.requiredKeys)if(!$.allows(L))J.add("presence",T.intrinsic.never.internal,X.propsByKey[L].value,{path:[L]});if(q.optional)q.optional=q.optional.filter((L)=>$.allows(L.key));if(q.index)q.index=q.index.flatMap((L)=>{if(L.signature.extends($))return L;let V=N0($,L.signature,Q.$);if(V instanceof j)return[];let G=r4(V,L.value,Q.$);if(G.required)q.required=G1(q.required,G.required);if(G.optional)q.optional=G1(q.optional,G.optional);return G.index??[]})}if(X.undeclared){let $=X.keyof();for(let L of Z.requiredKeys)if(!$.allows(L))J.add("presence",Z.propsByKey[L].value,T.intrinsic.never.internal,{path:[L]});if(U.optional)U.optional=U.optional.filter((L)=>$.allows(L.key));if(U.index)U.index=U.index.flatMap((L)=>{if(L.signature.extends($))return L;let V=N0($,L.signature,Q.$);if(V instanceof j)return[];let G=r4(V,L.value,Q.$);if(G.required)U.required=G1(U.required,G.required);if(G.optional)U.optional=G1(U.optional,G.optional);return G.index??[]})}let Y={};if(Z.undeclared||X.undeclared)Y.undeclared=Z.undeclared==="reject"||X.undeclared==="reject"?"reject":"delete";let W=C2({kind:"structure",baseInner:Y,l:N2(U),r:N2(q),roots:[],ctx:Q});if(W instanceof j)J.push(...W);if(J.length)return J;return W}},reduce:(Z,X)=>{if(!Z.required&&!Z.optional)return;let Q={},U=!1,q=Z.optional?[...Z.optional]:[];if(Z.required)for(let J=0;J<Z.required.length;J++){let Y=Z.required[J];if(Y.key in Q)M(aU(Y.key));if(Q[Y.key]=!0,Z.index)for(let W of Z.index){let $=iU(Y,W,X);if($ instanceof j)return $}}if(Z.optional)for(let J=0;J<Z.optional.length;J++){let Y=Z.optional[J];if(Y.key in Q)M(aU(Y.key));if(Q[Y.key]=!0,Z.index)for(let W of Z.index){let $=iU(Y,W,X);if($ instanceof j)return $;if($!==null)q[J]=$,U=!0}}if(U)return X.node("structure",{...Z,optional:q},{prereduced:!0})}});oU=class oU extends v0{impliedBasis=T.intrinsic.object.internal;impliedSiblings=this.children.flatMap((Z)=>Z.impliedSiblings??[]);props=G1(this.required,this.optional);propsByKey=k(this.props,(Z,X)=>[X.key,X]);propsByKeyReference=U0(this.propsByKey);expression=m$(this);requiredKeys=this.required?.map((Z)=>Z.key)??[];optionalKeys=this.optional?.map((Z)=>Z.key)??[];literalKeys=[...this.requiredKeys,...this.optionalKeys];_keyof;keyof(){if(this._keyof)return this._keyof;let Z=this.$.units(this.literalKeys).branches;if(this.index)for(let{signature:X}of this.index)Z=Z.concat(X.branches);return this._keyof=this.$.node("union",Z)}map(Z){return this.$.node("structure",this.props.flatMap(Z).reduce((X,Q)=>{let U=this.propsByKey[Q.key];if(e(Q)){if(Q.kind!=="required"&&Q.kind!=="optional")return M(`Map result must have kind "required" or "optional" (was ${Q.kind})`);return X[Q.kind]=m(X[Q.kind],Q),X}let q=Q.kind??U?.kind??"required",J=k(Q,(Y,W)=>(Y in I6.implementation.keys)?[Y,W]:[]);return X[q]=m(X[q],this.$.node(q,J)),X},{}))}assertHasKeys(Z){let X=Z.filter((Q)=>!y6(Q,this.keyof()));if(X.length)return M(sU(this.expression,X))}get(Z,...X){let Q,U=!1,q=d$(Z);if((typeof q==="string"||typeof q==="symbol")&&this.propsByKey[q])Q=this.propsByKey[q].value,U=this.propsByKey[q].required;if(this.index){for(let Y of this.index)if(y6(q,Y.signature))Q=Q?.and(Y.value)??Y.value}if(this.sequence&&y6(q,T.intrinsic.nonNegativeIntegerString))if(I(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 W=this.sequence.prevariadic[Y].node;Q=Q?.and(W)??W,U||=Y<this.sequence.prefixLength}else if(this.sequence.variadic){let W=this.$.node("union",this.sequence.variadicOrPostfix);Q=Q?.and(W)??W}}if(!Q){if(this.sequence?.variadic&&I(q,"root")&&q.extends(T.intrinsic.number))return M(i$(q.expression,this.sequence.expression));return M(sU(this.expression,[q]))}let J=Q.get(...X);return U?J:J.or(T.intrinsic.undefined)}pick(...Z){return this.assertHasKeys(Z),this.$.node("structure",this.filterKeys("pick",Z))}omit(...Z){return this.assertHasKeys(Z),this.$.node("structure",this.filterKeys("omit",Z))}optionalize(){let{required:Z,...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:Z,...X}=this.inner;return this.$.node("structure",{...X,required:this.props.map((Q)=>Q.hasKind("optional")?{key:Q.key,value:Q.value}:Q)})}merge(Z){let X=this.filterKeys("omit",[Z.keyof()]);if(Z.required)X.required=m(X.required,Z.required);if(Z.optional)X.optional=m(X.optional,Z.optional);if(Z.index)X.index=m(X.index,Z.index);if(Z.sequence)X.sequence=Z.sequence;if(Z.undeclared)X.undeclared=Z.undeclared;else delete X.undeclared;return this.$.node("structure",X)}filterKeys(Z,X){let Q=y4(this.inner),U=(q)=>{let J=X.some((Y)=>y6(q,Y));return Z==="pick"?J:!J};if(Q.required)Q.required=Q.required.filter((q)=>U(q.key));if(Q.optional)Q.optional=Q.optional.filter((q)=>U(q.key));if(Q.index)Q.index=Q.index.filter((q)=>U(q.signature));return Q}traverseAllows=(Z,X)=>this._traverse("Allows",Z,X);traverseApply=(Z,X)=>this._traverse("Apply",Z,X);_traverse=(Z,X,Q)=>{let U=Q?.currentErrorCount??0;for(let q=0;q<this.props.length;q++)if(Z==="Allows"){if(!this.props[q].traverseAllows(X,Q))return!1}else if(this.props[q].traverseApply(X,Q),Q.failFast&&Q.currentErrorCount>U)return!1;if(this.sequence){if(Z==="Allows"){if(!this.sequence.traverseAllows(X,Q))return!1}else if(this.sequence.traverseApply(X,Q),Q.failFast&&Q.currentErrorCount>U)return!1}if(this.index||this.undeclared==="reject"){let q=Object.keys(X);q.push(...Object.getOwnPropertySymbols(X));for(let J=0;J<q.length;J++){let Y=q[J];if(this.index){for(let W of this.index)if(W.signature.traverseAllows(Y,Q)){if(Z==="Allows"){if(!C0(Y,()=>W.value.traverseAllows(X[Y],Q),Q))return!1}else if(C0(Y,()=>W.value.traverseApply(X[Y],Q),Q),Q.failFast&&Q.currentErrorCount>U)return!1}}if(this.undeclared==="reject"&&!this.declaresKey(Y)){if(Z==="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((Z)=>Z.hasDefault())??[])}declaresKey=(Z)=>(Z in this.propsByKey)||this.index?.some((X)=>X.signature.allows(Z))||this.sequence!==void 0&&T.intrinsic.nonNegativeIntegerString.allows(Z);_compileDeclaresKey(Z){let X=[];if(this.props.length)X.push(`k in ${this.propsByKeyReference}`);if(this.index)for(let Q of this.index)X.push(Z.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",l$(this))}structuralMorphRef=this.structuralMorph&&U0(this.structuralMorph);compile(Z){if(Z.traversalKind==="Apply")Z.initializeErrorCount();for(let X of this.props)if(Z.check(X),Z.traversalKind==="Apply")Z.returnIfFailFast();if(this.sequence){if(Z.check(this.sequence),Z.traversalKind==="Apply")Z.returnIfFailFast()}if(this.index||this.undeclared==="reject")Z.const("keys","Object.keys(data)"),Z.line("keys.push(...Object.getOwnPropertySymbols(data))"),Z.for("i < keys.length",()=>this.compileExhaustiveEntry(Z));if(Z.traversalKind==="Allows")return Z.return(!0);if(this.structuralMorphRef)Z.if("ctx && !ctx.hasError()",()=>{return Z.line("ctx.queueMorphs(["),c$(Z,this),Z.line("])")})}compileExhaustiveEntry(Z){if(Z.const("k","keys[i]"),this.index)for(let X of this.index)Z.if(`${Z.invoke(X.signature,{arg:"k",kind:"Allows"})}`,()=>Z.traverseKey("k","data[k]",X.value));if(this.undeclared==="reject")Z.if(`!(${this._compileDeclaresKey(Z)})`,()=>{if(Z.traversalKind==="Allows")return Z.return(!1);return Z.line(`ctx.errorFromNodeContext({ code: "predicate", expected: "removed", actual: "", relativePath: [k], meta: ${this.compiledMeta} })`).if("ctx.failFast",()=>Z.return())});return Z}reduceJsonSchema(Z,X){switch(Z.type){case"object":return this.reduceObjectJsonSchema(Z,X);case"array":let Q=this.sequence?.reduceJsonSchema(Z,X)??Z;if(this.props.length||this.index)return X.fallback.arrayObject({code:"arrayObject",base:Q,object:this.reduceObjectJsonSchema({type:"object"},X)});return Q;default:return X0.throwInternalOperandError("structure",Z)}}reduceObjectJsonSchema(Z,X){if(this.props.length){Z.properties={};for(let Q of this.props){let U=Q.value.toJsonSchemaRecurse(X);if(typeof Q.key==="symbol"){X.fallback.symbolKey({code:"symbolKey",base:Z,key:Q.key,value:U,optional:Q.optional});continue}if(Q.hasDefault()){let q=typeof Q.default==="function"?Q.default():Q.default;U.default=T.intrinsic.jsonData.allows(q)?q:X.fallback.defaultValue({code:"defaultValue",base:U,value:q})}Z.properties[Q.key]=U}if(this.requiredKeys.length&&Z.properties)Z.required=this.requiredKeys.filter((Q)=>typeof Q==="string"&&(Q in Z.properties))}if(this.index)for(let Q of this.index){let U=Q.value.toJsonSchemaRecurse(X);if(Q.signature.equals(T.intrinsic.string)){Z.additionalProperties=U;continue}for(let q of Q.signature.branches){if(!q.extends(T.intrinsic.string)){Z=X.fallback.symbolKey({code:"symbolKey",base:Z,key:null,value:U,optional:!1});continue}let J={type:"string"};if(q.hasKind("morph"))J=X.fallback.morph({code:"morph",base:q.rawIn.toJsonSchemaRecurse(X),out:q.rawOut.toJsonSchemaRecurse(X)});if(!q.hasKind("intersection"))return l(`Unexpected index branch kind ${q.kind}.`);let{pattern:Y}=q.inner;if(Y){let W=Object.assign(J,{pattern:Y[0].rule});for(let $=1;$<Y.length;$++)J=X.fallback.patternIntersection({code:"patternIntersection",base:W,pattern:Y[$].rule});Z.patternProperties??={},Z.patternProperties[W.pattern]=U}}}if(this.undeclared&&!Z.additionalProperties)Z.additionalProperties=!1;return Z}};C8={},N8={implementation:u$,Node:oU}});var b2,DU;var d4=R(()=>{b();S2();xZ();mZ();X8();U8();L8();G8();_8();H8();F8();R8();T8();c();j1();D8();I2();w8();j8();E8();b2={...BU,alias:k6.implementation,domain:a4.implementation,unit:O8.implementation,proto:g6.implementation,union:M8.implementation,morph:z8.implementation,intersection:V8.implementation,divisor:hZ.implementation,pattern:Q8.implementation,predicate:vZ.implementation,required:P8.implementation,optional:I6.implementation,index:K8.implementation,sequence:A8.implementation,structure:N8.implementation};T.defaultConfig=LQ(Object.assign(k(b2,(Z,X)=>[Z,X.defaults]),{jitless:MQ(),clone:_Q,onUndeclaredKey:"ignore",exactOptionalPropertyTypes:!0,numberAllowsNaN:!1,dateAllowsInvalid:!1,onFail:null,keywords:{},toJsonSchema:X0.defaultConfig}));T.resolvedConfig=P6(T.defaultConfig,T.config);DU={...MU,alias:k6.Node,domain:a4.Node,unit:O8.Node,proto:g6.Node,union:M8.Node,morph:z8.Node,intersection:V8.Node,divisor:hZ.Node,pattern:Q8.Node,predicate:vZ.Node,required:P8.Node,optional:I6.Node,index:K8.Node,sequence:A8.Node,structure:N8.Node}});var g2,b8=(Z,X)=>new g2(k(Z,(Q,U)=>[Q,I(U,"module")?b8(U,X):X.bindReference(U)]));var I8=R(()=>{b();Y0();g2=class g2 extends FZ{get[O0](){return"module"}}});var a$=(Z)=>n(Z)?Z:("branches"in Z)&&n(Z.branches)?Z.branches:void 0,r$=(Z,X)=>M(`Node of kind ${X} is not valid as a ${Z} definition`),nU=(Z)=>`#${Z} duplicates public alias ${Z}`,f8,tU,Z5="function $",o$=(Z)=>X5(Z,Q5(Z)),X5=(Z,X)=>{let Q=X.write(Z5,4),U=X.compile()();for(let q of Z){if(q.precompilation)continue;if(q.traverseAllows=U[`${q.id}Allows`].bind(U),q.isRoot()&&!q.allowsRequiresContext)q.allows=q.traverseAllows;if(q.traverseApply=U[`${q.id}Apply`].bind(U),U[`${q.id}Optimistic`])q.traverseOptimistic=U[`${q.id}Optimistic`].bind(U);q.precompilation=Q}},Q5=(Z)=>new f4().return(Z.reduce((X,Q)=>{let U=new D6({kind:"Allows"}).indent();Q.compile(U);let q=U.write(`${Q.id}Allows`),J=new D6({kind:"Apply"}).indent();Q.compile(J);let Y=J.write(`${Q.id}Apply`),W=`${X}${q},
41
+ })`)}compileIndiscriminable(Z){if(Z.traversalKind==="Apply"){Z.const("errors","[]");for(let X of this.branches)Z.line("ctx.pushBranch()").line(Z.invoke(X)).if("!ctx.hasError()",()=>Z.return(X.includesTransform?"ctx.queuedMorphs.push(...ctx.popBranch().queuedMorphs)":"ctx.popBranch()")).line("errors.push(ctx.popBranch().error)");Z.line(`ctx.errorFromNodeContext({ code: "union", errors, meta: ${this.compiledMeta} })`)}else{let{optimistic:X}=Z;Z.optimistic=!1;for(let Q of this.branches)Z.if(`${Z.invoke(Q)}`,()=>Z.return(X?Q.contextFreeMorph?`${U0(Q.contextFreeMorph)}(data)`:"data":!0));Z.return(X?`"${A0}"`:!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=k(this.unitBranches,(J,Y)=>[`${Y.rawIn.serializedValue}`,Y.hasKind("morph")?Y:!0]);return{kind:"unit",path:[],optionallyChainedPropString:"data",cases:q}}let Z=[];for(let q=0;q<this.branches.length-1;q++){let J=this.branches[q];for(let Y=q+1;Y<this.branches.length;Y++){let W=this.branches[Y],$=N0(J.rawIn,W.rawIn,J.$);if(!($ instanceof j))continue;for(let L of $){if(!L.kind||L.optional)continue;let V,G;if(L.kind==="domain"){let{l:H,r:F}=L;V=`"${typeof H==="string"?H:H.domain}"`,G=`"${typeof F==="string"?F:F.domain}"`}else if(L.kind==="unit")V=L.l.serializedValue,G=L.r.serializedValue;else continue;let _=Z.find((H)=>V1(H.path,L.path)&&H.kind===L.kind);if(!_)Z.push({kind:L.kind,cases:{[V]:{branchIndices:[q],condition:L.l},[G]:{branchIndices:[Y],condition:L.r}},path:L.path});else{if(_.cases[V])_.cases[V].branchIndices=t0(_.cases[V].branchIndices,q);else _.cases[V]??={branchIndices:[q],condition:L.l};if(_.cases[G])_.cases[G].branchIndices=t0(_.cases[G].branchIndices,Y);else _.cases[G]??={branchIndices:[Y],condition:L.r}}}}}let X=this.ordered?R$(Z,this.branches):Z;if(!X.length)return null;let Q=M$(X,this),U={};for(let q in Q.best.cases){let J=O$(Q,q);if(J===null){U[q]=!0;continue}if(J.length===this.branches.length)return null;if(this.ordered)J.sort(($,L)=>$.originalIndex-L.originalIndex);let Y=J.map(($)=>$.branch),W=Y.length===1?Y[0]:this.$.node("union",this.ordered?{branches:Y,ordered:!0}:Y);Object.assign(this.referencesById,W.referencesById),U[q]=W}if(Q.defaultEntries.length){let q=Q.defaultEntries.map((J)=>J.branch);U.default=this.$.node("union",this.ordered?{branches:q,ordered:!0}:q,{prereduced:!0}),Object.assign(this.referencesById,U.default.referencesById)}return Object.assign(Q.location,{cases:U})}};K$=U0(qQ),D$=U0(g),M8={implementation:B$,Node:vU},w$={delimiter:" | ",finalDelimiter:" | "}});var N$,mU,R8,hU=(Z,X,Q)=>{if(Z instanceof Date){let U=`data instanceof Date && data.toISOString() === ${X}`;return Q?`!(${U})`:U}if(Number.isNaN(Z))return`${Q?"!":""}Number.isNaN(data)`;return`data ${Q?"!":"="}== ${X}`};var T8=O(()=>{b();q0();s();d();s4();y2();N$=v({kind:"unit",hasAssociatedError:!0,keys:{unit:{preserveUndefined:!0,serialize:(Z)=>Z instanceof Date?Z.toISOString():k0(Z)}},normalize:(Z)=>Z,defaults:{description:(Z)=>g(Z.unit),problem:({expected:Z,actual:X})=>`${Z===X?`must be reference equal to ${Z} (serialized to the same value)`:`must be ${Z} (was ${X})`}`},intersections:{unit:(Z,X)=>j.init("unit",Z,X),...Q1("unit",(Z,X)=>{if(X.allows(Z.unit))return Z;let Q=X.hasKind("intersection")?X.basis:X;if(Q){let U=Q.hasKind("domain")?Q:T.intrinsic.object;if(Z.domain!==U.domain){let q=Z.domain==="undefined"||Z.domain==="null"||Z.domain==="boolean"?Z.domain:T.intrinsic[Z.domain];return j.init("domain",q,U)}}return j.init("assignability",Z,X.hasKind("intersection")?X.children.find((U)=>!U.allows(Z.unit)):X)})}});mU=class mU extends Q2{compiledValue=this.json.unit;serializedValue=typeof this.unit==="string"||this.unit instanceof Date?JSON.stringify(this.compiledValue):`${this.compiledValue}`;compiledCondition=hU(this.unit,this.serializedValue);compiledNegation=hU(this.unit,this.serializedValue,"negated");expression=g(this.unit);domain=G0(this.unit);get defaultShortDescription(){return this.domain==="object"?w0.object:this.description}innerToJsonSchema(Z){return this.unit===null?{type:"null"}:T.intrinsic.jsonPrimitive.allows(this.unit)?{const:this.unit}:Z.fallback.unit({code:"unit",base:{},unit:this.unit})}traverseAllows=this.unit instanceof Date?(Z)=>Z instanceof Date&&Z.toISOString()===this.compiledValue:Number.isNaN(this.unit)?(Z)=>Number.isNaN(Z):(Z)=>Z===this.unit};R8={implementation:N$,Node:mU}});var E$,uU,K8,b$=(Z)=>`Index keys ${Z.join(", ")} should be specified as named props.`,I$=(Z)=>`Indexed key definition '${Z}' must be a string or symbol`;var D8=O(()=>{b();I0();X2();q0();s();g0();d();X1();E$=v({kind:"index",hasAssociatedError:!1,intersectionIsOpen:!0,keys:{signature:{child:!0,parse:(Z,X)=>{let Q=X.$.parseSchema(Z);if(!Q.extends(T.intrinsic.key))return M(I$(Q.expression));let U=Q.branches.filter((q)=>q.hasKind("unit"));if(U.length)return M(b$(U.map((q)=>g(q.unit))));return Q}},value:{child:!0,parse:(Z,X)=>X.$.parseSchema(Z)}},normalize:(Z)=>Z,defaults:{description:(Z)=>`[${Z.signature.expression}]: ${Z.value.description}`},intersections:{index:(Z,X,Q)=>{if(Z.signature.equals(X.signature)){let U=Z0(Z.value,X.value,Q),q=U instanceof j?T.intrinsic.never.internal:U;return Q.$.node("index",{signature:Z.signature,value:q})}if(Z.signature.extends(X.signature)&&Z.value.subsumes(X.value))return X;if(X.signature.extends(Z.signature)&&X.value.subsumes(Z.value))return Z;return null}}});uU=class uU extends v0{impliedBasis=T.intrinsic.object.internal;expression=`[${this.signature.expression}]: ${this.value.expression}`;flatRefs=m(this.value.flatRefs.map((Z)=>s0([this.signature,...Z.path],Z.node)),s0([this.signature],this.value));traverseAllows=(Z,X)=>r1(Z).every((Q)=>{if(this.signature.traverseAllows(Q[0],X))return C0(Q[0],()=>this.value.traverseAllows(Q[1],X),X);return!0});traverseApply=(Z,X)=>{for(let Q of r1(Z))if(this.signature.traverseAllows(Q[0],X))C0(Q[0],()=>this.value.traverseApply(Q[1],X),X)};_transform(Z,X){X.path.push(this.signature);let Q=super._transform(Z,X);return X.path.pop(),Q}compile(){}};K8={implementation:E$,Node:uU}});var f$,pU,P8;var w8=O(()=>{s();b6();f$=v({kind:"required",hasAssociatedError:!0,intersectionIsOpen:!0,keys:{key:{},value:{child:!0,parse:(Z,X)=>X.$.parseSchema(Z)}},normalize:(Z)=>Z,defaults:{description:(Z)=>`${Z.compiledKey}: ${Z.value.description}`,expected:(Z)=>Z.missingValueDescription,actual:()=>"missing"},intersections:{required:N6,optional:N6}});pU=class pU extends E6{expression=`${this.compiledKey}: ${this.value.expression}`;errorContext=Object.freeze({code:"required",missingValueDescription:this.value.defaultShortDescription,relativePath:[this.key],meta:this.meta});compiledErrorContext=S1(this.errorContext)};P8={implementation:f$,Node:pU}});var y$,cU,k$,g$=(Z)=>{if(!Z.defaultables)return[];let X=[],Q="[",U=Z.prefixLength+Z.defaultablesLength-1;for(let q=Z.prefixLength;q<=U;q++){let[J,Y]=Z.defaultables[q-Z.prefixLength];X.push($8(q,J,Y)),Q+=`${q}: ${J.id} = ${k0(Y)}, `}return Q+="]",k$[Q]??=X},A8,v$=(Z)=>{let X=[];if(Z.prefix)for(let Q of Z.prefix)X.push({kind:"prefix",node:Q});if(Z.defaultables)for(let[Q,U]of Z.defaultables)X.push({kind:"defaultables",node:Q,default:U});if(Z.optionals)for(let Q of Z.optionals)X.push({kind:"optionals",node:Q});if(Z.variadic)X.push({kind:"variadic",node:Z.variadic});if(Z.postfix)for(let Q of Z.postfix)X.push({kind:"postfix",node:Q});return X},lU=(Z)=>Z.reduce((X,Q)=>{if(Q.kind==="variadic")X.variadic=Q.node;else if(Q.kind==="defaultables")X.defaultables=m(X.defaultables,[[Q.node,Q.default]]);else X[Q.kind]=m(X[Q.kind],Q.node);return X},{}),S8="A postfix required element cannot follow an optional or defaultable element",x$="A postfix element requires a variadic element",v6=(Z)=>{let[X,...Q]=Z.l,[U,...q]=Z.r;if(!X||!U)return Z;let J=Q[Q.length-1]?.kind==="postfix",Y=q[q.length-1]?.kind==="postfix",W=X.kind==="prefix"||U.kind==="prefix"?"prefix":X.kind==="postfix"||U.kind==="postfix"?"postfix":X.kind==="variadic"&&U.kind==="variadic"?"variadic":J||Y?"prefix":X.kind==="defaultables"||U.kind==="defaultables"?"defaultables":"optionals";if(X.kind==="prefix"&&U.kind==="variadic"&&Y){let G=v6({...Z,fixedVariants:[],r:q.map((_)=>({..._,kind:"prefix"}))});if(G.disjoint.length===0)Z.fixedVariants.push(G)}else if(U.kind==="prefix"&&X.kind==="variadic"&&J){let G=v6({...Z,fixedVariants:[],l:Q.map((_)=>({..._,kind:"prefix"}))});if(G.disjoint.length===0)Z.fixedVariants.push(G)}let $=Z0(X.node,U.node,Z.ctx);if($ instanceof j)if(W==="prefix"||W==="postfix")Z.disjoint.push(...$.withPrefixKey(W==="prefix"?Z.result.length:`-${Q.length+1}`,dU(X)&&dU(U)?"required":"optional")),Z.result=[...Z.result,{kind:W,node:T.intrinsic.never.internal}];else if(W==="optionals"||W==="defaultables")return Z;else return v6({...Z,fixedVariants:[],l:Q.map((G)=>({...G,kind:"prefix"})),r:Q.map((G)=>({...G,kind:"prefix"}))});else if(W==="defaultables"){if(X.kind==="defaultables"&&U.kind==="defaultables"&&X.default!==U.default)M(W8(X.default,U.default));Z.result=[...Z.result,{kind:W,node:$,default:X.kind==="defaultables"?X.default:U.kind==="defaultables"?U.default:l(`Unexpected defaultable intersection from ${X.kind} and ${U.kind} elements.`)}]}else Z.result=[...Z.result,{kind:W,node:$}];let L=Z.l.length,V=Z.r.length;if(X.kind!=="variadic"||L>=V&&(U.kind==="variadic"||V===1))Z.l=Q;if(U.kind!=="variadic"||V>=L&&(X.kind==="variadic"||L===1))Z.r=q;return v6(Z)},dU=(Z)=>Z.kind==="prefix"||Z.kind==="postfix";var j8=O(()=>{b();I0();X2();q0();s();g0();d();X1();I2();b6();y$=v({kind:"sequence",hasAssociatedError:!1,collapsibleKey:"variadic",keys:{prefix:{child:!0,parse:(Z,X)=>{if(Z.length===0)return;return Z.map((Q)=>X.$.parseSchema(Q))}},optionals:{child:!0,parse:(Z,X)=>{if(Z.length===0)return;return Z.map((Q)=>X.$.parseSchema(Q))}},defaultables:{child:(Z)=>Z.map((X)=>X[0]),parse:(Z,X)=>{if(Z.length===0)return;return Z.map((Q)=>{let U=X.$.parseSchema(Q[0]);return f6(U,Q[1],null),[U,Q[1]]})},serialize:(Z)=>Z.map((X)=>[X[0].collapsibleJson,k0(X[1])]),reduceIo:(Z,X,Q)=>{if(Z==="in"){X.optionals=Q.map((U)=>U[0].rawIn);return}X.prefix=Q.map((U)=>U[0].rawOut);return}},variadic:{child:!0,parse:(Z,X)=>X.$.parseSchema(Z,X)},minVariadicLength:{parse:(Z)=>Z===0?void 0:Z},postfix:{child:!0,parse:(Z,X)=>{if(Z.length===0)return;return Z.map((Q)=>X.$.parseSchema(Q))}}},normalize:(Z)=>{if(typeof Z==="string")return{variadic:Z};if("variadic"in Z||"prefix"in Z||"defaultables"in Z||"optionals"in Z||"postfix"in Z||"minVariadicLength"in Z){if(Z.postfix?.length){if(!Z.variadic)return M(x$);if(Z.optionals?.length||Z.defaultables?.length)return M(S8)}if(Z.minVariadicLength&&!Z.variadic)return M("minVariadicLength may not be specified without a variadic element");return Z}return{variadic:Z}},reduce:(Z,X)=>{let Q=Z.minVariadicLength??0,U=Z.prefix?.slice()??[],q=Z.defaultables?.slice()??[],J=Z.optionals?.slice()??[],Y=Z.postfix?.slice()??[];if(Z.variadic){while(J[J.length-1]?.equals(Z.variadic))J.pop();if(J.length===0&&q.length===0)while(U[U.length-1]?.equals(Z.variadic))U.pop(),Q++;while(Y[0]?.equals(Z.variadic))Y.shift(),Q++}else if(J.length===0&&q.length===0)U.push(...Y.splice(0));if(Q!==Z.minVariadicLength||Z.prefix&&Z.prefix.length!==U.length)return X.node("sequence",{...Z,prefix:U,defaultables:q,optionals:J,postfix:Y,minVariadicLength:Q},{prereduced:!0})},defaults:{description:(Z)=>{if(Z.isVariadicOnly)return`${Z.variadic.nestableExpression}[]`;return`[${Z.tuple.map((Q)=>Q.kind==="defaultables"?`${Q.node.nestableExpression} = ${g(Q.default)}`:Q.kind==="optionals"?`${Q.node.nestableExpression}?`:Q.kind==="variadic"?`...${Q.node.nestableExpression}[]`:Q.node.expression).join(", ")}]`}},intersections:{sequence:(Z,X,Q)=>{let U=v6({l:Z.tuple,r:X.tuple,disjoint:new j,result:[],fixedVariants:[],ctx:Q}),q=U.disjoint.length===0?[U,...U.fixedVariants]:U.fixedVariants;return q.length===0?U.disjoint:q.length===1?Q.$.node("sequence",lU(q[0].result)):Q.$.node("union",q.map((J)=>({proto:Array,sequence:lU(J.result)})))}}});cU=class cU extends v0{impliedBasis=T.intrinsic.Array.internal;tuple=v$(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((Z)=>{if(Z.kind==="defaultables"||Z.kind==="optionals")return this.defaultablesAndOptionals.push(Z.node),!0;return Z.kind==="prefix"});variadicOrPostfix=G1(this.variadic&&[this.variadic],this.postfix);flatRefs=this.addFlatRefs();addFlatRefs(){return IZ(this.flatRefs,this.prevariadic.flatMap((Z,X)=>m(Z.node.flatRefs.map((Q)=>s0([`${X}`,...Q.path],Q.node)),s0([`${X}`],Z.node)))),IZ(this.flatRefs,this.variadicOrPostfix.flatMap((Z)=>m(Z.flatRefs.map((X)=>s0([T.intrinsic.nonNegativeIntegerString.internal,...X.path],X.node)),s0([T.intrinsic.nonNegativeIntegerString.internal],Z)))),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=g$(this);defaultValueMorphsReference=this.defaultValueMorphs.length?U0(this.defaultValueMorphs):void 0;elementAtIndex(Z,X){if(X<this.prevariadic.length)return this.tuple[X];let Q=Z.length-this.postfixLength;if(X>=Q)return{kind:"postfix",node:this.postfix[X-Q]};return{kind:"variadic",node:this.variadic??l(`Unexpected attempt to access index ${X} on ${this}`)}}traverseAllows=(Z,X)=>{for(let Q=0;Q<Z.length;Q++)if(!this.elementAtIndex(Z,Q).node.traverseAllows(Z[Q],X))return!1;return!0};traverseApply=(Z,X)=>{let Q=0;for(;Q<Z.length;Q++)C0(Q,()=>this.elementAtIndex(Z,Q).node.traverseApply(Z[Q],X),X)};get element(){return this.cacheGetter("element",this.$.node("union",this.children))}compile(Z){if(this.prefix)for(let[X,Q]of this.prefix.entries())Z.traverseKey(`${X}`,`data[${X}]`,Q);for(let[X,Q]of this.defaultablesAndOptionals.entries()){let U=`${X+this.prefixLength}`;Z.if(`${U} >= data.length`,()=>Z.traversalKind==="Allows"?Z.return(!0):Z.return()),Z.traverseKey(U,`data[${U}]`,Q)}if(this.variadic){if(this.postfix)Z.const("firstPostfixIndex",`data.length${this.postfix?`- ${this.postfix.length}`:""}`);if(Z.for(`i < ${this.postfix?"firstPostfixIndex":"data.length"}`,()=>Z.traverseKey("i","data[i]",this.variadic),this.prevariadic.length),this.postfix)for(let[X,Q]of this.postfix.entries()){let U=`firstPostfixIndex + ${X}`;Z.traverseKey(U,`data[${U}]`,Q)}}if(Z.traversalKind==="Allows")Z.return(!0)}_transform(Z,X){X.path.push(T.intrinsic.nonNegativeIntegerString.internal);let Q=super._transform(Z,X);return X.path.pop(),Q}expression=this.description;reduceJsonSchema(Z,X){let Q=X.target==="draft-07";if(this.prevariadic.length){let U=this.prevariadic.map((q)=>{let J=q.node.toJsonSchemaRecurse(X);if(q.kind==="defaultables"){let Y=typeof q.default==="function"?q.default():q.default;J.default=T.intrinsic.jsonData.allows(Y)?Y:X.fallback.defaultValue({code:"defaultValue",base:J,value:Y})}return J});if(Q)Z.items=U;else Z.prefixItems=U}if(this.minLength)Z.minItems=this.minLength;if(this.variadic){let U=this.variadic.toJsonSchemaRecurse(X);if(Q&&this.prevariadic.length)Z.additionalItems=U;else Z.items=U;if(this.maxLength)Z.maxItems=this.maxLength;if(this.postfix){let q=this.postfix.map((J)=>J.toJsonSchemaRecurse(X));Z=X.fallback.arrayPostfix({code:"arrayPostfix",base:Z,elements:q})}}else{if(Q)Z.additionalItems=!1;else Z.items=!1;delete Z.maxItems}return Z}};k$={},A8={implementation:y$,Node:cU}});var rU=(Z)=>(X)=>{if(X.props.length||X.index){let Q=X.index?.map((q)=>q[Z])??[];for(let q of X.props)Q.push(q[Z]);if(X.undeclared)Q.push(`+ (undeclared): ${X.undeclared}`);let U=`{ ${Q.join(", ")} }`;return X.sequence?`${U} & ${X.sequence.description}`:U}return X.sequence?.description??"{}"},h$,m$,iU=(Z,X,Q)=>{let U=Z.required?"required":"optional";if(!X.signature.allows(Z.key))return null;let q=N0(Z.value,X.value,Q);if(q instanceof j)return U==="optional"?Q.node("optional",{key:Z.key,value:T.intrinsic.never.internal}):q.withPrefixKey(Z.key,Z.kind);return null},u$,oU,C8,p$=(Z)=>{let X="";for(let Q=0;Q<Z.defaultable.length;Q++)X+=Z.defaultable[Q].defaultValueMorphRef;if(Z.sequence?.defaultValueMorphsReference)X+=Z.sequence?.defaultValueMorphsReference;if(Z.undeclared==="delete"){if(X+="delete !(",Z.required)for(let Q of Z.required)X+=Q.compiledKey+" | ";if(Z.optional)for(let Q of Z.optional)X+=Q.compiledKey+" | ";if(Z.index)for(let Q of Z.index)X+=Q.signature.id+" | ";if(Z.sequence)if(Z.sequence.maxLength===null)X+=f.nonNegativeIntegerString.id;else for(let Q=0;Q<Z.sequence.tuple.length;Q++)X+=Q+" | ";X+=")"}return X},l$=(Z)=>{let X=p$(Z);if(!X)return;if(C8[X])return C8[X];let Q=(U,q)=>{for(let J=0;J<Z.defaultable.length;J++)if(!(Z.defaultable[J].key in U))Z.defaultable[J].defaultValueMorph(U,q);if(Z.sequence?.defaultables)for(let J=U.length-Z.sequence.prefixLength;J<Z.sequence.defaultables.length;J++)Z.sequence.defaultValueMorphs[J](U,q);if(Z.undeclared==="delete"){for(let J in U)if(!Z.declaresKey(J))delete U[J]}return U};return C8[X]=Q},d$=(Z,X)=>{let U=`(data${X.defaultable.some((q)=>q.defaultValueMorph.length===2)||X.sequence?.defaultValueMorphs.some((q)=>q.length===2)?", ctx":""})`;return Z.block(`${U} => `,(q)=>{for(let J=0;J<X.defaultable.length;J++){let{serializedKey:Y,defaultValueMorphRef:W}=X.defaultable[J];q.if(`!(${Y} in data)`,($)=>$.line(`${W}${U}`))}if(X.sequence?.defaultables)q.for(`i < ${X.sequence.defaultables.length}`,(J)=>J.set("data[i]",5),`data.length - ${X.sequence.prefixLength}`);if(X.undeclared==="delete")q.forIn("data",(J)=>J.if(`!(${X._compileDeclaresKey(J)})`,(Y)=>Y.line("delete data[k]")));return q.return("data")})},N8,c$=(Z)=>{if(I(Z,"root")&&Z.hasKind("unit"))Z=Z.unit;if(typeof Z==="number")Z=`${Z}`;return Z},i$=(Z,X)=>`${Z} is not allowed as an array index on ${X}. Use the 'nonNegativeIntegerString' keyword instead.`,r4=(Z,X,Q)=>{let[U,q]=ZQ(Z.branches,(Y)=>Y.hasKind("unit"));if(!U.length)return{index:Q.node("index",{signature:Z,value:X})};let J={};for(let Y of U){let W=Q.node("required",{key:Y.unit,value:X});J[W.kind]=m(J[W.kind],W)}if(q.length)J.index=Q.node("index",{signature:q,value:X});return J},s$=(Z)=>I(Z,"root")?Z.expression:g(Z),sU=(Z,X)=>`Key${X.length===1?"":"s"} ${X.map(s$).join(", ")} ${X.length===1?"does":"do"} not exist on ${Z}`,aU=(Z)=>`Duplicate key ${c0(Z)}`;var E8=O(()=>{b();I0();i4();E1();A1();q0();s();g0();d();j1();X1();Y0();I2();h$=rU("description"),m$=rU("expression"),u$=v({kind:"structure",hasAssociatedError:!1,normalize:(Z)=>Z,applyConfig:(Z,X)=>{if(!Z.undeclared&&X.onUndeclaredKey!=="ignore")return{...Z,undeclared:X.onUndeclaredKey};return Z},keys:{required:{child:!0,parse:O0("required"),reduceIo:(Z,X,Q)=>{X.required=m(X.required,Q.map((U)=>Z==="in"?U.rawIn:U.rawOut));return}},optional:{child:!0,parse:O0("optional"),reduceIo:(Z,X,Q)=>{if(Z==="in"){X.optional=Q.map((U)=>U.rawIn);return}for(let U of Q)X[U.outProp.kind]=m(X[U.outProp.kind],U.outProp.rawOut)}},index:{child:!0,parse:O0("index")},sequence:{child:!0,parse:O0("sequence")},undeclared:{parse:(Z)=>Z==="ignore"?void 0:Z,reduceIo:(Z,X,Q)=>{if(Q==="reject"){X.undeclared="reject";return}if(Z==="in")delete X.undeclared;else X.undeclared="reject"}}},defaults:{description:h$},intersections:{structure:(Z,X,Q)=>{let U={...Z.inner},q={...X.inner},J=new j;if(Z.undeclared){let $=Z.keyof();for(let L of X.requiredKeys)if(!$.allows(L))J.add("presence",T.intrinsic.never.internal,X.propsByKey[L].value,{path:[L]});if(q.optional)q.optional=q.optional.filter((L)=>$.allows(L.key));if(q.index)q.index=q.index.flatMap((L)=>{if(L.signature.extends($))return L;let V=N0($,L.signature,Q.$);if(V instanceof j)return[];let G=r4(V,L.value,Q.$);if(G.required)q.required=G1(q.required,G.required);if(G.optional)q.optional=G1(q.optional,G.optional);return G.index??[]})}if(X.undeclared){let $=X.keyof();for(let L of Z.requiredKeys)if(!$.allows(L))J.add("presence",Z.propsByKey[L].value,T.intrinsic.never.internal,{path:[L]});if(U.optional)U.optional=U.optional.filter((L)=>$.allows(L.key));if(U.index)U.index=U.index.flatMap((L)=>{if(L.signature.extends($))return L;let V=N0($,L.signature,Q.$);if(V instanceof j)return[];let G=r4(V,L.value,Q.$);if(G.required)U.required=G1(U.required,G.required);if(G.optional)U.optional=G1(U.optional,G.optional);return G.index??[]})}let Y={};if(Z.undeclared||X.undeclared)Y.undeclared=Z.undeclared==="reject"||X.undeclared==="reject"?"reject":"delete";let W=C2({kind:"structure",baseInner:Y,l:N2(U),r:N2(q),roots:[],ctx:Q});if(W instanceof j)J.push(...W);if(J.length)return J;return W}},reduce:(Z,X)=>{if(!Z.required&&!Z.optional)return;let Q={},U=!1,q=Z.optional?[...Z.optional]:[];if(Z.required)for(let J=0;J<Z.required.length;J++){let Y=Z.required[J];if(Y.key in Q)M(aU(Y.key));if(Q[Y.key]=!0,Z.index)for(let W of Z.index){let $=iU(Y,W,X);if($ instanceof j)return $}}if(Z.optional)for(let J=0;J<Z.optional.length;J++){let Y=Z.optional[J];if(Y.key in Q)M(aU(Y.key));if(Q[Y.key]=!0,Z.index)for(let W of Z.index){let $=iU(Y,W,X);if($ instanceof j)return $;if($!==null)q[J]=$,U=!0}}if(U)return X.node("structure",{...Z,optional:q},{prereduced:!0})}});oU=class oU extends v0{impliedBasis=T.intrinsic.object.internal;impliedSiblings=this.children.flatMap((Z)=>Z.impliedSiblings??[]);props=G1(this.required,this.optional);propsByKey=k(this.props,(Z,X)=>[X.key,X]);propsByKeyReference=U0(this.propsByKey);expression=m$(this);requiredKeys=this.required?.map((Z)=>Z.key)??[];optionalKeys=this.optional?.map((Z)=>Z.key)??[];literalKeys=[...this.requiredKeys,...this.optionalKeys];_keyof;keyof(){if(this._keyof)return this._keyof;let Z=this.$.units(this.literalKeys).branches;if(this.index)for(let{signature:X}of this.index)Z=Z.concat(X.branches);return this._keyof=this.$.node("union",Z)}map(Z){return this.$.node("structure",this.props.flatMap(Z).reduce((X,Q)=>{let U=this.propsByKey[Q.key];if(e(Q)){if(Q.kind!=="required"&&Q.kind!=="optional")return M(`Map result must have kind "required" or "optional" (was ${Q.kind})`);return X[Q.kind]=m(X[Q.kind],Q),X}let q=Q.kind??U?.kind??"required",J=k(Q,(Y,W)=>(Y in I6.implementation.keys)?[Y,W]:[]);return X[q]=m(X[q],this.$.node(q,J)),X},{}))}assertHasKeys(Z){let X=Z.filter((Q)=>!y6(Q,this.keyof()));if(X.length)return M(sU(this.expression,X))}get(Z,...X){let Q,U=!1,q=c$(Z);if((typeof q==="string"||typeof q==="symbol")&&this.propsByKey[q])Q=this.propsByKey[q].value,U=this.propsByKey[q].required;if(this.index){for(let Y of this.index)if(y6(q,Y.signature))Q=Q?.and(Y.value)??Y.value}if(this.sequence&&y6(q,T.intrinsic.nonNegativeIntegerString))if(I(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 W=this.sequence.prevariadic[Y].node;Q=Q?.and(W)??W,U||=Y<this.sequence.prefixLength}else if(this.sequence.variadic){let W=this.$.node("union",this.sequence.variadicOrPostfix);Q=Q?.and(W)??W}}if(!Q){if(this.sequence?.variadic&&I(q,"root")&&q.extends(T.intrinsic.number))return M(i$(q.expression,this.sequence.expression));return M(sU(this.expression,[q]))}let J=Q.get(...X);return U?J:J.or(T.intrinsic.undefined)}pick(...Z){return this.assertHasKeys(Z),this.$.node("structure",this.filterKeys("pick",Z))}omit(...Z){return this.assertHasKeys(Z),this.$.node("structure",this.filterKeys("omit",Z))}optionalize(){let{required:Z,...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:Z,...X}=this.inner;return this.$.node("structure",{...X,required:this.props.map((Q)=>Q.hasKind("optional")?{key:Q.key,value:Q.value}:Q)})}merge(Z){let X=this.filterKeys("omit",[Z.keyof()]);if(Z.required)X.required=m(X.required,Z.required);if(Z.optional)X.optional=m(X.optional,Z.optional);if(Z.index)X.index=m(X.index,Z.index);if(Z.sequence)X.sequence=Z.sequence;if(Z.undeclared)X.undeclared=Z.undeclared;else delete X.undeclared;return this.$.node("structure",X)}filterKeys(Z,X){let Q=y4(this.inner),U=(q)=>{let J=X.some((Y)=>y6(q,Y));return Z==="pick"?J:!J};if(Q.required)Q.required=Q.required.filter((q)=>U(q.key));if(Q.optional)Q.optional=Q.optional.filter((q)=>U(q.key));if(Q.index)Q.index=Q.index.filter((q)=>U(q.signature));return Q}traverseAllows=(Z,X)=>this._traverse("Allows",Z,X);traverseApply=(Z,X)=>this._traverse("Apply",Z,X);_traverse=(Z,X,Q)=>{let U=Q?.currentErrorCount??0;for(let q=0;q<this.props.length;q++)if(Z==="Allows"){if(!this.props[q].traverseAllows(X,Q))return!1}else if(this.props[q].traverseApply(X,Q),Q.failFast&&Q.currentErrorCount>U)return!1;if(this.sequence){if(Z==="Allows"){if(!this.sequence.traverseAllows(X,Q))return!1}else if(this.sequence.traverseApply(X,Q),Q.failFast&&Q.currentErrorCount>U)return!1}if(this.index||this.undeclared==="reject"){let q=Object.keys(X);q.push(...Object.getOwnPropertySymbols(X));for(let J=0;J<q.length;J++){let Y=q[J];if(this.index){for(let W of this.index)if(W.signature.traverseAllows(Y,Q)){if(Z==="Allows"){if(!C0(Y,()=>W.value.traverseAllows(X[Y],Q),Q))return!1}else if(C0(Y,()=>W.value.traverseApply(X[Y],Q),Q),Q.failFast&&Q.currentErrorCount>U)return!1}}if(this.undeclared==="reject"&&!this.declaresKey(Y)){if(Z==="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((Z)=>Z.hasDefault())??[])}declaresKey=(Z)=>(Z in this.propsByKey)||this.index?.some((X)=>X.signature.allows(Z))||this.sequence!==void 0&&T.intrinsic.nonNegativeIntegerString.allows(Z);_compileDeclaresKey(Z){let X=[];if(this.props.length)X.push(`k in ${this.propsByKeyReference}`);if(this.index)for(let Q of this.index)X.push(Z.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",l$(this))}structuralMorphRef=this.structuralMorph&&U0(this.structuralMorph);compile(Z){if(Z.traversalKind==="Apply")Z.initializeErrorCount();for(let X of this.props)if(Z.check(X),Z.traversalKind==="Apply")Z.returnIfFailFast();if(this.sequence){if(Z.check(this.sequence),Z.traversalKind==="Apply")Z.returnIfFailFast()}if(this.index||this.undeclared==="reject")Z.const("keys","Object.keys(data)"),Z.line("keys.push(...Object.getOwnPropertySymbols(data))"),Z.for("i < keys.length",()=>this.compileExhaustiveEntry(Z));if(Z.traversalKind==="Allows")return Z.return(!0);if(this.structuralMorphRef)Z.if("ctx && !ctx.hasError()",()=>{return Z.line("ctx.queueMorphs(["),d$(Z,this),Z.line("])")})}compileExhaustiveEntry(Z){if(Z.const("k","keys[i]"),this.index)for(let X of this.index)Z.if(`${Z.invoke(X.signature,{arg:"k",kind:"Allows"})}`,()=>Z.traverseKey("k","data[k]",X.value));if(this.undeclared==="reject")Z.if(`!(${this._compileDeclaresKey(Z)})`,()=>{if(Z.traversalKind==="Allows")return Z.return(!1);return Z.line(`ctx.errorFromNodeContext({ code: "predicate", expected: "removed", actual: "", relativePath: [k], meta: ${this.compiledMeta} })`).if("ctx.failFast",()=>Z.return())});return Z}reduceJsonSchema(Z,X){switch(Z.type){case"object":return this.reduceObjectJsonSchema(Z,X);case"array":let Q=this.sequence?.reduceJsonSchema(Z,X)??Z;if(this.props.length||this.index)return X.fallback.arrayObject({code:"arrayObject",base:Q,object:this.reduceObjectJsonSchema({type:"object"},X)});return Q;default:return X0.throwInternalOperandError("structure",Z)}}reduceObjectJsonSchema(Z,X){if(this.props.length){Z.properties={};for(let Q of this.props){let U=Q.value.toJsonSchemaRecurse(X);if(typeof Q.key==="symbol"){X.fallback.symbolKey({code:"symbolKey",base:Z,key:Q.key,value:U,optional:Q.optional});continue}if(Q.hasDefault()){let q=typeof Q.default==="function"?Q.default():Q.default;U.default=T.intrinsic.jsonData.allows(q)?q:X.fallback.defaultValue({code:"defaultValue",base:U,value:q})}Z.properties[Q.key]=U}if(this.requiredKeys.length&&Z.properties)Z.required=this.requiredKeys.filter((Q)=>typeof Q==="string"&&(Q in Z.properties))}if(this.index)for(let Q of this.index){let U=Q.value.toJsonSchemaRecurse(X);if(Q.signature.equals(T.intrinsic.string)){Z.additionalProperties=U;continue}for(let q of Q.signature.branches){if(!q.extends(T.intrinsic.string)){Z=X.fallback.symbolKey({code:"symbolKey",base:Z,key:null,value:U,optional:!1});continue}let J={type:"string"};if(q.hasKind("morph"))J=X.fallback.morph({code:"morph",base:q.rawIn.toJsonSchemaRecurse(X),out:q.rawOut.toJsonSchemaRecurse(X)});if(!q.hasKind("intersection"))return l(`Unexpected index branch kind ${q.kind}.`);let{pattern:Y}=q.inner;if(Y){let W=Object.assign(J,{pattern:Y[0].rule});for(let $=1;$<Y.length;$++)J=X.fallback.patternIntersection({code:"patternIntersection",base:W,pattern:Y[$].rule});Z.patternProperties??={},Z.patternProperties[W.pattern]=U}}}if(this.undeclared&&!Z.additionalProperties)Z.additionalProperties=!1;return Z}};C8={},N8={implementation:u$,Node:oU}});var b2,DU;var c4=O(()=>{b();S2();xZ();mZ();X8();U8();L8();G8();_8();H8();F8();O8();T8();d();j1();D8();I2();w8();j8();E8();b2={...BU,alias:k6.implementation,domain:a4.implementation,unit:R8.implementation,proto:g6.implementation,union:M8.implementation,morph:z8.implementation,intersection:V8.implementation,divisor:hZ.implementation,pattern:Q8.implementation,predicate:vZ.implementation,required:P8.implementation,optional:I6.implementation,index:K8.implementation,sequence:A8.implementation,structure:N8.implementation};T.defaultConfig=LQ(Object.assign(k(b2,(Z,X)=>[Z,X.defaults]),{jitless:MQ(),clone:_Q,onUndeclaredKey:"ignore",exactOptionalPropertyTypes:!0,numberAllowsNaN:!1,dateAllowsInvalid:!1,onFail:null,keywords:{},toJsonSchema:X0.defaultConfig}));T.resolvedConfig=P6(T.defaultConfig,T.config);DU={...MU,alias:k6.Node,domain:a4.Node,unit:R8.Node,proto:g6.Node,union:M8.Node,morph:z8.Node,intersection:V8.Node,divisor:hZ.Node,pattern:Q8.Node,predicate:vZ.Node,required:P8.Node,optional:I6.Node,index:K8.Node,sequence:A8.Node,structure:N8.Node}});var g2,b8=(Z,X)=>new g2(k(Z,(Q,U)=>[Q,I(U,"module")?b8(U,X):X.bindReference(U)]));var I8=O(()=>{b();Y0();g2=class g2 extends FZ{get[R0](){return"module"}}});var a$=(Z)=>n(Z)?Z:("branches"in Z)&&n(Z.branches)?Z.branches:void 0,r$=(Z,X)=>M(`Node of kind ${X} is not valid as a ${Z} definition`),nU=(Z)=>`#${Z} duplicates public alias ${Z}`,f8,tU,Z5="function $",o$=(Z)=>X5(Z,Q5(Z)),X5=(Z,X)=>{let Q=X.write(Z5,4),U=X.compile()();for(let q of Z){if(q.precompilation)continue;if(q.traverseAllows=U[`${q.id}Allows`].bind(U),q.isRoot()&&!q.allowsRequiresContext)q.allows=q.traverseAllows;if(q.traverseApply=U[`${q.id}Apply`].bind(U),U[`${q.id}Optimistic`])q.traverseOptimistic=U[`${q.id}Optimistic`].bind(U);q.precompilation=Q}},Q5=(Z)=>new f4().return(Z.reduce((X,Q)=>{let U=new D6({kind:"Allows"}).indent();Q.compile(U);let q=U.write(`${Q.id}Allows`),J=new D6({kind:"Apply"}).indent();Q.compile(J);let Y=J.write(`${Q.id}Apply`),W=`${X}${q},
42
42
  ${Y},
43
43
  `;if(!Q.hasKind("union"))return W;let $=new D6({kind:"Allows",optimistic:!0}).indent();Q.compile($);let L=$.write(`${Q.id}Optimistic`);return`${W}${L},
44
44
  `},`{
45
- `)+"}"),o4,k8,eU=(Z)=>{let X=Z.references.filter((Q)=>Q.hasKind("alias"));for(let Q of X){Object.assign(Q.referencesById,Q.resolution.referencesById);for(let U of Z.references)if(Q.id in U.referencesById)Object.assign(U.referencesById,Q.referencesById)}return Z},U5=(Z)=>k(Z,(X,Q)=>[X,I(Q,"root")||I(Q,"generic")?Q.json:I(Q,"module")?U5(Q):l(`Unexpected resolution ${g(Q)}`)]),y8=(Z,X)=>{let Q=X.indexOf(".");if(Q===-1)return;let U=X.slice(0,Q),q=Z[U];if(q===void 0)return;if(!I(q,"module"))return M(n$(U));let J=X.slice(Q+1),Y=q[J];if(Y===void 0)return y8(q,J);if(I(Y,"root")||I(Y,"generic"))return Y;if(I(Y,"module"))return Y.root??M(J5(X));l(`Unexpected resolution for alias '${X}': ${g(Y)}`)},n4=(Z,X)=>new k8(Z,X),x6,q5=(Z,X)=>{let Q={};for(let U in X){let q=X[U];if(I(q,"module")){let J=q5(Z,q),Y=k(J,(W,$)=>[`${U}.${W}`,$]);Object.assign(Q,Y)}else if(I(q,"root")||I(q,"generic"))Q[U]=q;else l(`Unexpected scope resolution ${g(q)}`)}return Q},g8=(Z)=>`'${Z}' is unresolvable`,n$=(Z)=>`'${Z}' must reference a module to be accessed using dot syntax`,J5=(Z)=>`Reference to submodule '${Z}' must specify an alias`,a,v2,Kj,h0;var v8=R(()=>{b();S2();gZ();d4();I8();c4();L8();A1();c();X1();Y0();f8={};T.ambient??={};o4=class o4{config;resolvedConfig;name;get[O0](){return"scope"}referencesById={};references=[];resolutions={};exportedNames=[];aliases={};resolved=!1;nodesByHash={};intrinsic;constructor(Z,X){if(this.config=P6(T.config,X),this.resolvedConfig=P6(T.resolvedConfig,X),this.name=this.resolvedConfig.name??`anonymousScope${Object.keys(f8).length}`,this.name in f8)M(`A Scope already named ${this.name} already exists`);f8[this.name]=this;let Q=Object.entries(Z).map((U)=>this.preparseOwnAliasEntry(...U));for(let[U,q]of Q){let J=U;if(U[0]==="#"){if(J=U.slice(1),J in this.aliases)M(nU(J));this.aliases[J]=q}else{if(J in this.aliases)M(nU(U));this.aliases[J]=q,this.exportedNames.push(J)}if(!I(q,"module")&&!I(q,"generic")&&!D1(q)){let Y=this.preparseOwnDefinitionFormat(q,{alias:J});this.resolutions[J]=I(Y,"root")?this.bindReference(Y):this.createParseContext(Y).id}}tU??=this.node("union",{branches:["string","number","object","bigint","symbol",{unit:!0},{unit:!1},{unit:void 0},{unit:null}]},{prereduced:!0}),this.nodesByHash[tU.hash]=this.node("intersection",{},{prereduced:!0}),this.intrinsic=T.intrinsic?k(T.intrinsic,(U,q)=>U.startsWith("json")?[]:[U,this.bindReference(q)]):{}}cacheGetter(Z,X){return Object.defineProperty(this,Z,{value:X}),X}get internal(){return this}_json;get json(){if(!this._json)this.export();return this._json}defineSchema(Z){return Z}generic=(...Z)=>{let X=this;return(Q,U)=>new N1(Z,U?new x4(Q):Q,X,X,U??null)};units=(Z,X)=>{let Q=[];for(let q of Z)if(!Q.includes(q))Q.push(q);let U=Q.map((q)=>this.node("unit",{unit:q},X));return this.node("union",U,{...X,prereduced:!0})};lazyResolutions=[];lazilyResolve(Z,X){let Q=this.node("alias",{reference:X??"synthetic",resolve:Z},{prereduced:!0});if(!this.resolved)this.lazyResolutions.push(Q);return Q}schema=(Z,X)=>this.finalize(this.parseSchema(Z,X));parseSchema=(Z,X)=>this.node(C6(Z),Z,X);preparseNode(Z,X,Q){let U=typeof Z==="string"?Z:C6(X,Z);if(e(X)&&X.kind===U)return X;if(U==="alias"&&!Q?.prereduced){let{reference:Y}=k6.implementation.normalize(X,this);if(Y.startsWith("$")){let W=this.resolveRoot(Y.slice(1));X=W,U=W.kind}}else if(U==="union"&&P0(X,"object")){let Y=a$(X);if(Y?.length===1)X=Y[0],U=C6(X)}if(e(X)&&X.kind===U)return X;let J=b2[U].normalize?.(X,this)??X;if(e(J))return J.kind===U?J:r$(U,J.kind);return{...Q,$:this,kind:U,def:J,prefix:Q.alias??U}}bindReference(Z){let X;if(e(Z))X=Z.$===this?Z:new Z.constructor(Z.attachments,this);else X=Z.$===this?Z:new N1(Z.params,Z.bodyDef,Z.$,this,Z.hkt);if(!this.resolved)Object.assign(this.referencesById,X.referencesById);return X}resolveRoot(Z){return this.maybeResolveRoot(Z)??M(g8(Z))}maybeResolveRoot(Z){let X=this.maybeResolve(Z);if(I(X,"generic"))return;return X}maybeResolveSubalias(Z){return y8(this.aliases,Z)??y8(this.ambient,Z)}get ambient(){return T.ambient}maybeResolve(Z){let X=this.resolutions[Z];if(X){if(typeof X!=="string")return this.bindReference(X);let U=T0[X];if(I(U,"root"))return this.resolutions[Z]=U;if(I(U,"context")){if(U.phase==="resolving")return this.node("alias",{reference:`$${Z}`},{prereduced:!0});if(U.phase==="resolved")return l(`Unexpected resolved context for was uncached by its scope: ${g(U)}`);U.phase="resolving";let q=this.bindReference(this.parseOwnDefinitionFormat(U.def,U));return U.phase="resolved",T0[q.id]=q,T0[U.id]=q,this.resolutions[Z]=q}return l(`Unexpected nodesById entry for ${X}: ${g(U)}`)}let Q=this.aliases[Z]??this.ambient?.[Z];if(!Q)return this.maybeResolveSubalias(Z);if(Q=this.normalizeRootScopeValue(Q),I(Q,"generic"))return this.resolutions[Z]=this.bindReference(Q);if(I(Q,"module")){if(!Q.root)M(J5(Z));return this.resolutions[Z]=this.bindReference(Q.root)}return this.resolutions[Z]=this.parse(Q,{alias:Z})}createParseContext(Z){let X=Z.id??q8(Z.prefix);return T0[X]=Object.assign(Z,{[O0]:"context",$:this,id:X,phase:"unresolved"})}traversal(Z){return new i0(Z,this.resolvedConfig)}import(...Z){return new g2(k(this.export(...Z),(X,Q)=>[`#${X}`,Q]))}precompilation;_exportedResolutions;_exports;export(...Z){if(!this._exports){this._exports={};for(let Q of this.exportedNames){let U=this.aliases[Q];this._exports[Q]=I(U,"module")?b8(U,this):eU(this.maybeResolve(Q))}for(let Q of this.lazyResolutions)Q.resolution;if(this._exportedResolutions=q5(this,this._exports),this._json=U5(this._exportedResolutions),Object.assign(this.resolutions,this._exportedResolutions),this.references=Object.values(this.referencesById),!this.resolvedConfig.jitless){let Q=Q5(this.references);this.precompilation=Q.write(Z5,4),X5(this.references,Q)}this.resolved=!0}let X=Z.length?Z:this.exportedNames;return new g2(k(X,(Q,U)=>[U,this._exports[U]]))}resolve(Z){return this.export()[Z]}node=(Z,X,Q={})=>{let U=this.preparseNode(Z,X,Q);if(e(U))return this.bindReference(U);let q=this.createParseContext(U),J=J8(q),Y=this.bindReference(J);return T0[q.id]=Y};parse=(Z,X={})=>this.finalize(this.parseDefinition(Z,X));parseDefinition(Z,X={}){if(I(Z,"root"))return this.bindReference(Z);let Q=this.preparseOwnDefinitionFormat(Z,X);if(I(Q,"root"))return this.bindReference(Q);let U=this.createParseContext(Q);T0[U.id]=U;let q=this.bindReference(this.parseOwnDefinitionFormat(Z,U));if(q.isCyclic)q=KU(q,U.id);return T0[U.id]=q,q}finalize(Z){if(eU(Z),!Z.precompilation&&!this.resolvedConfig.jitless)o$(Z.references);return Z}};k8=class k8 extends o4{parseOwnDefinitionFormat(Z,X){return J8(X)}preparseOwnDefinitionFormat(Z,X){return this.preparseNode(C6(Z),Z,X)}preparseOwnAliasEntry(Z,X){return[Z,X]}normalizeRootScopeValue(Z){return Z}};x6=new k8({});x6.export();a=x6.schema,v2=x6.node,Kj=x6.defineSchema,h0=x6.generic});var x8="^(?:0|[1-9]\\d*)$",t$,wj;var Y5=R(()=>{c();t$=new RegExp(x8),wj=U0(t$)});var W5,$5,e$,f;var i4=R(()=>{v8();c();Y5();W5=n4({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();T.intrinsic={...W5};$5=n4({integer:{domain:"number",divisor:1},lengthBoundable:["string",Array],key:["string","symbol"],nonNegativeIntegerString:{domain:"string",pattern:x8}},{prereducedAliases:!0}).export();Object.assign(T.intrinsic,$5);e$=n4({jsonPrimitive:["string","number",{unit:!0},{unit:!1},{unit:null}],jsonObject:{domain:"object",index:{signature:"string",value:"$jsonData"}},jsonData:["$jsonPrimitive","$jsonObject"]},{prereducedAliases:!0}).export(),f={...W5,...$5,...e$,emptyStructure:v2("structure",{},{prereduced:!0})};T.intrinsic={...f}});var L5=()=>{};var G5=()=>{};var V5=()=>{};var W0=R(()=>{b();S2();I0();gZ();i4();d4();I8();X2();c4();xZ();pZ();cZ();mZ();iZ();X8();aZ();oZ();tZ();Z8();U8();F1();G8();_8();H8();F8();E1();R8();T8();v8();A1();L5();q0();w6();s();g0();G5();c();V5();j1();X1();Y0();D8();I2();b6();w8();j8();E8()});var t4=(Z,X)=>new RegExp(Z,X);var _5=R(()=>{Object.assign(t4,{as:t4})});var z5=R(()=>{_5()});var H5=R(()=>{S2()});var B5=(Z)=>typeof Z==="string"&&Z[0]==="d"&&(Z[1]==="'"||Z[1]==='"')&&Z[Z.length-1]===Z[1],F5=(Z)=>Z.toString()!=="Invalid Date",M5=(Z)=>Z.slice(2,-1),h8=(Z)=>`'${Z}' could not be parsed by the Date constructor`,R5=(Z,X)=>ZL(Z,X),ZL=(Z,X)=>{let Q=new Date(Z);if(F5(Q))return Q;let U=IQ(Z);if(U!==void 0){let q=new Date(U);if(F5(q))return q}return X?M(X===!0?h8(Z):X):void 0};var m8=R(()=>{b()});var XL,e4=(Z,X)=>{let Q=Z.scanner.shiftUntilEscapable(UL[K5[X]]);if(Z.scanner.lookahead==="")return Z.error(JL(Q,X));if(Z.scanner.shift(),X in T5){let U;try{U=new RegExp(Q)}catch(q){M(String(q))}if(Z.root=Z.ctx.$.node("intersection",{domain:"string",pattern:Q},{prereduced:!0}),X==="x/")Z.root=Z.ctx.$.node("morph",{in:Z.root,morphs:(q)=>U.exec(q),declaredOut:XL})}else if(V0(X,u8))Z.root=Z.ctx.$.node("unit",{unit:Q});else{let U=R5(Q,h8(Q));Z.root=Z.ctx.$.node("unit",{meta:Q,unit:U})}},u8,O5,QL,T5,K5,UL,qL,JL=(Z,X)=>`${X}${Z} requires a closing ${qL[K5[X]]}`;var D5=R(()=>{W0();b();m8();XL=a({proto:"Array",sequence:"string",required:{key:"groups",value:["object",{unit:void 0}]}}),u8={"'":1,'"':1},O5={"/":1,"'":1,'"':1},QL={"d'":"'",'d"':'"',"'":"'",'"':'"'},T5={"/":"/","x/":"/"},K5={...QL,...T5},UL={"'":(Z)=>Z.lookahead==="'",'"':(Z)=>Z.lookahead==='"',"/":(Z)=>Z.lookahead==="/"},qL={'"':"double-quote","'":"single-quote","/":"forward slash"}});var P5=(Z)=>`Private type references should not include '#'. Use '${Z}' instead.`,Z9="Optional definitions like 'string?' are only valid as properties in an object or tuple",X9="Defaultable definitions like 'number = 0' are only valid as properties in an object or tuple";var U1,w5=(Z,X)=>Z===">"?X[0]==="="?X[1]==="=":X.trimStart()===""||V0(X.trimStart()[0],U1):Z==="="?X[0]!=="=":Z===","||Z==="?";var x2=R(()=>{b();U1={"<":1,">":1,"=":1,"|":1,"&":1,")":1,"[":1,"%":1,",":1,":":1,"?":1,"#":1,...P1}});var A5=(Z,X,Q)=>S5(Z,X,Q,[]),S5=(Z,X,Q,U)=>{let q=Q.parseUntilFinalizer();if(U.push(q.root),q.finalizer===">"){if(U.length!==X.params.length)return Q.error(p8(Z,X.names,U.map((J)=>J.expression)));return U}if(q.finalizer===",")return S5(Z,X,Q,U);return q.error(I4(">"))},p8=(Z,X,Q)=>`${Z}<${X.join(", ")}> requires exactly ${X.length} args (got ${Q.length}${Q.length===0?"":`: ${Q.join(", ")}`})`;var j5=R(()=>{b()});var Q9=(Z)=>{let X=Z.scanner.shiftUntilLookahead(U1);if(X==="keyof")Z.addPrefix("keyof");else Z.root=WL(Z,X)},YL=(Z,X,Q)=>{if(Q.scanner.shiftUntilNonWhitespace(),Q.scanner.shift()!=="<")return Q.error(p8(Z,X.names,[]));let q=A5(Z,X,Q);return X(...q)},WL=(Z,X)=>$L(Z,X)??LL(Z,X)??Z.error(X===""?Z.scanner.lookahead==="#"?P5(Z.shiftedBy(1).scanner.shiftUntilLookahead(U1)):l8(Z):g8(X)),$L=(Z,X)=>{if(Z.ctx.args?.[X]){let U=Z.ctx.args[X];if(typeof U!=="string")return U;return Z.ctx.$.node("alias",{reference:U},{prereduced:!0})}let Q=Z.ctx.$.maybeResolve(X);if(I(Q,"root"))return Q;if(Q===void 0)return;if(I(Q,"generic"))return YL(X,Q,Z);return M(`Unexpected resolution ${g(Q)}`)},LL=(Z,X)=>{let Q=fQ(X);if(Q!==void 0)return Z.ctx.$.node("unit",{unit:Q});let U=kQ(X);if(U!==void 0)return Z.ctx.$.node("unit",{unit:U})},l8=(Z)=>{let X=Z.previousOperator();return X?c8(X,Z.scanner.unscanned):GL(Z.scanner.unscanned)},c8=(Z,X="")=>`Token '${Z}' requires a right operand${X?` before '${X}'`:""}`,GL=(Z)=>`Expected an expression${Z?` before '${Z}'`:""}`;var d8=R(()=>{W0();b();x2();j5()});var i8=(Z)=>Z.scanner.lookahead===""?Z.error(l8(Z)):Z.scanner.lookahead==="("?Z.shiftedBy(1).reduceGroupOpen():Z.scanner.lookaheadIsIn(O5)?e4(Z,Z.scanner.shift()):Z.scanner.lookaheadIsIn(P1)?i8(Z.shiftedBy(1)):Z.scanner.lookahead==="d"?Z.scanner.nextLookahead in u8?e4(Z,`${Z.scanner.shift()}${Z.scanner.shift()}`):Q9(Z):Z.scanner.lookahead==="x"?Z.scanner.nextLookahead==="/"?Z.shiftedBy(2)&&e4(Z,"x/"):Q9(Z):Q9(Z);var C5=R(()=>{b();D5();d8()});var N5,E5,h2,b5=(Z,X)=>`Left bounds are only valid when paired with right bounds (try ...${X}${Z})`,U9=(Z)=>`Left-bounded expressions must specify their limits using < or <= (was ${Z})`,I5=(Z,X,Q,U)=>`An expression may have at most one left bound (parsed ${Z}${h2[X]}, ${Q}${h2[U]})`;var s8=R(()=>{N5={">":!0,">=":!0},E5={"<":!0,"<=":!0},h2={"<":">",">":"<","<=":">=",">=":"<=","==":"=="}});var y5=(Z,X)=>{let Q=VL(Z,X);if(Z.root.hasKind("unit")){if(typeof Z.root.unit==="number"){Z.reduceLeftBound(Z.root.unit,Q),Z.unsetRoot();return}if(Z.root.unit instanceof Date){let U=`d'${Z.root.description??Z.root.unit.toISOString()}'`;Z.unsetRoot(),Z.reduceLeftBound(U,Q);return}}return zL(Z,Q)},k5,VL=(Z,X)=>Z.scanner.lookaheadIs("=")?`${X}${Z.scanner.shift()}`:X,f5=(Z,X,Q,U)=>{if(Q.extends(T.intrinsic.number)){if(typeof X!=="number")return M(a8(Z,X,U));return Z==="=="?["min","max"]:Z[0]===">"?["min"]:["max"]}if(Q.extends(T.intrinsic.lengthBoundable)){if(typeof X!=="number")return M(a8(Z,X,U));return Z==="=="?["exactLength"]:Z[0]===">"?["minLength"]:["maxLength"]}if(Q.extends(T.intrinsic.Date))return Z==="=="?["after","before"]:Z[0]===">"?["after"]:["before"];return M($U(Q.expression))},_L=(Z)=>({rule:B5(Z.limit)?M5(Z.limit):Z.limit,exclusive:Z.comparator.length===1}),zL=(Z,X)=>{let Q=Z.unsetRoot(),U=Z.scanner.location;Z.parseOperand();let q=Z.unsetRoot(),J=Z.scanner.sliceChars(U,Z.scanner.location);if(Z.root=Q,!q.hasKind("unit")||typeof q.unit!=="number"&&!(q.unit instanceof Date))return Z.error(a8(X,J,"right"));let Y=q.unit,W=X.length===1,$=f5(X,typeof Y==="number"?Y:J,Q,"right");for(let V of $)Z.constrainRoot(V,X==="=="?{rule:Y}:{rule:Y,exclusive:W});if(!Z.branches.leftBound)return;if(!V0(X,E5))return Z.error(U9(X));let L=f5(Z.branches.leftBound.comparator,Z.branches.leftBound.limit,Q,"left");Z.constrainRoot(L[0],_L(Z.branches.leftBound)),Z.branches.leftBound=null},a8=(Z,X,Q)=>`Comparator ${Q==="left"?h2[Z]:Z} must be ${Q==="left"?"preceded":"followed"} by a corresponding literal (was ${X})`;var g5=R(()=>{W0();b();s8();m8();k5={"<":1,">":1,"=":1}});var v5=(Z)=>{Z.scanner.shiftUntilNonWhitespace();let X=Z.scanner.shiftUntilLookahead(U1);Z.root=Z.root.brand(X)};var x5=R(()=>{x2()});var m5=(Z)=>{Z.scanner.shiftUntilNonWhitespace();let X=Z.scanner.shiftUntilLookahead(U1),Q=yQ(X,{errorOnFail:h5(X)});if(Q===0)Z.error(h5(0));Z.root=Z.root.constrain("divisor",Q)},h5=(Z)=>`% operator must be followed by a non-zero integer literal (was ${Z})`;var u5=R(()=>{b();x2()});var r8=(Z)=>{let X=Z.scanner.shift();return X===""?Z.finalize(""):X==="["?Z.scanner.shift()==="]"?Z.setRoot(Z.root.array()):Z.error(HL):X==="|"?Z.scanner.lookahead===">"?Z.shiftedBy(1).pushRootToBranch("|>"):Z.pushRootToBranch(X):X==="&"?Z.pushRootToBranch(X):X===")"?Z.finalizeGroup():w5(X,Z.scanner.unscanned)?Z.finalize(X):V0(X,k5)?y5(Z,X):X==="%"?m5(Z):X==="#"?v5(Z):(X in P1)?r8(Z):Z.error(q9(X))},q9=(Z,X="")=>`'${Z}' is not allowed here${X&&` (should be ${X})`}`,HL="Missing expected ']'";var o8=R(()=>{b();x2();g5();x5();u5()});var p5=(Z)=>{let X=Z.unsetRoot();Z.parseOperand();let Q=Z.unsetRoot();if(!Q.hasKind("unit"))return Z.error(FL(Q.expression));let U=Q.unit instanceof Date?()=>new Date(Q.unit):Q.unit;return[X,"=",U]},FL=(Z)=>`Default value '${Z}' must be a literal value`;var n8=(Z,X)=>{let Q=X.$.maybeResolveRoot(Z);if(Q)return Q;if(Z.endsWith("[]")){let J=X.$.maybeResolveRoot(Z.slice(0,-2));if(J)return J.array()}let U=new m2(new K6(Z),X),q=BL(U);if(U.finalizer===">")M(q9(">"));return q},BL=(Z)=>{Z.parseOperand();let X=h6(Z).root;if(!X)return l(`Root was unexpectedly unset after parsing string '${Z.scanner.scanned}'`);if(Z.finalizer==="=")X=p5(Z);else if(Z.finalizer==="?")X=[X,"?"];if(Z.scanner.shiftUntilNonWhitespace(),Z.scanner.lookahead)M(q9(Z.scanner.lookahead));return X},h6=(Z)=>{while(Z.finalizer===void 0)ML(Z);return Z},ML=(Z)=>Z.hasRoot()?Z.parseOperator():Z.parseOperand();var J9=R(()=>{b();t8();o8()});class m2{root;branches={prefixes:[],leftBound:null,intersection:null,union:null,pipe:null};finalizer;groups=[];scanner;ctx;constructor(Z,X){this.scanner=Z,this.ctx=X}error(Z){return M(Z)}hasRoot(){return this.root!==void 0}setRoot(Z){this.root=Z}unsetRoot(){let Z=this.root;return this.root=void 0,Z}constrainRoot(...Z){this.root=this.root.constrain(Z[0],Z[1])}finalize(Z){if(this.groups.length)return this.error(I4(")"));this.finalizeBranches(),this.finalizer=Z}reduceLeftBound(Z,X){let Q=h2[X];if(!V0(Q,N5))return this.error(U9(X));if(this.branches.leftBound)return this.error(I5(this.branches.leftBound.limit,this.branches.leftBound.comparator,Z,Q));this.branches.leftBound={comparator:Q,limit:Z}}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 Z=this.groups.pop();if(!Z)return this.error(uQ(")",this.scanner.unscanned));this.branches=Z}addPrefix(Z){this.branches.prefixes.push(Z)}applyPrefixes(){while(this.branches.prefixes.length){let Z=this.branches.prefixes.pop();this.root=Z==="keyof"?this.root.keyof():l(`Unexpected prefix '${Z}'`)}}pushRootToBranch(Z){this.assertRangeUnset(),this.applyPrefixes();let X=this.root;if(this.root=void 0,this.branches.intersection=this.branches.intersection?.rawAnd(X)??X,Z==="&")return;if(this.branches.union=this.branches.union?.rawOr(this.branches.intersection)??this.branches.intersection,this.branches.intersection=null,Z==="|")return;this.branches.pipe=this.branches.pipe?.rawPipeOnce(this.branches.union)??this.branches.union,this.branches.union=null}parseUntilFinalizer(){return h6(new m2(this.scanner,this.ctx))}parseOperator(){return r8(this)}parseOperand(){return i8(this)}assertRangeUnset(){if(this.branches.leftBound)return this.error(b5(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(Z){return this.scanner.jumpForward(Z),this}}var t8=R(()=>{b();C5();o8();J9();s8()});var RL="An empty string is not a valid generic parameter name",Y9=(Z,X,Q)=>{Z.shiftUntilNonWhitespace();let U=Z.shiftUntilLookahead(U1);if(U===""){if(Z.lookahead===""&&X.length)return X;return M(RL)}return Z.shiftUntilNonWhitespace(),OL(Z,U,X,Q)},l5="extends ",OL=(Z,X,Q,U)=>{if(Z.shiftUntilNonWhitespace(),Z.unscanned.startsWith(l5))Z.jumpForward(l5.length);else{if(Z.lookahead===",")Z.shift();return Q.push(X),Y9(Z,Q,U)}let q=h6(new m2(Z,U));return Q.push([X,q.root]),Y9(Z,Q,U)};var e8=R(()=>{W0();b();t8();x2();J9()});var ZX,c5,TL=`":" must be followed by exactly one return type e.g:
46
- fn("string", ":", "number")(s => s.length)`;var d5=R(()=>{b();ZX=class ZX extends S0{constructor(Z){let X={$:Z,raw:Z.fn};super((...Q)=>{let U=Q.indexOf(":"),q=U===-1?Q.length-1:U-1,J=Q.slice(0,q+1),Y=Z.parse(J).assertHasKind("intersection"),W=Z.intrinsic.unknown;if(U!==-1){if(U!==Q.length-2)return M(TL);W=Z.parse(Q[U+1])}return($)=>new c5($,Y,W)},{attach:X})}};c5=class c5 extends S0{raw;params;returns;expression;constructor(Z,X,Q){let U=`typed ${Z.name}`,q={[U]:(...Y)=>{let W=X.assert(Y),$=Z(...W);return Q.assert($)}}[U];super(q);this.raw=Z,this.params=X,this.returns=Q;let J=X.expression;if(J[0]==="["&&J[J.length-1]==="]")J=J.slice(1,-1);else if(J.endsWith("[]"))J=`...${J}`;this.expression=`(${J}) => ${Q?.expression??"unknown"}`}}});var XX,m6,i5=(Z)=>Z.throw(),KL="A key matcher must be specified before the first case i.e. match.at('foo') or match.in<object>().at('bar')",DL="At most one key matcher may be specified per expression";var s5=R(()=>{W0();b();XX=class XX extends S0{$;constructor(Z){super((...X)=>new m6(Z)(...X),{bind:Z});this.$=Z}in(Z){return new m6(this.$,Z===void 0?void 0:this.$.parse(Z))}at(Z,X){return new m6(this.$).at(Z,X)}case(Z,X){return new m6(this.$).case(Z,X)}};m6=class m6 extends S0{$;in;key;branches=[];constructor(Z,X){super((Q)=>this.caseEntries(Object.entries(Q).map(([U,q])=>U==="default"?[U,q]:[this.$.parse(U),q])));this.$=Z,this.in=X}at(Z,X){if(this.key)M(DL);if(this.branches.length)M(KL);return this.key=Z,X?this.match(X):this}case(Z,X){return this.caseEntry(this.$.parse(Z),X)}caseEntry(Z,X){let U=(this.key?this.$.parse({[this.key]:Z}):Z).pipe(X);return this.branches.push(U),this}match(Z){return this(Z)}strings(Z){return this.caseEntries(Object.entries(Z).map(([X,Q])=>X==="default"?[X,Q]:[this.$.node("unit",{unit:X}),Q]))}caseEntries(Z){for(let X=0;X<Z.length;X++){let[Q,U]=Z[X];if(Q==="default"){if(X!==Z.length-1)M("default may only be specified as the last key of a switch definition");return this.default(U)}if(typeof U!=="function")return M(`Value for case "${Q}" must be a function (was ${G0(U)})`);this.caseEntry(Q,U)}return this}default(Z){if(typeof Z==="function")this.case(f.unknown,Z);let X={branches:this.branches,ordered:!0};if(Z==="never"||Z==="assert")X.meta={onFail:i5};let Q=this.$.node("union",X);if(!this.in)return this.$.finalize(Q);let U=this.in.pipe(Q);if(Z==="never"||Z==="assert")U=U.configureReferences({onFail:i5},"self");return this.$.finalize(U)}}});var W9=(Z,X)=>{if(n(Z)){if(Z[1]==="=")return[X.$.parseOwnDefinitionFormat(Z[0],X),"=",Z[2]];if(Z[1]==="?")return[X.$.parseOwnDefinitionFormat(Z[0],X),"?"]}return $9(Z,X)},a5="Only required keys may make their values optional, e.g. { [mySymbol]: ['number', '?'] }",r5="Only required keys may specify default values, e.g. { value: 'number = 0' }";var QX=R(()=>{b();UX()});var o5=(Z,X)=>{let Q,U={},q=r1(Z);for(let[Y,W]of q){let $=AL(Y);if($.kind==="spread"){if(!Z1(U))return M(wL);let H=X.$.parseOwnDefinitionFormat(W,X);if(H.equals(f.object))continue;if(!H.hasKind("intersection")||!H.basis?.equals(f.object))return M(SL(H.expression));Q=H.structure;continue}if($.kind==="undeclared"){if(W!=="reject"&&W!=="delete"&&W!=="ignore")M(PL(W));U.undeclared=W;continue}let L=W9(W,X),V=$;if($.kind==="required"){if(!n(L))qX(U,"required",{key:$.normalized,value:L},X);else qX(U,"optional",L[1]==="="?{key:$.normalized,value:L[0],default:L[2]}:{key:$.normalized,value:L[0]},X);continue}if(n(L)){if(L[1]==="?")M(a5);if(L[1]==="=")M(r5)}if($.kind==="optional"){qX(U,"optional",{key:$.normalized,value:L},X);continue}let G=X.$.parseOwnDefinitionFormat(V.normalized,X),_=r4(G,L,X.$);if(_.index)U.index=m(U.index,_.index);if(_.required)U.required=m(U.required,_.required)}let J=X.$.node("structure",U);return X.$.parseSchema({domain:"object",structure:Q?.merge(J)??J})},qX=(Z,X,Q,U)=>{Z[X]=m(Z[X],U.$.node(X,Q))},PL=(Z)=>`Value of '+' key must be 'reject', 'delete', or 'ignore' (was ${g(Z)})`,wL="Spread operator may only be used as the first key in an object",AL=(Z)=>typeof Z==="symbol"?{kind:"required",normalized:Z}:Z[Z.length-1]==="?"?Z[Z.length-2]===t1?{kind:"required",normalized:`${Z.slice(0,-2)}?`}:{kind:"optional",normalized:Z.slice(0,-1)}:Z[0]==="["&&Z[Z.length-1]==="]"?{kind:"index",normalized:Z.slice(1,-1)}:Z[0]===t1&&Z[1]==="["&&Z[Z.length-1]==="]"?{kind:"required",normalized:Z.slice(1)}:Z==="..."?{kind:"spread"}:Z==="+"?{kind:"undeclared"}:{kind:"required",normalized:Z==="\\..."?"...":Z==="\\+"?"+":Z},SL=(Z)=>`Spread operand must resolve to an object literal type (was ${Z})`;var n5=R(()=>{W0();b();QX()});var e5=(Z,X)=>gL(Z)?U7[Z[0]](Z,X):yL(Z)?Q7[Z[1]](Z,X):null,jL=(Z,X)=>X.$.parseOwnDefinitionFormat(Z[1],X).keyof(),JX=(Z,X)=>{if(Z[2]===void 0)return M(c8(Z[1],""));let Q=X.$.parseOwnDefinitionFormat(Z[0],X),U=X.$.parseOwnDefinitionFormat(Z[2],X);if(Z[1]==="|")return X.$.node("union",{branches:[Q,U]});let q=Z[1]==="&"?N0(Q,U,X.$):j6(Q,U,X.$);if(q instanceof j)return q.throw();return q},CL=(Z,X)=>X.$.parseOwnDefinitionFormat(Z[0],X).array(),NL=(Z,X)=>{if(typeof Z[2]!=="function")return M(Z7("=>",Z[2]));return X.$.parseOwnDefinitionFormat(Z[0],X).pipe(Z[2])},Z7=(Z,X)=>`${Z===":"?"Narrow":"Morph"} expression requires a function following '${Z}' (was ${typeof X})`,EL=(Z,X)=>{if(typeof Z[2]!=="function")return M(Z7(":",Z[2]));return X.$.parseOwnDefinitionFormat(Z[0],X).constrain("predicate",Z[2])},bL=(Z,X)=>X.$.parseOwnDefinitionFormat(Z[0],X).configure(Z[2],Z[3]),X7=(Z)=>Z,IL,fL,Q7,yL=(Z)=>Q7[Z[1]]!==void 0,kL=(Z)=>Z,U7,gL=(Z)=>U7[Z[0]]!==void 0,t5=(Z)=>`Expected a constructor following 'instanceof' operator (was ${Z})`;var q7=R(()=>{W0();b();d8();IL=X7({"[]":CL,"?":()=>M(Z9)}),fL=X7({"|":JX,"&":JX,":":EL,"=>":NL,"|>":JX,"@":bL,"=":()=>M(X9)}),Q7={...IL,...fL},U7=kL({keyof:jL,instanceof:(Z,X)=>{if(typeof Z[1]!=="function")return M(t5(z6(Z[1])));let Q=Z.slice(1).map((U)=>typeof U==="function"?X.$.node("proto",{proto:U}):M(t5(z6(U))));return Q.length===1?Q[0]:X.$.node("union",{branches:Q})},"===":(Z,X)=>X.$.units(Z.slice(1))})});var W7=(Z,X)=>{let Q=[{}],U=0;while(U<Z.length){let q=!1;if(Z[U]==="..."&&U<Z.length-1)q=!0,U++;let J=W9(Z[U],X),[Y,W,$]=!n(J)?[J]:J;if(U++,q){if(!Y.extends(T.intrinsic.Array))return M(hL(Y.expression));Q=Q.flatMap((L)=>Y.distribute((V)=>xL(y4(L),V)))}else Q=Q.map((L)=>{if(W==="?")return $7(L,Y);if(W==="=")return vL(L,Y,$);return YX(L,Y)})}return X.$.parseSchema(Q.map((q)=>Z1(q)?{proto:Array,exactLength:0}:{proto:Array,sequence:q}))},YX=(Z,X)=>{if(Z.defaultables||Z.optionals)return M(Z.variadic?S8:mL);if(Z.variadic)Z.postfix=m(Z.postfix,X);else Z.prefix=m(Z.prefix,X);return Z},$7=(Z,X)=>{if(Z.variadic)return M(L7);return Z.optionals=m(Z.optionals,X),Z},vL=(Z,X,Q)=>{if(Z.variadic)return M(L7);if(Z.optionals)return M(uL);return Z.defaultables=m(Z.defaultables,[[X,Q]]),Z},J7=(Z,X)=>{if(Z.postfix)M(Y7);if(Z.variadic){if(!Z.variadic.equals(X))M(Y7)}else Z.variadic=X.internal;return Z},xL=(Z,X)=>{let Q=X.select({method:"find",kind:"sequence"});if(!Q)return J7(Z,T.intrinsic.unknown);if(Q.prefix)for(let U of Q.prefix)YX(Z,U);if(Q.optionals)for(let U of Q.optionals)$7(Z,U);if(Q.variadic)J7(Z,Q.variadic);if(Q.postfix)for(let U of Q.postfix)YX(Z,U);return Z},hL=(Z)=>`Spread element must be an array (was ${Z})`,Y7="A tuple may have at most one variadic element",mL="A required element may not follow an optional element",L7="An optional element may not follow a variadic element",uL="A defaultable element may not follow an optional element without a default";var G7=R(()=>{W0();b();QX()});var pL,$9=(Z,X)=>{if(typeof Z==="string"){if(X.args&&Object.keys(X.args).some((U)=>Z.includes(U)))return n8(Z,X);let Q=pL[X.$.name]??={};return Q[Z]??=n8(Z,X)}return P0(Z,"object")?lL(Z,X):M(WX(G0(Z)))},lL=(Z,X)=>{let Q=_6(Z);switch(Q){case void 0:if(I(Z,"root"))return Z;if("~standard"in Z)return cL(Z,X);return o5(Z,X);case"Array":return dL(Z,X);case"RegExp":return X.$.node("intersection",{domain:"string",pattern:Z},{prereduced:!0});case"Function":{let U=D1(Z)?Z():Z;if(I(U,"root"))return U;return M(WX("Function"))}default:return M(WX(Q??g(Z)))}},cL=(Z,X)=>X.$.intrinsic.unknown.pipe((Q,U)=>{let q=Z["~standard"].validate(Q);if(!q.issues)return q.value;for(let{message:J,path:Y}of q.issues)if(Y)if(Y.length)U.error({problem:SQ(J),relativePath:Y.map((W)=>typeof W==="object"?W.key:W)});else U.error({message:J});else U.error({message:J})}),dL=(Z,X)=>e5(Z,X)??W7(Z,X),WX=(Z)=>`Type definitions must be strings or objects (was ${Z})`;var UX=R(()=>{W0();b();n5();J9();q7();G7();pL={}});var $X;var LX=R(()=>{W0();b();$X=class $X extends S0{constructor(Z){let X=Object.assign({errors:j0,hkt:M0,$:Z,raw:Z.parse,module:Z.constructor.module,scope:Z.constructor.scope,declare:Z.declare,define:Z.define,match:Z.match,generic:Z.generic,schema:Z.schema,keywords:Z.ambient,unit:Z.unit,enumerated:Z.enumerated,instanceOf:Z.instanceOf,valueOf:Z.valueOf,or:Z.or,and:Z.and,merge:Z.merge,pipe:Z.pipe,fn:Z.fn},Z.ambientAttachments);super((...Q)=>{if(Q.length===1)return Z.parse(Q[0]);if(Q.length===2&&typeof Q[0]==="string"&&Q[0][0]==="<"&&Q[0][Q[0].length-1]===">"){let U=Q[0].slice(1,-1),q=Z.parseGenericParams(U,{});return new N1(q,Q[1],Z,Z,null)}return Z.parse(Q)},{attach:X})}}});var u2,L9,u6,h;var a0=R(()=>{W0();b();d5();e8();s5();UX();LX();u2=T;L9=class L9 extends o4{get ambientAttachments(){if(!u2.typeAttachments)return;return this.cacheGetter("ambientAttachments",k(u2.typeAttachments,(Z,X)=>[Z,this.bindReference(X)]))}preparseOwnAliasEntry(Z,X){let Q=Z.indexOf("<");if(Q===-1){if(I(X,"module")||I(X,"generic"))return[Z,X];let J=this.name==="ark"?Z:Z==="root"?this.name:`${this.name}.${Z}`,Y=this.resolvedConfig.keywords?.[J];if(Y)X=[X,"@",Y];return[Z,X]}if(Z[Z.length-1]!==">")M("'>' must be the last character of a generic declaration in a scope");let U=Z.slice(0,Q),q=Z.slice(Q+1,-1);return[U,()=>{let J=this.parseGenericParams(q,{alias:U});return JU(J,X,this)}]}parseGenericParams(Z,X){return Y9(new K6(Z),[],this.createParseContext({...X,def:Z,prefix:"generic"}))}normalizeRootScopeValue(Z){if(D1(Z)&&!I(Z,"generic"))return Z();return Z}preparseOwnDefinitionFormat(Z,X){return{...X,def:Z,prefix:X.alias??"type"}}parseOwnDefinitionFormat(Z,X){if(!(X.alias&&(X.alias in this.aliases))&&!X.args)X.args={this:X.id};let U=$9(Z,X);if(n(U)){if(U[1]==="=")return M(X9);if(U[1]==="?")return M(Z9)}return U}unit=(Z)=>this.units([Z]);valueOf=(Z)=>this.units(GQ(Z));enumerated=(...Z)=>this.units(Z);instanceOf=(Z)=>this.node("proto",{proto:Z},{prereduced:!0});or=(...Z)=>this.schema(Z.map((X)=>this.parse(X)));and=(...Z)=>Z.reduce((X,Q)=>X.and(this.parse(Q)),this.intrinsic.unknown);merge=(...Z)=>Z.reduce((X,Q)=>X.merge(this.parse(Q)),this.intrinsic.object);pipe=(...Z)=>this.intrinsic.unknown.pipe(...Z);fn=new ZX(this);match=new XX(this);declare=()=>({type:this.type});define(Z){return Z}type=new $X(this);static scope=(Z,X={})=>new L9(Z,X);static module=(Z,X={})=>this.scope(Z,X).export()};u6=Object.assign(L9.scope,{define:(Z)=>Z}),h=L9});var V7,iL,_7;var z7=R(()=>{W0();b();a0();V7=class V7 extends M0{description='merge an object\'s properties onto another like `Merge(User, { isAdmin: "true" })`'};iL=h0(["base",f.object],["props",f.object])((Z)=>Z.base.merge(Z.props),V7),_7=h.module({Key:f.key,Merge:iL})});var H7,sL,F7;var B7=R(()=>{W0();b();a0();H7=class H7 extends M0{};sL=h0("element")((Z)=>{let X=Z.element.exclude(f.Array),Q=X.array();return X.rawOr(Q).pipe(K1).distribute((U)=>U.assertHasKind("morph").declareOut(Q),a)},H7),F7=h.module({root:f.Array,readonly:"root",index:f.nonNegativeIntegerString,liftFrom:sL},{name:"Array"})});var GX,aL,M7,R7;var O7=R(()=>{W0();b();a0();GX=a(["string",e1.FileConstructor]),aL=GX.rawOr(GX.array()),M7=a({meta:"an object representing parsed form data",domain:"object",index:{signature:"string",value:aL}}),R7=h.module({root:["instanceof",FormData],value:GX,parsed:M7,parse:a({in:FormData,morphs:(Z)=>{let X={};for(let[Q,U]of Z)if(Q in X){let q=X[Q];if(typeof q==="string"||q instanceof e1.FileConstructor)X[Q]=[q,U];else q.push(U)}else X[Q]=U;return X},declaredOut:M7})},{name:"FormData"})});var T7;var K7=R(()=>{a0();T7=h.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 rL,D7;var P7=R(()=>{b();a0();B7();O7();K7();rL={Boolean:1,Number:1,String:1},D7=h.module({...k({...BZ,...RZ},(Z,X)=>(Z in rL)?[]:[Z,["instanceof",X]]),Array:F7,TypedArray:T7,FormData:R7})});var oL,nL,G9;var VX=R(()=>{W0();a0();oL=a({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"}),nL=a({domain:"number",divisor:1}),G9=h.module({root:f.number,integer:nL,epoch:oL,safe:a({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 Q0=(Z,X,Q)=>{let U={domain:"string",pattern:{rule:Z.source,flags:Z.flags,meta:X}};if(Q)U.meta={format:Q};return v2("intersection",U)},w7,g7,tL,eL,A7,ZG,XG=(Z)=>{let X=Z.replace(/[ -]+/g,""),Q=0,U,q,J=!1;for(let Y=X.length-1;Y>=0;Y--){if(U=X.substring(Y,Y+1),q=Number.parseInt(U,10),J)q*=2,Q+=q>=10?q%10+1:q;else Q+=q;J=!J}return!!(Q%10===0?X:!1)},QG,UG,qG,JG=(Z)=>!Number.isNaN(new Date(Z).valueOf()),S7,j7,YG,C7,WG,$G,LG,N7="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",b1,GG,$0="(?:[0-9a-fA-F]{1,4})",VG,_G,p2="a JSON string",v7=(Z)=>{if(!(Z instanceof SyntaxError))throw Z;return`must be ${p2} (${Z})`},zG,HG=(Z,X)=>{if(Z.length===0)return X.error({code:"predicate",expected:p2,actual:"empty"});try{return JSON.parse(Z)}catch(Q){return X.error({code:"predicate",expected:p2,problem:v7(Q)})}},FG,E7,BG,x7,p6,V9,MG,RG,OG,TG,KG,b7,DG,I7="a regex pattern",PG,wG,AG,f7,SG,y7,jG,CG=(Z)=>URL.canParse(Z),k7,NG,EG,h7;var m7=R(()=>{W0();b();a0();VX();w7=Q0(B6,"a well-formed integer string"),g7=h.module({root:w7,parse:a({in:w7,morphs:(Z,X)=>{let Q=Number.parseInt(Z);return Number.isSafeInteger(Q)?Q:X.error("an integer in the range Number.MIN_SAFE_INTEGER to Number.MAX_SAFE_INTEGER")},declaredOut:f.integer})},{name:"string.integer"}),tL=Q0(/^[\dA-Fa-f]+$/,"hex characters only"),eL=h.module({root:Q0(/^(?:[\d+/A-Za-z]{4})*(?:[\d+/A-Za-z]{2}==|[\d+/A-Za-z]{3}=)?$/,"base64-encoded"),url:Q0(/^(?:[\w-]{4})*(?:[\w-]{2}(?:==|%3D%3D)?|[\w-]{3}(?:=|%3D)?)?$/,"base64url-encoded")},{name:"string.base64"}),A7=Q0(/^[A-Z].*$/,"capitalized"),ZG=h.module({root:a({in:"string",morphs:(Z)=>Z.charAt(0).toUpperCase()+Z.slice(1),declaredOut:A7}),preformatted:A7},{name:"string.capitalize"}),QG=/^(?: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}))$/,UG=a({domain:"string",pattern:{meta:"a credit card number",rule:QG.source},predicate:{meta:"a credit card number",predicate:XG}}),qG=/^([+-]?\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)?)?)?)?$/,S7=a({domain:"string",predicate:{meta:"a parsable date",predicate:JG}}).assertHasKind("intersection"),j7=g7.root.internal.narrow((Z,X)=>{let Q=Number.parseInt(Z),U=G9.epoch(Q);if(U instanceof j0)return X.errors.merge(U),!1;return!0}).configure({description:"an integer string representing a safe Unix timestamp"},"self").assertHasKind("intersection"),YG=h.module({root:j7,parse:a({in:j7,morphs:(Z)=>new Date(Z),declaredOut:f.Date})},{name:"string.date.epoch"}),C7=Q0(qG,"an ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ) date").internal.assertHasKind("intersection"),WG=h.module({root:C7,parse:a({in:C7,morphs:(Z)=>new Date(Z),declaredOut:f.Date})},{name:"string.date.iso"}),$G=h.module({root:S7,parse:a({declaredIn:S7,in:"string",morphs:(Z,X)=>{let Q=new Date(Z);if(Number.isNaN(Q.valueOf()))return X.error("a parsable date");return Q},declaredOut:f.Date}),iso:WG,epoch:YG},{name:"string.date"}),LG=Q0(/^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$/,"an email address","email"),b1=`(${N7}[.]){3}${N7}`,GG=new RegExp(`^${b1}$`),VG=new RegExp(`^((?:${$0}:){7}(?:${$0}|:)|(?:${$0}:){6}(?:${b1}|:${$0}|:)|(?:${$0}:){5}(?::${b1}|(:${$0}){1,2}|:)|(?:${$0}:){4}(?:(:${$0}){0,1}:${b1}|(:${$0}){1,3}|:)|(?:${$0}:){3}(?:(:${$0}){0,2}:${b1}|(:${$0}){1,4}|:)|(?:${$0}:){2}(?:(:${$0}){0,3}:${b1}|(:${$0}){1,5}|:)|(?:${$0}:){1}(?:(:${$0}){0,4}:${b1}|(:${$0}){1,6}|:)|(?::((?::${$0}){0,5}:${b1}|(?::${$0}){1,7}|:)))(%[0-9a-zA-Z.]{1,})?$`),_G=h.module({root:["v4 | v6","@","an IP address"],v4:Q0(GG,"an IPv4 address","ipv4"),v6:Q0(VG,"an IPv6 address","ipv6")},{name:"string.ip"}),zG=a({meta:p2,domain:"string",predicate:{meta:p2,predicate:(Z,X)=>{try{return JSON.parse(Z),!0}catch(Q){return X.reject({code:"predicate",expected:p2,problem:v7(Q)})}}}}),FG=h.module({root:zG,parse:a({meta:"safe JSON string parser",in:"string",morphs:HG,declaredOut:f.jsonObject})},{name:"string.json"}),E7=Q0(/^[a-z]*$/,"only lowercase letters"),BG=h.module({root:a({in:"string",morphs:(Z)=>Z.toLowerCase(),declaredOut:E7}),preformatted:E7},{name:"string.lower"}),x7=["NFC","NFD","NFKC","NFKD"],p6=k(x7,(Z,X)=>[X,a({domain:"string",predicate:(Q)=>Q.normalize(X)===Q,meta:`${X}-normalized unicode`})]),V9=k(x7,(Z,X)=>[X,a({in:"string",morphs:(Q)=>Q.normalize(X),declaredOut:p6[X]})]),MG=h.module({root:V9.NFC,preformatted:p6.NFC},{name:"string.normalize.NFC"}),RG=h.module({root:V9.NFD,preformatted:p6.NFD},{name:"string.normalize.NFD"}),OG=h.module({root:V9.NFKC,preformatted:p6.NFKC},{name:"string.normalize.NFKC"}),TG=h.module({root:V9.NFKD,preformatted:p6.NFKD},{name:"string.normalize.NFKD"}),KG=h.module({root:"NFC",NFC:MG,NFD:RG,NFKC:OG,NFKD:TG},{name:"string.normalize"}),b7=Q0(N4,"a well-formed numeric string"),DG=h.module({root:b7,parse:a({in:b7,morphs:(Z)=>Number.parseFloat(Z),declaredOut:f.number})},{name:"string.numeric"}),PG=a({domain:"string",predicate:{meta:I7,predicate:(Z,X)=>{try{return new RegExp(Z),!0}catch(Q){return X.reject({code:"predicate",expected:I7,problem:String(Q)})}}},meta:{format:"regex"}}),wG=/^(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-]+)*))?$/,AG=Q0(wG,"a semantic version (see https://semver.org/)"),f7=Q0(/^\S.*\S$|^\S?$/,"trimmed"),SG=h.module({root:a({in:"string",morphs:(Z)=>Z.trim(),declaredOut:f7}),preformatted:f7},{name:"string.trim"}),y7=Q0(/^[A-Z]*$/,"only uppercase letters"),jG=h.module({root:a({in:"string",morphs:(Z)=>Z.toUpperCase(),declaredOut:y7}),preformatted:y7},{name:"string.upper"}),k7=a({domain:"string",predicate:{meta:"a URL string",predicate:CG},meta:{format:"uri"}}),NG=h.module({root:k7,parse:a({declaredIn:k7,in:"string",morphs:(Z,X)=>{try{return new URL(Z)}catch{return X.error("a URL string")}},declaredOut:a(URL)})},{name:"string.url"}),EG=h.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:Q0(/^[\da-f]{8}-[\da-f]{4}-1[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv1"),v2:Q0(/^[\da-f]{8}-[\da-f]{4}-2[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv2"),v3:Q0(/^[\da-f]{8}-[\da-f]{4}-3[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv3"),v4:Q0(/^[\da-f]{8}-[\da-f]{4}-4[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv4"),v5:Q0(/^[\da-f]{8}-[\da-f]{4}-5[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv5"),v6:Q0(/^[\da-f]{8}-[\da-f]{4}-6[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv6"),v7:Q0(/^[\da-f]{8}-[\da-f]{4}-7[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv7"),v8:Q0(/^[\da-f]{8}-[\da-f]{4}-8[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv8")},{name:"string.uuid"}),h7=h.module({root:f.string,alpha:Q0(/^[A-Za-z]*$/,"only letters"),alphanumeric:Q0(/^[\dA-Za-z]*$/,"only letters and digits 0-9"),hex:tL,base64:eL,capitalize:ZG,creditCard:UG,date:$G,digits:Q0(/^\d*$/,"only digits 0-9"),email:LG,integer:g7,ip:_G,json:FG,lower:BG,normalize:KG,numeric:DG,regex:PG,semver:AG,trim:SG,upper:jG,url:NG,uuid:EG},{name:"string"})});var u7,p7,bG,l7,c7,IG,d7,fG,i7,yG,s7,kG,a7,gG,r7,vG,o7,xG,n7;var t7=R(()=>{W0();b();a0();u7=h.module({bigint:f.bigint,boolean:f.boolean,false:f.false,never:f.never,null:f.null,number:f.number,object:f.object,string:f.string,symbol:f.symbol,true:f.true,unknown:f.unknown,undefined:f.undefined}),p7=h.module({root:f.unknown,any:f.unknown},{name:"unknown"}),bG=h.module({root:f.jsonObject,stringify:v2("morph",{in:f.jsonObject,morphs:(Z)=>JSON.stringify(Z),declaredOut:f.string})},{name:"object.json"}),l7=h.module({root:f.object,json:bG},{name:"object"});c7=class c7 extends M0{description='instantiate an object from an index signature and corresponding value type like `Record("string", "number")`'};IG=h0(["K",f.key],"V")((Z)=>({domain:"object",index:{signature:Z.K,value:Z.V}}),c7);d7=class d7 extends M0{description='pick a set of properties from an object like `Pick(User, "name | age")`'};fG=h0(["T",f.object],["K",f.key])((Z)=>Z.T.pick(Z.K),d7);i7=class i7 extends M0{description='omit a set of properties from an object like `Omit(User, "age")`'};yG=h0(["T",f.object],["K",f.key])((Z)=>Z.T.omit(Z.K),i7);s7=class s7 extends M0{description="make all named properties of an object optional like `Partial(User)`"};kG=h0(["T",f.object])((Z)=>Z.T.partial(),s7);a7=class a7 extends M0{description="make all named properties of an object required like `Required(User)`"};gG=h0(["T",f.object])((Z)=>Z.T.required(),a7);r7=class r7 extends M0{description='exclude branches of a union like `Exclude("boolean", "true")`'};vG=h0("T","U")((Z)=>Z.T.exclude(Z.U),r7);o7=class o7 extends M0{description='extract branches of a union like `Extract("0 | false | 1", "number")`'};xG=h0("T","U")((Z)=>Z.T.extract(Z.U),o7),n7=h.module({Exclude:vG,Extract:xG,Omit:yG,Partial:kG,Pick:fG,Record:IG,Required:gG})});var B1,_0,r0,hG,mG,uG,Qb,pG,lG;var e7=R(()=>{a0();z7();P7();VX();m7();t7();B1=u6({...u7,...n7,...D7,..._7,string:h7,number:G9,object:l7,unknown:p7},{prereducedAliases:!0,name:"ark"}),_0=B1.export();Object.assign(u2.ambient,_0);u2.typeAttachments={string:_0.string.root,number:_0.number.root,bigint:_0.bigint,boolean:_0.boolean,symbol:_0.symbol,undefined:_0.undefined,null:_0.null,object:_0.object.root,unknown:_0.unknown.root,false:_0.false,true:_0.true,never:_0.never,arrayIndex:_0.Array.index,Key:_0.Key,Record:_0.Record,Array:_0.Array.root,Date:_0.Date};r0=Object.assign(B1.type,u2.typeAttachments),hG=B1.match,mG=B1.fn,uG=B1.generic,Qb=B1.schema,pG=B1.define,lG=B1.declare});var Zq=R(()=>{W0()});var _X=R(()=>{W0();b();z5();e8();e7();Zq();a0();LX();H5()});class K0{static evaluate(Z,X){if(Z===null||Z===void 0)return console.error(`Error evaluating expression: ${Z}`),null;try{if(Z.includes("${")){let Q=this.interpolate(Z,X);if(!isNaN(Number(Q))&&Q.trim()!=="")return Number(Q);return Q}return this.evaluateExpression(Z,X)}catch(Q){return console.error(`Error evaluating expression: ${Z}`,Q),null}}static interpolate(Z,X){return Z.replace(_9.TEMPLATE_INTERPOLATION,(Q,U)=>{try{let q=this.evaluateExpression(U,X);if(q===void 0||q===null)return"undefined";return String(q)}catch(q){return console.error(`Error in interpolation: ${Q}`,q),Q}})}static evaluateMathExpression(Z){try{return Function("Math",`return ${Z}`)(Math)}catch(X){throw Error(`Error evaluating mathematical expression: ${Z}`)}}static evaluateExpression(Z,X){if(_9.NESTED_PROPERTY_ACCESS.test(Z))return this.getNestedValue(Z,X);if(_9.SINGLE_LEVEL_ACCESS.test(Z))return this.getNestedValue(Z,X);try{return Function("context","with(context) { return "+Z+" }")(X)}catch(Q){return console.error(`ERROR evaluating expression '${Z}':`,Q),Z}}static getNestedValue(Z,X){let Q=Z.split("."),U=X;for(let q of Q){if(U===null||U===void 0||typeof U!=="object"||!(q in U))return;U=U[q]}return U}static findVariableInContext(Z,X){let Q=this.getNestedValue(Z,X);if(Q!==void 0)return Q;for(let U of Xq){let q=`${U}.${Z}`,J=this.getNestedValue(q,X);if(J!==void 0)return J}return}static evaluateMath(Z,X){let Q=Z;Q=Q.replace(/\b(data|vars|env|state|request|computed)(\.[a-zA-Z_][a-zA-Z0-9_]*)+/g,(U)=>{let q=this.getNestedValue(U,X);if(q!==void 0)return typeof q==="string"?`"${q}"`:String(q);return U}),Q=Q.replace(_9.WORD_BOUNDARY,(U)=>{if(dG.includes(U))return U;if(Xq.has(U))return U;let q=this.findVariableInContext(U,X);if(q!==void 0)return typeof q==="string"?`"${q}"`:String(q);return U});try{return this.evaluateMathExpression(Q)}catch(U){return console.error(`Error in mathematical evaluation: ${Z}`,U),NaN}}}var cG,Xq,m0,dG,_9;var l6=R(()=>{cG={DATA:"data",VARS:"vars",REQUEST:"request",COMPUTED:"computed",ENV:"env",EVENT:"event",TIMESTAMP:"timestamp"},Xq=new Set(Object.values(cG)),m0={RANDOM:"random",FLOOR:"floor",CEIL:"ceil",ROUND:"round",SQRT:"sqrt",ABS:"abs",POW:"pow",MIN:"min",MAX:"max",SIN:"sin",COS:"cos",TAN:"tan"},dG=[m0.RANDOM,m0.FLOOR,m0.CEIL,m0.ROUND,m0.SQRT,m0.ABS,m0.POW,m0.MIN,m0.MAX,m0.SIN,m0.COS,m0.TAN],_9={TEMPLATE_INTERPOLATION:/\$\{([^}]+)\}/g,NESTED_PROPERTY_ACCESS:/^(data|vars|request|computed|env|state)(\.[a-zA-Z0-9_]+)+$/,SINGLE_LEVEL_ACCESS:/^(vars|env|state)(\.[a-zA-Z0-9_]+)$/,WORD_BOUNDARY:/\b[a-zA-Z_][a-zA-Z0-9_]*\b/g}});var zX={};lY(zX,{BuiltInAction:()=>U2,ActionRegistry:()=>c6});class c6{static instance;actions=new Map;constructor(Z=!0){if(Z)this.registerDefaults()}static getInstance(Z=!0){if(!this.instance)this.instance=new c6(Z);return this.instance}register(Z,X){let Q=Z.toUpperCase();if(typeof X==="function")this.actions.set(Q,{handler:X});else this.actions.set(Q,X)}get(Z){return this.actions.get(Z.toUpperCase())?.handler}getDefinition(Z){return this.actions.get(Z.toUpperCase())}getDefinitions(){let Z={};return this.actions.forEach((X,Q)=>{Z[Q]=X}),Z}get Handlers(){let Z=new Map;return this.actions.forEach((X,Q)=>{Z.set(Q,X.handler)}),Z}registerDefaults(){this.register(U2.LOG,{description:"Logs a message to the console with string interpolation support",params:r0({"message?":"string","content?":"string"}),returns:r0({message:"string"}),handler:(Z,X)=>{let Q=Z.params?.message||Z.params?.content||"Log Trigger",U=typeof Q==="string"?K0.interpolate(Q,X):String(Q);return console.log(`[TriggerLog] ${U}`),{message:U}}}),this.register(U2.MATH,{description:"Evaluates a mathematical expression or performs string concatenation",params:r0({expression:"string"}),returns:r0("number | string"),handler:(Z,X)=>{let Q=String(Z.params?.expression||"0");return K0.evaluate(Q,X)}}),this.register(U2.FORWARD,Qq),this.register(U2.FETCH,Qq)}}var U2,iG=async(Z,X)=>{let Q=Z.params?.url||"",U=typeof Q==="string"?K0.interpolate(Q,X):String(Q),q=String(Z.params?.method||"POST").toUpperCase();if(Z.params?.query&&typeof Z.params.query==="object"){let L=new URLSearchParams;for(let[G,_]of Object.entries(Z.params.query))if(_!==void 0&&_!==null){let H=typeof _==="string"?K0.interpolate(_,X):typeof _==="object"?JSON.stringify(_):String(_);L.append(G,H)}let V=L.toString();if(V)U+=(U.includes("?")?"&":"?")+V}let Y=["POST","PUT","PATCH"].includes(q),{bodyContent:W,defaultContentType:$}=(()=>{if(!Y||Z.params?.body==null)return{bodyContent:Y?JSON.stringify(X.data):void 0,defaultContentType:"application/json"};let L=Z.params.body;if(typeof L==="string"){let V=K0.interpolate(L,X),G=V.trimStart().startsWith("{")||V.trimStart().startsWith("[");return{bodyContent:V,defaultContentType:G?"application/json":"text/plain"}}return{bodyContent:JSON.stringify(L),defaultContentType:"application/json"}})();try{let L=await fetch(U,{method:q,headers:{"Content-Type":$,...typeof Z.params?.headers==="object"&&Z.params.headers!==null&&!Array.isArray(Z.params.headers)?Z.params.headers:{}},...Y&&W!==void 0?{body:W}:{}});return{url:U,method:q,status:L.status,headers:(()=>{let V={};return L.headers.forEach((G,_)=>V[_]=G),V})(),body:await L.text()}}catch(L){return{url:U,method:q,error:String(L)}}},Qq;var l2=R(()=>{_X();l6();U2={LOG:"LOG",MATH:"MATH",FORWARD:"FORWARD",FETCH:"FETCH",EMIT_EVENT:"EMIT_EVENT"},Qq={description:"Forwards the current event data to a remote URL via HTTP",params:r0({url:"string","method?":"'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'","query?":"Record<string, unknown>","headers?":"Record<string, string>","body?":"string | Record<string, unknown>"}),returns:r0({url:"string",method:"string",status:"number",headers:"Record<string, string>",body:"string"}).or(r0({url:"string",method:"string",error:"string"})),handler:iG}});var d=C((HV)=>{var NX=Symbol.for("yaml.alias"),Mq=Symbol.for("yaml.document"),K9=Symbol.for("yaml.map"),Rq=Symbol.for("yaml.pair"),EX=Symbol.for("yaml.scalar"),D9=Symbol.for("yaml.seq"),R1=Symbol.for("yaml.node.type"),WV=(Z)=>!!Z&&typeof Z==="object"&&Z[R1]===NX,$V=(Z)=>!!Z&&typeof Z==="object"&&Z[R1]===Mq,LV=(Z)=>!!Z&&typeof Z==="object"&&Z[R1]===K9,GV=(Z)=>!!Z&&typeof Z==="object"&&Z[R1]===Rq,Oq=(Z)=>!!Z&&typeof Z==="object"&&Z[R1]===EX,VV=(Z)=>!!Z&&typeof Z==="object"&&Z[R1]===D9;function Tq(Z){if(Z&&typeof Z==="object")switch(Z[R1]){case K9:case D9:return!0}return!1}function _V(Z){if(Z&&typeof Z==="object")switch(Z[R1]){case NX:case K9:case EX:case D9:return!0}return!1}var zV=(Z)=>(Oq(Z)||Tq(Z))&&!!Z.anchor;HV.ALIAS=NX;HV.DOC=Mq;HV.MAP=K9;HV.NODE_TYPE=R1;HV.PAIR=Rq;HV.SCALAR=EX;HV.SEQ=D9;HV.hasAnchor=zV;HV.isAlias=WV;HV.isCollection=Tq;HV.isDocument=$V;HV.isMap=LV;HV.isNode=_V;HV.isPair=GV;HV.isScalar=Oq;HV.isSeq=VV});var t6=C((bV)=>{var H0=d(),b0=Symbol("break visit"),Kq=Symbol("skip children"),W1=Symbol("remove node");function P9(Z,X){let Q=Dq(X);if(H0.isDocument(Z)){if(i2(null,Z.contents,Q,Object.freeze([Z]))===W1)Z.contents=null}else i2(null,Z,Q,Object.freeze([]))}P9.BREAK=b0;P9.SKIP=Kq;P9.REMOVE=W1;function i2(Z,X,Q,U){let q=Pq(Z,X,Q,U);if(H0.isNode(q)||H0.isPair(q))return wq(Z,U,q),i2(Z,q,Q,U);if(typeof q!=="symbol"){if(H0.isCollection(X)){U=Object.freeze(U.concat(X));for(let J=0;J<X.items.length;++J){let Y=i2(J,X.items[J],Q,U);if(typeof Y==="number")J=Y-1;else if(Y===b0)return b0;else if(Y===W1)X.items.splice(J,1),J-=1}}else if(H0.isPair(X)){U=Object.freeze(U.concat(X));let J=i2("key",X.key,Q,U);if(J===b0)return b0;else if(J===W1)X.key=null;let Y=i2("value",X.value,Q,U);if(Y===b0)return b0;else if(Y===W1)X.value=null}}return q}async function w9(Z,X){let Q=Dq(X);if(H0.isDocument(Z)){if(await s2(null,Z.contents,Q,Object.freeze([Z]))===W1)Z.contents=null}else await s2(null,Z,Q,Object.freeze([]))}w9.BREAK=b0;w9.SKIP=Kq;w9.REMOVE=W1;async function s2(Z,X,Q,U){let q=await Pq(Z,X,Q,U);if(H0.isNode(q)||H0.isPair(q))return wq(Z,U,q),s2(Z,q,Q,U);if(typeof q!=="symbol"){if(H0.isCollection(X)){U=Object.freeze(U.concat(X));for(let J=0;J<X.items.length;++J){let Y=await s2(J,X.items[J],Q,U);if(typeof Y==="number")J=Y-1;else if(Y===b0)return b0;else if(Y===W1)X.items.splice(J,1),J-=1}}else if(H0.isPair(X)){U=Object.freeze(U.concat(X));let J=await s2("key",X.key,Q,U);if(J===b0)return b0;else if(J===W1)X.key=null;let Y=await s2("value",X.value,Q,U);if(Y===b0)return b0;else if(Y===W1)X.value=null}}return q}function Dq(Z){if(typeof Z==="object"&&(Z.Collection||Z.Node||Z.Value))return Object.assign({Alias:Z.Node,Map:Z.Node,Scalar:Z.Node,Seq:Z.Node},Z.Value&&{Map:Z.Value,Scalar:Z.Value,Seq:Z.Value},Z.Collection&&{Map:Z.Collection,Seq:Z.Collection},Z);return Z}function Pq(Z,X,Q,U){if(typeof Q==="function")return Q(Z,X,U);if(H0.isMap(X))return Q.Map?.(Z,X,U);if(H0.isSeq(X))return Q.Seq?.(Z,X,U);if(H0.isPair(X))return Q.Pair?.(Z,X,U);if(H0.isScalar(X))return Q.Scalar?.(Z,X,U);if(H0.isAlias(X))return Q.Alias?.(Z,X,U);return}function wq(Z,X,Q){let U=X[X.length-1];if(H0.isCollection(U))U.items[Z]=Q;else if(H0.isPair(U))if(Z==="key")U.key=Q;else U.value=Q;else if(H0.isDocument(U))U.contents=Q;else{let q=H0.isAlias(U)?"alias":"scalar";throw Error(`Cannot replace node with ${q} parent`)}}bV.visit=P9;bV.visitAsync=w9});var bX=C((vV)=>{var Aq=d(),yV=t6(),kV={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},gV=(Z)=>Z.replace(/[!,[\]{}]/g,(X)=>kV[X]);class p0{constructor(Z,X){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},p0.defaultYaml,Z),this.tags=Object.assign({},p0.defaultTags,X)}clone(){let Z=new p0(this.yaml,this.tags);return Z.docStart=this.docStart,Z}atDocument(){let Z=new p0(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:p0.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},p0.defaultTags);break}return Z}add(Z,X){if(this.atNextDocument)this.yaml={explicit:p0.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},p0.defaultTags),this.atNextDocument=!1;let Q=Z.trim().split(/[ \t]+/),U=Q.shift();switch(U){case"%TAG":{if(Q.length!==2){if(X(0,"%TAG directive should contain exactly two parts"),Q.length<2)return!1}let[q,J]=Q;return this.tags[q]=J,!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 J=/^\d+\.\d+$/.test(q);return X(6,`Unsupported YAML version ${q}`,J),!1}}default:return X(0,`Unknown directive ${U}`,!0),!1}}tagName(Z,X){if(Z==="!")return"!";if(Z[0]!=="!")return X(`Not a valid tag: ${Z}`),null;if(Z[1]==="<"){let J=Z.slice(2,-1);if(J==="!"||J==="!!")return X(`Verbatim tags aren't resolved, so ${Z} is invalid.`),null;if(Z[Z.length-1]!==">")X("Verbatim tags must end with a >");return J}let[,Q,U]=Z.match(/^(.*!)([^!]*)$/s);if(!U)X(`The ${Z} tag has no suffix`);let q=this.tags[Q];if(q)try{return q+decodeURIComponent(U)}catch(J){return X(String(J)),null}if(Q==="!")return Z;return X(`Could not resolve tag: ${Z}`),null}tagString(Z){for(let[X,Q]of Object.entries(this.tags))if(Z.startsWith(Q))return X+gV(Z.substring(Q.length));return Z[0]==="!"?Z:`!<${Z}>`}toString(Z){let X=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],Q=Object.entries(this.tags),U;if(Z&&Q.length>0&&Aq.isNode(Z.contents)){let q={};yV.visit(Z.contents,(J,Y)=>{if(Aq.isNode(Y)&&Y.tag)q[Y.tag]=!0}),U=Object.keys(q)}else U=[];for(let[q,J]of Q){if(q==="!!"&&J==="tag:yaml.org,2002:")continue;if(!Z||U.some((Y)=>Y.startsWith(J)))X.push(`%TAG ${q} ${J}`)}return X.join(`
47
- `)}}p0.defaultYaml={explicit:!1,version:"1.2"};p0.defaultTags={"!!":"tag:yaml.org,2002:"};vV.Directives=p0});var A9=C((pV)=>{var Sq=d(),hV=t6();function mV(Z){if(/[\x00-\x19\s,[\]{}]/.test(Z)){let Q=`Anchor must not contain whitespace or control characters: ${JSON.stringify(Z)}`;throw Error(Q)}return!0}function jq(Z){let X=new Set;return hV.visit(Z,{Value(Q,U){if(U.anchor)X.add(U.anchor)}}),X}function Cq(Z,X){for(let Q=1;;++Q){let U=`${Z}${Q}`;if(!X.has(U))return U}}function uV(Z,X){let Q=[],U=new Map,q=null;return{onAnchor:(J)=>{Q.push(J),q??(q=jq(Z));let Y=Cq(X,q);return q.add(Y),Y},setAnchors:()=>{for(let J of Q){let Y=U.get(J);if(typeof Y==="object"&&Y.anchor&&(Sq.isScalar(Y.node)||Sq.isCollection(Y.node)))Y.node.anchor=Y.anchor;else{let W=Error("Failed to resolve repeated object (this should not happen)");throw W.source=J,W}}},sourceObjects:U}}pV.anchorIsValid=mV;pV.anchorNames=jq;pV.createNodeAnchors=uV;pV.findNewAnchor=Cq});var IX=C((sV)=>{function e6(Z,X,Q,U){if(U&&typeof U==="object")if(Array.isArray(U))for(let q=0,J=U.length;q<J;++q){let Y=U[q],W=e6(Z,U,String(q),Y);if(W===void 0)delete U[q];else if(W!==Y)U[q]=W}else if(U instanceof Map)for(let q of Array.from(U.keys())){let J=U.get(q),Y=e6(Z,U,q,J);if(Y===void 0)U.delete(q);else if(Y!==J)U.set(q,Y)}else if(U instanceof Set)for(let q of Array.from(U)){let J=e6(Z,U,q,q);if(J===void 0)U.delete(q);else if(J!==q)U.delete(q),U.add(J)}else for(let[q,J]of Object.entries(U)){let Y=e6(Z,U,q,J);if(Y===void 0)delete U[q];else if(Y!==J)U[q]=Y}return Z.call(X,Q,U)}sV.applyReviver=e6});var g1=C((oV)=>{var rV=d();function Nq(Z,X,Q){if(Array.isArray(Z))return Z.map((U,q)=>Nq(U,String(q),Q));if(Z&&typeof Z.toJSON==="function"){if(!Q||!rV.hasAnchor(Z))return Z.toJSON(X,Q);let U={aliasCount:0,count:1,res:void 0};Q.anchors.set(Z,U),Q.onCreate=(J)=>{U.res=J,delete Q.onCreate};let q=Z.toJSON(X,Q);if(Q.onCreate)Q.onCreate(q);return q}if(typeof Z==="bigint"&&!Q?.keep)return Number(Z);return Z}oV.toJS=Nq});var S9=C((Z_)=>{var tV=IX(),Eq=d(),eV=g1();class bq{constructor(Z){Object.defineProperty(this,Eq.NODE_TYPE,{value:Z})}clone(){let Z=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)Z.range=this.range.slice();return Z}toJS(Z,{mapAsMap:X,maxAliasCount:Q,onAnchor:U,reviver:q}={}){if(!Eq.isDocument(Z))throw TypeError("A document argument is required");let J={anchors:new Map,doc:Z,keep:!0,mapAsMap:X===!0,mapKeyWarned:!1,maxAliasCount:typeof Q==="number"?Q:100},Y=eV.toJS(this,"",J);if(typeof U==="function")for(let{count:W,res:$}of J.anchors.values())U($,W);return typeof q==="function"?tV.applyReviver(q,{"":Y},"",Y):Y}}Z_.NodeBase=bq});var Z4=C((Y_)=>{var Q_=A9(),U_=t6(),a2=d(),q_=S9(),J_=g1();class Iq extends q_.NodeBase{constructor(Z){super(a2.ALIAS);this.source=Z,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(Z,X){let Q;if(X?.aliasResolveCache)Q=X.aliasResolveCache;else if(Q=[],U_.visit(Z,{Node:(q,J)=>{if(a2.isAlias(J)||a2.hasAnchor(J))Q.push(J)}}),X)X.aliasResolveCache=Q;let U=void 0;for(let q of Q){if(q===this)break;if(q.anchor===this.source)U=q}return U}toJSON(Z,X){if(!X)return{source:this.source};let{anchors:Q,doc:U,maxAliasCount:q}=X,J=this.resolve(U,X);if(!J){let W=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(W)}let Y=Q.get(J);if(!Y)J_.toJS(J,null,X),Y=Q.get(J);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=j9(U,J,Q);if(Y.count*Y.aliasCount>q)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return Y.res}toString(Z,X,Q){let U=`*${this.source}`;if(Z){if(Q_.anchorIsValid(this.source),Z.options.verifyAliasOrder&&!Z.anchors.has(this.source)){let q=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(q)}if(Z.implicitKey)return`${U} `}return U}}function j9(Z,X,Q){if(a2.isAlias(X)){let U=X.resolve(Z),q=Q&&U&&Q.get(U);return q?q.count*q.aliasCount:0}else if(a2.isCollection(X)){let U=0;for(let q of X.items){let J=j9(Z,q,Q);if(J>U)U=J}return U}else if(a2.isPair(X)){let U=j9(Z,X.key,Q),q=j9(Z,X.value,Q);return Math.max(U,q)}return 1}Y_.Alias=Iq});var L0=C((__)=>{var $_=d(),L_=S9(),G_=g1(),V_=(Z)=>!Z||typeof Z!=="function"&&typeof Z!=="object";class Y2 extends L_.NodeBase{constructor(Z){super($_.SCALAR);this.value=Z}toJSON(Z,X){return X?.keep?this.value:G_.toJS(this.value,Z,X)}toString(){return String(this.value)}}Y2.BLOCK_FOLDED="BLOCK_FOLDED";Y2.BLOCK_LITERAL="BLOCK_LITERAL";Y2.PLAIN="PLAIN";Y2.QUOTE_DOUBLE="QUOTE_DOUBLE";Y2.QUOTE_SINGLE="QUOTE_SINGLE";__.Scalar=Y2;__.isScalarValue=V_});var X4=C((O_)=>{var F_=Z4(),W2=d(),fq=L0(),B_="tag:yaml.org,2002:";function M_(Z,X,Q){if(X){let U=Q.filter((J)=>J.tag===X),q=U.find((J)=>!J.format)??U[0];if(!q)throw Error(`Tag ${X} not found`);return q}return Q.find((U)=>U.identify?.(Z)&&!U.format)}function R_(Z,X,Q){if(W2.isDocument(Z))Z=Z.contents;if(W2.isNode(Z))return Z;if(W2.isPair(Z)){let G=Q.schema[W2.MAP].createNode?.(Q.schema,null,Q);return G.items.push(Z),G}if(Z instanceof String||Z instanceof Number||Z instanceof Boolean||typeof BigInt<"u"&&Z instanceof BigInt)Z=Z.valueOf();let{aliasDuplicateObjects:U,onAnchor:q,onTagObj:J,schema:Y,sourceObjects:W}=Q,$=void 0;if(U&&Z&&typeof Z==="object")if($=W.get(Z),$)return $.anchor??($.anchor=q(Z)),new F_.Alias($.anchor);else $={anchor:null,node:null},W.set(Z,$);if(X?.startsWith("!!"))X=B_+X.slice(2);let L=M_(Z,X,Y.tags);if(!L){if(Z&&typeof Z.toJSON==="function")Z=Z.toJSON();if(!Z||typeof Z!=="object"){let G=new fq.Scalar(Z);if($)$.node=G;return G}L=Z instanceof Map?Y[W2.MAP]:(Symbol.iterator in Object(Z))?Y[W2.SEQ]:Y[W2.MAP]}if(J)J(L),delete Q.onTagObj;let V=L?.createNode?L.createNode(Q.schema,Z,Q):typeof L?.nodeClass?.from==="function"?L.nodeClass.from(Q.schema,Z,Q):new fq.Scalar(Z);if(X)V.tag=X;else if(!L.default)V.tag=L.tag;if($)$.node=V;return V}O_.createNode=R_});var C9=C((P_)=>{var K_=X4(),$1=d(),D_=S9();function fX(Z,X,Q){let U=Q;for(let q=X.length-1;q>=0;--q){let J=X[q];if(typeof J==="number"&&Number.isInteger(J)&&J>=0){let Y=[];Y[J]=U,U=Y}else U=new Map([[J,U]])}return K_.createNode(U,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:Z,sourceObjects:new Map})}var yq=(Z)=>Z==null||typeof Z==="object"&&!!Z[Symbol.iterator]().next().done;class kq extends D_.NodeBase{constructor(Z,X){super(Z);Object.defineProperty(this,"schema",{value:X,configurable:!0,enumerable:!1,writable:!0})}clone(Z){let X=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(Z)X.schema=Z;if(X.items=X.items.map((Q)=>$1.isNode(Q)||$1.isPair(Q)?Q.clone(Z):Q),this.range)X.range=this.range.slice();return X}addIn(Z,X){if(yq(Z))this.add(X);else{let[Q,...U]=Z,q=this.get(Q,!0);if($1.isCollection(q))q.addIn(U,X);else if(q===void 0&&this.schema)this.set(Q,fX(this.schema,U,X));else throw Error(`Expected YAML collection at ${Q}. Remaining path: ${U}`)}}deleteIn(Z){let[X,...Q]=Z;if(Q.length===0)return this.delete(X);let U=this.get(X,!0);if($1.isCollection(U))return U.deleteIn(Q);else throw Error(`Expected YAML collection at ${X}. Remaining path: ${Q}`)}getIn(Z,X){let[Q,...U]=Z,q=this.get(Q,!0);if(U.length===0)return!X&&$1.isScalar(q)?q.value:q;else return $1.isCollection(q)?q.getIn(U,X):void 0}hasAllNullValues(Z){return this.items.every((X)=>{if(!$1.isPair(X))return!1;let Q=X.value;return Q==null||Z&&$1.isScalar(Q)&&Q.value==null&&!Q.commentBefore&&!Q.comment&&!Q.tag})}hasIn(Z){let[X,...Q]=Z;if(Q.length===0)return this.has(X);let U=this.get(X,!0);return $1.isCollection(U)?U.hasIn(Q):!1}setIn(Z,X){let[Q,...U]=Z;if(U.length===0)this.set(Q,X);else{let q=this.get(Q,!0);if($1.isCollection(q))q.setIn(U,X);else if(q===void 0&&this.schema)this.set(Q,fX(this.schema,U,X));else throw Error(`Expected YAML collection at ${Q}. Remaining path: ${U}`)}}}P_.Collection=kq;P_.collectionFromPath=fX;P_.isEmptyPath=yq});var Q4=C((N_)=>{var j_=(Z)=>Z.replace(/^(?!$)(?: $)?/gm,"#");function yX(Z,X){if(/^\n+$/.test(Z))return Z.substring(1);return X?Z.replace(/^(?! *$)/gm,X):Z}var C_=(Z,X,Q)=>Z.endsWith(`
45
+ `)+"}"),o4,k8,eU=(Z)=>{let X=Z.references.filter((Q)=>Q.hasKind("alias"));for(let Q of X){Object.assign(Q.referencesById,Q.resolution.referencesById);for(let U of Z.references)if(Q.id in U.referencesById)Object.assign(U.referencesById,Q.referencesById)}return Z},U5=(Z)=>k(Z,(X,Q)=>[X,I(Q,"root")||I(Q,"generic")?Q.json:I(Q,"module")?U5(Q):l(`Unexpected resolution ${g(Q)}`)]),y8=(Z,X)=>{let Q=X.indexOf(".");if(Q===-1)return;let U=X.slice(0,Q),q=Z[U];if(q===void 0)return;if(!I(q,"module"))return M(n$(U));let J=X.slice(Q+1),Y=q[J];if(Y===void 0)return y8(q,J);if(I(Y,"root")||I(Y,"generic"))return Y;if(I(Y,"module"))return Y.root??M(J5(X));l(`Unexpected resolution for alias '${X}': ${g(Y)}`)},n4=(Z,X)=>new k8(Z,X),x6,q5=(Z,X)=>{let Q={};for(let U in X){let q=X[U];if(I(q,"module")){let J=q5(Z,q),Y=k(J,(W,$)=>[`${U}.${W}`,$]);Object.assign(Q,Y)}else if(I(q,"root")||I(q,"generic"))Q[U]=q;else l(`Unexpected scope resolution ${g(q)}`)}return Q},g8=(Z)=>`'${Z}' is unresolvable`,n$=(Z)=>`'${Z}' must reference a module to be accessed using dot syntax`,J5=(Z)=>`Reference to submodule '${Z}' must specify an alias`,a,v2,Kj,h0;var v8=O(()=>{b();S2();gZ();c4();I8();d4();L8();A1();d();X1();Y0();f8={};T.ambient??={};o4=class o4{config;resolvedConfig;name;get[R0](){return"scope"}referencesById={};references=[];resolutions={};exportedNames=[];aliases={};resolved=!1;nodesByHash={};intrinsic;constructor(Z,X){if(this.config=P6(T.config,X),this.resolvedConfig=P6(T.resolvedConfig,X),this.name=this.resolvedConfig.name??`anonymousScope${Object.keys(f8).length}`,this.name in f8)M(`A Scope already named ${this.name} already exists`);f8[this.name]=this;let Q=Object.entries(Z).map((U)=>this.preparseOwnAliasEntry(...U));for(let[U,q]of Q){let J=U;if(U[0]==="#"){if(J=U.slice(1),J in this.aliases)M(nU(J));this.aliases[J]=q}else{if(J in this.aliases)M(nU(U));this.aliases[J]=q,this.exportedNames.push(J)}if(!I(q,"module")&&!I(q,"generic")&&!D1(q)){let Y=this.preparseOwnDefinitionFormat(q,{alias:J});this.resolutions[J]=I(Y,"root")?this.bindReference(Y):this.createParseContext(Y).id}}tU??=this.node("union",{branches:["string","number","object","bigint","symbol",{unit:!0},{unit:!1},{unit:void 0},{unit:null}]},{prereduced:!0}),this.nodesByHash[tU.hash]=this.node("intersection",{},{prereduced:!0}),this.intrinsic=T.intrinsic?k(T.intrinsic,(U,q)=>U.startsWith("json")?[]:[U,this.bindReference(q)]):{}}cacheGetter(Z,X){return Object.defineProperty(this,Z,{value:X}),X}get internal(){return this}_json;get json(){if(!this._json)this.export();return this._json}defineSchema(Z){return Z}generic=(...Z)=>{let X=this;return(Q,U)=>new N1(Z,U?new x4(Q):Q,X,X,U??null)};units=(Z,X)=>{let Q=[];for(let q of Z)if(!Q.includes(q))Q.push(q);let U=Q.map((q)=>this.node("unit",{unit:q},X));return this.node("union",U,{...X,prereduced:!0})};lazyResolutions=[];lazilyResolve(Z,X){let Q=this.node("alias",{reference:X??"synthetic",resolve:Z},{prereduced:!0});if(!this.resolved)this.lazyResolutions.push(Q);return Q}schema=(Z,X)=>this.finalize(this.parseSchema(Z,X));parseSchema=(Z,X)=>this.node(C6(Z),Z,X);preparseNode(Z,X,Q){let U=typeof Z==="string"?Z:C6(X,Z);if(e(X)&&X.kind===U)return X;if(U==="alias"&&!Q?.prereduced){let{reference:Y}=k6.implementation.normalize(X,this);if(Y.startsWith("$")){let W=this.resolveRoot(Y.slice(1));X=W,U=W.kind}}else if(U==="union"&&P0(X,"object")){let Y=a$(X);if(Y?.length===1)X=Y[0],U=C6(X)}if(e(X)&&X.kind===U)return X;let J=b2[U].normalize?.(X,this)??X;if(e(J))return J.kind===U?J:r$(U,J.kind);return{...Q,$:this,kind:U,def:J,prefix:Q.alias??U}}bindReference(Z){let X;if(e(Z))X=Z.$===this?Z:new Z.constructor(Z.attachments,this);else X=Z.$===this?Z:new N1(Z.params,Z.bodyDef,Z.$,this,Z.hkt);if(!this.resolved)Object.assign(this.referencesById,X.referencesById);return X}resolveRoot(Z){return this.maybeResolveRoot(Z)??M(g8(Z))}maybeResolveRoot(Z){let X=this.maybeResolve(Z);if(I(X,"generic"))return;return X}maybeResolveSubalias(Z){return y8(this.aliases,Z)??y8(this.ambient,Z)}get ambient(){return T.ambient}maybeResolve(Z){let X=this.resolutions[Z];if(X){if(typeof X!=="string")return this.bindReference(X);let U=T0[X];if(I(U,"root"))return this.resolutions[Z]=U;if(I(U,"context")){if(U.phase==="resolving")return this.node("alias",{reference:`$${Z}`},{prereduced:!0});if(U.phase==="resolved")return l(`Unexpected resolved context for was uncached by its scope: ${g(U)}`);U.phase="resolving";let q=this.bindReference(this.parseOwnDefinitionFormat(U.def,U));return U.phase="resolved",T0[q.id]=q,T0[U.id]=q,this.resolutions[Z]=q}return l(`Unexpected nodesById entry for ${X}: ${g(U)}`)}let Q=this.aliases[Z]??this.ambient?.[Z];if(!Q)return this.maybeResolveSubalias(Z);if(Q=this.normalizeRootScopeValue(Q),I(Q,"generic"))return this.resolutions[Z]=this.bindReference(Q);if(I(Q,"module")){if(!Q.root)M(J5(Z));return this.resolutions[Z]=this.bindReference(Q.root)}return this.resolutions[Z]=this.parse(Q,{alias:Z})}createParseContext(Z){let X=Z.id??q8(Z.prefix);return T0[X]=Object.assign(Z,{[R0]:"context",$:this,id:X,phase:"unresolved"})}traversal(Z){return new i0(Z,this.resolvedConfig)}import(...Z){return new g2(k(this.export(...Z),(X,Q)=>[`#${X}`,Q]))}precompilation;_exportedResolutions;_exports;export(...Z){if(!this._exports){this._exports={};for(let Q of this.exportedNames){let U=this.aliases[Q];this._exports[Q]=I(U,"module")?b8(U,this):eU(this.maybeResolve(Q))}for(let Q of this.lazyResolutions)Q.resolution;if(this._exportedResolutions=q5(this,this._exports),this._json=U5(this._exportedResolutions),Object.assign(this.resolutions,this._exportedResolutions),this.references=Object.values(this.referencesById),!this.resolvedConfig.jitless){let Q=Q5(this.references);this.precompilation=Q.write(Z5,4),X5(this.references,Q)}this.resolved=!0}let X=Z.length?Z:this.exportedNames;return new g2(k(X,(Q,U)=>[U,this._exports[U]]))}resolve(Z){return this.export()[Z]}node=(Z,X,Q={})=>{let U=this.preparseNode(Z,X,Q);if(e(U))return this.bindReference(U);let q=this.createParseContext(U),J=J8(q),Y=this.bindReference(J);return T0[q.id]=Y};parse=(Z,X={})=>this.finalize(this.parseDefinition(Z,X));parseDefinition(Z,X={}){if(I(Z,"root"))return this.bindReference(Z);let Q=this.preparseOwnDefinitionFormat(Z,X);if(I(Q,"root"))return this.bindReference(Q);let U=this.createParseContext(Q);T0[U.id]=U;let q=this.bindReference(this.parseOwnDefinitionFormat(Z,U));if(q.isCyclic)q=KU(q,U.id);return T0[U.id]=q,q}finalize(Z){if(eU(Z),!Z.precompilation&&!this.resolvedConfig.jitless)o$(Z.references);return Z}};k8=class k8 extends o4{parseOwnDefinitionFormat(Z,X){return J8(X)}preparseOwnDefinitionFormat(Z,X){return this.preparseNode(C6(Z),Z,X)}preparseOwnAliasEntry(Z,X){return[Z,X]}normalizeRootScopeValue(Z){return Z}};x6=new k8({});x6.export();a=x6.schema,v2=x6.node,Kj=x6.defineSchema,h0=x6.generic});var x8="^(?:0|[1-9]\\d*)$",t$,wj;var Y5=O(()=>{d();t$=new RegExp(x8),wj=U0(t$)});var W5,$5,e$,f;var i4=O(()=>{v8();d();Y5();W5=n4({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();T.intrinsic={...W5};$5=n4({integer:{domain:"number",divisor:1},lengthBoundable:["string",Array],key:["string","symbol"],nonNegativeIntegerString:{domain:"string",pattern:x8}},{prereducedAliases:!0}).export();Object.assign(T.intrinsic,$5);e$=n4({jsonPrimitive:["string","number",{unit:!0},{unit:!1},{unit:null}],jsonObject:{domain:"object",index:{signature:"string",value:"$jsonData"}},jsonData:["$jsonPrimitive","$jsonObject"]},{prereducedAliases:!0}).export(),f={...W5,...$5,...e$,emptyStructure:v2("structure",{},{prereduced:!0})};T.intrinsic={...f}});var L5=()=>{};var G5=()=>{};var V5=()=>{};var W0=O(()=>{b();S2();I0();gZ();i4();c4();I8();X2();d4();xZ();pZ();dZ();mZ();iZ();X8();aZ();oZ();tZ();Z8();U8();F1();G8();_8();H8();F8();E1();O8();T8();v8();A1();L5();q0();w6();s();g0();G5();d();V5();j1();X1();Y0();D8();I2();b6();w8();j8();E8()});var t4=(Z,X)=>new RegExp(Z,X);var _5=O(()=>{Object.assign(t4,{as:t4})});var z5=O(()=>{_5()});var H5=O(()=>{S2()});var B5=(Z)=>typeof Z==="string"&&Z[0]==="d"&&(Z[1]==="'"||Z[1]==='"')&&Z[Z.length-1]===Z[1],F5=(Z)=>Z.toString()!=="Invalid Date",M5=(Z)=>Z.slice(2,-1),h8=(Z)=>`'${Z}' could not be parsed by the Date constructor`,O5=(Z,X)=>ZL(Z,X),ZL=(Z,X)=>{let Q=new Date(Z);if(F5(Q))return Q;let U=IQ(Z);if(U!==void 0){let q=new Date(U);if(F5(q))return q}return X?M(X===!0?h8(Z):X):void 0};var m8=O(()=>{b()});var XL,e4=(Z,X)=>{let Q=Z.scanner.shiftUntilEscapable(UL[K5[X]]);if(Z.scanner.lookahead==="")return Z.error(JL(Q,X));if(Z.scanner.shift(),X in T5){let U;try{U=new RegExp(Q)}catch(q){M(String(q))}if(Z.root=Z.ctx.$.node("intersection",{domain:"string",pattern:Q},{prereduced:!0}),X==="x/")Z.root=Z.ctx.$.node("morph",{in:Z.root,morphs:(q)=>U.exec(q),declaredOut:XL})}else if(V0(X,u8))Z.root=Z.ctx.$.node("unit",{unit:Q});else{let U=O5(Q,h8(Q));Z.root=Z.ctx.$.node("unit",{meta:Q,unit:U})}},u8,R5,QL,T5,K5,UL,qL,JL=(Z,X)=>`${X}${Z} requires a closing ${qL[K5[X]]}`;var D5=O(()=>{W0();b();m8();XL=a({proto:"Array",sequence:"string",required:{key:"groups",value:["object",{unit:void 0}]}}),u8={"'":1,'"':1},R5={"/":1,"'":1,'"':1},QL={"d'":"'",'d"':'"',"'":"'",'"':'"'},T5={"/":"/","x/":"/"},K5={...QL,...T5},UL={"'":(Z)=>Z.lookahead==="'",'"':(Z)=>Z.lookahead==='"',"/":(Z)=>Z.lookahead==="/"},qL={'"':"double-quote","'":"single-quote","/":"forward slash"}});var P5=(Z)=>`Private type references should not include '#'. Use '${Z}' instead.`,Z9="Optional definitions like 'string?' are only valid as properties in an object or tuple",X9="Defaultable definitions like 'number = 0' are only valid as properties in an object or tuple";var U1,w5=(Z,X)=>Z===">"?X[0]==="="?X[1]==="=":X.trimStart()===""||V0(X.trimStart()[0],U1):Z==="="?X[0]!=="=":Z===","||Z==="?";var x2=O(()=>{b();U1={"<":1,">":1,"=":1,"|":1,"&":1,")":1,"[":1,"%":1,",":1,":":1,"?":1,"#":1,...P1}});var A5=(Z,X,Q)=>S5(Z,X,Q,[]),S5=(Z,X,Q,U)=>{let q=Q.parseUntilFinalizer();if(U.push(q.root),q.finalizer===">"){if(U.length!==X.params.length)return Q.error(p8(Z,X.names,U.map((J)=>J.expression)));return U}if(q.finalizer===",")return S5(Z,X,Q,U);return q.error(I4(">"))},p8=(Z,X,Q)=>`${Z}<${X.join(", ")}> requires exactly ${X.length} args (got ${Q.length}${Q.length===0?"":`: ${Q.join(", ")}`})`;var j5=O(()=>{b()});var Q9=(Z)=>{let X=Z.scanner.shiftUntilLookahead(U1);if(X==="keyof")Z.addPrefix("keyof");else Z.root=WL(Z,X)},YL=(Z,X,Q)=>{if(Q.scanner.shiftUntilNonWhitespace(),Q.scanner.shift()!=="<")return Q.error(p8(Z,X.names,[]));let q=A5(Z,X,Q);return X(...q)},WL=(Z,X)=>$L(Z,X)??LL(Z,X)??Z.error(X===""?Z.scanner.lookahead==="#"?P5(Z.shiftedBy(1).scanner.shiftUntilLookahead(U1)):l8(Z):g8(X)),$L=(Z,X)=>{if(Z.ctx.args?.[X]){let U=Z.ctx.args[X];if(typeof U!=="string")return U;return Z.ctx.$.node("alias",{reference:U},{prereduced:!0})}let Q=Z.ctx.$.maybeResolve(X);if(I(Q,"root"))return Q;if(Q===void 0)return;if(I(Q,"generic"))return YL(X,Q,Z);return M(`Unexpected resolution ${g(Q)}`)},LL=(Z,X)=>{let Q=fQ(X);if(Q!==void 0)return Z.ctx.$.node("unit",{unit:Q});let U=kQ(X);if(U!==void 0)return Z.ctx.$.node("unit",{unit:U})},l8=(Z)=>{let X=Z.previousOperator();return X?d8(X,Z.scanner.unscanned):GL(Z.scanner.unscanned)},d8=(Z,X="")=>`Token '${Z}' requires a right operand${X?` before '${X}'`:""}`,GL=(Z)=>`Expected an expression${Z?` before '${Z}'`:""}`;var c8=O(()=>{W0();b();x2();j5()});var i8=(Z)=>Z.scanner.lookahead===""?Z.error(l8(Z)):Z.scanner.lookahead==="("?Z.shiftedBy(1).reduceGroupOpen():Z.scanner.lookaheadIsIn(R5)?e4(Z,Z.scanner.shift()):Z.scanner.lookaheadIsIn(P1)?i8(Z.shiftedBy(1)):Z.scanner.lookahead==="d"?Z.scanner.nextLookahead in u8?e4(Z,`${Z.scanner.shift()}${Z.scanner.shift()}`):Q9(Z):Z.scanner.lookahead==="x"?Z.scanner.nextLookahead==="/"?Z.shiftedBy(2)&&e4(Z,"x/"):Q9(Z):Q9(Z);var C5=O(()=>{b();D5();c8()});var N5,E5,h2,b5=(Z,X)=>`Left bounds are only valid when paired with right bounds (try ...${X}${Z})`,U9=(Z)=>`Left-bounded expressions must specify their limits using < or <= (was ${Z})`,I5=(Z,X,Q,U)=>`An expression may have at most one left bound (parsed ${Z}${h2[X]}, ${Q}${h2[U]})`;var s8=O(()=>{N5={">":!0,">=":!0},E5={"<":!0,"<=":!0},h2={"<":">",">":"<","<=":">=",">=":"<=","==":"=="}});var y5=(Z,X)=>{let Q=VL(Z,X);if(Z.root.hasKind("unit")){if(typeof Z.root.unit==="number"){Z.reduceLeftBound(Z.root.unit,Q),Z.unsetRoot();return}if(Z.root.unit instanceof Date){let U=`d'${Z.root.description??Z.root.unit.toISOString()}'`;Z.unsetRoot(),Z.reduceLeftBound(U,Q);return}}return zL(Z,Q)},k5,VL=(Z,X)=>Z.scanner.lookaheadIs("=")?`${X}${Z.scanner.shift()}`:X,f5=(Z,X,Q,U)=>{if(Q.extends(T.intrinsic.number)){if(typeof X!=="number")return M(a8(Z,X,U));return Z==="=="?["min","max"]:Z[0]===">"?["min"]:["max"]}if(Q.extends(T.intrinsic.lengthBoundable)){if(typeof X!=="number")return M(a8(Z,X,U));return Z==="=="?["exactLength"]:Z[0]===">"?["minLength"]:["maxLength"]}if(Q.extends(T.intrinsic.Date))return Z==="=="?["after","before"]:Z[0]===">"?["after"]:["before"];return M($U(Q.expression))},_L=(Z)=>({rule:B5(Z.limit)?M5(Z.limit):Z.limit,exclusive:Z.comparator.length===1}),zL=(Z,X)=>{let Q=Z.unsetRoot(),U=Z.scanner.location;Z.parseOperand();let q=Z.unsetRoot(),J=Z.scanner.sliceChars(U,Z.scanner.location);if(Z.root=Q,!q.hasKind("unit")||typeof q.unit!=="number"&&!(q.unit instanceof Date))return Z.error(a8(X,J,"right"));let Y=q.unit,W=X.length===1,$=f5(X,typeof Y==="number"?Y:J,Q,"right");for(let V of $)Z.constrainRoot(V,X==="=="?{rule:Y}:{rule:Y,exclusive:W});if(!Z.branches.leftBound)return;if(!V0(X,E5))return Z.error(U9(X));let L=f5(Z.branches.leftBound.comparator,Z.branches.leftBound.limit,Q,"left");Z.constrainRoot(L[0],_L(Z.branches.leftBound)),Z.branches.leftBound=null},a8=(Z,X,Q)=>`Comparator ${Q==="left"?h2[Z]:Z} must be ${Q==="left"?"preceded":"followed"} by a corresponding literal (was ${X})`;var g5=O(()=>{W0();b();s8();m8();k5={"<":1,">":1,"=":1}});var v5=(Z)=>{Z.scanner.shiftUntilNonWhitespace();let X=Z.scanner.shiftUntilLookahead(U1);Z.root=Z.root.brand(X)};var x5=O(()=>{x2()});var m5=(Z)=>{Z.scanner.shiftUntilNonWhitespace();let X=Z.scanner.shiftUntilLookahead(U1),Q=yQ(X,{errorOnFail:h5(X)});if(Q===0)Z.error(h5(0));Z.root=Z.root.constrain("divisor",Q)},h5=(Z)=>`% operator must be followed by a non-zero integer literal (was ${Z})`;var u5=O(()=>{b();x2()});var r8=(Z)=>{let X=Z.scanner.shift();return X===""?Z.finalize(""):X==="["?Z.scanner.shift()==="]"?Z.setRoot(Z.root.array()):Z.error(HL):X==="|"?Z.scanner.lookahead===">"?Z.shiftedBy(1).pushRootToBranch("|>"):Z.pushRootToBranch(X):X==="&"?Z.pushRootToBranch(X):X===")"?Z.finalizeGroup():w5(X,Z.scanner.unscanned)?Z.finalize(X):V0(X,k5)?y5(Z,X):X==="%"?m5(Z):X==="#"?v5(Z):(X in P1)?r8(Z):Z.error(q9(X))},q9=(Z,X="")=>`'${Z}' is not allowed here${X&&` (should be ${X})`}`,HL="Missing expected ']'";var o8=O(()=>{b();x2();g5();x5();u5()});var p5=(Z)=>{let X=Z.unsetRoot();Z.parseOperand();let Q=Z.unsetRoot();if(!Q.hasKind("unit"))return Z.error(FL(Q.expression));let U=Q.unit instanceof Date?()=>new Date(Q.unit):Q.unit;return[X,"=",U]},FL=(Z)=>`Default value '${Z}' must be a literal value`;var n8=(Z,X)=>{let Q=X.$.maybeResolveRoot(Z);if(Q)return Q;if(Z.endsWith("[]")){let J=X.$.maybeResolveRoot(Z.slice(0,-2));if(J)return J.array()}let U=new m2(new K6(Z),X),q=BL(U);if(U.finalizer===">")M(q9(">"));return q},BL=(Z)=>{Z.parseOperand();let X=h6(Z).root;if(!X)return l(`Root was unexpectedly unset after parsing string '${Z.scanner.scanned}'`);if(Z.finalizer==="=")X=p5(Z);else if(Z.finalizer==="?")X=[X,"?"];if(Z.scanner.shiftUntilNonWhitespace(),Z.scanner.lookahead)M(q9(Z.scanner.lookahead));return X},h6=(Z)=>{while(Z.finalizer===void 0)ML(Z);return Z},ML=(Z)=>Z.hasRoot()?Z.parseOperator():Z.parseOperand();var J9=O(()=>{b();t8();o8()});class m2{root;branches={prefixes:[],leftBound:null,intersection:null,union:null,pipe:null};finalizer;groups=[];scanner;ctx;constructor(Z,X){this.scanner=Z,this.ctx=X}error(Z){return M(Z)}hasRoot(){return this.root!==void 0}setRoot(Z){this.root=Z}unsetRoot(){let Z=this.root;return this.root=void 0,Z}constrainRoot(...Z){this.root=this.root.constrain(Z[0],Z[1])}finalize(Z){if(this.groups.length)return this.error(I4(")"));this.finalizeBranches(),this.finalizer=Z}reduceLeftBound(Z,X){let Q=h2[X];if(!V0(Q,N5))return this.error(U9(X));if(this.branches.leftBound)return this.error(I5(this.branches.leftBound.limit,this.branches.leftBound.comparator,Z,Q));this.branches.leftBound={comparator:Q,limit:Z}}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 Z=this.groups.pop();if(!Z)return this.error(uQ(")",this.scanner.unscanned));this.branches=Z}addPrefix(Z){this.branches.prefixes.push(Z)}applyPrefixes(){while(this.branches.prefixes.length){let Z=this.branches.prefixes.pop();this.root=Z==="keyof"?this.root.keyof():l(`Unexpected prefix '${Z}'`)}}pushRootToBranch(Z){this.assertRangeUnset(),this.applyPrefixes();let X=this.root;if(this.root=void 0,this.branches.intersection=this.branches.intersection?.rawAnd(X)??X,Z==="&")return;if(this.branches.union=this.branches.union?.rawOr(this.branches.intersection)??this.branches.intersection,this.branches.intersection=null,Z==="|")return;this.branches.pipe=this.branches.pipe?.rawPipeOnce(this.branches.union)??this.branches.union,this.branches.union=null}parseUntilFinalizer(){return h6(new m2(this.scanner,this.ctx))}parseOperator(){return r8(this)}parseOperand(){return i8(this)}assertRangeUnset(){if(this.branches.leftBound)return this.error(b5(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(Z){return this.scanner.jumpForward(Z),this}}var t8=O(()=>{b();C5();o8();J9();s8()});var OL="An empty string is not a valid generic parameter name",Y9=(Z,X,Q)=>{Z.shiftUntilNonWhitespace();let U=Z.shiftUntilLookahead(U1);if(U===""){if(Z.lookahead===""&&X.length)return X;return M(OL)}return Z.shiftUntilNonWhitespace(),RL(Z,U,X,Q)},l5="extends ",RL=(Z,X,Q,U)=>{if(Z.shiftUntilNonWhitespace(),Z.unscanned.startsWith(l5))Z.jumpForward(l5.length);else{if(Z.lookahead===",")Z.shift();return Q.push(X),Y9(Z,Q,U)}let q=h6(new m2(Z,U));return Q.push([X,q.root]),Y9(Z,Q,U)};var e8=O(()=>{W0();b();t8();x2();J9()});var ZX,d5,TL=`":" must be followed by exactly one return type e.g:
46
+ fn("string", ":", "number")(s => s.length)`;var c5=O(()=>{b();ZX=class ZX extends S0{constructor(Z){let X={$:Z,raw:Z.fn};super((...Q)=>{let U=Q.indexOf(":"),q=U===-1?Q.length-1:U-1,J=Q.slice(0,q+1),Y=Z.parse(J).assertHasKind("intersection"),W=Z.intrinsic.unknown;if(U!==-1){if(U!==Q.length-2)return M(TL);W=Z.parse(Q[U+1])}return($)=>new d5($,Y,W)},{attach:X})}};d5=class d5 extends S0{raw;params;returns;expression;constructor(Z,X,Q){let U=`typed ${Z.name}`,q={[U]:(...Y)=>{let W=X.assert(Y),$=Z(...W);return Q.assert($)}}[U];super(q);this.raw=Z,this.params=X,this.returns=Q;let J=X.expression;if(J[0]==="["&&J[J.length-1]==="]")J=J.slice(1,-1);else if(J.endsWith("[]"))J=`...${J}`;this.expression=`(${J}) => ${Q?.expression??"unknown"}`}}});var XX,m6,i5=(Z)=>Z.throw(),KL="A key matcher must be specified before the first case i.e. match.at('foo') or match.in<object>().at('bar')",DL="At most one key matcher may be specified per expression";var s5=O(()=>{W0();b();XX=class XX extends S0{$;constructor(Z){super((...X)=>new m6(Z)(...X),{bind:Z});this.$=Z}in(Z){return new m6(this.$,Z===void 0?void 0:this.$.parse(Z))}at(Z,X){return new m6(this.$).at(Z,X)}case(Z,X){return new m6(this.$).case(Z,X)}};m6=class m6 extends S0{$;in;key;branches=[];constructor(Z,X){super((Q)=>this.caseEntries(Object.entries(Q).map(([U,q])=>U==="default"?[U,q]:[this.$.parse(U),q])));this.$=Z,this.in=X}at(Z,X){if(this.key)M(DL);if(this.branches.length)M(KL);return this.key=Z,X?this.match(X):this}case(Z,X){return this.caseEntry(this.$.parse(Z),X)}caseEntry(Z,X){let U=(this.key?this.$.parse({[this.key]:Z}):Z).pipe(X);return this.branches.push(U),this}match(Z){return this(Z)}strings(Z){return this.caseEntries(Object.entries(Z).map(([X,Q])=>X==="default"?[X,Q]:[this.$.node("unit",{unit:X}),Q]))}caseEntries(Z){for(let X=0;X<Z.length;X++){let[Q,U]=Z[X];if(Q==="default"){if(X!==Z.length-1)M("default may only be specified as the last key of a switch definition");return this.default(U)}if(typeof U!=="function")return M(`Value for case "${Q}" must be a function (was ${G0(U)})`);this.caseEntry(Q,U)}return this}default(Z){if(typeof Z==="function")this.case(f.unknown,Z);let X={branches:this.branches,ordered:!0};if(Z==="never"||Z==="assert")X.meta={onFail:i5};let Q=this.$.node("union",X);if(!this.in)return this.$.finalize(Q);let U=this.in.pipe(Q);if(Z==="never"||Z==="assert")U=U.configureReferences({onFail:i5},"self");return this.$.finalize(U)}}});var W9=(Z,X)=>{if(n(Z)){if(Z[1]==="=")return[X.$.parseOwnDefinitionFormat(Z[0],X),"=",Z[2]];if(Z[1]==="?")return[X.$.parseOwnDefinitionFormat(Z[0],X),"?"]}return $9(Z,X)},a5="Only required keys may make their values optional, e.g. { [mySymbol]: ['number', '?'] }",r5="Only required keys may specify default values, e.g. { value: 'number = 0' }";var QX=O(()=>{b();UX()});var o5=(Z,X)=>{let Q,U={},q=r1(Z);for(let[Y,W]of q){let $=AL(Y);if($.kind==="spread"){if(!Z1(U))return M(wL);let H=X.$.parseOwnDefinitionFormat(W,X);if(H.equals(f.object))continue;if(!H.hasKind("intersection")||!H.basis?.equals(f.object))return M(SL(H.expression));Q=H.structure;continue}if($.kind==="undeclared"){if(W!=="reject"&&W!=="delete"&&W!=="ignore")M(PL(W));U.undeclared=W;continue}let L=W9(W,X),V=$;if($.kind==="required"){if(!n(L))qX(U,"required",{key:$.normalized,value:L},X);else qX(U,"optional",L[1]==="="?{key:$.normalized,value:L[0],default:L[2]}:{key:$.normalized,value:L[0]},X);continue}if(n(L)){if(L[1]==="?")M(a5);if(L[1]==="=")M(r5)}if($.kind==="optional"){qX(U,"optional",{key:$.normalized,value:L},X);continue}let G=X.$.parseOwnDefinitionFormat(V.normalized,X),_=r4(G,L,X.$);if(_.index)U.index=m(U.index,_.index);if(_.required)U.required=m(U.required,_.required)}let J=X.$.node("structure",U);return X.$.parseSchema({domain:"object",structure:Q?.merge(J)??J})},qX=(Z,X,Q,U)=>{Z[X]=m(Z[X],U.$.node(X,Q))},PL=(Z)=>`Value of '+' key must be 'reject', 'delete', or 'ignore' (was ${g(Z)})`,wL="Spread operator may only be used as the first key in an object",AL=(Z)=>typeof Z==="symbol"?{kind:"required",normalized:Z}:Z[Z.length-1]==="?"?Z[Z.length-2]===t1?{kind:"required",normalized:`${Z.slice(0,-2)}?`}:{kind:"optional",normalized:Z.slice(0,-1)}:Z[0]==="["&&Z[Z.length-1]==="]"?{kind:"index",normalized:Z.slice(1,-1)}:Z[0]===t1&&Z[1]==="["&&Z[Z.length-1]==="]"?{kind:"required",normalized:Z.slice(1)}:Z==="..."?{kind:"spread"}:Z==="+"?{kind:"undeclared"}:{kind:"required",normalized:Z==="\\..."?"...":Z==="\\+"?"+":Z},SL=(Z)=>`Spread operand must resolve to an object literal type (was ${Z})`;var n5=O(()=>{W0();b();QX()});var e5=(Z,X)=>gL(Z)?U7[Z[0]](Z,X):yL(Z)?Q7[Z[1]](Z,X):null,jL=(Z,X)=>X.$.parseOwnDefinitionFormat(Z[1],X).keyof(),JX=(Z,X)=>{if(Z[2]===void 0)return M(d8(Z[1],""));let Q=X.$.parseOwnDefinitionFormat(Z[0],X),U=X.$.parseOwnDefinitionFormat(Z[2],X);if(Z[1]==="|")return X.$.node("union",{branches:[Q,U]});let q=Z[1]==="&"?N0(Q,U,X.$):j6(Q,U,X.$);if(q instanceof j)return q.throw();return q},CL=(Z,X)=>X.$.parseOwnDefinitionFormat(Z[0],X).array(),NL=(Z,X)=>{if(typeof Z[2]!=="function")return M(Z7("=>",Z[2]));return X.$.parseOwnDefinitionFormat(Z[0],X).pipe(Z[2])},Z7=(Z,X)=>`${Z===":"?"Narrow":"Morph"} expression requires a function following '${Z}' (was ${typeof X})`,EL=(Z,X)=>{if(typeof Z[2]!=="function")return M(Z7(":",Z[2]));return X.$.parseOwnDefinitionFormat(Z[0],X).constrain("predicate",Z[2])},bL=(Z,X)=>X.$.parseOwnDefinitionFormat(Z[0],X).configure(Z[2],Z[3]),X7=(Z)=>Z,IL,fL,Q7,yL=(Z)=>Q7[Z[1]]!==void 0,kL=(Z)=>Z,U7,gL=(Z)=>U7[Z[0]]!==void 0,t5=(Z)=>`Expected a constructor following 'instanceof' operator (was ${Z})`;var q7=O(()=>{W0();b();c8();IL=X7({"[]":CL,"?":()=>M(Z9)}),fL=X7({"|":JX,"&":JX,":":EL,"=>":NL,"|>":JX,"@":bL,"=":()=>M(X9)}),Q7={...IL,...fL},U7=kL({keyof:jL,instanceof:(Z,X)=>{if(typeof Z[1]!=="function")return M(t5(z6(Z[1])));let Q=Z.slice(1).map((U)=>typeof U==="function"?X.$.node("proto",{proto:U}):M(t5(z6(U))));return Q.length===1?Q[0]:X.$.node("union",{branches:Q})},"===":(Z,X)=>X.$.units(Z.slice(1))})});var W7=(Z,X)=>{let Q=[{}],U=0;while(U<Z.length){let q=!1;if(Z[U]==="..."&&U<Z.length-1)q=!0,U++;let J=W9(Z[U],X),[Y,W,$]=!n(J)?[J]:J;if(U++,q){if(!Y.extends(T.intrinsic.Array))return M(hL(Y.expression));Q=Q.flatMap((L)=>Y.distribute((V)=>xL(y4(L),V)))}else Q=Q.map((L)=>{if(W==="?")return $7(L,Y);if(W==="=")return vL(L,Y,$);return YX(L,Y)})}return X.$.parseSchema(Q.map((q)=>Z1(q)?{proto:Array,exactLength:0}:{proto:Array,sequence:q}))},YX=(Z,X)=>{if(Z.defaultables||Z.optionals)return M(Z.variadic?S8:mL);if(Z.variadic)Z.postfix=m(Z.postfix,X);else Z.prefix=m(Z.prefix,X);return Z},$7=(Z,X)=>{if(Z.variadic)return M(L7);return Z.optionals=m(Z.optionals,X),Z},vL=(Z,X,Q)=>{if(Z.variadic)return M(L7);if(Z.optionals)return M(uL);return Z.defaultables=m(Z.defaultables,[[X,Q]]),Z},J7=(Z,X)=>{if(Z.postfix)M(Y7);if(Z.variadic){if(!Z.variadic.equals(X))M(Y7)}else Z.variadic=X.internal;return Z},xL=(Z,X)=>{let Q=X.select({method:"find",kind:"sequence"});if(!Q)return J7(Z,T.intrinsic.unknown);if(Q.prefix)for(let U of Q.prefix)YX(Z,U);if(Q.optionals)for(let U of Q.optionals)$7(Z,U);if(Q.variadic)J7(Z,Q.variadic);if(Q.postfix)for(let U of Q.postfix)YX(Z,U);return Z},hL=(Z)=>`Spread element must be an array (was ${Z})`,Y7="A tuple may have at most one variadic element",mL="A required element may not follow an optional element",L7="An optional element may not follow a variadic element",uL="A defaultable element may not follow an optional element without a default";var G7=O(()=>{W0();b();QX()});var pL,$9=(Z,X)=>{if(typeof Z==="string"){if(X.args&&Object.keys(X.args).some((U)=>Z.includes(U)))return n8(Z,X);let Q=pL[X.$.name]??={};return Q[Z]??=n8(Z,X)}return P0(Z,"object")?lL(Z,X):M(WX(G0(Z)))},lL=(Z,X)=>{let Q=_6(Z);switch(Q){case void 0:if(I(Z,"root"))return Z;if("~standard"in Z)return dL(Z,X);return o5(Z,X);case"Array":return cL(Z,X);case"RegExp":return X.$.node("intersection",{domain:"string",pattern:Z},{prereduced:!0});case"Function":{let U=D1(Z)?Z():Z;if(I(U,"root"))return U;return M(WX("Function"))}default:return M(WX(Q??g(Z)))}},dL=(Z,X)=>X.$.intrinsic.unknown.pipe((Q,U)=>{let q=Z["~standard"].validate(Q);if(!q.issues)return q.value;for(let{message:J,path:Y}of q.issues)if(Y)if(Y.length)U.error({problem:SQ(J),relativePath:Y.map((W)=>typeof W==="object"?W.key:W)});else U.error({message:J});else U.error({message:J})}),cL=(Z,X)=>e5(Z,X)??W7(Z,X),WX=(Z)=>`Type definitions must be strings or objects (was ${Z})`;var UX=O(()=>{W0();b();n5();J9();q7();G7();pL={}});var $X;var LX=O(()=>{W0();b();$X=class $X extends S0{constructor(Z){let X=Object.assign({errors:j0,hkt:M0,$:Z,raw:Z.parse,module:Z.constructor.module,scope:Z.constructor.scope,declare:Z.declare,define:Z.define,match:Z.match,generic:Z.generic,schema:Z.schema,keywords:Z.ambient,unit:Z.unit,enumerated:Z.enumerated,instanceOf:Z.instanceOf,valueOf:Z.valueOf,or:Z.or,and:Z.and,merge:Z.merge,pipe:Z.pipe,fn:Z.fn},Z.ambientAttachments);super((...Q)=>{if(Q.length===1)return Z.parse(Q[0]);if(Q.length===2&&typeof Q[0]==="string"&&Q[0][0]==="<"&&Q[0][Q[0].length-1]===">"){let U=Q[0].slice(1,-1),q=Z.parseGenericParams(U,{});return new N1(q,Q[1],Z,Z,null)}return Z.parse(Q)},{attach:X})}}});var u2,L9,u6,h;var a0=O(()=>{W0();b();c5();e8();s5();UX();LX();u2=T;L9=class L9 extends o4{get ambientAttachments(){if(!u2.typeAttachments)return;return this.cacheGetter("ambientAttachments",k(u2.typeAttachments,(Z,X)=>[Z,this.bindReference(X)]))}preparseOwnAliasEntry(Z,X){let Q=Z.indexOf("<");if(Q===-1){if(I(X,"module")||I(X,"generic"))return[Z,X];let J=this.name==="ark"?Z:Z==="root"?this.name:`${this.name}.${Z}`,Y=this.resolvedConfig.keywords?.[J];if(Y)X=[X,"@",Y];return[Z,X]}if(Z[Z.length-1]!==">")M("'>' must be the last character of a generic declaration in a scope");let U=Z.slice(0,Q),q=Z.slice(Q+1,-1);return[U,()=>{let J=this.parseGenericParams(q,{alias:U});return JU(J,X,this)}]}parseGenericParams(Z,X){return Y9(new K6(Z),[],this.createParseContext({...X,def:Z,prefix:"generic"}))}normalizeRootScopeValue(Z){if(D1(Z)&&!I(Z,"generic"))return Z();return Z}preparseOwnDefinitionFormat(Z,X){return{...X,def:Z,prefix:X.alias??"type"}}parseOwnDefinitionFormat(Z,X){if(!(X.alias&&(X.alias in this.aliases))&&!X.args)X.args={this:X.id};let U=$9(Z,X);if(n(U)){if(U[1]==="=")return M(X9);if(U[1]==="?")return M(Z9)}return U}unit=(Z)=>this.units([Z]);valueOf=(Z)=>this.units(GQ(Z));enumerated=(...Z)=>this.units(Z);instanceOf=(Z)=>this.node("proto",{proto:Z},{prereduced:!0});or=(...Z)=>this.schema(Z.map((X)=>this.parse(X)));and=(...Z)=>Z.reduce((X,Q)=>X.and(this.parse(Q)),this.intrinsic.unknown);merge=(...Z)=>Z.reduce((X,Q)=>X.merge(this.parse(Q)),this.intrinsic.object);pipe=(...Z)=>this.intrinsic.unknown.pipe(...Z);fn=new ZX(this);match=new XX(this);declare=()=>({type:this.type});define(Z){return Z}type=new $X(this);static scope=(Z,X={})=>new L9(Z,X);static module=(Z,X={})=>this.scope(Z,X).export()};u6=Object.assign(L9.scope,{define:(Z)=>Z}),h=L9});var V7,iL,_7;var z7=O(()=>{W0();b();a0();V7=class V7 extends M0{description='merge an object\'s properties onto another like `Merge(User, { isAdmin: "true" })`'};iL=h0(["base",f.object],["props",f.object])((Z)=>Z.base.merge(Z.props),V7),_7=h.module({Key:f.key,Merge:iL})});var H7,sL,F7;var B7=O(()=>{W0();b();a0();H7=class H7 extends M0{};sL=h0("element")((Z)=>{let X=Z.element.exclude(f.Array),Q=X.array();return X.rawOr(Q).pipe(K1).distribute((U)=>U.assertHasKind("morph").declareOut(Q),a)},H7),F7=h.module({root:f.Array,readonly:"root",index:f.nonNegativeIntegerString,liftFrom:sL},{name:"Array"})});var GX,aL,M7,O7;var R7=O(()=>{W0();b();a0();GX=a(["string",e1.FileConstructor]),aL=GX.rawOr(GX.array()),M7=a({meta:"an object representing parsed form data",domain:"object",index:{signature:"string",value:aL}}),O7=h.module({root:["instanceof",FormData],value:GX,parsed:M7,parse:a({in:FormData,morphs:(Z)=>{let X={};for(let[Q,U]of Z)if(Q in X){let q=X[Q];if(typeof q==="string"||q instanceof e1.FileConstructor)X[Q]=[q,U];else q.push(U)}else X[Q]=U;return X},declaredOut:M7})},{name:"FormData"})});var T7;var K7=O(()=>{a0();T7=h.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 rL,D7;var P7=O(()=>{b();a0();B7();R7();K7();rL={Boolean:1,Number:1,String:1},D7=h.module({...k({...BZ,...OZ},(Z,X)=>(Z in rL)?[]:[Z,["instanceof",X]]),Array:F7,TypedArray:T7,FormData:O7})});var oL,nL,G9;var VX=O(()=>{W0();a0();oL=a({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"}),nL=a({domain:"number",divisor:1}),G9=h.module({root:f.number,integer:nL,epoch:oL,safe:a({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 Q0=(Z,X,Q)=>{let U={domain:"string",pattern:{rule:Z.source,flags:Z.flags,meta:X}};if(Q)U.meta={format:Q};return v2("intersection",U)},w7,g7,tL,eL,A7,ZG,XG=(Z)=>{let X=Z.replace(/[ -]+/g,""),Q=0,U,q,J=!1;for(let Y=X.length-1;Y>=0;Y--){if(U=X.substring(Y,Y+1),q=Number.parseInt(U,10),J)q*=2,Q+=q>=10?q%10+1:q;else Q+=q;J=!J}return!!(Q%10===0?X:!1)},QG,UG,qG,JG=(Z)=>!Number.isNaN(new Date(Z).valueOf()),S7,j7,YG,C7,WG,$G,LG,N7="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",b1,GG,$0="(?:[0-9a-fA-F]{1,4})",VG,_G,p2="a JSON string",v7=(Z)=>{if(!(Z instanceof SyntaxError))throw Z;return`must be ${p2} (${Z})`},zG,HG=(Z,X)=>{if(Z.length===0)return X.error({code:"predicate",expected:p2,actual:"empty"});try{return JSON.parse(Z)}catch(Q){return X.error({code:"predicate",expected:p2,problem:v7(Q)})}},FG,E7,BG,x7,p6,V9,MG,OG,RG,TG,KG,b7,DG,I7="a regex pattern",PG,wG,AG,f7,SG,y7,jG,CG=(Z)=>URL.canParse(Z),k7,NG,EG,h7;var m7=O(()=>{W0();b();a0();VX();w7=Q0(B6,"a well-formed integer string"),g7=h.module({root:w7,parse:a({in:w7,morphs:(Z,X)=>{let Q=Number.parseInt(Z);return Number.isSafeInteger(Q)?Q:X.error("an integer in the range Number.MIN_SAFE_INTEGER to Number.MAX_SAFE_INTEGER")},declaredOut:f.integer})},{name:"string.integer"}),tL=Q0(/^[\dA-Fa-f]+$/,"hex characters only"),eL=h.module({root:Q0(/^(?:[\d+/A-Za-z]{4})*(?:[\d+/A-Za-z]{2}==|[\d+/A-Za-z]{3}=)?$/,"base64-encoded"),url:Q0(/^(?:[\w-]{4})*(?:[\w-]{2}(?:==|%3D%3D)?|[\w-]{3}(?:=|%3D)?)?$/,"base64url-encoded")},{name:"string.base64"}),A7=Q0(/^[A-Z].*$/,"capitalized"),ZG=h.module({root:a({in:"string",morphs:(Z)=>Z.charAt(0).toUpperCase()+Z.slice(1),declaredOut:A7}),preformatted:A7},{name:"string.capitalize"}),QG=/^(?: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}))$/,UG=a({domain:"string",pattern:{meta:"a credit card number",rule:QG.source},predicate:{meta:"a credit card number",predicate:XG}}),qG=/^([+-]?\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)?)?)?)?$/,S7=a({domain:"string",predicate:{meta:"a parsable date",predicate:JG}}).assertHasKind("intersection"),j7=g7.root.internal.narrow((Z,X)=>{let Q=Number.parseInt(Z),U=G9.epoch(Q);if(U instanceof j0)return X.errors.merge(U),!1;return!0}).configure({description:"an integer string representing a safe Unix timestamp"},"self").assertHasKind("intersection"),YG=h.module({root:j7,parse:a({in:j7,morphs:(Z)=>new Date(Z),declaredOut:f.Date})},{name:"string.date.epoch"}),C7=Q0(qG,"an ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ) date").internal.assertHasKind("intersection"),WG=h.module({root:C7,parse:a({in:C7,morphs:(Z)=>new Date(Z),declaredOut:f.Date})},{name:"string.date.iso"}),$G=h.module({root:S7,parse:a({declaredIn:S7,in:"string",morphs:(Z,X)=>{let Q=new Date(Z);if(Number.isNaN(Q.valueOf()))return X.error("a parsable date");return Q},declaredOut:f.Date}),iso:WG,epoch:YG},{name:"string.date"}),LG=Q0(/^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$/,"an email address","email"),b1=`(${N7}[.]){3}${N7}`,GG=new RegExp(`^${b1}$`),VG=new RegExp(`^((?:${$0}:){7}(?:${$0}|:)|(?:${$0}:){6}(?:${b1}|:${$0}|:)|(?:${$0}:){5}(?::${b1}|(:${$0}){1,2}|:)|(?:${$0}:){4}(?:(:${$0}){0,1}:${b1}|(:${$0}){1,3}|:)|(?:${$0}:){3}(?:(:${$0}){0,2}:${b1}|(:${$0}){1,4}|:)|(?:${$0}:){2}(?:(:${$0}){0,3}:${b1}|(:${$0}){1,5}|:)|(?:${$0}:){1}(?:(:${$0}){0,4}:${b1}|(:${$0}){1,6}|:)|(?::((?::${$0}){0,5}:${b1}|(?::${$0}){1,7}|:)))(%[0-9a-zA-Z.]{1,})?$`),_G=h.module({root:["v4 | v6","@","an IP address"],v4:Q0(GG,"an IPv4 address","ipv4"),v6:Q0(VG,"an IPv6 address","ipv6")},{name:"string.ip"}),zG=a({meta:p2,domain:"string",predicate:{meta:p2,predicate:(Z,X)=>{try{return JSON.parse(Z),!0}catch(Q){return X.reject({code:"predicate",expected:p2,problem:v7(Q)})}}}}),FG=h.module({root:zG,parse:a({meta:"safe JSON string parser",in:"string",morphs:HG,declaredOut:f.jsonObject})},{name:"string.json"}),E7=Q0(/^[a-z]*$/,"only lowercase letters"),BG=h.module({root:a({in:"string",morphs:(Z)=>Z.toLowerCase(),declaredOut:E7}),preformatted:E7},{name:"string.lower"}),x7=["NFC","NFD","NFKC","NFKD"],p6=k(x7,(Z,X)=>[X,a({domain:"string",predicate:(Q)=>Q.normalize(X)===Q,meta:`${X}-normalized unicode`})]),V9=k(x7,(Z,X)=>[X,a({in:"string",morphs:(Q)=>Q.normalize(X),declaredOut:p6[X]})]),MG=h.module({root:V9.NFC,preformatted:p6.NFC},{name:"string.normalize.NFC"}),OG=h.module({root:V9.NFD,preformatted:p6.NFD},{name:"string.normalize.NFD"}),RG=h.module({root:V9.NFKC,preformatted:p6.NFKC},{name:"string.normalize.NFKC"}),TG=h.module({root:V9.NFKD,preformatted:p6.NFKD},{name:"string.normalize.NFKD"}),KG=h.module({root:"NFC",NFC:MG,NFD:OG,NFKC:RG,NFKD:TG},{name:"string.normalize"}),b7=Q0(N4,"a well-formed numeric string"),DG=h.module({root:b7,parse:a({in:b7,morphs:(Z)=>Number.parseFloat(Z),declaredOut:f.number})},{name:"string.numeric"}),PG=a({domain:"string",predicate:{meta:I7,predicate:(Z,X)=>{try{return new RegExp(Z),!0}catch(Q){return X.reject({code:"predicate",expected:I7,problem:String(Q)})}}},meta:{format:"regex"}}),wG=/^(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-]+)*))?$/,AG=Q0(wG,"a semantic version (see https://semver.org/)"),f7=Q0(/^\S.*\S$|^\S?$/,"trimmed"),SG=h.module({root:a({in:"string",morphs:(Z)=>Z.trim(),declaredOut:f7}),preformatted:f7},{name:"string.trim"}),y7=Q0(/^[A-Z]*$/,"only uppercase letters"),jG=h.module({root:a({in:"string",morphs:(Z)=>Z.toUpperCase(),declaredOut:y7}),preformatted:y7},{name:"string.upper"}),k7=a({domain:"string",predicate:{meta:"a URL string",predicate:CG},meta:{format:"uri"}}),NG=h.module({root:k7,parse:a({declaredIn:k7,in:"string",morphs:(Z,X)=>{try{return new URL(Z)}catch{return X.error("a URL string")}},declaredOut:a(URL)})},{name:"string.url"}),EG=h.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:Q0(/^[\da-f]{8}-[\da-f]{4}-1[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv1"),v2:Q0(/^[\da-f]{8}-[\da-f]{4}-2[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv2"),v3:Q0(/^[\da-f]{8}-[\da-f]{4}-3[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv3"),v4:Q0(/^[\da-f]{8}-[\da-f]{4}-4[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv4"),v5:Q0(/^[\da-f]{8}-[\da-f]{4}-5[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv5"),v6:Q0(/^[\da-f]{8}-[\da-f]{4}-6[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv6"),v7:Q0(/^[\da-f]{8}-[\da-f]{4}-7[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv7"),v8:Q0(/^[\da-f]{8}-[\da-f]{4}-8[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv8")},{name:"string.uuid"}),h7=h.module({root:f.string,alpha:Q0(/^[A-Za-z]*$/,"only letters"),alphanumeric:Q0(/^[\dA-Za-z]*$/,"only letters and digits 0-9"),hex:tL,base64:eL,capitalize:ZG,creditCard:UG,date:$G,digits:Q0(/^\d*$/,"only digits 0-9"),email:LG,integer:g7,ip:_G,json:FG,lower:BG,normalize:KG,numeric:DG,regex:PG,semver:AG,trim:SG,upper:jG,url:NG,uuid:EG},{name:"string"})});var u7,p7,bG,l7,d7,IG,c7,fG,i7,yG,s7,kG,a7,gG,r7,vG,o7,xG,n7;var t7=O(()=>{W0();b();a0();u7=h.module({bigint:f.bigint,boolean:f.boolean,false:f.false,never:f.never,null:f.null,number:f.number,object:f.object,string:f.string,symbol:f.symbol,true:f.true,unknown:f.unknown,undefined:f.undefined}),p7=h.module({root:f.unknown,any:f.unknown},{name:"unknown"}),bG=h.module({root:f.jsonObject,stringify:v2("morph",{in:f.jsonObject,morphs:(Z)=>JSON.stringify(Z),declaredOut:f.string})},{name:"object.json"}),l7=h.module({root:f.object,json:bG},{name:"object"});d7=class d7 extends M0{description='instantiate an object from an index signature and corresponding value type like `Record("string", "number")`'};IG=h0(["K",f.key],"V")((Z)=>({domain:"object",index:{signature:Z.K,value:Z.V}}),d7);c7=class c7 extends M0{description='pick a set of properties from an object like `Pick(User, "name | age")`'};fG=h0(["T",f.object],["K",f.key])((Z)=>Z.T.pick(Z.K),c7);i7=class i7 extends M0{description='omit a set of properties from an object like `Omit(User, "age")`'};yG=h0(["T",f.object],["K",f.key])((Z)=>Z.T.omit(Z.K),i7);s7=class s7 extends M0{description="make all named properties of an object optional like `Partial(User)`"};kG=h0(["T",f.object])((Z)=>Z.T.partial(),s7);a7=class a7 extends M0{description="make all named properties of an object required like `Required(User)`"};gG=h0(["T",f.object])((Z)=>Z.T.required(),a7);r7=class r7 extends M0{description='exclude branches of a union like `Exclude("boolean", "true")`'};vG=h0("T","U")((Z)=>Z.T.exclude(Z.U),r7);o7=class o7 extends M0{description='extract branches of a union like `Extract("0 | false | 1", "number")`'};xG=h0("T","U")((Z)=>Z.T.extract(Z.U),o7),n7=h.module({Exclude:vG,Extract:xG,Omit:yG,Partial:kG,Pick:fG,Record:IG,Required:gG})});var B1,_0,r0,hG,mG,uG,Qb,pG,lG;var e7=O(()=>{a0();z7();P7();VX();m7();t7();B1=u6({...u7,...n7,...D7,..._7,string:h7,number:G9,object:l7,unknown:p7},{prereducedAliases:!0,name:"ark"}),_0=B1.export();Object.assign(u2.ambient,_0);u2.typeAttachments={string:_0.string.root,number:_0.number.root,bigint:_0.bigint,boolean:_0.boolean,symbol:_0.symbol,undefined:_0.undefined,null:_0.null,object:_0.object.root,unknown:_0.unknown.root,false:_0.false,true:_0.true,never:_0.never,arrayIndex:_0.Array.index,Key:_0.Key,Record:_0.Record,Array:_0.Array.root,Date:_0.Date};r0=Object.assign(B1.type,u2.typeAttachments),hG=B1.match,mG=B1.fn,uG=B1.generic,Qb=B1.schema,pG=B1.define,lG=B1.declare});var Zq=O(()=>{W0()});var _X=O(()=>{W0();b();z5();e8();e7();Zq();a0();LX();H5()});class K0{static evaluate(Z,X){if(Z===null||Z===void 0)return console.error(`Error evaluating expression: ${Z}`),null;try{if(Z.includes("${")){let Q=this.interpolate(Z,X);if(!isNaN(Number(Q))&&Q.trim()!=="")return Number(Q);return Q}return this.evaluateExpression(Z,X)}catch(Q){return console.error(`Error evaluating expression: ${Z}`,Q),null}}static interpolate(Z,X){return Z.replace(_9.TEMPLATE_INTERPOLATION,(Q,U)=>{try{let q=this.evaluateExpression(U,X);if(q===void 0||q===null)return"undefined";return String(q)}catch(q){return console.error(`Error in interpolation: ${Q}`,q),Q}})}static evaluateMathExpression(Z){try{return Function("Math",`return ${Z}`)(Math)}catch(X){throw Error(`Error evaluating mathematical expression: ${Z}`)}}static evaluateExpression(Z,X){if(_9.NESTED_PROPERTY_ACCESS.test(Z))return this.getNestedValue(Z,X);if(_9.SINGLE_LEVEL_ACCESS.test(Z))return this.getNestedValue(Z,X);try{return Function("context","with(context) { return "+Z+" }")(X)}catch(Q){return console.error(`ERROR evaluating expression '${Z}':`,Q),Z}}static getNestedValue(Z,X){let Q=Z.split("."),U=X;for(let q of Q){if(U===null||U===void 0||typeof U!=="object"||!(q in U))return;U=U[q]}return U}static findVariableInContext(Z,X){let Q=this.getNestedValue(Z,X);if(Q!==void 0)return Q;for(let U of Xq){let q=`${U}.${Z}`,J=this.getNestedValue(q,X);if(J!==void 0)return J}return}static evaluateMath(Z,X){let Q=Z;Q=Q.replace(/\b(data|vars|env|state|request|computed)(\.[a-zA-Z_][a-zA-Z0-9_]*)+/g,(U)=>{let q=this.getNestedValue(U,X);if(q!==void 0)return typeof q==="string"?`"${q}"`:String(q);return U}),Q=Q.replace(_9.WORD_BOUNDARY,(U)=>{if(cG.includes(U))return U;if(Xq.has(U))return U;let q=this.findVariableInContext(U,X);if(q!==void 0)return typeof q==="string"?`"${q}"`:String(q);return U});try{return this.evaluateMathExpression(Q)}catch(U){return console.error(`Error in mathematical evaluation: ${Z}`,U),NaN}}}var dG,Xq,m0,cG,_9;var l6=O(()=>{dG={DATA:"data",VARS:"vars",REQUEST:"request",COMPUTED:"computed",ENV:"env",EVENT:"event",TIMESTAMP:"timestamp"},Xq=new Set(Object.values(dG)),m0={RANDOM:"random",FLOOR:"floor",CEIL:"ceil",ROUND:"round",SQRT:"sqrt",ABS:"abs",POW:"pow",MIN:"min",MAX:"max",SIN:"sin",COS:"cos",TAN:"tan"},cG=[m0.RANDOM,m0.FLOOR,m0.CEIL,m0.ROUND,m0.SQRT,m0.ABS,m0.POW,m0.MIN,m0.MAX,m0.SIN,m0.COS,m0.TAN],_9={TEMPLATE_INTERPOLATION:/\$\{([^}]+)\}/g,NESTED_PROPERTY_ACCESS:/^(data|vars|request|computed|env|state)(\.[a-zA-Z0-9_]+)+$/,SINGLE_LEVEL_ACCESS:/^(vars|env|state)(\.[a-zA-Z0-9_]+)$/,WORD_BOUNDARY:/\b[a-zA-Z_][a-zA-Z0-9_]*\b/g}});var zX={};lY(zX,{BuiltInAction:()=>U2,ActionRegistry:()=>d6});class d6{static instance;actions=new Map;constructor(Z=!0){if(Z)this.registerDefaults()}static getInstance(Z=!0){if(!this.instance)this.instance=new d6(Z);return this.instance}register(Z,X){let Q=Z.toUpperCase();if(typeof X==="function")this.actions.set(Q,{handler:X});else this.actions.set(Q,X)}get(Z){return this.actions.get(Z.toUpperCase())?.handler}getDefinition(Z){return this.actions.get(Z.toUpperCase())}getDefinitions(){let Z={};return this.actions.forEach((X,Q)=>{Z[Q]=X}),Z}get Handlers(){let Z=new Map;return this.actions.forEach((X,Q)=>{Z.set(Q,X.handler)}),Z}registerDefaults(){this.register(U2.LOG,{description:"Logs a message to the console with string interpolation support",params:r0({"message?":"string","content?":"string"}),returns:r0({message:"string"}),handler:(Z,X)=>{let Q=Z.params?.message||Z.params?.content||"Log Trigger",U=typeof Q==="string"?K0.interpolate(Q,X):String(Q);return console.log(`[TriggerLog] ${U}`),{message:U}}}),this.register(U2.MATH,{description:"Evaluates a mathematical expression or performs string concatenation",params:r0({expression:"string"}),returns:r0("number | string"),handler:(Z,X)=>{let Q=String(Z.params?.expression||"0");return K0.evaluate(Q,X)}}),this.register(U2.FORWARD,Qq),this.register(U2.FETCH,Qq)}}var U2,iG=async(Z,X)=>{let Q=Z.params?.url||"",U=typeof Q==="string"?K0.interpolate(Q,X):String(Q),q=String(Z.params?.method||"POST").toUpperCase();if(Z.params?.query&&typeof Z.params.query==="object"){let L=new URLSearchParams;for(let[G,_]of Object.entries(Z.params.query))if(_!==void 0&&_!==null){let H=typeof _==="string"?K0.interpolate(_,X):typeof _==="object"?JSON.stringify(_):String(_);L.append(G,H)}let V=L.toString();if(V)U+=(U.includes("?")?"&":"?")+V}let Y=["POST","PUT","PATCH"].includes(q),{bodyContent:W,defaultContentType:$}=(()=>{if(!Y||Z.params?.body==null)return{bodyContent:Y?JSON.stringify(X.data):void 0,defaultContentType:"application/json"};let L=Z.params.body;if(typeof L==="string"){let V=K0.interpolate(L,X),G=V.trimStart().startsWith("{")||V.trimStart().startsWith("[");return{bodyContent:V,defaultContentType:G?"application/json":"text/plain"}}return{bodyContent:JSON.stringify(L),defaultContentType:"application/json"}})();try{let L=await fetch(U,{method:q,headers:{"Content-Type":$,...typeof Z.params?.headers==="object"&&Z.params.headers!==null&&!Array.isArray(Z.params.headers)?Z.params.headers:{}},...Y&&W!==void 0?{body:W}:{}});return{url:U,method:q,status:L.status,headers:(()=>{let V={};return L.headers.forEach((G,_)=>V[_]=G),V})(),body:await L.text()}}catch(L){return{url:U,method:q,error:String(L)}}},Qq;var l2=O(()=>{_X();l6();U2={LOG:"LOG",MATH:"MATH",FORWARD:"FORWARD",FETCH:"FETCH",EMIT_EVENT:"EMIT_EVENT"},Qq={description:"Forwards the current event data to a remote URL via HTTP",params:r0({url:"string","method?":"'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'","query?":"Record<string, unknown>","headers?":"Record<string, string>","body?":"string | Record<string, unknown>"}),returns:r0({url:"string",method:"string",status:"number",headers:"Record<string, string>",body:"string"}).or(r0({url:"string",method:"string",error:"string"})),handler:iG}});var c=C((HV)=>{var NX=Symbol.for("yaml.alias"),Mq=Symbol.for("yaml.document"),K9=Symbol.for("yaml.map"),Oq=Symbol.for("yaml.pair"),EX=Symbol.for("yaml.scalar"),D9=Symbol.for("yaml.seq"),O1=Symbol.for("yaml.node.type"),WV=(Z)=>!!Z&&typeof Z==="object"&&Z[O1]===NX,$V=(Z)=>!!Z&&typeof Z==="object"&&Z[O1]===Mq,LV=(Z)=>!!Z&&typeof Z==="object"&&Z[O1]===K9,GV=(Z)=>!!Z&&typeof Z==="object"&&Z[O1]===Oq,Rq=(Z)=>!!Z&&typeof Z==="object"&&Z[O1]===EX,VV=(Z)=>!!Z&&typeof Z==="object"&&Z[O1]===D9;function Tq(Z){if(Z&&typeof Z==="object")switch(Z[O1]){case K9:case D9:return!0}return!1}function _V(Z){if(Z&&typeof Z==="object")switch(Z[O1]){case NX:case K9:case EX:case D9:return!0}return!1}var zV=(Z)=>(Rq(Z)||Tq(Z))&&!!Z.anchor;HV.ALIAS=NX;HV.DOC=Mq;HV.MAP=K9;HV.NODE_TYPE=O1;HV.PAIR=Oq;HV.SCALAR=EX;HV.SEQ=D9;HV.hasAnchor=zV;HV.isAlias=WV;HV.isCollection=Tq;HV.isDocument=$V;HV.isMap=LV;HV.isNode=_V;HV.isPair=GV;HV.isScalar=Rq;HV.isSeq=VV});var t6=C((bV)=>{var H0=c(),b0=Symbol("break visit"),Kq=Symbol("skip children"),W1=Symbol("remove node");function P9(Z,X){let Q=Dq(X);if(H0.isDocument(Z)){if(i2(null,Z.contents,Q,Object.freeze([Z]))===W1)Z.contents=null}else i2(null,Z,Q,Object.freeze([]))}P9.BREAK=b0;P9.SKIP=Kq;P9.REMOVE=W1;function i2(Z,X,Q,U){let q=Pq(Z,X,Q,U);if(H0.isNode(q)||H0.isPair(q))return wq(Z,U,q),i2(Z,q,Q,U);if(typeof q!=="symbol"){if(H0.isCollection(X)){U=Object.freeze(U.concat(X));for(let J=0;J<X.items.length;++J){let Y=i2(J,X.items[J],Q,U);if(typeof Y==="number")J=Y-1;else if(Y===b0)return b0;else if(Y===W1)X.items.splice(J,1),J-=1}}else if(H0.isPair(X)){U=Object.freeze(U.concat(X));let J=i2("key",X.key,Q,U);if(J===b0)return b0;else if(J===W1)X.key=null;let Y=i2("value",X.value,Q,U);if(Y===b0)return b0;else if(Y===W1)X.value=null}}return q}async function w9(Z,X){let Q=Dq(X);if(H0.isDocument(Z)){if(await s2(null,Z.contents,Q,Object.freeze([Z]))===W1)Z.contents=null}else await s2(null,Z,Q,Object.freeze([]))}w9.BREAK=b0;w9.SKIP=Kq;w9.REMOVE=W1;async function s2(Z,X,Q,U){let q=await Pq(Z,X,Q,U);if(H0.isNode(q)||H0.isPair(q))return wq(Z,U,q),s2(Z,q,Q,U);if(typeof q!=="symbol"){if(H0.isCollection(X)){U=Object.freeze(U.concat(X));for(let J=0;J<X.items.length;++J){let Y=await s2(J,X.items[J],Q,U);if(typeof Y==="number")J=Y-1;else if(Y===b0)return b0;else if(Y===W1)X.items.splice(J,1),J-=1}}else if(H0.isPair(X)){U=Object.freeze(U.concat(X));let J=await s2("key",X.key,Q,U);if(J===b0)return b0;else if(J===W1)X.key=null;let Y=await s2("value",X.value,Q,U);if(Y===b0)return b0;else if(Y===W1)X.value=null}}return q}function Dq(Z){if(typeof Z==="object"&&(Z.Collection||Z.Node||Z.Value))return Object.assign({Alias:Z.Node,Map:Z.Node,Scalar:Z.Node,Seq:Z.Node},Z.Value&&{Map:Z.Value,Scalar:Z.Value,Seq:Z.Value},Z.Collection&&{Map:Z.Collection,Seq:Z.Collection},Z);return Z}function Pq(Z,X,Q,U){if(typeof Q==="function")return Q(Z,X,U);if(H0.isMap(X))return Q.Map?.(Z,X,U);if(H0.isSeq(X))return Q.Seq?.(Z,X,U);if(H0.isPair(X))return Q.Pair?.(Z,X,U);if(H0.isScalar(X))return Q.Scalar?.(Z,X,U);if(H0.isAlias(X))return Q.Alias?.(Z,X,U);return}function wq(Z,X,Q){let U=X[X.length-1];if(H0.isCollection(U))U.items[Z]=Q;else if(H0.isPair(U))if(Z==="key")U.key=Q;else U.value=Q;else if(H0.isDocument(U))U.contents=Q;else{let q=H0.isAlias(U)?"alias":"scalar";throw Error(`Cannot replace node with ${q} parent`)}}bV.visit=P9;bV.visitAsync=w9});var bX=C((vV)=>{var Aq=c(),yV=t6(),kV={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},gV=(Z)=>Z.replace(/[!,[\]{}]/g,(X)=>kV[X]);class p0{constructor(Z,X){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},p0.defaultYaml,Z),this.tags=Object.assign({},p0.defaultTags,X)}clone(){let Z=new p0(this.yaml,this.tags);return Z.docStart=this.docStart,Z}atDocument(){let Z=new p0(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:p0.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},p0.defaultTags);break}return Z}add(Z,X){if(this.atNextDocument)this.yaml={explicit:p0.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},p0.defaultTags),this.atNextDocument=!1;let Q=Z.trim().split(/[ \t]+/),U=Q.shift();switch(U){case"%TAG":{if(Q.length!==2){if(X(0,"%TAG directive should contain exactly two parts"),Q.length<2)return!1}let[q,J]=Q;return this.tags[q]=J,!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 J=/^\d+\.\d+$/.test(q);return X(6,`Unsupported YAML version ${q}`,J),!1}}default:return X(0,`Unknown directive ${U}`,!0),!1}}tagName(Z,X){if(Z==="!")return"!";if(Z[0]!=="!")return X(`Not a valid tag: ${Z}`),null;if(Z[1]==="<"){let J=Z.slice(2,-1);if(J==="!"||J==="!!")return X(`Verbatim tags aren't resolved, so ${Z} is invalid.`),null;if(Z[Z.length-1]!==">")X("Verbatim tags must end with a >");return J}let[,Q,U]=Z.match(/^(.*!)([^!]*)$/s);if(!U)X(`The ${Z} tag has no suffix`);let q=this.tags[Q];if(q)try{return q+decodeURIComponent(U)}catch(J){return X(String(J)),null}if(Q==="!")return Z;return X(`Could not resolve tag: ${Z}`),null}tagString(Z){for(let[X,Q]of Object.entries(this.tags))if(Z.startsWith(Q))return X+gV(Z.substring(Q.length));return Z[0]==="!"?Z:`!<${Z}>`}toString(Z){let X=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],Q=Object.entries(this.tags),U;if(Z&&Q.length>0&&Aq.isNode(Z.contents)){let q={};yV.visit(Z.contents,(J,Y)=>{if(Aq.isNode(Y)&&Y.tag)q[Y.tag]=!0}),U=Object.keys(q)}else U=[];for(let[q,J]of Q){if(q==="!!"&&J==="tag:yaml.org,2002:")continue;if(!Z||U.some((Y)=>Y.startsWith(J)))X.push(`%TAG ${q} ${J}`)}return X.join(`
47
+ `)}}p0.defaultYaml={explicit:!1,version:"1.2"};p0.defaultTags={"!!":"tag:yaml.org,2002:"};vV.Directives=p0});var A9=C((pV)=>{var Sq=c(),hV=t6();function mV(Z){if(/[\x00-\x19\s,[\]{}]/.test(Z)){let Q=`Anchor must not contain whitespace or control characters: ${JSON.stringify(Z)}`;throw Error(Q)}return!0}function jq(Z){let X=new Set;return hV.visit(Z,{Value(Q,U){if(U.anchor)X.add(U.anchor)}}),X}function Cq(Z,X){for(let Q=1;;++Q){let U=`${Z}${Q}`;if(!X.has(U))return U}}function uV(Z,X){let Q=[],U=new Map,q=null;return{onAnchor:(J)=>{Q.push(J),q??(q=jq(Z));let Y=Cq(X,q);return q.add(Y),Y},setAnchors:()=>{for(let J of Q){let Y=U.get(J);if(typeof Y==="object"&&Y.anchor&&(Sq.isScalar(Y.node)||Sq.isCollection(Y.node)))Y.node.anchor=Y.anchor;else{let W=Error("Failed to resolve repeated object (this should not happen)");throw W.source=J,W}}},sourceObjects:U}}pV.anchorIsValid=mV;pV.anchorNames=jq;pV.createNodeAnchors=uV;pV.findNewAnchor=Cq});var IX=C((sV)=>{function e6(Z,X,Q,U){if(U&&typeof U==="object")if(Array.isArray(U))for(let q=0,J=U.length;q<J;++q){let Y=U[q],W=e6(Z,U,String(q),Y);if(W===void 0)delete U[q];else if(W!==Y)U[q]=W}else if(U instanceof Map)for(let q of Array.from(U.keys())){let J=U.get(q),Y=e6(Z,U,q,J);if(Y===void 0)U.delete(q);else if(Y!==J)U.set(q,Y)}else if(U instanceof Set)for(let q of Array.from(U)){let J=e6(Z,U,q,q);if(J===void 0)U.delete(q);else if(J!==q)U.delete(q),U.add(J)}else for(let[q,J]of Object.entries(U)){let Y=e6(Z,U,q,J);if(Y===void 0)delete U[q];else if(Y!==J)U[q]=Y}return Z.call(X,Q,U)}sV.applyReviver=e6});var g1=C((oV)=>{var rV=c();function Nq(Z,X,Q){if(Array.isArray(Z))return Z.map((U,q)=>Nq(U,String(q),Q));if(Z&&typeof Z.toJSON==="function"){if(!Q||!rV.hasAnchor(Z))return Z.toJSON(X,Q);let U={aliasCount:0,count:1,res:void 0};Q.anchors.set(Z,U),Q.onCreate=(J)=>{U.res=J,delete Q.onCreate};let q=Z.toJSON(X,Q);if(Q.onCreate)Q.onCreate(q);return q}if(typeof Z==="bigint"&&!Q?.keep)return Number(Z);return Z}oV.toJS=Nq});var S9=C((Z_)=>{var tV=IX(),Eq=c(),eV=g1();class bq{constructor(Z){Object.defineProperty(this,Eq.NODE_TYPE,{value:Z})}clone(){let Z=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(this.range)Z.range=this.range.slice();return Z}toJS(Z,{mapAsMap:X,maxAliasCount:Q,onAnchor:U,reviver:q}={}){if(!Eq.isDocument(Z))throw TypeError("A document argument is required");let J={anchors:new Map,doc:Z,keep:!0,mapAsMap:X===!0,mapKeyWarned:!1,maxAliasCount:typeof Q==="number"?Q:100},Y=eV.toJS(this,"",J);if(typeof U==="function")for(let{count:W,res:$}of J.anchors.values())U($,W);return typeof q==="function"?tV.applyReviver(q,{"":Y},"",Y):Y}}Z_.NodeBase=bq});var Z4=C((Y_)=>{var Q_=A9(),U_=t6(),a2=c(),q_=S9(),J_=g1();class Iq extends q_.NodeBase{constructor(Z){super(a2.ALIAS);this.source=Z,Object.defineProperty(this,"tag",{set(){throw Error("Alias nodes cannot have tags")}})}resolve(Z,X){let Q;if(X?.aliasResolveCache)Q=X.aliasResolveCache;else if(Q=[],U_.visit(Z,{Node:(q,J)=>{if(a2.isAlias(J)||a2.hasAnchor(J))Q.push(J)}}),X)X.aliasResolveCache=Q;let U=void 0;for(let q of Q){if(q===this)break;if(q.anchor===this.source)U=q}return U}toJSON(Z,X){if(!X)return{source:this.source};let{anchors:Q,doc:U,maxAliasCount:q}=X,J=this.resolve(U,X);if(!J){let W=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(W)}let Y=Q.get(J);if(!Y)J_.toJS(J,null,X),Y=Q.get(J);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=j9(U,J,Q);if(Y.count*Y.aliasCount>q)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return Y.res}toString(Z,X,Q){let U=`*${this.source}`;if(Z){if(Q_.anchorIsValid(this.source),Z.options.verifyAliasOrder&&!Z.anchors.has(this.source)){let q=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(q)}if(Z.implicitKey)return`${U} `}return U}}function j9(Z,X,Q){if(a2.isAlias(X)){let U=X.resolve(Z),q=Q&&U&&Q.get(U);return q?q.count*q.aliasCount:0}else if(a2.isCollection(X)){let U=0;for(let q of X.items){let J=j9(Z,q,Q);if(J>U)U=J}return U}else if(a2.isPair(X)){let U=j9(Z,X.key,Q),q=j9(Z,X.value,Q);return Math.max(U,q)}return 1}Y_.Alias=Iq});var L0=C((__)=>{var $_=c(),L_=S9(),G_=g1(),V_=(Z)=>!Z||typeof Z!=="function"&&typeof Z!=="object";class Y2 extends L_.NodeBase{constructor(Z){super($_.SCALAR);this.value=Z}toJSON(Z,X){return X?.keep?this.value:G_.toJS(this.value,Z,X)}toString(){return String(this.value)}}Y2.BLOCK_FOLDED="BLOCK_FOLDED";Y2.BLOCK_LITERAL="BLOCK_LITERAL";Y2.PLAIN="PLAIN";Y2.QUOTE_DOUBLE="QUOTE_DOUBLE";Y2.QUOTE_SINGLE="QUOTE_SINGLE";__.Scalar=Y2;__.isScalarValue=V_});var X4=C((R_)=>{var F_=Z4(),W2=c(),fq=L0(),B_="tag:yaml.org,2002:";function M_(Z,X,Q){if(X){let U=Q.filter((J)=>J.tag===X),q=U.find((J)=>!J.format)??U[0];if(!q)throw Error(`Tag ${X} not found`);return q}return Q.find((U)=>U.identify?.(Z)&&!U.format)}function O_(Z,X,Q){if(W2.isDocument(Z))Z=Z.contents;if(W2.isNode(Z))return Z;if(W2.isPair(Z)){let G=Q.schema[W2.MAP].createNode?.(Q.schema,null,Q);return G.items.push(Z),G}if(Z instanceof String||Z instanceof Number||Z instanceof Boolean||typeof BigInt<"u"&&Z instanceof BigInt)Z=Z.valueOf();let{aliasDuplicateObjects:U,onAnchor:q,onTagObj:J,schema:Y,sourceObjects:W}=Q,$=void 0;if(U&&Z&&typeof Z==="object")if($=W.get(Z),$)return $.anchor??($.anchor=q(Z)),new F_.Alias($.anchor);else $={anchor:null,node:null},W.set(Z,$);if(X?.startsWith("!!"))X=B_+X.slice(2);let L=M_(Z,X,Y.tags);if(!L){if(Z&&typeof Z.toJSON==="function")Z=Z.toJSON();if(!Z||typeof Z!=="object"){let G=new fq.Scalar(Z);if($)$.node=G;return G}L=Z instanceof Map?Y[W2.MAP]:(Symbol.iterator in Object(Z))?Y[W2.SEQ]:Y[W2.MAP]}if(J)J(L),delete Q.onTagObj;let V=L?.createNode?L.createNode(Q.schema,Z,Q):typeof L?.nodeClass?.from==="function"?L.nodeClass.from(Q.schema,Z,Q):new fq.Scalar(Z);if(X)V.tag=X;else if(!L.default)V.tag=L.tag;if($)$.node=V;return V}R_.createNode=O_});var C9=C((P_)=>{var K_=X4(),$1=c(),D_=S9();function fX(Z,X,Q){let U=Q;for(let q=X.length-1;q>=0;--q){let J=X[q];if(typeof J==="number"&&Number.isInteger(J)&&J>=0){let Y=[];Y[J]=U,U=Y}else U=new Map([[J,U]])}return K_.createNode(U,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw Error("This should not happen, please report a bug.")},schema:Z,sourceObjects:new Map})}var yq=(Z)=>Z==null||typeof Z==="object"&&!!Z[Symbol.iterator]().next().done;class kq extends D_.NodeBase{constructor(Z,X){super(Z);Object.defineProperty(this,"schema",{value:X,configurable:!0,enumerable:!1,writable:!0})}clone(Z){let X=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));if(Z)X.schema=Z;if(X.items=X.items.map((Q)=>$1.isNode(Q)||$1.isPair(Q)?Q.clone(Z):Q),this.range)X.range=this.range.slice();return X}addIn(Z,X){if(yq(Z))this.add(X);else{let[Q,...U]=Z,q=this.get(Q,!0);if($1.isCollection(q))q.addIn(U,X);else if(q===void 0&&this.schema)this.set(Q,fX(this.schema,U,X));else throw Error(`Expected YAML collection at ${Q}. Remaining path: ${U}`)}}deleteIn(Z){let[X,...Q]=Z;if(Q.length===0)return this.delete(X);let U=this.get(X,!0);if($1.isCollection(U))return U.deleteIn(Q);else throw Error(`Expected YAML collection at ${X}. Remaining path: ${Q}`)}getIn(Z,X){let[Q,...U]=Z,q=this.get(Q,!0);if(U.length===0)return!X&&$1.isScalar(q)?q.value:q;else return $1.isCollection(q)?q.getIn(U,X):void 0}hasAllNullValues(Z){return this.items.every((X)=>{if(!$1.isPair(X))return!1;let Q=X.value;return Q==null||Z&&$1.isScalar(Q)&&Q.value==null&&!Q.commentBefore&&!Q.comment&&!Q.tag})}hasIn(Z){let[X,...Q]=Z;if(Q.length===0)return this.has(X);let U=this.get(X,!0);return $1.isCollection(U)?U.hasIn(Q):!1}setIn(Z,X){let[Q,...U]=Z;if(U.length===0)this.set(Q,X);else{let q=this.get(Q,!0);if($1.isCollection(q))q.setIn(U,X);else if(q===void 0&&this.schema)this.set(Q,fX(this.schema,U,X));else throw Error(`Expected YAML collection at ${Q}. Remaining path: ${U}`)}}}P_.Collection=kq;P_.collectionFromPath=fX;P_.isEmptyPath=yq});var Q4=C((N_)=>{var j_=(Z)=>Z.replace(/^(?!$)(?: $)?/gm,"#");function yX(Z,X){if(/^\n+$/.test(Z))return Z.substring(1);return X?Z.replace(/^(?! *$)/gm,X):Z}var C_=(Z,X,Q)=>Z.endsWith(`
48
48
  `)?yX(Q,X):Q.includes(`
49
49
  `)?`
50
50
  `+yX(Q,X):(Z.endsWith(" ")?"":" ")+Q;N_.indentComment=yX;N_.lineComment=C_;N_.stringifyComment=j_});var vq=C((y_)=>{function f_(Z,X,Q="flow",{indentAtStart:U,lineWidth:q=80,minContentWidth:J=20,onFold:Y,onOverflow:W}={}){if(!q||q<0)return Z;if(q<J)J=0;let $=Math.max(1+J,1+q-X.length);if(Z.length<=$)return Z;let L=[],V={},G=q-X.length;if(typeof U==="number")if(U>q-Math.max(2,J))L.push(0);else G=q-U;let _=void 0,H=void 0,F=!1,z=-1,B=-1,K=-1;if(Q==="block"){if(z=gq(Z,z,X.length),z!==-1)G=z+$}for(let w;w=Z[z+=1];){if(Q==="quoted"&&w==="\\"){switch(B=z,Z[z+1]){case"x":z+=3;break;case"u":z+=5;break;case"U":z+=9;break;default:z+=1}K=z}if(w===`
51
51
  `){if(Q==="block")z=gq(Z,z,X.length);G=z+X.length+$,_=void 0}else{if(w===" "&&H&&H!==" "&&H!==`
52
- `&&H!=="\t"){let O=Z[z+1];if(O&&O!==" "&&O!==`
53
- `&&O!=="\t")_=z}if(z>=G)if(_)L.push(_),G=_+$,_=void 0;else if(Q==="quoted"){while(H===" "||H==="\t")H=w,w=Z[z+=1],F=!0;let O=z>K+1?z-2:B-1;if(V[O])return Z;L.push(O),V[O]=!0,G=O+$,_=void 0}else F=!0}H=w}if(F&&W)W();if(L.length===0)return Z;if(Y)Y();let P=Z.slice(0,L[0]);for(let w=0;w<L.length;++w){let O=L[w],S=L[w+1]||Z.length;if(O===0)P=`
54
- ${X}${Z.slice(0,S)}`;else{if(Q==="quoted"&&V[O])P+=`${Z[O]}\\`;P+=`
55
- ${X}${Z.slice(O+1,S)}`}}return P}function gq(Z,X,Q){let U=X,q=X+1,J=Z[q];while(J===" "||J==="\t")if(X<q+Q)J=Z[++X];else{do J=Z[++X];while(J&&J!==`
52
+ `&&H!=="\t"){let R=Z[z+1];if(R&&R!==" "&&R!==`
53
+ `&&R!=="\t")_=z}if(z>=G)if(_)L.push(_),G=_+$,_=void 0;else if(Q==="quoted"){while(H===" "||H==="\t")H=w,w=Z[z+=1],F=!0;let R=z>K+1?z-2:B-1;if(V[R])return Z;L.push(R),V[R]=!0,G=R+$,_=void 0}else F=!0}H=w}if(F&&W)W();if(L.length===0)return Z;if(Y)Y();let P=Z.slice(0,L[0]);for(let w=0;w<L.length;++w){let R=L[w],S=L[w+1]||Z.length;if(R===0)P=`
54
+ ${X}${Z.slice(0,S)}`;else{if(Q==="quoted"&&V[R])P+=`${Z[R]}\\`;P+=`
55
+ ${X}${Z.slice(R+1,S)}`}}return P}function gq(Z,X,Q){let U=X,q=X+1,J=Z[q];while(J===" "||J==="\t")if(X<q+Q)J=Z[++X];else{do J=Z[++X];while(J&&J!==`
56
56
  `);U=X,q=X+1,J=Z[q]}return U}y_.FOLD_BLOCK="block";y_.FOLD_FLOW="flow";y_.FOLD_QUOTED="quoted";y_.foldFlowLines=f_});var q4=C((p_)=>{var o0=L0(),v1=vq(),E9=(Z,X)=>({indentAtStart:X?Z.indent.length:Z.indentAtStart,lineWidth:Z.options.lineWidth,minContentWidth:Z.options.minContentWidth}),b9=(Z)=>/^(%|---|\.\.\.)/m.test(Z);function h_(Z,X,Q){if(!X||X<0)return!1;let U=X-Q,q=Z.length;if(q<=U)return!1;for(let J=0,Y=0;J<q;++J)if(Z[J]===`
57
57
  `){if(J-Y>U)return!0;if(Y=J+1,q-Y<=U)return!1}return!0}function U4(Z,X){let Q=JSON.stringify(Z);if(X.options.doubleQuotedAsJSON)return Q;let{implicitKey:U}=X,q=X.options.doubleQuotedMinMultiLineLength,J=X.indent||(b9(Z)?" ":""),Y="",W=0;for(let $=0,L=Q[$];L;L=Q[++$]){if(L===" "&&Q[$+1]==="\\"&&Q[$+2]==="n")Y+=Q.slice(W,$)+"\\ ",$+=1,W=$,L="\\";if(L==="\\")switch(Q[$+1]){case"u":{Y+=Q.slice(W,$);let V=Q.substr($+2,4);switch(V){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(V.substr(0,2)==="00")Y+="\\x"+V.substr(2);else Y+=Q.substr($,6)}$+=5,W=$+1}break;case"n":if(U||Q[$+2]==='"'||Q.length<q)$+=1;else{Y+=Q.slice(W,$)+`
58
58
 
@@ -68,52 +68,52 @@ ${Q}`)+"'";return X.implicitKey?U:v1.foldFlowLines(U,Q,v1.FOLD_FLOW,E9(X,!1))}fu
68
68
  `&&S!=="\t"&&S!==" ")break}let H=Q.substring(_),F=H.indexOf(`
69
69
  `);if(F===-1)G="-";else if(Q===H||F!==H.length-1){if(G="+",J)J()}else G="";if(H){if(Q=Q.slice(0,-H.length),H[H.length-1]===`
70
70
  `)H=H.slice(0,-1);H=H.replace(gX,`$&${L}`)}let z=!1,B,K=-1;for(B=0;B<Q.length;++B){let S=Q[B];if(S===" ")z=!0;else if(S===`
71
- `)K=B;else break}let P=Q.substring(0,K<B?K+1:B);if(P)Q=Q.substring(P.length),P=P.replace(/\n+/g,`$&${L}`);let O=(z?L?"2":"1":"")+G;if(Z){if(O+=" "+W(Z.replace(/ ?[\r\n]+/g," ")),q)q()}if(!V){let S=Q.replace(/\n+/g,`
72
- $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${L}`),N=!1,y=E9(U,!0);if(Y!=="folded"&&X!==o0.Scalar.BLOCK_FOLDED)y.onOverflow=()=>{N=!0};let A=v1.foldFlowLines(`${P}${S}${H}`,L,v1.FOLD_BLOCK,y);if(!N)return`>${O}
73
- ${L}${A}`}return Q=Q.replace(/\n+/g,`$&${L}`),`|${O}
71
+ `)K=B;else break}let P=Q.substring(0,K<B?K+1:B);if(P)Q=Q.substring(P.length),P=P.replace(/\n+/g,`$&${L}`);let R=(z?L?"2":"1":"")+G;if(Z){if(R+=" "+W(Z.replace(/ ?[\r\n]+/g," ")),q)q()}if(!V){let S=Q.replace(/\n+/g,`
72
+ $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${L}`),N=!1,y=E9(U,!0);if(Y!=="folded"&&X!==o0.Scalar.BLOCK_FOLDED)y.onOverflow=()=>{N=!0};let A=v1.foldFlowLines(`${P}${S}${H}`,L,v1.FOLD_BLOCK,y);if(!N)return`>${R}
73
+ ${L}${A}`}return Q=Q.replace(/\n+/g,`$&${L}`),`|${R}
74
74
  ${L}${P}${Q}${H}`}function m_(Z,X,Q,U){let{type:q,value:J}=Z,{actualString:Y,implicitKey:W,indent:$,indentStep:L,inFlow:V}=X;if(W&&J.includes(`
75
75
  `)||V&&/[[\]{},]/.test(J))return r2(J,X);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(J))return W||V||!J.includes(`
76
76
  `)?r2(J,X):N9(Z,X,Q,U);if(!W&&!V&&q!==o0.Scalar.PLAIN&&J.includes(`
77
77
  `))return N9(Z,X,Q,U);if(b9(J)){if($==="")return X.forceBlockIndent=!0,N9(Z,X,Q,U);else if(W&&$===L)return r2(J,X)}let G=J.replace(/\n+/g,`$&
78
- ${$}`);if(Y){let _=(z)=>z.default&&z.tag!=="tag:yaml.org,2002:str"&&z.test?.test(G),{compat:H,tags:F}=X.doc.schema;if(F.some(_)||H?.some(_))return r2(J,X)}return W?G:v1.foldFlowLines(G,$,v1.FOLD_FLOW,E9(X,!1))}function u_(Z,X,Q,U){let{implicitKey:q,inFlow:J}=X,Y=typeof Z.value==="string"?Z:Object.assign({},Z,{value:String(Z.value)}),{type:W}=Z;if(W!==o0.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(Y.value))W=o0.Scalar.QUOTE_DOUBLE}let $=(V)=>{switch(V){case o0.Scalar.BLOCK_FOLDED:case o0.Scalar.BLOCK_LITERAL:return q||J?r2(Y.value,X):N9(Y,X,Q,U);case o0.Scalar.QUOTE_DOUBLE:return U4(Y.value,X);case o0.Scalar.QUOTE_SINGLE:return kX(Y.value,X);case o0.Scalar.PLAIN:return m_(Y,X,Q,U);default:return null}},L=$(W);if(L===null){let{defaultKeyType:V,defaultStringType:G}=X.options,_=q&&V||G;if(L=$(_),L===null)throw Error(`Unsupported default string type ${_}`)}return L}p_.stringifyString=u_});var J4=C((n_)=>{var c_=A9(),x1=d(),d_=Q4(),i_=q4();function s_(Z,X){let Q=Object.assign({blockQuote:!0,commentString:d_.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},Z.schema.toStringOptions,X),U;switch(Q.collectionStyle){case"block":U=!1;break;case"flow":U=!0;break;default:U=null}return{anchors:new Set,doc:Z,flowCollectionPadding:Q.flowCollectionPadding?" ":"",indent:"",indentStep:typeof Q.indent==="number"?" ".repeat(Q.indent):" ",inFlow:U,options:Q}}function a_(Z,X){if(X.tag){let q=Z.filter((J)=>J.tag===X.tag);if(q.length>0)return q.find((J)=>J.format===X.format)??q[0]}let Q=void 0,U;if(x1.isScalar(X)){U=X.value;let q=Z.filter((J)=>J.identify?.(U));if(q.length>1){let J=q.filter((Y)=>Y.test);if(J.length>0)q=J}Q=q.find((J)=>J.format===X.format)??q.find((J)=>!J.format)}else U=X,Q=Z.find((q)=>q.nodeClass&&U instanceof q.nodeClass);if(!Q){let q=U?.constructor?.name??(U===null?"null":typeof U);throw Error(`Tag not resolved for ${q} value`)}return Q}function r_(Z,X,{anchors:Q,doc:U}){if(!U.directives)return"";let q=[],J=(x1.isScalar(Z)||x1.isCollection(Z))&&Z.anchor;if(J&&c_.anchorIsValid(J))Q.add(J),q.push(`&${J}`);let Y=Z.tag??(X.default?null:X.tag);if(Y)q.push(U.directives.tagString(Y));return q.join(" ")}function o_(Z,X,Q,U){if(x1.isPair(Z))return Z.toString(X,Q,U);if(x1.isAlias(Z)){if(X.doc.directives)return Z.toString(X);if(X.resolvedAliases?.has(Z))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(X.resolvedAliases)X.resolvedAliases.add(Z);else X.resolvedAliases=new Set([Z]);Z=Z.resolve(X.doc)}}let q=void 0,J=x1.isNode(Z)?Z:X.doc.createNode(Z,{onTagObj:($)=>q=$});q??(q=a_(X.doc.schema.tags,J));let Y=r_(J,q,X);if(Y.length>0)X.indentAtStart=(X.indentAtStart??0)+Y.length+1;let W=typeof q.stringify==="function"?q.stringify(J,X,Q,U):x1.isScalar(J)?i_.stringifyString(J,X,Q,U):J.toString(X,Q,U);if(!Y)return W;return x1.isScalar(J)||W[0]==="{"||W[0]==="["?`${Y} ${W}`:`${Y}
79
- ${X.indent}${W}`}n_.createStringifyContext=s_;n_.stringify=o_});var mq=C((Xz)=>{var O1=d(),xq=L0(),hq=J4(),Y4=Q4();function Zz({key:Z,value:X},Q,U,q){let{allNullValues:J,doc:Y,indent:W,indentStep:$,options:{commentString:L,indentSeq:V,simpleKeys:G}}=Q,_=O1.isNode(Z)&&Z.comment||null;if(G){if(_)throw Error("With simple keys, key nodes cannot have comments");if(O1.isCollection(Z)||!O1.isNode(Z)&&typeof Z==="object")throw Error("With simple keys, collection cannot be used as a key value")}let H=!G&&(!Z||_&&X==null&&!Q.inFlow||O1.isCollection(Z)||(O1.isScalar(Z)?Z.type===xq.Scalar.BLOCK_FOLDED||Z.type===xq.Scalar.BLOCK_LITERAL:typeof Z==="object"));Q=Object.assign({},Q,{allNullValues:!1,implicitKey:!H&&(G||!J),indent:W+$});let F=!1,z=!1,B=hq.stringify(Z,Q,()=>F=!0,()=>z=!0);if(!H&&!Q.inFlow&&B.length>1024){if(G)throw Error("With simple keys, single line scalar must not span more than 1024 characters");H=!0}if(Q.inFlow){if(J||X==null){if(F&&U)U();return B===""?"?":H?`? ${B}`:B}}else if(J&&!G||X==null&&H){if(B=`? ${B}`,_&&!F)B+=Y4.lineComment(B,Q.indent,L(_));else if(z&&q)q();return B}if(F)_=null;if(H){if(_)B+=Y4.lineComment(B,Q.indent,L(_));B=`? ${B}
80
- ${W}:`}else if(B=`${B}:`,_)B+=Y4.lineComment(B,Q.indent,L(_));let K,P,w;if(O1.isNode(X))K=!!X.spaceBefore,P=X.commentBefore,w=X.comment;else if(K=!1,P=null,w=null,X&&typeof X==="object")X=Y.createNode(X);if(Q.implicitKey=!1,!H&&!_&&O1.isScalar(X))Q.indentAtStart=B.length+1;if(z=!1,!V&&$.length>=2&&!Q.inFlow&&!H&&O1.isSeq(X)&&!X.flow&&!X.tag&&!X.anchor)Q.indent=Q.indent.substring(2);let O=!1,S=hq.stringify(X,Q,()=>O=!0,()=>z=!0),N=" ";if(_||K||P){if(N=K?`
78
+ ${$}`);if(Y){let _=(z)=>z.default&&z.tag!=="tag:yaml.org,2002:str"&&z.test?.test(G),{compat:H,tags:F}=X.doc.schema;if(F.some(_)||H?.some(_))return r2(J,X)}return W?G:v1.foldFlowLines(G,$,v1.FOLD_FLOW,E9(X,!1))}function u_(Z,X,Q,U){let{implicitKey:q,inFlow:J}=X,Y=typeof Z.value==="string"?Z:Object.assign({},Z,{value:String(Z.value)}),{type:W}=Z;if(W!==o0.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(Y.value))W=o0.Scalar.QUOTE_DOUBLE}let $=(V)=>{switch(V){case o0.Scalar.BLOCK_FOLDED:case o0.Scalar.BLOCK_LITERAL:return q||J?r2(Y.value,X):N9(Y,X,Q,U);case o0.Scalar.QUOTE_DOUBLE:return U4(Y.value,X);case o0.Scalar.QUOTE_SINGLE:return kX(Y.value,X);case o0.Scalar.PLAIN:return m_(Y,X,Q,U);default:return null}},L=$(W);if(L===null){let{defaultKeyType:V,defaultStringType:G}=X.options,_=q&&V||G;if(L=$(_),L===null)throw Error(`Unsupported default string type ${_}`)}return L}p_.stringifyString=u_});var J4=C((n_)=>{var d_=A9(),x1=c(),c_=Q4(),i_=q4();function s_(Z,X){let Q=Object.assign({blockQuote:!0,commentString:c_.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},Z.schema.toStringOptions,X),U;switch(Q.collectionStyle){case"block":U=!1;break;case"flow":U=!0;break;default:U=null}return{anchors:new Set,doc:Z,flowCollectionPadding:Q.flowCollectionPadding?" ":"",indent:"",indentStep:typeof Q.indent==="number"?" ".repeat(Q.indent):" ",inFlow:U,options:Q}}function a_(Z,X){if(X.tag){let q=Z.filter((J)=>J.tag===X.tag);if(q.length>0)return q.find((J)=>J.format===X.format)??q[0]}let Q=void 0,U;if(x1.isScalar(X)){U=X.value;let q=Z.filter((J)=>J.identify?.(U));if(q.length>1){let J=q.filter((Y)=>Y.test);if(J.length>0)q=J}Q=q.find((J)=>J.format===X.format)??q.find((J)=>!J.format)}else U=X,Q=Z.find((q)=>q.nodeClass&&U instanceof q.nodeClass);if(!Q){let q=U?.constructor?.name??(U===null?"null":typeof U);throw Error(`Tag not resolved for ${q} value`)}return Q}function r_(Z,X,{anchors:Q,doc:U}){if(!U.directives)return"";let q=[],J=(x1.isScalar(Z)||x1.isCollection(Z))&&Z.anchor;if(J&&d_.anchorIsValid(J))Q.add(J),q.push(`&${J}`);let Y=Z.tag??(X.default?null:X.tag);if(Y)q.push(U.directives.tagString(Y));return q.join(" ")}function o_(Z,X,Q,U){if(x1.isPair(Z))return Z.toString(X,Q,U);if(x1.isAlias(Z)){if(X.doc.directives)return Z.toString(X);if(X.resolvedAliases?.has(Z))throw TypeError("Cannot stringify circular structure without alias nodes");else{if(X.resolvedAliases)X.resolvedAliases.add(Z);else X.resolvedAliases=new Set([Z]);Z=Z.resolve(X.doc)}}let q=void 0,J=x1.isNode(Z)?Z:X.doc.createNode(Z,{onTagObj:($)=>q=$});q??(q=a_(X.doc.schema.tags,J));let Y=r_(J,q,X);if(Y.length>0)X.indentAtStart=(X.indentAtStart??0)+Y.length+1;let W=typeof q.stringify==="function"?q.stringify(J,X,Q,U):x1.isScalar(J)?i_.stringifyString(J,X,Q,U):J.toString(X,Q,U);if(!Y)return W;return x1.isScalar(J)||W[0]==="{"||W[0]==="["?`${Y} ${W}`:`${Y}
79
+ ${X.indent}${W}`}n_.createStringifyContext=s_;n_.stringify=o_});var mq=C((Xz)=>{var R1=c(),xq=L0(),hq=J4(),Y4=Q4();function Zz({key:Z,value:X},Q,U,q){let{allNullValues:J,doc:Y,indent:W,indentStep:$,options:{commentString:L,indentSeq:V,simpleKeys:G}}=Q,_=R1.isNode(Z)&&Z.comment||null;if(G){if(_)throw Error("With simple keys, key nodes cannot have comments");if(R1.isCollection(Z)||!R1.isNode(Z)&&typeof Z==="object")throw Error("With simple keys, collection cannot be used as a key value")}let H=!G&&(!Z||_&&X==null&&!Q.inFlow||R1.isCollection(Z)||(R1.isScalar(Z)?Z.type===xq.Scalar.BLOCK_FOLDED||Z.type===xq.Scalar.BLOCK_LITERAL:typeof Z==="object"));Q=Object.assign({},Q,{allNullValues:!1,implicitKey:!H&&(G||!J),indent:W+$});let F=!1,z=!1,B=hq.stringify(Z,Q,()=>F=!0,()=>z=!0);if(!H&&!Q.inFlow&&B.length>1024){if(G)throw Error("With simple keys, single line scalar must not span more than 1024 characters");H=!0}if(Q.inFlow){if(J||X==null){if(F&&U)U();return B===""?"?":H?`? ${B}`:B}}else if(J&&!G||X==null&&H){if(B=`? ${B}`,_&&!F)B+=Y4.lineComment(B,Q.indent,L(_));else if(z&&q)q();return B}if(F)_=null;if(H){if(_)B+=Y4.lineComment(B,Q.indent,L(_));B=`? ${B}
80
+ ${W}:`}else if(B=`${B}:`,_)B+=Y4.lineComment(B,Q.indent,L(_));let K,P,w;if(R1.isNode(X))K=!!X.spaceBefore,P=X.commentBefore,w=X.comment;else if(K=!1,P=null,w=null,X&&typeof X==="object")X=Y.createNode(X);if(Q.implicitKey=!1,!H&&!_&&R1.isScalar(X))Q.indentAtStart=B.length+1;if(z=!1,!V&&$.length>=2&&!Q.inFlow&&!H&&R1.isSeq(X)&&!X.flow&&!X.tag&&!X.anchor)Q.indent=Q.indent.substring(2);let R=!1,S=hq.stringify(X,Q,()=>R=!0,()=>z=!0),N=" ";if(_||K||P){if(N=K?`
81
81
  `:"",P){let y=L(P);N+=`
82
82
  ${Y4.indentComment(y,Q.indent)}`}if(S===""&&!Q.inFlow){if(N===`
83
83
  `&&w)N=`
84
84
 
85
85
  `}else N+=`
86
- ${Q.indent}`}else if(!H&&O1.isCollection(X)){let y=S[0],A=S.indexOf(`
86
+ ${Q.indent}`}else if(!H&&R1.isCollection(X)){let y=S[0],A=S.indexOf(`
87
87
  `),u=A!==-1,o=Q.inFlow??X.flow??X.items.length===0;if(u||!o){let t=!1;if(u&&(y==="&"||y==="!")){let x=S.indexOf(" ");if(y==="&"&&x!==-1&&x<A&&S[x+1]==="!")x=S.indexOf(" ",x+1);if(x===-1||A<x)t=!0}if(!t)N=`
88
88
  ${Q.indent}`}}else if(S===""||S[0]===`
89
- `)N="";if(B+=N+S,Q.inFlow){if(O&&U)U()}else if(w&&!O)B+=Y4.lineComment(B,Q.indent,L(w));else if(z&&q)q();return B}Xz.stringifyPair=Zz});var vX=C((Jz)=>{var uq=M2("process");function Uz(Z,...X){if(Z==="debug")console.log(...X)}function qz(Z,X){if(Z==="debug"||Z==="warn")if(typeof uq.emitWarning==="function")uq.emitWarning(X);else console.warn(X)}Jz.debug=Uz;Jz.warn=qz});var y9=C((Lz)=>{var W4=d(),pq=L0(),I9="<<",f9={identify:(Z)=>Z===I9||typeof Z==="symbol"&&Z.description===I9,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new pq.Scalar(Symbol(I9)),{addToJSMap:lq}),stringify:()=>I9},$z=(Z,X)=>(f9.identify(X)||W4.isScalar(X)&&(!X.type||X.type===pq.Scalar.PLAIN)&&f9.identify(X.value))&&Z?.doc.schema.tags.some((Q)=>Q.tag===f9.tag&&Q.default);function lq(Z,X,Q){if(Q=Z&&W4.isAlias(Q)?Q.resolve(Z.doc):Q,W4.isSeq(Q))for(let U of Q.items)xX(Z,X,U);else if(Array.isArray(Q))for(let U of Q)xX(Z,X,U);else xX(Z,X,Q)}function xX(Z,X,Q){let U=Z&&W4.isAlias(Q)?Q.resolve(Z.doc):Q;if(!W4.isMap(U))throw Error("Merge sources must be maps or map aliases");let q=U.toJSON(null,Z,Map);for(let[J,Y]of q)if(X instanceof Map){if(!X.has(J))X.set(J,Y)}else if(X instanceof Set)X.add(J);else if(!Object.prototype.hasOwnProperty.call(X,J))Object.defineProperty(X,J,{value:Y,writable:!0,enumerable:!0,configurable:!0});return X}Lz.addMergeToJSMap=lq;Lz.isMergeKey=$z;Lz.merge=f9});var mX=C((Mz)=>{var zz=vX(),cq=y9(),Hz=J4(),dq=d(),hX=g1();function Fz(Z,X,{key:Q,value:U}){if(dq.isNode(Q)&&Q.addToJSMap)Q.addToJSMap(Z,X,U);else if(cq.isMergeKey(Z,Q))cq.addMergeToJSMap(Z,X,U);else{let q=hX.toJS(Q,"",Z);if(X instanceof Map)X.set(q,hX.toJS(U,q,Z));else if(X instanceof Set)X.add(q);else{let J=Bz(Q,q,Z),Y=hX.toJS(U,J,Z);if(J in X)Object.defineProperty(X,J,{value:Y,writable:!0,enumerable:!0,configurable:!0});else X[J]=Y}}return X}function Bz(Z,X,Q){if(X===null)return"";if(typeof X!=="object")return String(X);if(dq.isNode(Z)&&Q?.doc){let U=Hz.createStringifyContext(Q.doc,{});U.anchors=new Set;for(let J of Q.anchors.keys())U.anchors.add(J.anchor);U.inFlow=!0,U.inStringifyKey=!0;let q=Z.toString(U);if(!Q.mapKeyWarned){let J=JSON.stringify(q);if(J.length>40)J=J.substring(0,36)+'..."';zz.warn(Q.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${J}. Set mapAsMap: true to use object keys.`),Q.mapKeyWarned=!0}return q}return JSON.stringify(X)}Mz.addPairToJSMap=Fz});var h1=C((Dz)=>{var iq=X4(),Oz=mq(),Tz=mX(),k9=d();function Kz(Z,X,Q){let U=iq.createNode(Z,void 0,Q),q=iq.createNode(X,void 0,Q);return new g9(U,q)}class g9{constructor(Z,X=null){Object.defineProperty(this,k9.NODE_TYPE,{value:k9.PAIR}),this.key=Z,this.value=X}clone(Z){let{key:X,value:Q}=this;if(k9.isNode(X))X=X.clone(Z);if(k9.isNode(Q))Q=Q.clone(Z);return new g9(X,Q)}toJSON(Z,X){let Q=X?.mapAsMap?new Map:{};return Tz.addPairToJSMap(X,Q,this)}toString(Z,X,Q){return Z?.doc?Oz.stringifyPair(this,Z,X,Q):JSON.stringify(this)}}Dz.Pair=g9;Dz.createPair=Kz});var uX=C((Cz)=>{var $2=d(),sq=J4(),v9=Q4();function Az(Z,X,Q){return(X.inFlow??Z.flow?jz:Sz)(Z,X,Q)}function Sz({comment:Z,items:X},Q,{blockItemPrefix:U,flowChars:q,itemIndent:J,onChompKeep:Y,onComment:W}){let{indent:$,options:{commentString:L}}=Q,V=Object.assign({},Q,{indent:J,type:null}),G=!1,_=[];for(let F=0;F<X.length;++F){let z=X[F],B=null;if($2.isNode(z)){if(!G&&z.spaceBefore)_.push("");if(x9(Q,_,z.commentBefore,G),z.comment)B=z.comment}else if($2.isPair(z)){let P=$2.isNode(z.key)?z.key:null;if(P){if(!G&&P.spaceBefore)_.push("");x9(Q,_,P.commentBefore,G)}}G=!1;let K=sq.stringify(z,V,()=>B=null,()=>G=!0);if(B)K+=v9.lineComment(K,J,L(B));if(G&&B)G=!1;_.push(U+K)}let H;if(_.length===0)H=q.start+q.end;else{H=_[0];for(let F=1;F<_.length;++F){let z=_[F];H+=z?`
89
+ `)N="";if(B+=N+S,Q.inFlow){if(R&&U)U()}else if(w&&!R)B+=Y4.lineComment(B,Q.indent,L(w));else if(z&&q)q();return B}Xz.stringifyPair=Zz});var vX=C((Jz)=>{var uq=M2("process");function Uz(Z,...X){if(Z==="debug")console.log(...X)}function qz(Z,X){if(Z==="debug"||Z==="warn")if(typeof uq.emitWarning==="function")uq.emitWarning(X);else console.warn(X)}Jz.debug=Uz;Jz.warn=qz});var y9=C((Lz)=>{var W4=c(),pq=L0(),I9="<<",f9={identify:(Z)=>Z===I9||typeof Z==="symbol"&&Z.description===I9,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new pq.Scalar(Symbol(I9)),{addToJSMap:lq}),stringify:()=>I9},$z=(Z,X)=>(f9.identify(X)||W4.isScalar(X)&&(!X.type||X.type===pq.Scalar.PLAIN)&&f9.identify(X.value))&&Z?.doc.schema.tags.some((Q)=>Q.tag===f9.tag&&Q.default);function lq(Z,X,Q){if(Q=Z&&W4.isAlias(Q)?Q.resolve(Z.doc):Q,W4.isSeq(Q))for(let U of Q.items)xX(Z,X,U);else if(Array.isArray(Q))for(let U of Q)xX(Z,X,U);else xX(Z,X,Q)}function xX(Z,X,Q){let U=Z&&W4.isAlias(Q)?Q.resolve(Z.doc):Q;if(!W4.isMap(U))throw Error("Merge sources must be maps or map aliases");let q=U.toJSON(null,Z,Map);for(let[J,Y]of q)if(X instanceof Map){if(!X.has(J))X.set(J,Y)}else if(X instanceof Set)X.add(J);else if(!Object.prototype.hasOwnProperty.call(X,J))Object.defineProperty(X,J,{value:Y,writable:!0,enumerable:!0,configurable:!0});return X}Lz.addMergeToJSMap=lq;Lz.isMergeKey=$z;Lz.merge=f9});var mX=C((Mz)=>{var zz=vX(),dq=y9(),Hz=J4(),cq=c(),hX=g1();function Fz(Z,X,{key:Q,value:U}){if(cq.isNode(Q)&&Q.addToJSMap)Q.addToJSMap(Z,X,U);else if(dq.isMergeKey(Z,Q))dq.addMergeToJSMap(Z,X,U);else{let q=hX.toJS(Q,"",Z);if(X instanceof Map)X.set(q,hX.toJS(U,q,Z));else if(X instanceof Set)X.add(q);else{let J=Bz(Q,q,Z),Y=hX.toJS(U,J,Z);if(J in X)Object.defineProperty(X,J,{value:Y,writable:!0,enumerable:!0,configurable:!0});else X[J]=Y}}return X}function Bz(Z,X,Q){if(X===null)return"";if(typeof X!=="object")return String(X);if(cq.isNode(Z)&&Q?.doc){let U=Hz.createStringifyContext(Q.doc,{});U.anchors=new Set;for(let J of Q.anchors.keys())U.anchors.add(J.anchor);U.inFlow=!0,U.inStringifyKey=!0;let q=Z.toString(U);if(!Q.mapKeyWarned){let J=JSON.stringify(q);if(J.length>40)J=J.substring(0,36)+'..."';zz.warn(Q.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${J}. Set mapAsMap: true to use object keys.`),Q.mapKeyWarned=!0}return q}return JSON.stringify(X)}Mz.addPairToJSMap=Fz});var h1=C((Dz)=>{var iq=X4(),Rz=mq(),Tz=mX(),k9=c();function Kz(Z,X,Q){let U=iq.createNode(Z,void 0,Q),q=iq.createNode(X,void 0,Q);return new g9(U,q)}class g9{constructor(Z,X=null){Object.defineProperty(this,k9.NODE_TYPE,{value:k9.PAIR}),this.key=Z,this.value=X}clone(Z){let{key:X,value:Q}=this;if(k9.isNode(X))X=X.clone(Z);if(k9.isNode(Q))Q=Q.clone(Z);return new g9(X,Q)}toJSON(Z,X){let Q=X?.mapAsMap?new Map:{};return Tz.addPairToJSMap(X,Q,this)}toString(Z,X,Q){return Z?.doc?Rz.stringifyPair(this,Z,X,Q):JSON.stringify(this)}}Dz.Pair=g9;Dz.createPair=Kz});var uX=C((Cz)=>{var $2=c(),sq=J4(),v9=Q4();function Az(Z,X,Q){return(X.inFlow??Z.flow?jz:Sz)(Z,X,Q)}function Sz({comment:Z,items:X},Q,{blockItemPrefix:U,flowChars:q,itemIndent:J,onChompKeep:Y,onComment:W}){let{indent:$,options:{commentString:L}}=Q,V=Object.assign({},Q,{indent:J,type:null}),G=!1,_=[];for(let F=0;F<X.length;++F){let z=X[F],B=null;if($2.isNode(z)){if(!G&&z.spaceBefore)_.push("");if(x9(Q,_,z.commentBefore,G),z.comment)B=z.comment}else if($2.isPair(z)){let P=$2.isNode(z.key)?z.key:null;if(P){if(!G&&P.spaceBefore)_.push("");x9(Q,_,P.commentBefore,G)}}G=!1;let K=sq.stringify(z,V,()=>B=null,()=>G=!0);if(B)K+=v9.lineComment(K,J,L(B));if(G&&B)G=!1;_.push(U+K)}let H;if(_.length===0)H=q.start+q.end;else{H=_[0];for(let F=1;F<_.length;++F){let z=_[F];H+=z?`
90
90
  ${$}${z}`:`
91
91
  `}}if(Z){if(H+=`
92
92
  `+v9.indentComment(L(Z),$),W)W()}else if(G&&Y)Y();return H}function jz({items:Z},X,{flowChars:Q,itemIndent:U}){let{indent:q,indentStep:J,flowCollectionPadding:Y,options:{commentString:W}}=X;U+=J;let $=Object.assign({},X,{indent:U,inFlow:!0,type:null}),L=!1,V=0,G=[];for(let F=0;F<Z.length;++F){let z=Z[F],B=null;if($2.isNode(z)){if(z.spaceBefore)G.push("");if(x9(X,G,z.commentBefore,!1),z.comment)B=z.comment}else if($2.isPair(z)){let P=$2.isNode(z.key)?z.key:null;if(P){if(P.spaceBefore)G.push("");if(x9(X,G,P.commentBefore,!1),P.comment)L=!0}let w=$2.isNode(z.value)?z.value:null;if(w){if(w.comment)B=w.comment;if(w.commentBefore)L=!0}else if(z.value==null&&P?.comment)B=P.comment}if(B)L=!0;let K=sq.stringify(z,$,()=>B=null);if(F<Z.length-1)K+=",";if(B)K+=v9.lineComment(K,U,W(B));if(!L&&(G.length>V||K.includes(`
93
93
  `)))L=!0;G.push(K),V=G.length}let{start:_,end:H}=Q;if(G.length===0)return _+H;else{if(!L){let F=G.reduce((z,B)=>z+B.length+2,2);L=X.options.lineWidth>0&&F>X.options.lineWidth}if(L){let F=_;for(let z of G)F+=z?`
94
94
  ${J}${q}${z}`:`
95
95
  `;return`${F}
96
- ${q}${H}`}else return`${_}${Y}${G.join(" ")}${Y}${H}`}}function x9({indent:Z,options:{commentString:X}},Q,U,q){if(U&&q)U=U.replace(/^\n+/,"");if(U){let J=v9.indentComment(X(U),Z);Q.push(J.trimStart())}}Cz.stringifyCollection=Az});var u1=C((yz)=>{var Ez=uX(),bz=mX(),Iz=C9(),m1=d(),h9=h1(),fz=L0();function $4(Z,X){let Q=m1.isScalar(X)?X.value:X;for(let U of Z)if(m1.isPair(U)){if(U.key===X||U.key===Q)return U;if(m1.isScalar(U.key)&&U.key.value===Q)return U}return}class aq extends Iz.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(Z){super(m1.MAP,Z);this.items=[]}static from(Z,X,Q){let{keepUndefined:U,replacer:q}=Q,J=new this(Z),Y=(W,$)=>{if(typeof q==="function")$=q.call(X,W,$);else if(Array.isArray(q)&&!q.includes(W))return;if($!==void 0||U)J.items.push(h9.createPair(W,$,Q))};if(X instanceof Map)for(let[W,$]of X)Y(W,$);else if(X&&typeof X==="object")for(let W of Object.keys(X))Y(W,X[W]);if(typeof Z.sortMapEntries==="function")J.items.sort(Z.sortMapEntries);return J}add(Z,X){let Q;if(m1.isPair(Z))Q=Z;else if(!Z||typeof Z!=="object"||!("key"in Z))Q=new h9.Pair(Z,Z?.value);else Q=new h9.Pair(Z.key,Z.value);let U=$4(this.items,Q.key),q=this.schema?.sortMapEntries;if(U){if(!X)throw Error(`Key ${Q.key} already set`);if(m1.isScalar(U.value)&&fz.isScalarValue(Q.value))U.value.value=Q.value;else U.value=Q.value}else if(q){let J=this.items.findIndex((Y)=>q(Q,Y)<0);if(J===-1)this.items.push(Q);else this.items.splice(J,0,Q)}else this.items.push(Q)}delete(Z){let X=$4(this.items,Z);if(!X)return!1;return this.items.splice(this.items.indexOf(X),1).length>0}get(Z,X){let U=$4(this.items,Z)?.value;return(!X&&m1.isScalar(U)?U.value:U)??void 0}has(Z){return!!$4(this.items,Z)}set(Z,X){this.add(new h9.Pair(Z,X),!0)}toJSON(Z,X,Q){let U=Q?new Q:X?.mapAsMap?new Map:{};if(X?.onCreate)X.onCreate(U);for(let q of this.items)bz.addPairToJSMap(X,U,q);return U}toString(Z,X,Q){if(!Z)return JSON.stringify(this);for(let U of this.items)if(!m1.isPair(U))throw Error(`Map items must all be pairs; found ${JSON.stringify(U)} instead`);if(!Z.allNullValues&&this.hasAllNullValues(!1))Z=Object.assign({},Z,{allNullValues:!0});return Ez.stringifyCollection(this,Z,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:Z.indent||"",onChompKeep:Q,onComment:X})}}yz.YAMLMap=aq;yz.findPair=$4});var o2=C((hz)=>{var vz=d(),rq=u1(),xz={collection:"map",default:!0,nodeClass:rq.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(Z,X){if(!vz.isMap(Z))X("Expected a mapping for this tag");return Z},createNode:(Z,X,Q)=>rq.YAMLMap.from(Z,X,Q)};hz.map=xz});var p1=C((iz)=>{var uz=X4(),pz=uX(),lz=C9(),u9=d(),cz=L0(),dz=g1();class oq extends lz.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(Z){super(u9.SEQ,Z);this.items=[]}add(Z){this.items.push(Z)}delete(Z){let X=m9(Z);if(typeof X!=="number")return!1;return this.items.splice(X,1).length>0}get(Z,X){let Q=m9(Z);if(typeof Q!=="number")return;let U=this.items[Q];return!X&&u9.isScalar(U)?U.value:U}has(Z){let X=m9(Z);return typeof X==="number"&&X<this.items.length}set(Z,X){let Q=m9(Z);if(typeof Q!=="number")throw Error(`Expected a valid index, not ${Z}.`);let U=this.items[Q];if(u9.isScalar(U)&&cz.isScalarValue(X))U.value=X;else this.items[Q]=X}toJSON(Z,X){let Q=[];if(X?.onCreate)X.onCreate(Q);let U=0;for(let q of this.items)Q.push(dz.toJS(q,String(U++),X));return Q}toString(Z,X,Q){if(!Z)return JSON.stringify(this);return pz.stringifyCollection(this,Z,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(Z.indent||"")+" ",onChompKeep:Q,onComment:X})}static from(Z,X,Q){let{replacer:U}=Q,q=new this(Z);if(X&&Symbol.iterator in Object(X)){let J=0;for(let Y of X){if(typeof U==="function"){let W=X instanceof Set?Y:String(J++);Y=U.call(X,W,Y)}q.items.push(uz.createNode(Y,void 0,Q))}}return q}}function m9(Z){let X=u9.isScalar(Z)?Z.value:Z;if(X&&typeof X==="string")X=Number(X);return typeof X==="number"&&Number.isInteger(X)&&X>=0?X:null}iz.YAMLSeq=oq});var n2=C((oz)=>{var az=d(),nq=p1(),rz={collection:"seq",default:!0,nodeClass:nq.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(Z,X){if(!az.isSeq(Z))X("Expected a sequence for this tag");return Z},createNode:(Z,X,Q)=>nq.YAMLSeq.from(Z,X,Q)};oz.seq=rz});var L4=C((ZH)=>{var tz=q4(),ez={identify:(Z)=>typeof Z==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(Z)=>Z,stringify(Z,X,Q,U){return X=Object.assign({actualString:!0},X),tz.stringifyString(Z,X,Q,U)}};ZH.string=ez});var p9=C((QH)=>{var tq=L0(),eq={identify:(Z)=>Z==null,createNode:()=>new tq.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new tq.Scalar(null),stringify:({source:Z},X)=>typeof Z==="string"&&eq.test.test(Z)?Z:X.options.nullStr};QH.nullTag=eq});var pX=C((JH)=>{var qH=L0(),ZJ={identify:(Z)=>typeof Z==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(Z)=>new qH.Scalar(Z[0]==="t"||Z[0]==="T"),stringify({source:Z,value:X},Q){if(Z&&ZJ.test.test(Z)){let U=Z[0]==="t"||Z[0]==="T";if(X===U)return Z}return X?Q.options.trueStr:Q.options.falseStr}};JH.boolTag=ZJ});var t2=C(($H)=>{function WH({format:Z,minFractionDigits:X,tag:Q,value:U}){if(typeof U==="bigint")return String(U);let q=typeof U==="number"?U:Number(U);if(!isFinite(q))return isNaN(q)?".nan":q<0?"-.inf":".inf";let J=Object.is(U,-0)?"-0":JSON.stringify(U);if(!Z&&X&&(!Q||Q==="tag:yaml.org,2002:float")&&/^\d/.test(J)){let Y=J.indexOf(".");if(Y<0)Y=J.length,J+=".";let W=X-(J.length-Y-1);while(W-- >0)J+="0"}return J}$H.stringifyNumber=WH});var cX=C((HH)=>{var GH=L0(),lX=t2(),VH={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(Z)=>Z.slice(-3).toLowerCase()==="nan"?NaN:Z[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:lX.stringifyNumber},_H={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(Z)=>parseFloat(Z),stringify(Z){let X=Number(Z.value);return isFinite(X)?X.toExponential():lX.stringifyNumber(Z)}},zH={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(Z){let X=new GH.Scalar(parseFloat(Z)),Q=Z.indexOf(".");if(Q!==-1&&Z[Z.length-1]==="0")X.minFractionDigits=Z.length-Q-1;return X},stringify:lX.stringifyNumber};HH.float=zH;HH.floatExp=_H;HH.floatNaN=VH});var iX=C((KH)=>{var XJ=t2(),l9=(Z)=>typeof Z==="bigint"||Number.isInteger(Z),dX=(Z,X,Q,{intAsBigInt:U})=>U?BigInt(Z):parseInt(Z.substring(X),Q);function QJ(Z,X,Q){let{value:U}=Z;if(l9(U)&&U>=0)return Q+U.toString(X);return XJ.stringifyNumber(Z)}var RH={identify:(Z)=>l9(Z)&&Z>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(Z,X,Q)=>dX(Z,2,8,Q),stringify:(Z)=>QJ(Z,8,"0o")},OH={identify:l9,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(Z,X,Q)=>dX(Z,0,10,Q),stringify:XJ.stringifyNumber},TH={identify:(Z)=>l9(Z)&&Z>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(Z,X,Q)=>dX(Z,2,16,Q),stringify:(Z)=>QJ(Z,16,"0x")};KH.int=OH;KH.intHex=TH;KH.intOct=RH});var UJ=C((bH)=>{var AH=o2(),SH=p9(),jH=n2(),CH=L4(),NH=pX(),sX=cX(),aX=iX(),EH=[AH.map,jH.seq,CH.string,SH.nullTag,NH.boolTag,aX.intOct,aX.int,aX.intHex,sX.floatNaN,sX.floatExp,sX.float];bH.schema=EH});var JJ=C((hH)=>{var fH=L0(),yH=o2(),kH=n2();function qJ(Z){return typeof Z==="bigint"||Number.isInteger(Z)}var c9=({value:Z})=>JSON.stringify(Z),gH=[{identify:(Z)=>typeof Z==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(Z)=>Z,stringify:c9},{identify:(Z)=>Z==null,createNode:()=>new fH.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:c9},{identify:(Z)=>typeof Z==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(Z)=>Z==="true",stringify:c9},{identify:qJ,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(Z,X,{intAsBigInt:Q})=>Q?BigInt(Z):parseInt(Z,10),stringify:({value:Z})=>qJ(Z)?Z.toString():JSON.stringify(Z)},{identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(Z)=>parseFloat(Z),stringify:c9}],vH={default:!0,tag:"",test:/^/,resolve(Z,X){return X(`Unresolved plain scalar ${JSON.stringify(Z)}`),Z}},xH=[yH.map,kH.seq].concat(gH,vH);hH.schema=xH});var oX=C((lH)=>{var G4=M2("buffer"),rX=L0(),uH=q4(),pH={identify:(Z)=>Z instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(Z,X){if(typeof G4.Buffer==="function")return G4.Buffer.from(Z,"base64");else if(typeof atob==="function"){let Q=atob(Z.replace(/[\n\r]/g,"")),U=new Uint8Array(Q.length);for(let q=0;q<Q.length;++q)U[q]=Q.charCodeAt(q);return U}else return X("This environment does not support reading binary tags; either Buffer or atob is required"),Z},stringify({comment:Z,type:X,value:Q},U,q,J){if(!Q)return"";let Y=Q,W;if(typeof G4.Buffer==="function")W=Y instanceof G4.Buffer?Y.toString("base64"):G4.Buffer.from(Y.buffer).toString("base64");else if(typeof btoa==="function"){let $="";for(let L=0;L<Y.length;++L)$+=String.fromCharCode(Y[L]);W=btoa($)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(X??(X=rX.Scalar.BLOCK_LITERAL),X!==rX.Scalar.QUOTE_DOUBLE){let $=Math.max(U.options.lineWidth-U.indent.length,U.options.minContentWidth),L=Math.ceil(W.length/$),V=Array(L);for(let G=0,_=0;G<L;++G,_+=$)V[G]=W.substr(_,$);W=V.join(X===rX.Scalar.BLOCK_LITERAL?`
97
- `:" ")}return uH.stringifyString({comment:Z,type:X,value:W},U,q,J)}};lH.binary=pH});var i9=C((aH)=>{var d9=d(),nX=h1(),dH=L0(),iH=p1();function YJ(Z,X){if(d9.isSeq(Z))for(let Q=0;Q<Z.items.length;++Q){let U=Z.items[Q];if(d9.isPair(U))continue;else if(d9.isMap(U)){if(U.items.length>1)X("Each pair must have its own sequence indicator");let q=U.items[0]||new nX.Pair(new dH.Scalar(null));if(U.commentBefore)q.key.commentBefore=q.key.commentBefore?`${U.commentBefore}
96
+ ${q}${H}`}else return`${_}${Y}${G.join(" ")}${Y}${H}`}}function x9({indent:Z,options:{commentString:X}},Q,U,q){if(U&&q)U=U.replace(/^\n+/,"");if(U){let J=v9.indentComment(X(U),Z);Q.push(J.trimStart())}}Cz.stringifyCollection=Az});var u1=C((yz)=>{var Ez=uX(),bz=mX(),Iz=C9(),m1=c(),h9=h1(),fz=L0();function $4(Z,X){let Q=m1.isScalar(X)?X.value:X;for(let U of Z)if(m1.isPair(U)){if(U.key===X||U.key===Q)return U;if(m1.isScalar(U.key)&&U.key.value===Q)return U}return}class aq extends Iz.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(Z){super(m1.MAP,Z);this.items=[]}static from(Z,X,Q){let{keepUndefined:U,replacer:q}=Q,J=new this(Z),Y=(W,$)=>{if(typeof q==="function")$=q.call(X,W,$);else if(Array.isArray(q)&&!q.includes(W))return;if($!==void 0||U)J.items.push(h9.createPair(W,$,Q))};if(X instanceof Map)for(let[W,$]of X)Y(W,$);else if(X&&typeof X==="object")for(let W of Object.keys(X))Y(W,X[W]);if(typeof Z.sortMapEntries==="function")J.items.sort(Z.sortMapEntries);return J}add(Z,X){let Q;if(m1.isPair(Z))Q=Z;else if(!Z||typeof Z!=="object"||!("key"in Z))Q=new h9.Pair(Z,Z?.value);else Q=new h9.Pair(Z.key,Z.value);let U=$4(this.items,Q.key),q=this.schema?.sortMapEntries;if(U){if(!X)throw Error(`Key ${Q.key} already set`);if(m1.isScalar(U.value)&&fz.isScalarValue(Q.value))U.value.value=Q.value;else U.value=Q.value}else if(q){let J=this.items.findIndex((Y)=>q(Q,Y)<0);if(J===-1)this.items.push(Q);else this.items.splice(J,0,Q)}else this.items.push(Q)}delete(Z){let X=$4(this.items,Z);if(!X)return!1;return this.items.splice(this.items.indexOf(X),1).length>0}get(Z,X){let U=$4(this.items,Z)?.value;return(!X&&m1.isScalar(U)?U.value:U)??void 0}has(Z){return!!$4(this.items,Z)}set(Z,X){this.add(new h9.Pair(Z,X),!0)}toJSON(Z,X,Q){let U=Q?new Q:X?.mapAsMap?new Map:{};if(X?.onCreate)X.onCreate(U);for(let q of this.items)bz.addPairToJSMap(X,U,q);return U}toString(Z,X,Q){if(!Z)return JSON.stringify(this);for(let U of this.items)if(!m1.isPair(U))throw Error(`Map items must all be pairs; found ${JSON.stringify(U)} instead`);if(!Z.allNullValues&&this.hasAllNullValues(!1))Z=Object.assign({},Z,{allNullValues:!0});return Ez.stringifyCollection(this,Z,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:Z.indent||"",onChompKeep:Q,onComment:X})}}yz.YAMLMap=aq;yz.findPair=$4});var o2=C((hz)=>{var vz=c(),rq=u1(),xz={collection:"map",default:!0,nodeClass:rq.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(Z,X){if(!vz.isMap(Z))X("Expected a mapping for this tag");return Z},createNode:(Z,X,Q)=>rq.YAMLMap.from(Z,X,Q)};hz.map=xz});var p1=C((iz)=>{var uz=X4(),pz=uX(),lz=C9(),u9=c(),dz=L0(),cz=g1();class oq extends lz.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(Z){super(u9.SEQ,Z);this.items=[]}add(Z){this.items.push(Z)}delete(Z){let X=m9(Z);if(typeof X!=="number")return!1;return this.items.splice(X,1).length>0}get(Z,X){let Q=m9(Z);if(typeof Q!=="number")return;let U=this.items[Q];return!X&&u9.isScalar(U)?U.value:U}has(Z){let X=m9(Z);return typeof X==="number"&&X<this.items.length}set(Z,X){let Q=m9(Z);if(typeof Q!=="number")throw Error(`Expected a valid index, not ${Z}.`);let U=this.items[Q];if(u9.isScalar(U)&&dz.isScalarValue(X))U.value=X;else this.items[Q]=X}toJSON(Z,X){let Q=[];if(X?.onCreate)X.onCreate(Q);let U=0;for(let q of this.items)Q.push(cz.toJS(q,String(U++),X));return Q}toString(Z,X,Q){if(!Z)return JSON.stringify(this);return pz.stringifyCollection(this,Z,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(Z.indent||"")+" ",onChompKeep:Q,onComment:X})}static from(Z,X,Q){let{replacer:U}=Q,q=new this(Z);if(X&&Symbol.iterator in Object(X)){let J=0;for(let Y of X){if(typeof U==="function"){let W=X instanceof Set?Y:String(J++);Y=U.call(X,W,Y)}q.items.push(uz.createNode(Y,void 0,Q))}}return q}}function m9(Z){let X=u9.isScalar(Z)?Z.value:Z;if(X&&typeof X==="string")X=Number(X);return typeof X==="number"&&Number.isInteger(X)&&X>=0?X:null}iz.YAMLSeq=oq});var n2=C((oz)=>{var az=c(),nq=p1(),rz={collection:"seq",default:!0,nodeClass:nq.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(Z,X){if(!az.isSeq(Z))X("Expected a sequence for this tag");return Z},createNode:(Z,X,Q)=>nq.YAMLSeq.from(Z,X,Q)};oz.seq=rz});var L4=C((ZH)=>{var tz=q4(),ez={identify:(Z)=>typeof Z==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(Z)=>Z,stringify(Z,X,Q,U){return X=Object.assign({actualString:!0},X),tz.stringifyString(Z,X,Q,U)}};ZH.string=ez});var p9=C((QH)=>{var tq=L0(),eq={identify:(Z)=>Z==null,createNode:()=>new tq.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new tq.Scalar(null),stringify:({source:Z},X)=>typeof Z==="string"&&eq.test.test(Z)?Z:X.options.nullStr};QH.nullTag=eq});var pX=C((JH)=>{var qH=L0(),ZJ={identify:(Z)=>typeof Z==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(Z)=>new qH.Scalar(Z[0]==="t"||Z[0]==="T"),stringify({source:Z,value:X},Q){if(Z&&ZJ.test.test(Z)){let U=Z[0]==="t"||Z[0]==="T";if(X===U)return Z}return X?Q.options.trueStr:Q.options.falseStr}};JH.boolTag=ZJ});var t2=C(($H)=>{function WH({format:Z,minFractionDigits:X,tag:Q,value:U}){if(typeof U==="bigint")return String(U);let q=typeof U==="number"?U:Number(U);if(!isFinite(q))return isNaN(q)?".nan":q<0?"-.inf":".inf";let J=Object.is(U,-0)?"-0":JSON.stringify(U);if(!Z&&X&&(!Q||Q==="tag:yaml.org,2002:float")&&/^\d/.test(J)){let Y=J.indexOf(".");if(Y<0)Y=J.length,J+=".";let W=X-(J.length-Y-1);while(W-- >0)J+="0"}return J}$H.stringifyNumber=WH});var dX=C((HH)=>{var GH=L0(),lX=t2(),VH={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(Z)=>Z.slice(-3).toLowerCase()==="nan"?NaN:Z[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:lX.stringifyNumber},_H={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:(Z)=>parseFloat(Z),stringify(Z){let X=Number(Z.value);return isFinite(X)?X.toExponential():lX.stringifyNumber(Z)}},zH={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(Z){let X=new GH.Scalar(parseFloat(Z)),Q=Z.indexOf(".");if(Q!==-1&&Z[Z.length-1]==="0")X.minFractionDigits=Z.length-Q-1;return X},stringify:lX.stringifyNumber};HH.float=zH;HH.floatExp=_H;HH.floatNaN=VH});var iX=C((KH)=>{var XJ=t2(),l9=(Z)=>typeof Z==="bigint"||Number.isInteger(Z),cX=(Z,X,Q,{intAsBigInt:U})=>U?BigInt(Z):parseInt(Z.substring(X),Q);function QJ(Z,X,Q){let{value:U}=Z;if(l9(U)&&U>=0)return Q+U.toString(X);return XJ.stringifyNumber(Z)}var OH={identify:(Z)=>l9(Z)&&Z>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(Z,X,Q)=>cX(Z,2,8,Q),stringify:(Z)=>QJ(Z,8,"0o")},RH={identify:l9,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(Z,X,Q)=>cX(Z,0,10,Q),stringify:XJ.stringifyNumber},TH={identify:(Z)=>l9(Z)&&Z>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(Z,X,Q)=>cX(Z,2,16,Q),stringify:(Z)=>QJ(Z,16,"0x")};KH.int=RH;KH.intHex=TH;KH.intOct=OH});var UJ=C((bH)=>{var AH=o2(),SH=p9(),jH=n2(),CH=L4(),NH=pX(),sX=dX(),aX=iX(),EH=[AH.map,jH.seq,CH.string,SH.nullTag,NH.boolTag,aX.intOct,aX.int,aX.intHex,sX.floatNaN,sX.floatExp,sX.float];bH.schema=EH});var JJ=C((hH)=>{var fH=L0(),yH=o2(),kH=n2();function qJ(Z){return typeof Z==="bigint"||Number.isInteger(Z)}var d9=({value:Z})=>JSON.stringify(Z),gH=[{identify:(Z)=>typeof Z==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(Z)=>Z,stringify:d9},{identify:(Z)=>Z==null,createNode:()=>new fH.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:d9},{identify:(Z)=>typeof Z==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(Z)=>Z==="true",stringify:d9},{identify:qJ,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(Z,X,{intAsBigInt:Q})=>Q?BigInt(Z):parseInt(Z,10),stringify:({value:Z})=>qJ(Z)?Z.toString():JSON.stringify(Z)},{identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:(Z)=>parseFloat(Z),stringify:d9}],vH={default:!0,tag:"",test:/^/,resolve(Z,X){return X(`Unresolved plain scalar ${JSON.stringify(Z)}`),Z}},xH=[yH.map,kH.seq].concat(gH,vH);hH.schema=xH});var oX=C((lH)=>{var G4=M2("buffer"),rX=L0(),uH=q4(),pH={identify:(Z)=>Z instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(Z,X){if(typeof G4.Buffer==="function")return G4.Buffer.from(Z,"base64");else if(typeof atob==="function"){let Q=atob(Z.replace(/[\n\r]/g,"")),U=new Uint8Array(Q.length);for(let q=0;q<Q.length;++q)U[q]=Q.charCodeAt(q);return U}else return X("This environment does not support reading binary tags; either Buffer or atob is required"),Z},stringify({comment:Z,type:X,value:Q},U,q,J){if(!Q)return"";let Y=Q,W;if(typeof G4.Buffer==="function")W=Y instanceof G4.Buffer?Y.toString("base64"):G4.Buffer.from(Y.buffer).toString("base64");else if(typeof btoa==="function"){let $="";for(let L=0;L<Y.length;++L)$+=String.fromCharCode(Y[L]);W=btoa($)}else throw Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(X??(X=rX.Scalar.BLOCK_LITERAL),X!==rX.Scalar.QUOTE_DOUBLE){let $=Math.max(U.options.lineWidth-U.indent.length,U.options.minContentWidth),L=Math.ceil(W.length/$),V=Array(L);for(let G=0,_=0;G<L;++G,_+=$)V[G]=W.substr(_,$);W=V.join(X===rX.Scalar.BLOCK_LITERAL?`
97
+ `:" ")}return uH.stringifyString({comment:Z,type:X,value:W},U,q,J)}};lH.binary=pH});var i9=C((aH)=>{var c9=c(),nX=h1(),cH=L0(),iH=p1();function YJ(Z,X){if(c9.isSeq(Z))for(let Q=0;Q<Z.items.length;++Q){let U=Z.items[Q];if(c9.isPair(U))continue;else if(c9.isMap(U)){if(U.items.length>1)X("Each pair must have its own sequence indicator");let q=U.items[0]||new nX.Pair(new cH.Scalar(null));if(U.commentBefore)q.key.commentBefore=q.key.commentBefore?`${U.commentBefore}
98
98
  ${q.key.commentBefore}`:U.commentBefore;if(U.comment){let J=q.value??q.key;J.comment=J.comment?`${U.comment}
99
- ${J.comment}`:U.comment}U=q}Z.items[Q]=d9.isPair(U)?U:new nX.Pair(U)}else X("Expected a sequence for this tag");return Z}function WJ(Z,X,Q){let{replacer:U}=Q,q=new iH.YAMLSeq(Z);q.tag="tag:yaml.org,2002:pairs";let J=0;if(X&&Symbol.iterator in Object(X))for(let Y of X){if(typeof U==="function")Y=U.call(X,String(J++),Y);let W,$;if(Array.isArray(Y))if(Y.length===2)W=Y[0],$=Y[1];else throw TypeError(`Expected [key, value] tuple: ${Y}`);else if(Y&&Y instanceof Object){let L=Object.keys(Y);if(L.length===1)W=L[0],$=Y[W];else throw TypeError(`Expected tuple with one key, not ${L.length} keys`)}else W=Y;q.items.push(nX.createPair(W,$,Q))}return q}var sH={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:YJ,createNode:WJ};aH.createPairs=WJ;aH.pairs=sH;aH.resolvePairs=YJ});var eX=C((ZF)=>{var $J=d(),tX=g1(),V4=u1(),tH=p1(),LJ=i9();class L2 extends tH.YAMLSeq{constructor(){super();this.add=V4.YAMLMap.prototype.add.bind(this),this.delete=V4.YAMLMap.prototype.delete.bind(this),this.get=V4.YAMLMap.prototype.get.bind(this),this.has=V4.YAMLMap.prototype.has.bind(this),this.set=V4.YAMLMap.prototype.set.bind(this),this.tag=L2.tag}toJSON(Z,X){if(!X)return super.toJSON(Z);let Q=new Map;if(X?.onCreate)X.onCreate(Q);for(let U of this.items){let q,J;if($J.isPair(U))q=tX.toJS(U.key,"",X),J=tX.toJS(U.value,q,X);else q=tX.toJS(U,"",X);if(Q.has(q))throw Error("Ordered maps must not include duplicate keys");Q.set(q,J)}return Q}static from(Z,X,Q){let U=LJ.createPairs(Z,X,Q),q=new this;return q.items=U.items,q}}L2.tag="tag:yaml.org,2002:omap";var eH={collection:"seq",identify:(Z)=>Z instanceof Map,nodeClass:L2,default:!1,tag:"tag:yaml.org,2002:omap",resolve(Z,X){let Q=LJ.resolvePairs(Z,X),U=[];for(let{key:q}of Q.items)if($J.isScalar(q))if(U.includes(q.value))X(`Ordered maps must not include duplicate keys: ${q.value}`);else U.push(q.value);return Object.assign(new L2,Q)},createNode:(Z,X,Q)=>L2.from(Z,X,Q)};ZF.YAMLOMap=L2;ZF.omap=eH});var HJ=C((UF)=>{var GJ=L0();function VJ({value:Z,source:X},Q){if(X&&(Z?_J:zJ).test.test(X))return X;return Z?Q.options.trueStr:Q.options.falseStr}var _J={identify:(Z)=>Z===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new GJ.Scalar(!0),stringify:VJ},zJ={identify:(Z)=>Z===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new GJ.Scalar(!1),stringify:VJ};UF.falseTag=zJ;UF.trueTag=_J});var FJ=C((GF)=>{var YF=L0(),Z3=t2(),WF={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(Z)=>Z.slice(-3).toLowerCase()==="nan"?NaN:Z[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Z3.stringifyNumber},$F={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(Z)=>parseFloat(Z.replace(/_/g,"")),stringify(Z){let X=Number(Z.value);return isFinite(X)?X.toExponential():Z3.stringifyNumber(Z)}},LF={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(Z){let X=new YF.Scalar(parseFloat(Z.replace(/_/g,""))),Q=Z.indexOf(".");if(Q!==-1){let U=Z.substring(Q+1).replace(/_/g,"");if(U[U.length-1]==="0")X.minFractionDigits=U.length}return X},stringify:Z3.stringifyNumber};GF.float=LF;GF.floatExp=$F;GF.floatNaN=WF});var MJ=C((RF)=>{var BJ=t2(),_4=(Z)=>typeof Z==="bigint"||Number.isInteger(Z);function s9(Z,X,Q,{intAsBigInt:U}){let q=Z[0];if(q==="-"||q==="+")X+=1;if(Z=Z.substring(X).replace(/_/g,""),U){switch(Q){case 2:Z=`0b${Z}`;break;case 8:Z=`0o${Z}`;break;case 16:Z=`0x${Z}`;break}let Y=BigInt(Z);return q==="-"?BigInt(-1)*Y:Y}let J=parseInt(Z,Q);return q==="-"?-1*J:J}function X3(Z,X,Q){let{value:U}=Z;if(_4(U)){let q=U.toString(X);return U<0?"-"+Q+q.substr(1):Q+q}return BJ.stringifyNumber(Z)}var HF={identify:_4,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(Z,X,Q)=>s9(Z,2,2,Q),stringify:(Z)=>X3(Z,2,"0b")},FF={identify:_4,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(Z,X,Q)=>s9(Z,1,8,Q),stringify:(Z)=>X3(Z,8,"0")},BF={identify:_4,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(Z,X,Q)=>s9(Z,0,10,Q),stringify:BJ.stringifyNumber},MF={identify:_4,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(Z,X,Q)=>s9(Z,2,16,Q),stringify:(Z)=>X3(Z,16,"0x")};RF.int=BF;RF.intBin=HF;RF.intHex=MF;RF.intOct=FF});var Q3=C((wF)=>{var o9=d(),a9=h1(),r9=u1();class G2 extends r9.YAMLMap{constructor(Z){super(Z);this.tag=G2.tag}add(Z){let X;if(o9.isPair(Z))X=Z;else if(Z&&typeof Z==="object"&&"key"in Z&&"value"in Z&&Z.value===null)X=new a9.Pair(Z.key,null);else X=new a9.Pair(Z,null);if(!r9.findPair(this.items,X.key))this.items.push(X)}get(Z,X){let Q=r9.findPair(this.items,Z);return!X&&o9.isPair(Q)?o9.isScalar(Q.key)?Q.key.value:Q.key:Q}set(Z,X){if(typeof X!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof X}`);let Q=r9.findPair(this.items,Z);if(Q&&!X)this.items.splice(this.items.indexOf(Q),1);else if(!Q&&X)this.items.push(new a9.Pair(Z))}toJSON(Z,X){return super.toJSON(Z,X,Set)}toString(Z,X,Q){if(!Z)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},Z,{allNullValues:!0}),X,Q);else throw Error("Set items must all have null values")}static from(Z,X,Q){let{replacer:U}=Q,q=new this(Z);if(X&&Symbol.iterator in Object(X))for(let J of X){if(typeof U==="function")J=U.call(X,J,J);q.items.push(a9.createPair(J,null,Q))}return q}}G2.tag="tag:yaml.org,2002:set";var PF={collection:"map",identify:(Z)=>Z instanceof Set,nodeClass:G2,default:!1,tag:"tag:yaml.org,2002:set",createNode:(Z,X,Q)=>G2.from(Z,X,Q),resolve(Z,X){if(o9.isMap(Z))if(Z.hasAllNullValues(!0))return Object.assign(new G2,Z);else X("Set items must all have null values");else X("Expected a mapping for this tag");return Z}};wF.YAMLSet=G2;wF.set=PF});var q3=C((EF)=>{var jF=t2();function U3(Z,X){let Q=Z[0],U=Q==="-"||Q==="+"?Z.substring(1):Z,q=(Y)=>X?BigInt(Y):Number(Y),J=U.replace(/_/g,"").split(":").reduce((Y,W)=>Y*q(60)+q(W),q(0));return Q==="-"?q(-1)*J:J}function RJ(Z){let{value:X}=Z,Q=(Y)=>Y;if(typeof X==="bigint")Q=(Y)=>BigInt(Y);else if(isNaN(X)||!isFinite(X))return jF.stringifyNumber(Z);let U="";if(X<0)U="-",X*=Q(-1);let q=Q(60),J=[X%q];if(X<60)J.unshift(0);else if(X=(X-J[0])/q,J.unshift(X%q),X>=60)X=(X-J[0])/q,J.unshift(X);return U+J.map((Y)=>String(Y).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var CF={identify:(Z)=>typeof Z==="bigint"||Number.isInteger(Z),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(Z,X,{intAsBigInt:Q})=>U3(Z,Q),stringify:RJ},NF={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(Z)=>U3(Z,!1),stringify:RJ},OJ={identify:(Z)=>Z 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(Z){let X=Z.match(OJ.test);if(!X)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,Q,U,q,J,Y,W]=X.map(Number),$=X[7]?Number((X[7]+"00").substr(1,3)):0,L=Date.UTC(Q,U-1,q,J||0,Y||0,W||0,$),V=X[8];if(V&&V!=="Z"){let G=U3(V,!1);if(Math.abs(G)<30)G*=60;L-=60000*G}return new Date(L)},stringify:({value:Z})=>Z?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};EF.floatTime=NF;EF.intTime=CF;EF.timestamp=OJ});var KJ=C((cF)=>{var yF=o2(),kF=p9(),gF=n2(),vF=L4(),xF=oX(),TJ=HJ(),J3=FJ(),n9=MJ(),hF=y9(),mF=eX(),uF=i9(),pF=Q3(),Y3=q3(),lF=[yF.map,gF.seq,vF.string,kF.nullTag,TJ.trueTag,TJ.falseTag,n9.intBin,n9.intOct,n9.int,n9.intHex,J3.floatNaN,J3.floatExp,J3.float,xF.binary,hF.merge,mF.omap,uF.pairs,pF.set,Y3.intTime,Y3.floatTime,Y3.timestamp];cF.schema=lF});var bJ=C((eF)=>{var AJ=o2(),iF=p9(),SJ=n2(),sF=L4(),aF=pX(),W3=cX(),$3=iX(),rF=UJ(),oF=JJ(),jJ=oX(),z4=y9(),CJ=eX(),NJ=i9(),DJ=KJ(),EJ=Q3(),t9=q3(),PJ=new Map([["core",rF.schema],["failsafe",[AJ.map,SJ.seq,sF.string]],["json",oF.schema],["yaml11",DJ.schema],["yaml-1.1",DJ.schema]]),wJ={binary:jJ.binary,bool:aF.boolTag,float:W3.float,floatExp:W3.floatExp,floatNaN:W3.floatNaN,floatTime:t9.floatTime,int:$3.int,intHex:$3.intHex,intOct:$3.intOct,intTime:t9.intTime,map:AJ.map,merge:z4.merge,null:iF.nullTag,omap:CJ.omap,pairs:NJ.pairs,seq:SJ.seq,set:EJ.set,timestamp:t9.timestamp},nF={"tag:yaml.org,2002:binary":jJ.binary,"tag:yaml.org,2002:merge":z4.merge,"tag:yaml.org,2002:omap":CJ.omap,"tag:yaml.org,2002:pairs":NJ.pairs,"tag:yaml.org,2002:set":EJ.set,"tag:yaml.org,2002:timestamp":t9.timestamp};function tF(Z,X,Q){let U=PJ.get(X);if(U&&!Z)return Q&&!U.includes(z4.merge)?U.concat(z4.merge):U.slice();let q=U;if(!q)if(Array.isArray(Z))q=[];else{let J=Array.from(PJ.keys()).filter((Y)=>Y!=="yaml11").map((Y)=>JSON.stringify(Y)).join(", ");throw Error(`Unknown schema "${X}"; use one of ${J} or define customTags array`)}if(Array.isArray(Z))for(let J of Z)q=q.concat(J);else if(typeof Z==="function")q=Z(q.slice());if(Q)q=q.concat(z4.merge);return q.reduce((J,Y)=>{let W=typeof Y==="string"?wJ[Y]:Y;if(!W){let $=JSON.stringify(Y),L=Object.keys(wJ).map((V)=>JSON.stringify(V)).join(", ");throw Error(`Unknown custom tag ${$}; use one of ${L}`)}if(!J.includes(W))J.push(W);return J},[])}eF.coreKnownTags=nF;eF.getTags=tF});var V3=C((YB)=>{var L3=d(),QB=o2(),UB=n2(),qB=L4(),e9=bJ(),JB=(Z,X)=>Z.key<X.key?-1:Z.key>X.key?1:0;class G3{constructor({compat:Z,customTags:X,merge:Q,resolveKnownTags:U,schema:q,sortMapEntries:J,toStringDefaults:Y}){this.compat=Array.isArray(Z)?e9.getTags(Z,"compat"):Z?e9.getTags(null,Z):null,this.name=typeof q==="string"&&q||"core",this.knownTags=U?e9.coreKnownTags:{},this.tags=e9.getTags(X,this.name,Q),this.toStringOptions=Y??null,Object.defineProperty(this,L3.MAP,{value:QB.map}),Object.defineProperty(this,L3.SCALAR,{value:qB.string}),Object.defineProperty(this,L3.SEQ,{value:UB.seq}),this.sortMapEntries=typeof J==="function"?J:J===!0?JB:null}clone(){let Z=Object.create(G3.prototype,Object.getOwnPropertyDescriptors(this));return Z.tags=this.tags.slice(),Z}}YB.Schema=G3});var IJ=C((GB)=>{var $B=d(),_3=J4(),H4=Q4();function LB(Z,X){let Q=[],U=X.directives===!0;if(X.directives!==!1&&Z.directives){let $=Z.directives.toString(Z);if($)Q.push($),U=!0;else if(Z.directives.docStart)U=!0}if(U)Q.push("---");let q=_3.createStringifyContext(Z,X),{commentString:J}=q.options;if(Z.commentBefore){if(Q.length!==1)Q.unshift("");let $=J(Z.commentBefore);Q.unshift(H4.indentComment($,""))}let Y=!1,W=null;if(Z.contents){if($B.isNode(Z.contents)){if(Z.contents.spaceBefore&&U)Q.push("");if(Z.contents.commentBefore){let V=J(Z.contents.commentBefore);Q.push(H4.indentComment(V,""))}q.forceBlockIndent=!!Z.comment,W=Z.contents.comment}let $=W?void 0:()=>Y=!0,L=_3.stringify(Z.contents,q,()=>W=null,$);if(W)L+=H4.lineComment(L,"",J(W));if((L[0]==="|"||L[0]===">")&&Q[Q.length-1]==="---")Q[Q.length-1]=`--- ${L}`;else Q.push(L)}else Q.push(_3.stringify(Z.contents,q));if(Z.directives?.docEnd)if(Z.comment){let $=J(Z.comment);if($.includes(`
99
+ ${J.comment}`:U.comment}U=q}Z.items[Q]=c9.isPair(U)?U:new nX.Pair(U)}else X("Expected a sequence for this tag");return Z}function WJ(Z,X,Q){let{replacer:U}=Q,q=new iH.YAMLSeq(Z);q.tag="tag:yaml.org,2002:pairs";let J=0;if(X&&Symbol.iterator in Object(X))for(let Y of X){if(typeof U==="function")Y=U.call(X,String(J++),Y);let W,$;if(Array.isArray(Y))if(Y.length===2)W=Y[0],$=Y[1];else throw TypeError(`Expected [key, value] tuple: ${Y}`);else if(Y&&Y instanceof Object){let L=Object.keys(Y);if(L.length===1)W=L[0],$=Y[W];else throw TypeError(`Expected tuple with one key, not ${L.length} keys`)}else W=Y;q.items.push(nX.createPair(W,$,Q))}return q}var sH={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:YJ,createNode:WJ};aH.createPairs=WJ;aH.pairs=sH;aH.resolvePairs=YJ});var eX=C((ZF)=>{var $J=c(),tX=g1(),V4=u1(),tH=p1(),LJ=i9();class L2 extends tH.YAMLSeq{constructor(){super();this.add=V4.YAMLMap.prototype.add.bind(this),this.delete=V4.YAMLMap.prototype.delete.bind(this),this.get=V4.YAMLMap.prototype.get.bind(this),this.has=V4.YAMLMap.prototype.has.bind(this),this.set=V4.YAMLMap.prototype.set.bind(this),this.tag=L2.tag}toJSON(Z,X){if(!X)return super.toJSON(Z);let Q=new Map;if(X?.onCreate)X.onCreate(Q);for(let U of this.items){let q,J;if($J.isPair(U))q=tX.toJS(U.key,"",X),J=tX.toJS(U.value,q,X);else q=tX.toJS(U,"",X);if(Q.has(q))throw Error("Ordered maps must not include duplicate keys");Q.set(q,J)}return Q}static from(Z,X,Q){let U=LJ.createPairs(Z,X,Q),q=new this;return q.items=U.items,q}}L2.tag="tag:yaml.org,2002:omap";var eH={collection:"seq",identify:(Z)=>Z instanceof Map,nodeClass:L2,default:!1,tag:"tag:yaml.org,2002:omap",resolve(Z,X){let Q=LJ.resolvePairs(Z,X),U=[];for(let{key:q}of Q.items)if($J.isScalar(q))if(U.includes(q.value))X(`Ordered maps must not include duplicate keys: ${q.value}`);else U.push(q.value);return Object.assign(new L2,Q)},createNode:(Z,X,Q)=>L2.from(Z,X,Q)};ZF.YAMLOMap=L2;ZF.omap=eH});var HJ=C((UF)=>{var GJ=L0();function VJ({value:Z,source:X},Q){if(X&&(Z?_J:zJ).test.test(X))return X;return Z?Q.options.trueStr:Q.options.falseStr}var _J={identify:(Z)=>Z===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new GJ.Scalar(!0),stringify:VJ},zJ={identify:(Z)=>Z===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new GJ.Scalar(!1),stringify:VJ};UF.falseTag=zJ;UF.trueTag=_J});var FJ=C((GF)=>{var YF=L0(),Z3=t2(),WF={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:(Z)=>Z.slice(-3).toLowerCase()==="nan"?NaN:Z[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Z3.stringifyNumber},$F={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:(Z)=>parseFloat(Z.replace(/_/g,"")),stringify(Z){let X=Number(Z.value);return isFinite(X)?X.toExponential():Z3.stringifyNumber(Z)}},LF={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(Z){let X=new YF.Scalar(parseFloat(Z.replace(/_/g,""))),Q=Z.indexOf(".");if(Q!==-1){let U=Z.substring(Q+1).replace(/_/g,"");if(U[U.length-1]==="0")X.minFractionDigits=U.length}return X},stringify:Z3.stringifyNumber};GF.float=LF;GF.floatExp=$F;GF.floatNaN=WF});var MJ=C((OF)=>{var BJ=t2(),_4=(Z)=>typeof Z==="bigint"||Number.isInteger(Z);function s9(Z,X,Q,{intAsBigInt:U}){let q=Z[0];if(q==="-"||q==="+")X+=1;if(Z=Z.substring(X).replace(/_/g,""),U){switch(Q){case 2:Z=`0b${Z}`;break;case 8:Z=`0o${Z}`;break;case 16:Z=`0x${Z}`;break}let Y=BigInt(Z);return q==="-"?BigInt(-1)*Y:Y}let J=parseInt(Z,Q);return q==="-"?-1*J:J}function X3(Z,X,Q){let{value:U}=Z;if(_4(U)){let q=U.toString(X);return U<0?"-"+Q+q.substr(1):Q+q}return BJ.stringifyNumber(Z)}var HF={identify:_4,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(Z,X,Q)=>s9(Z,2,2,Q),stringify:(Z)=>X3(Z,2,"0b")},FF={identify:_4,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(Z,X,Q)=>s9(Z,1,8,Q),stringify:(Z)=>X3(Z,8,"0")},BF={identify:_4,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(Z,X,Q)=>s9(Z,0,10,Q),stringify:BJ.stringifyNumber},MF={identify:_4,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(Z,X,Q)=>s9(Z,2,16,Q),stringify:(Z)=>X3(Z,16,"0x")};OF.int=BF;OF.intBin=HF;OF.intHex=MF;OF.intOct=FF});var Q3=C((wF)=>{var o9=c(),a9=h1(),r9=u1();class G2 extends r9.YAMLMap{constructor(Z){super(Z);this.tag=G2.tag}add(Z){let X;if(o9.isPair(Z))X=Z;else if(Z&&typeof Z==="object"&&"key"in Z&&"value"in Z&&Z.value===null)X=new a9.Pair(Z.key,null);else X=new a9.Pair(Z,null);if(!r9.findPair(this.items,X.key))this.items.push(X)}get(Z,X){let Q=r9.findPair(this.items,Z);return!X&&o9.isPair(Q)?o9.isScalar(Q.key)?Q.key.value:Q.key:Q}set(Z,X){if(typeof X!=="boolean")throw Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof X}`);let Q=r9.findPair(this.items,Z);if(Q&&!X)this.items.splice(this.items.indexOf(Q),1);else if(!Q&&X)this.items.push(new a9.Pair(Z))}toJSON(Z,X){return super.toJSON(Z,X,Set)}toString(Z,X,Q){if(!Z)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},Z,{allNullValues:!0}),X,Q);else throw Error("Set items must all have null values")}static from(Z,X,Q){let{replacer:U}=Q,q=new this(Z);if(X&&Symbol.iterator in Object(X))for(let J of X){if(typeof U==="function")J=U.call(X,J,J);q.items.push(a9.createPair(J,null,Q))}return q}}G2.tag="tag:yaml.org,2002:set";var PF={collection:"map",identify:(Z)=>Z instanceof Set,nodeClass:G2,default:!1,tag:"tag:yaml.org,2002:set",createNode:(Z,X,Q)=>G2.from(Z,X,Q),resolve(Z,X){if(o9.isMap(Z))if(Z.hasAllNullValues(!0))return Object.assign(new G2,Z);else X("Set items must all have null values");else X("Expected a mapping for this tag");return Z}};wF.YAMLSet=G2;wF.set=PF});var q3=C((EF)=>{var jF=t2();function U3(Z,X){let Q=Z[0],U=Q==="-"||Q==="+"?Z.substring(1):Z,q=(Y)=>X?BigInt(Y):Number(Y),J=U.replace(/_/g,"").split(":").reduce((Y,W)=>Y*q(60)+q(W),q(0));return Q==="-"?q(-1)*J:J}function OJ(Z){let{value:X}=Z,Q=(Y)=>Y;if(typeof X==="bigint")Q=(Y)=>BigInt(Y);else if(isNaN(X)||!isFinite(X))return jF.stringifyNumber(Z);let U="";if(X<0)U="-",X*=Q(-1);let q=Q(60),J=[X%q];if(X<60)J.unshift(0);else if(X=(X-J[0])/q,J.unshift(X%q),X>=60)X=(X-J[0])/q,J.unshift(X);return U+J.map((Y)=>String(Y).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var CF={identify:(Z)=>typeof Z==="bigint"||Number.isInteger(Z),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(Z,X,{intAsBigInt:Q})=>U3(Z,Q),stringify:OJ},NF={identify:(Z)=>typeof Z==="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:(Z)=>U3(Z,!1),stringify:OJ},RJ={identify:(Z)=>Z 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(Z){let X=Z.match(RJ.test);if(!X)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,Q,U,q,J,Y,W]=X.map(Number),$=X[7]?Number((X[7]+"00").substr(1,3)):0,L=Date.UTC(Q,U-1,q,J||0,Y||0,W||0,$),V=X[8];if(V&&V!=="Z"){let G=U3(V,!1);if(Math.abs(G)<30)G*=60;L-=60000*G}return new Date(L)},stringify:({value:Z})=>Z?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};EF.floatTime=NF;EF.intTime=CF;EF.timestamp=RJ});var KJ=C((dF)=>{var yF=o2(),kF=p9(),gF=n2(),vF=L4(),xF=oX(),TJ=HJ(),J3=FJ(),n9=MJ(),hF=y9(),mF=eX(),uF=i9(),pF=Q3(),Y3=q3(),lF=[yF.map,gF.seq,vF.string,kF.nullTag,TJ.trueTag,TJ.falseTag,n9.intBin,n9.intOct,n9.int,n9.intHex,J3.floatNaN,J3.floatExp,J3.float,xF.binary,hF.merge,mF.omap,uF.pairs,pF.set,Y3.intTime,Y3.floatTime,Y3.timestamp];dF.schema=lF});var bJ=C((eF)=>{var AJ=o2(),iF=p9(),SJ=n2(),sF=L4(),aF=pX(),W3=dX(),$3=iX(),rF=UJ(),oF=JJ(),jJ=oX(),z4=y9(),CJ=eX(),NJ=i9(),DJ=KJ(),EJ=Q3(),t9=q3(),PJ=new Map([["core",rF.schema],["failsafe",[AJ.map,SJ.seq,sF.string]],["json",oF.schema],["yaml11",DJ.schema],["yaml-1.1",DJ.schema]]),wJ={binary:jJ.binary,bool:aF.boolTag,float:W3.float,floatExp:W3.floatExp,floatNaN:W3.floatNaN,floatTime:t9.floatTime,int:$3.int,intHex:$3.intHex,intOct:$3.intOct,intTime:t9.intTime,map:AJ.map,merge:z4.merge,null:iF.nullTag,omap:CJ.omap,pairs:NJ.pairs,seq:SJ.seq,set:EJ.set,timestamp:t9.timestamp},nF={"tag:yaml.org,2002:binary":jJ.binary,"tag:yaml.org,2002:merge":z4.merge,"tag:yaml.org,2002:omap":CJ.omap,"tag:yaml.org,2002:pairs":NJ.pairs,"tag:yaml.org,2002:set":EJ.set,"tag:yaml.org,2002:timestamp":t9.timestamp};function tF(Z,X,Q){let U=PJ.get(X);if(U&&!Z)return Q&&!U.includes(z4.merge)?U.concat(z4.merge):U.slice();let q=U;if(!q)if(Array.isArray(Z))q=[];else{let J=Array.from(PJ.keys()).filter((Y)=>Y!=="yaml11").map((Y)=>JSON.stringify(Y)).join(", ");throw Error(`Unknown schema "${X}"; use one of ${J} or define customTags array`)}if(Array.isArray(Z))for(let J of Z)q=q.concat(J);else if(typeof Z==="function")q=Z(q.slice());if(Q)q=q.concat(z4.merge);return q.reduce((J,Y)=>{let W=typeof Y==="string"?wJ[Y]:Y;if(!W){let $=JSON.stringify(Y),L=Object.keys(wJ).map((V)=>JSON.stringify(V)).join(", ");throw Error(`Unknown custom tag ${$}; use one of ${L}`)}if(!J.includes(W))J.push(W);return J},[])}eF.coreKnownTags=nF;eF.getTags=tF});var V3=C((YB)=>{var L3=c(),QB=o2(),UB=n2(),qB=L4(),e9=bJ(),JB=(Z,X)=>Z.key<X.key?-1:Z.key>X.key?1:0;class G3{constructor({compat:Z,customTags:X,merge:Q,resolveKnownTags:U,schema:q,sortMapEntries:J,toStringDefaults:Y}){this.compat=Array.isArray(Z)?e9.getTags(Z,"compat"):Z?e9.getTags(null,Z):null,this.name=typeof q==="string"&&q||"core",this.knownTags=U?e9.coreKnownTags:{},this.tags=e9.getTags(X,this.name,Q),this.toStringOptions=Y??null,Object.defineProperty(this,L3.MAP,{value:QB.map}),Object.defineProperty(this,L3.SCALAR,{value:qB.string}),Object.defineProperty(this,L3.SEQ,{value:UB.seq}),this.sortMapEntries=typeof J==="function"?J:J===!0?JB:null}clone(){let Z=Object.create(G3.prototype,Object.getOwnPropertyDescriptors(this));return Z.tags=this.tags.slice(),Z}}YB.Schema=G3});var IJ=C((GB)=>{var $B=c(),_3=J4(),H4=Q4();function LB(Z,X){let Q=[],U=X.directives===!0;if(X.directives!==!1&&Z.directives){let $=Z.directives.toString(Z);if($)Q.push($),U=!0;else if(Z.directives.docStart)U=!0}if(U)Q.push("---");let q=_3.createStringifyContext(Z,X),{commentString:J}=q.options;if(Z.commentBefore){if(Q.length!==1)Q.unshift("");let $=J(Z.commentBefore);Q.unshift(H4.indentComment($,""))}let Y=!1,W=null;if(Z.contents){if($B.isNode(Z.contents)){if(Z.contents.spaceBefore&&U)Q.push("");if(Z.contents.commentBefore){let V=J(Z.contents.commentBefore);Q.push(H4.indentComment(V,""))}q.forceBlockIndent=!!Z.comment,W=Z.contents.comment}let $=W?void 0:()=>Y=!0,L=_3.stringify(Z.contents,q,()=>W=null,$);if(W)L+=H4.lineComment(L,"",J(W));if((L[0]==="|"||L[0]===">")&&Q[Q.length-1]==="---")Q[Q.length-1]=`--- ${L}`;else Q.push(L)}else Q.push(_3.stringify(Z.contents,q));if(Z.directives?.docEnd)if(Z.comment){let $=J(Z.comment);if($.includes(`
100
100
  `))Q.push("..."),Q.push(H4.indentComment($,""));else Q.push(`... ${$}`)}else Q.push("...");else{let $=Z.comment;if($&&Y)$=$.replace(/^\n+/,"");if($){if((!Y||W)&&Q[Q.length-1]!=="")Q.push("");Q.push(H4.indentComment(J($),""))}}return Q.join(`
101
101
  `)+`
102
- `}GB.stringifyDocument=LB});var F4=C((OB)=>{var _B=Z4(),e2=C9(),l0=d(),zB=h1(),HB=g1(),FB=V3(),BB=IJ(),z3=A9(),MB=IX(),RB=X4(),H3=bX();class F3{constructor(Z,X,Q){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,l0.NODE_TYPE,{value:l0.DOC});let U=null;if(typeof X==="function"||Array.isArray(X))U=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:J}=q;if(Q?._directives){if(this.directives=Q._directives.atDocument(),this.directives.yaml.explicit)J=this.directives.yaml.version}else this.directives=new H3.Directives({version:J});this.setSchema(J,Q),this.contents=Z===void 0?null:this.createNode(Z,U,Q)}clone(){let Z=Object.create(F3.prototype,{[l0.NODE_TYPE]:{value:l0.DOC}});if(Z.commentBefore=this.commentBefore,Z.comment=this.comment,Z.errors=this.errors.slice(),Z.warnings=this.warnings.slice(),Z.options=Object.assign({},this.options),this.directives)Z.directives=this.directives.clone();if(Z.schema=this.schema.clone(),Z.contents=l0.isNode(this.contents)?this.contents.clone(Z.schema):this.contents,this.range)Z.range=this.range.slice();return Z}add(Z){if(Z6(this.contents))this.contents.add(Z)}addIn(Z,X){if(Z6(this.contents))this.contents.addIn(Z,X)}createAlias(Z,X){if(!Z.anchor){let Q=z3.anchorNames(this);Z.anchor=!X||Q.has(X)?z3.findNewAnchor(X||"a",Q):X}return new _B.Alias(Z.anchor)}createNode(Z,X,Q){let U=void 0;if(typeof X==="function")Z=X.call({"":Z},"",Z),U=X;else if(Array.isArray(X)){let z=(K)=>typeof K==="number"||K instanceof String||K instanceof Number,B=X.filter(z).map(String);if(B.length>0)X=X.concat(B);U=X}else if(Q===void 0&&X)Q=X,X=void 0;let{aliasDuplicateObjects:q,anchorPrefix:J,flow:Y,keepUndefined:W,onTagObj:$,tag:L}=Q??{},{onAnchor:V,setAnchors:G,sourceObjects:_}=z3.createNodeAnchors(this,J||"a"),H={aliasDuplicateObjects:q??!0,keepUndefined:W??!1,onAnchor:V,onTagObj:$,replacer:U,schema:this.schema,sourceObjects:_},F=RB.createNode(Z,L,H);if(Y&&l0.isCollection(F))F.flow=!0;return G(),F}createPair(Z,X,Q={}){let U=this.createNode(Z,null,Q),q=this.createNode(X,null,Q);return new zB.Pair(U,q)}delete(Z){return Z6(this.contents)?this.contents.delete(Z):!1}deleteIn(Z){if(e2.isEmptyPath(Z)){if(this.contents==null)return!1;return this.contents=null,!0}return Z6(this.contents)?this.contents.deleteIn(Z):!1}get(Z,X){return l0.isCollection(this.contents)?this.contents.get(Z,X):void 0}getIn(Z,X){if(e2.isEmptyPath(Z))return!X&&l0.isScalar(this.contents)?this.contents.value:this.contents;return l0.isCollection(this.contents)?this.contents.getIn(Z,X):void 0}has(Z){return l0.isCollection(this.contents)?this.contents.has(Z):!1}hasIn(Z){if(e2.isEmptyPath(Z))return this.contents!==void 0;return l0.isCollection(this.contents)?this.contents.hasIn(Z):!1}set(Z,X){if(this.contents==null)this.contents=e2.collectionFromPath(this.schema,[Z],X);else if(Z6(this.contents))this.contents.set(Z,X)}setIn(Z,X){if(e2.isEmptyPath(Z))this.contents=X;else if(this.contents==null)this.contents=e2.collectionFromPath(this.schema,Array.from(Z),X);else if(Z6(this.contents))this.contents.setIn(Z,X)}setSchema(Z,X={}){if(typeof Z==="number")Z=String(Z);let Q;switch(Z){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new H3.Directives({version:"1.1"});Q={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=Z;else this.directives=new H3.Directives({version:Z});Q={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;Q=null;break;default:{let U=JSON.stringify(Z);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${U}`)}}if(X.schema instanceof Object)this.schema=X.schema;else if(Q)this.schema=new FB.Schema(Object.assign(Q,X));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:Z,jsonArg:X,mapAsMap:Q,maxAliasCount:U,onAnchor:q,reviver:J}={}){let Y={anchors:new Map,doc:this,keep:!Z,mapAsMap:Q===!0,mapKeyWarned:!1,maxAliasCount:typeof U==="number"?U:100},W=HB.toJS(this.contents,X??"",Y);if(typeof q==="function")for(let{count:$,res:L}of Y.anchors.values())q(L,$);return typeof J==="function"?MB.applyReviver(J,{"":W},"",W):W}toJSON(Z,X){return this.toJS({json:!0,jsonArg:Z,mapAsMap:!1,onAnchor:X})}toString(Z={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in Z&&(!Number.isInteger(Z.indent)||Number(Z.indent)<=0)){let X=JSON.stringify(Z.indent);throw Error(`"indent" option must be a positive integer, not ${X}`)}return BB.stringifyDocument(this,Z)}}function Z6(Z){if(l0.isCollection(Z))return!0;throw Error("Expected a YAML collection as document contents")}OB.Document=F3});var B4=C((DB)=>{class ZZ extends Error{constructor(Z,X,Q,U){super();this.name=Z,this.code=Q,this.message=U,this.pos=X}}class fJ extends ZZ{constructor(Z,X,Q){super("YAMLParseError",Z,X,Q)}}class yJ extends ZZ{constructor(Z,X,Q){super("YAMLWarning",Z,X,Q)}}var KB=(Z,X)=>(Q)=>{if(Q.pos[0]===-1)return;Q.linePos=Q.pos.map((W)=>X.linePos(W));let{line:U,col:q}=Q.linePos[0];Q.message+=` at line ${U}, column ${q}`;let J=q-1,Y=Z.substring(X.lineStarts[U-1],X.lineStarts[U]).replace(/[\n\r]+$/,"");if(J>=60&&Y.length>80){let W=Math.min(J-39,Y.length-79);Y="…"+Y.substring(W),J-=W-1}if(Y.length>80)Y=Y.substring(0,79)+"…";if(U>1&&/^ *$/.test(Y.substring(0,J))){let W=Z.substring(X.lineStarts[U-2],X.lineStarts[U-1]);if(W.length>80)W=W.substring(0,79)+`…
102
+ `}GB.stringifyDocument=LB});var F4=C((RB)=>{var _B=Z4(),e2=C9(),l0=c(),zB=h1(),HB=g1(),FB=V3(),BB=IJ(),z3=A9(),MB=IX(),OB=X4(),H3=bX();class F3{constructor(Z,X,Q){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,l0.NODE_TYPE,{value:l0.DOC});let U=null;if(typeof X==="function"||Array.isArray(X))U=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:J}=q;if(Q?._directives){if(this.directives=Q._directives.atDocument(),this.directives.yaml.explicit)J=this.directives.yaml.version}else this.directives=new H3.Directives({version:J});this.setSchema(J,Q),this.contents=Z===void 0?null:this.createNode(Z,U,Q)}clone(){let Z=Object.create(F3.prototype,{[l0.NODE_TYPE]:{value:l0.DOC}});if(Z.commentBefore=this.commentBefore,Z.comment=this.comment,Z.errors=this.errors.slice(),Z.warnings=this.warnings.slice(),Z.options=Object.assign({},this.options),this.directives)Z.directives=this.directives.clone();if(Z.schema=this.schema.clone(),Z.contents=l0.isNode(this.contents)?this.contents.clone(Z.schema):this.contents,this.range)Z.range=this.range.slice();return Z}add(Z){if(Z6(this.contents))this.contents.add(Z)}addIn(Z,X){if(Z6(this.contents))this.contents.addIn(Z,X)}createAlias(Z,X){if(!Z.anchor){let Q=z3.anchorNames(this);Z.anchor=!X||Q.has(X)?z3.findNewAnchor(X||"a",Q):X}return new _B.Alias(Z.anchor)}createNode(Z,X,Q){let U=void 0;if(typeof X==="function")Z=X.call({"":Z},"",Z),U=X;else if(Array.isArray(X)){let z=(K)=>typeof K==="number"||K instanceof String||K instanceof Number,B=X.filter(z).map(String);if(B.length>0)X=X.concat(B);U=X}else if(Q===void 0&&X)Q=X,X=void 0;let{aliasDuplicateObjects:q,anchorPrefix:J,flow:Y,keepUndefined:W,onTagObj:$,tag:L}=Q??{},{onAnchor:V,setAnchors:G,sourceObjects:_}=z3.createNodeAnchors(this,J||"a"),H={aliasDuplicateObjects:q??!0,keepUndefined:W??!1,onAnchor:V,onTagObj:$,replacer:U,schema:this.schema,sourceObjects:_},F=OB.createNode(Z,L,H);if(Y&&l0.isCollection(F))F.flow=!0;return G(),F}createPair(Z,X,Q={}){let U=this.createNode(Z,null,Q),q=this.createNode(X,null,Q);return new zB.Pair(U,q)}delete(Z){return Z6(this.contents)?this.contents.delete(Z):!1}deleteIn(Z){if(e2.isEmptyPath(Z)){if(this.contents==null)return!1;return this.contents=null,!0}return Z6(this.contents)?this.contents.deleteIn(Z):!1}get(Z,X){return l0.isCollection(this.contents)?this.contents.get(Z,X):void 0}getIn(Z,X){if(e2.isEmptyPath(Z))return!X&&l0.isScalar(this.contents)?this.contents.value:this.contents;return l0.isCollection(this.contents)?this.contents.getIn(Z,X):void 0}has(Z){return l0.isCollection(this.contents)?this.contents.has(Z):!1}hasIn(Z){if(e2.isEmptyPath(Z))return this.contents!==void 0;return l0.isCollection(this.contents)?this.contents.hasIn(Z):!1}set(Z,X){if(this.contents==null)this.contents=e2.collectionFromPath(this.schema,[Z],X);else if(Z6(this.contents))this.contents.set(Z,X)}setIn(Z,X){if(e2.isEmptyPath(Z))this.contents=X;else if(this.contents==null)this.contents=e2.collectionFromPath(this.schema,Array.from(Z),X);else if(Z6(this.contents))this.contents.setIn(Z,X)}setSchema(Z,X={}){if(typeof Z==="number")Z=String(Z);let Q;switch(Z){case"1.1":if(this.directives)this.directives.yaml.version="1.1";else this.directives=new H3.Directives({version:"1.1"});Q={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":if(this.directives)this.directives.yaml.version=Z;else this.directives=new H3.Directives({version:Z});Q={resolveKnownTags:!0,schema:"core"};break;case null:if(this.directives)delete this.directives;Q=null;break;default:{let U=JSON.stringify(Z);throw Error(`Expected '1.1', '1.2' or null as first argument, but found: ${U}`)}}if(X.schema instanceof Object)this.schema=X.schema;else if(Q)this.schema=new FB.Schema(Object.assign(Q,X));else throw Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:Z,jsonArg:X,mapAsMap:Q,maxAliasCount:U,onAnchor:q,reviver:J}={}){let Y={anchors:new Map,doc:this,keep:!Z,mapAsMap:Q===!0,mapKeyWarned:!1,maxAliasCount:typeof U==="number"?U:100},W=HB.toJS(this.contents,X??"",Y);if(typeof q==="function")for(let{count:$,res:L}of Y.anchors.values())q(L,$);return typeof J==="function"?MB.applyReviver(J,{"":W},"",W):W}toJSON(Z,X){return this.toJS({json:!0,jsonArg:Z,mapAsMap:!1,onAnchor:X})}toString(Z={}){if(this.errors.length>0)throw Error("Document with errors cannot be stringified");if("indent"in Z&&(!Number.isInteger(Z.indent)||Number(Z.indent)<=0)){let X=JSON.stringify(Z.indent);throw Error(`"indent" option must be a positive integer, not ${X}`)}return BB.stringifyDocument(this,Z)}}function Z6(Z){if(l0.isCollection(Z))return!0;throw Error("Expected a YAML collection as document contents")}RB.Document=F3});var B4=C((DB)=>{class ZZ extends Error{constructor(Z,X,Q,U){super();this.name=Z,this.code=Q,this.message=U,this.pos=X}}class fJ extends ZZ{constructor(Z,X,Q){super("YAMLParseError",Z,X,Q)}}class yJ extends ZZ{constructor(Z,X,Q){super("YAMLWarning",Z,X,Q)}}var KB=(Z,X)=>(Q)=>{if(Q.pos[0]===-1)return;Q.linePos=Q.pos.map((W)=>X.linePos(W));let{line:U,col:q}=Q.linePos[0];Q.message+=` at line ${U}, column ${q}`;let J=q-1,Y=Z.substring(X.lineStarts[U-1],X.lineStarts[U]).replace(/[\n\r]+$/,"");if(J>=60&&Y.length>80){let W=Math.min(J-39,Y.length-79);Y="…"+Y.substring(W),J-=W-1}if(Y.length>80)Y=Y.substring(0,79)+"…";if(U>1&&/^ *$/.test(Y.substring(0,J))){let W=Z.substring(X.lineStarts[U-2],X.lineStarts[U-1]);if(W.length>80)W=W.substring(0,79)+`…
103
103
  `;Y=W+Y}if(/[^ ]/.test(Y)){let W=1,$=Q.linePos[1];if($?.line===U&&$.col>q)W=Math.max(1,Math.min($.col-q,80-J));let L=" ".repeat(J)+"^".repeat(W);Q.message+=`:
104
104
 
105
105
  ${Y}
106
106
  ${L}
107
- `}};DB.YAMLError=ZZ;DB.YAMLParseError=fJ;DB.YAMLWarning=yJ;DB.prettifyError=KB});var M4=C((CB)=>{function jB(Z,{flow:X,indicator:Q,next:U,offset:q,onError:J,parentIndent:Y,startOnNewline:W}){let $=!1,L=W,V=W,G="",_="",H=!1,F=!1,z=null,B=null,K=null,P=null,w=null,O=null,S=null;for(let A of Z){if(F){if(A.type!=="space"&&A.type!=="newline"&&A.type!=="comma")J(A.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");F=!1}if(z){if(L&&A.type!=="comment"&&A.type!=="newline")J(z,"TAB_AS_INDENT","Tabs are not allowed as indentation");z=null}switch(A.type){case"space":if(!X&&(Q!=="doc-start"||U?.type!=="flow-collection")&&A.source.includes("\t"))z=A;V=!0;break;case"comment":{if(!V)J(A,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let u=A.source.substring(1)||" ";if(!G)G=u;else G+=_+u;_="",L=!1;break}case"newline":if(L){if(G)G+=A.source;else if(!O||Q!=="seq-item-ind")$=!0}else _+=A.source;if(L=!0,H=!0,B||K)P=A;V=!0;break;case"anchor":if(B)J(A,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(A.source.endsWith(":"))J(A.offset+A.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);B=A,S??(S=A.offset),L=!1,V=!1,F=!0;break;case"tag":{if(K)J(A,"MULTIPLE_TAGS","A node can have at most one tag");K=A,S??(S=A.offset),L=!1,V=!1,F=!0;break}case Q:if(B||K)J(A,"BAD_PROP_ORDER",`Anchors and tags must be after the ${A.source} indicator`);if(O)J(A,"UNEXPECTED_TOKEN",`Unexpected ${A.source} in ${X??"collection"}`);O=A,L=Q==="seq-item-ind"||Q==="explicit-key-ind",V=!1;break;case"comma":if(X){if(w)J(A,"UNEXPECTED_TOKEN",`Unexpected , in ${X}`);w=A,L=!1,V=!1;break}default:J(A,"UNEXPECTED_TOKEN",`Unexpected ${A.type} token`),L=!1,V=!1}}let N=Z[Z.length-1],y=N?N.offset+N.source.length:q;if(F&&U&&U.type!=="space"&&U.type!=="newline"&&U.type!=="comma"&&(U.type!=="scalar"||U.source!==""))J(U.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(z&&(L&&z.indent<=Y||U?.type==="block-map"||U?.type==="block-seq"))J(z,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:w,found:O,spaceBefore:$,comment:G,hasNewline:H,anchor:B,tag:K,newlineAfterProp:P,end:y,start:S??y}}CB.resolveProps=jB});var XZ=C((EB)=>{function B3(Z){if(!Z)return null;switch(Z.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(Z.source.includes(`
108
- `))return!0;if(Z.end){for(let X of Z.end)if(X.type==="newline")return!0}return!1;case"flow-collection":for(let X of Z.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(B3(X.key)||B3(X.value))return!0}return!1;default:return!0}}EB.containsNewline=B3});var M3=C((yB)=>{var IB=XZ();function fB(Z,X,Q){if(X?.type==="flow-collection"){let U=X.end[0];if(U.indent===Z&&(U.source==="]"||U.source==="}")&&IB.containsNewline(X))Q(U,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}yB.flowIndentCheck=fB});var R3=C((vB)=>{var kJ=d();function gB(Z,X,Q){let{uniqueKeys:U}=Z.options;if(U===!1)return!1;let q=typeof U==="function"?U:(J,Y)=>J===Y||kJ.isScalar(J)&&kJ.isScalar(Y)&&J.value===Y.value;return X.some((J)=>q(J.key,Q))}vB.mapIncludes=gB});var mJ=C((lB)=>{var gJ=h1(),hB=u1(),vJ=M4(),mB=XZ(),xJ=M3(),uB=R3(),hJ="All mapping items must start at the same column";function pB({composeNode:Z,composeEmptyNode:X},Q,U,q,J){let W=new(J?.nodeClass??hB.YAMLMap)(Q.schema);if(Q.atRoot)Q.atRoot=!1;let $=U.offset,L=null;for(let V of U.items){let{start:G,key:_,sep:H,value:F}=V,z=vJ.resolveProps(G,{indicator:"explicit-key-ind",next:_??H?.[0],offset:$,onError:q,parentIndent:U.indent,startOnNewline:!0}),B=!z.found;if(B){if(_){if(_.type==="block-seq")q($,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in _&&_.indent!==U.indent)q($,"BAD_INDENT",hJ)}if(!z.anchor&&!z.tag&&!H){if(L=z.end,z.comment)if(W.comment)W.comment+=`
109
- `+z.comment;else W.comment=z.comment;continue}if(z.newlineAfterProp||mB.containsNewline(_))q(_??G[G.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(z.found?.indent!==U.indent)q($,"BAD_INDENT",hJ);Q.atKey=!0;let K=z.end,P=_?Z(Q,_,z,q):X(Q,K,G,null,z,q);if(Q.schema.compat)xJ.flowIndentCheck(U.indent,_,q);if(Q.atKey=!1,uB.mapIncludes(Q,W.items,P))q(K,"DUPLICATE_KEY","Map keys must be unique");let w=vJ.resolveProps(H??[],{indicator:"map-value-ind",next:F,offset:P.range[2],onError:q,parentIndent:U.indent,startOnNewline:!_||_.type==="block-scalar"});if($=w.end,w.found){if(B){if(F?.type==="block-map"&&!w.hasNewline)q($,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(Q.options.strict&&z.start<w.found.offset-1024)q(P.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let O=F?Z(Q,F,w,q):X(Q,$,H,null,w,q);if(Q.schema.compat)xJ.flowIndentCheck(U.indent,F,q);$=O.range[2];let S=new gJ.Pair(P,O);if(Q.options.keepSourceTokens)S.srcToken=V;W.items.push(S)}else{if(B)q(P.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(w.comment)if(P.comment)P.comment+=`
110
- `+w.comment;else P.comment=w.comment;let O=new gJ.Pair(P);if(Q.options.keepSourceTokens)O.srcToken=V;W.items.push(O)}}if(L&&L<$)q(L,"IMPOSSIBLE","Map comment with trailing content");return W.range=[U.offset,$,L??$],W}lB.resolveBlockMap=pB});var uJ=C((rB)=>{var dB=p1(),iB=M4(),sB=M3();function aB({composeNode:Z,composeEmptyNode:X},Q,U,q,J){let W=new(J?.nodeClass??dB.YAMLSeq)(Q.schema);if(Q.atRoot)Q.atRoot=!1;if(Q.atKey)Q.atKey=!1;let $=U.offset,L=null;for(let{start:V,value:G}of U.items){let _=iB.resolveProps(V,{indicator:"seq-item-ind",next:G,offset:$,onError:q,parentIndent:U.indent,startOnNewline:!0});if(!_.found)if(_.anchor||_.tag||G)if(G?.type==="block-seq")q(_.end,"BAD_INDENT","All sequence items must start at the same column");else q($,"MISSING_CHAR","Sequence item without - indicator");else{if(L=_.end,_.comment)W.comment=_.comment;continue}let H=G?Z(Q,G,_,q):X(Q,_.end,V,null,_,q);if(Q.schema.compat)sB.flowIndentCheck(U.indent,G,q);$=H.range[2],W.items.push(H)}return W.range=[U.offset,$,L??$],W}rB.resolveBlockSeq=aB});var X6=C((tB)=>{function nB(Z,X,Q,U){let q="";if(Z){let J=!1,Y="";for(let W of Z){let{source:$,type:L}=W;switch(L){case"space":J=!0;break;case"comment":{if(Q&&!J)U(W,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let V=$.substring(1)||" ";if(!q)q=V;else q+=Y+V;Y="";break}case"newline":if(q)Y+=$;J=!0;break;default:U(W,"UNEXPECTED_TOKEN",`Unexpected ${L} at node end`)}X+=$.length}}return{comment:q,offset:X}}tB.resolveEnd=nB});var cJ=C((WM)=>{var ZM=d(),XM=h1(),pJ=u1(),QM=p1(),UM=X6(),lJ=M4(),qM=XZ(),JM=R3(),O3="Block collections are not allowed within flow collections",T3=(Z)=>Z&&(Z.type==="block-map"||Z.type==="block-seq");function YM({composeNode:Z,composeEmptyNode:X},Q,U,q,J){let Y=U.start.source==="{",W=Y?"flow map":"flow sequence",L=new(J?.nodeClass??(Y?pJ.YAMLMap:QM.YAMLSeq))(Q.schema);L.flow=!0;let V=Q.atRoot;if(V)Q.atRoot=!1;if(Q.atKey)Q.atKey=!1;let G=U.offset+U.start.source.length;for(let B=0;B<U.items.length;++B){let K=U.items[B],{start:P,key:w,sep:O,value:S}=K,N=lJ.resolveProps(P,{flow:W,indicator:"explicit-key-ind",next:w??O?.[0],offset:G,onError:q,parentIndent:U.indent,startOnNewline:!1});if(!N.found){if(!N.anchor&&!N.tag&&!O&&!S){if(B===0&&N.comma)q(N.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${W}`);else if(B<U.items.length-1)q(N.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${W}`);if(N.comment)if(L.comment)L.comment+=`
107
+ `}};DB.YAMLError=ZZ;DB.YAMLParseError=fJ;DB.YAMLWarning=yJ;DB.prettifyError=KB});var M4=C((CB)=>{function jB(Z,{flow:X,indicator:Q,next:U,offset:q,onError:J,parentIndent:Y,startOnNewline:W}){let $=!1,L=W,V=W,G="",_="",H=!1,F=!1,z=null,B=null,K=null,P=null,w=null,R=null,S=null;for(let A of Z){if(F){if(A.type!=="space"&&A.type!=="newline"&&A.type!=="comma")J(A.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");F=!1}if(z){if(L&&A.type!=="comment"&&A.type!=="newline")J(z,"TAB_AS_INDENT","Tabs are not allowed as indentation");z=null}switch(A.type){case"space":if(!X&&(Q!=="doc-start"||U?.type!=="flow-collection")&&A.source.includes("\t"))z=A;V=!0;break;case"comment":{if(!V)J(A,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let u=A.source.substring(1)||" ";if(!G)G=u;else G+=_+u;_="",L=!1;break}case"newline":if(L){if(G)G+=A.source;else if(!R||Q!=="seq-item-ind")$=!0}else _+=A.source;if(L=!0,H=!0,B||K)P=A;V=!0;break;case"anchor":if(B)J(A,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(A.source.endsWith(":"))J(A.offset+A.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);B=A,S??(S=A.offset),L=!1,V=!1,F=!0;break;case"tag":{if(K)J(A,"MULTIPLE_TAGS","A node can have at most one tag");K=A,S??(S=A.offset),L=!1,V=!1,F=!0;break}case Q:if(B||K)J(A,"BAD_PROP_ORDER",`Anchors and tags must be after the ${A.source} indicator`);if(R)J(A,"UNEXPECTED_TOKEN",`Unexpected ${A.source} in ${X??"collection"}`);R=A,L=Q==="seq-item-ind"||Q==="explicit-key-ind",V=!1;break;case"comma":if(X){if(w)J(A,"UNEXPECTED_TOKEN",`Unexpected , in ${X}`);w=A,L=!1,V=!1;break}default:J(A,"UNEXPECTED_TOKEN",`Unexpected ${A.type} token`),L=!1,V=!1}}let N=Z[Z.length-1],y=N?N.offset+N.source.length:q;if(F&&U&&U.type!=="space"&&U.type!=="newline"&&U.type!=="comma"&&(U.type!=="scalar"||U.source!==""))J(U.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(z&&(L&&z.indent<=Y||U?.type==="block-map"||U?.type==="block-seq"))J(z,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:w,found:R,spaceBefore:$,comment:G,hasNewline:H,anchor:B,tag:K,newlineAfterProp:P,end:y,start:S??y}}CB.resolveProps=jB});var XZ=C((EB)=>{function B3(Z){if(!Z)return null;switch(Z.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(Z.source.includes(`
108
+ `))return!0;if(Z.end){for(let X of Z.end)if(X.type==="newline")return!0}return!1;case"flow-collection":for(let X of Z.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(B3(X.key)||B3(X.value))return!0}return!1;default:return!0}}EB.containsNewline=B3});var M3=C((yB)=>{var IB=XZ();function fB(Z,X,Q){if(X?.type==="flow-collection"){let U=X.end[0];if(U.indent===Z&&(U.source==="]"||U.source==="}")&&IB.containsNewline(X))Q(U,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}yB.flowIndentCheck=fB});var O3=C((vB)=>{var kJ=c();function gB(Z,X,Q){let{uniqueKeys:U}=Z.options;if(U===!1)return!1;let q=typeof U==="function"?U:(J,Y)=>J===Y||kJ.isScalar(J)&&kJ.isScalar(Y)&&J.value===Y.value;return X.some((J)=>q(J.key,Q))}vB.mapIncludes=gB});var mJ=C((lB)=>{var gJ=h1(),hB=u1(),vJ=M4(),mB=XZ(),xJ=M3(),uB=O3(),hJ="All mapping items must start at the same column";function pB({composeNode:Z,composeEmptyNode:X},Q,U,q,J){let W=new(J?.nodeClass??hB.YAMLMap)(Q.schema);if(Q.atRoot)Q.atRoot=!1;let $=U.offset,L=null;for(let V of U.items){let{start:G,key:_,sep:H,value:F}=V,z=vJ.resolveProps(G,{indicator:"explicit-key-ind",next:_??H?.[0],offset:$,onError:q,parentIndent:U.indent,startOnNewline:!0}),B=!z.found;if(B){if(_){if(_.type==="block-seq")q($,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in _&&_.indent!==U.indent)q($,"BAD_INDENT",hJ)}if(!z.anchor&&!z.tag&&!H){if(L=z.end,z.comment)if(W.comment)W.comment+=`
109
+ `+z.comment;else W.comment=z.comment;continue}if(z.newlineAfterProp||mB.containsNewline(_))q(_??G[G.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(z.found?.indent!==U.indent)q($,"BAD_INDENT",hJ);Q.atKey=!0;let K=z.end,P=_?Z(Q,_,z,q):X(Q,K,G,null,z,q);if(Q.schema.compat)xJ.flowIndentCheck(U.indent,_,q);if(Q.atKey=!1,uB.mapIncludes(Q,W.items,P))q(K,"DUPLICATE_KEY","Map keys must be unique");let w=vJ.resolveProps(H??[],{indicator:"map-value-ind",next:F,offset:P.range[2],onError:q,parentIndent:U.indent,startOnNewline:!_||_.type==="block-scalar"});if($=w.end,w.found){if(B){if(F?.type==="block-map"&&!w.hasNewline)q($,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(Q.options.strict&&z.start<w.found.offset-1024)q(P.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let R=F?Z(Q,F,w,q):X(Q,$,H,null,w,q);if(Q.schema.compat)xJ.flowIndentCheck(U.indent,F,q);$=R.range[2];let S=new gJ.Pair(P,R);if(Q.options.keepSourceTokens)S.srcToken=V;W.items.push(S)}else{if(B)q(P.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(w.comment)if(P.comment)P.comment+=`
110
+ `+w.comment;else P.comment=w.comment;let R=new gJ.Pair(P);if(Q.options.keepSourceTokens)R.srcToken=V;W.items.push(R)}}if(L&&L<$)q(L,"IMPOSSIBLE","Map comment with trailing content");return W.range=[U.offset,$,L??$],W}lB.resolveBlockMap=pB});var uJ=C((rB)=>{var cB=p1(),iB=M4(),sB=M3();function aB({composeNode:Z,composeEmptyNode:X},Q,U,q,J){let W=new(J?.nodeClass??cB.YAMLSeq)(Q.schema);if(Q.atRoot)Q.atRoot=!1;if(Q.atKey)Q.atKey=!1;let $=U.offset,L=null;for(let{start:V,value:G}of U.items){let _=iB.resolveProps(V,{indicator:"seq-item-ind",next:G,offset:$,onError:q,parentIndent:U.indent,startOnNewline:!0});if(!_.found)if(_.anchor||_.tag||G)if(G?.type==="block-seq")q(_.end,"BAD_INDENT","All sequence items must start at the same column");else q($,"MISSING_CHAR","Sequence item without - indicator");else{if(L=_.end,_.comment)W.comment=_.comment;continue}let H=G?Z(Q,G,_,q):X(Q,_.end,V,null,_,q);if(Q.schema.compat)sB.flowIndentCheck(U.indent,G,q);$=H.range[2],W.items.push(H)}return W.range=[U.offset,$,L??$],W}rB.resolveBlockSeq=aB});var X6=C((tB)=>{function nB(Z,X,Q,U){let q="";if(Z){let J=!1,Y="";for(let W of Z){let{source:$,type:L}=W;switch(L){case"space":J=!0;break;case"comment":{if(Q&&!J)U(W,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let V=$.substring(1)||" ";if(!q)q=V;else q+=Y+V;Y="";break}case"newline":if(q)Y+=$;J=!0;break;default:U(W,"UNEXPECTED_TOKEN",`Unexpected ${L} at node end`)}X+=$.length}}return{comment:q,offset:X}}tB.resolveEnd=nB});var dJ=C((WM)=>{var ZM=c(),XM=h1(),pJ=u1(),QM=p1(),UM=X6(),lJ=M4(),qM=XZ(),JM=O3(),R3="Block collections are not allowed within flow collections",T3=(Z)=>Z&&(Z.type==="block-map"||Z.type==="block-seq");function YM({composeNode:Z,composeEmptyNode:X},Q,U,q,J){let Y=U.start.source==="{",W=Y?"flow map":"flow sequence",L=new(J?.nodeClass??(Y?pJ.YAMLMap:QM.YAMLSeq))(Q.schema);L.flow=!0;let V=Q.atRoot;if(V)Q.atRoot=!1;if(Q.atKey)Q.atKey=!1;let G=U.offset+U.start.source.length;for(let B=0;B<U.items.length;++B){let K=U.items[B],{start:P,key:w,sep:R,value:S}=K,N=lJ.resolveProps(P,{flow:W,indicator:"explicit-key-ind",next:w??R?.[0],offset:G,onError:q,parentIndent:U.indent,startOnNewline:!1});if(!N.found){if(!N.anchor&&!N.tag&&!R&&!S){if(B===0&&N.comma)q(N.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${W}`);else if(B<U.items.length-1)q(N.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${W}`);if(N.comment)if(L.comment)L.comment+=`
111
111
  `+N.comment;else L.comment=N.comment;G=N.end;continue}if(!Y&&Q.options.strict&&qM.containsNewline(w))q(w,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(B===0){if(N.comma)q(N.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${W}`)}else{if(!N.comma)q(N.start,"MISSING_CHAR",`Missing , between ${W} items`);if(N.comment){let y="";Z:for(let A of P)switch(A.type){case"comma":case"space":break;case"comment":y=A.source.substring(1);break Z;default:break Z}if(y){let A=L.items[L.items.length-1];if(ZM.isPair(A))A=A.value??A.key;if(A.comment)A.comment+=`
112
- `+y;else A.comment=y;N.comment=N.comment.substring(y.length+1)}}}if(!Y&&!O&&!N.found){let y=S?Z(Q,S,N,q):X(Q,N.end,O,null,N,q);if(L.items.push(y),G=y.range[2],T3(S))q(y.range,"BLOCK_IN_FLOW",O3)}else{Q.atKey=!0;let y=N.end,A=w?Z(Q,w,N,q):X(Q,y,P,null,N,q);if(T3(w))q(A.range,"BLOCK_IN_FLOW",O3);Q.atKey=!1;let u=lJ.resolveProps(O??[],{flow:W,indicator:"map-value-ind",next:S,offset:A.range[2],onError:q,parentIndent:U.indent,startOnNewline:!1});if(u.found){if(!Y&&!N.found&&Q.options.strict){if(O)for(let x of O){if(x===u.found)break;if(x.type==="newline"){q(x,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(N.start<u.found.offset-1024)q(u.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(S)if("source"in S&&S.source?.[0]===":")q(S,"MISSING_CHAR",`Missing space after : in ${W}`);else q(u.start,"MISSING_CHAR",`Missing , or : between ${W} items`);let o=S?Z(Q,S,u,q):u.found?X(Q,u.end,O,null,u,q):null;if(o){if(T3(S))q(o.range,"BLOCK_IN_FLOW",O3)}else if(u.comment)if(A.comment)A.comment+=`
112
+ `+y;else A.comment=y;N.comment=N.comment.substring(y.length+1)}}}if(!Y&&!R&&!N.found){let y=S?Z(Q,S,N,q):X(Q,N.end,R,null,N,q);if(L.items.push(y),G=y.range[2],T3(S))q(y.range,"BLOCK_IN_FLOW",R3)}else{Q.atKey=!0;let y=N.end,A=w?Z(Q,w,N,q):X(Q,y,P,null,N,q);if(T3(w))q(A.range,"BLOCK_IN_FLOW",R3);Q.atKey=!1;let u=lJ.resolveProps(R??[],{flow:W,indicator:"map-value-ind",next:S,offset:A.range[2],onError:q,parentIndent:U.indent,startOnNewline:!1});if(u.found){if(!Y&&!N.found&&Q.options.strict){if(R)for(let x of R){if(x===u.found)break;if(x.type==="newline"){q(x,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(N.start<u.found.offset-1024)q(u.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else if(S)if("source"in S&&S.source?.[0]===":")q(S,"MISSING_CHAR",`Missing space after : in ${W}`);else q(u.start,"MISSING_CHAR",`Missing , or : between ${W} items`);let o=S?Z(Q,S,u,q):u.found?X(Q,u.end,R,null,u,q):null;if(o){if(T3(S))q(o.range,"BLOCK_IN_FLOW",R3)}else if(u.comment)if(A.comment)A.comment+=`
113
113
  `+u.comment;else A.comment=u.comment;let t=new XM.Pair(A,o);if(Q.options.keepSourceTokens)t.srcToken=K;if(Y){let x=L;if(JM.mapIncludes(Q,x.items,A))q(y,"DUPLICATE_KEY","Map keys must be unique");x.items.push(t)}else{let x=new pJ.YAMLMap(Q.schema);x.flow=!0,x.items.push(t);let r=(o??A).range;x.range=[A.range[0],r[1],r[2]],L.items.push(x)}G=o?o.range[2]:u.end}}let _=Y?"}":"]",[H,...F]=U.end,z=G;if(H?.source===_)z=H.offset+H.source.length;else{let B=W[0].toUpperCase()+W.substring(1),K=V?`${B} must end with a ${_}`:`${B} in block collection must be sufficiently indented and end with a ${_}`;if(q(G,V?"MISSING_CHAR":"BAD_INDENT",K),H&&H.source.length!==1)F.unshift(H)}if(F.length>0){let B=UM.resolveEnd(F,z,Q.options.strict,q);if(B.comment)if(L.comment)L.comment+=`
114
- `+B.comment;else L.comment=B.comment;L.range=[U.offset,z,B.offset]}else L.range=[U.offset,z,z];return L}WM.resolveFlowCollection=YM});var dJ=C((MM)=>{var LM=d(),GM=L0(),VM=u1(),_M=p1(),zM=mJ(),HM=uJ(),FM=cJ();function K3(Z,X,Q,U,q,J){let Y=Q.type==="block-map"?zM.resolveBlockMap(Z,X,Q,U,J):Q.type==="block-seq"?HM.resolveBlockSeq(Z,X,Q,U,J):FM.resolveFlowCollection(Z,X,Q,U,J),W=Y.constructor;if(q==="!"||q===W.tagName)return Y.tag=W.tagName,Y;if(q)Y.tag=q;return Y}function BM(Z,X,Q,U,q){let J=U.tag,Y=!J?null:X.directives.tagName(J.source,(_)=>q(J,"TAG_RESOLVE_FAILED",_));if(Q.type==="block-seq"){let{anchor:_,newlineAfterProp:H}=U,F=_&&J?_.offset>J.offset?_:J:_??J;if(F&&(!H||H.offset<F.offset))q(F,"MISSING_CHAR","Missing newline after block sequence props")}let W=Q.type==="block-map"?"map":Q.type==="block-seq"?"seq":Q.start.source==="{"?"map":"seq";if(!J||!Y||Y==="!"||Y===VM.YAMLMap.tagName&&W==="map"||Y===_M.YAMLSeq.tagName&&W==="seq")return K3(Z,X,Q,q,Y);let $=X.schema.tags.find((_)=>_.tag===Y&&_.collection===W);if(!$){let _=X.schema.knownTags[Y];if(_?.collection===W)X.schema.tags.push(Object.assign({},_,{default:!1})),$=_;else{if(_)q(J,"BAD_COLLECTION_TYPE",`${_.tag} used for ${W} collection, but expects ${_.collection??"scalar"}`,!0);else q(J,"TAG_RESOLVE_FAILED",`Unresolved tag: ${Y}`,!0);return K3(Z,X,Q,q,Y)}}let L=K3(Z,X,Q,q,Y,$),V=$.resolve?.(L,(_)=>q(J,"TAG_RESOLVE_FAILED",_),X.options)??L,G=LM.isNode(V)?V:new GM.Scalar(V);if(G.range=L.range,G.tag=Y,$?.format)G.format=$.format;return G}MM.composeCollection=BM});var P3=C((DM)=>{var D3=L0();function OM(Z,X,Q){let U=X.offset,q=TM(X,Z.options.strict,Q);if(!q)return{value:"",type:null,comment:"",range:[U,U,U]};let J=q.mode===">"?D3.Scalar.BLOCK_FOLDED:D3.Scalar.BLOCK_LITERAL,Y=X.source?KM(X.source):[],W=Y.length;for(let z=Y.length-1;z>=0;--z){let B=Y[z][1];if(B===""||B==="\r")W=z;else break}if(W===0){let z=q.chomp==="+"&&Y.length>0?`
114
+ `+B.comment;else L.comment=B.comment;L.range=[U.offset,z,B.offset]}else L.range=[U.offset,z,z];return L}WM.resolveFlowCollection=YM});var cJ=C((MM)=>{var LM=c(),GM=L0(),VM=u1(),_M=p1(),zM=mJ(),HM=uJ(),FM=dJ();function K3(Z,X,Q,U,q,J){let Y=Q.type==="block-map"?zM.resolveBlockMap(Z,X,Q,U,J):Q.type==="block-seq"?HM.resolveBlockSeq(Z,X,Q,U,J):FM.resolveFlowCollection(Z,X,Q,U,J),W=Y.constructor;if(q==="!"||q===W.tagName)return Y.tag=W.tagName,Y;if(q)Y.tag=q;return Y}function BM(Z,X,Q,U,q){let J=U.tag,Y=!J?null:X.directives.tagName(J.source,(_)=>q(J,"TAG_RESOLVE_FAILED",_));if(Q.type==="block-seq"){let{anchor:_,newlineAfterProp:H}=U,F=_&&J?_.offset>J.offset?_:J:_??J;if(F&&(!H||H.offset<F.offset))q(F,"MISSING_CHAR","Missing newline after block sequence props")}let W=Q.type==="block-map"?"map":Q.type==="block-seq"?"seq":Q.start.source==="{"?"map":"seq";if(!J||!Y||Y==="!"||Y===VM.YAMLMap.tagName&&W==="map"||Y===_M.YAMLSeq.tagName&&W==="seq")return K3(Z,X,Q,q,Y);let $=X.schema.tags.find((_)=>_.tag===Y&&_.collection===W);if(!$){let _=X.schema.knownTags[Y];if(_?.collection===W)X.schema.tags.push(Object.assign({},_,{default:!1})),$=_;else{if(_)q(J,"BAD_COLLECTION_TYPE",`${_.tag} used for ${W} collection, but expects ${_.collection??"scalar"}`,!0);else q(J,"TAG_RESOLVE_FAILED",`Unresolved tag: ${Y}`,!0);return K3(Z,X,Q,q,Y)}}let L=K3(Z,X,Q,q,Y,$),V=$.resolve?.(L,(_)=>q(J,"TAG_RESOLVE_FAILED",_),X.options)??L,G=LM.isNode(V)?V:new GM.Scalar(V);if(G.range=L.range,G.tag=Y,$?.format)G.format=$.format;return G}MM.composeCollection=BM});var P3=C((DM)=>{var D3=L0();function RM(Z,X,Q){let U=X.offset,q=TM(X,Z.options.strict,Q);if(!q)return{value:"",type:null,comment:"",range:[U,U,U]};let J=q.mode===">"?D3.Scalar.BLOCK_FOLDED:D3.Scalar.BLOCK_LITERAL,Y=X.source?KM(X.source):[],W=Y.length;for(let z=Y.length-1;z>=0;--z){let B=Y[z][1];if(B===""||B==="\r")W=z;else break}if(W===0){let z=q.chomp==="+"&&Y.length>0?`
115
115
  `.repeat(Math.max(1,Y.length-1)):"",B=U+q.length;if(X.source)B+=X.source.length;return{value:z,type:J,comment:q.comment,range:[U,B,B]}}let $=X.indent+q.indent,L=X.offset+q.length,V=0;for(let z=0;z<W;++z){let[B,K]=Y[z];if(K===""||K==="\r"){if(q.indent===0&&B.length>$)$=B.length}else{if(B.length<$)Q(L+B.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator");if(q.indent===0)$=B.length;if(V=z,$===0&&!Z.atRoot)Q(L,"BAD_INDENT","Block scalar values in collections must be indented");break}L+=B.length+K.length+1}for(let z=Y.length-1;z>=W;--z)if(Y[z][0].length>$)W=z+1;let G="",_="",H=!1;for(let z=0;z<V;++z)G+=Y[z][0].slice($)+`
116
- `;for(let z=V;z<W;++z){let[B,K]=Y[z];L+=B.length+K.length+1;let P=K[K.length-1]==="\r";if(P)K=K.slice(0,-1);if(K&&B.length<$){let O=`Block scalar lines must not be less indented than their ${q.indent?"explicit indentation indicator":"first line"}`;Q(L-K.length-(P?2:1),"BAD_INDENT",O),B=""}if(J===D3.Scalar.BLOCK_LITERAL)G+=_+B.slice($)+K,_=`
116
+ `;for(let z=V;z<W;++z){let[B,K]=Y[z];L+=B.length+K.length+1;let P=K[K.length-1]==="\r";if(P)K=K.slice(0,-1);if(K&&B.length<$){let R=`Block scalar lines must not be less indented than their ${q.indent?"explicit indentation indicator":"first line"}`;Q(L-K.length-(P?2:1),"BAD_INDENT",R),B=""}if(J===D3.Scalar.BLOCK_LITERAL)G+=_+B.slice($)+K,_=`
117
117
  `;else if(B.length>$||K[0]==="\t"){if(_===" ")_=`
118
118
  `;else if(!H&&_===`
119
119
  `)_=`
@@ -126,7 +126,7 @@ ${L}
126
126
  `+Y[z][0].slice($);if(G[G.length-1]!==`
127
127
  `)G+=`
128
128
  `;break;default:G+=`
129
- `}let F=U+q.length+X.source.length;return{value:G,type:J,comment:q.comment,range:[U,F,F]}}function TM({offset:Z,props:X},Q,U){if(X[0].type!=="block-scalar-header")return U(X[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:q}=X[0],J=q[0],Y=0,W="",$=-1;for(let _=1;_<q.length;++_){let H=q[_];if(!W&&(H==="-"||H==="+"))W=H;else{let F=Number(H);if(!Y&&F)Y=F;else if($===-1)$=Z+_}}if($!==-1)U($,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${q}`);let L=!1,V="",G=q.length;for(let _=1;_<X.length;++_){let H=X[_];switch(H.type){case"space":L=!0;case"newline":G+=H.source.length;break;case"comment":if(Q&&!L)U(H,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");G+=H.source.length,V=H.source.substring(1);break;case"error":U(H,"UNEXPECTED_TOKEN",H.message),G+=H.source.length;break;default:{let F=`Unexpected token in block scalar header: ${H.type}`;U(H,"UNEXPECTED_TOKEN",F);let z=H.source;if(z&&typeof z==="string")G+=z.length}}}return{mode:J,indent:Y,chomp:W,comment:V,length:G}}function KM(Z){let X=Z.split(/\n( *)/),Q=X[0],U=Q.match(/^( *)/),J=[U?.[1]?[U[1],Q.slice(U[1].length)]:["",Q]];for(let Y=1;Y<X.length;Y+=2)J.push([X[Y],X[Y+1]]);return J}DM.resolveBlockScalar=OM});var A3=C((IM)=>{var w3=L0(),wM=X6();function AM(Z,X,Q){let{offset:U,type:q,source:J,end:Y}=Z,W,$,L=(_,H,F)=>Q(U+_,H,F);switch(q){case"scalar":W=w3.Scalar.PLAIN,$=SM(J,L);break;case"single-quoted-scalar":W=w3.Scalar.QUOTE_SINGLE,$=jM(J,L);break;case"double-quoted-scalar":W=w3.Scalar.QUOTE_DOUBLE,$=CM(J,L);break;default:return Q(Z,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${q}`),{value:"",type:null,comment:"",range:[U,U+J.length,U+J.length]}}let V=U+J.length,G=wM.resolveEnd(Y,V,X,Q);return{value:$,type:W,comment:G.comment,range:[U,V,G.offset]}}function SM(Z,X){let Q="";switch(Z[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 ${Z[0]}`;break}case"@":case"`":{Q=`reserved character ${Z[0]}`;break}}if(Q)X(0,"BAD_SCALAR_START",`Plain value cannot start with ${Q}`);return iJ(Z)}function jM(Z,X){if(Z[Z.length-1]!=="'"||Z.length===1)X(Z.length,"MISSING_CHAR","Missing closing 'quote");return iJ(Z.slice(1,-1)).replace(/''/g,"'")}function iJ(Z){let X,Q;try{X=new RegExp(`(.*?)(?<![ ])[ ]*\r?
129
+ `}let F=U+q.length+X.source.length;return{value:G,type:J,comment:q.comment,range:[U,F,F]}}function TM({offset:Z,props:X},Q,U){if(X[0].type!=="block-scalar-header")return U(X[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:q}=X[0],J=q[0],Y=0,W="",$=-1;for(let _=1;_<q.length;++_){let H=q[_];if(!W&&(H==="-"||H==="+"))W=H;else{let F=Number(H);if(!Y&&F)Y=F;else if($===-1)$=Z+_}}if($!==-1)U($,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${q}`);let L=!1,V="",G=q.length;for(let _=1;_<X.length;++_){let H=X[_];switch(H.type){case"space":L=!0;case"newline":G+=H.source.length;break;case"comment":if(Q&&!L)U(H,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");G+=H.source.length,V=H.source.substring(1);break;case"error":U(H,"UNEXPECTED_TOKEN",H.message),G+=H.source.length;break;default:{let F=`Unexpected token in block scalar header: ${H.type}`;U(H,"UNEXPECTED_TOKEN",F);let z=H.source;if(z&&typeof z==="string")G+=z.length}}}return{mode:J,indent:Y,chomp:W,comment:V,length:G}}function KM(Z){let X=Z.split(/\n( *)/),Q=X[0],U=Q.match(/^( *)/),J=[U?.[1]?[U[1],Q.slice(U[1].length)]:["",Q]];for(let Y=1;Y<X.length;Y+=2)J.push([X[Y],X[Y+1]]);return J}DM.resolveBlockScalar=RM});var A3=C((IM)=>{var w3=L0(),wM=X6();function AM(Z,X,Q){let{offset:U,type:q,source:J,end:Y}=Z,W,$,L=(_,H,F)=>Q(U+_,H,F);switch(q){case"scalar":W=w3.Scalar.PLAIN,$=SM(J,L);break;case"single-quoted-scalar":W=w3.Scalar.QUOTE_SINGLE,$=jM(J,L);break;case"double-quoted-scalar":W=w3.Scalar.QUOTE_DOUBLE,$=CM(J,L);break;default:return Q(Z,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${q}`),{value:"",type:null,comment:"",range:[U,U+J.length,U+J.length]}}let V=U+J.length,G=wM.resolveEnd(Y,V,X,Q);return{value:$,type:W,comment:G.comment,range:[U,V,G.offset]}}function SM(Z,X){let Q="";switch(Z[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 ${Z[0]}`;break}case"@":case"`":{Q=`reserved character ${Z[0]}`;break}}if(Q)X(0,"BAD_SCALAR_START",`Plain value cannot start with ${Q}`);return iJ(Z)}function jM(Z,X){if(Z[Z.length-1]!=="'"||Z.length===1)X(Z.length,"MISSING_CHAR","Missing closing 'quote");return iJ(Z.slice(1,-1)).replace(/''/g,"'")}function iJ(Z){let X,Q;try{X=new RegExp(`(.*?)(?<![ ])[ ]*\r?
130
130
  `,"sy"),Q=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
131
131
  `,"sy")}catch{X=/(.*?)[ \t]*\r?\n/sy,Q=/[ \t]*(.*?)[ \t]*\r?\n/sy}let U=X.exec(Z);if(!U)return Z;let q=U[1],J=" ",Y=X.lastIndex;Q.lastIndex=Y;while(U=Q.exec(Z)){if(U[1]==="")if(J===`
132
132
  `)q+=J;else J=`
@@ -141,26 +141,26 @@ ${L}
141
141
  `)break;if(U===`
142
142
  `)Q+=`
143
143
  `;X+=1,U=Z[X+1]}if(!Q)Q=" ";return{fold:Q,offset:X}}var EM={"0":"\x00",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
144
- `,r:"\r",t:"\t",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function bM(Z,X,Q,U){let q=Z.substr(X,Q),Y=q.length===Q&&/^[0-9a-fA-F]+$/.test(q)?parseInt(q,16):NaN;if(isNaN(Y)){let W=Z.substr(X-2,Q+2);return U(X-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${W}`),W}return String.fromCodePoint(Y)}IM.resolveFlowScalar=AM});var aJ=C((hM)=>{var V2=d(),sJ=L0(),yM=P3(),kM=A3();function gM(Z,X,Q,U){let{value:q,type:J,comment:Y,range:W}=X.type==="block-scalar"?yM.resolveBlockScalar(Z,X,U):kM.resolveFlowScalar(X,Z.options.strict,U),$=Q?Z.directives.tagName(Q.source,(G)=>U(Q,"TAG_RESOLVE_FAILED",G)):null,L;if(Z.options.stringKeys&&Z.atKey)L=Z.schema[V2.SCALAR];else if($)L=vM(Z.schema,q,$,Q,U);else if(X.type==="scalar")L=xM(Z,q,X,U);else L=Z.schema[V2.SCALAR];let V;try{let G=L.resolve(q,(_)=>U(Q??X,"TAG_RESOLVE_FAILED",_),Z.options);V=V2.isScalar(G)?G:new sJ.Scalar(G)}catch(G){let _=G instanceof Error?G.message:String(G);U(Q??X,"TAG_RESOLVE_FAILED",_),V=new sJ.Scalar(q)}if(V.range=W,V.source=q,J)V.type=J;if($)V.tag=$;if(L.format)V.format=L.format;if(Y)V.comment=Y;return V}function vM(Z,X,Q,U,q){if(Q==="!")return Z[V2.SCALAR];let J=[];for(let W of Z.tags)if(!W.collection&&W.tag===Q)if(W.default&&W.test)J.push(W);else return W;for(let W of J)if(W.test?.test(X))return W;let Y=Z.knownTags[Q];if(Y&&!Y.collection)return Z.tags.push(Object.assign({},Y,{default:!1,test:void 0})),Y;return q(U,"TAG_RESOLVE_FAILED",`Unresolved tag: ${Q}`,Q!=="tag:yaml.org,2002:str"),Z[V2.SCALAR]}function xM({atKey:Z,directives:X,schema:Q},U,q,J){let Y=Q.tags.find((W)=>(W.default===!0||Z&&W.default==="key")&&W.test?.test(U))||Q[V2.SCALAR];if(Q.compat){let W=Q.compat.find(($)=>$.default&&$.test?.test(U))??Q[V2.SCALAR];if(Y.tag!==W.tag){let $=X.tagString(Y.tag),L=X.tagString(W.tag),V=`Value may be parsed as either ${$} or ${L}`;J(q,"TAG_RESOLVE_FAILED",V,!0)}}return Y}hM.composeScalar=gM});var rJ=C((pM)=>{function uM(Z,X,Q){if(X){Q??(Q=X.length);for(let U=Q-1;U>=0;--U){let q=X[U];switch(q.type){case"space":case"comment":case"newline":Z-=q.source.length;continue}q=X[++U];while(q?.type==="space")Z+=q.source.length,q=X[++U];break}}return Z}pM.emptyScalarPosition=uM});var tJ=C((nM)=>{var cM=Z4(),dM=d(),iM=dJ(),oJ=aJ(),sM=X6(),aM=rJ(),rM={composeNode:nJ,composeEmptyNode:S3};function nJ(Z,X,Q,U){let q=Z.atKey,{spaceBefore:J,comment:Y,anchor:W,tag:$}=Q,L,V=!0;switch(X.type){case"alias":if(L=oM(Z,X,U),W||$)U(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(L=oJ.composeScalar(Z,X,$,U),W)L.anchor=W.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(L=iM.composeCollection(rM,Z,X,Q,U),W)L.anchor=W.source.substring(1);break;default:{let G=X.type==="error"?X.message:`Unsupported token (type: ${X.type})`;U(X,"UNEXPECTED_TOKEN",G),L=S3(Z,X.offset,void 0,null,Q,U),V=!1}}if(W&&L.anchor==="")U(W,"BAD_ALIAS","Anchor cannot be an empty string");if(q&&Z.options.stringKeys&&(!dM.isScalar(L)||typeof L.value!=="string"||L.tag&&L.tag!=="tag:yaml.org,2002:str"))U($??X,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(J)L.spaceBefore=!0;if(Y)if(X.type==="scalar"&&X.source==="")L.comment=Y;else L.commentBefore=Y;if(Z.options.keepSourceTokens&&V)L.srcToken=X;return L}function S3(Z,X,Q,U,{spaceBefore:q,comment:J,anchor:Y,tag:W,end:$},L){let V={type:"scalar",offset:aM.emptyScalarPosition(X,Q,U),indent:-1,source:""},G=oJ.composeScalar(Z,V,W,L);if(Y){if(G.anchor=Y.source.substring(1),G.anchor==="")L(Y,"BAD_ALIAS","Anchor cannot be an empty string")}if(q)G.spaceBefore=!0;if(J)G.comment=J,G.range[2]=$;return G}function oM({options:Z},{offset:X,source:Q,end:U},q){let J=new cM.Alias(Q.substring(1));if(J.source==="")q(X,"BAD_ALIAS","Alias cannot be an empty string");if(J.source.endsWith(":"))q(X+Q.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let Y=X+Q.length,W=sM.resolveEnd(U,Y,Z.strict,q);if(J.range=[X,Y,W.offset],W.comment)J.comment=W.comment;return J}nM.composeEmptyNode=S3;nM.composeNode=nJ});var ZY=C((qR)=>{var ZR=F4(),eJ=tJ(),XR=X6(),QR=M4();function UR(Z,X,{offset:Q,start:U,value:q,end:J},Y){let W=Object.assign({_directives:X},Z),$=new ZR.Document(void 0,W),L={atKey:!1,atRoot:!0,directives:$.directives,options:$.options,schema:$.schema},V=QR.resolveProps(U,{indicator:"doc-start",next:q??J?.[0],offset:Q,onError:Y,parentIndent:0,startOnNewline:!0});if(V.found){if($.directives.docStart=!0,q&&(q.type==="block-map"||q.type==="block-seq")&&!V.hasNewline)Y(V.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}$.contents=q?eJ.composeNode(L,q,V,Y):eJ.composeEmptyNode(L,V.end,U,null,V,Y);let G=$.contents.range[2],_=XR.resolveEnd(J,G,!1,Y);if(_.comment)$.comment=_.comment;return $.range=[Q,G,_.offset],$}qR.composeDoc=UR});var j3=C((VR)=>{var YR=M2("process"),WR=bX(),$R=F4(),R4=B4(),XY=d(),LR=ZY(),GR=X6();function O4(Z){if(typeof Z==="number")return[Z,Z+1];if(Array.isArray(Z))return Z.length===2?Z:[Z[0],Z[1]];let{offset:X,source:Q}=Z;return[X,X+(typeof Q==="string"?Q.length:1)]}function QY(Z){let X="",Q=!1,U=!1;for(let q=0;q<Z.length;++q){let J=Z[q];switch(J[0]){case"#":X+=(X===""?"":U?`
144
+ `,r:"\r",t:"\t",v:"\v",N:"…",_:" ",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\","\t":"\t"};function bM(Z,X,Q,U){let q=Z.substr(X,Q),Y=q.length===Q&&/^[0-9a-fA-F]+$/.test(q)?parseInt(q,16):NaN;if(isNaN(Y)){let W=Z.substr(X-2,Q+2);return U(X-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${W}`),W}return String.fromCodePoint(Y)}IM.resolveFlowScalar=AM});var aJ=C((hM)=>{var V2=c(),sJ=L0(),yM=P3(),kM=A3();function gM(Z,X,Q,U){let{value:q,type:J,comment:Y,range:W}=X.type==="block-scalar"?yM.resolveBlockScalar(Z,X,U):kM.resolveFlowScalar(X,Z.options.strict,U),$=Q?Z.directives.tagName(Q.source,(G)=>U(Q,"TAG_RESOLVE_FAILED",G)):null,L;if(Z.options.stringKeys&&Z.atKey)L=Z.schema[V2.SCALAR];else if($)L=vM(Z.schema,q,$,Q,U);else if(X.type==="scalar")L=xM(Z,q,X,U);else L=Z.schema[V2.SCALAR];let V;try{let G=L.resolve(q,(_)=>U(Q??X,"TAG_RESOLVE_FAILED",_),Z.options);V=V2.isScalar(G)?G:new sJ.Scalar(G)}catch(G){let _=G instanceof Error?G.message:String(G);U(Q??X,"TAG_RESOLVE_FAILED",_),V=new sJ.Scalar(q)}if(V.range=W,V.source=q,J)V.type=J;if($)V.tag=$;if(L.format)V.format=L.format;if(Y)V.comment=Y;return V}function vM(Z,X,Q,U,q){if(Q==="!")return Z[V2.SCALAR];let J=[];for(let W of Z.tags)if(!W.collection&&W.tag===Q)if(W.default&&W.test)J.push(W);else return W;for(let W of J)if(W.test?.test(X))return W;let Y=Z.knownTags[Q];if(Y&&!Y.collection)return Z.tags.push(Object.assign({},Y,{default:!1,test:void 0})),Y;return q(U,"TAG_RESOLVE_FAILED",`Unresolved tag: ${Q}`,Q!=="tag:yaml.org,2002:str"),Z[V2.SCALAR]}function xM({atKey:Z,directives:X,schema:Q},U,q,J){let Y=Q.tags.find((W)=>(W.default===!0||Z&&W.default==="key")&&W.test?.test(U))||Q[V2.SCALAR];if(Q.compat){let W=Q.compat.find(($)=>$.default&&$.test?.test(U))??Q[V2.SCALAR];if(Y.tag!==W.tag){let $=X.tagString(Y.tag),L=X.tagString(W.tag),V=`Value may be parsed as either ${$} or ${L}`;J(q,"TAG_RESOLVE_FAILED",V,!0)}}return Y}hM.composeScalar=gM});var rJ=C((pM)=>{function uM(Z,X,Q){if(X){Q??(Q=X.length);for(let U=Q-1;U>=0;--U){let q=X[U];switch(q.type){case"space":case"comment":case"newline":Z-=q.source.length;continue}q=X[++U];while(q?.type==="space")Z+=q.source.length,q=X[++U];break}}return Z}pM.emptyScalarPosition=uM});var tJ=C((nM)=>{var dM=Z4(),cM=c(),iM=cJ(),oJ=aJ(),sM=X6(),aM=rJ(),rM={composeNode:nJ,composeEmptyNode:S3};function nJ(Z,X,Q,U){let q=Z.atKey,{spaceBefore:J,comment:Y,anchor:W,tag:$}=Q,L,V=!0;switch(X.type){case"alias":if(L=oM(Z,X,U),W||$)U(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(L=oJ.composeScalar(Z,X,$,U),W)L.anchor=W.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(L=iM.composeCollection(rM,Z,X,Q,U),W)L.anchor=W.source.substring(1);break;default:{let G=X.type==="error"?X.message:`Unsupported token (type: ${X.type})`;U(X,"UNEXPECTED_TOKEN",G),L=S3(Z,X.offset,void 0,null,Q,U),V=!1}}if(W&&L.anchor==="")U(W,"BAD_ALIAS","Anchor cannot be an empty string");if(q&&Z.options.stringKeys&&(!cM.isScalar(L)||typeof L.value!=="string"||L.tag&&L.tag!=="tag:yaml.org,2002:str"))U($??X,"NON_STRING_KEY","With stringKeys, all keys must be strings");if(J)L.spaceBefore=!0;if(Y)if(X.type==="scalar"&&X.source==="")L.comment=Y;else L.commentBefore=Y;if(Z.options.keepSourceTokens&&V)L.srcToken=X;return L}function S3(Z,X,Q,U,{spaceBefore:q,comment:J,anchor:Y,tag:W,end:$},L){let V={type:"scalar",offset:aM.emptyScalarPosition(X,Q,U),indent:-1,source:""},G=oJ.composeScalar(Z,V,W,L);if(Y){if(G.anchor=Y.source.substring(1),G.anchor==="")L(Y,"BAD_ALIAS","Anchor cannot be an empty string")}if(q)G.spaceBefore=!0;if(J)G.comment=J,G.range[2]=$;return G}function oM({options:Z},{offset:X,source:Q,end:U},q){let J=new dM.Alias(Q.substring(1));if(J.source==="")q(X,"BAD_ALIAS","Alias cannot be an empty string");if(J.source.endsWith(":"))q(X+Q.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let Y=X+Q.length,W=sM.resolveEnd(U,Y,Z.strict,q);if(J.range=[X,Y,W.offset],W.comment)J.comment=W.comment;return J}nM.composeEmptyNode=S3;nM.composeNode=nJ});var ZY=C((qO)=>{var ZO=F4(),eJ=tJ(),XO=X6(),QO=M4();function UO(Z,X,{offset:Q,start:U,value:q,end:J},Y){let W=Object.assign({_directives:X},Z),$=new ZO.Document(void 0,W),L={atKey:!1,atRoot:!0,directives:$.directives,options:$.options,schema:$.schema},V=QO.resolveProps(U,{indicator:"doc-start",next:q??J?.[0],offset:Q,onError:Y,parentIndent:0,startOnNewline:!0});if(V.found){if($.directives.docStart=!0,q&&(q.type==="block-map"||q.type==="block-seq")&&!V.hasNewline)Y(V.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}$.contents=q?eJ.composeNode(L,q,V,Y):eJ.composeEmptyNode(L,V.end,U,null,V,Y);let G=$.contents.range[2],_=XO.resolveEnd(J,G,!1,Y);if(_.comment)$.comment=_.comment;return $.range=[Q,G,_.offset],$}qO.composeDoc=UO});var j3=C((VO)=>{var YO=M2("process"),WO=bX(),$O=F4(),O4=B4(),XY=c(),LO=ZY(),GO=X6();function R4(Z){if(typeof Z==="number")return[Z,Z+1];if(Array.isArray(Z))return Z.length===2?Z:[Z[0],Z[1]];let{offset:X,source:Q}=Z;return[X,X+(typeof Q==="string"?Q.length:1)]}function QY(Z){let X="",Q=!1,U=!1;for(let q=0;q<Z.length;++q){let J=Z[q];switch(J[0]){case"#":X+=(X===""?"":U?`
145
145
 
146
146
  `:`
147
- `)+(J.substring(1)||" "),Q=!0,U=!1;break;case"%":if(Z[q+1]?.[0]!=="#")q+=1;Q=!1;break;default:if(!Q)U=!0;Q=!1}}return{comment:X,afterEmptyLine:U}}class UY{constructor(Z={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(X,Q,U,q)=>{let J=O4(X);if(q)this.warnings.push(new R4.YAMLWarning(J,Q,U));else this.errors.push(new R4.YAMLParseError(J,Q,U))},this.directives=new WR.Directives({version:Z.version||"1.2"}),this.options=Z}decorate(Z,X){let{comment:Q,afterEmptyLine:U}=QY(this.prelude);if(Q){let q=Z.contents;if(X)Z.comment=Z.comment?`${Z.comment}
147
+ `)+(J.substring(1)||" "),Q=!0,U=!1;break;case"%":if(Z[q+1]?.[0]!=="#")q+=1;Q=!1;break;default:if(!Q)U=!0;Q=!1}}return{comment:X,afterEmptyLine:U}}class UY{constructor(Z={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(X,Q,U,q)=>{let J=R4(X);if(q)this.warnings.push(new O4.YAMLWarning(J,Q,U));else this.errors.push(new O4.YAMLParseError(J,Q,U))},this.directives=new WO.Directives({version:Z.version||"1.2"}),this.options=Z}decorate(Z,X){let{comment:Q,afterEmptyLine:U}=QY(this.prelude);if(Q){let q=Z.contents;if(X)Z.comment=Z.comment?`${Z.comment}
148
148
  ${Q}`:Q;else if(U||Z.directives.docStart||!q)Z.commentBefore=Q;else if(XY.isCollection(q)&&!q.flow&&q.items.length>0){let J=q.items[0];if(XY.isPair(J))J=J.key;let Y=J.commentBefore;J.commentBefore=Y?`${Q}
149
149
  ${Y}`:Q}else{let J=q.commentBefore;q.commentBefore=J?`${Q}
150
- ${J}`:Q}}if(X)Array.prototype.push.apply(Z.errors,this.errors),Array.prototype.push.apply(Z.warnings,this.warnings);else Z.errors=this.errors,Z.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:QY(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(Z,X=!1,Q=-1){for(let U of Z)yield*this.next(U);yield*this.end(X,Q)}*next(Z){if(YR.env.LOG_STREAM)console.dir(Z,{depth:null});switch(Z.type){case"directive":this.directives.add(Z.source,(X,Q,U)=>{let q=O4(Z);q[0]+=X,this.onError(q,"BAD_DIRECTIVE",Q,U)}),this.prelude.push(Z.source),this.atDirectives=!0;break;case"document":{let X=LR.composeDoc(this.options,this.directives,Z,this.onError);if(this.atDirectives&&!X.directives.docStart)this.onError(Z,"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(Z.source);break;case"error":{let X=Z.source?`${Z.message}: ${JSON.stringify(Z.source)}`:Z.message,Q=new R4.YAMLParseError(O4(Z),"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 R4.YAMLParseError(O4(Z),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let X=GR.resolveEnd(Z.end,Z.offset+Z.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}
151
- ${X.comment}`:X.comment}this.doc.range[2]=X.offset;break}default:this.errors.push(new R4.YAMLParseError(O4(Z),"UNEXPECTED_TOKEN",`Unsupported token ${Z.type}`))}}*end(Z=!1,X=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(Z){let Q=Object.assign({_directives:this.directives},this.options),U=new $R.Document(void 0,Q);if(this.atDirectives)this.onError(X,"MISSING_CHAR","Missing directives-end indicator line");U.range=[0,X,X],this.decorate(U,!1),yield U}}}VR.Composer=UY});var YY=C((TR)=>{var zR=P3(),HR=A3(),FR=B4(),qY=q4();function BR(Z,X=!0,Q){if(Z){let U=(q,J,Y)=>{let W=typeof q==="number"?q:Array.isArray(q)?q[0]:q.offset;if(Q)Q(W,J,Y);else throw new FR.YAMLParseError([W,W+1],J,Y)};switch(Z.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return HR.resolveFlowScalar(Z,X,U);case"block-scalar":return zR.resolveBlockScalar({options:{strict:X}},Z,U)}}return null}function MR(Z,X){let{implicitKey:Q=!1,indent:U,inFlow:q=!1,offset:J=-1,type:Y="PLAIN"}=X,W=qY.stringifyString({type:Y,value:Z},{implicitKey:Q,indent:U>0?" ".repeat(U):"",inFlow:q,options:{blockQuote:!0,lineWidth:-1}}),$=X.end??[{type:"newline",offset:-1,indent:U,source:`
150
+ ${J}`:Q}}if(X)Array.prototype.push.apply(Z.errors,this.errors),Array.prototype.push.apply(Z.warnings,this.warnings);else Z.errors=this.errors,Z.warnings=this.warnings;this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:QY(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(Z,X=!1,Q=-1){for(let U of Z)yield*this.next(U);yield*this.end(X,Q)}*next(Z){if(YO.env.LOG_STREAM)console.dir(Z,{depth:null});switch(Z.type){case"directive":this.directives.add(Z.source,(X,Q,U)=>{let q=R4(Z);q[0]+=X,this.onError(q,"BAD_DIRECTIVE",Q,U)}),this.prelude.push(Z.source),this.atDirectives=!0;break;case"document":{let X=LO.composeDoc(this.options,this.directives,Z,this.onError);if(this.atDirectives&&!X.directives.docStart)this.onError(Z,"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(Z.source);break;case"error":{let X=Z.source?`${Z.message}: ${JSON.stringify(Z.source)}`:Z.message,Q=new O4.YAMLParseError(R4(Z),"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 O4.YAMLParseError(R4(Z),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let X=GO.resolveEnd(Z.end,Z.offset+Z.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}
151
+ ${X.comment}`:X.comment}this.doc.range[2]=X.offset;break}default:this.errors.push(new O4.YAMLParseError(R4(Z),"UNEXPECTED_TOKEN",`Unsupported token ${Z.type}`))}}*end(Z=!1,X=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(Z){let Q=Object.assign({_directives:this.directives},this.options),U=new $O.Document(void 0,Q);if(this.atDirectives)this.onError(X,"MISSING_CHAR","Missing directives-end indicator line");U.range=[0,X,X],this.decorate(U,!1),yield U}}}VO.Composer=UY});var YY=C((TO)=>{var zO=P3(),HO=A3(),FO=B4(),qY=q4();function BO(Z,X=!0,Q){if(Z){let U=(q,J,Y)=>{let W=typeof q==="number"?q:Array.isArray(q)?q[0]:q.offset;if(Q)Q(W,J,Y);else throw new FO.YAMLParseError([W,W+1],J,Y)};switch(Z.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return HO.resolveFlowScalar(Z,X,U);case"block-scalar":return zO.resolveBlockScalar({options:{strict:X}},Z,U)}}return null}function MO(Z,X){let{implicitKey:Q=!1,indent:U,inFlow:q=!1,offset:J=-1,type:Y="PLAIN"}=X,W=qY.stringifyString({type:Y,value:Z},{implicitKey:Q,indent:U>0?" ".repeat(U):"",inFlow:q,options:{blockQuote:!0,lineWidth:-1}}),$=X.end??[{type:"newline",offset:-1,indent:U,source:`
152
152
  `}];switch(W[0]){case"|":case">":{let L=W.indexOf(`
153
153
  `),V=W.substring(0,L),G=W.substring(L+1)+`
154
154
  `,_=[{type:"block-scalar-header",offset:J,indent:U,source:V}];if(!JY(_,$))_.push({type:"newline",offset:-1,indent:U,source:`
155
- `});return{type:"block-scalar",offset:J,indent:U,props:_,source:G}}case'"':return{type:"double-quoted-scalar",offset:J,indent:U,source:W,end:$};case"'":return{type:"single-quoted-scalar",offset:J,indent:U,source:W,end:$};default:return{type:"scalar",offset:J,indent:U,source:W,end:$}}}function RR(Z,X,Q={}){let{afterKey:U=!1,implicitKey:q=!1,inFlow:J=!1,type:Y}=Q,W="indent"in Z?Z.indent:null;if(U&&typeof W==="number")W+=2;if(!Y)switch(Z.type){case"single-quoted-scalar":Y="QUOTE_SINGLE";break;case"double-quoted-scalar":Y="QUOTE_DOUBLE";break;case"block-scalar":{let L=Z.props[0];if(L.type!=="block-scalar-header")throw Error("Invalid block scalar header");Y=L.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:Y="PLAIN"}let $=qY.stringifyString({type:Y,value:X},{implicitKey:q||W===null,indent:W!==null&&W>0?" ".repeat(W):"",inFlow:J,options:{blockQuote:!0,lineWidth:-1}});switch($[0]){case"|":case">":OR(Z,$);break;case'"':C3(Z,$,"double-quoted-scalar");break;case"'":C3(Z,$,"single-quoted-scalar");break;default:C3(Z,$,"scalar")}}function OR(Z,X){let Q=X.indexOf(`
155
+ `});return{type:"block-scalar",offset:J,indent:U,props:_,source:G}}case'"':return{type:"double-quoted-scalar",offset:J,indent:U,source:W,end:$};case"'":return{type:"single-quoted-scalar",offset:J,indent:U,source:W,end:$};default:return{type:"scalar",offset:J,indent:U,source:W,end:$}}}function OO(Z,X,Q={}){let{afterKey:U=!1,implicitKey:q=!1,inFlow:J=!1,type:Y}=Q,W="indent"in Z?Z.indent:null;if(U&&typeof W==="number")W+=2;if(!Y)switch(Z.type){case"single-quoted-scalar":Y="QUOTE_SINGLE";break;case"double-quoted-scalar":Y="QUOTE_DOUBLE";break;case"block-scalar":{let L=Z.props[0];if(L.type!=="block-scalar-header")throw Error("Invalid block scalar header");Y=L.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:Y="PLAIN"}let $=qY.stringifyString({type:Y,value:X},{implicitKey:q||W===null,indent:W!==null&&W>0?" ".repeat(W):"",inFlow:J,options:{blockQuote:!0,lineWidth:-1}});switch($[0]){case"|":case">":RO(Z,$);break;case'"':C3(Z,$,"double-quoted-scalar");break;case"'":C3(Z,$,"single-quoted-scalar");break;default:C3(Z,$,"scalar")}}function RO(Z,X){let Q=X.indexOf(`
156
156
  `),U=X.substring(0,Q),q=X.substring(Q+1)+`
157
157
  `;if(Z.type==="block-scalar"){let J=Z.props[0];if(J.type!=="block-scalar-header")throw Error("Invalid block scalar header");J.source=U,Z.source=q}else{let{offset:J}=Z,Y="indent"in Z?Z.indent:-1,W=[{type:"block-scalar-header",offset:J,indent:Y,source:U}];if(!JY(W,"end"in Z?Z.end:void 0))W.push({type:"newline",offset:-1,indent:Y,source:`
158
158
  `});for(let $ of Object.keys(Z))if($!=="type"&&$!=="offset")delete Z[$];Object.assign(Z,{type:"block-scalar",indent:Y,props:W,source:q})}}function JY(Z,X){if(X)for(let Q of X)switch(Q.type){case"space":case"comment":Z.push(Q);break;case"newline":return Z.push(Q),!0}return!1}function C3(Z,X,Q){switch(Z.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":Z.type=Q,Z.source=X;break;case"block-scalar":{let U=Z.props.slice(1),q=X.length;if(Z.props[0].type==="block-scalar-header")q-=Z.props[0].source.length;for(let J of U)J.offset+=q;delete Z.props,Object.assign(Z,{type:Q,source:X,end:U});break}case"block-map":case"block-seq":{let q={type:"newline",offset:Z.offset+X.length,indent:Z.indent,source:`
159
- `};delete Z.items,Object.assign(Z,{type:Q,source:X,end:[q]});break}default:{let U="indent"in Z?Z.indent:-1,q="end"in Z&&Array.isArray(Z.end)?Z.end.filter((J)=>J.type==="space"||J.type==="comment"||J.type==="newline"):[];for(let J of Object.keys(Z))if(J!=="type"&&J!=="offset")delete Z[J];Object.assign(Z,{type:Q,indent:U,source:X,end:q})}}}TR.createScalarToken=MR;TR.resolveAsScalar=BR;TR.setScalarValue=RR});var WY=C((AR)=>{var wR=(Z)=>("type"in Z)?UZ(Z):QZ(Z);function UZ(Z){switch(Z.type){case"block-scalar":{let X="";for(let Q of Z.props)X+=UZ(Q);return X+Z.source}case"block-map":case"block-seq":{let X="";for(let Q of Z.items)X+=QZ(Q);return X}case"flow-collection":{let X=Z.start.source;for(let Q of Z.items)X+=QZ(Q);for(let Q of Z.end)X+=Q.source;return X}case"document":{let X=QZ(Z);if(Z.end)for(let Q of Z.end)X+=Q.source;return X}default:{let X=Z.source;if("end"in Z&&Z.end)for(let Q of Z.end)X+=Q.source;return X}}}function QZ({start:Z,key:X,sep:Q,value:U}){let q="";for(let J of Z)q+=J.source;if(X)q+=UZ(X);if(Q)for(let J of Q)q+=J.source;if(U)q+=UZ(U);return q}AR.stringify=wR});var GY=C((CR)=>{var N3=Symbol("break visit"),jR=Symbol("skip children"),$Y=Symbol("remove item");function _2(Z,X){if("type"in Z&&Z.type==="document")Z={start:Z.start,value:Z.value};LY(Object.freeze([]),Z,X)}_2.BREAK=N3;_2.SKIP=jR;_2.REMOVE=$Y;_2.itemAtPath=(Z,X)=>{let Q=Z;for(let[U,q]of X){let J=Q?.[U];if(J&&"items"in J)Q=J.items[q];else return}return Q};_2.parentCollection=(Z,X)=>{let Q=_2.itemAtPath(Z,X.slice(0,-1)),U=X[X.length-1][0],q=Q?.[U];if(q&&"items"in q)return q;throw Error("Parent collection not found")};function LY(Z,X,Q){let U=Q(X,Z);if(typeof U==="symbol")return U;for(let q of["key","value"]){let J=X[q];if(J&&"items"in J){for(let Y=0;Y<J.items.length;++Y){let W=LY(Object.freeze(Z.concat([[q,Y]])),J.items[Y],Q);if(typeof W==="number")Y=W-1;else if(W===N3)return N3;else if(W===$Y)J.items.splice(Y,1),Y-=1}if(typeof U==="function"&&q==="key")U=U(X,Z)}}return typeof U==="function"?U(X,Z):U}CR.visit=_2});var qZ=C((gR)=>{var E3=YY(),ER=WY(),bR=GY(),b3="\uFEFF",I3="\x02",f3="\x18",y3="\x1F",IR=(Z)=>!!Z&&("items"in Z),fR=(Z)=>!!Z&&(Z.type==="scalar"||Z.type==="single-quoted-scalar"||Z.type==="double-quoted-scalar"||Z.type==="block-scalar");function yR(Z){switch(Z){case b3:return"<BOM>";case I3:return"<DOC>";case f3:return"<FLOW_END>";case y3:return"<SCALAR>";default:return JSON.stringify(Z)}}function kR(Z){switch(Z){case b3:return"byte-order-mark";case I3:return"doc-mode";case f3:return"flow-error-end";case y3:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
159
+ `};delete Z.items,Object.assign(Z,{type:Q,source:X,end:[q]});break}default:{let U="indent"in Z?Z.indent:-1,q="end"in Z&&Array.isArray(Z.end)?Z.end.filter((J)=>J.type==="space"||J.type==="comment"||J.type==="newline"):[];for(let J of Object.keys(Z))if(J!=="type"&&J!=="offset")delete Z[J];Object.assign(Z,{type:Q,indent:U,source:X,end:q})}}}TO.createScalarToken=MO;TO.resolveAsScalar=BO;TO.setScalarValue=OO});var WY=C((AO)=>{var wO=(Z)=>("type"in Z)?UZ(Z):QZ(Z);function UZ(Z){switch(Z.type){case"block-scalar":{let X="";for(let Q of Z.props)X+=UZ(Q);return X+Z.source}case"block-map":case"block-seq":{let X="";for(let Q of Z.items)X+=QZ(Q);return X}case"flow-collection":{let X=Z.start.source;for(let Q of Z.items)X+=QZ(Q);for(let Q of Z.end)X+=Q.source;return X}case"document":{let X=QZ(Z);if(Z.end)for(let Q of Z.end)X+=Q.source;return X}default:{let X=Z.source;if("end"in Z&&Z.end)for(let Q of Z.end)X+=Q.source;return X}}}function QZ({start:Z,key:X,sep:Q,value:U}){let q="";for(let J of Z)q+=J.source;if(X)q+=UZ(X);if(Q)for(let J of Q)q+=J.source;if(U)q+=UZ(U);return q}AO.stringify=wO});var GY=C((CO)=>{var N3=Symbol("break visit"),jO=Symbol("skip children"),$Y=Symbol("remove item");function _2(Z,X){if("type"in Z&&Z.type==="document")Z={start:Z.start,value:Z.value};LY(Object.freeze([]),Z,X)}_2.BREAK=N3;_2.SKIP=jO;_2.REMOVE=$Y;_2.itemAtPath=(Z,X)=>{let Q=Z;for(let[U,q]of X){let J=Q?.[U];if(J&&"items"in J)Q=J.items[q];else return}return Q};_2.parentCollection=(Z,X)=>{let Q=_2.itemAtPath(Z,X.slice(0,-1)),U=X[X.length-1][0],q=Q?.[U];if(q&&"items"in q)return q;throw Error("Parent collection not found")};function LY(Z,X,Q){let U=Q(X,Z);if(typeof U==="symbol")return U;for(let q of["key","value"]){let J=X[q];if(J&&"items"in J){for(let Y=0;Y<J.items.length;++Y){let W=LY(Object.freeze(Z.concat([[q,Y]])),J.items[Y],Q);if(typeof W==="number")Y=W-1;else if(W===N3)return N3;else if(W===$Y)J.items.splice(Y,1),Y-=1}if(typeof U==="function"&&q==="key")U=U(X,Z)}}return typeof U==="function"?U(X,Z):U}CO.visit=_2});var qZ=C((gO)=>{var E3=YY(),EO=WY(),bO=GY(),b3="\uFEFF",I3="\x02",f3="\x18",y3="\x1F",IO=(Z)=>!!Z&&("items"in Z),fO=(Z)=>!!Z&&(Z.type==="scalar"||Z.type==="single-quoted-scalar"||Z.type==="double-quoted-scalar"||Z.type==="block-scalar");function yO(Z){switch(Z){case b3:return"<BOM>";case I3:return"<DOC>";case f3:return"<FLOW_END>";case y3:return"<SCALAR>";default:return JSON.stringify(Z)}}function kO(Z){switch(Z){case b3:return"byte-order-mark";case I3:return"doc-mode";case f3:return"flow-error-end";case y3:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
160
160
  `:case`\r
161
- `: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(Z[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}gR.createScalarToken=E3.createScalarToken;gR.resolveAsScalar=E3.resolveAsScalar;gR.setScalarValue=E3.setScalarValue;gR.stringify=ER.stringify;gR.visit=bR.visit;gR.BOM=b3;gR.DOCUMENT=I3;gR.FLOW_END=f3;gR.SCALAR=y3;gR.isCollection=IR;gR.isScalar=fR;gR.prettyToken=yR;gR.tokenType=kR});var g3=C((tR)=>{var T4=qZ();function n0(Z){switch(Z){case void 0:case" ":case`
162
- `:case"\r":case"\t":return!0;default:return!1}}var VY=new Set("0123456789ABCDEFabcdef"),oR=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),JZ=new Set(",[]{}"),nR=new Set(` ,[]{}
163
- \r `),k3=(Z)=>!Z||nR.has(Z);class _Y{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(Z,X=!1){if(Z){if(typeof Z!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+Z:Z,this.lineEndPos=null}this.atEnd=!X;let Q=this.next??"stream";while(Q&&(X||this.hasChars(1)))Q=yield*this.parseNext(Q)}atLineEnd(){let Z=this.pos,X=this.buffer[Z];while(X===" "||X==="\t")X=this.buffer[++Z];if(!X||X==="#"||X===`
161
+ `: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(Z[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}gO.createScalarToken=E3.createScalarToken;gO.resolveAsScalar=E3.resolveAsScalar;gO.setScalarValue=E3.setScalarValue;gO.stringify=EO.stringify;gO.visit=bO.visit;gO.BOM=b3;gO.DOCUMENT=I3;gO.FLOW_END=f3;gO.SCALAR=y3;gO.isCollection=IO;gO.isScalar=fO;gO.prettyToken=yO;gO.tokenType=kO});var g3=C((tO)=>{var T4=qZ();function n0(Z){switch(Z){case void 0:case" ":case`
162
+ `:case"\r":case"\t":return!0;default:return!1}}var VY=new Set("0123456789ABCDEFabcdef"),oO=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),JZ=new Set(",[]{}"),nO=new Set(` ,[]{}
163
+ \r `),k3=(Z)=>!Z||nO.has(Z);class _Y{constructor(){this.atEnd=!1,this.blockScalarIndent=-1,this.blockScalarKeep=!1,this.buffer="",this.flowKey=!1,this.flowLevel=0,this.indentNext=0,this.indentValue=0,this.lineEndPos=null,this.next=null,this.pos=0}*lex(Z,X=!1){if(Z){if(typeof Z!=="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+Z:Z,this.lineEndPos=null}this.atEnd=!X;let Q=this.next??"stream";while(Q&&(X||this.hasChars(1)))Q=yield*this.parseNext(Q)}atLineEnd(){let Z=this.pos,X=this.buffer[Z];while(X===" "||X==="\t")X=this.buffer[++Z];if(!X||X==="#"||X===`
164
164
  `)return!0;if(X==="\r")return this.buffer[Z+1]===`
165
165
  `;return!1}charAt(Z){return this.buffer[this.pos+Z]}continueScalar(Z){let X=this.buffer[Z];if(this.indentNext>0){let Q=0;while(X===" ")X=this.buffer[++Q+Z];if(X==="\r"){let U=this.buffer[Q+Z+1];if(U===`
166
166
  `||!U&&!this.atEnd)return Z+Q+1}return X===`
@@ -175,13 +175,13 @@ ${X.comment}`:X.comment}this.doc.range[2]=X.offset;break}default:this.errors.pus
175
175
  `&&q>=this.pos&&q+1+X>Y)Z=q;else break}while(!0);return yield T4.SCALAR,yield*this.pushToIndex(Z+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let Z=this.flowLevel>0,X=this.pos-1,Q=this.pos-1,U;while(U=this.buffer[++Q])if(U===":"){let q=this.buffer[Q+1];if(n0(q)||Z&&JZ.has(q))break;X=Q}else if(n0(U)){let q=this.buffer[Q+1];if(U==="\r")if(q===`
176
176
  `)Q+=1,U=`
177
177
  `,q=this.buffer[Q+1];else X=Q;if(q==="#"||Z&&JZ.has(q))break;if(U===`
178
- `){let J=this.continueScalar(Q+1);if(J===-1)break;Q=Math.max(Q,J-2)}}else{if(Z&&JZ.has(U))break;X=Q}if(!U&&!this.atEnd)return this.setNext("plain-scalar");return yield T4.SCALAR,yield*this.pushToIndex(X+1,!0),Z?"flow":"doc"}*pushCount(Z){if(Z>0)return yield this.buffer.substr(this.pos,Z),this.pos+=Z,Z;return 0}*pushToIndex(Z,X){let Q=this.buffer.slice(this.pos,Z);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(k3))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let Z=this.flowLevel>0,X=this.charAt(1);if(n0(X)||Z&&JZ.has(X)){if(!Z)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 Z=this.pos+2,X=this.buffer[Z];while(!n0(X)&&X!==">")X=this.buffer[++Z];return yield*this.pushToIndex(X===">"?Z+1:Z,!1)}else{let Z=this.pos+1,X=this.buffer[Z];while(X)if(oR.has(X))X=this.buffer[++Z];else if(X==="%"&&VY.has(this.buffer[Z+1])&&VY.has(this.buffer[Z+2]))X=this.buffer[Z+=3];else break;return yield*this.pushToIndex(Z,!1)}}*pushNewline(){let Z=this.buffer[this.pos];if(Z===`
178
+ `){let J=this.continueScalar(Q+1);if(J===-1)break;Q=Math.max(Q,J-2)}}else{if(Z&&JZ.has(U))break;X=Q}if(!U&&!this.atEnd)return this.setNext("plain-scalar");return yield T4.SCALAR,yield*this.pushToIndex(X+1,!0),Z?"flow":"doc"}*pushCount(Z){if(Z>0)return yield this.buffer.substr(this.pos,Z),this.pos+=Z,Z;return 0}*pushToIndex(Z,X){let Q=this.buffer.slice(this.pos,Z);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(k3))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let Z=this.flowLevel>0,X=this.charAt(1);if(n0(X)||Z&&JZ.has(X)){if(!Z)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 Z=this.pos+2,X=this.buffer[Z];while(!n0(X)&&X!==">")X=this.buffer[++Z];return yield*this.pushToIndex(X===">"?Z+1:Z,!1)}else{let Z=this.pos+1,X=this.buffer[Z];while(X)if(oO.has(X))X=this.buffer[++Z];else if(X==="%"&&VY.has(this.buffer[Z+1])&&VY.has(this.buffer[Z+2]))X=this.buffer[Z+=3];else break;return yield*this.pushToIndex(Z,!1)}}*pushNewline(){let Z=this.buffer[this.pos];if(Z===`
179
179
  `)return yield*this.pushCount(1);else if(Z==="\r"&&this.charAt(1)===`
180
- `)return yield*this.pushCount(2);else return 0}*pushSpaces(Z){let X=this.pos-1,Q;do Q=this.buffer[++X];while(Q===" "||Z&&Q==="\t");let U=X-this.pos;if(U>0)yield this.buffer.substr(this.pos,U),this.pos=X;return U}*pushUntil(Z){let X=this.pos,Q=this.buffer[X];while(!Z(Q))Q=this.buffer[++X];return yield*this.pushToIndex(X,!1)}}tR.Lexer=_Y});var v3=C((ZO)=>{class zY{constructor(){this.lineStarts=[],this.addNewLine=(Z)=>this.lineStarts.push(Z),this.linePos=(Z)=>{let X=0,Q=this.lineStarts.length;while(X<Q){let q=X+Q>>1;if(this.lineStarts[q]<Z)X=q+1;else Q=q}if(this.lineStarts[X]===Z)return{line:X+1,col:1};if(X===0)return{line:0,col:Z};let U=this.lineStarts[X-1];return{line:X,col:Z-U+1}}}}ZO.LineCounter=zY});var x3=C((qO)=>{var QO=M2("process"),HY=qZ(),UO=g3();function l1(Z,X){for(let Q=0;Q<Z.length;++Q)if(Z[Q].type===X)return!0;return!1}function FY(Z){for(let X=0;X<Z.length;++X)switch(Z[X].type){case"space":case"comment":case"newline":break;default:return X}return-1}function MY(Z){switch(Z?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function YZ(Z){switch(Z.type){case"document":return Z.start;case"block-map":{let X=Z.items[Z.items.length-1];return X.sep??X.start}case"block-seq":return Z.items[Z.items.length-1].start;default:return[]}}function Q6(Z){if(Z.length===0)return[];let X=Z.length;Z:while(--X>=0)switch(Z[X].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break Z}while(Z[++X]?.type==="space");return Z.splice(X,Z.length)}function BY(Z){if(Z.start.type==="flow-seq-start"){for(let X of Z.items)if(X.sep&&!X.value&&!l1(X.start,"explicit-key-ind")&&!l1(X.sep,"map-value-ind")){if(X.key)X.value=X.key;if(delete X.key,MY(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 RY{constructor(Z){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new UO.Lexer,this.onNewLine=Z}*parse(Z,X=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let Q of this.lexer.lex(Z,X))yield*this.next(Q);if(!X)yield*this.end()}*next(Z){if(this.source=Z,QO.env.LOG_TOKENS)console.log("|",HY.prettyToken(Z));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=Z.length;return}let X=HY.tokenType(Z);if(!X){let Q=`Not a YAML token: ${Z}`;yield*this.pop({type:"error",offset:this.offset,message:Q,source:Z}),this.offset+=Z.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+Z.length);break;case"space":if(this.atNewLine&&Z[0]===" ")this.indent+=Z.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=Z.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=Z.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 Z=this.peek(1);if(this.type==="doc-end"&&Z?.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(!Z)return yield*this.stream();switch(Z.type){case"document":return yield*this.document(Z);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(Z);case"block-scalar":return yield*this.blockScalar(Z);case"block-map":return yield*this.blockMap(Z);case"block-seq":return yield*this.blockSequence(Z);case"flow-collection":return yield*this.flowCollection(Z);case"doc-end":return yield*this.documentEnd(Z)}yield*this.pop()}peek(Z){return this.stack[this.stack.length-Z]}*pop(Z){let X=Z??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")BY(X);switch(Q.type){case"document":Q.value=X;break;case"block-scalar":Q.props.push(X);break;case"block-map":{let U=Q.items[Q.items.length-1];if(U.value){Q.items.push({start:[],key:X,sep:[]}),this.onKeyLine=!0;return}else if(U.sep)U.value=X;else{Object.assign(U,{key:X,sep:[]}),this.onKeyLine=!U.explicitKey;return}break}case"block-seq":{let U=Q.items[Q.items.length-1];if(U.value)Q.items.push({start:[],value:X});else U.value=X;break}case"flow-collection":{let U=Q.items[Q.items.length-1];if(!U||U.value)Q.items.push({start:[],key:X,sep:[]});else if(U.sep)U.value=X;else Object.assign(U,{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 U=X.items[X.items.length-1];if(U&&!U.sep&&!U.value&&U.start.length>0&&FY(U.start)===-1&&(X.indent===0||U.start.every((q)=>q.type!=="comment"||q.indent<X.indent))){if(Q.type==="document")Q.end=U.start;else Q.items.push({start:U.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 Z={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")Z.start.push(this.sourceToken);this.stack.push(Z);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(Z){if(Z.value)return yield*this.lineEnd(Z);switch(this.type){case"doc-start":{if(FY(Z.start)!==-1)yield*this.pop(),yield*this.step();else Z.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":Z.start.push(this.sourceToken);return}let X=this.startBlockValue(Z);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(Z){if(this.type==="map-value-ind"){let X=YZ(this.peek(2)),Q=Q6(X),U;if(Z.end)U=Z.end,U.push(this.sourceToken),delete Z.end;else U=[this.sourceToken];let q={type:"block-map",offset:Z.offset,indent:Z.indent,items:[{start:Q,key:Z,sep:U}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=q}else yield*this.lineEnd(Z)}*blockScalar(Z){switch(this.type){case"space":case"comment":case"newline":Z.props.push(this.sourceToken);return;case"scalar":if(Z.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let X=this.source.indexOf(`
180
+ `)return yield*this.pushCount(2);else return 0}*pushSpaces(Z){let X=this.pos-1,Q;do Q=this.buffer[++X];while(Q===" "||Z&&Q==="\t");let U=X-this.pos;if(U>0)yield this.buffer.substr(this.pos,U),this.pos=X;return U}*pushUntil(Z){let X=this.pos,Q=this.buffer[X];while(!Z(Q))Q=this.buffer[++X];return yield*this.pushToIndex(X,!1)}}tO.Lexer=_Y});var v3=C((ZR)=>{class zY{constructor(){this.lineStarts=[],this.addNewLine=(Z)=>this.lineStarts.push(Z),this.linePos=(Z)=>{let X=0,Q=this.lineStarts.length;while(X<Q){let q=X+Q>>1;if(this.lineStarts[q]<Z)X=q+1;else Q=q}if(this.lineStarts[X]===Z)return{line:X+1,col:1};if(X===0)return{line:0,col:Z};let U=this.lineStarts[X-1];return{line:X,col:Z-U+1}}}}ZR.LineCounter=zY});var x3=C((qR)=>{var QR=M2("process"),HY=qZ(),UR=g3();function l1(Z,X){for(let Q=0;Q<Z.length;++Q)if(Z[Q].type===X)return!0;return!1}function FY(Z){for(let X=0;X<Z.length;++X)switch(Z[X].type){case"space":case"comment":case"newline":break;default:return X}return-1}function MY(Z){switch(Z?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function YZ(Z){switch(Z.type){case"document":return Z.start;case"block-map":{let X=Z.items[Z.items.length-1];return X.sep??X.start}case"block-seq":return Z.items[Z.items.length-1].start;default:return[]}}function Q6(Z){if(Z.length===0)return[];let X=Z.length;Z:while(--X>=0)switch(Z[X].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break Z}while(Z[++X]?.type==="space");return Z.splice(X,Z.length)}function BY(Z){if(Z.start.type==="flow-seq-start"){for(let X of Z.items)if(X.sep&&!X.value&&!l1(X.start,"explicit-key-ind")&&!l1(X.sep,"map-value-ind")){if(X.key)X.value=X.key;if(delete X.key,MY(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 OY{constructor(Z){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new UR.Lexer,this.onNewLine=Z}*parse(Z,X=!1){if(this.onNewLine&&this.offset===0)this.onNewLine(0);for(let Q of this.lexer.lex(Z,X))yield*this.next(Q);if(!X)yield*this.end()}*next(Z){if(this.source=Z,QR.env.LOG_TOKENS)console.log("|",HY.prettyToken(Z));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=Z.length;return}let X=HY.tokenType(Z);if(!X){let Q=`Not a YAML token: ${Z}`;yield*this.pop({type:"error",offset:this.offset,message:Q,source:Z}),this.offset+=Z.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+Z.length);break;case"space":if(this.atNewLine&&Z[0]===" ")this.indent+=Z.length;break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":if(this.atNewLine)this.indent+=Z.length;break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=Z.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 Z=this.peek(1);if(this.type==="doc-end"&&Z?.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(!Z)return yield*this.stream();switch(Z.type){case"document":return yield*this.document(Z);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(Z);case"block-scalar":return yield*this.blockScalar(Z);case"block-map":return yield*this.blockMap(Z);case"block-seq":return yield*this.blockSequence(Z);case"flow-collection":return yield*this.flowCollection(Z);case"doc-end":return yield*this.documentEnd(Z)}yield*this.pop()}peek(Z){return this.stack[this.stack.length-Z]}*pop(Z){let X=Z??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")BY(X);switch(Q.type){case"document":Q.value=X;break;case"block-scalar":Q.props.push(X);break;case"block-map":{let U=Q.items[Q.items.length-1];if(U.value){Q.items.push({start:[],key:X,sep:[]}),this.onKeyLine=!0;return}else if(U.sep)U.value=X;else{Object.assign(U,{key:X,sep:[]}),this.onKeyLine=!U.explicitKey;return}break}case"block-seq":{let U=Q.items[Q.items.length-1];if(U.value)Q.items.push({start:[],value:X});else U.value=X;break}case"flow-collection":{let U=Q.items[Q.items.length-1];if(!U||U.value)Q.items.push({start:[],key:X,sep:[]});else if(U.sep)U.value=X;else Object.assign(U,{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 U=X.items[X.items.length-1];if(U&&!U.sep&&!U.value&&U.start.length>0&&FY(U.start)===-1&&(X.indent===0||U.start.every((q)=>q.type!=="comment"||q.indent<X.indent))){if(Q.type==="document")Q.end=U.start;else Q.items.push({start:U.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 Z={type:"document",offset:this.offset,start:[]};if(this.type==="doc-start")Z.start.push(this.sourceToken);this.stack.push(Z);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(Z){if(Z.value)return yield*this.lineEnd(Z);switch(this.type){case"doc-start":{if(FY(Z.start)!==-1)yield*this.pop(),yield*this.step();else Z.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":Z.start.push(this.sourceToken);return}let X=this.startBlockValue(Z);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(Z){if(this.type==="map-value-ind"){let X=YZ(this.peek(2)),Q=Q6(X),U;if(Z.end)U=Z.end,U.push(this.sourceToken),delete Z.end;else U=[this.sourceToken];let q={type:"block-map",offset:Z.offset,indent:Z.indent,items:[{start:Q,key:Z,sep:U}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=q}else yield*this.lineEnd(Z)}*blockScalar(Z){switch(this.type){case"space":case"comment":case"newline":Z.props.push(this.sourceToken);return;case"scalar":if(Z.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let X=this.source.indexOf(`
181
181
  `)+1;while(X!==0)this.onNewLine(this.offset+X),X=this.source.indexOf(`
182
182
  `,X)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(Z){let X=Z.items[Z.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 Z.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)Z.items.push({start:[this.sourceToken]});else if(X.sep)X.sep.push(this.sourceToken);else{if(this.atIndentedComment(X.start,Z.indent)){let U=Z.items[Z.items.length-2]?.value?.end;if(Array.isArray(U)){Array.prototype.push.apply(U,X.start),U.push(this.sourceToken),Z.items.pop();return}}X.start.push(this.sourceToken)}return}if(this.indent>=Z.indent){let Q=!this.onKeyLine&&this.indent===Z.indent,U=Q&&(X.sep||X.explicitKey)&&this.type!=="seq-item-ind",q=[];if(U&&X.sep&&!X.value){let J=[];for(let Y=0;Y<X.sep.length;++Y){let W=X.sep[Y];switch(W.type){case"newline":J.push(Y);break;case"space":break;case"comment":if(W.indent>Z.indent)J.length=0;break;default:J.length=0}}if(J.length>=2)q=X.sep.splice(J[1])}switch(this.type){case"anchor":case"tag":if(U||X.value)q.push(this.sourceToken),Z.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(U||X.value)q.push(this.sourceToken),Z.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(l1(X.start,"newline"))Object.assign(X,{key:null,sep:[this.sourceToken]});else{let J=Q6(X.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:J,key:null,sep:[this.sourceToken]}]})}else if(X.value)Z.items.push({start:[],key:null,sep:[this.sourceToken]});else if(l1(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(MY(X.key)&&!l1(X.sep,"newline")){let J=Q6(X.start),Y=X.key,W=X.sep;W.push(this.sourceToken),delete X.key,delete X.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:J,key:Y,sep:W}]})}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||U)Z.items.push({start:q,key:null,sep:[this.sourceToken]});else if(l1(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 J=this.flowScalar(this.type);if(U||X.value)Z.items.push({start:q,key:J,sep:[]}),this.onKeyLine=!0;else if(X.sep)this.stack.push(J);else Object.assign(X,{key:J,sep:[]}),this.onKeyLine=!0;return}default:{let J=this.startBlockValue(Z);if(J){if(J.type==="block-seq"){if(!X.explicitKey&&X.sep&&!l1(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)Z.items.push({start:q});this.stack.push(J);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(Z){let X=Z.items[Z.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 Z.items.push({start:[this.sourceToken]})}else X.start.push(this.sourceToken);return;case"space":case"comment":if(X.value)Z.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(X.start,Z.indent)){let U=Z.items[Z.items.length-2]?.value?.end;if(Array.isArray(U)){Array.prototype.push.apply(U,X.start),U.push(this.sourceToken),Z.items.pop();return}}X.start.push(this.sourceToken)}return;case"anchor":case"tag":if(X.value||this.indent<=Z.indent)break;X.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==Z.indent)break;if(X.value||l1(X.start,"seq-item-ind"))Z.items.push({start:[this.sourceToken]});else X.start.push(this.sourceToken);return}if(this.indent>Z.indent){let Q=this.startBlockValue(Z);if(Q){this.stack.push(Q);return}}yield*this.pop(),yield*this.step()}*flowCollection(Z){let X=Z.items[Z.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(Z.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":if(!X||X.sep)Z.items.push({start:[this.sourceToken]});else X.start.push(this.sourceToken);return;case"map-value-ind":if(!X||X.value)Z.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)Z.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 U=this.flowScalar(this.type);if(!X||X.value)Z.items.push({start:[],key:U,sep:[]});else if(X.sep)this.stack.push(U);else Object.assign(X,{key:U,sep:[]});return}case"flow-map-end":case"flow-seq-end":Z.end.push(this.sourceToken);return}let Q=this.startBlockValue(Z);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===Z.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 U=YZ(Q),q=Q6(U);BY(Z);let J=Z.end.splice(1,Z.end.length);J.push(this.sourceToken);let Y={type:"block-map",offset:Z.offset,indent:Z.indent,items:[{start:q,key:Z,sep:J}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=Y}else yield*this.lineEnd(Z)}}flowScalar(Z){if(this.onNewLine){let X=this.source.indexOf(`
183
183
  `)+1;while(X!==0)this.onNewLine(this.offset+X),X=this.source.indexOf(`
184
- `,X)+1}return{type:Z,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(Z){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=YZ(Z),Q=Q6(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=YZ(Z),Q=Q6(X);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Q,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(Z,X){if(this.type!=="comment")return!1;if(this.indent<=X)return!1;return Z.every((Q)=>Q.type==="newline"||Q.type==="space")}*documentEnd(Z){if(this.type!=="doc-mode"){if(Z.end)Z.end.push(this.sourceToken);else Z.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(Z){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(Z.end)Z.end.push(this.sourceToken);else Z.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}qO.Parser=RY});var PY=C((zO)=>{var OY=j3(),YO=F4(),K4=B4(),WO=vX(),$O=d(),LO=v3(),TY=x3();function KY(Z){let X=Z.prettyErrors!==!1;return{lineCounter:Z.lineCounter||X&&new LO.LineCounter||null,prettyErrors:X}}function GO(Z,X={}){let{lineCounter:Q,prettyErrors:U}=KY(X),q=new TY.Parser(Q?.addNewLine),J=new OY.Composer(X),Y=Array.from(J.compose(q.parse(Z)));if(U&&Q)for(let W of Y)W.errors.forEach(K4.prettifyError(Z,Q)),W.warnings.forEach(K4.prettifyError(Z,Q));if(Y.length>0)return Y;return Object.assign([],{empty:!0},J.streamInfo())}function DY(Z,X={}){let{lineCounter:Q,prettyErrors:U}=KY(X),q=new TY.Parser(Q?.addNewLine),J=new OY.Composer(X),Y=null;for(let W of J.compose(q.parse(Z),!0,Z.length))if(!Y)Y=W;else if(Y.options.logLevel!=="silent"){Y.errors.push(new K4.YAMLParseError(W.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(U&&Q)Y.errors.forEach(K4.prettifyError(Z,Q)),Y.warnings.forEach(K4.prettifyError(Z,Q));return Y}function VO(Z,X,Q){let U=void 0;if(typeof X==="function")U=X;else if(Q===void 0&&X&&typeof X==="object")Q=X;let q=DY(Z,Q);if(!q)return null;if(q.warnings.forEach((J)=>WO.warn(q.options.logLevel,J)),q.errors.length>0)if(q.options.logLevel!=="silent")throw q.errors[0];else q.errors=[];return q.toJS(Object.assign({reviver:U},Q))}function _O(Z,X,Q){let U=null;if(typeof X==="function"||Array.isArray(X))U=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(Z===void 0){let{keepUndefined:q}=Q??X??{};if(!q)return}if($O.isDocument(Z)&&!U)return Z.toString(Q);return new YO.Document(Z,U,Q).toString(Q)}zO.parse=VO;zO.parseAllDocuments=GO;zO.parseDocument=DY;zO.stringify=_O});var m3=C((EO)=>{var RO=j3(),OO=F4(),TO=V3(),h3=B4(),KO=Z4(),c1=d(),DO=h1(),PO=L0(),wO=u1(),AO=p1(),SO=qZ(),jO=g3(),CO=v3(),NO=x3(),WZ=PY(),wY=t6();EO.Composer=RO.Composer;EO.Document=OO.Document;EO.Schema=TO.Schema;EO.YAMLError=h3.YAMLError;EO.YAMLParseError=h3.YAMLParseError;EO.YAMLWarning=h3.YAMLWarning;EO.Alias=KO.Alias;EO.isAlias=c1.isAlias;EO.isCollection=c1.isCollection;EO.isDocument=c1.isDocument;EO.isMap=c1.isMap;EO.isNode=c1.isNode;EO.isPair=c1.isPair;EO.isScalar=c1.isScalar;EO.isSeq=c1.isSeq;EO.Pair=DO.Pair;EO.Scalar=PO.Scalar;EO.YAMLMap=wO.YAMLMap;EO.YAMLSeq=AO.YAMLSeq;EO.CST=SO;EO.Lexer=jO.Lexer;EO.LineCounter=CO.LineCounter;EO.Parser=NO.Parser;EO.parse=WZ.parse;EO.parseAllDocuments=WZ.parseAllDocuments;EO.parseDocument=WZ.parseDocument;EO.stringify=WZ.stringify;EO.visit=wY.visit;EO.visitAsync=wY.visitAsync});l2();var c2;((J)=>{J.ENGINE_START="engine:start";J.ENGINE_DONE="engine:done";J.RULE_MATCH="rule:match";J.ACTION_SUCCESS="action:success";J.ACTION_ERROR="action:error"})(c2||={});var z9;((U)=>{U.RULE_ADDED="rule:added";U.RULE_REMOVED="rule:removed";U.RULE_UPDATED="rule:updated"})(z9||={});var Db=c2,H9=z9;class HX{static instance;handlers=new Map;constructor(){}static getInstance(){if(!this.instance)this.instance=new HX;return this.instance}on(Z,X){let Q=Z;if(!this.handlers.has(Q))this.handlers.set(Q,new Set);return this.handlers.get(Q).add(X),()=>this.off(Q,X)}off(Z,X){let Q=Z,U=this.handlers.get(Q);if(U)U.delete(X)}emit(Z,X){let Q=Z,U=this.handlers.get(Q);if(U)U.forEach((q)=>{try{q(X)}catch(J){console.error(`Error in event handler for ${Q}:`,J)}})}}var u0=HX.getInstance();var sG=U2,aG=c2,rG=z9,FX={IF:"if",THEN:"then",ELSE:"else",BREAK:"break",CONTINUE:"continue",MODE:"mode",ACTIONS:"actions",DELAY:"delay",PROBABILITY:"probability",PARAMS:"params",TYPE:"type",ON:"on"},BX={UNKNOWN_ACTION:"Unknown or generic action type",MISSING_ACTION_TYPE:"Action has no type and no control flow properties",PROBABILITY_FAILED:"probability check failed",BUN_REQUIRED:"Bun is required for 'execute' action",MISSING_KEY:"Missing key for state operation"},F9={RULE_ENGINE_EVALUATING:(Z,X)=>`[RuleEngine] Evaluating context with ${Z} rules for event: ${X}`,TRIGGER_ENGINE_EVALUATING:(Z,X)=>`[TriggerEngine] Evaluating context with ${Z} rules for event: ${X}`},Sb={Actions:sG,Events:aG,RuleEvents:rG,ControlFlow:FX,ErrorMessages:BX,DebugMessages:F9};l6();class oG{queue=[];engine;config;timer=null;isProcessing=!1;constructor(Z,X={maxBatchSize:10,flushIntervalMs:100}){this.engine=Z,this.config=X}push(Z){if(this.queue.push(Z),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 Z=this.queue.splice(0,this.config.maxBatchSize);if(Z.length===0){this.isProcessing=!1;return}console.debug(`[EventQueue] Processing batch of ${Z.length} events.`);for(let X of Z)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 nG{store=new Map;async loadState(){return new Map(this.store)}async saveState(Z,X){this.store.set(Z,X)}async deleteState(Z){this.store.delete(Z)}async clearState(){this.store.clear()}}class tG{keyPrefix;cache=new Map;isLoaded=!1;pendingWrite=null;writeDelay;dirty=!1;constructor(Z="trigger_system:",X){this.keyPrefix=Z,this.writeDelay=X?.writeDelay??0}flush(){this.dirty=!0,this.persist()}getCache(){return this.ensureLoaded(),new Map(this.cache)}isDirty(){return this.dirty}isAvailable(){return typeof window<"u"&&typeof window.localStorage<"u"}ensureLoaded(){if(this.isLoaded)return;if(this.isAvailable())try{let Z=window.localStorage.getItem(this.keyPrefix+"state");if(Z){let X=JSON.parse(Z);this.cache=new Map(Object.entries(X))}}catch(Z){console.error("[BrowserPersistence] Failed to load from localStorage:",Z)}this.isLoaded=!0}schedulePersist(){if(this.writeDelay<=0){this.persist();return}if(this.pendingWrite)clearTimeout(this.pendingWrite);this.dirty=!0,this.pendingWrite=setTimeout(()=>{this.persist(),this.pendingWrite=null},this.writeDelay)}persist(){if(this.pendingWrite)clearTimeout(this.pendingWrite),this.pendingWrite=null;if(this.isAvailable())try{let Z=Object.fromEntries(this.cache);window.localStorage.setItem(this.keyPrefix+"state",JSON.stringify(Z)),this.dirty=!1}catch(Z){console.error("[BrowserPersistence] Failed to save to localStorage:",Z)}}async loadState(){return this.ensureLoaded(),new Map(this.cache)}async saveState(Z,X){this.ensureLoaded(),this.cache.set(Z,X),this.schedulePersist()}async deleteState(Z){this.ensureLoaded(),this.cache.delete(Z),this.schedulePersist()}async clearState(){this.cache.clear(),this.schedulePersist()}}class MX{static getNestedValue(Z,X){let Q=Z.split("."),U=X;for(let q of Q){if(U===null||U===void 0)return;if(typeof U==="object"&&U!==null&&q in U)U=U[q];else return}return U}static interpolate(Z,X){if(typeof Z!=="string")return Z;return Z.replace(/\$\{([^}]+)\}/g,(Q,U)=>{let q=this.getNestedValue(U,X);if(q!==void 0)return String(q);return Q})}static compare(Z,X,Q){let U=(J)=>{if(J instanceof Date)return J.getTime();if(typeof J==="number")return J;if(typeof J==="string"){let Y=new Date(J);return isNaN(Y.getTime())?0:Y.getTime()}return 0},q=(J)=>{if(typeof J==="number")return J;if(J===null||J===void 0||J==="")return null;let Y=Number(J);return isNaN(Y)?null:Y};switch(X){case"EQ":case"==":return Z==Q;case"NEQ":case"!=":return Z!=Q;case"GT":case">":{let J=q(Z),Y=q(Q);return J!==null&&Y!==null&&J>Y}case"GTE":case">=":{let J=q(Z),Y=q(Q);return J!==null&&Y!==null&&J>=Y}case"LT":case"<":{let J=q(Z),Y=q(Q);return J!==null&&Y!==null&&J<Y}case"LTE":case"<=":{let J=q(Z),Y=q(Q);return J!==null&&Y!==null&&J<=Y}case"IN":return Array.isArray(Q)&&Q.some((J)=>J===Z);case"NOT_IN":return Array.isArray(Q)&&!Q.some((J)=>J===Z);case"CONTAINS":if(Array.isArray(Q))return Q.some((J)=>String(Z).includes(String(J)));if(Array.isArray(Z)||typeof Z==="string")return Z.includes(Q);return!1;case"NOT_CONTAINS":if(Array.isArray(Q))return!Q.some((J)=>String(Z).includes(String(J)));if(Array.isArray(Z)||typeof Z==="string")return!Z.includes(Q);return!1;case"STARTS_WITH":if(Array.isArray(Q))return Q.some((J)=>String(Z).startsWith(String(J)));if(typeof Z==="string"&&typeof Q==="string")return Z.startsWith(Q);return!1;case"ENDS_WITH":if(Array.isArray(Q))return Q.some((J)=>String(Z).endsWith(String(J)));if(typeof Z==="string"&&typeof Q==="string")return Z.endsWith(Q);return!1;case"IS_EMPTY":{let J=!1;if(typeof Z==="string")J=Z==="";else if(Array.isArray(Z))J=Z.length===0;else if(Z===null||Z===void 0)J=!0;else if(typeof Z==="object")J=Object.keys(Z).length===0;return Q===!1?!J:J}case"IS_NULL":case"IS_NONE":{let J=Z===null||Z===void 0;return Q===!1?!J:J}case"HAS_KEY":if(typeof Z==="object"&&Z!==null&&typeof Q==="string")return Q in Z;return!1;case"MATCHES":if(typeof Q==="string")return new RegExp(Q).test(String(Z));return!1;case"RANGE":if(Array.isArray(Q)&&Q.length===2){let J=q(Z),Y=q(Q[0]),W=q(Q[1]);return J!==null&&Y!==null&&W!==null&&J>=Y&&J<=W}return!1;case"SINCE":case"AFTER":return U(Z)>=U(Q);case"BEFORE":case"UNTIL":return U(Z)<U(Q);default:return console.warn(`Unknown operator: ${X}`),!1}}}l6();class I1{static evaluateConditions(Z,X){if(!Z)return!0;if(Array.isArray(Z))return Z.every((Q)=>this.evaluateRecursiveCondition(Q,X));return this.evaluateRecursiveCondition(Z,X)}static evaluateRecursiveCondition(Z,X){if("conditions"in Z&&"operator"in Z){let U=Z;if(U.operator==="OR")return U.conditions.some((q)=>this.evaluateRecursiveCondition(q,X));else return U.conditions.every((q)=>this.evaluateRecursiveCondition(q,X))}let Q=Z;try{let U=K0.evaluate(Q.field,X),q=Q.value;if(typeof q==="string"&&q.includes("${"))q=K0.interpolate(q,X);return MX.compare(U,Q.operator,q)}catch(U){return console.error("Error evaluating condition:",Q,U),!1}}static async processSingleActionBase(Z,X,Q){let U={...Z};if(!U.type&&!U.run&&!U.break&&!U.continue){let Y=Object.values(FX),W=Object.keys(U).filter(($)=>!Y.includes($));for(let $ of W)if(Q?!!Q.get($):!0){U.type=$;let V=U[$];if(typeof V==="string")U.params={...U.params,message:V,content:V};else if(typeof V==="object"&&V!==null)U.params={...U.params,...V};break}}if(U.break)return{shouldExecute:!1,executedAction:{type:"BREAK",result:"Break execution",timestamp:Date.now()},normalizedAction:U};if(U.continue)return{shouldExecute:!1,executedAction:{type:"CONTINUE",result:"Continue execution",timestamp:Date.now()},normalizedAction:U};let q=U.probability;if(typeof q==="string"){let Y=K0.evaluate(q,X);q=typeof Y==="number"?Y:Number(Y)}if(q!==void 0&&Math.random()>q)return{shouldExecute:!1,executedAction:{type:U.type||"skipped",result:{skipped:"probability check failed"},timestamp:Date.now()},normalizedAction:U};let J=U.delay;if(typeof J==="string"){let Y=K0.evaluate(J,X);J=typeof Y==="number"?Y:Number(Y)}if(J&&J>0)await new Promise((Y)=>setTimeout(Y,J));return U.params=this.interpolateParams(U.params||{},X),{shouldExecute:!0,normalizedAction:U}}static selectActions(Z){let X=[],Q="ALL";if(Array.isArray(Z))X=Z;else if(Z&&typeof Z==="object"&&"mode"in Z&&"actions"in Z){let U=Z;Q=U.mode,X=U.actions}else X=[Z];if(Q==="EITHER"&&X.length>0){let U=(W)=>("probability"in W)?W.probability:1,q=X.reduce((W,$)=>W+U($),0),J=Math.random()*q;for(let W of X){let $=U(W);if(J-=$,J<=0)return{actionsToExecute:[W],mode:Q}}let Y=X[X.length-1];return{actionsToExecute:Y?[Y]:[],mode:Q}}return{actionsToExecute:X,mode:Q}}static interpolateParams(Z,X){let Q={};for(let[U,q]of Object.entries(Z))Q[U]=this.interpolateDeep(q,X);return Q}static interpolateDeep(Z,X){if(typeof Z==="string"&&Z.includes("${"))return K0.interpolate(Z,X);if(Array.isArray(Z))return Z.map((Q)=>this.interpolateDeep(Q,X));if(typeof Z==="object"&&Z!==null){let Q={};for(let[U,q]of Object.entries(Z))Q[U]=this.interpolateDeep(q,X);return Q}return Z}}l6();var q2=new Set(["merge","mergeCallbacks","set","setCallback","delete","has","get","getCallback","call","interpolate","increment","decrement","snapshot","snapshotCallbacks","reset","keys","callbackKeys","toContext"]);function B9(){let Z=Object.create(null),X=Object.create(null);function Q(Y,W){if(q2.has(Y))return console.warn(`[VarsContext] ${W}: "${Y}" is a reserved API key and cannot be used.`),!1;return!0}function U(Y,W,$){return(typeof W==="boolean"?W:W?.overwrite??!1)||!(Y in $)}function q(Y){return{event:Y?.event??"",timestamp:Y?.timestamp??Date.now(),data:Y?.data??{},vars:{...Z},env:Y?.env,id:Y?.id}}let J={merge(Y,W){for(let $ of Object.keys(Y)){if(!Q($,"merge"))continue;let L=Y[$];if(typeof L==="function"){console.warn(`[VarsContext] merge(): "${$}" is a function — use mergeCallbacks() instead. Skipped.`);continue}if(U($,W,Z))Z[$]=L}},mergeCallbacks(Y,W){for(let $ of Object.keys(Y)){if(!Q($,"mergeCallbacks"))continue;let L=Y[$];if(typeof L!=="function"){console.warn(`[VarsContext] mergeCallbacks(): "${$}" is not a function. Skipped.`);continue}if(U($,W,X))X[$]=L}},set(Y,W){if(!Q(Y,"set"))return;if(typeof W==="function"){console.warn(`[VarsContext] set(): "${Y}" is a function — use setCallback() instead.`);return}Z[Y]=W},setCallback(Y,W){if(!Q(Y,"setCallback"))return;if(typeof W!=="function"){console.warn(`[VarsContext] setCallback(): "${Y}" value is not a function.`);return}X[Y]=W},delete(Y){if(!Q(Y,"delete"))return!1;let W=Y in Z,$=Y in X;if(W)delete Z[Y];if($)delete X[Y];return W||$},has(Y){return Y in Z||Y in X},get(Y){return Z[Y]},getCallback(Y){return X[Y]},call(Y,...W){let $=X[Y];if(typeof $!=="function")throw TypeError(`[VarsContext] call(): "${Y}" is not a registered callback (got ${typeof(Z[Y]??$)}).`);return $(...W)},interpolate(Y){return K0.interpolate(Y,q())},increment(Y,W=1){let L=(typeof Z[Y]==="number"?Z[Y]:0)+W;return Z[Y]=L,L},decrement(Y,W=1){let L=(typeof Z[Y]==="number"?Z[Y]:0)-W;return Z[Y]=L,L},snapshot(){return{...Z}},snapshotCallbacks(){return{...X}},reset(Y={},W=!1){for(let $ of Object.keys(Z))delete Z[$];if(W)for(let $ of Object.keys(X))delete X[$];for(let[$,L]of Object.entries(Y))if(!q2.has($)&&typeof L!=="function")Z[$]=L},keys(){return Object.keys(Z)},callbackKeys(){return Object.keys(X)},toContext(Y){return q(Y)}};return new Proxy(J,{get(Y,W){if(typeof W==="symbol")return;let $=W;if(q2.has($))return J[$];if($ in X)return X[$];return Z[$]},set(Y,W,$){if(typeof W==="symbol")return!1;let L=W;if(q2.has(L))return console.warn(`[VarsContext] "${L}" is a reserved API method and cannot be overwritten.`),!1;if(typeof $==="function")X[L]=$;else Z[L]=$;return!0},has(Y,W){let $=String(W);return q2.has($)||$ in Z||$ in X},deleteProperty(Y,W){return console.warn(`[VarsContext] Use vars.delete("${String(W)}") instead of \`delete vars.${String(W)}\`.`),!1},ownKeys(){return[...new Set([...q2,...Object.keys(Z),...Object.keys(X)])]},getOwnPropertyDescriptor(Y,W){let $=String(W);if(q2.has($))return{configurable:!0,enumerable:!1,writable:!1,value:J[$]};if($ in Z)return{configurable:!0,enumerable:!0,writable:!0,value:Z[$]};if($ in X)return{configurable:!0,enumerable:!0,writable:!0,value:X[$]};return}})}var eG=B9();class d6{_rules=[];actionHandlers=new Map;lastExecution=new Map;_config;_vars;constructor(Z=[]){if(Array.isArray(Z))this._rules=Z;else this._config=Z,this._rules=[...Z.rules];if(this._vars=B9(),!Array.isArray(Z)&&Z.stateConfig?.state){let X={};for(let[Q,U]of Object.entries(Z.stateConfig.state))if(typeof U!=="function")X[Q]=U;this._vars.merge(X)}try{let{ActionRegistry:X}=(l2(),e3(zX));X.getInstance(!0)}catch{}this._registerVarActions(),this.sortRules()}sortRules(){this._rules.sort((Z,X)=>(X.priority||0)-(Z.priority||0))}_registerVarActions(){this.registerAction("vars",async(Z,X)=>{let Q=String(Z.op??"set"),U=Z.key!=null?String(Z.key):"",q=X.vars??{};switch(Q){case"set":{let J=Z.value;return this._vars.set(U,J),q[U]=J,{op:Q,key:U,value:J}}case"increment":{let J=typeof Z.delta==="number"?Z.delta:1,Y=this._vars.increment(U,J);return q[U]=Y,{op:Q,key:U,value:Y}}case"decrement":{let J=typeof Z.delta==="number"?Z.delta:1,Y=this._vars.decrement(U,J);return q[U]=Y,{op:Q,key:U,value:Y}}case"delete":return this._vars.delete(U),delete q[U],{op:Q,key:U,deleted:!0};case"merge":{let J=Z.overwrite===!0,Y={},W=Z.data??Z;for(let[$,L]of Object.entries(W)){if($==="op"||$==="overwrite"||$==="data"||typeof L==="function")continue;Y[$]=L}this._vars.merge(Y,{overwrite:J});for(let[$,L]of Object.entries(Y))if(J||!($ in q))q[$]=L;return{op:Q,merged:Object.keys(Y),overwrite:J}}case"reset":{let J=Z.data??{};this._vars.reset(J);for(let Y of Object.keys(q))delete q[Y];return Object.assign(q,this._vars.snapshot()),{op:Q,keys:this._vars.keys()}}default:return console.warn(`[vars action] Unknown op: "${Q}"`),{op:Q,error:`unknown op "${Q}"`}}})}registerAction(Z,X){this.actionHandlers.set(Z,X)}registerVars(Z,X){this._mergeWithCallbackRouting(Z,X)}_mergeWithCallbackRouting(Z,X){let Q={},U={};for(let[q,J]of Object.entries(Z))if(typeof J==="function")U[q]=J;else Q[q]=J;if(Object.keys(Q).length)this._vars.merge(Q,X);if(Object.keys(U).length)this._vars.mergeCallbacks(U,X)}async processEvent(Z){if(Z.vars&&Object.keys(Z.vars).length)this._mergeWithCallbackRouting(Z.vars,{overwrite:!1});let X={};for(let[q,J]of Object.entries(Z.vars??{}))if(typeof J!=="function")X[q]=J;Z.vars={...this._vars.snapshot(),...X};let Q=[],U=this._rules.filter((q)=>q.enabled!==!1&&q.on===Z.event);for(let q of U){if(q.cooldown&&this.checkCooldown(q.id,q.cooldown))continue;let J=I1.evaluateConditions(q.if,Z),Y;if(J)u0.emit("rule:match",{rule:q,context:Z}),Y=q.do;else if(q.else)Y=q.else;if(Y){let W=await this.executeRuleActions(Y,Z);this.lastExecution.set(q.id,Date.now()),Q.push({ruleId:q.id,success:!0,executedActions:W})}if(!J&&!q.else&&!this.shouldEvaluateAll())break;if(J&&!this.shouldEvaluateAll())break}return Q}async processEventSimple(Z,X={},Q={}){this._mergeWithCallbackRouting(Q,{overwrite:!1});let U={event:Z,data:X,vars:Q,timestamp:Date.now()};return this.processEvent(U)}updateRules(Z){let X=this.getRules(),Q=new Set(X.map((Y)=>Y.id)),U=new Set(Z.map((Y)=>Y.id)),q=Z.filter((Y)=>!Q.has(Y.id)),J=X.filter((Y)=>!U.has(Y.id));this._rules=[...Z],this.sortRules(),q.forEach((Y)=>{this.emitRuleEvent(H9.RULE_ADDED,{ruleId:Y.id,timestamp:Date.now()})}),J.forEach((Y)=>{this.emitRuleEvent(H9.RULE_REMOVED,{ruleId:Y.id,timestamp:Date.now()})}),this.emitRuleEvent(H9.RULE_UPDATED,{count:Z.length,added:q.length,removed:J.length,unchanged:Z.length-q.length,timestamp:Date.now()})}emitRuleEvent(Z,X){try{if(u0)u0.emit(Z,{...X,timestamp:Date.now()})}catch(Q){console.warn(`Could not emit event ${Z}:`,Q)}}getRules(){return[...this._rules]}checkCooldown(Z,X){let Q=this.lastExecution.get(Z);if(!Q)return!1;return Date.now()-Q<X}shouldEvaluateAll(){return this._config?.globalSettings?.evaluateAll??!0}evaluateConditions(Z,X){return I1.evaluateConditions(Z,X)}evaluateSingleCondition(Z,X){return I1.evaluateConditions(Z,X)}async executeRuleActions(Z,X){let{actionsToExecute:Q}=I1.selectActions(Z),U=[];for(let q of Q){if("actions"in q&&"mode"in q){U.push(...await this.executeRuleActions(q,X));continue}let J=q;if("if"in J&&J.if&&(J.then||J.else||J.do)){let W=this.evaluateConditions(J.if,X),$=J.then||J.do;if(W&&$)U.push(...await this.executeRuleActions($,X));else if(!W&&J.else)U.push(...await this.executeRuleActions(J.else,X));continue}if("if"in J&&J.if){if(!this.evaluateConditions(J.if,X))continue}let Y=await this.executeSingleAction(J,X);if(U.push(Y),Y.type==="BREAK")break}return U}async executeSingleAction(Z,X){let{shouldExecute:Q,executedAction:U,normalizedAction:q}=await I1.processSingleActionBase(Z,X);if(!Q)return U;try{let J=this.actionHandlers.get(q.type);if(J){let W=await J(q.params||{},X);return u0.emit("action:success",{action:q,context:X,result:W}),{type:q.type,result:W,timestamp:Date.now()}}try{let{ActionRegistry:W}=(l2(),e3(zX)),$=W.getInstance().get(q.type);if($){let L=await $(q,X);return u0.emit("action:success",{action:q,context:X,result:L}),{type:q.type,result:L,timestamp:Date.now()}}}catch{}let Y=`${BX.UNKNOWN_ACTION}: ${q.type}`;if(this._config?.globalSettings?.strictActions)throw Error(Y);return console.warn(Y),{type:q.type,result:{warning:Y},timestamp:Date.now()}}catch(J){return console.error(`Error executing action ${q.type}:`,J),u0.emit("action:error",{action:q,context:X,error:String(J)}),{type:q.type,error:String(J),timestamp:Date.now()}}}interpolateParams(Z,X){return I1.interpolateParams(Z,X)}get rules(){return[...this._rules]}get config(){return this._config}get vars(){return this._vars}set rules(Z){this._rules=[...Z],this.sortRules()}}l2();class Uq extends d6{actionRegistry;constructor(Z){super(Z);this.actionRegistry=c6.getInstance(!0)}async evaluateContext(Z){if(!Z.env)Z.env={};if(this._config?.globalSettings?.debugMode)console.log(F9.RULE_ENGINE_EVALUATING(this._rules.length,Z.event));u0.emit("engine:start",{context:Z,rulesCount:this._rules.length});let X=await this.processEvent(Z);return u0.emit("engine:done",{results:X,context:Z}),X}async processEvent(Z,X={},Q={}){if(typeof Z==="string"){let J={event:Z,data:X,vars:Q,timestamp:Date.now()};return this.processEvent(J)}let U=Z;if(u0.emit("engine:start",{context:U,rulesCount:this._rules.length}),this._config?.globalSettings?.debugMode)console.log(F9.RULE_ENGINE_EVALUATING(this._rules.length,U.event));let q=await super.processEvent(U);return u0.emit("engine:done",{results:q,context:U}),q}get ActionRegistry(){return this.actionRegistry}}l2();_X();var ZV=["EQ","==","NEQ","!="],qq=["GT",">","GTE",">=","LT","<","LTE","<="],Jq=["IN","NOT_IN","RANGE"],Yq=["CONTAINS","NOT_CONTAINS","STARTS_WITH","ENDS_WITH"],XV=["IS_NULL","IS_NONE"],QV=["IS_EMPTY","HAS_KEY","MATCHES","SINCE","AFTER","BEFORE","UNTIL"],YI=[...ZV,...qq,...Jq,...Yq,...XV,...QV];function Wq(Z){return Jq.includes(Z)}function $q(Z){return Yq.includes(Z)}function Lq(Z){return qq.includes(Z)}var f1=u6({Operator:"'EQ' | '==' | 'NEQ' | '!=' | 'GT' | '>' | 'GTE' | '>=' | 'LT' | '<' | 'LTE' | '<=' | 'IN' | 'NOT_IN' | 'CONTAINS' | 'NOT_CONTAINS' | 'STARTS_WITH' | 'ENDS_WITH' | 'MATCHES' | 'RANGE' | 'SINCE' | 'AFTER' | 'BEFORE' | 'UNTIL'",Condition:"RangeCondition | ListCondition | ContainsCondition | NumericCondition | RegexCondition | StringOperatorCondition | HasKeyCondition | NullCondition | EmptyCondition | 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' | 'NOT_CONTAINS'",value:"string | unknown[]"},StringOperatorCondition:{field:"string > 0",operator:"'STARTS_WITH' | 'ENDS_WITH'",value:"string"},HasKeyCondition:{field:"string > 0",operator:"'HAS_KEY'",value:"string"},NullCondition:{field:"string > 0",operator:"'IS_NULL' | 'IS_NONE'","value?":"boolean | null"},EmptyCondition:{field:"string > 0",operator:"'IS_EMPTY'","value?":"boolean | null"},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",InlineConditionalAction:{if:"RuleCondition | RuleCondition[]","then?":"Action | ActionGroup","do?":"Action | ActionGroup","else?":"Action | ActionGroup","break?":"boolean","continue?":"boolean"},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[] | InlineConditionalAction","else?":"RuleAction | RuleAction[]","comment?":"string"}}).export(),zI=f1.Operator,HI=f1.Condition,FI=f1.ConditionGroup,BI=f1.RuleCondition,MI=f1.Action,RI=f1.ActionGroup,OI=f1.InlineConditionalAction,UV=f1.TriggerRule;class RX{static validate(Z){let X=UV(Z);if(X instanceof r0.errors){let q=[];for(let J of X){let Y=J.path.join("."),W=J.message,$=void 0;if(Y.endsWith("on")&&(W.includes("string")||W.includes("must be")))if(typeof Z==="object"&&Z!==null&&"on"in Z&&Z.on===!0)W="The 'on' field is incorrect (boolean true found).",$=`In YAML, 'on' is a boolean keyword (true). Quote it: "on": "EventName"`;else $="Ensure 'on' is a string event name.";q.push({path:Y,message:W,suggestion:$,severity:"error"})}return{valid:!1,issues:q}}let Q=X,U=[];if(this.validateConditionsRecursive(Q.if,U,"if"),this.validateInlineConditionalRecursive(Q.do,U,"do"),Q.else)this.validateInlineConditionalRecursive(Q.else,U,"else");if(U.length>0)return{valid:!1,issues:U};return{valid:!0,rule:Q}}static validateInlineConditionalRecursive(Z,X,Q){if(!Z)return;if(Array.isArray(Z)){Z.forEach((U,q)=>{this.validateInlineConditionalRecursive(U,X,`${Q}.${q}`)});return}if(typeof Z==="object"&&Z!==null&&"mode"in Z&&"actions"in Z){let U=Z;if(Array.isArray(U.actions))U.actions.forEach((q,J)=>{this.validateInlineConditionalRecursive(q,X,`${Q}.actions.${J}`)});return}if(typeof Z==="object"&&Z!==null&&"if"in Z){let U=Z;if(this.validateConditionsRecursive(U.if,X,`${Q}.if`),U.then)this.validateInlineConditionalRecursive(U.then,X,`${Q}.then`);if(U.do)this.validateInlineConditionalRecursive(U.do,X,`${Q}.do`);if(U.else)this.validateInlineConditionalRecursive(U.else,X,`${Q}.else`);return}}static validateConditionsRecursive(Z,X,Q){if(!Z)return;if(Array.isArray(Z)){Z.forEach((U,q)=>{this.validateConditionsRecursive(U,X,`${Q}.${q}`)});return}if(typeof Z==="object"&&Z!==null&&"conditions"in Z&&Array.isArray(Z.conditions)){Z.conditions.forEach((U,q)=>{this.validateConditionsRecursive(U,X,`${Q}.conditions.${q}`)});return}if(typeof Z==="object"&&Z!==null&&"operator"in Z&&"value"in Z)this.validateConditionValue(Z,X,Q)}static validateConditionValue(Z,X,Q){let{operator:U,value:q}=Z,J=U;if(Wq(J)){if(!Array.isArray(q)){X.push({path:`${Q}.value`,message:`Incorrect value type: Operator '${J}' expects a List (Array), but received ${typeof q}.`,suggestion:J==="RANGE"?"Use format [min, max]":"Use format [item1, item2]",severity:"error"});return}if(J==="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(J==="CONTAINS"||J==="NOT_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"})}else if($q(J)){if(typeof q!=="string"&&!Array.isArray(q))X.push({path:`${Q}.value`,message:`Incorrect value type: Operator '${J}' expects a String or List (Array), but received ${typeof q}.`,suggestion:"Use a string prefix/suffix or a list of prefixes/suffixes.",severity:"error"})}else if(J==="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(Y){X.push({path:`${Q}.value`,message:`Invalid Regex pattern: ${Y.message}`,severity:"error"})}else if(Lq(J)){if(typeof q!=="number"&&typeof q!=="string")X.push({path:`${Q}.value`,message:`Incorrect value type: Operator '${J}' expects a number or expression string, but received ${typeof q}.`,severity:"error"})}else if(J==="HAS_KEY"){if(typeof q!=="string")X.push({path:`${Q}.value`,message:`Incorrect value type: Operator 'HAS_KEY' expects a string (key name), but received ${typeof q}.`,severity:"error"})}}}function M9(Z,X){let Q=new Map,U=[];for(let J of Z){let W=J[X];if(W!==void 0&&W!==null){let $=String(W);if(!Q.has($))Q.set($,J)}else U.push(J)}let q=Array.from(new Set(U.map((J)=>JSON.stringify(J)))).map((J)=>JSON.parse(J));return[...Array.from(Q.values()),...q]}function i6(Z,X={}){let{deduplicate:Q=!0,uniqueIdField:U}=X;if(!Z)return;if(Array.isArray(Z)){let q=Z.map((Y)=>i6(Y,X)).filter((Y)=>Y!==void 0);if(!Q)return q.length===0?void 0:q.length===1?q[0]:q;let J=U?M9(q,U):Array.from(new Set(q.map((Y)=>JSON.stringify(Y)))).map((Y)=>JSON.parse(Y));return J.length===0?void 0:J.length===1?J[0]:J}if("operator"in Z&&"conditions"in Z){let q=Z,J=i6(q.conditions,X);if(!J)return;if(!Array.isArray(J))J=[J];let Y=[];for(let $ of J)if("operator"in $&&"conditions"in $&&$.operator===q.operator)Y.push(...$.conditions);else Y.push($);let W;if(!Q)W=Y;else if(U)W=M9(Y,U);else W=Array.from(new Set(Y.map(($)=>JSON.stringify($)))).map(($)=>JSON.parse($));if(W.length===0)return;if(W.length===1)return W[0];return{operator:q.operator,conditions:W}}return Z}function s6(Z,X={}){let{deduplicate:Q=!1,uniqueIdField:U}=X;if(!Z)return;if(Array.isArray(Z)){let q=Z.map(($)=>s6($,X)).filter(($)=>$!==void 0);if(!Q){let $=q.flatMap((V)=>Array.isArray(V)?V:[V]),L=[];for(let V of $)if("mode"in V&&"actions"in V&&V.mode==="ALL")L.push(...V.actions);else L.push(V);if(L.length===0)return;if(L.length===1)return L[0];return L}let J=q.flatMap(($)=>Array.isArray($)?$:[$]),Y=[];for(let $ of J)if("mode"in $&&"actions"in $&&$.mode==="ALL")Y.push(...$.actions);else Y.push($);if(Y.length===0)return;if(Y.length===1)return Y[0];let W;if(U)W=M9(Y,U);else W=Array.from(new Set(Y.map(($)=>JSON.stringify($)))).map(($)=>JSON.parse($));return W}if("mode"in Z&&"actions"in Z){let q=Z,J=s6(q.actions,X);if(!J)return;if(!Array.isArray(J))J=[J];let Y=[];for(let $ of J)if("mode"in $&&"actions"in $&&$.mode===q.mode)Y.push(...$.actions);else Y.push($);if(Y.length===0)return;if(Y.length===1)return Y[0];let W;if(!Q)W=Y;else if(U)W=M9(Y,U);else W=Array.from(new Set(Y.map(($)=>JSON.stringify($)))).map(($)=>JSON.parse($));return{mode:q.mode,actions:W}}return Z}class y1{conditions=[];op="AND";constructor(Z="AND"){this.op=Z}where(Z,X,Q){return this.conditions.push({field:Z,operator:X,value:Q}),this}and(Z){let X=new y1("AND");return this.conditions.push(Z(X).build()),this}or(Z){let X=new y1("OR");return this.conditions.push(Z(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 a6{actions=[];mode="ALL";setMode(Z){return this.mode=Z,this}add(Z,X,Q){return this.actions.push({type:Z,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 OX{params={};set(Z,X){return this.params[Z]=X,this}setAll(Z){return Object.assign(this.params,Z),this}setNested(Z,X){let Q=Z.split("."),U=this.params;for(let J=0;J<Q.length-1;J++){let Y=Q[J];if(!Y)continue;if(!(Y in U))U[Y]={};U=U[Y]}let q=Q[Q.length-1];if(q)U[q]=X;return this}addItem(Z,X){if(!(Z in this.params)||!Array.isArray(this.params[Z]))this.params[Z]=[];return this.params[Z].push(X),this}remove(Z){return delete this.params[Z],this}has(Z){return Z in this.params}get(Z){return this.params[Z]}build(){return{...this.params}}getRaw(){return this.params}}var E={EVENT:"event",CONDITION:"condition",CONDITION_GROUP:"condition_group",ACTION:"action",ACTION_GROUP:"action_group",DO:"do"},D={EVENT_OUTPUT:"event-output",CONDITION_INPUT:"condition-input",CONDITION_OUTPUT:"output",CONDITION_OUTPUT_LEGACY:"condition-output",THEN_OUTPUT:"then-output",ELSE_OUTPUT:"else-output",CONDITION_GROUP_INPUT:"input",CONDITION_GROUP_OUTPUT:"cond-output",ACTION_INPUT:"action-input",ACTION_OUTPUT:"action-output",ACTION_OUTPUT_LEGACY:"action-group-output",ACTION_GROUP_INPUT:"input",ACTION_GROUP_OUTPUT:"action-output",ACTION_GROUP_CONDITION_OUTPUT:"condition-output",DO_INPUT:"do-input",DO_OUTPUT:"do-output",DO_CONDITION_OUTPUT:"do-condition-output"},E0={DO:"do",ELSE:"else"},TX={AND:"AND",OR:"OR"};var O9=(Z)=>Z.type===E.EVENT,M1=(Z)=>Z.type===E.CONDITION||Z.type===E.CONDITION_GROUP,q1=(Z)=>Z.type===E.ACTION||Z.type===E.ACTION_GROUP||Z.type===E.DO,r6=(Z)=>Z.type===E.DO;var k1=(Z)=>{return Z.data?.branchType===E0.ELSE?E0.ELSE:E0.DO};function KX(Z){let X=Z.data||{};return{id:X.id,on:X.event,name:X.name,description:X.description,priority:X.priority!==void 0?Number(X.priority):void 0,enabled:X.enabled!==void 0?!!X.enabled:void 0,cooldown:X.cooldown!==void 0?Number(X.cooldown):void 0,tags:X.tags}}function J0(Z,X,Q){let U=[...Q];return Z.edges.filter((q)=>q.source===X&&U.includes(q.sourceHandle||""))}var J1={CONDITION_OUTPUT:[D.CONDITION_OUTPUT,D.CONDITION_OUTPUT_LEGACY],ACTION_OUTPUT:[D.ACTION_OUTPUT,D.ACTION_OUTPUT_LEGACY],DO_OUTPUT:[D.DO_OUTPUT,""],THEN_ELSE:[D.THEN_OUTPUT,D.ELSE_OUTPUT],DO_CONDITION:[D.DO_CONDITION_OUTPUT],CONDITION_CHAIN:[D.CONDITION_OUTPUT,D.CONDITION_OUTPUT_LEGACY,D.THEN_OUTPUT,D.ELSE_OUTPUT],ANY:[D.CONDITION_OUTPUT,D.CONDITION_OUTPUT_LEGACY,""]};class Gq{convert(Z,X){return{field:Z.field||"data",operator:Z.operator||"EQ",value:Z.value!==void 0?Z.value:""}}validate(Z){let X=[];if(!Z.field&&!Z.value)X.push("Condition must have at least a field or value");return{valid:X.length===0,errors:X.length>0?X:void 0}}}class Vq{convert(Z,X){let Q={};try{if(Z.params)Q=typeof Z.params==="string"?JSON.parse(Z.params):Z.params}catch{Q={}}let U={type:Z.type||"log",params:Q};if(Z.delay!==void 0)U.delay=Number(Z.delay);if(Z.probability!==void 0)U.probability=Number(Z.probability);return U}validate(Z){let X=[];if(!Z.type)X.push('Action type defaults to "log"');return{valid:!0,warnings:X.length>0?X:void 0}}}class _q{convert(Z,X){return{id:Z.id,on:Z.event,name:Z.name,description:Z.description,priority:Z.priority!==void 0?Number(Z.priority):void 0,enabled:Z.enabled!==void 0?!!Z.enabled:void 0,cooldown:Z.cooldown!==void 0?Number(Z.cooldown):void 0,tags:Z.tags}}validate(Z){let X=[],Q=[];if(!Z.id)X.push("Event must have an ID");if(!Z.event)X.push("Event must have an event name");if(!Z.name)Q.push("Event should have a name");return{valid:X.length===0,errors:X.length>0?X:void 0,warnings:Q.length>0?Q:void 0}}}class zq{conditionConverter=new Gq;actionConverter=new Vq;eventConverter=new _q;getConditionConverter(){return this.conditionConverter}getActionConverter(){return this.actionConverter}getEventConverter(){return this.eventConverter}createContext(Z,X,Q,U){return{nodes:Z,edges:X,currentNode:Q,options:U}}}var Hq=new zq;function DX(Z){let X=Z.data||{};return Hq.getConditionConverter().convert(X,{nodes:[],edges:[]})}function PX(Z){let X=Z.data||{};return Hq.getActionConverter().convert(X,{nodes:[],edges:[]})}function T9(Z,X){let Q=X.options.isCondNode||M1,U=X.nodes.find((L)=>L.id===Z);if(!U||U.type!==E.CONDITION_GROUP)return{conditions:[],operator:TX.AND};let q=U.data.operator||TX.AND,J=[],Y=new Set;function W(L){if(Y.has(L))return;Y.add(L);let V=X.nodes.find((H)=>H.id===L);if(!V||!Q(V)||V.type===E.CONDITION_GROUP)return;let G=DX(V);J.push(G);let _=J0(X,L,[...J1.CONDITION_OUTPUT,D.THEN_OUTPUT]).filter((H)=>{let F=X.nodes.find((z)=>z.id===H.target);return F&&Q(F)});for(let H of _)W(H.target)}let $=J0(X,Z,[D.CONDITION_GROUP_OUTPUT]).filter((L)=>{let V=X.nodes.find((G)=>G.id===L.target);return V&&Q(V)});for(let L of $)W(L.target);return{conditions:J,operator:q}}function J2(Z,X){if(X.options.resolveCondition&&X.options.resolveCondition!==J2)return X.options.resolveCondition(Z,X);if(X.visitedConds.has(Z))return null;X.visitedConds.add(Z);let Q=X.nodes.find((Y)=>Y.id===Z),U=X.options.isCondNode||M1;if(!Q||!U(Q))return null;if(Q.type===E.CONDITION_GROUP){let{conditions:Y,operator:W}=T9(Z,X);if(Y.length===0)return null;if(Y.length===1)return Y[0];return{operator:W,conditions:Y}}let q=DX(Q);if(X.transformers?.condition){let Y=X.transformers.condition(q,Q);if(Y===null)return null;return Y}let J=J0(X,Z,J1.CONDITION_OUTPUT).filter((Y)=>{let W=X.nodes.find(($)=>$.id===Y.target);return W&&U(W)});if(J.length>0){let Y=J.map((W)=>J2(W.target,X)).filter((W)=>W!==null);if(Y.length>0)return{operator:"AND",conditions:[q,...Y]}}return q}function wX(Z,X){let Q=X.options.isCondNode||M1,U,q;function J(Y){let W=X.nodes.find((V)=>V.id===Y);if(!W||!Q(W))return;let $=X.edges.filter((V)=>V.source===Y);for(let V of $){let G=X.nodes.find((_)=>_.id===V.target);if(!G)continue;if(G.type===E.ACTION||G.type===E.ACTION_GROUP||G.type===E.DO)if(G.type===E.DO?G.data?.branchType==="else":V.sourceHandle===D.ELSE_OUTPUT)q=V.target;else U=V.target}let L=J0(X,Y,J1.CONDITION_OUTPUT).filter((V)=>{let G=X.nodes.find((_)=>_.id===V.target);return G&&Q(G)});for(let V of L)J(V.target)}return J(Z),{thenActionId:U,elseActionId:q}}function d2(Z,X){let Q=X.options.isActNode||q1,U=X.nodes.find((V)=>V.id===Z);if(!U||U.type!==E.ACTION_GROUP)return{actions:[],mode:"ALL"};let q=U.data.mode||"ALL",J=[],Y=new Set;function W(V){if(Y.has(V))return;Y.add(V);let G=X.nodes.find((F)=>F.id===V);if(!G||!Q(G)||G.type===E.ACTION_GROUP)return;let _=PX(G);J.push(_);let H=J0(X,V,J1.ACTION_OUTPUT).filter((F)=>{let z=X.nodes.find((B)=>B.id===F.target);return z&&Q(z)});for(let F of H)W(F.target)}let $=J0(X,Z,[D.ACTION_GROUP_OUTPUT,D.DO_OUTPUT,"do-output","action-output","action-group-output"]).filter((V)=>{let G=X.nodes.find((_)=>_.id===V.target);return G&&Q(G)});for(let V of $)W(V.target);let L=J0(X,Z,[D.ACTION_GROUP_CONDITION_OUTPUT,"condition-output",D.ACTION_GROUP_OUTPUT,"action-output",""]).filter((V)=>{let G=X.nodes.find((_)=>_.id===V.target);return G&&(G.type===E.CONDITION||G.type===E.CONDITION_GROUP)});for(let V of L){let G=z0(V.target,X);if(G)J.push(G)}return{actions:J,mode:q}}function z0(Z,X){if(X.options.resolveAction&&X.options.resolveAction!==z0)return X.options.resolveAction(Z,X);let Q=X.nodes.find((Y)=>Y.id===Z);if(!Q)return null;if(Q.type===E.ACTION_GROUP){if(X.visitedActs?.has(Z))return null;X.visitedActs?.add(Z);let{actions:Y,mode:W}=d2(Z,X);if(Y.length===0)return null;return{mode:W,actions:Y}}if(Q.type===E.DO){if(X.visitedActs?.has(Z))return null;X.visitedActs?.add(Z);let Y=AX(Z,X);if(Y.length===0)return null;if(Y.length===1)return Y[0];return{mode:"ALL",actions:Y}}if(Q.type===E.CONDITION||Q.type===E.CONDITION_GROUP){if(X.options.resolveCondition){let Y=X.options.resolveCondition(Z,X);if(Y){let{doBranches:W,elseBranches:$}=o6(Z,X),L=null,V=null;if(W.length>0){let G=W[0],_=AX(G,X);if(_.length>0)L=_.length===1?_[0]:{mode:"ALL",actions:_}}if($.length>0){let G=$[0],_=AX(G,X);if(_.length>0)V=_.length===1?_[0]:{mode:"ALL",actions:_}}if(!L&&!V){let G=wX(Z,X);if(G.thenActionId)L=z0(G.thenActionId,X);if(G.elseActionId)V=z0(G.elseActionId,X)}if(L||V)return{if:Y,do:L??void 0,else:V??void 0}}}}let U=X.options.isActNode||q1;if(!U(Q))return null;if(X.visitedActs?.has(Z))return null;X.visitedActs?.add(Z);let q=PX(Q);if(X.transformers?.action){let Y=X.transformers.action(q,Q);if(Y===null)return null;let W=J0(X,Z,J1.ACTION_OUTPUT).filter(($)=>{let L=X.nodes.find((V)=>V.id===$.target);return L&&U(L)});if(W.length>0){let $=[Y];for(let L of W){let V=z0(L.target,X);if(V)$.push(V)}return{mode:"ALL",actions:$}}return Y}let J=J0(X,Z,J1.ACTION_OUTPUT).filter((Y)=>{let W=X.nodes.find(($)=>$.id===Y.target);return W&&U(W)});if(J.length>0){let Y=[q];for(let W of J){let $=z0(W.target,X);if($)Y.push($)}return{mode:"SEQUENCE",actions:Y}}return q}function AX(Z,X){let Q=X.options.isActNode||q1,U=[],q=J0(X,Z,[D.DO_OUTPUT,D.ELSE_OUTPUT,"do-output","else-output","action-output",""]).filter((J)=>{let Y=X.nodes.find((W)=>W.id===J.target);return Y&&Q(Y)});for(let J of q){let Y=z0(J.target,X);if(Y)U.push(Y)}return U}function o6(Z,X){let Q=($)=>$.type===E.CONDITION||$.type===E.CONDITION_GROUP,U=($)=>$.type===E.DO,q=[],J=[],Y=new Set;function W($){if(Y.has($))return;Y.add($);let L=X.nodes.find((G)=>G.id===$);if(!L)return;if(L.type===E.CONDITION_GROUP){let G=J0(X,$,[D.CONDITION_GROUP_OUTPUT,"cond-output","output",""]);for(let _ of G){let H=X.nodes.find((F)=>F.id===_.target);if(H){if(U(H)){if(k1(H)===E0.ELSE){if(!J.includes(H.id))J.push(H.id)}else if(!q.includes(H.id))q.push(H.id)}else if(Q(H))W(H.id)}}return}let V=X.edges.filter((G)=>G.source===$);for(let G of V){let _=X.nodes.find((H)=>H.id===G.target);if(!_)continue;if(U(_)){if(k1(_)===E0.ELSE){if(!J.includes(_.id))J.push(_.id)}else if(!q.includes(_.id))q.push(_.id)}else if(Q(_))W(_.id)}}return W(Z),{doBranches:q,elseBranches:J}}var Fq;((W)=>{W.MISSING_EVENT_NODE="MISSING_EVENT_NODE";W.MISSING_RULE_ID_OR_EVENT_NAME="MISSING_RULE_ID_OR_EVENT_NAME";W.NO_EVENTS_FOUND="NO_EVENTS_FOUND";W.RULE_ID_REQUIRED="RULE_ID_REQUIRED";W.RULE_ON_EVENT_REQUIRED="RULE_ON_EVENT_REQUIRED";W.RULE_DO_ACTION_REQUIRED="RULE_DO_ACTION_REQUIRED";W.PARSE_FAILED="PARSE_FAILED"})(Fq||={});class Y1 extends Error{code;eventId;constructor(Z,X,Q){super(Z);this.name="GraphParserError",this.code=X,this.eventId=Q}}function qV(Z,X,Q={},U){let q={...Q,resolveCondition:Q.resolveCondition||J2,resolveAction:Q.resolveAction||z0};return{nodes:Z,edges:X,visitedConds:new Set,visitedActs:new Set,options:q,transformers:U}}var Ff=k1,JV=KX;function YV(Z,X,Q){let U=X.options.isCondNode||M1,q=r6,J=X.edges.filter((F)=>F.source===Z).find((F)=>{let z=X.nodes.find((B)=>B.id===F.target);return z&&U(z)}),Y;if(J)Y=J.target;if(!Y)return null;let W=new Set(X.visitedConds);X.visitedConds.clear();let $=J2(Y,X);if(X.visitedConds=W,!$)return null;let{thenActionId:L,elseActionId:V}=SX(Y,X),G=X.edges.filter((F)=>F.source===Z).find((F)=>{let z=X.nodes.find((B)=>B.id===F.target);return z&&(X.options.isActNode?.(z)??q1(z))&&z.type!==E.DO});if(G&&!V)V=G.target;let _=L?z0(L,X):void 0,H=V?z0(V,X):void 0;return{if:$,do:_??void 0,else:H??void 0}}function n6(Z,X,Q){let U=X.options.isActNode||q1,q=[],J=X.edges.filter((W)=>W.source===Z).filter((W)=>{let $=X.nodes.find((L)=>L.id===W.target);return $&&(U($)&&$.type!==E.DO&&$.type!==E.CONDITION&&$.type!==E.CONDITION_GROUP)});for(let W of J){let $=z0(W.target,X);if($)q.push($)}let Y=YV(Z,X,Q);if(Y)q.push(Y);return q}function SX(Z,X){let Q=X.options.isCondNode||M1,U=X.options.isActNode||q1,q=r6,J,Y;function W($){let L=X.nodes.find((_)=>_.id===$);if(!L||!Q(L))return;let V=J0(X,$,[D.THEN_OUTPUT,D.ELSE_OUTPUT,D.CONDITION_OUTPUT,D.CONDITION_OUTPUT_LEGACY,D.DO_OUTPUT,""]);for(let _ of V){let H=X.nodes.find((F)=>F.id===_.target);if(!H)continue;if(q(H)){let F=J0(X,H.id,[D.DO_OUTPUT,""]).filter((w)=>{let O=X.nodes.find((S)=>S.id===w.target);return O&&U(O)}),z=k1(H);for(let w of F)if(z===E0.ELSE)Y=w.target;else J=w.target;let B=J0(X,H.id,[D.DO_CONDITION_OUTPUT]),K=B.find((w)=>{let O=X.nodes.find((S)=>S.id===w.target);return O&&Q(O)}),P=B.find((w)=>{let O=X.nodes.find((S)=>S.id===w.target);return O&&U(O)});if(P&&!Y)Y=P.target;continue}if(H.type===E.ACTION_GROUP){J=_.target;continue}if(!U(H))continue;if(_.sourceHandle===D.ELSE_OUTPUT)Y=_.target;else J=_.target}let G=J0(X,$,J1.CONDITION_OUTPUT).filter((_)=>{let H=X.nodes.find((F)=>F.id===_.target);return H&&Q(H)});for(let _ of G)W(_.target)}return W(Z),{thenActionId:J,elseActionId:Y}}function jX(Z,X,Q={},U){let q=new CX;if(Q.optimizeOptions)q.withOptimizeOptions(Q.optimizeOptions);let J=Q.isEventNode||O9,Y=Q.isCondNode||M1,W=Q.isActNode||q1,$=r6,L=Q.extractEventData||JV,V=Z.find((O)=>J(O));if(!V)throw new Y1("Missing Event Trigger node","MISSING_EVENT_NODE");let G=L(V);if(!G.id||!G.on)throw new Y1("Rule ID and Event Name are required","MISSING_RULE_ID_OR_EVENT_NAME",G.id);if(q.id(G.id).on(G.on),G.name)q.name(G.name);if(G.description)q.description(G.description);if(G.priority!==void 0)q.priority(Number(G.priority));if(G.enabled!==void 0)q.enabled(!!G.enabled);if(G.cooldown!==void 0)q.cooldown(Number(G.cooldown));if(G.tags)q.tags(G.tags);let _=qV(Z,X,Q,U),H=X.filter((O)=>O.source===V.id),F=[],z=[],B=[],K=[];for(let O of H){let S=_.nodes.find((N)=>N.id===O.target);if(!S)continue;if(S.type===E.CONDITION_GROUP)F.push(O.target);else if(Y(S))z.push(O.target);else if(S.type===E.ACTION_GROUP)B.push(O.target);else if(W(S))K.push(O.target)}for(let O of F){let{conditions:S,operator:N}=T9(O,_);if(S.length>0){let y={operator:N,conditions:S};q.withIf(y);let A=X.filter((r)=>r.source===O),u=A.filter((r)=>{let p=_.nodes.find((i)=>i.id===r.target);return p&&Y(p)&&(r.sourceHandle?.startsWith("cond")||r.sourceHandle===D.CONDITION_GROUP_OUTPUT)}).map((r)=>r.target),o=A.filter((r)=>{let p=_.nodes.find((i)=>i.id===r.target);return p&&W(p)}).map((r)=>r.target),t=null,x=null;for(let r of o){let p=_.nodes.find((i)=>i.id===r);if(!p)continue;if($(p)){let i=n6(p.id,_,O),B0=k1(p);if(i.length>0){let T1=i.length===1?i[0]:{mode:"ALL",actions:i};if(B0===E0.ELSE)x=T1;else t=T1}}else{let i=z0(r,_);if(i)t=i}}if(!t||!x)for(let r of u){let p=SX(r,_),i=p.thenActionId?z0(p.thenActionId,_):null,B0=p.elseActionId?z0(p.elseActionId,_):null,{doBranches:T1,elseBranches:W6}=o6(r,_),s1=[];for(let VZ of T1){let _Z=n6(VZ,_,r);s1.push(..._Z)}if(s1.length>0&&!i)i=s1.length===1?s1[0]:{mode:"ALL",actions:s1};let $6=[];for(let VZ of W6){let _Z=n6(VZ,_,r);$6.push(..._Z)}if($6.length>0&&!B0)B0=$6.length===1?$6[0]:{mode:"ALL",actions:$6};if(i&&!t)t=i;if(B0&&!x)x=B0}if(t)q.withDo(t);if(x)q.elseRule(x)}}if(z.length>0&&F.length===0){let O=[],S,N;for(let p of z){let i=J2(p,_);if(i)O.push(i);let B0=SX(p,_);if(B0.thenActionId)S=B0.thenActionId;if(B0.elseActionId)N=B0.elseActionId}if(O.length===1)q.withIf(O[0]);else if(O.length>1)q.withIf({operator:"AND",conditions:O});let y=z[0];if(!y)return q;let{doBranches:A,elseBranches:u}=o6(y,_),o=[];for(let p of A){let i=n6(p,_,y);o.push(...i)}let t=o.length===1?o[0]:o.length>1?{mode:"ALL",actions:o}:S?z0(S,_):null,x=[];for(let p of u){let i=n6(p,_,y);x.push(...i)}let r=x.length===1?x[0]:x.length>1?{mode:"ALL",actions:x}:N?z0(N,_):null;if(t)q.withDo(t);if(r)q.elseRule(r);if(!S&&!o.length)for(let p of z){let i=J0(_,p,[D.THEN_OUTPUT,D.CONDITION_OUTPUT,"condition-output","then-output","output",""]).filter((B0)=>{return _.nodes.find((W6)=>W6.id===B0.target)?.type===E.ACTION_GROUP});for(let B0 of i){let{actions:T1,mode:W6}=d2(B0.target,_);if(T1.length>0){let s1={mode:W6,actions:T1};q.withDo(s1);break}}}}let P=new Set;if(z.length>0&&F.length===0)for(let O of z){let S=J0(_,O,[D.THEN_OUTPUT,D.CONDITION_OUTPUT,"condition-output","then-output","output",""]).filter((N)=>{return _.nodes.find((A)=>A.id===N.target)?.type===E.ACTION_GROUP});for(let N of S)P.add(N.target)}let w=B.filter((O)=>!P.has(O));if(w.length>0)for(let O of w)if(J0(_,O,[D.ACTION_GROUP_CONDITION_OUTPUT,"condition-output"]).filter((N)=>{let y=_.nodes.find((A)=>A.id===N.target);return y&&Y(y)}).length>0){let{actions:N,mode:y}=d2(O,_);if(N.length>0){let A={mode:y,actions:N};q.withDo(A)}}else{let{actions:N,mode:y}=d2(O,_);if(N.length>0)q.withDo({mode:y,actions:N})}if(K.length>0&&z.length===0&&F.length===0)for(let O of K){let S=z0(O,_);if(S)q.withDo(S)}return q}function Bq(Z,X,Q={},U){let q=Q.isEventNode||O9,J=Z.filter(($)=>q($));if(J.length===0)return{rules:[],errors:[new Y1("No Event nodes found in the graph","NO_EVENTS_FOUND")]};let Y=[],W=[];for(let $ of J)try{let L=$.id,V=new Set([L]),G=[L];while(G.length>0){let B=G.shift(),K=X.filter((P)=>P.source===B);for(let P of K)if(!V.has(P.target))V.add(P.target),G.push(P.target)}let _=Z.filter((B)=>V.has(B.id)),H=X.filter((B)=>V.has(B.source)&&V.has(B.target)),z=jX(_,H,Q,U).build();Y.push(z)}catch(L){if(L instanceof Y1){if(!L.eventId)L.eventId=$.id;W.push(L)}else{let V=L instanceof Error?L.message:String(L);W.push(new Y1(`Failed to parse rule for event ${$.id}: ${V}`,"PARSE_FAILED",$.id))}}return{rules:Y,errors:W}}class CX{rule={enabled:!0,priority:0};optimizeOptions={};static fromGraph(Z,X,Q,U){return jX(Z,X,Q,U)}static fromGraphMultiple(Z,X,Q,U){return Bq(Z,X,Q,U)}withId(Z){return this.rule.id=Z,this}withName(Z){return this.rule.name=Z,this}withDescription(Z){return this.rule.description=Z,this}withPriority(Z){return this.rule.priority=Z,this}withCooldown(Z){return this.rule.cooldown=Z,this}withTags(Z){return this.rule.tags=Z,this}withEnabled(Z){return this.rule.enabled=Z,this}withOptimizeOptions(Z){return this.optimizeOptions=Z,this}id(Z){return this.withId(Z)}name(Z){return this.withName(Z)}description(Z){return this.withDescription(Z)}priority(Z){return this.withPriority(Z)}enabled(Z){return this.withEnabled(Z)}cooldown(Z){return this.withCooldown(Z)}tags(Z){return this.withTags(Z)}optimize(Z){return this.withOptimizeOptions(Z)}on(Z){return this.rule.on=Z,this}if(Z,X,Q){if(!this.rule.if)this.rule.if={field:Z,operator:X,value:Q};else if(Array.isArray(this.rule.if))this.rule.if.push({field:Z,operator:X,value:Q});else this.rule.if=[this.rule.if,{field:Z,operator:X,value:Q}];return this}ifComplex(Z){let X=new y1,Q=Z(X).build();return this.rule.if=Q,this}withIf(Z){return this.rule.if=Z,this}do(Z,X,Q){let U={type:Z,params:X,...Q};if(!this.rule.do)this.rule.do=U;else if(Array.isArray(this.rule.do))this.rule.do.push(U);else if(this.rule.do&&typeof this.rule.do==="object"&&"actions"in this.rule.do)this.rule.do.actions.push(U);else this.rule.do=[this.rule.do,U];return this}doComplex(Z){let X=new a6,Q=Z(X).build();return this.rule.do=Q,this}withDo(Z){return this.rule.do=Z,this}elseRule(Z){return this.rule.else=Z,this}when(Z,X,Q){return new R9(this,Z,X,Q)}whenComplex(Z){let X=new y1,Q=Z(X).build();return new R9(this,Q)}then(Z,X,Q){return this.do(Z,X,Q)}ifAction(Z,X,Q){let U=this.rule.do;if(!U)throw Error("Cannot add condition: no action defined. Use do() or then() first.");let q=(J)=>({...J,if:{field:Z,operator:X,value:Q}});if(Array.isArray(U)){let J=U.length-1,Y=U[J];if(Y&&"actions"in Y){let W=Y.actions,$=W.length-1;if($>=0)W[$]=q(W[$])}else if(Y)U[J]=q(Y)}else if(U&&"actions"in U){let J=U.actions,Y=J.length-1;if(Y>=0)J[Y]=q(J[Y])}else if(U)this.rule.do=q(U);return this}thenAction(Z){let X=this.rule.do;if(!X)throw Error("Cannot add then: no action defined. Use do() or then() first.");let Q=(U)=>({...U,then:Z});if(Array.isArray(X)){let U=X.length-1,q=X[U];if(q&&"actions"in q){let J=q.actions,Y=J.length-1;if(Y>=0)J[Y]=Q(J[Y])}else if(q)X[U]=Q(q)}else if(X&&"actions"in X){let U=X.actions,q=U.length-1;if(q>=0)U[q]=Q(U[q])}else if(X)this.rule.do=Q(X);return this}else(Z){let X=this.rule.do;if(!X)throw Error("Cannot add else: no action defined. Use do() or then() first.");let Q=(U)=>({...U,else:Z});if(Array.isArray(X)){let U=X.length-1,q=X[U];if(q&&"actions"in q){let J=q.actions,Y=J.length-1;if(Y>=0)J[Y]=Q(J[Y])}else if(q)X[U]=Q(q)}else if(X&&"actions"in X){let U=X.actions,q=U.length-1;if(q>=0)U[q]=Q(U[q])}else if(X)this.rule.do=[Q(X)];return this}elseAction(Z){return this.else(Z)}build(){if(!this.rule.id)throw new Y1("Rule ID is required","RULE_ID_REQUIRED");if(!this.rule.on)throw new Y1("Rule 'on' event is required","RULE_ON_EVENT_REQUIRED",this.rule.id);if(!this.rule.do)throw new Y1("Rule 'do' action is required","RULE_DO_ACTION_REQUIRED",this.rule.id);if(this.rule.if)this.rule.if=i6(this.rule.if,this.optimizeOptions);if(this.rule.do){let Z=s6(this.rule.do,this.optimizeOptions);this.rule.do=Z?Z:this.rule.do}return this.rule}}class R9{parent;condition;thenActions;elseActions;constructor(Z,X,Q,U){if(this.parent=Z,typeof X==="string")this.condition={field:X,operator:Q,value:U};else this.condition=X}then(Z,X,Q){if(typeof Z==="string")this.thenActions={type:Z,params:X,...Q};else this.thenActions=Z;return this}do(Z,X,Q){return this.then(Z,X,Q)}done(){return this.build()}else(Z,X,Q){if(typeof Z==="string")this.elseActions={type:Z,params:X,...Q};else this.elseActions=Z;return this.build()}build(){let Z={if:this.condition};if(this.thenActions)Z.then=this.thenActions;if(this.elseActions)Z.else=this.elseActions;let X=this.parent.rule.do;if(!X)this.parent.rule.do=Z;else if(Array.isArray(X))X.push(Z);else this.parent.rule.do=[X,Z];return this.parent}}var u3=t3(m3(),1);class YT{static toYaml(Z){let X=Array.isArray(Z)?Z:[Z];return u3.default.stringify(X)}static toJson(Z,X=!0){let Q=Array.isArray(Z)?Z:[Z];return JSON.stringify(Q,null,X?2:0)}static cleanRule(Z){let X={};if(X.id=Z.id,Z.name)X.name=Z.name;if(Z.description)X.description=Z.description;if(X.on=Z.on,Z.priority!==void 0&&Z.priority!==0)X.priority=Z.priority;if(Z.enabled!==void 0&&Z.enabled!==!0)X.enabled=Z.enabled;if(Z.cooldown!==void 0&&Z.cooldown!==0)X.cooldown=Z.cooldown;if(Z.tags&&Z.tags.length>0)X.tags=Z.tags;if(Z.if)X.if=Z.if;if(X.do=Z.do,Z.else)X.else=Z.else;return X}static toCleanYaml(Z){let Q=(Array.isArray(Z)?Z:[Z]).map((U)=>this.cleanRule(U));return u3.default.stringify(Q,{indent:2,lineWidth:0})}static toCleanJson(Z,X=!0){let U=(Array.isArray(Z)?Z:[Z]).map((q)=>this.cleanRule(q));return JSON.stringify(U,null,X?2:0)}static async saveToFile(Z,X){let Q=this.toYaml(Z);if(typeof process<"u"&&process.versions&&process.versions.node){let U=await import("fs/promises"),J=(await import("path")).dirname(X);await U.mkdir(J,{recursive:!0}),await U.writeFile(X,Q,"utf8")}else throw Error("saveToFile is only supported in Node.js/Bun environments")}}var GZ=t3(m3(),1);var WT=["EQ","==","NEQ","!="],$T=["GT",">","GTE",">=","LT","<","LTE","<="],LT=["IN","NOT_IN","RANGE"],GT=["CONTAINS","NOT_CONTAINS","STARTS_WITH","ENDS_WITH"];var AY=[...WT,...$T,...LT,...GT,"IS_EMPTY","HAS_KEY","MATCHES","SINCE","AFTER","BEFORE","UNTIL","RANGE"],SY=["AND","OR"],jY=["ALL","EITHER","SEQUENCE"];function D0(Z){return typeof Z==="object"&&Z!==null&&!Array.isArray(Z)}function VT(Z){return typeof Z==="string"&&Z.length>0}function _T(Z){return typeof Z==="number"&&!isNaN(Z)}function zT(Z){return typeof Z==="boolean"}function L1(Z){return"operator"in Z&&"conditions"in Z&&(Z.operator==="AND"||Z.operator==="OR")}function d1(Z){return"field"in Z&&"operator"in Z}function p3(Z){return typeof Z==="object"&&Z!==null&&"mode"in Z&&"actions"in Z&&Array.isArray(Z.actions)}function $Z(Z){return typeof Z==="object"&&Z!==null&&"if"in Z}function HT(Z){return typeof Z==="object"&&Z!==null&&"type"in Z}function l3(Z){return typeof Z==="string"&&jY.includes(Z)}function FT(Z){return typeof Z==="string"&&SY.includes(Z)}function BT(Z){return typeof Z==="string"&&DT(AY,Z)}function D4(Z){return Z.type||"log"}function P4(Z){if(!Z.params)return"{}";return typeof Z.params==="string"?Z.params:JSON.stringify(Z.params)}function z2(Z){if(d1(Z))return Z.field||"data";return"data"}function H2(Z){if(d1(Z))return Z.operator||"EQ";if(L1(Z))return Z.operator==="OR"?"OR":"AND";return"EQ"}function F2(Z){if(d1(Z))return Z.value;return}function c3(Z=0){let X=Z;return()=>`node_${X++}`}function d3(){let Z=0;return()=>`edge_${Date.now()}_${Z++}`}function i3(Z=100,X=100,Q=300,U=150){return(q,J,Y)=>({x:Z+q*Q,y:X+J*U-Y*U/2})}function U6(Z){if(Z===void 0)return[];if(Array.isArray(Z))return Z;return[Z]}function MT(Z){if(!Z)return[];if(Array.isArray(Z))return Z;return[Z]}function RT(Z){if(!Z)return[];if(Array.isArray(Z))return Z;return[Z]}function OT(Z){return Z.replace(/\.(ya?ml)$/i,"")}function TT(Z){return{"==":"EQ","!=":"NEQ",">":"GT",">=":"GTE","<":"LT","<=":"LTE"}[Z]||Z}function KT(Z,X){if(!(X in Z)||Z[X]===void 0||Z[X]===null)throw Error(`Missing required field: ${X}`)}function DT(Z,X){return Z.includes(X)}function PT(Z,X,Q){let U=typeof Z;if(U!==X)throw Error(`Field "${Q}" expected type "${X}", got "${U}"`)}function wT(Z,X,Q){if(typeof Z!=="string"||!X.includes(Z))throw Error(`Field "${Q}" must be one of: ${X.join(", ")}`)}function w4(Z,X,Q,U){if(!D0(Z))throw Error(`Rule at index ${X} is not an object`);let q={...Z};if("actions"in q&&!("do"in q))q.do=q.actions,delete q.actions;if(!("enabled"in q))q.enabled=!0;if(!("priority"in q))q.priority=0;if(!q.id){if(U===!0&&Q){let J=Q.replace(/\.(ya?ml)$/i,"");q.id=J}else if(typeof U==="string")q.id=`${U}-${X}`}if("if"in q&&q.if!==void 0)q.if=LZ(q.if);if("do"in q&&q.do!==void 0)q.do=EY(q.do);if("else"in q&&q.else!==void 0)q.else=bY(q.else);return q}function LZ(Z){if(!Z)return[];if(D0(Z))return CY(Z);if(Array.isArray(Z))return Z.map((X,Q)=>{if(D0(X))return CY(X);throw Error(`Invalid condition at index ${Q}: expected object`)});throw Error("Invalid condition format: expected object or array")}function CY(Z){let X="operator"in Z&&(Z.operator==="AND"||Z.operator==="OR"),Q="conditions"in Z&&Array.isArray(Z.conditions);if(X&&Q){let Y=Z.operator,W=LZ(Z.conditions);return{operator:Y,conditions:Array.isArray(W)?W:[W]}}let{field:U,operator:q,value:J}=Z;return{field:U||"data",operator:q||"EQ",value:J}}function EY(Z){if(!Z)return[];if(D0(Z)&&"mode"in Z&&"actions"in Z)return B2(Z);if(D0(Z))return i1(Z);if(Array.isArray(Z))return Z.map((X,Q)=>{if(D0(X)){if("mode"in X&&"actions"in X)return B2(X);return i1(X)}throw Error(`Invalid action at index ${Q}: expected object`)});throw Error("Invalid do field format: expected object or array")}function bY(Z){if(!Z)return[];if(D0(Z)&&"mode"in Z&&"actions"in Z)return B2(Z);if(D0(Z))return i1(Z);if(Array.isArray(Z))return Z.map((X,Q)=>{if(D0(X)){if("mode"in X&&"actions"in X)return B2(X);return i1(X)}throw Error(`Invalid action at index ${Q}: expected object`)});throw Error("Invalid else field format: expected object or array")}function i1(Z){let X={...Z};if("do"in X&&!("then"in X))X.then=X.do,delete X.do;if("if"in X&&X.if!==void 0){let U={if:LZ(X.if)};if("then"in X&&X.then!==void 0)U.then=NY(X.then);if("else"in X&&X.else!==void 0)U.else=NY(X.else);if("break"in X)U.break=X.break;if("continue"in X)U.continue=X.continue;return U}let Q={};if("type"in X)Q.type=X.type;if("params"in X)Q.params=X.params;if("run"in X)Q.run=X.run;if("delay"in X)Q.delay=X.delay;if("probability"in X)Q.probability=X.probability;if("name"in X)Q.name=X.name;if("break"in X)Q.break=X.break;if("continue"in X)Q.continue=X.continue;return Q}function NY(Z){if(!Z)return[];if(D0(Z)&&"mode"in Z&&"actions"in Z)return B2(Z);if(D0(Z))return i1(Z);if(Array.isArray(Z)){let X=[];for(let Q=0;Q<Z.length;Q++){let U=Z[Q];if(D0(U))if("mode"in U&&"actions"in U){let q=B2(U);for(let J of q.actions)X.push(J)}else X.push(i1(U));else throw Error(`Invalid action in branch at index ${Q}: expected object`)}return X}throw Error("Invalid action branch format: expected object or array")}function B2(Z){let X=Z.mode||"ALL";if(!l3(X))throw Error(`Invalid execution mode: ${X}`);let Q=Z.actions;if(!Q||!Array.isArray(Q))throw Error("Action group must have an actions array");let U=Q.map((q,J)=>{if(D0(q)){if("mode"in q&&"actions"in q)return B2(q);return i1(q)}throw Error(`Invalid action in group at index ${J}: expected object`)});return{mode:X,actions:U}}function AT(Z,X,Q,U){let q=w4(Z,X,Q,U);if(!q.on)throw Error(`Rule at index ${X} missing required field: on`);return q}function ST(Z){let X=[];if(!Z.on)X.push("Missing required field: on");if(!Z.do&&Z.do!=="")X.push("Missing required field: do");if(Z.else&&!Z.if)X.push('Field "else" requires "if" to be present');return{valid:X.length===0,errors:X}}function IY(Z,X,Q){return{id:X,type:E.EVENT,position:Q,data:{id:Z.id||"rule-1",name:Z.name||"Imported Rule",description:Z.description||"",event:Z.on||"",priority:Z.priority||0,enabled:Z.enabled!==!1,cooldown:Z.cooldown,tags:Z.tags}}}function s3(Z,X,Q){return{id:X,type:E.CONDITION_GROUP,position:Q,data:{operator:Z}}}function q6(Z,X,Q,U,q){return{id:U,type:E.CONDITION,position:q,data:{field:Z||"data",operator:X||"EQ",value:Q??""}}}function J6(Z,X,Q){return{id:X,type:E.DO,position:Q,data:{branchType:Z}}}function fY(Z,X,Q){let U,q,J,Y,W,$,L;if($Z(Z)){let G=Z.if;if(G){let z=(Array.isArray(G)?G:[G])[0];if(z&&d1(z))U=z.field,q=z.operator,J=z.value!==void 0?typeof z.value==="string"?z.value:JSON.stringify(z.value):void 0}let _=Z.then;if(_){let F=Array.isArray(_)?_:[_];if(F[0])Y=D4(F[0]),W=P4(F[0])}let H=Z.else;if(H){let F=Array.isArray(H)?H:[H];if(F[0])$=D4(F[0]),L=P4(F[0])}}let V={type:D4(Z),params:P4(Z)};if(U)V.conditionField=U;if(q)V.conditionOperator=q;if(J!==void 0)V.conditionValue=J;if(Y)V.thenType=Y;if(W)V.thenParams=W;if($)V.elseType=$;if(L)V.elseParams=L;return{id:X,type:E.ACTION,position:Q,data:V}}function yY(Z,X,Q){return{id:X,type:E.ACTION_GROUP,position:Q,data:{mode:Z||"SEQUENCE"}}}function F0(Z,X,Q,U,q){return{id:q?q():`edge_${Z}_${X}_${Date.now()}`,source:Z,target:X,sourceHandle:Q??null,targetHandle:U??null}}function jT(Z,X={}){let Q=[],U=[],q=[];if(!Z.id)q.push("Missing required field: id");if(!Z.on)q.push("Missing required field: on (event trigger)");if(!Z.do&&Z.do!=="")q.push("Missing required field: do (actions)");if(q.length>0)return{nodes:[],edges:[],valid:!1,errors:q};let J=X.startNodeId||"event-node",Y=c3(0),W=d3(),$=i3();try{let L=IY(Z,J,X.startPosition||{x:100,y:300});Q.push(L);let V=U6(Z.if);if(V.length>0){let{conditionNodes:G,groupNodeId:_}=CT(V,Q,U,L.id,Y,$),H=U6(Z.do);if(H.length>0){let z=G.length>0?G[G.length-1].id:_||L.id,K=Q.find((S)=>S.id===z)?.position||{x:300,y:300},P=Y(),w=J6("do",P,{x:K.x+300,y:K.y-100});Q.push(w);let O=null;if(z===L.id)O=D.EVENT_OUTPUT;else if(z===_)O=D.CONDITION_GROUP_OUTPUT;else O=D.CONDITION_OUTPUT;U.push(F0(z,P,O,D.DO_INPUT,W)),Y6(H,Q,U,P,Y,W,(S,N,y)=>({x:w.position.x+300,y:w.position.y+N*150}),"do")}let F=U6(Z.else);if(F.length>0){let z=G.length>0?G[G.length-1].id:_||L.id,K=Q.find((S)=>S.id===z)?.position||{x:300,y:300},P=Y(),w=J6("else",P,{x:K.x+300,y:K.y+100});Q.push(w);let O=null;if(z===L.id)O=D.EVENT_OUTPUT;else if(z===_)O=D.CONDITION_GROUP_OUTPUT;else O=D.CONDITION_OUTPUT;U.push(F0(z,P,O,D.DO_INPUT,W)),Y6(F,Q,U,P,Y,W,(S,N,y)=>({x:w.position.x+300,y:w.position.y+N*150}),"else")}}else{let G=U6(Z.do);if(G.length>0){let _=Y(),H=L.position,F=J6("do",_,{x:H.x+300,y:H.y});Q.push(F),U.push(F0(L.id,_,D.EVENT_OUTPUT,D.DO_INPUT,W)),Y6(G,Q,U,_,Y,W,(z,B,K)=>({x:F.position.x+300,y:F.position.y+B*150}),"do")}}return{nodes:Q,edges:U,valid:!0,errors:[]}}catch(L){let V=L instanceof Error?L.message:"Unknown error during conversion";return q.push(V),{nodes:Q,edges:U,valid:!1,errors:q}}}function CT(Z,X,Q,U,q,J){let Y=[],W,$=Z.length>1,L=Z.some(L1);if($||L){W=q();let V="AND",G=Z.find(L1);if(G&&L1(G))V=G.operator;let _=s3(V,W,J(1,0,1));X.push(_),Q.push(F0(U,W,null,D.CONDITION_GROUP_INPUT,void 0));let H=null;Z.forEach((F,z)=>{let B,K;if(L1(F)){if(F.conditions)F.conditions.forEach((P,w)=>{if(L1(P))return;if(B=q(),K=q6(z2(P),H2(P),F2(P),B,J(2,z*2+w,Z.length*2)),X.push(K),Y.push(K),H)Q.push(F0(H,B,D.CONDITION_OUTPUT,D.CONDITION_INPUT,void 0));else Q.push(F0(W,B,D.CONDITION_GROUP_OUTPUT,D.CONDITION_INPUT,void 0));H=B})}else{if(B=q(),K=q6(z2(F),H2(F),F2(F),B,J(2,z,Z.length)),X.push(K),Y.push(K),H)Q.push(F0(H,B,D.CONDITION_OUTPUT,D.CONDITION_INPUT,void 0));else Q.push(F0(W,B,D.CONDITION_GROUP_OUTPUT,D.CONDITION_INPUT,void 0));H=B}})}else{let V=q(),G=q6(z2(Z[0]),H2(Z[0]),F2(Z[0]),V,J(1,0,1));X.push(G),Y.push(G),Q.push(F0(U,V,null,D.CONDITION_INPUT,void 0))}return{conditionNodes:Y,groupNodeId:W}}function Y6(Z,X,Q,U,q,J,Y,W){Z.forEach(($,L)=>{if(p3($)){let z=q(),B=X.find((O)=>O.id===U)?.position||{x:100,y:100},K=yY($.mode,z,{x:B.x+300,y:B.y+L*75});X.push(K);let P=X.find((O)=>O.id===U),w;if(P?.type===E.EVENT)w=D.EVENT_OUTPUT;else if(P?.type===E.CONDITION)w=D.CONDITION_OUTPUT;else if(P?.type===E.CONDITION_GROUP)w=D.CONDITION_GROUP_OUTPUT;else if(P?.type===E.ACTION_GROUP)w=D.ACTION_GROUP_OUTPUT;else if(P?.type===E.DO)w=D.DO_OUTPUT;else w=W===E0.ELSE?D.ELSE_OUTPUT:D.THEN_OUTPUT;Q.push(F0(U,z,w,D.ACTION_GROUP_INPUT,J)),Y6($.actions,X,Q,z,q,J,Y,W);return}if($Z($)){let B=$.if,K=Array.isArray(B)?B[0]:B;if(K){let P=X.find((A)=>A.id===U),w;if(P?.type===E.EVENT)w=D.EVENT_OUTPUT;else if(P?.type===E.ACTION_GROUP)w=D.ACTION_GROUP_CONDITION_OUTPUT;else if(P?.type===E.CONDITION)w=D.CONDITION_OUTPUT;else if(P?.type===E.DO)w=D.DO_CONDITION_OUTPUT;else w=D.CONDITION_OUTPUT;let O,S=Y(2,L,Z.length);if(L1(K)){let A=q(),u=K.operator||"AND",o=s3(u,A,{x:S.x+300,y:S.y-75});X.push(o),Q.push(F0(U,A,w,D.CONDITION_GROUP_INPUT,J));let t=null;if(K.conditions)K.conditions.forEach((x,r)=>{if(L1(x))return;let p=q(),i=q6(z2(x),H2(x),F2(x),p,{x:S.x+600,y:S.y+r*100});if(X.push(i),t)Q.push(F0(t,p,D.CONDITION_OUTPUT,D.CONDITION_INPUT,J));else Q.push(F0(A,p,D.CONDITION_GROUP_OUTPUT,D.CONDITION_INPUT,J));t=p});O=t||A}else if(d1(K)){let A=q(),u=q6(z2(K),H2(K),F2(K),A,{x:S.x+300,y:S.y});X.push(u),Q.push(F0(U,A,w,D.CONDITION_INPUT,J)),O=A}else return;let N=$.then;if(N){let A=q(),u=X.find((p)=>p.id===O),o=J6("do",A,{x:(u?.position.x||0)+300,y:(u?.position.y||0)-100});X.push(o);let t=u?.type===E.CONDITION_GROUP?D.CONDITION_GROUP_OUTPUT:D.CONDITION_OUTPUT;Q.push(F0(O,A,t,D.DO_INPUT,J));let x=Array.isArray(N)?N:[N];Y6(x,X,Q,A,q,J,(p,i,B0)=>{return{x:o.position.x+300,y:o.position.y-i*150}},"do")}let y=$.else;if(y){let A=q(),u=X.find((p)=>p.id===O),o=J6("else",A,{x:(u?.position.x||0)+300,y:(u?.position.y||0)+100});X.push(o);let t=u?.type===E.CONDITION_GROUP?D.CONDITION_GROUP_OUTPUT:D.CONDITION_OUTPUT;Q.push(F0(O,A,t,D.DO_INPUT,J));let x=Array.isArray(y)?y:[y];Y6(x,X,Q,A,q,J,(p,i,B0)=>{return{x:o.position.x+300,y:o.position.y+i*150}},"else")}}return}let V=q(),G=X.find((z)=>z.id===U)?.position||{x:700,y:100},_=fY($,V,{x:G.x+300,y:G.y+L*150});X.push(_);let H=X.find((z)=>z.id===U),F;if(H?.type===E.EVENT)F=D.EVENT_OUTPUT;else if(H?.type===E.CONDITION)F=D.CONDITION_OUTPUT;else if(H?.type===E.CONDITION_GROUP)F=D.CONDITION_GROUP_OUTPUT;else if(H?.type===E.ACTION_GROUP)F=D.ACTION_GROUP_OUTPUT;else if(H?.type===E.DO)F=D.DO_OUTPUT;else F=D.CONDITION_OUTPUT;Q.push(F0(U,V,F,D.ACTION_INPUT,J))})}function kY(Z,X={}){let{autoId:Q=!1,filename:U,throwOnError:q=!1,multiDocument:J=!0}=X,Y=[],W=[];try{let L;if(J){let G=GZ.parseAllDocuments(Z);for(let _ of G)if(_.errors&&_.errors.length>0){let H=_.errors.map((F)=>F.message).join(", ");throw Error(`YAML syntax error: ${H}`)}L=G.map((_)=>_.toJS())}else{let G=GZ.parse(Z);L=Array.isArray(G)?[G]:[G]}let V=[];L.forEach((G)=>{if(Array.isArray(G))V.push(...G);else V.push(G)}),V.forEach((G,_)=>{try{let H;if(Q&&!U)H={...w4(G,_),id:`rule-${_}`};else H=w4(G,_,U,Q);let F=RX.validate(H);if(F.valid)W.push(F.rule);else Y.push({index:_,message:`Validation failed for rule at index ${_}`,issues:F.issues.map((z)=>({path:z.path,message:z.message,suggestion:z.suggestion}))})}catch(H){let F=H instanceof Error?H.message:`Unknown error at index ${_}`;Y.push({index:_,message:F})}})}catch(L){let V=L instanceof Error?L.message:"Unknown parsing error";Y.push({index:-1,message:`Failed to parse YAML: ${V}`})}let $={rules:W,errors:Y,valid:Y.length===0&&W.length>0};if(q&&!$.valid){let L=$.errors.map((V)=>{let G=`Rule ${V.index}: ${V.message}`;if(V.issues)G+=`
184
+ `,X)+1}return{type:Z,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(Z){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=YZ(Z),Q=Q6(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=YZ(Z),Q=Q6(X);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:Q,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(Z,X){if(this.type!=="comment")return!1;if(this.indent<=X)return!1;return Z.every((Q)=>Q.type==="newline"||Q.type==="space")}*documentEnd(Z){if(this.type!=="doc-mode"){if(Z.end)Z.end.push(this.sourceToken);else Z.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}*lineEnd(Z){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(Z.end)Z.end.push(this.sourceToken);else Z.end=[this.sourceToken];if(this.type==="newline")yield*this.pop()}}}qR.Parser=OY});var PY=C((zR)=>{var RY=j3(),YR=F4(),K4=B4(),WR=vX(),$R=c(),LR=v3(),TY=x3();function KY(Z){let X=Z.prettyErrors!==!1;return{lineCounter:Z.lineCounter||X&&new LR.LineCounter||null,prettyErrors:X}}function GR(Z,X={}){let{lineCounter:Q,prettyErrors:U}=KY(X),q=new TY.Parser(Q?.addNewLine),J=new RY.Composer(X),Y=Array.from(J.compose(q.parse(Z)));if(U&&Q)for(let W of Y)W.errors.forEach(K4.prettifyError(Z,Q)),W.warnings.forEach(K4.prettifyError(Z,Q));if(Y.length>0)return Y;return Object.assign([],{empty:!0},J.streamInfo())}function DY(Z,X={}){let{lineCounter:Q,prettyErrors:U}=KY(X),q=new TY.Parser(Q?.addNewLine),J=new RY.Composer(X),Y=null;for(let W of J.compose(q.parse(Z),!0,Z.length))if(!Y)Y=W;else if(Y.options.logLevel!=="silent"){Y.errors.push(new K4.YAMLParseError(W.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(U&&Q)Y.errors.forEach(K4.prettifyError(Z,Q)),Y.warnings.forEach(K4.prettifyError(Z,Q));return Y}function VR(Z,X,Q){let U=void 0;if(typeof X==="function")U=X;else if(Q===void 0&&X&&typeof X==="object")Q=X;let q=DY(Z,Q);if(!q)return null;if(q.warnings.forEach((J)=>WR.warn(q.options.logLevel,J)),q.errors.length>0)if(q.options.logLevel!=="silent")throw q.errors[0];else q.errors=[];return q.toJS(Object.assign({reviver:U},Q))}function _R(Z,X,Q){let U=null;if(typeof X==="function"||Array.isArray(X))U=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(Z===void 0){let{keepUndefined:q}=Q??X??{};if(!q)return}if($R.isDocument(Z)&&!U)return Z.toString(Q);return new YR.Document(Z,U,Q).toString(Q)}zR.parse=VR;zR.parseAllDocuments=GR;zR.parseDocument=DY;zR.stringify=_R});var m3=C((ER)=>{var OR=j3(),RR=F4(),TR=V3(),h3=B4(),KR=Z4(),d1=c(),DR=h1(),PR=L0(),wR=u1(),AR=p1(),SR=qZ(),jR=g3(),CR=v3(),NR=x3(),WZ=PY(),wY=t6();ER.Composer=OR.Composer;ER.Document=RR.Document;ER.Schema=TR.Schema;ER.YAMLError=h3.YAMLError;ER.YAMLParseError=h3.YAMLParseError;ER.YAMLWarning=h3.YAMLWarning;ER.Alias=KR.Alias;ER.isAlias=d1.isAlias;ER.isCollection=d1.isCollection;ER.isDocument=d1.isDocument;ER.isMap=d1.isMap;ER.isNode=d1.isNode;ER.isPair=d1.isPair;ER.isScalar=d1.isScalar;ER.isSeq=d1.isSeq;ER.Pair=DR.Pair;ER.Scalar=PR.Scalar;ER.YAMLMap=wR.YAMLMap;ER.YAMLSeq=AR.YAMLSeq;ER.CST=SR;ER.Lexer=jR.Lexer;ER.LineCounter=CR.LineCounter;ER.Parser=NR.Parser;ER.parse=WZ.parse;ER.parseAllDocuments=WZ.parseAllDocuments;ER.parseDocument=WZ.parseDocument;ER.stringify=WZ.stringify;ER.visit=wY.visit;ER.visitAsync=wY.visitAsync});l2();var d2;((J)=>{J.ENGINE_START="engine:start";J.ENGINE_DONE="engine:done";J.RULE_MATCH="rule:match";J.ACTION_SUCCESS="action:success";J.ACTION_ERROR="action:error"})(d2||={});var z9;((U)=>{U.RULE_ADDED="rule:added";U.RULE_REMOVED="rule:removed";U.RULE_UPDATED="rule:updated"})(z9||={});var Db=d2,H9=z9;class HX{static instance;handlers=new Map;constructor(){}static getInstance(){if(!this.instance)this.instance=new HX;return this.instance}on(Z,X){let Q=Z;if(!this.handlers.has(Q))this.handlers.set(Q,new Set);return this.handlers.get(Q).add(X),()=>this.off(Q,X)}off(Z,X){let Q=Z,U=this.handlers.get(Q);if(U)U.delete(X)}emit(Z,X){let Q=Z,U=this.handlers.get(Q);if(U)U.forEach((q)=>{try{q(X)}catch(J){console.error(`Error in event handler for ${Q}:`,J)}})}}var u0=HX.getInstance();var sG=U2,aG=d2,rG=z9,FX={IF:"if",THEN:"then",ELSE:"else",BREAK:"break",CONTINUE:"continue",MODE:"mode",ACTIONS:"actions",DELAY:"delay",PROBABILITY:"probability",PARAMS:"params",TYPE:"type",ON:"on"},BX={UNKNOWN_ACTION:"Unknown or generic action type",MISSING_ACTION_TYPE:"Action has no type and no control flow properties",PROBABILITY_FAILED:"probability check failed",BUN_REQUIRED:"Bun is required for 'execute' action",MISSING_KEY:"Missing key for state operation"},F9={RULE_ENGINE_EVALUATING:(Z,X)=>`[RuleEngine] Evaluating context with ${Z} rules for event: ${X}`,TRIGGER_ENGINE_EVALUATING:(Z,X)=>`[TriggerEngine] Evaluating context with ${Z} rules for event: ${X}`},Sb={Actions:sG,Events:aG,RuleEvents:rG,ControlFlow:FX,ErrorMessages:BX,DebugMessages:F9};l6();class oG{queue=[];engine;config;timer=null;isProcessing=!1;constructor(Z,X={maxBatchSize:10,flushIntervalMs:100}){this.engine=Z,this.config=X}push(Z){if(this.queue.push(Z),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 Z=this.queue.splice(0,this.config.maxBatchSize);if(Z.length===0){this.isProcessing=!1;return}console.debug(`[EventQueue] Processing batch of ${Z.length} events.`);for(let X of Z)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 nG{store=new Map;async loadState(){return new Map(this.store)}async saveState(Z,X){this.store.set(Z,X)}async deleteState(Z){this.store.delete(Z)}async clearState(){this.store.clear()}}class tG{keyPrefix;cache=new Map;isLoaded=!1;pendingWrite=null;writeDelay;dirty=!1;constructor(Z="trigger_system:",X){this.keyPrefix=Z,this.writeDelay=X?.writeDelay??0}flush(){this.dirty=!0,this.persist()}getCache(){return this.ensureLoaded(),new Map(this.cache)}isDirty(){return this.dirty}isAvailable(){return typeof window<"u"&&typeof window.localStorage<"u"}ensureLoaded(){if(this.isLoaded)return;if(this.isAvailable())try{let Z=window.localStorage.getItem(this.keyPrefix+"state");if(Z){let X=JSON.parse(Z);this.cache=new Map(Object.entries(X))}}catch(Z){console.error("[BrowserPersistence] Failed to load from localStorage:",Z)}this.isLoaded=!0}schedulePersist(){if(this.writeDelay<=0){this.persist();return}if(this.pendingWrite)clearTimeout(this.pendingWrite);this.dirty=!0,this.pendingWrite=setTimeout(()=>{this.persist(),this.pendingWrite=null},this.writeDelay)}persist(){if(this.pendingWrite)clearTimeout(this.pendingWrite),this.pendingWrite=null;if(this.isAvailable())try{let Z=Object.fromEntries(this.cache);window.localStorage.setItem(this.keyPrefix+"state",JSON.stringify(Z)),this.dirty=!1}catch(Z){console.error("[BrowserPersistence] Failed to save to localStorage:",Z)}}async loadState(){return this.ensureLoaded(),new Map(this.cache)}async saveState(Z,X){this.ensureLoaded(),this.cache.set(Z,X),this.schedulePersist()}async deleteState(Z){this.ensureLoaded(),this.cache.delete(Z),this.schedulePersist()}async clearState(){this.cache.clear(),this.schedulePersist()}}class MX{static getNestedValue(Z,X){let Q=Z.split("."),U=X;for(let q of Q){if(U===null||U===void 0)return;if(typeof U==="object"&&U!==null&&q in U)U=U[q];else return}return U}static interpolate(Z,X){if(typeof Z!=="string")return Z;return Z.replace(/\$\{([^}]+)\}/g,(Q,U)=>{let q=this.getNestedValue(U,X);if(q!==void 0)return String(q);return Q})}static compare(Z,X,Q){let U=(J)=>{if(J instanceof Date)return J.getTime();if(typeof J==="number")return J;if(typeof J==="string"){let Y=new Date(J);return isNaN(Y.getTime())?0:Y.getTime()}return 0},q=(J)=>{if(typeof J==="number")return J;if(J===null||J===void 0||J==="")return null;let Y=Number(J);return isNaN(Y)?null:Y};switch(X){case"EQ":case"==":return Z==Q;case"NEQ":case"!=":return Z!=Q;case"GT":case">":{let J=q(Z),Y=q(Q);return J!==null&&Y!==null&&J>Y}case"GTE":case">=":{let J=q(Z),Y=q(Q);return J!==null&&Y!==null&&J>=Y}case"LT":case"<":{let J=q(Z),Y=q(Q);return J!==null&&Y!==null&&J<Y}case"LTE":case"<=":{let J=q(Z),Y=q(Q);return J!==null&&Y!==null&&J<=Y}case"IN":return Array.isArray(Q)&&Q.some((J)=>J===Z);case"NOT_IN":return Array.isArray(Q)&&!Q.some((J)=>J===Z);case"CONTAINS":if(Array.isArray(Q))return Q.some((J)=>String(Z).includes(String(J)));if(Array.isArray(Z)||typeof Z==="string")return Z.includes(Q);return!1;case"NOT_CONTAINS":if(Array.isArray(Q))return!Q.some((J)=>String(Z).includes(String(J)));if(Array.isArray(Z)||typeof Z==="string")return!Z.includes(Q);return!1;case"STARTS_WITH":if(Array.isArray(Q))return Q.some((J)=>String(Z).startsWith(String(J)));if(typeof Z==="string"&&typeof Q==="string")return Z.startsWith(Q);return!1;case"ENDS_WITH":if(Array.isArray(Q))return Q.some((J)=>String(Z).endsWith(String(J)));if(typeof Z==="string"&&typeof Q==="string")return Z.endsWith(Q);return!1;case"IS_EMPTY":{let J=!1;if(typeof Z==="string")J=Z==="";else if(Array.isArray(Z))J=Z.length===0;else if(Z===null||Z===void 0)J=!0;else if(typeof Z==="object")J=Object.keys(Z).length===0;return Q===!1?!J:J}case"IS_NULL":case"IS_NONE":{let J=Z===null||Z===void 0;return Q===!1?!J:J}case"HAS_KEY":if(typeof Z==="object"&&Z!==null&&typeof Q==="string")return Q in Z;return!1;case"MATCHES":if(typeof Q==="string")return new RegExp(Q).test(String(Z));return!1;case"RANGE":if(Array.isArray(Q)&&Q.length===2){let J=q(Z),Y=q(Q[0]),W=q(Q[1]);return J!==null&&Y!==null&&W!==null&&J>=Y&&J<=W}return!1;case"SINCE":case"AFTER":return U(Z)>=U(Q);case"BEFORE":case"UNTIL":return U(Z)<U(Q);default:return console.warn(`Unknown operator: ${X}`),!1}}}l6();class I1{static evaluateConditions(Z,X){if(!Z)return!0;if(Array.isArray(Z))return Z.every((Q)=>this.evaluateRecursiveCondition(Q,X));return this.evaluateRecursiveCondition(Z,X)}static evaluateRecursiveCondition(Z,X){if("conditions"in Z&&"operator"in Z){let U=Z;if(U.operator==="OR")return U.conditions.some((q)=>this.evaluateRecursiveCondition(q,X));else return U.conditions.every((q)=>this.evaluateRecursiveCondition(q,X))}let Q=Z;try{let U=K0.evaluate(Q.field,X),q=Q.value;if(typeof q==="string"&&q.includes("${"))q=K0.interpolate(q,X);return MX.compare(U,Q.operator,q)}catch(U){return console.error("Error evaluating condition:",Q,U),!1}}static async processSingleActionBase(Z,X,Q){let U={...Z};if(!U.type&&!U.run&&!U.break&&!U.continue){let Y=Object.values(FX),W=Object.keys(U).filter(($)=>!Y.includes($));for(let $ of W)if(Q?!!Q.get($):!0){U.type=$;let V=U[$];if(typeof V==="string")U.params={...U.params,message:V,content:V};else if(typeof V==="object"&&V!==null)U.params={...U.params,...V};break}}if(U.break)return{shouldExecute:!1,executedAction:{type:"BREAK",result:"Break execution",timestamp:Date.now()},normalizedAction:U};if(U.continue)return{shouldExecute:!1,executedAction:{type:"CONTINUE",result:"Continue execution",timestamp:Date.now()},normalizedAction:U};let q=U.probability;if(typeof q==="string"){let Y=K0.evaluate(q,X);q=typeof Y==="number"?Y:Number(Y)}if(q!==void 0&&Math.random()>q)return{shouldExecute:!1,executedAction:{type:U.type||"skipped",result:{skipped:"probability check failed"},timestamp:Date.now()},normalizedAction:U};let J=U.delay;if(typeof J==="string"){let Y=K0.evaluate(J,X);J=typeof Y==="number"?Y:Number(Y)}if(J&&J>0)await new Promise((Y)=>setTimeout(Y,J));return U.params=this.interpolateParams(U.params||{},X),{shouldExecute:!0,normalizedAction:U}}static selectActions(Z){let X=[],Q="ALL";if(Array.isArray(Z))X=Z;else if(Z&&typeof Z==="object"&&"mode"in Z&&"actions"in Z){let U=Z;Q=U.mode,X=U.actions}else X=[Z];if(Q==="EITHER"&&X.length>0){let U=(W)=>("probability"in W)?W.probability:1,q=X.reduce((W,$)=>W+U($),0),J=Math.random()*q;for(let W of X){let $=U(W);if(J-=$,J<=0)return{actionsToExecute:[W],mode:Q}}let Y=X[X.length-1];return{actionsToExecute:Y?[Y]:[],mode:Q}}return{actionsToExecute:X,mode:Q}}static interpolateParams(Z,X){let Q={};for(let[U,q]of Object.entries(Z))Q[U]=this.interpolateDeep(q,X);return Q}static interpolateDeep(Z,X){if(typeof Z==="string"&&Z.includes("${"))return K0.interpolate(Z,X);if(Array.isArray(Z))return Z.map((Q)=>this.interpolateDeep(Q,X));if(typeof Z==="object"&&Z!==null){let Q={};for(let[U,q]of Object.entries(Z))Q[U]=this.interpolateDeep(q,X);return Q}return Z}}l6();var q2=new Set(["merge","mergeCallbacks","set","setCallback","delete","has","get","getCallback","call","interpolate","increment","decrement","snapshot","snapshotCallbacks","snapshotWithCallbacks","reset","keys","callbackKeys","toContext"]),B9=()=>{let Z=Object.create(null),X=Object.create(null);function Q(Y,W){if(q2.has(Y))return console.warn(`[VarsContext] ${W}: "${Y}" is a reserved API key and cannot be used.`),!1;return!0}function U(Y,W,$){return(typeof W==="boolean"?W:W?.overwrite??!1)||!(Y in $)}function q(Y){let W={...Z};for(let[$,L]of Object.entries(X))W[$]=L;return{event:Y?.event??"",timestamp:Y?.timestamp??Date.now(),data:Y?.data??{},vars:W,env:Y?.env,id:Y?.id}}let J={merge(Y,W){for(let $ of Object.keys(Y)){if(!Q($,"merge"))continue;let L=Y[$];if(typeof L==="function"){console.warn(`[VarsContext] merge(): "${$}" is a function — use mergeCallbacks() instead. Skipped.`);continue}if(U($,W,Z))Z[$]=L}},mergeCallbacks(Y,W){for(let $ of Object.keys(Y)){if(!Q($,"mergeCallbacks"))continue;let L=Y[$];if(typeof L!=="function"){console.warn(`[VarsContext] mergeCallbacks(): "${$}" is not a function. Skipped.`);continue}if(U($,W,X))X[$]=L}},set(Y,W){if(!Q(Y,"set"))return;if(typeof W==="function"){console.warn(`[VarsContext] set(): "${Y}" is a function — use setCallback() instead.`);return}Z[Y]=W},setCallback(Y,W){if(!Q(Y,"setCallback"))return;if(typeof W!=="function"){console.warn(`[VarsContext] setCallback(): "${Y}" value is not a function.`);return}X[Y]=W},delete(Y){if(!Q(Y,"delete"))return!1;let W=Y in Z,$=Y in X;if(W)delete Z[Y];if($)delete X[Y];return W||$},has(Y){return Y in Z||Y in X},get(Y){return Z[Y]},getCallback(Y){return X[Y]},call(Y,...W){let $=X[Y];if(typeof $!=="function")throw TypeError(`[VarsContext] call(): "${Y}" is not a registered callback (got ${typeof(Z[Y]??$)}).`);return $(...W)},interpolate(Y){return K0.interpolate(Y,q())},increment(Y,W=1){let L=(typeof Z[Y]==="number"?Z[Y]:0)+W;return Z[Y]=L,L},decrement(Y,W=1){let L=(typeof Z[Y]==="number"?Z[Y]:0)-W;return Z[Y]=L,L},snapshot(){return{...Z}},snapshotCallbacks(){return{...X}},snapshotWithCallbacks(){let Y={...Z};for(let[W,$]of Object.entries(X))Y[W]=$;return Y},reset(Y={},W=!1){for(let $ of Object.keys(Z))delete Z[$];if(W)for(let $ of Object.keys(X))delete X[$];for(let[$,L]of Object.entries(Y))if(!q2.has($)&&typeof L!=="function")Z[$]=L},keys(){return Object.keys(Z)},callbackKeys(){return Object.keys(X)},toContext(Y){return q(Y)}};return new Proxy(J,{get(Y,W){if(typeof W==="symbol")return;let $=W;if(q2.has($))return J[$];if($ in X)return X[$];return Z[$]},set(Y,W,$){if(typeof W==="symbol")return!1;let L=W;if(q2.has(L))return console.warn(`[VarsContext] "${L}" is a reserved API method and cannot be overwritten.`),!1;if(typeof $==="function")X[L]=$;else Z[L]=$;return!0},has(Y,W){let $=String(W);return q2.has($)||$ in Z||$ in X},deleteProperty(Y,W){return console.warn(`[VarsContext] Use vars.delete("${String(W)}") instead of \`delete vars.${String(W)}\`.`),!1},ownKeys(){return[...new Set([...q2,...Object.keys(Z),...Object.keys(X)])]},getOwnPropertyDescriptor(Y,W){let $=String(W);if(q2.has($))return{configurable:!0,enumerable:!1,writable:!1,value:J[$]};if($ in Z)return{configurable:!0,enumerable:!0,writable:!0,value:Z[$]};if($ in X)return{configurable:!0,enumerable:!0,writable:!0,value:X[$]};return}})},eG=B9();class c6{_rules=[];actionHandlers=new Map;lastExecution=new Map;_config;_vars;constructor(Z=[]){if(Array.isArray(Z))this._rules=Z;else this._config=Z,this._rules=[...Z.rules];this._vars=B9();try{let{ActionRegistry:X}=(l2(),e3(zX));X.getInstance(!0)}catch(X){console.log(X)}this._registerVarActions(),this.sortRules()}sortRules(){this._rules.sort((Z,X)=>(X.priority||0)-(Z.priority||0))}_registerVarActions(){this.registerAction("vars",async(Z,X)=>{let Q=String(Z.op??"set"),U=Z.key!=null?String(Z.key):"",q=X.vars??{};switch(Q){case"set":{let J=Z.value;return this._vars.set(U,J),q[U]=J,{op:Q,key:U,value:J}}case"increment":{let J=typeof Z.delta==="number"?Z.delta:1,Y=this._vars.increment(U,J);return q[U]=Y,{op:Q,key:U,value:Y}}case"decrement":{let J=typeof Z.delta==="number"?Z.delta:1,Y=this._vars.decrement(U,J);return q[U]=Y,{op:Q,key:U,value:Y}}case"delete":return this._vars.delete(U),delete q[U],{op:Q,key:U,deleted:!0};case"merge":{let J=Z.overwrite===!0,Y={},W=Z.data??Z;for(let[$,L]of Object.entries(W)){if($==="op"||$==="overwrite"||$==="data"||typeof L==="function")continue;Y[$]=L}this._vars.merge(Y,{overwrite:J});for(let[$,L]of Object.entries(Y))if(J||!($ in q))q[$]=L;return{op:Q,merged:Object.keys(Y),overwrite:J}}case"reset":{let J=Z.data??{};this._vars.reset(J);for(let Y of Object.keys(q))delete q[Y];return Object.assign(q,this._vars.snapshot()),{op:Q,keys:this._vars.keys()}}default:return console.warn(`[vars action] Unknown op: "${Q}"`),{op:Q,error:`unknown op "${Q}"`}}})}registerAction(Z,X){this.actionHandlers.set(Z,X)}registerVars(Z,X){this._mergeWithCallbackRouting(Z,X)}_mergeWithCallbackRouting(Z,X){let Q={},U={};for(let[q,J]of Object.entries(Z))if(typeof J==="function")U[q]=J;else Q[q]=J;if(Object.keys(Q).length)this._vars.merge(Q,X);if(Object.keys(U).length)this._vars.mergeCallbacks(U,X)}async processEvent(Z){if(Z.vars&&Object.keys(Z.vars).length)this._mergeWithCallbackRouting(Z.vars,{overwrite:!1});let X={};for(let[q,J]of Object.entries(Z.vars??{}))if(typeof J!=="function")X[q]=J;Z.vars={...this._vars.snapshotWithCallbacks(),...X};let Q=[],U=this._rules.filter((q)=>q.enabled!==!1&&q.on===Z.event);for(let q of U){if(q.cooldown&&this.checkCooldown(q.id,q.cooldown))continue;let J=I1.evaluateConditions(q.if,Z),Y;if(J)u0.emit("rule:match",{rule:q,context:Z}),Y=q.do;else if(q.else)Y=q.else;if(Y){let W=await this.executeRuleActions(Y,Z);this.lastExecution.set(q.id,Date.now());let $=this._vars.snapshotWithCallbacks();for(let[L,V]of Object.entries($))Z.vars[L]=V;Q.push({ruleId:q.id,success:!0,executedActions:W})}if(!J&&!q.else&&!this.shouldEvaluateAll())break;if(J&&!this.shouldEvaluateAll())break}return Q}async processEventSimple(Z,X={},Q={}){this._mergeWithCallbackRouting(Q,{overwrite:!1});let U={event:Z,data:X,vars:Q,timestamp:Date.now()};return this.processEvent(U)}updateRules(Z){let X=this.getRules(),Q=new Set(X.map((Y)=>Y.id)),U=new Set(Z.map((Y)=>Y.id)),q=Z.filter((Y)=>!Q.has(Y.id)),J=X.filter((Y)=>!U.has(Y.id));this._rules=[...Z],this.sortRules(),q.forEach((Y)=>{this.emitRuleEvent(H9.RULE_ADDED,{ruleId:Y.id,timestamp:Date.now()})}),J.forEach((Y)=>{this.emitRuleEvent(H9.RULE_REMOVED,{ruleId:Y.id,timestamp:Date.now()})}),this.emitRuleEvent(H9.RULE_UPDATED,{count:Z.length,added:q.length,removed:J.length,unchanged:Z.length-q.length,timestamp:Date.now()})}emitRuleEvent(Z,X){try{if(u0)u0.emit(Z,{...X,timestamp:Date.now()})}catch(Q){console.warn(`Could not emit event ${Z}:`,Q)}}getRules(){return[...this._rules]}checkCooldown(Z,X){let Q=this.lastExecution.get(Z);if(!Q)return!1;return Date.now()-Q<X}shouldEvaluateAll(){return this._config?.globalSettings?.evaluateAll??!0}evaluateConditions(Z,X){return I1.evaluateConditions(Z,X)}evaluateSingleCondition(Z,X){return I1.evaluateConditions(Z,X)}async executeRuleActions(Z,X){let{actionsToExecute:Q}=I1.selectActions(Z),U=[];for(let q of Q){if("actions"in q&&"mode"in q){U.push(...await this.executeRuleActions(q,X));continue}let J=q;if("if"in J&&J.if&&(J.then||J.else||J.do)){let W=this.evaluateConditions(J.if,X),$=J.then||J.do;if(W&&$)U.push(...await this.executeRuleActions($,X));else if(!W&&J.else)U.push(...await this.executeRuleActions(J.else,X));continue}if("if"in J&&J.if){if(!this.evaluateConditions(J.if,X))continue}let Y=await this.executeSingleAction(J,X);if(U.push(Y),Y.type==="BREAK")break}return U}async executeSingleAction(Z,X){let{shouldExecute:Q,executedAction:U,normalizedAction:q}=await I1.processSingleActionBase(Z,X);if(!Q)return U;try{let J=this.actionHandlers.get(q.type);if(J){let W=await J(q.params||{},X);return u0.emit("action:success",{action:q,context:X,result:W}),{type:q.type,result:W,timestamp:Date.now()}}try{let{ActionRegistry:W}=(l2(),e3(zX)),$=W.getInstance().get(q.type);if($){let L=await $(q,X);return u0.emit("action:success",{action:q,context:X,result:L}),{type:q.type,result:L,timestamp:Date.now()}}}catch{}let Y=`${BX.UNKNOWN_ACTION}: ${q.type}`;if(this._config?.globalSettings?.strictActions)throw Error(Y);return console.warn(Y),{type:q.type,result:{warning:Y},timestamp:Date.now()}}catch(J){return console.error(`Error executing action ${q.type}:`,J),u0.emit("action:error",{action:q,context:X,error:String(J)}),{type:q.type,error:String(J),timestamp:Date.now()}}}interpolateParams(Z,X){return I1.interpolateParams(Z,X)}get rules(){return[...this._rules]}get config(){return this._config}get vars(){return this._vars}set rules(Z){this._rules=[...Z],this.sortRules()}}l2();class Uq extends c6{actionRegistry;constructor(Z){super(Z);this.actionRegistry=d6.getInstance(!0)}async evaluateContext(Z){if(!Z.env)Z.env={};if(this._config?.globalSettings?.debugMode)console.log(F9.RULE_ENGINE_EVALUATING(this._rules.length,Z.event));u0.emit("engine:start",{context:Z,rulesCount:this._rules.length});let X=await this.processEvent(Z);return u0.emit("engine:done",{results:X,context:Z}),X}async processEvent(Z,X={},Q={}){if(typeof Z==="string"){let J={event:Z,data:X,vars:Q,timestamp:Date.now()};return this.processEvent(J)}let U=Z;if(u0.emit("engine:start",{context:U,rulesCount:this._rules.length}),this._config?.globalSettings?.debugMode)console.log(F9.RULE_ENGINE_EVALUATING(this._rules.length,U.event));let q=await super.processEvent(U);return u0.emit("engine:done",{results:q,context:U}),q}get ActionRegistry(){return this.actionRegistry}}l2();_X();var ZV=["EQ","==","NEQ","!="],qq=["GT",">","GTE",">=","LT","<","LTE","<="],Jq=["IN","NOT_IN","RANGE"],Yq=["CONTAINS","NOT_CONTAINS","STARTS_WITH","ENDS_WITH"],XV=["IS_NULL","IS_NONE"],QV=["IS_EMPTY","HAS_KEY","MATCHES","SINCE","AFTER","BEFORE","UNTIL"],YI=[...ZV,...qq,...Jq,...Yq,...XV,...QV];function Wq(Z){return Jq.includes(Z)}function $q(Z){return Yq.includes(Z)}function Lq(Z){return qq.includes(Z)}var f1=u6({Operator:"'EQ' | '==' | 'NEQ' | '!=' | 'GT' | '>' | 'GTE' | '>=' | 'LT' | '<' | 'LTE' | '<=' | 'IN' | 'NOT_IN' | 'CONTAINS' | 'NOT_CONTAINS' | 'STARTS_WITH' | 'ENDS_WITH' | 'MATCHES' | 'RANGE' | 'SINCE' | 'AFTER' | 'BEFORE' | 'UNTIL'",Condition:"RangeCondition | ListCondition | ContainsCondition | NumericCondition | RegexCondition | StringOperatorCondition | HasKeyCondition | NullCondition | EmptyCondition | 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' | 'NOT_CONTAINS'",value:"string | unknown[]"},StringOperatorCondition:{field:"string > 0",operator:"'STARTS_WITH' | 'ENDS_WITH'",value:"string"},HasKeyCondition:{field:"string > 0",operator:"'HAS_KEY'",value:"string"},NullCondition:{field:"string > 0",operator:"'IS_NULL' | 'IS_NONE'","value?":"boolean | null"},EmptyCondition:{field:"string > 0",operator:"'IS_EMPTY'","value?":"boolean | null"},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",InlineConditionalAction:{if:"RuleCondition | RuleCondition[]","then?":"Action | ActionGroup","do?":"Action | ActionGroup","else?":"Action | ActionGroup","break?":"boolean","continue?":"boolean"},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[] | InlineConditionalAction","else?":"RuleAction | RuleAction[]","comment?":"string"}}).export(),zI=f1.Operator,HI=f1.Condition,FI=f1.ConditionGroup,BI=f1.RuleCondition,MI=f1.Action,OI=f1.ActionGroup,RI=f1.InlineConditionalAction,UV=f1.TriggerRule;class OX{static validate(Z){let X=UV(Z);if(X instanceof r0.errors){let q=[];for(let J of X){let Y=J.path.join("."),W=J.message,$=void 0;if(Y.endsWith("on")&&(W.includes("string")||W.includes("must be")))if(typeof Z==="object"&&Z!==null&&"on"in Z&&Z.on===!0)W="The 'on' field is incorrect (boolean true found).",$=`In YAML, 'on' is a boolean keyword (true). Quote it: "on": "EventName"`;else $="Ensure 'on' is a string event name.";q.push({path:Y,message:W,suggestion:$,severity:"error"})}return{valid:!1,issues:q}}let Q=X,U=[];if(this.validateConditionsRecursive(Q.if,U,"if"),this.validateInlineConditionalRecursive(Q.do,U,"do"),Q.else)this.validateInlineConditionalRecursive(Q.else,U,"else");if(U.length>0)return{valid:!1,issues:U};return{valid:!0,rule:Q}}static validateInlineConditionalRecursive(Z,X,Q){if(!Z)return;if(Array.isArray(Z)){Z.forEach((U,q)=>{this.validateInlineConditionalRecursive(U,X,`${Q}.${q}`)});return}if(typeof Z==="object"&&Z!==null&&"mode"in Z&&"actions"in Z){let U=Z;if(Array.isArray(U.actions))U.actions.forEach((q,J)=>{this.validateInlineConditionalRecursive(q,X,`${Q}.actions.${J}`)});return}if(typeof Z==="object"&&Z!==null&&"if"in Z){let U=Z;if(this.validateConditionsRecursive(U.if,X,`${Q}.if`),U.then)this.validateInlineConditionalRecursive(U.then,X,`${Q}.then`);if(U.do)this.validateInlineConditionalRecursive(U.do,X,`${Q}.do`);if(U.else)this.validateInlineConditionalRecursive(U.else,X,`${Q}.else`);return}}static validateConditionsRecursive(Z,X,Q){if(!Z)return;if(Array.isArray(Z)){Z.forEach((U,q)=>{this.validateConditionsRecursive(U,X,`${Q}.${q}`)});return}if(typeof Z==="object"&&Z!==null&&"conditions"in Z&&Array.isArray(Z.conditions)){Z.conditions.forEach((U,q)=>{this.validateConditionsRecursive(U,X,`${Q}.conditions.${q}`)});return}if(typeof Z==="object"&&Z!==null&&"operator"in Z&&"value"in Z)this.validateConditionValue(Z,X,Q)}static validateConditionValue(Z,X,Q){let{operator:U,value:q}=Z,J=U;if(Wq(J)){if(!Array.isArray(q)){X.push({path:`${Q}.value`,message:`Incorrect value type: Operator '${J}' expects a List (Array), but received ${typeof q}.`,suggestion:J==="RANGE"?"Use format [min, max]":"Use format [item1, item2]",severity:"error"});return}if(J==="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(J==="CONTAINS"||J==="NOT_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"})}else if($q(J)){if(typeof q!=="string"&&!Array.isArray(q))X.push({path:`${Q}.value`,message:`Incorrect value type: Operator '${J}' expects a String or List (Array), but received ${typeof q}.`,suggestion:"Use a string prefix/suffix or a list of prefixes/suffixes.",severity:"error"})}else if(J==="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(Y){X.push({path:`${Q}.value`,message:`Invalid Regex pattern: ${Y.message}`,severity:"error"})}else if(Lq(J)){if(typeof q!=="number"&&typeof q!=="string")X.push({path:`${Q}.value`,message:`Incorrect value type: Operator '${J}' expects a number or expression string, but received ${typeof q}.`,severity:"error"})}else if(J==="HAS_KEY"){if(typeof q!=="string")X.push({path:`${Q}.value`,message:`Incorrect value type: Operator 'HAS_KEY' expects a string (key name), but received ${typeof q}.`,severity:"error"})}}}function M9(Z,X){let Q=new Map,U=[];for(let J of Z){let W=J[X];if(W!==void 0&&W!==null){let $=String(W);if(!Q.has($))Q.set($,J)}else U.push(J)}let q=Array.from(new Set(U.map((J)=>JSON.stringify(J)))).map((J)=>JSON.parse(J));return[...Array.from(Q.values()),...q]}function i6(Z,X={}){let{deduplicate:Q=!0,uniqueIdField:U}=X;if(!Z)return;if(Array.isArray(Z)){let q=Z.map((Y)=>i6(Y,X)).filter((Y)=>Y!==void 0);if(!Q)return q.length===0?void 0:q.length===1?q[0]:q;let J=U?M9(q,U):Array.from(new Set(q.map((Y)=>JSON.stringify(Y)))).map((Y)=>JSON.parse(Y));return J.length===0?void 0:J.length===1?J[0]:J}if("operator"in Z&&"conditions"in Z){let q=Z,J=i6(q.conditions,X);if(!J)return;if(!Array.isArray(J))J=[J];let Y=[];for(let $ of J)if("operator"in $&&"conditions"in $&&$.operator===q.operator)Y.push(...$.conditions);else Y.push($);let W;if(!Q)W=Y;else if(U)W=M9(Y,U);else W=Array.from(new Set(Y.map(($)=>JSON.stringify($)))).map(($)=>JSON.parse($));if(W.length===0)return;if(W.length===1)return W[0];return{operator:q.operator,conditions:W}}return Z}function s6(Z,X={}){let{deduplicate:Q=!1,uniqueIdField:U}=X;if(!Z)return;if(Array.isArray(Z)){let q=Z.map(($)=>s6($,X)).filter(($)=>$!==void 0);if(!Q){let $=q.flatMap((V)=>Array.isArray(V)?V:[V]),L=[];for(let V of $)if("mode"in V&&"actions"in V&&V.mode==="ALL")L.push(...V.actions);else L.push(V);if(L.length===0)return;if(L.length===1)return L[0];return L}let J=q.flatMap(($)=>Array.isArray($)?$:[$]),Y=[];for(let $ of J)if("mode"in $&&"actions"in $&&$.mode==="ALL")Y.push(...$.actions);else Y.push($);if(Y.length===0)return;if(Y.length===1)return Y[0];let W;if(U)W=M9(Y,U);else W=Array.from(new Set(Y.map(($)=>JSON.stringify($)))).map(($)=>JSON.parse($));return W}if("mode"in Z&&"actions"in Z){let q=Z,J=s6(q.actions,X);if(!J)return;if(!Array.isArray(J))J=[J];let Y=[];for(let $ of J)if("mode"in $&&"actions"in $&&$.mode===q.mode)Y.push(...$.actions);else Y.push($);if(Y.length===0)return;if(Y.length===1)return Y[0];let W;if(!Q)W=Y;else if(U)W=M9(Y,U);else W=Array.from(new Set(Y.map(($)=>JSON.stringify($)))).map(($)=>JSON.parse($));return{mode:q.mode,actions:W}}return Z}class y1{conditions=[];op="AND";constructor(Z="AND"){this.op=Z}where(Z,X,Q){return this.conditions.push({field:Z,operator:X,value:Q}),this}and(Z){let X=new y1("AND");return this.conditions.push(Z(X).build()),this}or(Z){let X=new y1("OR");return this.conditions.push(Z(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 a6{actions=[];mode="ALL";setMode(Z){return this.mode=Z,this}add(Z,X,Q){return this.actions.push({type:Z,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 RX{params={};set(Z,X){return this.params[Z]=X,this}setAll(Z){return Object.assign(this.params,Z),this}setNested(Z,X){let Q=Z.split("."),U=this.params;for(let J=0;J<Q.length-1;J++){let Y=Q[J];if(!Y)continue;if(!(Y in U))U[Y]={};U=U[Y]}let q=Q[Q.length-1];if(q)U[q]=X;return this}addItem(Z,X){if(!(Z in this.params)||!Array.isArray(this.params[Z]))this.params[Z]=[];return this.params[Z].push(X),this}remove(Z){return delete this.params[Z],this}has(Z){return Z in this.params}get(Z){return this.params[Z]}build(){return{...this.params}}getRaw(){return this.params}}var E={EVENT:"event",CONDITION:"condition",CONDITION_GROUP:"condition_group",ACTION:"action",ACTION_GROUP:"action_group",DO:"do"},D={EVENT_OUTPUT:"event-output",CONDITION_INPUT:"condition-input",CONDITION_OUTPUT:"output",CONDITION_OUTPUT_LEGACY:"condition-output",THEN_OUTPUT:"then-output",ELSE_OUTPUT:"else-output",CONDITION_GROUP_INPUT:"input",CONDITION_GROUP_OUTPUT:"cond-output",ACTION_INPUT:"action-input",ACTION_OUTPUT:"action-output",ACTION_OUTPUT_LEGACY:"action-group-output",ACTION_GROUP_INPUT:"input",ACTION_GROUP_OUTPUT:"action-output",ACTION_GROUP_CONDITION_OUTPUT:"condition-output",DO_INPUT:"do-input",DO_OUTPUT:"do-output",DO_CONDITION_OUTPUT:"do-condition-output"},E0={DO:"do",ELSE:"else"},TX={AND:"AND",OR:"OR"};var R9=(Z)=>Z.type===E.EVENT,M1=(Z)=>Z.type===E.CONDITION||Z.type===E.CONDITION_GROUP,q1=(Z)=>Z.type===E.ACTION||Z.type===E.ACTION_GROUP||Z.type===E.DO,r6=(Z)=>Z.type===E.DO;var k1=(Z)=>{return Z.data?.branchType===E0.ELSE?E0.ELSE:E0.DO};function KX(Z){let X=Z.data||{};return{id:X.id,on:X.event,name:X.name,description:X.description,priority:X.priority!==void 0?Number(X.priority):void 0,enabled:X.enabled!==void 0?!!X.enabled:void 0,cooldown:X.cooldown!==void 0?Number(X.cooldown):void 0,tags:X.tags}}function J0(Z,X,Q){let U=[...Q];return Z.edges.filter((q)=>q.source===X&&U.includes(q.sourceHandle||""))}var J1={CONDITION_OUTPUT:[D.CONDITION_OUTPUT,D.CONDITION_OUTPUT_LEGACY],ACTION_OUTPUT:[D.ACTION_OUTPUT,D.ACTION_OUTPUT_LEGACY],DO_OUTPUT:[D.DO_OUTPUT,""],THEN_ELSE:[D.THEN_OUTPUT,D.ELSE_OUTPUT],DO_CONDITION:[D.DO_CONDITION_OUTPUT],CONDITION_CHAIN:[D.CONDITION_OUTPUT,D.CONDITION_OUTPUT_LEGACY,D.THEN_OUTPUT,D.ELSE_OUTPUT],ANY:[D.CONDITION_OUTPUT,D.CONDITION_OUTPUT_LEGACY,""]};class Gq{convert(Z,X){return{field:Z.field||"data",operator:Z.operator||"EQ",value:Z.value!==void 0?Z.value:""}}validate(Z){let X=[];if(!Z.field&&!Z.value)X.push("Condition must have at least a field or value");return{valid:X.length===0,errors:X.length>0?X:void 0}}}class Vq{convert(Z,X){let Q={};try{if(Z.params)Q=typeof Z.params==="string"?JSON.parse(Z.params):Z.params}catch{Q={}}let U={type:Z.type||"log",params:Q};if(Z.delay!==void 0)U.delay=Number(Z.delay);if(Z.probability!==void 0)U.probability=Number(Z.probability);return U}validate(Z){let X=[];if(!Z.type)X.push('Action type defaults to "log"');return{valid:!0,warnings:X.length>0?X:void 0}}}class _q{convert(Z,X){return{id:Z.id,on:Z.event,name:Z.name,description:Z.description,priority:Z.priority!==void 0?Number(Z.priority):void 0,enabled:Z.enabled!==void 0?!!Z.enabled:void 0,cooldown:Z.cooldown!==void 0?Number(Z.cooldown):void 0,tags:Z.tags}}validate(Z){let X=[],Q=[];if(!Z.id)X.push("Event must have an ID");if(!Z.event)X.push("Event must have an event name");if(!Z.name)Q.push("Event should have a name");return{valid:X.length===0,errors:X.length>0?X:void 0,warnings:Q.length>0?Q:void 0}}}class zq{conditionConverter=new Gq;actionConverter=new Vq;eventConverter=new _q;getConditionConverter(){return this.conditionConverter}getActionConverter(){return this.actionConverter}getEventConverter(){return this.eventConverter}createContext(Z,X,Q,U){return{nodes:Z,edges:X,currentNode:Q,options:U}}}var Hq=new zq;function DX(Z){let X=Z.data||{};return Hq.getConditionConverter().convert(X,{nodes:[],edges:[]})}function PX(Z){let X=Z.data||{};return Hq.getActionConverter().convert(X,{nodes:[],edges:[]})}function T9(Z,X){let Q=X.options.isCondNode||M1,U=X.nodes.find((L)=>L.id===Z);if(!U||U.type!==E.CONDITION_GROUP)return{conditions:[],operator:TX.AND};let q=U.data.operator||TX.AND,J=[],Y=new Set;function W(L){if(Y.has(L))return;Y.add(L);let V=X.nodes.find((H)=>H.id===L);if(!V||!Q(V)||V.type===E.CONDITION_GROUP)return;let G=DX(V);J.push(G);let _=J0(X,L,[...J1.CONDITION_OUTPUT,D.THEN_OUTPUT]).filter((H)=>{let F=X.nodes.find((z)=>z.id===H.target);return F&&Q(F)});for(let H of _)W(H.target)}let $=J0(X,Z,[D.CONDITION_GROUP_OUTPUT]).filter((L)=>{let V=X.nodes.find((G)=>G.id===L.target);return V&&Q(V)});for(let L of $)W(L.target);return{conditions:J,operator:q}}function J2(Z,X){if(X.options.resolveCondition&&X.options.resolveCondition!==J2)return X.options.resolveCondition(Z,X);if(X.visitedConds.has(Z))return null;X.visitedConds.add(Z);let Q=X.nodes.find((Y)=>Y.id===Z),U=X.options.isCondNode||M1;if(!Q||!U(Q))return null;if(Q.type===E.CONDITION_GROUP){let{conditions:Y,operator:W}=T9(Z,X);if(Y.length===0)return null;if(Y.length===1)return Y[0];return{operator:W,conditions:Y}}let q=DX(Q);if(X.transformers?.condition){let Y=X.transformers.condition(q,Q);if(Y===null)return null;return Y}let J=J0(X,Z,J1.CONDITION_OUTPUT).filter((Y)=>{let W=X.nodes.find(($)=>$.id===Y.target);return W&&U(W)});if(J.length>0){let Y=J.map((W)=>J2(W.target,X)).filter((W)=>W!==null);if(Y.length>0)return{operator:"AND",conditions:[q,...Y]}}return q}function wX(Z,X){let Q=X.options.isCondNode||M1,U,q;function J(Y){let W=X.nodes.find((V)=>V.id===Y);if(!W||!Q(W))return;let $=X.edges.filter((V)=>V.source===Y);for(let V of $){let G=X.nodes.find((_)=>_.id===V.target);if(!G)continue;if(G.type===E.ACTION||G.type===E.ACTION_GROUP||G.type===E.DO)if(G.type===E.DO?G.data?.branchType==="else":V.sourceHandle===D.ELSE_OUTPUT)q=V.target;else U=V.target}let L=J0(X,Y,J1.CONDITION_OUTPUT).filter((V)=>{let G=X.nodes.find((_)=>_.id===V.target);return G&&Q(G)});for(let V of L)J(V.target)}return J(Z),{thenActionId:U,elseActionId:q}}function c2(Z,X){let Q=X.options.isActNode||q1,U=X.nodes.find((V)=>V.id===Z);if(!U||U.type!==E.ACTION_GROUP)return{actions:[],mode:"ALL"};let q=U.data.mode||"ALL",J=[],Y=new Set;function W(V){if(Y.has(V))return;Y.add(V);let G=X.nodes.find((F)=>F.id===V);if(!G||!Q(G)||G.type===E.ACTION_GROUP)return;let _=PX(G);J.push(_);let H=J0(X,V,J1.ACTION_OUTPUT).filter((F)=>{let z=X.nodes.find((B)=>B.id===F.target);return z&&Q(z)});for(let F of H)W(F.target)}let $=J0(X,Z,[D.ACTION_GROUP_OUTPUT,D.DO_OUTPUT,"do-output","action-output","action-group-output"]).filter((V)=>{let G=X.nodes.find((_)=>_.id===V.target);return G&&Q(G)});for(let V of $)W(V.target);let L=J0(X,Z,[D.ACTION_GROUP_CONDITION_OUTPUT,"condition-output",D.ACTION_GROUP_OUTPUT,"action-output",""]).filter((V)=>{let G=X.nodes.find((_)=>_.id===V.target);return G&&(G.type===E.CONDITION||G.type===E.CONDITION_GROUP)});for(let V of L){let G=z0(V.target,X);if(G)J.push(G)}return{actions:J,mode:q}}function z0(Z,X){if(X.options.resolveAction&&X.options.resolveAction!==z0)return X.options.resolveAction(Z,X);let Q=X.nodes.find((Y)=>Y.id===Z);if(!Q)return null;if(Q.type===E.ACTION_GROUP){if(X.visitedActs?.has(Z))return null;X.visitedActs?.add(Z);let{actions:Y,mode:W}=c2(Z,X);if(Y.length===0)return null;return{mode:W,actions:Y}}if(Q.type===E.DO){if(X.visitedActs?.has(Z))return null;X.visitedActs?.add(Z);let Y=AX(Z,X);if(Y.length===0)return null;if(Y.length===1)return Y[0];return{mode:"ALL",actions:Y}}if(Q.type===E.CONDITION||Q.type===E.CONDITION_GROUP){if(X.options.resolveCondition){let Y=X.options.resolveCondition(Z,X);if(Y){let{doBranches:W,elseBranches:$}=o6(Z,X),L=null,V=null;if(W.length>0){let G=W[0],_=AX(G,X);if(_.length>0)L=_.length===1?_[0]:{mode:"ALL",actions:_}}if($.length>0){let G=$[0],_=AX(G,X);if(_.length>0)V=_.length===1?_[0]:{mode:"ALL",actions:_}}if(!L&&!V){let G=wX(Z,X);if(G.thenActionId)L=z0(G.thenActionId,X);if(G.elseActionId)V=z0(G.elseActionId,X)}if(L||V)return{if:Y,do:L??void 0,else:V??void 0}}}}let U=X.options.isActNode||q1;if(!U(Q))return null;if(X.visitedActs?.has(Z))return null;X.visitedActs?.add(Z);let q=PX(Q);if(X.transformers?.action){let Y=X.transformers.action(q,Q);if(Y===null)return null;let W=J0(X,Z,J1.ACTION_OUTPUT).filter(($)=>{let L=X.nodes.find((V)=>V.id===$.target);return L&&U(L)});if(W.length>0){let $=[Y];for(let L of W){let V=z0(L.target,X);if(V)$.push(V)}return{mode:"ALL",actions:$}}return Y}let J=J0(X,Z,J1.ACTION_OUTPUT).filter((Y)=>{let W=X.nodes.find(($)=>$.id===Y.target);return W&&U(W)});if(J.length>0){let Y=[q];for(let W of J){let $=z0(W.target,X);if($)Y.push($)}return{mode:"SEQUENCE",actions:Y}}return q}function AX(Z,X){let Q=X.options.isActNode||q1,U=[],q=J0(X,Z,[D.DO_OUTPUT,D.ELSE_OUTPUT,"do-output","else-output","action-output",""]).filter((J)=>{let Y=X.nodes.find((W)=>W.id===J.target);return Y&&Q(Y)});for(let J of q){let Y=z0(J.target,X);if(Y)U.push(Y)}return U}function o6(Z,X){let Q=($)=>$.type===E.CONDITION||$.type===E.CONDITION_GROUP,U=($)=>$.type===E.DO,q=[],J=[],Y=new Set;function W($){if(Y.has($))return;Y.add($);let L=X.nodes.find((G)=>G.id===$);if(!L)return;if(L.type===E.CONDITION_GROUP){let G=J0(X,$,[D.CONDITION_GROUP_OUTPUT,"cond-output","output",""]);for(let _ of G){let H=X.nodes.find((F)=>F.id===_.target);if(H){if(U(H)){if(k1(H)===E0.ELSE){if(!J.includes(H.id))J.push(H.id)}else if(!q.includes(H.id))q.push(H.id)}else if(Q(H))W(H.id)}}return}let V=X.edges.filter((G)=>G.source===$);for(let G of V){let _=X.nodes.find((H)=>H.id===G.target);if(!_)continue;if(U(_)){if(k1(_)===E0.ELSE){if(!J.includes(_.id))J.push(_.id)}else if(!q.includes(_.id))q.push(_.id)}else if(Q(_))W(_.id)}}return W(Z),{doBranches:q,elseBranches:J}}var Fq;((W)=>{W.MISSING_EVENT_NODE="MISSING_EVENT_NODE";W.MISSING_RULE_ID_OR_EVENT_NAME="MISSING_RULE_ID_OR_EVENT_NAME";W.NO_EVENTS_FOUND="NO_EVENTS_FOUND";W.RULE_ID_REQUIRED="RULE_ID_REQUIRED";W.RULE_ON_EVENT_REQUIRED="RULE_ON_EVENT_REQUIRED";W.RULE_DO_ACTION_REQUIRED="RULE_DO_ACTION_REQUIRED";W.PARSE_FAILED="PARSE_FAILED"})(Fq||={});class Y1 extends Error{code;eventId;constructor(Z,X,Q){super(Z);this.name="GraphParserError",this.code=X,this.eventId=Q}}function qV(Z,X,Q={},U){let q={...Q,resolveCondition:Q.resolveCondition||J2,resolveAction:Q.resolveAction||z0};return{nodes:Z,edges:X,visitedConds:new Set,visitedActs:new Set,options:q,transformers:U}}var Ff=k1,JV=KX;function YV(Z,X,Q){let U=X.options.isCondNode||M1,q=r6,J=X.edges.filter((F)=>F.source===Z).find((F)=>{let z=X.nodes.find((B)=>B.id===F.target);return z&&U(z)}),Y;if(J)Y=J.target;if(!Y)return null;let W=new Set(X.visitedConds);X.visitedConds.clear();let $=J2(Y,X);if(X.visitedConds=W,!$)return null;let{thenActionId:L,elseActionId:V}=SX(Y,X),G=X.edges.filter((F)=>F.source===Z).find((F)=>{let z=X.nodes.find((B)=>B.id===F.target);return z&&(X.options.isActNode?.(z)??q1(z))&&z.type!==E.DO});if(G&&!V)V=G.target;let _=L?z0(L,X):void 0,H=V?z0(V,X):void 0;return{if:$,do:_??void 0,else:H??void 0}}function n6(Z,X,Q){let U=X.options.isActNode||q1,q=[],J=X.edges.filter((W)=>W.source===Z).filter((W)=>{let $=X.nodes.find((L)=>L.id===W.target);return $&&(U($)&&$.type!==E.DO&&$.type!==E.CONDITION&&$.type!==E.CONDITION_GROUP)});for(let W of J){let $=z0(W.target,X);if($)q.push($)}let Y=YV(Z,X,Q);if(Y)q.push(Y);return q}function SX(Z,X){let Q=X.options.isCondNode||M1,U=X.options.isActNode||q1,q=r6,J,Y;function W($){let L=X.nodes.find((_)=>_.id===$);if(!L||!Q(L))return;let V=J0(X,$,[D.THEN_OUTPUT,D.ELSE_OUTPUT,D.CONDITION_OUTPUT,D.CONDITION_OUTPUT_LEGACY,D.DO_OUTPUT,""]);for(let _ of V){let H=X.nodes.find((F)=>F.id===_.target);if(!H)continue;if(q(H)){let F=J0(X,H.id,[D.DO_OUTPUT,""]).filter((w)=>{let R=X.nodes.find((S)=>S.id===w.target);return R&&U(R)}),z=k1(H);for(let w of F)if(z===E0.ELSE)Y=w.target;else J=w.target;let B=J0(X,H.id,[D.DO_CONDITION_OUTPUT]),K=B.find((w)=>{let R=X.nodes.find((S)=>S.id===w.target);return R&&Q(R)}),P=B.find((w)=>{let R=X.nodes.find((S)=>S.id===w.target);return R&&U(R)});if(P&&!Y)Y=P.target;continue}if(H.type===E.ACTION_GROUP){J=_.target;continue}if(!U(H))continue;if(_.sourceHandle===D.ELSE_OUTPUT)Y=_.target;else J=_.target}let G=J0(X,$,J1.CONDITION_OUTPUT).filter((_)=>{let H=X.nodes.find((F)=>F.id===_.target);return H&&Q(H)});for(let _ of G)W(_.target)}return W(Z),{thenActionId:J,elseActionId:Y}}function jX(Z,X,Q={},U){let q=new CX;if(Q.optimizeOptions)q.withOptimizeOptions(Q.optimizeOptions);let J=Q.isEventNode||R9,Y=Q.isCondNode||M1,W=Q.isActNode||q1,$=r6,L=Q.extractEventData||JV,V=Z.find((R)=>J(R));if(!V)throw new Y1("Missing Event Trigger node","MISSING_EVENT_NODE");let G=L(V);if(!G.id||!G.on)throw new Y1("Rule ID and Event Name are required","MISSING_RULE_ID_OR_EVENT_NAME",G.id);if(q.id(G.id).on(G.on),G.name)q.name(G.name);if(G.description)q.description(G.description);if(G.priority!==void 0)q.priority(Number(G.priority));if(G.enabled!==void 0)q.enabled(!!G.enabled);if(G.cooldown!==void 0)q.cooldown(Number(G.cooldown));if(G.tags)q.tags(G.tags);let _=qV(Z,X,Q,U),H=X.filter((R)=>R.source===V.id),F=[],z=[],B=[],K=[];for(let R of H){let S=_.nodes.find((N)=>N.id===R.target);if(!S)continue;if(S.type===E.CONDITION_GROUP)F.push(R.target);else if(Y(S))z.push(R.target);else if(S.type===E.ACTION_GROUP)B.push(R.target);else if(W(S))K.push(R.target)}for(let R of F){let{conditions:S,operator:N}=T9(R,_);if(S.length>0){let y={operator:N,conditions:S};q.withIf(y);let A=X.filter((r)=>r.source===R),u=A.filter((r)=>{let p=_.nodes.find((i)=>i.id===r.target);return p&&Y(p)&&(r.sourceHandle?.startsWith("cond")||r.sourceHandle===D.CONDITION_GROUP_OUTPUT)}).map((r)=>r.target),o=A.filter((r)=>{let p=_.nodes.find((i)=>i.id===r.target);return p&&W(p)}).map((r)=>r.target),t=null,x=null;for(let r of o){let p=_.nodes.find((i)=>i.id===r);if(!p)continue;if($(p)){let i=n6(p.id,_,R),B0=k1(p);if(i.length>0){let T1=i.length===1?i[0]:{mode:"ALL",actions:i};if(B0===E0.ELSE)x=T1;else t=T1}}else{let i=z0(r,_);if(i)t=i}}if(!t||!x)for(let r of u){let p=SX(r,_),i=p.thenActionId?z0(p.thenActionId,_):null,B0=p.elseActionId?z0(p.elseActionId,_):null,{doBranches:T1,elseBranches:W6}=o6(r,_),s1=[];for(let VZ of T1){let _Z=n6(VZ,_,r);s1.push(..._Z)}if(s1.length>0&&!i)i=s1.length===1?s1[0]:{mode:"ALL",actions:s1};let $6=[];for(let VZ of W6){let _Z=n6(VZ,_,r);$6.push(..._Z)}if($6.length>0&&!B0)B0=$6.length===1?$6[0]:{mode:"ALL",actions:$6};if(i&&!t)t=i;if(B0&&!x)x=B0}if(t)q.withDo(t);if(x)q.elseRule(x)}}if(z.length>0&&F.length===0){let R=[],S,N;for(let p of z){let i=J2(p,_);if(i)R.push(i);let B0=SX(p,_);if(B0.thenActionId)S=B0.thenActionId;if(B0.elseActionId)N=B0.elseActionId}if(R.length===1)q.withIf(R[0]);else if(R.length>1)q.withIf({operator:"AND",conditions:R});let y=z[0];if(!y)return q;let{doBranches:A,elseBranches:u}=o6(y,_),o=[];for(let p of A){let i=n6(p,_,y);o.push(...i)}let t=o.length===1?o[0]:o.length>1?{mode:"ALL",actions:o}:S?z0(S,_):null,x=[];for(let p of u){let i=n6(p,_,y);x.push(...i)}let r=x.length===1?x[0]:x.length>1?{mode:"ALL",actions:x}:N?z0(N,_):null;if(t)q.withDo(t);if(r)q.elseRule(r);if(!S&&!o.length)for(let p of z){let i=J0(_,p,[D.THEN_OUTPUT,D.CONDITION_OUTPUT,"condition-output","then-output","output",""]).filter((B0)=>{return _.nodes.find((W6)=>W6.id===B0.target)?.type===E.ACTION_GROUP});for(let B0 of i){let{actions:T1,mode:W6}=c2(B0.target,_);if(T1.length>0){let s1={mode:W6,actions:T1};q.withDo(s1);break}}}}let P=new Set;if(z.length>0&&F.length===0)for(let R of z){let S=J0(_,R,[D.THEN_OUTPUT,D.CONDITION_OUTPUT,"condition-output","then-output","output",""]).filter((N)=>{return _.nodes.find((A)=>A.id===N.target)?.type===E.ACTION_GROUP});for(let N of S)P.add(N.target)}let w=B.filter((R)=>!P.has(R));if(w.length>0)for(let R of w)if(J0(_,R,[D.ACTION_GROUP_CONDITION_OUTPUT,"condition-output"]).filter((N)=>{let y=_.nodes.find((A)=>A.id===N.target);return y&&Y(y)}).length>0){let{actions:N,mode:y}=c2(R,_);if(N.length>0){let A={mode:y,actions:N};q.withDo(A)}}else{let{actions:N,mode:y}=c2(R,_);if(N.length>0)q.withDo({mode:y,actions:N})}if(K.length>0&&z.length===0&&F.length===0)for(let R of K){let S=z0(R,_);if(S)q.withDo(S)}return q}function Bq(Z,X,Q={},U){let q=Q.isEventNode||R9,J=Z.filter(($)=>q($));if(J.length===0)return{rules:[],errors:[new Y1("No Event nodes found in the graph","NO_EVENTS_FOUND")]};let Y=[],W=[];for(let $ of J)try{let L=$.id,V=new Set([L]),G=[L];while(G.length>0){let B=G.shift(),K=X.filter((P)=>P.source===B);for(let P of K)if(!V.has(P.target))V.add(P.target),G.push(P.target)}let _=Z.filter((B)=>V.has(B.id)),H=X.filter((B)=>V.has(B.source)&&V.has(B.target)),z=jX(_,H,Q,U).build();Y.push(z)}catch(L){if(L instanceof Y1){if(!L.eventId)L.eventId=$.id;W.push(L)}else{let V=L instanceof Error?L.message:String(L);W.push(new Y1(`Failed to parse rule for event ${$.id}: ${V}`,"PARSE_FAILED",$.id))}}return{rules:Y,errors:W}}class CX{rule={enabled:!0,priority:0};optimizeOptions={};static fromGraph(Z,X,Q,U){return jX(Z,X,Q,U)}static fromGraphMultiple(Z,X,Q,U){return Bq(Z,X,Q,U)}withId(Z){return this.rule.id=Z,this}withName(Z){return this.rule.name=Z,this}withDescription(Z){return this.rule.description=Z,this}withPriority(Z){return this.rule.priority=Z,this}withCooldown(Z){return this.rule.cooldown=Z,this}withTags(Z){return this.rule.tags=Z,this}withEnabled(Z){return this.rule.enabled=Z,this}withOptimizeOptions(Z){return this.optimizeOptions=Z,this}id(Z){return this.withId(Z)}name(Z){return this.withName(Z)}description(Z){return this.withDescription(Z)}priority(Z){return this.withPriority(Z)}enabled(Z){return this.withEnabled(Z)}cooldown(Z){return this.withCooldown(Z)}tags(Z){return this.withTags(Z)}optimize(Z){return this.withOptimizeOptions(Z)}on(Z){return this.rule.on=Z,this}if(Z,X,Q){if(!this.rule.if)this.rule.if={field:Z,operator:X,value:Q};else if(Array.isArray(this.rule.if))this.rule.if.push({field:Z,operator:X,value:Q});else this.rule.if=[this.rule.if,{field:Z,operator:X,value:Q}];return this}ifComplex(Z){let X=new y1,Q=Z(X).build();return this.rule.if=Q,this}withIf(Z){return this.rule.if=Z,this}do(Z,X,Q){let U={type:Z,params:X,...Q};if(!this.rule.do)this.rule.do=U;else if(Array.isArray(this.rule.do))this.rule.do.push(U);else if(this.rule.do&&typeof this.rule.do==="object"&&"actions"in this.rule.do)this.rule.do.actions.push(U);else this.rule.do=[this.rule.do,U];return this}doComplex(Z){let X=new a6,Q=Z(X).build();return this.rule.do=Q,this}withDo(Z){return this.rule.do=Z,this}elseRule(Z){return this.rule.else=Z,this}when(Z,X,Q){return new O9(this,Z,X,Q)}whenComplex(Z){let X=new y1,Q=Z(X).build();return new O9(this,Q)}then(Z,X,Q){return this.do(Z,X,Q)}ifAction(Z,X,Q){let U=this.rule.do;if(!U)throw Error("Cannot add condition: no action defined. Use do() or then() first.");let q=(J)=>({...J,if:{field:Z,operator:X,value:Q}});if(Array.isArray(U)){let J=U.length-1,Y=U[J];if(Y&&"actions"in Y){let W=Y.actions,$=W.length-1;if($>=0)W[$]=q(W[$])}else if(Y)U[J]=q(Y)}else if(U&&"actions"in U){let J=U.actions,Y=J.length-1;if(Y>=0)J[Y]=q(J[Y])}else if(U)this.rule.do=q(U);return this}thenAction(Z){let X=this.rule.do;if(!X)throw Error("Cannot add then: no action defined. Use do() or then() first.");let Q=(U)=>({...U,then:Z});if(Array.isArray(X)){let U=X.length-1,q=X[U];if(q&&"actions"in q){let J=q.actions,Y=J.length-1;if(Y>=0)J[Y]=Q(J[Y])}else if(q)X[U]=Q(q)}else if(X&&"actions"in X){let U=X.actions,q=U.length-1;if(q>=0)U[q]=Q(U[q])}else if(X)this.rule.do=Q(X);return this}else(Z){let X=this.rule.do;if(!X)throw Error("Cannot add else: no action defined. Use do() or then() first.");let Q=(U)=>({...U,else:Z});if(Array.isArray(X)){let U=X.length-1,q=X[U];if(q&&"actions"in q){let J=q.actions,Y=J.length-1;if(Y>=0)J[Y]=Q(J[Y])}else if(q)X[U]=Q(q)}else if(X&&"actions"in X){let U=X.actions,q=U.length-1;if(q>=0)U[q]=Q(U[q])}else if(X)this.rule.do=[Q(X)];return this}elseAction(Z){return this.else(Z)}build(){if(!this.rule.id)throw new Y1("Rule ID is required","RULE_ID_REQUIRED");if(!this.rule.on)throw new Y1("Rule 'on' event is required","RULE_ON_EVENT_REQUIRED",this.rule.id);if(!this.rule.do)throw new Y1("Rule 'do' action is required","RULE_DO_ACTION_REQUIRED",this.rule.id);if(this.rule.if)this.rule.if=i6(this.rule.if,this.optimizeOptions);if(this.rule.do){let Z=s6(this.rule.do,this.optimizeOptions);this.rule.do=Z?Z:this.rule.do}return this.rule}}class O9{parent;condition;thenActions;elseActions;constructor(Z,X,Q,U){if(this.parent=Z,typeof X==="string")this.condition={field:X,operator:Q,value:U};else this.condition=X}then(Z,X,Q){if(typeof Z==="string")this.thenActions={type:Z,params:X,...Q};else this.thenActions=Z;return this}do(Z,X,Q){return this.then(Z,X,Q)}done(){return this.build()}else(Z,X,Q){if(typeof Z==="string")this.elseActions={type:Z,params:X,...Q};else this.elseActions=Z;return this.build()}build(){let Z={if:this.condition};if(this.thenActions)Z.then=this.thenActions;if(this.elseActions)Z.else=this.elseActions;let X=this.parent.rule.do;if(!X)this.parent.rule.do=Z;else if(Array.isArray(X))X.push(Z);else this.parent.rule.do=[X,Z];return this.parent}}var u3=t3(m3(),1);class YT{static toYaml(Z){let X=Array.isArray(Z)?Z:[Z];return u3.default.stringify(X)}static toJson(Z,X=!0){let Q=Array.isArray(Z)?Z:[Z];return JSON.stringify(Q,null,X?2:0)}static cleanRule(Z){let X={};if(X.id=Z.id,Z.name)X.name=Z.name;if(Z.description)X.description=Z.description;if(X.on=Z.on,Z.priority!==void 0&&Z.priority!==0)X.priority=Z.priority;if(Z.enabled!==void 0&&Z.enabled!==!0)X.enabled=Z.enabled;if(Z.cooldown!==void 0&&Z.cooldown!==0)X.cooldown=Z.cooldown;if(Z.tags&&Z.tags.length>0)X.tags=Z.tags;if(Z.if)X.if=Z.if;if(X.do=Z.do,Z.else)X.else=Z.else;return X}static toCleanYaml(Z){let Q=(Array.isArray(Z)?Z:[Z]).map((U)=>this.cleanRule(U));return u3.default.stringify(Q,{indent:2,lineWidth:0})}static toCleanJson(Z,X=!0){let U=(Array.isArray(Z)?Z:[Z]).map((q)=>this.cleanRule(q));return JSON.stringify(U,null,X?2:0)}static async saveToFile(Z,X){let Q=this.toYaml(Z);if(typeof process<"u"&&process.versions&&process.versions.node){let U=await import("fs/promises"),J=(await import("path")).dirname(X);await U.mkdir(J,{recursive:!0}),await U.writeFile(X,Q,"utf8")}else throw Error("saveToFile is only supported in Node.js/Bun environments")}}var GZ=t3(m3(),1);var WT=["EQ","==","NEQ","!="],$T=["GT",">","GTE",">=","LT","<","LTE","<="],LT=["IN","NOT_IN","RANGE"],GT=["CONTAINS","NOT_CONTAINS","STARTS_WITH","ENDS_WITH"];var AY=[...WT,...$T,...LT,...GT,"IS_EMPTY","HAS_KEY","MATCHES","SINCE","AFTER","BEFORE","UNTIL","RANGE"],SY=["AND","OR"],jY=["ALL","EITHER","SEQUENCE"];function D0(Z){return typeof Z==="object"&&Z!==null&&!Array.isArray(Z)}function VT(Z){return typeof Z==="string"&&Z.length>0}function _T(Z){return typeof Z==="number"&&!isNaN(Z)}function zT(Z){return typeof Z==="boolean"}function L1(Z){return"operator"in Z&&"conditions"in Z&&(Z.operator==="AND"||Z.operator==="OR")}function c1(Z){return"field"in Z&&"operator"in Z}function p3(Z){return typeof Z==="object"&&Z!==null&&"mode"in Z&&"actions"in Z&&Array.isArray(Z.actions)}function $Z(Z){return typeof Z==="object"&&Z!==null&&"if"in Z}function HT(Z){return typeof Z==="object"&&Z!==null&&"type"in Z}function l3(Z){return typeof Z==="string"&&jY.includes(Z)}function FT(Z){return typeof Z==="string"&&SY.includes(Z)}function BT(Z){return typeof Z==="string"&&DT(AY,Z)}function D4(Z){return Z.type||"log"}function P4(Z){if(!Z.params)return"{}";return typeof Z.params==="string"?Z.params:JSON.stringify(Z.params)}function z2(Z){if(c1(Z))return Z.field||"data";return"data"}function H2(Z){if(c1(Z))return Z.operator||"EQ";if(L1(Z))return Z.operator==="OR"?"OR":"AND";return"EQ"}function F2(Z){if(c1(Z))return Z.value;return}function d3(Z=0){let X=Z;return()=>`node_${X++}`}function c3(){let Z=0;return()=>`edge_${Date.now()}_${Z++}`}function i3(Z=100,X=100,Q=300,U=150){return(q,J,Y)=>({x:Z+q*Q,y:X+J*U-Y*U/2})}function U6(Z){if(Z===void 0)return[];if(Array.isArray(Z))return Z;return[Z]}function MT(Z){if(!Z)return[];if(Array.isArray(Z))return Z;return[Z]}function OT(Z){if(!Z)return[];if(Array.isArray(Z))return Z;return[Z]}function RT(Z){return Z.replace(/\.(ya?ml)$/i,"")}function TT(Z){return{"==":"EQ","!=":"NEQ",">":"GT",">=":"GTE","<":"LT","<=":"LTE"}[Z]||Z}function KT(Z,X){if(!(X in Z)||Z[X]===void 0||Z[X]===null)throw Error(`Missing required field: ${X}`)}function DT(Z,X){return Z.includes(X)}function PT(Z,X,Q){let U=typeof Z;if(U!==X)throw Error(`Field "${Q}" expected type "${X}", got "${U}"`)}function wT(Z,X,Q){if(typeof Z!=="string"||!X.includes(Z))throw Error(`Field "${Q}" must be one of: ${X.join(", ")}`)}function w4(Z,X,Q,U){if(!D0(Z))throw Error(`Rule at index ${X} is not an object`);let q={...Z};if("actions"in q&&!("do"in q))q.do=q.actions,delete q.actions;if(!("enabled"in q))q.enabled=!0;if(!("priority"in q))q.priority=0;if(!q.id){if(U===!0&&Q){let J=Q.replace(/\.(ya?ml)$/i,"");q.id=J}else if(typeof U==="string")q.id=`${U}-${X}`}if("if"in q&&q.if!==void 0)q.if=LZ(q.if);if("do"in q&&q.do!==void 0)q.do=EY(q.do);if("else"in q&&q.else!==void 0)q.else=bY(q.else);return q}function LZ(Z){if(!Z)return[];if(D0(Z))return CY(Z);if(Array.isArray(Z))return Z.map((X,Q)=>{if(D0(X))return CY(X);throw Error(`Invalid condition at index ${Q}: expected object`)});throw Error("Invalid condition format: expected object or array")}function CY(Z){let X="operator"in Z&&(Z.operator==="AND"||Z.operator==="OR"),Q="conditions"in Z&&Array.isArray(Z.conditions);if(X&&Q){let Y=Z.operator,W=LZ(Z.conditions);return{operator:Y,conditions:Array.isArray(W)?W:[W]}}let{field:U,operator:q,value:J}=Z;return{field:U||"data",operator:q||"EQ",value:J}}function EY(Z){if(!Z)return[];if(D0(Z)&&"mode"in Z&&"actions"in Z)return B2(Z);if(D0(Z))return i1(Z);if(Array.isArray(Z))return Z.map((X,Q)=>{if(D0(X)){if("mode"in X&&"actions"in X)return B2(X);return i1(X)}throw Error(`Invalid action at index ${Q}: expected object`)});throw Error("Invalid do field format: expected object or array")}function bY(Z){if(!Z)return[];if(D0(Z)&&"mode"in Z&&"actions"in Z)return B2(Z);if(D0(Z))return i1(Z);if(Array.isArray(Z))return Z.map((X,Q)=>{if(D0(X)){if("mode"in X&&"actions"in X)return B2(X);return i1(X)}throw Error(`Invalid action at index ${Q}: expected object`)});throw Error("Invalid else field format: expected object or array")}function i1(Z){let X={...Z};if("do"in X&&!("then"in X))X.then=X.do,delete X.do;if("if"in X&&X.if!==void 0){let U={if:LZ(X.if)};if("then"in X&&X.then!==void 0)U.then=NY(X.then);if("else"in X&&X.else!==void 0)U.else=NY(X.else);if("break"in X)U.break=X.break;if("continue"in X)U.continue=X.continue;return U}let Q={};if("type"in X)Q.type=X.type;if("params"in X)Q.params=X.params;if("run"in X)Q.run=X.run;if("delay"in X)Q.delay=X.delay;if("probability"in X)Q.probability=X.probability;if("name"in X)Q.name=X.name;if("break"in X)Q.break=X.break;if("continue"in X)Q.continue=X.continue;return Q}function NY(Z){if(!Z)return[];if(D0(Z)&&"mode"in Z&&"actions"in Z)return B2(Z);if(D0(Z))return i1(Z);if(Array.isArray(Z)){let X=[];for(let Q=0;Q<Z.length;Q++){let U=Z[Q];if(D0(U))if("mode"in U&&"actions"in U){let q=B2(U);for(let J of q.actions)X.push(J)}else X.push(i1(U));else throw Error(`Invalid action in branch at index ${Q}: expected object`)}return X}throw Error("Invalid action branch format: expected object or array")}function B2(Z){let X=Z.mode||"ALL";if(!l3(X))throw Error(`Invalid execution mode: ${X}`);let Q=Z.actions;if(!Q||!Array.isArray(Q))throw Error("Action group must have an actions array");let U=Q.map((q,J)=>{if(D0(q)){if("mode"in q&&"actions"in q)return B2(q);return i1(q)}throw Error(`Invalid action in group at index ${J}: expected object`)});return{mode:X,actions:U}}function AT(Z,X,Q,U){let q=w4(Z,X,Q,U);if(!q.on)throw Error(`Rule at index ${X} missing required field: on`);return q}function ST(Z){let X=[];if(!Z.on)X.push("Missing required field: on");if(!Z.do&&Z.do!=="")X.push("Missing required field: do");if(Z.else&&!Z.if)X.push('Field "else" requires "if" to be present');return{valid:X.length===0,errors:X}}function IY(Z,X,Q){return{id:X,type:E.EVENT,position:Q,data:{id:Z.id||"rule-1",name:Z.name||"Imported Rule",description:Z.description||"",event:Z.on||"",priority:Z.priority||0,enabled:Z.enabled!==!1,cooldown:Z.cooldown,tags:Z.tags}}}function s3(Z,X,Q){return{id:X,type:E.CONDITION_GROUP,position:Q,data:{operator:Z}}}function q6(Z,X,Q,U,q){return{id:U,type:E.CONDITION,position:q,data:{field:Z||"data",operator:X||"EQ",value:Q??""}}}function J6(Z,X,Q){return{id:X,type:E.DO,position:Q,data:{branchType:Z}}}function fY(Z,X,Q){let U,q,J,Y,W,$,L;if($Z(Z)){let G=Z.if;if(G){let z=(Array.isArray(G)?G:[G])[0];if(z&&c1(z))U=z.field,q=z.operator,J=z.value!==void 0?typeof z.value==="string"?z.value:JSON.stringify(z.value):void 0}let _=Z.then;if(_){let F=Array.isArray(_)?_:[_];if(F[0])Y=D4(F[0]),W=P4(F[0])}let H=Z.else;if(H){let F=Array.isArray(H)?H:[H];if(F[0])$=D4(F[0]),L=P4(F[0])}}let V={type:D4(Z),params:P4(Z)};if(U)V.conditionField=U;if(q)V.conditionOperator=q;if(J!==void 0)V.conditionValue=J;if(Y)V.thenType=Y;if(W)V.thenParams=W;if($)V.elseType=$;if(L)V.elseParams=L;return{id:X,type:E.ACTION,position:Q,data:V}}function yY(Z,X,Q){return{id:X,type:E.ACTION_GROUP,position:Q,data:{mode:Z||"SEQUENCE"}}}function F0(Z,X,Q,U,q){return{id:q?q():`edge_${Z}_${X}_${Date.now()}`,source:Z,target:X,sourceHandle:Q??null,targetHandle:U??null}}function jT(Z,X={}){let Q=[],U=[],q=[];if(!Z.id)q.push("Missing required field: id");if(!Z.on)q.push("Missing required field: on (event trigger)");if(!Z.do&&Z.do!=="")q.push("Missing required field: do (actions)");if(q.length>0)return{nodes:[],edges:[],valid:!1,errors:q};let J=X.startNodeId||"event-node",Y=d3(0),W=c3(),$=i3();try{let L=IY(Z,J,X.startPosition||{x:100,y:300});Q.push(L);let V=U6(Z.if);if(V.length>0){let{conditionNodes:G,groupNodeId:_}=CT(V,Q,U,L.id,Y,$),H=U6(Z.do);if(H.length>0){let z=G.length>0?G[G.length-1].id:_||L.id,K=Q.find((S)=>S.id===z)?.position||{x:300,y:300},P=Y(),w=J6("do",P,{x:K.x+300,y:K.y-100});Q.push(w);let R=null;if(z===L.id)R=D.EVENT_OUTPUT;else if(z===_)R=D.CONDITION_GROUP_OUTPUT;else R=D.CONDITION_OUTPUT;U.push(F0(z,P,R,D.DO_INPUT,W)),Y6(H,Q,U,P,Y,W,(S,N,y)=>({x:w.position.x+300,y:w.position.y+N*150}),"do")}let F=U6(Z.else);if(F.length>0){let z=G.length>0?G[G.length-1].id:_||L.id,K=Q.find((S)=>S.id===z)?.position||{x:300,y:300},P=Y(),w=J6("else",P,{x:K.x+300,y:K.y+100});Q.push(w);let R=null;if(z===L.id)R=D.EVENT_OUTPUT;else if(z===_)R=D.CONDITION_GROUP_OUTPUT;else R=D.CONDITION_OUTPUT;U.push(F0(z,P,R,D.DO_INPUT,W)),Y6(F,Q,U,P,Y,W,(S,N,y)=>({x:w.position.x+300,y:w.position.y+N*150}),"else")}}else{let G=U6(Z.do);if(G.length>0){let _=Y(),H=L.position,F=J6("do",_,{x:H.x+300,y:H.y});Q.push(F),U.push(F0(L.id,_,D.EVENT_OUTPUT,D.DO_INPUT,W)),Y6(G,Q,U,_,Y,W,(z,B,K)=>({x:F.position.x+300,y:F.position.y+B*150}),"do")}}return{nodes:Q,edges:U,valid:!0,errors:[]}}catch(L){let V=L instanceof Error?L.message:"Unknown error during conversion";return q.push(V),{nodes:Q,edges:U,valid:!1,errors:q}}}function CT(Z,X,Q,U,q,J){let Y=[],W,$=Z.length>1,L=Z.some(L1);if($||L){W=q();let V="AND",G=Z.find(L1);if(G&&L1(G))V=G.operator;let _=s3(V,W,J(1,0,1));X.push(_),Q.push(F0(U,W,null,D.CONDITION_GROUP_INPUT,void 0));let H=null;Z.forEach((F,z)=>{let B,K;if(L1(F)){if(F.conditions)F.conditions.forEach((P,w)=>{if(L1(P))return;if(B=q(),K=q6(z2(P),H2(P),F2(P),B,J(2,z*2+w,Z.length*2)),X.push(K),Y.push(K),H)Q.push(F0(H,B,D.CONDITION_OUTPUT,D.CONDITION_INPUT,void 0));else Q.push(F0(W,B,D.CONDITION_GROUP_OUTPUT,D.CONDITION_INPUT,void 0));H=B})}else{if(B=q(),K=q6(z2(F),H2(F),F2(F),B,J(2,z,Z.length)),X.push(K),Y.push(K),H)Q.push(F0(H,B,D.CONDITION_OUTPUT,D.CONDITION_INPUT,void 0));else Q.push(F0(W,B,D.CONDITION_GROUP_OUTPUT,D.CONDITION_INPUT,void 0));H=B}})}else{let V=q(),G=q6(z2(Z[0]),H2(Z[0]),F2(Z[0]),V,J(1,0,1));X.push(G),Y.push(G),Q.push(F0(U,V,null,D.CONDITION_INPUT,void 0))}return{conditionNodes:Y,groupNodeId:W}}function Y6(Z,X,Q,U,q,J,Y,W){Z.forEach(($,L)=>{if(p3($)){let z=q(),B=X.find((R)=>R.id===U)?.position||{x:100,y:100},K=yY($.mode,z,{x:B.x+300,y:B.y+L*75});X.push(K);let P=X.find((R)=>R.id===U),w;if(P?.type===E.EVENT)w=D.EVENT_OUTPUT;else if(P?.type===E.CONDITION)w=D.CONDITION_OUTPUT;else if(P?.type===E.CONDITION_GROUP)w=D.CONDITION_GROUP_OUTPUT;else if(P?.type===E.ACTION_GROUP)w=D.ACTION_GROUP_OUTPUT;else if(P?.type===E.DO)w=D.DO_OUTPUT;else w=W===E0.ELSE?D.ELSE_OUTPUT:D.THEN_OUTPUT;Q.push(F0(U,z,w,D.ACTION_GROUP_INPUT,J)),Y6($.actions,X,Q,z,q,J,Y,W);return}if($Z($)){let B=$.if,K=Array.isArray(B)?B[0]:B;if(K){let P=X.find((A)=>A.id===U),w;if(P?.type===E.EVENT)w=D.EVENT_OUTPUT;else if(P?.type===E.ACTION_GROUP)w=D.ACTION_GROUP_CONDITION_OUTPUT;else if(P?.type===E.CONDITION)w=D.CONDITION_OUTPUT;else if(P?.type===E.DO)w=D.DO_CONDITION_OUTPUT;else w=D.CONDITION_OUTPUT;let R,S=Y(2,L,Z.length);if(L1(K)){let A=q(),u=K.operator||"AND",o=s3(u,A,{x:S.x+300,y:S.y-75});X.push(o),Q.push(F0(U,A,w,D.CONDITION_GROUP_INPUT,J));let t=null;if(K.conditions)K.conditions.forEach((x,r)=>{if(L1(x))return;let p=q(),i=q6(z2(x),H2(x),F2(x),p,{x:S.x+600,y:S.y+r*100});if(X.push(i),t)Q.push(F0(t,p,D.CONDITION_OUTPUT,D.CONDITION_INPUT,J));else Q.push(F0(A,p,D.CONDITION_GROUP_OUTPUT,D.CONDITION_INPUT,J));t=p});R=t||A}else if(c1(K)){let A=q(),u=q6(z2(K),H2(K),F2(K),A,{x:S.x+300,y:S.y});X.push(u),Q.push(F0(U,A,w,D.CONDITION_INPUT,J)),R=A}else return;let N=$.then;if(N){let A=q(),u=X.find((p)=>p.id===R),o=J6("do",A,{x:(u?.position.x||0)+300,y:(u?.position.y||0)-100});X.push(o);let t=u?.type===E.CONDITION_GROUP?D.CONDITION_GROUP_OUTPUT:D.CONDITION_OUTPUT;Q.push(F0(R,A,t,D.DO_INPUT,J));let x=Array.isArray(N)?N:[N];Y6(x,X,Q,A,q,J,(p,i,B0)=>{return{x:o.position.x+300,y:o.position.y-i*150}},"do")}let y=$.else;if(y){let A=q(),u=X.find((p)=>p.id===R),o=J6("else",A,{x:(u?.position.x||0)+300,y:(u?.position.y||0)+100});X.push(o);let t=u?.type===E.CONDITION_GROUP?D.CONDITION_GROUP_OUTPUT:D.CONDITION_OUTPUT;Q.push(F0(R,A,t,D.DO_INPUT,J));let x=Array.isArray(y)?y:[y];Y6(x,X,Q,A,q,J,(p,i,B0)=>{return{x:o.position.x+300,y:o.position.y+i*150}},"else")}}return}let V=q(),G=X.find((z)=>z.id===U)?.position||{x:700,y:100},_=fY($,V,{x:G.x+300,y:G.y+L*150});X.push(_);let H=X.find((z)=>z.id===U),F;if(H?.type===E.EVENT)F=D.EVENT_OUTPUT;else if(H?.type===E.CONDITION)F=D.CONDITION_OUTPUT;else if(H?.type===E.CONDITION_GROUP)F=D.CONDITION_GROUP_OUTPUT;else if(H?.type===E.ACTION_GROUP)F=D.ACTION_GROUP_OUTPUT;else if(H?.type===E.DO)F=D.DO_OUTPUT;else F=D.CONDITION_OUTPUT;Q.push(F0(U,V,F,D.ACTION_INPUT,J))})}function kY(Z,X={}){let{autoId:Q=!1,filename:U,throwOnError:q=!1,multiDocument:J=!0}=X,Y=[],W=[];try{let L;if(J){let G=GZ.parseAllDocuments(Z);for(let _ of G)if(_.errors&&_.errors.length>0){let H=_.errors.map((F)=>F.message).join(", ");throw Error(`YAML syntax error: ${H}`)}L=G.map((_)=>_.toJS())}else{let G=GZ.parse(Z);L=Array.isArray(G)?[G]:[G]}let V=[];L.forEach((G)=>{if(Array.isArray(G))V.push(...G);else V.push(G)}),V.forEach((G,_)=>{try{let H;if(Q&&!U)H={...w4(G,_),id:`rule-${_}`};else H=w4(G,_,U,Q);let F=OX.validate(H);if(F.valid)W.push(F.rule);else Y.push({index:_,message:`Validation failed for rule at index ${_}`,issues:F.issues.map((z)=>({path:z.path,message:z.message,suggestion:z.suggestion}))})}catch(H){let F=H instanceof Error?H.message:`Unknown error at index ${_}`;Y.push({index:_,message:F})}})}catch(L){let V=L instanceof Error?L.message:"Unknown parsing error";Y.push({index:-1,message:`Failed to parse YAML: ${V}`})}let $={rules:W,errors:Y,valid:Y.length===0&&W.length>0};if(q&&!$.valid){let L=$.errors.map((V)=>{let G=`Rule ${V.index}: ${V.message}`;if(V.issues)G+=`
185
185
  Issues:
186
186
  `+V.issues.map((_)=>` - [${_.path}] ${_.message}`).join(`
187
187
  `);return G}).join(`
@@ -194,6 +194,6 @@ conditions:
194
194
  conditions:
195
195
  - field: data.x
196
196
  operator: EQ
197
- value: 1`]}},jk={field:{description:"The field path to check (e.g., `data.amount`, `event.user.id`)",values:"String path using dot notation"},operator:{description:"The comparison operator to use",values:"One of: EQ, ==, NEQ, !=, GT, >, GTE, >=, LT, <, LTE, <=, IN, NOT_IN, CONTAINS, NOT_CONTAINS, STARTS_WITH, ENDS_WITH, IS_EMPTY, IS_NULL, HAS_KEY, MATCHES, RANGE, SINCE, AFTER, BEFORE, UNTIL"},value:{description:"The value to compare against (type depends on operator)",values:"Varies by operator - see operator documentation for details"},conditions:{description:"Array of sub-conditions for AND/OR groups",values:"Array of condition objects"}},Ck={type:{description:"The type of action to perform",values:"String action type (e.g., `log`, `execute`, `notify`, `FORWARD`, `EMIT_EVENT`)"},params:{description:"Parameters for the action (varies by action type)",values:"Object with action-specific parameters"},delay:{description:"Delay in milliseconds before executing this action",values:"Non-negative integer (milliseconds)"},probability:{description:"Probability of executing this action (0.0 to 1.0)"},mode:{description:"Execution mode for action groups",values:"ALL (execute all), SEQUENCE (execute in order), or EITHER (execute one randomly)"},actions:{description:"Array of sub-actions for action groups",values:"Array of action objects"},then:{description:"Actions to execute when condition is true",values:"Action object or array of actions"},else:{description:"Actions to execute when condition is false",values:"Action object or array of actions"}},Nk={log:{description:"Prints a message to the engine console for debugging",params:["message: string (supports interpolation)"]},math:{description:`Expression to evaluate (e.g. "1 + 2" or "'Hi ' + data.user")`,params:[`expression: string (e.g. "1 + 2" or "'Hello ' + data.name")`]},execute:{description:"Runs a shell command on the host (Node.js only)",params:["command: string","safe: boolean"]},notify:{description:"Sends a notification to a specified target",params:["message: string","target: string"]}};export{eG as vars,ST as validateRule,wT as validateFieldValue,PT as validateFieldType,jT as triggerRuleToNodes,u0 as triggerEmitter,H9 as ruleEvents,KT as requireField,kY as parseYamlRules,_k as parseYamlRuleStrict,Vk as parseYamlRule,Bq as parseGraphToRules,jX as parseGraph,i6 as optimizeCondition,s6 as optimizeAction,AT as normalizeRuleAdvanced,w4 as normalizeRule,TT as normalizeOperator,bY as normalizeElseField,EY as normalizeDoField,RT as normalizeConditionsUtils,LZ as normalizeConditions,MT as normalizeActions,i1 as normalizeAction,_T as isValidNumber,l3 as isValidExecutionMode,FT as isValidConditionOperator,BT as isValidComparisonOperator,d1 as isSimpleCondition,HT as isSimpleAction,D0 as isObject,VT as isNonEmptyString,L1 as isConditionGroup,zT as isBoolean,p3 as isActionGroup,$Z as hasConditionalExecution,F2 as getConditionValue,H2 as getConditionOperator,z2 as getConditionField,D4 as getActionType,P4 as getActionParams,OT as generateRuleIdFromFilename,SX as findTerminalActions,U6 as ensureArray,Db as engineEvents,Ff as defaultGetDoBranchType,JV as defaultExtractEventData,B9 as createVarsContext,i3 as createPositionCalculator,qV as createParserContext,c3 as createNodeIdGenerator,d3 as createEdgeIdGenerator,n6 as collectDoActions,IY as buildEventNode,F0 as buildEdge,J6 as buildDoNode,q6 as buildConditionNode,s3 as buildConditionGroupNode,fY as buildActionNode,yY as buildActionGroupNode,RX as TriggerValidator,MX as TriggerUtils,Sb as TriggerSystem,UV as TriggerRuleSchema,d6 as TriggerEngine,HX as TriggerEmitter,YT as RuleExporter,rG as RuleEvents,z9 as RuleEvent,Uq as RuleEngine,BI as RuleConditionSchema,CX as RuleBuilder,OX as ParamsBuilder,Sk as OPERATOR_DOCS,E as NodeType,m0 as MathFunctions,OI as InlineConditionalActionSchema,nG as InMemoryPersistence,D as HandleId,Fq as GraphParserErrorCode,Y1 as GraphParserError,Ak as FIELD_DOCS,K0 as ExpressionEngine,aG as Events,oG as EventQueue,BX as ErrorMessages,c2 as EngineEvent,d6 as Engine,F9 as DebugMessages,FX as ControlFlow,cG as ContextKeys,R9 as ConditionalActionBuilder,HI as ConditionSchema,TX as ConditionOperator,FI as ConditionGroupSchema,y1 as ConditionBuilder,zI as ComparisonOperatorSchema,jk as CONDITION_FIELD_DOCS,U2 as BuiltInAction,tG as BrowserPersistence,E0 as BranchType,sG as Actions,MI as ActionSchema,c6 as ActionRegistry,RI as ActionGroupSchema,a6 as ActionBuilder,Nk as ACTION_TYPE_DOCS,Ck as ACTION_FIELD_DOCS};
197
+ value: 1`]}},jk={field:{description:"The field path to check (e.g., `data.amount`, `event.user.id`)",values:"String path using dot notation"},operator:{description:"The comparison operator to use",values:"One of: EQ, ==, NEQ, !=, GT, >, GTE, >=, LT, <, LTE, <=, IN, NOT_IN, CONTAINS, NOT_CONTAINS, STARTS_WITH, ENDS_WITH, IS_EMPTY, IS_NULL, HAS_KEY, MATCHES, RANGE, SINCE, AFTER, BEFORE, UNTIL"},value:{description:"The value to compare against (type depends on operator)",values:"Varies by operator - see operator documentation for details"},conditions:{description:"Array of sub-conditions for AND/OR groups",values:"Array of condition objects"}},Ck={type:{description:"The type of action to perform",values:"String action type (e.g., `log`, `execute`, `notify`, `FORWARD`, `EMIT_EVENT`)"},params:{description:"Parameters for the action (varies by action type)",values:"Object with action-specific parameters"},delay:{description:"Delay in milliseconds before executing this action",values:"Non-negative integer (milliseconds)"},probability:{description:"Probability of executing this action (0.0 to 1.0)"},mode:{description:"Execution mode for action groups",values:"ALL (execute all), SEQUENCE (execute in order), or EITHER (execute one randomly)"},actions:{description:"Array of sub-actions for action groups",values:"Array of action objects"},then:{description:"Actions to execute when condition is true",values:"Action object or array of actions"},else:{description:"Actions to execute when condition is false",values:"Action object or array of actions"}},Nk={log:{description:"Prints a message to the engine console for debugging",params:["message: string (supports interpolation)"]},math:{description:`Expression to evaluate (e.g. "1 + 2" or "'Hi ' + data.user")`,params:[`expression: string (e.g. "1 + 2" or "'Hello ' + data.name")`]},execute:{description:"Runs a shell command on the host (Node.js only)",params:["command: string","safe: boolean"]},notify:{description:"Sends a notification to a specified target",params:["message: string","target: string"]}};export{eG as vars,ST as validateRule,wT as validateFieldValue,PT as validateFieldType,jT as triggerRuleToNodes,u0 as triggerEmitter,H9 as ruleEvents,KT as requireField,kY as parseYamlRules,_k as parseYamlRuleStrict,Vk as parseYamlRule,Bq as parseGraphToRules,jX as parseGraph,i6 as optimizeCondition,s6 as optimizeAction,AT as normalizeRuleAdvanced,w4 as normalizeRule,TT as normalizeOperator,bY as normalizeElseField,EY as normalizeDoField,OT as normalizeConditionsUtils,LZ as normalizeConditions,MT as normalizeActions,i1 as normalizeAction,_T as isValidNumber,l3 as isValidExecutionMode,FT as isValidConditionOperator,BT as isValidComparisonOperator,c1 as isSimpleCondition,HT as isSimpleAction,D0 as isObject,VT as isNonEmptyString,L1 as isConditionGroup,zT as isBoolean,p3 as isActionGroup,$Z as hasConditionalExecution,F2 as getConditionValue,H2 as getConditionOperator,z2 as getConditionField,D4 as getActionType,P4 as getActionParams,RT as generateRuleIdFromFilename,SX as findTerminalActions,U6 as ensureArray,Db as engineEvents,Ff as defaultGetDoBranchType,JV as defaultExtractEventData,B9 as createVarsContext,i3 as createPositionCalculator,qV as createParserContext,d3 as createNodeIdGenerator,c3 as createEdgeIdGenerator,n6 as collectDoActions,IY as buildEventNode,F0 as buildEdge,J6 as buildDoNode,q6 as buildConditionNode,s3 as buildConditionGroupNode,fY as buildActionNode,yY as buildActionGroupNode,OX as TriggerValidator,MX as TriggerUtils,Sb as TriggerSystem,UV as TriggerRuleSchema,c6 as TriggerEngine,HX as TriggerEmitter,YT as RuleExporter,rG as RuleEvents,z9 as RuleEvent,Uq as RuleEngine,BI as RuleConditionSchema,CX as RuleBuilder,RX as ParamsBuilder,Sk as OPERATOR_DOCS,E as NodeType,m0 as MathFunctions,RI as InlineConditionalActionSchema,nG as InMemoryPersistence,D as HandleId,Fq as GraphParserErrorCode,Y1 as GraphParserError,Ak as FIELD_DOCS,K0 as ExpressionEngine,aG as Events,oG as EventQueue,BX as ErrorMessages,d2 as EngineEvent,c6 as Engine,F9 as DebugMessages,FX as ControlFlow,dG as ContextKeys,O9 as ConditionalActionBuilder,HI as ConditionSchema,TX as ConditionOperator,FI as ConditionGroupSchema,y1 as ConditionBuilder,zI as ComparisonOperatorSchema,jk as CONDITION_FIELD_DOCS,U2 as BuiltInAction,tG as BrowserPersistence,E0 as BranchType,sG as Actions,MI as ActionSchema,d6 as ActionRegistry,OI as ActionGroupSchema,a6 as ActionBuilder,Nk as ACTION_TYPE_DOCS,Ck as ACTION_FIELD_DOCS};
198
198
 
199
- //# debugId=A5177BF8419D1CB764756E2164756E21
199
+ //# debugId=BE754F6A92594B7764756E2164756E21