trigger_system 1.2.6 → 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.
Files changed (38) hide show
  1. package/README.md +2 -12
  2. package/dist/browser/index.browser.js +116 -116
  3. package/dist/browser/index.browser.js.map +19 -20
  4. package/dist/core/action-registry.d.ts +1 -8
  5. package/dist/core/action-registry.d.ts.map +1 -1
  6. package/dist/core/constants.d.ts +2 -18
  7. package/dist/core/constants.d.ts.map +1 -1
  8. package/dist/core/engine-utils.d.ts.map +1 -1
  9. package/dist/core/event-queue.d.ts.map +1 -1
  10. package/dist/core/expression-engine.d.ts +0 -1
  11. package/dist/core/expression-engine.d.ts.map +1 -1
  12. package/dist/core/index.d.ts +2 -2
  13. package/dist/core/index.d.ts.map +1 -1
  14. package/dist/core/persistence.d.ts +0 -1
  15. package/dist/core/persistence.d.ts.map +1 -1
  16. package/dist/core/rule-engine.d.ts +0 -12
  17. package/dist/core/rule-engine.d.ts.map +1 -1
  18. package/dist/core/trigger-engine.d.ts +56 -6
  19. package/dist/core/trigger-engine.d.ts.map +1 -1
  20. package/dist/core/vars-context.d.ts +144 -0
  21. package/dist/core/vars-context.d.ts.map +1 -0
  22. package/dist/lsp/hover-constants.d.ts.map +1 -1
  23. package/dist/node/index.js +135 -135
  24. package/dist/node/index.js.map +20 -21
  25. package/dist/node/node.js +134 -134
  26. package/dist/node/node.js.map +20 -21
  27. package/dist/sdk/builder.d.ts +2 -2
  28. package/dist/sdk/builder.d.ts.map +1 -1
  29. package/dist/sdk/graph/action-resolver.d.ts.map +1 -1
  30. package/dist/sdk/graph/condition-resolver.d.ts.map +1 -1
  31. package/dist/sdk/graph-parser.d.ts +15 -1
  32. package/dist/sdk/graph-parser.d.ts.map +1 -1
  33. package/dist/sdk/yaml/converter.d.ts.map +1 -1
  34. package/dist/sdk/yaml/types.d.ts +0 -1
  35. package/dist/sdk/yaml/types.d.ts.map +1 -1
  36. package/dist/types.d.ts +1 -8
  37. package/dist/types.d.ts.map +1 -1
  38. package/package.json +3 -2
@@ -1,192 +1,192 @@
1
- import{createRequire as hY}from"node:module";var bY=Object.create;var{getPrototypeOf:IY,defineProperty:J6,getOwnPropertyNames:d3,getOwnPropertyDescriptor:fY}=Object,c3=Object.prototype.hasOwnProperty;function i3(Z){return this[Z]}var yY,kY,s3=(Z,X,Q)=>{var U=Z!=null&&typeof Z==="object";if(U){var J=X?yY??=new WeakMap:kY??=new WeakMap,q=J.get(Z);if(q)return q}Q=Z!=null?bY(IY(Z)):{};let Y=X||!Z||!Z.__esModule?J6(Q,"default",{value:Z,enumerable:!0}):Q;for(let W of d3(Z))if(!c3.call(Y,W))J6(Y,W,{get:i3.bind(Z,W),enumerable:!0});if(U)J.set(Z,Y);return Y},a3=(Z)=>{var X=(l3??=new WeakMap).get(Z),Q;if(X)return X;if(X=J6({},"__esModule",{value:!0}),Z&&typeof Z==="object"||typeof Z==="function"){for(var U of d3(Z))if(!c3.call(X,U))J6(X,U,{get:i3.bind(Z,U),enumerable:!(Q=fY(Z,U))||Q.enumerable})}return l3.set(Z,X),X},l3,C=(Z,X)=>()=>(X||Z((X={exports:{}}).exports,X),X.exports);var gY=(Z)=>Z;function vY(Z,X){this[Z]=gY.bind(null,X)}var xY=(Z,X)=>{for(var Q in X)J6(Z,Q,{get:X[Q],enumerable:!0,configurable:!0,set:vY.bind(X,Q)})};var O=(Z,X)=>()=>(Z&&(X=Z(Z=0)),X);var _2=hY(import.meta.url);var T1=(Z)=>Array.isArray(Z)?Z:[Z],r3=(Z,X)=>{let Q=[[],[]];for(let U of Z)if(X(U))Q[0].push(U);else Q[1].push(U);return Q},R4,k0=(Z,X)=>Z.includes(X),o3=(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},_1=(Z,X)=>{if(X===void 0||X===null)return Z??[];if(Z===void 0||Z===null)return T1(X);return Z.concat(X)},n3=(...Z)=>Z.reduce(_1,[]),Z1=(Z,X,Q)=>{if(Z===void 0)return Array.isArray(X)?X:[X];let U=Q?.isEqual??((J,q)=>J===q);for(let J of T1(X))if(!Z.some((q)=>U(q,J)))Z.push(J);return Z},t3=(Z,X)=>Z.reduce((Q,U)=>{let J=U[X];return Q[J]=m(Q[J],U),Q},{}),V1=(Z,X,Q)=>Z.length===X.length&&Z.every(Q?.isEqual?(U,J)=>Q.isEqual(U,X[J]):(U,J)=>U===X[J]);var P4=O(()=>{R4=Array});var T0=(Z,X)=>$0(Z)===X,$0=(Z)=>{let X=typeof Z;return X==="object"?Z===null?"null":"object":X==="function"?"object":X},D0,e3;var V2=O(()=>{D0={boolean:"boolean",null:"null",undefined:"undefined",bigint:"a bigint",number:"a number",object:"an object",string:"a string",symbol:"a symbol"},e3={...D0,function:"a function"}});var ZQ,u=(Z)=>a1(Z,ZQ),a1=(Z,X=Error)=>{throw new X(Z)},q6,M=(Z)=>a1(Z,q6),i0=(Z)=>` ${Z}`,XQ="​";var X1=O(()=>{ZQ=class ZQ extends Error{};q6=class q6 extends Error{name="ParseError"}});var y=(Z,X)=>{let Q={},U=Array.isArray(Z),J=!1;for(let[q,Y]of Object.entries(Z).entries()){let W=U?X(q,Y[1]):X(...Y,q);J||=typeof W[0]==="number";let $=Array.isArray(W[0])||W.length===0?W:[W];for(let[L,_]of $)if(typeof L==="object")Q[L.group]=m(Q[L.group],_);else Q[L]=_}return J?Object.values(Q):Q};var $Z=O(()=>{P4()});class GZ{constructor(Z){Object.assign(this,Z)}}var LZ,L0=(Z,X)=>(Z in X),H2=(Z,X)=>(X in Z),QQ=class{},Y6,mY=(Z,X)=>{let Q={},U={},J;for(J in Z)if(J in X)Q[J]=Z[J];else U[J]=Z[J];return[Q,U]},K4=(Z,X)=>mY(Z,X)[1],Q1=(Z)=>Object.keys(Z).length===0,r1=(Z)=>[...Object.entries(Z),...Object.getOwnPropertySymbols(Z).map((X)=>[X,Z[X]])],UQ=(Z,X)=>Object.defineProperties(Z,Object.getOwnPropertyDescriptors(X)),JQ=(Z)=>{let X=Object.keys(Z).sort(),Q={};for(let U=0;U<X.length;U++)Q[X[U]]=Z[X[U]];return Q},w0,qQ=(Z)=>Object.values(Z).filter((X)=>{if(typeof X==="number")return!0;return typeof Z[X]!=="number"});var F2=O(()=>{X1();$Z();LZ=Object.entries;Y6=class Y6 extends QQ{};w0=i0(`unset${XQ}`)});var _Z,VZ,HZ,uY,o1,W6=(Z)=>{let X=Object.getPrototypeOf(Z);while(X?.constructor&&(!L0(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},$6=(Z)=>typeof Z==="object"&&Z!==null?W6(Z)??"object":$0(Z),r,pY,lY,dY,YQ,L6=(Z)=>{let X=Object(Z).name??null;return X&&L0(X,o1)&&o1[X]===Z?X:null},FZ=(Z,X)=>{let Q=Z.prototype;while(Q!==null){if(Q===X.prototype)return!0;Q=Object.getPrototypeOf(Q)}return!1};var G6=O(()=>{V2();F2();_Z={Array,Boolean,Date,Error,Function,Map,Number,Promise,RegExp,Set,String,WeakMap,WeakSet},VZ=globalThis.File??Blob,HZ={ArrayBuffer,Blob,File:VZ,FormData,Headers,Request,Response,URL},uY={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array},o1={..._Z,...HZ,...uY,String,Number,Boolean},r=Array.isArray,pY={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"},lY={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"},dY={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"},YQ={...pY,...lY,...dY}});var WQ=(Z)=>$Q(Z,new Map),$Q=(Z,X)=>{if(typeof Z!=="object"||Z===null)return Z;if(X?.has(Z))return X.get(Z);let Q=L6(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)),J=Object.getOwnPropertyDescriptors(Z);if(X){X.set(Z,U);for(let q in J){let Y=J[q];if("get"in Y||"set"in Y)continue;Y.value=$Q(Y.value,X)}}return Object.defineProperties(U,J),U};var LQ=O(()=>{G6()});var GQ=()=>{};class A0{constructor(Z,...[X]){return Object.assign(Object.setPrototypeOf(Z.bind(X?.bind??this),this.constructor.prototype),X?.attach)}}var cY=(Z)=>{let X=w0;return()=>X===w0?X=Z():X},D1=(Z)=>typeof Z==="function"&&Z.length===0,_Q,VQ;var HQ=O(()=>{X1();F2();_Q=class extends Function{constructor(...Z){let X=Z.slice(0,-1),Q=Z[Z.length-1];try{super(...X,Q)}catch(U){return u(`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
- }`)}}};VQ=cY(()=>{try{return Function("return false")()}catch{return!0}})});var lP,FQ;var zQ=O(()=>{X1();lP=i0("brand"),FQ=i0("arkInferred")});class H0{constructor(){}}var iP;var BQ=O(()=>{X1();iP=i0("args")});var MQ=()=>{};var iY=()=>{try{return((Error().stack?.split(`
6
- `)[2]?.trim()||"").match(/\(?(.+?)(?::\d+:\d+)?\)?$/)?.[1]||"unknown").replace(/^file:\/\//,"")}catch{return"unknown"}},sY,OQ;var zZ=O(()=>{sY=globalThis.process?.env??{},OQ={fileName:iY,env:sY}});var RQ=()=>{};var PQ=(Z)=>Z[0].toUpperCase()+Z.slice(1),KQ=(Z)=>Z[0].toLowerCase()+Z.slice(1),BZ=(Z)=>new RegExp(aY(Z),typeof Z==="string"?"":Z.flags),aY=(Z)=>{return`^(?:${typeof Z==="string"?Z:Z.source})$`},F1,n1="\\",w1;var T4=O(()=>{F1={negativeLookahead:(Z)=>`(?!${Z})`,nonCapturingGroup:(Z)=>`(?:${Z})`},w1={" ":1,"\n":1,"\t":1}});var rY,DQ,oY,nY,wQ=(Z)=>BZ(F1.negativeLookahead(rY)+F1.nonCapturingGroup("-?"+F1.nonCapturingGroup(F1.nonCapturingGroup("0|"+DQ)+F1.nonCapturingGroup(Z.decimalPattern)+"?")+(Z.allowDecimalOnly?"|"+Z.decimalPattern:"")+"?")),TQ,tY,D4,eP,eY,ZW=(Z)=>Z.length!==0&&eY.test(Z),_6,XW,MZ,QW,AQ,SQ=(Z,X)=>`'${Z}' was parsed as ${AQ[X]} but could not be narrowed to a literal value. Avoid unnecessary leading or trailing zeros and other abnormal notation`,UW=(Z,X)=>X==="number"?tY(Z):XW(Z),JW=(Z,X)=>X==="number"?Number(Z):Number.parseInt(Z),qW=(Z,X)=>X==="number"?ZW(Z):QW(Z),CQ=(Z,X)=>OZ(Z,"number",X),NQ=(Z,X)=>OZ(Z,"number",{...X,strict:!0}),jQ=(Z,X)=>OZ(Z,"integer",X),OZ=(Z,X,Q)=>{let U=JW(Z,X);if(!Number.isNaN(U)){if(qW(Z,X)){if(Q?.strict)return UW(Z,X)?U:M(SQ(Z,X));return U}}return Q?.errorOnFail?M(Q?.errorOnFail===!0?`Failed to parse ${AQ[X]} from '${Z}'`:Q?.errorOnFail):void 0},EQ=(Z)=>{if(Z[Z.length-1]!=="n")return;let X=Z.slice(0,-1),Q;try{Q=BigInt(X)}catch{return}if(_6.test(X))return Q;if(MZ.test(X))return M(SQ(Z,"bigint"))};var bQ=O(()=>{X1();T4();rY=/^-0\.?0*$/.source,DQ=/[1-9]\d*/.source,oY=/\.\d+/.source,nY=/\.\d*[1-9]/.source,TQ=wQ({decimalPattern:nY,allowDecimalOnly:!1}),tY=TQ.test.bind(TQ),D4=wQ({decimalPattern:oY,allowDecimalOnly:!0}),eP=D4.test.bind(D4),eY=/^-?\d*\.?\d*$/,_6=BZ(F1.negativeLookahead("^-0$")+"-?"+F1.nonCapturingGroup(F1.nonCapturingGroup("0|"+DQ))),XW=_6.test.bind(_6),MZ=/^-?\d+$/,QW=MZ.test.bind(MZ),AQ={number:"a number",bigint:"a bigint",integer:"an integer"}});var YW="0.56.0",WW,t1,IQ,RZ,V6=(Z)=>{let X=IQ.get(Z);if(X)return X;let Q=$W(Z);if(RZ[Q])Q=`${Q}${RZ[Q]++}`;else RZ[Q]=1;return t1[Q]=Z,IQ.set(Z,Q),Q},A1=(Z)=>/^[$A-Z_a-z][\w$]*$/.test(Z),$W=(Z)=>{switch(typeof Z){case"object":{if(Z===null)break;let X=W6(Z)??"object";return X[0].toLowerCase()+X.slice(1)}case"function":return A1(Z.name)?Z.name:"fn";case"symbol":return Z.description&&A1(Z.description)?Z.description:"symbol"}return u(`Unexpected attempt to register serializable value of type ${$0(Z)}`)};var w4=O(()=>{V2();X1();zZ();G6();WW={version:YW,filename:OQ.fileName(),FileConstructor:VZ},t1=WW,IQ=new Map,RZ=Object.create(null)});var H6=(Z)=>typeof Z==="string"?JSON.stringify(Z):typeof Z==="bigint"?`${Z}n`:`${Z}`;var fQ=(Z,X={})=>F6(Z,{onUndefined:"$ark.undefined",onBigInt:(Q)=>`$ark.bigint-${Q}`,...X},[]),k=(Z,X)=>{switch($0(Z)){case"object":let Q=Z,U=Q.constructor?.name??"Object";return U==="Object"||U==="Array"?X?.quoteKeys===!1?A4(Q,X?.indent??0,""):JSON.stringify(F6(Q,z2,[]),null,X?.indent):A4(Q,X?.indent??0,"");case"symbol":return z2.onSymbol(Z);default:return H6(Z)}},A4=(Z,X,Q)=>{if(typeof Z==="function")return z2.onFunction(Z);if(typeof Z!=="object"||Z===null)return H6(Z);let U=Q+" ".repeat(X);if(Array.isArray(Z)){if(Z.length===0)return"[]";let q=Z.map((Y)=>A4(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
- ${U}${q}
9
- ${Q}]`:`[${q}]`}let J=Z.constructor?.name??"Object";if(J==="Object"){let q=r1(Z).map(([Y,W])=>{let $=typeof Y==="symbol"?z2.onSymbol(Y):A1(Y)?Y:JSON.stringify(Y),L=A4(W,X,U);return`${U}${$}: ${L}`});if(q.length===0)return"{}";return X?`{
10
- ${q.join(`,
8
+ ${U}${J}
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
+ ${J.join(`,
11
11
  `)}
12
- ${Q}}`:`{${q.join(", ")}}`}if(Z instanceof Date)return e1(Z);if("expression"in Z&&typeof Z.expression==="string")return Z.expression;return J},z2,F6=(Z,X,Q)=>{switch($0(Z)){case"object":{let U=Z;if("toJSON"in U&&typeof U.toJSON==="function")return U.toJSON();if(typeof U==="function")return z2.onFunction(U);if(Q.includes(U))return"(cycle)";let J=[...Q,U];if(Array.isArray(U))return U.map((Y)=>F6(Y,X,J));if(U instanceof Date)return U.toDateString();let q={};for(let Y in U)q[Y]=F6(U[Y],X,J);for(let Y of Object.getOwnPropertySymbols(U))q[X.onSymbol?.(Y)??Y.toString()]=F6(U[Y],X,J);return q}case"symbol":return z2.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}},e1=(Z)=>{let X=Z.getFullYear(),Q=Z.getMonth(),U=Z.getDate(),J=Z.getHours(),q=Z.getMinutes(),Y=Z.getSeconds(),W=Z.getMilliseconds();if(Q===0&&U===1&&J===0&&q===0&&Y===0&&W===0)return`${X}`;let $=`${LW[Q]} ${U}, ${X}`;if(J===0&&q===0&&Y===0&&W===0)return $;let L=Z.toLocaleTimeString(),_=L.endsWith(" AM")||L.endsWith(" PM")?L.slice(-3):"";if(_)L=L.slice(0,-_.length);if(W)L+=`.${_W(W,3)}`;else if(GW.test(L))L=L.slice(0,-3);return`${L+_}, ${$}`},LW,GW,_W=(Z,X)=>String(Z).padStart(X,"0");var PZ=O(()=>{V2();F2();w4();z2={onCycle:()=>"(cycle)",onSymbol:(Z)=>`Symbol(${V6(Z)})`,onFunction:(Z)=>`Function(${V6(Z)})`},LW=["January","February","March","April","May","June","July","August","September","October","November","December"],GW=/:\d\d:00$/});var yQ=(Z,X,...[Q])=>{let U=Q?.stringifySymbol??k,J=Z;switch(typeof X){case"string":J=A1(X)?Z===""?X:`${Z}.${X}`:`${Z}[${JSON.stringify(X)}]`;break;case"number":J=`${Z}[${X}]`;break;case"symbol":J=`${Z}[${U(X)}]`;break;default:if(Q?.stringifyNonKey)J=`${Z}[${Q.stringifyNonKey(X)}]`;else M(`${k(X)} must be a PropertyKey or stringifyNonKey must be passed to options`)}return J},z1=(Z,...X)=>Z.reduce((Q,U)=>yQ(Q,U,...X),""),z6;var kQ=O(()=>{P4();X1();w4();PZ();z6=class z6 extends R4{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"?k(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=yQ(Z,Q),X.push(Z);return this.cache.stringifyAncestors=X}}});class B6{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===n1)if(this.shift(),Z(this,X))X+=this.shift();else if(this.lookahead===n1)X+=this.shift();else X+=`${n1}${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 w1))}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 gQ=(Z,X)=>`Unmatched ${Z}${X===""?"":` before ${X}`}`,S4=(Z)=>`Missing ${Z}`;var vQ=O(()=>{T4()});var wK;var xQ=O(()=>{V2();X1();G6();F2();wK=i0("implementedTraits")});var hQ=()=>{};var E=O(()=>{P4();LQ();GQ();V2();X1();$Z();HQ();zQ();BQ();MQ();zZ();RQ();bQ();G6();kQ();F2();w4();vQ();PZ();T4();xQ();hQ()});var KZ="$ark",VW=2,mQ,R,HW=(Z)=>`${mQ}.${Z}`,Z0=(Z)=>HW(V6(Z));var p=O(()=>{E();while(KZ in globalThis)KZ=`$ark${VW++}`;mQ=KZ;globalThis[mQ]=t1;R=t1});var C4,s0=(Z)=>T0(Z,"object")||typeof Z==="symbol"?Z0(Z):H6(Z),TZ=(Z,X=!1)=>{if(typeof Z==="string"&&A1(Z))return`${X?"?":""}.${Z}`;return uQ(FW(Z),X)},FW=(Z)=>typeof Z==="symbol"?Z0(Z):JSON.stringify(Z),uQ=(Z,X=!1)=>`${X?"?.":""}[${Z}]`,M6;var S1=O(()=>{E();p();C4=class C4 extends Y6{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 TZ(Z,X)}index(Z,X=!1){return uQ(`${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 _Q(...this.argNames,this.body)}};M6=class M6 extends C4{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),J=typeof Z==="string"?Z:Z.id;if(U)return`${this.referenceToId(J,X)}(${Q}, ${this.ctx})`;return`${this.referenceToId(J,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 N4=(Z)=>y(Z,(X,Q)=>[X,r(Q)?[...Q]:Q]),M0,b=(Z,X)=>Z?.[M0]===X,o=(Z)=>b(Z,"root")||b(Z,"constraint");var J0=O(()=>{E();M0=i0("arkKind")});var pQ,B2,DZ,wZ,j4,M2,zW,E4,lQ,dQ,O2=(Z)=>typeof Z==="string"&&(Z in dQ),R2=(Z)=>dQ[Z],b4=(Z)=>M2.slice(R2(Z)+1),WT,$T,g0=(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 s0(Z)},C1=(Z)=>{let X="{ ";for(let[Q,U]of Object.entries(Z))X+=`${Q}: ${s0(U)}, `;return X+" }"},g=(Z)=>{let X=Z;if(X.hasAssociatedError)X.defaults.expected??=(Q)=>("description"in Q)?Q.description:X.defaults.description(Q),X.defaults.actual??=(Q)=>k(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 d=O(()=>{E();S1();J0();pQ=["unit","proto","domain"],B2=["required","optional","index","sequence"],DZ=["pattern","divisor","exactLength","max","min","maxLength","minLength","before","after"],wZ=[...DZ,"structure","predicate"],j4=[...wZ,...B2],M2=["alias","union","morph","unit","intersection","proto","domain"],zW=[...M2,...j4],E4=y(j4,(Z,X)=>[X,1]),lQ=y([...B2,"undeclared"],(Z,X)=>[X,1]),dQ=y(zW,(Z,X)=>[X,Z]),WT=[...b4("union"),"alias"],$T=[...b4("morph"),"alias"]});var cQ,BW,t;var N1=O(()=>{E();cQ=class cQ extends Error{name="ToJsonSchemaError";code;context;constructor(Z,X){super(k(X,{quoteKeys:!1,indent:4}));this.code=Z,this.context=X}hasCode(Z){return this.code===Z}};BW={target:"draft-2020-12",dialect:"https://json-schema.org/draft/2020-12/schema",useRefs:!1,fallback:{arrayObject:(Z)=>t.throw("arrayObject",Z),arrayPostfix:(Z)=>t.throw("arrayPostfix",Z),defaultValue:(Z)=>t.throw("defaultValue",Z),domain:(Z)=>t.throw("domain",Z),morph:(Z)=>t.throw("morph",Z),patternIntersection:(Z)=>t.throw("patternIntersection",Z),predicate:(Z)=>t.throw("predicate",Z),proto:(Z)=>t.throw("proto",Z),symbolKey:(Z)=>t.throw("symbolKey",Z),unit:(Z)=>t.throw("unit",Z),date:(Z)=>t.throw("date",Z)}},t={Error:cQ,throw:(...Z)=>{throw new t.Error(...Z)},throwInternalOperandError:(Z,X)=>u(`Unexpected JSON Schema input for ${Z}: ${k(X)}`),defaultConfig:BW}});var O6=(Z,X)=>{if(!X)return Z;let Q={...Z},U;for(U in X){let J={...Z.keywords};if(U==="keywords"){for(let q in X[U]){let Y=X.keywords[q];if(Y===void 0)continue;J[q]=typeof Y==="string"?{description:Y}:Y}Q.keywords=J}else if(U==="toJsonSchema")Q[U]=AZ(Z.toJsonSchema,X.toJsonSchema);else if(O2(U))Q[U]={...Z[U],...X[U]};else Q[U]=X[U]}return Q},MW,AZ=(Z,X)=>{if(!Z)return iQ(X??{},void 0);if(!X)return Z;let Q={...Z},U;for(U in X)if(U==="fallback")Q.fallback=OW(Z.fallback,X.fallback);else Q[U]=X[U];return iQ(Q,X)},iQ=(Z,X)=>{if(X?.dialect!==void 0)return Z;if(X?.target!==void 0)return{...Z,dialect:MW[X.target]};return Z},OW=(Z,X)=>{Z=sQ(Z),X=sQ(X);let Q={},U;for(U in t.defaultConfig.fallback)Q[U]=X[U]??X.default??Z[U]??Z.default??t.defaultConfig.fallback[U];return Q},sQ=(Z)=>typeof Z==="function"?{default:Z}:Z??{};var P2=O(()=>{d();p();N1();R.config??={};MW={"draft-2020-12":"https://json-schema.org/draft/2020-12/schema","draft-07":"http://json-schema.org/draft-07/schema#"}});var j1,S0,SZ,RW=(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 R6=O(()=>{E();J0();j1=class j1 extends Y6{[M0]="error";path;data;nodeConfig;input;ctx;constructor({prefixPath:Z,relativePath:X,...Q},U){super();this.input=Q,this.ctx=U,UQ(this,Q);let J=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:n3(Z,L.path,X)})))});this.nodeConfig=U.config[this.code];let q=[...Q.path??U.path];if(X)q.push(...X);if(Z)q.unshift(...Z);this.path=new z6(...q),this.data="data"in Q?Q.data:J}transform(Z){return new j1(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}};S0=class S0 extends R4{[M0]="errors";ctx;constructor(Z){super();this.ctx=Z}byPath=Object.create(null);get flatByPath(){return y(this.byPath,(Z,X)=>[Z,X.flat])}get flatProblemsByPath(){return y(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 SZ(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 j1({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 S0(this.ctx);for(let Q of this)X.add(Z(Q));return X}merge(Z){for(let X of Z)this.add(new j1({...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
- `)}addAncestorPaths(Z){for(let X of Z.path.stringifyAncestors())this.byAncestorPath[X]=m(this.byAncestorPath[X],Z)}};SZ=class SZ extends Error{name="TraversalError";constructor(Z){if(Z.length===1)super(Z.summary);else super(`
19
- `+Z.map((X)=>` • ${RW(X)}`).join(`
20
- `));Object.defineProperty(this,"arkErrors",{value:Z,enumerable:!1})}}});class a0{path=[];errors=new S0(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 z6(...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 j1(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 J=0;J<Z.length-1;J++)U=U[Z[J]]}for(let J of X){this.path=[...Z];let q=o(J),Y=J(U===void 0?this.root:U[Q],this);if(Y instanceof j1){if(!this.errors.includes(Y))this.errors.add(Y);break}if(Y instanceof S0){if(!q)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 U1=O(()=>{E();R6();J0()});var K6,P6,aQ=(Z,X)=>`${Z} had no references matching ${k(X)}.`,PW=(Z)=>z1(Z,{stringifyNonKey:(X)=>X.expression}),KW,TW=(Z)=>JSON.stringify(Z).replace(KW,"$1"),r0=(Z,X)=>({path:Z,node:X,propString:PW(Z)}),rQ=(Z,X)=>Z.propString===X.propString&&Z.node.equals(X.node),CZ=(Z,X)=>Z1(Z,X,{isEqual:rQ}),DW=(Z,X)=>Z1(Z,X,{isEqual:(Q,U)=>Q.equals(U)});var Z2=O(()=>{E();d();p();U1();J0();K6=class K6 extends A0{attachments;$;onFail;includesTransform;includesContextualPredicate;isCyclic;allowsRequiresContext;rootApplyStrategy;contextFreeMorph;rootApply;referencesById;shallowReferences;flatRefs;flatMorphs;allows;get shallowMorphs(){return[]}constructor(Z,X){super((U,J,q=this.onFail)=>{if(J)return this.traverseApply(U,J),J.hasError()?J.errors:J.data;return this.rootApply(U,q)},{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,J)=>DW(U,J.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 J=this.children[U].flatRefs;for(let q=0;q<J.length;q++){let Y=J[q];if(!this.flatRefs.some((W)=>rQ(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,J)=>U.path.length>J.path.length?1:U.path.length<J.path.length?-1:U.propString>J.propString?1:U.propString<J.propString?-1:U.node.expression<J.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 a0(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 a0(X,this.$.resolvedConfig);return this.traverseApply(X,U),U.finalize(Q)};case"contextual":return(X,Q)=>{let U=new a0(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 a0(X,this.$.resolvedConfig);return this.traverseApply(X,U),U.finalize(Q)};case"branchedOptimistic":return this.createBranchedOptimisticRootApply();default:return this.rootApplyStrategy,u(`Unexpected rootApplyStrategy ${this.rootApplyStrategy}`)}}compiledMeta=TW(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=R2(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 J=this.impl.keys[Q];if(J.reduceIo)J.reduceIo(Z,X,U);else if(J.child){let q=U;X[Q]=r(q)?q.map((Y)=>Z==="in"?Y.rawIn:Y.rawOut):Z==="in"?q.rawIn:q.rawOut}else X[Q]=U}return this.$.node(this.kind,X)}toJSON(){return this.json}toString(){return`Type<${this.expression}>`}equals(Z){let X=o(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(!k0(Z,this.kind))a1(`${this.kind} node was not one of asserted kinds ${Z}`);return this}isBasis(){return k0(pQ,this.kind)}isConstraint(){return k0(j4,this.kind)}isStructural(){return k0(B2,this.kind)}isRefinement(){return k0(wZ,this.kind)}isRoot(){return k0(M2,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=P6.normalize(Z);return this._select(X)}_select(Z){let X=P6.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 P6.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 J=y(this.inner,(L,_)=>{if(!this.impl.keys[L].child)return[L,_];let G=_;if(!r(G)){let F=G._transform(Z,X);return F?[L,F]:[]}if(G.length===0)return[L,_];let V=G.flatMap((F)=>{return F._transform(Z,X)??[]});return V.length?[L,V]:[]});delete X.seen[this.id];let q=Object.assign(J,{meta:this.meta}),Y=X.selected&&!X.selected.includes(this)?q:Z(this.kind,q,X);if(Y===null)return null;if(o(Y))return U=Y;let W=Object.keys(Y);if((W.length===0||W.length===1&&W[0]==="meta")&&!Q1(this.inner))return null;if((this.kind==="required"||this.kind==="optional"||this.kind==="index")&&!("value"in Y))return X.undeclaredKeyHandling?{...Y,value:R.intrinsic.unknown}:null;if(this.kind==="morph")Y.in??=R.intrinsic.unknown;return U=Q.node(this.kind,Y,X.parseOptions)}configureReferences(Z,X="references"){let Q=P6.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 J=this._select(Q),q=J&&T1(J),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:q}))}};P6={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(aQ(X,Q));return Z},find:(Z)=>Z[0],assertFind:(Z,X,Q)=>{if(Z.length===0)a1(aQ(X,Q));return Z[0]}},normalize:(Z)=>typeof Z==="function"?{boundary:"references",method:"filter",where:Z}:typeof Z==="string"?L0(Z,P6.applyBoundary)?{method:"filter",boundary:Z}:{boundary:"references",method:"filter",kind:Z}:{boundary:"references",method:"filter",...Z}},KW=/"(\$ark\.[^"]+)"/g});var A,oQ=(Z,X)=>`${NZ(Z)} and ${NZ(X)}`,NZ=(Z)=>o(Z)?Z.expression:r(Z)?Z.map(NZ).join(" | ")||"never":String(Z),jZ=(Z)=>`${Z} results in an unsatisfiable type`;var U0=O(()=>{E();p();J0();A=class A extends Array{static init(Z,X,Q,U){return new A({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 jZ(`Intersection${U&&` at ${U}`} of ${oQ(X,Q)}`)}return`The following intersections result in unsatisfiable types:
21
- • ${this.map(({path:Z,l:X,r:Q})=>`${Z}: ${oQ(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 A))return new A(...Z);return Z}withPrefixKey(Z,X){return this.map((Q)=>({...Q,path:[Z,...Q.path],optional:Q.optional||X==="optional"}))}toNeverIfDisjoint(){return R.intrinsic.never}}});var K2,N0=(Z,X,Q)=>n(Z,X,{$:Q,invert:!1,pipe:!1}),T6=(Z,X,Q)=>n(Z,X,{$:Q,invert:!1,pipe:!0}),n=(Z,X,Q)=>{let U=Q.pipe?"|>":"&",J=`${Z.hash}${U}${X.hash}`;if(K2[J]!==void 0)return K2[J];if(!Q.pipe){let W=`${X.hash}${U}${Z.hash}`;if(K2[W]!==void 0){let $=K2[W],L=$ instanceof A?$.invert():$;return K2[J]=L,L}}let q=!Q.pipe||!Z.includesTransform&&!X.includesTransform;if(q&&Z.equals(X))return Z;let Y=q?EZ(Z,X,Q):Z.hasKindIn(...M2)?wW(Z,X,Q):EZ(Z,X,Q);if(o(Y)){if(Z.equals(Y))Y=Z;else if(X.equals(Y))Y=X}return K2[J]=Y,Y},EZ=(Z,X,Q)=>{let U=Z.precedence<X.precedence?Z.kind:X.kind,J=Z.impl.intersections[X.kind]??X.impl.intersections[Z.kind];if(J===void 0)return null;else if(U===Z.kind)return J(Z,X,Q);else{let q=J(X,Z,{...Q,invert:!Q.invert});if(q instanceof A)q=q.invert();return q}},wW=(Z,X,Q)=>Z.includesTransform||X.includesTransform?Q.invert?nQ(X,Z,Q):nQ(Z,X,Q):EZ(Z,X,Q),nQ=(Z,X,Q)=>Z.distribute((U)=>AW(U,X,Q),(U)=>{let J=U.filter(o);if(J.length===0)return A.init("union",Z.branches,X.branches);if(J.length<Z.branches.length||!Z.branches.every((W,$)=>W.rawIn.equals(J[$].rawIn)))return Q.$.parseSchema(J);let q;if(J.length===1){let W=J[0];if(!q)return W;return Q.$.node("morph",{...W.inner,in:W.rawIn.configure(q,"self")})}let Y={branches:J};if(q)Y.meta=q;return Q.$.parseSchema(Y)}),AW=(Z,X,Q)=>{if(Z.hasKind("morph")){let J=[...Z.morphs];if(Z.lastMorphIfNode){let q=n(Z.lastMorphIfNode,X,Q);if(q instanceof A)return q;J[J.length-1]=q}else J.push(X);return Q.$.node("morph",{morphs:J,in:Z.inner.in})}if(X.hasKind("morph")){let J=n(Z,X.rawIn,Q);if(J instanceof A)return J;return Q.$.node("morph",{morphs:[X],in:J})}return Q.$.node("morph",{morphs:[X],in:Z})};var v0=O(()=>{U0();d();J0();K2={}});var x0,B1,F0=(Z)=>(X,Q)=>{if(r(X)){if(X.length===0)return;let J=X.map((q)=>Q.$.node(Z,q));if(Z==="predicate")return J;return J.sort((q,Y)=>q.hash<Y.hash?-1:1)}let U=Q.$.node(Z,X);return U.hasOpenIntersection()?[U]:U},T2=(Z)=>{let X=Z.r.shift();if(!X){let U=Z.l.length===0&&Z.kind==="structure"?R.intrinsic.unknown.internal:Z.ctx.$.node(Z.kind,Object.assign(Z.baseInner,SW(Z.l)),{prereduced:!0});for(let J of Z.roots){if(U instanceof A)return U;U=n(J,U,Z.ctx)}return U}let Q=!1;for(let U=0;U<Z.l.length;U++){let J=n(Z.l[U],X,Z.ctx);if(J===null)continue;if(J instanceof A)return J;if(J.isRoot())return Z.roots.push(J),Z.l.splice(U),T2(Z);if(!Q)Z.l[U]=J,Q=!0;else if(!Z.l.includes(J))return u(`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)Z1(Z.r,U)}return T2(Z)},D2=(Z)=>{return Object.entries(Z).flatMap(([Q,U])=>(Q in E4)?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)},SW=(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 u(`Unexpected intersection of closed refinements of kind ${Q.kind}`);X[Q.kind]=Q}return X},tQ=(...Z)=>M(eQ(...Z)),eQ=(Z,X,Q)=>{let U=Q.hasKind("morph")?"a morph":Q.isUnknown()?"unknown":Q.exclude(X).defaultShortDescription;return`${PQ(Z)} operand must be ${X.description} (was ${U})`};var b0=O(()=>{E();Z2();U0();d();v0();p();J0();x0=class x0 extends K6{constructor(Z,X){super(Z,X);Object.defineProperty(this,M0,{value:"constraint",enumerable:!1})}impliedSiblings;intersect(Z){return N0(this,Z,this.$)}};B1=class B1 extends x0{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 C1(this.errorContext)}}});var ZU=(Z,X,Q)=>new E1(Z,X,Q,Q,null),I4,E1,CW=(Z,X,Q)=>`${Z} must be assignable to ${X} (was ${Q})`;var bZ=O(()=>{E();p();J0();I4=class I4 extends A0{};E1=class E1 extends A0{[M0]="generic";paramDefs;bodyDef;$;arg$;baseInstantiation;hkt;description;constructor(Z,X,Q,U,J){super((...q)=>{let Y=y(this.names,(W,$)=>{let L=this.arg$.parse(q[W]);if(!L.extends(this.constraints[W]))M(CW($,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=J,this.description=J?new J().description??`a generic type for ${J.constructor.name}`:"a generic type",this.baseInstantiation=this(...this.constraints)}defIsLazy(){return this.bodyDef instanceof I4}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:fQ(this.bodyDef)})}get params(){return this.cacheGetter("params",this.paramDefs.map((Z)=>typeof Z==="string"?[Z,R.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 NW,XU,IZ;var fZ=O(()=>{b0();d();p();NW=g({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}});XU=class XU extends x0{serializedPredicate=Z0(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=C1(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})}};IZ={implementation:NW,Node:XU}});var jW,QU,yZ,EW=(Z)=>`divisor must be an integer (was ${Z})`,bW=(Z,X)=>{let Q,U=Z,J=X;while(J!==0)Q=J,J=U%J,U=Q;return U};var kZ=O(()=>{E();b0();d();p();jW=g({kind:"divisor",collapsibleKey:"rule",keys:{rule:{parse:(Z)=>Number.isInteger(Z)?Z:M(EW(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/bW(Z.rule,X.rule))})},obviatesBasisDescription:!0});QU=class QU extends B1{traverseAllows=(Z)=>Z%this.rule===0;compiledCondition=`data % ${this.rule} === 0`;compiledNegation=`data % ${this.rule} !== 0`;impliedBasis=R.intrinsic.number.internal;expression=`% ${this.rule}`;reduceJsonSchema(Z){if(Z.type="integer",this.rule===1)return Z;return Z.multipleOf=this.rule,Z}};yZ={implementation:jW,Node:QU}});var I0,IW,fW,f4,y4=(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},k4=(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 J=typeof U.rule==="number"?U.rule:typeof U.rule==="string"?new Date(U.rule).valueOf():U.rule.valueOf();return Q?{...U,rule:Z==="after"?J+1:J-1}:U},g4=(Z)=>typeof Z==="string"||typeof Z==="number"?new Date(Z):Z,yW=(Z,X)=>`${Z} bound must be a positive integer (was ${X})`,w2=(Z)=>(X)=>{if(!Number.isInteger(X)||X<0)M(yW(Z,X));return X},kW,gW=(Z,X)=>`${L0(Z,fW)?">":"<"}${X?"":"="}`,vW=(Z)=>typeof Z==="string"?Z:new Date(Z).toLocaleString(),UU=(Z)=>`Bounded expression ${Z} must be exactly one of number, string, Array, or Date`;var M1=O(()=>{E();b0();I0=class I0 extends B1{boundOperandKind=kW[this.kind];compiledActual=this.boundOperandKind==="value"?"data":this.boundOperandKind==="length"?"data.length":"data.valueOf()";comparator=gW(this.kind,this.exclusive);numericLimit=this.rule.valueOf();expression=`${this.comparator} ${this.rule}`;compiledCondition=`${this.compiledActual} ${this.comparator} ${this.numericLimit}`;compiledNegation=`${this.compiledActual} ${IW[this.comparator]} ${this.numericLimit}`;stringLimit=this.boundOperandKind==="date"?vW(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}};IW={"<":">=","<=":">",">":"<=",">=":"<"},fW={min:"max",minLength:"maxLength",after:"before"},f4={parse:(Z)=>Z||void 0},kW={min:"value",max:"value",minLength:"length",maxLength:"length",after:"date",before:"date"}});var xW,JU,gZ;var vZ=O(()=>{E();d();p();M1();xW=g({kind:"after",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:g4,serialize:(Z)=>Z.toISOString()}},normalize:k4("after"),defaults:{description:(Z)=>`${Z.collapsibleLimitString} or later`,actual:e1},intersections:{after:(Z,X)=>Z.isStricterThan(X)?Z:X}});JU=class JU extends I0{impliedBasis=R.intrinsic.Date.internal;collapsibleLimitString=e1(this.rule);traverseAllows=(Z)=>Z>=this.rule;reduceJsonSchema(Z,X){return X.fallback.date({code:"date",base:Z,after:this.rule})}};gZ={implementation:xW,Node:JU}});var hW,qU,xZ;var hZ=O(()=>{E();U0();d();p();M1();hW=g({kind:"before",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:g4,serialize:(Z)=>Z.toISOString()}},normalize:k4("before"),defaults:{description:(Z)=>`${Z.collapsibleLimitString} or earlier`,actual:e1},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:A.init("range",Z,X)}});qU=class qU extends I0{collapsibleLimitString=e1(this.rule);traverseAllows=(Z)=>Z<=this.rule;impliedBasis=R.intrinsic.Date.internal;reduceJsonSchema(Z,X){return X.fallback.date({code:"date",base:Z,before:this.rule})}};xZ={implementation:hW,Node:qU}});var mW,YU,mZ;var uZ=O(()=>{b0();U0();d();p();N1();M1();mW=g({kind:"exactLength",collapsibleKey:"rule",keys:{rule:{parse:w2("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)=>A.init("unit",Q.$.node("unit",{unit:Z.rule}),Q.$.node("unit",{unit:X.rule}),{path:["length"]}),minLength:(Z,X)=>Z.rule>=X.rule?Z:A.init("range",Z,X),maxLength:(Z,X)=>Z.rule<=X.rule?Z:A.init("range",Z,X)}});YU=class YU extends B1{traverseAllows=(Z)=>Z.length===this.rule;compiledCondition=`data.length === ${this.rule}`;compiledNegation=`data.length !== ${this.rule}`;impliedBasis=R.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 t.throwInternalOperandError("exactLength",Z)}}};mZ={implementation:mW,Node:YU}});var uW,WU,pZ;var lZ=O(()=>{U0();d();p();M1();uW=g({kind:"max",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:f4},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:A.init("range",Z,X)},obviatesBasisDescription:!0});WU=class WU extends I0{impliedBasis=R.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}};pZ={implementation:uW,Node:WU}});var pW,$U,dZ;var cZ=O(()=>{U0();d();p();N1();M1();pW=g({kind:"maxLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:w2("maxLength")}},reduce:(Z,X)=>Z.rule===0?X.node("exactLength",Z):void 0,normalize:y4("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:A.init("range",Z,X)}});$U=class $U extends I0{impliedBasis=R.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 t.throwInternalOperandError("maxLength",Z)}}};dZ={implementation:pW,Node:$U}});var lW,LU,iZ;var sZ=O(()=>{d();p();M1();lW=g({kind:"min",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:f4},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});LU=class LU extends I0{impliedBasis=R.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}};iZ={implementation:lW,Node:LU}});var dW,GU,aZ;var rZ=O(()=>{d();p();N1();M1();dW=g({kind:"minLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:w2("minLength")}},reduce:(Z)=>Z.rule===0?R.intrinsic.unknown:void 0,normalize:y4("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}});GU=class GU extends I0{impliedBasis=R.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 t.throwInternalOperandError("minLength",Z)}}};aZ={implementation:dW,Node:GU}});var _U,VU;var oZ=O(()=>{vZ();hZ();uZ();lZ();cZ();sZ();rZ();_U={min:iZ.implementation,max:pZ.implementation,minLength:aZ.implementation,maxLength:dZ.implementation,exactLength:mZ.implementation,after:gZ.implementation,before:xZ.implementation},VU={min:iZ.Node,max:pZ.Node,minLength:aZ.Node,maxLength:dZ.Node,exactLength:mZ.Node,after:gZ.Node,before:xZ.Node}});var cW,HU,nZ;var tZ=O(()=>{b0();d();p();cW=g({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}});HU=class HU extends B1{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=R.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}};nZ={implementation:cW,Node:HU}});var D6=(Z,X)=>{let Q=iW(Z);if(X&&!X.includes(Q))return M(`Root of kind ${Q} should be one of ${X}`);return Q},iW=(Z)=>{if(b(Z,"root"))return Z.kind;if(typeof Z==="string")return Z[0]==="$"?"alias":(Z in D0)?"domain":"proto";if(typeof Z==="function")return"proto";if(typeof Z!=="object"||Z===null)return M(FU(Z));if("morphs"in Z)return"morph";if("branches"in Z||r(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 E4)))return"intersection";if("proto"in Z)return"proto";if("domain"in Z)return"domain";return M(FU(Z))},FU=(Z)=>`${k(Z)} is not a valid type schema`,zU,sW=(Z)=>r(Z)?Z.map((X)=>X.collapsibleJson):Z.collapsibleJson,O0,eZ=(Z)=>{return zU[Z]??=0,`${Z}${++zU[Z]}`},Z8=(Z)=>{let X=A2[Z.kind],Q=X.applyConfig?.(Z.def,Z.$.resolvedConfig)??Z.def,U={},{meta:J,...q}=Q,Y=J===void 0?{}:typeof J==="string"?{description:J}:J,W=LZ(q).sort(([L],[_])=>O2(L)?O2(_)?R2(L)-R2(_):1:O2(_)?-1:L<_?-1:1).filter(([L,_])=>{if(L.startsWith("meta.")){let G=L.slice(5);return Y[G]=_,!1}return!0});for(let L of W){let _=L[0],G=X.keys[_];if(!G)return M(`Key ${_} is not valid on ${Z.kind} schema`);let V=G.parse?G.parse(L[1],Z):L[1];if(V!==w0&&(V!==void 0||G.preserveUndefined))U[_]=V}if(X.reduce&&!Z.prereduced){let L=X.reduce(U,Z.$);if(L){if(L instanceof A)return L.throw();return aW(L,Y)}}return X8({id:Z.id,kind:Z.kind,inner:U,meta:Y,$:Z.$})},X8=({id:Z,kind:X,inner:Q,meta:U,$:J,ignoreCache:q})=>{let Y=A2[X],W=LZ(Q),$=[],L={};for(let[K,T]of W){let P=Y.keys[K],D=P.serialize??(P.child?sW:g0);if(L[K]=D(T),P.child===!0){let S=T;if(r(S))$.push(...S);else $.push(S)}else if(typeof P.child==="function")$.push(...P.child(T))}if(Y.finalizeInnerJson)L=Y.finalizeInnerJson(L);let _={...L},G={};if(!Q1(U))G=y(U,(K,T)=>[K,K==="examples"?T:g0(T)]),_.meta=v4(G,"description",!0);L=v4(L,Y.collapsibleKey,!1);let V=JSON.stringify({kind:X,...L});_=v4(_,Y.collapsibleKey,!1);let F=v4(_,Y.collapsibleKey,!0),z=JSON.stringify({kind:X,..._});if(J.nodesByHash[z]&&!q)return J.nodesByHash[z];let H={id:Z,kind:X,impl:Y,inner:Q,innerEntries:W,innerJson:L,innerHash:V,meta:U,metaJson:G,json:_,hash:z,collapsibleJson:F,children:$};if(X!=="intersection"){for(let K in Q)if(K!=="in"&&K!=="out")H[K]=Q[K]}let B=new MU[X](H,J);return J.nodesByHash[z]=B},BU=(Z,X)=>{if(Z.id===X)return Z;if(o(O0[X]))u(`Unexpected attempt to overwrite node id ${X}`);return X8({id:X,kind:Z.kind,inner:Z.inner,meta:Z.meta,$:Z.$,ignoreCache:!0})},aW=(Z,X,Q)=>{if(Q&&o(O0[Q]))u(`Unexpected attempt to overwrite node id ${Q}`);return X8({id:Q??eZ(X.alias??Z.kind),kind:Z.kind,inner:Z.inner,meta:X,$:Z.$})},v4=(Z,X,Q)=>{let U=Object.keys(Z);if(U.length===1&&U[0]===X){let J=Z[X];if(Q)return J;if(T0(J,"object")&&(Object.keys(J).length===1||Array.isArray(J)))return J}return Z};var x4=O(()=>{E();h4();U0();d();p();J0();zU={},O0={};R.nodesByRegisteredId=O0});var w6=(Z,X,Q)=>{if(Z.key!==X.key)return null;let U=Z.key,J=n(Z.value,X.value,Q),q=Z.required||X.required?"required":"optional";if(J instanceof A)if(q==="optional")J=R.intrinsic.never.internal;else return J.withPrefixKey(Z.key,Z.required&&X.required?"required":"optional");if(q==="required")return Q.$.node("required",{key:U,value:J});let Y=Z.hasDefault()?X.hasDefault()?Z.default===X.default?Z.default:M(Q8(Z.default,X.default)):Z.default:X.hasDefault()?X.default:w0;return Q.$.node("optional",{key:U,value:J,default:Y})},A6,Q8=(Z,X)=>`Invalid intersection of default values ${k(Z)} & ${k(X)}`;var S6=O(()=>{E();b0();Z2();S1();U0();v0();p();U1();A6=class A6 extends x0{required=this.kind==="required";optional=this.kind==="optional";impliedBasis=R.intrinsic.object.internal;serializedKey=s0(this.key);compiledKey=typeof this.key==="string"?this.key:this.serializedKey;flatRefs=m(this.value.flatRefs.map((Z)=>r0([this.key,...Z.path],Z.node)),r0([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 rW,OU,C6,oW,nW=(Z)=>{if(!Z.hasDefault())return;let X=`{${Z.compiledKey}: ${Z.value.id} = ${g0(Z.default)}}`;return oW[X]??=U8(Z.key,Z.value,Z.default)},U8=(Z,X,Q)=>{if(typeof Q==="function")return X.includesTransform?(J,q)=>{return C0(Z,()=>X(J[Z]=Q(),q),q),J}:(J)=>{return J[Z]=Q(),J};let U=X.includesTransform?X.assert(Q):Q;return T0(U,"object")?(J,q)=>{return C0(Z,()=>X(J[Z]=Q,q),q),J}:(J)=>{return J[Z]=U,J}},N6=(Z,X,Q)=>{let U=D1(X);if(T0(X,"object")&&!U)M(tW(Q));let J=Z.in(U?X():X);if(J instanceof S0){if(Q===null)M(`Default ${J.summary}`);let q=J.transform((Y)=>Y.transform((W)=>({...W,prefixPath:[Q]})));M(`Default for ${q.summary}`)}return X},tW=(Z)=>{return`Non-primitive default ${Z===null?"":typeof Z==="number"?`for value at [${Z}] `:`for ${s0(Z)} `}must be specified as a function like () => ({my: 'object'})`};var S2=O(()=>{E();m4();S1();R6();d();p();U1();S6();rW=g({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(I.undefined)},{prereduced:!0})}},defaults:{description:(Z)=>`${Z.compiledKey}?: ${Z.value.description}`},intersections:{optional:w6}});OU=class OU extends A6{constructor(...Z){super(...Z);if("default"in this.inner)N6(this.value,this.inner.default,this.key)}get rawIn(){let Z=super.rawIn;if(!this.hasDefault())return Z;return this.$.node("optional",K4(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} = ${k(this.inner.default)}`:`${this.compiledKey}?: ${this.value.expression}`;defaultValueMorph=nW(this);defaultValueMorphRef=this.defaultValueMorph&&Z0(this.defaultValueMorph)};C6={implementation:rW,Node:OU},oW={}});var h0,eW="Expected a non-empty brand name after #",TU,Z$=(Z)=>`JSONSchema target '${Z}' is not supported (must be ${TU.map((X)=>`"${X}"`).join(" or ")})`,RU=(Z)=>{if(!k0(TU,Z))M(Z$(Z));return Z},C2=(Z)=>typeof Z==="object"&&!(Z instanceof Date)?{...Z,exclusive:!0}:{rule:Z,exclusive:!0},j6=(Z,X)=>b(X,"root")?b(Z,"root")?Z.extends(X):X.allows(Z):b(Z,"root")?Z.hasUnit(X):X===Z,PU=(Z)=>{if(Z.hasKind("morph"))return null;if(Z.hasKind("intersection"))return Z.inner.structure??(Z.basis?.domain==="object"?Z.$.bindReference(R.intrinsic.emptyStructure):null);if(Z.isBasis()&&Z.domain==="object")return Z.$.bindReference(R.intrinsic.emptyStructure);return null},X$=(Z)=>`Props cannot be extracted from a union. Use .distribute to extract props from each branch instead. Received:
23
- ${Z}`,KU=(Z,X)=>`${Z} operand must be an object (was ${X})`;var b1=O(()=>{E();P2();b0();Z2();U0();R6();d();v0();p();J0();S2();h0=class h0 extends K6{constructor(Z,X){super(Z,X);Object.defineProperty(this,M0,{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 S0)return X;return{value:X}},jsonSchema:{input:(Z)=>this.rawIn.toJsonSchema({target:RU(Z.target),...Z.libraryOptions}),output:(Z)=>this.rawOut.toJsonSchema({target:RU(Z.target),...Z.libraryOptions})}}}as(){return this}brand(Z){if(Z==="")return M(eW);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=AZ(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=y(this.references,(J,q)=>q.isRoot()&&!q.alwaysExpandJsonSchema?[q.id,q.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 A)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 A?X.throw():X}rawAnd(Z){let X=this.rawIntersect(Z);return X instanceof A?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(),R.intrinsic.unknown.internal);if(Z.branches.length===0)M(jZ(`keyof ${this.expression}`));return this._keyof=this.$.finalize(Z)}get props(){if(this.branches.length!==1)return M(X$(this.expression));return[...this.applyStructuralOperation("props",[])[0]]}merge(Z){let X=this.$.parseDefinition(Z);return this.$.schema(X.distribute((Q)=>this.applyStructuralOperation("merge",[PU(Q)??M(KU("merge",Q.expression))])))}applyStructuralOperation(Z,X){return this.distribute((Q)=>{if(Q.equals(R.intrinsic.object)&&Z!=="merge")return Q;let U=PU(Q);if(!U)M(KU(Z,Q.expression));if(Z==="keyof")return U.keyof();if(Z==="get")return U.get(...X);if(Z==="props")return U.props;let J=Z==="required"?"require":Z==="partial"?"optionalize":Z;return this.$.node("intersection",{domain:"object",structure:U[J](...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 A)}extends(Z){if(this.isNever())return!0;let X=this.intersect(Z);return!(X instanceof A)&&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 N6(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(b(U,"root")?U:(J,q)=>{try{return U(J,q)}catch(Y){return q.error({code:"predicate",predicate:U,actual:`aborted due to error:
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
+ `)}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
+ `+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=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
+ • ${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=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=T6(this,Z,this.$);if(X instanceof A)return X.throw();return X}rawPipeOnce(Z){if(b(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:u(`Unexpected constraint node ${U}`);let J=Z==="root"?this:Z==="in"?this.rawIn:this.rawOut;if(J.hasKind("morph")||U.impliedBasis&&!J.extends(U.impliedBasis))return tQ(X,U.impliedBasis,this);let q=this.$.node("intersection",{[U.kind]:U}),Y=Z==="out"?T6(this,q,this.$):N0(this,q,this.$);if(Y instanceof A)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,J)=>U==="structure"?X==="ignore"?K4(J,{undeclared:1}):{...J,undeclared:X}:J,Q?void 0:{shouldTransform:(U)=>!k0(B2,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",C2(Z))}lessThan(Z){return this.constrain("max",C2(Z))}atLeastLength(Z){return this.constrain("minLength",Z)}atMostLength(Z){return this.constrain("maxLength",Z)}moreThanLength(Z){return this.constrain("minLength",C2(Z))}lessThanLength(Z){return this.constrain("maxLength",C2(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",C2(Z))}earlierThan(Z){return this.constrain("before",C2(Z))}};TU=["draft-2020-12","draft-07"]});var J1=(Z,X)=>y(b4(Z),(Q,U)=>[U,X]);var N2=O(()=>{E();d()});var Q$=(Z)=>typeof Z==="string"?{reference:Z}:Z,DU=(Z)=>Z instanceof A?R.intrinsic.never.internal:Z,U$,wU,J$=(Z,X)=>`Alias '${Z}' has a shallow resolution cycle: ${[...X,Z].join("->")}`,E6;var J8=O(()=>{E();x4();U0();d();v0();p();J0();b1();N2();U$=g({kind:"alias",hasAssociatedError:!1,collapsibleKey:"reference",keys:{reference:{serialize:(Z)=>Z.startsWith("$")?Z:`$ark.${Z}`},resolve:{}},normalize:Q$,defaults:{description:(Z)=>Z.reference},intersections:{alias:(Z,X,Q)=>Q.$.lazilyResolve(()=>DU(n(Z.resolution,X.resolution,Q)),`${Z.reference}${Q.pipe?"=>":"&"}${X.reference}`),...J1("alias",(Z,X,Q)=>{if(X.isUnknown())return Z;if(X.isNever())return X;if(X.isBasis()&&!X.overlaps(R.intrinsic.object))return A.init("assignability",R.intrinsic.object,X);return Q.$.lazilyResolve(()=>DU(n(Z.resolution,X,Q)),`${Z.reference}${Q.pipe?"=>":"&"}${X.id}`)})}});wU=class wU extends h0{expression=this.reference;structure=void 0;get resolution(){let Z=this._resolve();return O0[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=O0[Z],Q=[];while(b(X,"context")){if(Q.includes(X.id))return M(J$(X.id,Q));Q.push(X.id),X=O0[X.id]}if(!b(X,"root"))return u(`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: ${k(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(b(X,"root"))return X.id;return u(`Unexpected resolution for reference ${this.reference}: ${k(X)}`)}get defaultShortDescription(){return D0.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))}};E6={implementation:U$,Node:wU}});var X2;var u4=O(()=>{d();b1();X2=class X2 extends h0{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 C1(this.errorContext)}compile(Z){if(Z.traversalKind==="Allows")Z.return(this.compiledCondition);else Z.if(this.compiledNegation,()=>Z.line(`ctx.errorFromNodeContext(${this.compiledErrorContext})`))}}});var q$,AU,p4;var q8=O(()=>{E();U0();d();u4();q$=g({kind:"domain",hasAssociatedError:!0,collapsibleKey:"domain",keys:{domain:{},numberAllowsNaN:{}},normalize:(Z)=>typeof Z==="string"?{domain:Z}:H2(Z,"numberAllowsNaN")&&Z.domain!=="number"?M(p4.writeBadAllowNanMessage(Z.domain)):Z,applyConfig:(Z,X)=>Z.numberAllowsNaN===void 0&&Z.domain==="number"&&X.numberAllowsNaN?{...Z,numberAllowsNaN:!0}:Z,defaults:{description:(Z)=>D0[Z.domain],actual:(Z)=>Number.isNaN(Z)?"NaN":D0[$0(Z)]},intersections:{domain:(Z,X)=>Z.domain==="number"&&X.domain==="number"?Z.numberAllowsNaN?X:Z:A.init("domain",Z,X)}});AU=class AU extends X2{requiresNaNCheck=this.domain==="number"&&!this.numberAllowsNaN;traverseAllows=this.requiresNaNCheck?(Z)=>typeof Z==="number"&&!Number.isNaN(Z):(Z)=>$0(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 D0[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}}};p4={implementation:q$,Node:AU,writeBadAllowNanMessage:(Z)=>`numberAllowsNaN may only be specified with domain "number" (was ${Z})`}});var Y$,CU,Y8,W$=(Z)=>{if(Z.structure?.expression)return Z.structure.expression;let X=Z.basis&&!Z.prestructurals.some((J)=>J.impl.obviatesBasisExpression)?Z.basis.nestableExpression:"",Q=Z.prestructurals.map((J)=>J.expression).join(" & "),U=`${X}${X?" ":""}${Q}`;if(U==="Array == 0")return"[]";return U||"unknown"},SU=(Z,X,Q)=>{let U={},J=Z.proto??Z.domain,q=X.proto??X.domain,Y=J?q?n(J,q,Q):J:q;if(Y instanceof A)return Y;if(Y)U[Y.kind]=Y;return T2({kind:"intersection",baseInner:U,l:D2(Z),r:D2(X),roots:[],ctx:Q})};var W8=O(()=>{E();b0();U0();d();v0();J0();b1();N2();Y$=g({kind:"intersection",hasAssociatedError:!0,normalize:(Z)=>{if(o(Z))return Z;let{structure:X,...Q}=Z,U=!!X,J=X??{},q=y(Q,(Y,W)=>{if(L0(Y,lQ)){if(U)M(`Flattened structure key ${Y} cannot be specified alongside a root 'structure' key.`);return J[Y]=W,[]}return[Y,W]});if(b(J,"constraint")||!Q1(J))q.structure=J;return q},finalizeInnerJson:({structure:Z,...X})=>T0(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,...J}=X,q=J.variadic&&Object.keys(J).length===1?J.variadic:J;return{...Q,sequence:q}}},divisor:{child:!0,parse:F0("divisor")},max:{child:!0,parse:F0("max")},min:{child:!0,parse:F0("min")},maxLength:{child:!0,parse:F0("maxLength")},minLength:{child:!0,parse:F0("minLength")},exactLength:{child:!0,parse:F0("exactLength")},before:{child:!0,parse:F0("before")},after:{child:!0,parse:F0("after")},pattern:{child:!0,parse:F0("pattern")},predicate:{child:!0,parse:F0("predicate")}},reduce:(Z,X)=>SU({},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,J)=>U.kind==="min"&&J.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
- ${Z.expected}`},intersections:{intersection:(Z,X,Q)=>SU(Z.inner,X.inner,Q),...J1("intersection",(Z,X,Q)=>{if(Z.children.length===0)return X;let{domain:U,proto:J,...q}=Z.inner,Y=J??U,W=Y?n(Y,X,Q):X;return W instanceof A?W:Z?.basis?.equals(W)?Z:Z.$.node("intersection",{...q,[W.kind]:W},{prereduced:!0})})}});CU=class CU extends h0{basis=this.inner.domain??this.inner.proto??null;prestructurals=[];refinements=this.children.filter((Z)=>{if(!Z.isRefinement())return!1;if(k0(DZ,Z.kind))this.prestructurals.push(Z);return!0});structure=this.inner.structure;expression=W$(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])}}};Y8={implementation:Y$,Node:CU}});var $$,NU,$8,L$=(Z,X)=>`The intersection of distinct morphs at a single path is indeterminate:
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 L8=O(()=>{E();U0();d();v0();p();J0();b1();N2();$$=g({kind:"morph",hasAssociatedError:!1,keys:{in:{child:!0,parse:(Z,X)=>X.$.parseSchema(Z)},morphs:{parse:T1,serialize:(Z)=>Z.map((X)=>b(X,"root")?X.json:Z0(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(L$(Z.expression,X.expression));let U=n(Z.rawIn,X.rawIn,Q);if(U instanceof A)return U;let J={morphs:Z.morphs};if(Z.declaredIn||X.declaredIn){let q=n(Z.rawIn,X.rawIn,Q);if(q instanceof A)return q.throw();else J.declaredIn=q}if(Z.declaredOut||X.declaredOut){let q=n(Z.rawOut,X.rawOut,Q);if(q instanceof A)return q.throw();else J.declaredOut=q}return U.distribute((q)=>Q.$.node("morph",{...J,in:q}),Q.$.parseSchema)},...J1("morph",(Z,X,Q)=>{let U=Z.inner.in?n(Z.inner.in,X,Q):X;return U instanceof A?U:U.equals(Z.inner.in)?Z:Q.$.node("morph",{...Z.inner,in:U})})}});NU=class NU extends h0{serializedMorphs=this.morphs.map(Z0);compiledMorphs=`[${this.serializedMorphs}]`;lastMorph=this.inner.morphs[this.inner.morphs.length-1];lastMorphIfNode=b(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??R.intrinsic.unknown.internal}get rawOut(){return this.declaredOut??this.introspectableOut??R.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||b(X,"root")&&b(Q,"root")&&X.equals(Q)})}};$8={implementation:$$,Node:NU}});var G$,jU,b6;var G8=O(()=>{E();U0();d();p();J0();u4();G$=g({kind:"proto",hasAssociatedError:!0,collapsibleKey:"proto",keys:{proto:{serialize:(Z)=>L6(Z)??g0(Z)},dateAllowsInvalid:{}},normalize:(Z)=>{let X=typeof Z==="string"?{proto:o1[Z]}:typeof Z==="function"?o(Z)?Z:{proto:Z}:typeof Z.proto==="string"?{...Z,proto:o1[Z.proto]}:Z;if(typeof X.proto!=="function")M(b6.writeInvalidSchemaMessage(X.proto));if(H2(X,"dateAllowsInvalid")&&X.proto!==Date)M(b6.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?YQ[Z.builtinName]:`an instance of ${Z.proto.name}`,actual:(Z)=>Z instanceof Date&&Z.toString()==="Invalid Date"?"an invalid Date":$6(Z)},intersections:{proto:(Z,X)=>Z.proto===Date&&X.proto===Date?Z.dateAllowsInvalid?X:Z:FZ(Z.proto,X.proto)?Z:FZ(X.proto,Z.proto)?X:A.init("proto",Z,X),domain:(Z,X)=>X.domain==="object"?Z:A.init("domain",R.intrinsic.object.internal,X)}});jU=class jU extends X2{builtinName=L6(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}};b6={implementation:G$,Node:jU,writeBadInvalidDateMessage:(Z)=>`dateAllowsInvalid may only be specified with constructor Date (was ${Z.name})`,writeInvalidSchemaMessage:(Z)=>`instanceOf operand must be a function (was ${$0(Z)})`}});var _$,IU,V$=(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],J={kind:U.kind,path:U.path,optionallyChainedPropString:fU(U.path)},q=X.branches.map((Y,W)=>({originalIndex:W,branch:Y}));return{best:U,location:J,defaultEntries:q,node:X}},H$=(Z,X)=>{let Q=Z.best.cases[X],U=z$(Q.condition,Z.location.path,Z.node.$),J=[],q=[];for(let Y=0;Y<Z.defaultEntries.length;Y++){let W=Z.defaultEntries[Y];if(Q.branchIndices.includes(W.originalIndex)){let $=EU(Z.node.branches[W.originalIndex],Z.location);if($===null)J=null;else J?.push({originalIndex:W.originalIndex,branch:$})}else if(W.branch.hasKind("alias")&&U.hasKind("domain")&&U.domain==="object")J?.push(W);else{if(W.branch.rawIn.overlaps(U)){let $=EU(W.branch,Z.location);J?.push({originalIndex:W.originalIndex,branch:$})}q.push(W)}}return Z.defaultEntries=q,J},F$=(Z,X)=>{return Z.filter((U)=>{let J=Object.values(U.cases).map((q)=>q.branchIndices);for(let q=0;q<J.length-1;q++){let Y=J[q];for(let W=q+1;W<J.length;W++){let $=J[W];for(let L of Y)for(let _ of $)if(L>_){if(X[L].overlaps(X[_]))return!1}}}return!0})},z$=(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 J=X.length-1;J>=0;J--){let q=X[J];U=Q.node("intersection",typeof q==="number"?{proto:"Array",sequence:[...o3(q).map((Y)=>({})),U]}:{domain:"object",required:[{key:q,value:U}]})}return U},fU=(Z)=>Z.reduce((X,Q)=>X+TZ(Q,!0),"data"),B$,M$,V8,O$=(Z)=>({kind:Z.kind,path:Z.path.map((X)=>typeof X==="string"?X:s0(X)),cases:y(Z.cases,(X,Q)=>[X,Q===!0?Q:Q.hasKind("union")&&Q.discriminantJson?Q.discriminantJson:Q.json])}),R$,P$=(Z)=>j2(Z,R$),j2=(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 J={},q=Z.filter((W)=>J[W]?!1:J[W]=!0),Y=q.pop();return`${q.join(Q)}${q.length?U:""}${Y}`},_8=(Z,X,Q)=>{let U=X.map(()=>[]);for(let q=0;q<Z.length;q++){let Y={};for(let W=0;W<X.length;W++){if(U[W]===null)continue;if(Z[q].equals(X[W])){U[W]=null,Y={};break}let $=n(Z[q],X[W],Q);if($ instanceof A)continue;if($.equals(Z[q])){U[W].push(Z[q]),Y={};break}if($.equals(X[W]))U[W]=null;else Y[W]=$}for(let W in Y)U[W][q]=Y[W]}let J=U.flatMap((q,Y)=>q?.flatMap((W)=>W.branches)??X[Y]);return J.length===0?A.init("union",Z,X):J},K$=({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 J=U+1;J<Z.length&&Q[U]&&Q[J];J++){if(Z[U].equals(Z[J])){Q[J]=!1;continue}let q=N0(Z[U].rawIn,Z[J].rawIn,Z[0].$);if(q instanceof A)continue;if(!X)T$(Z[U],Z[J]);if(q.equals(Z[U].rawIn))Q[U]=!!X;else if(q.equals(Z[J].rawIn))Q[J]=!1}return Z.filter((U,J)=>Q[J])},T$=(Z,X)=>{if(!Z.includesTransform&&!X.includesTransform)return;if(!V1(Z.shallowMorphs,X.shallowMorphs))M(bU(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(bU(Z.expression,X.expression))},EU=(Z,X)=>Z.transform((Q,U)=>{if(Q==="domain"||Q==="unit")return null;return U},{shouldTransform:(Q,U)=>{let J=fU(U.path);if(!X.optionallyChainedPropString.startsWith(J))return!1;if(Q.hasKind("domain")&&Q.domain==="object")return!0;if((Q.hasKind("domain")||X.kind==="unit")&&J===X.optionallyChainedPropString)return!0;return Q.children.length!==0&&Q.kind!=="index"}}),bU=(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
- Right: ${X}`,D$=(Z,X)=>`The intersection of two ordered unions is indeterminate:
33
+ Right: ${X}`,C$=(Z,X)=>`The intersection of two ordered unions is indeterminate:
34
34
  Left: ${Z}
35
- Right: ${X}`;var H8=O(()=>{E();S1();U0();d();v0();p();U1();J0();b1();N2();_$=g({kind:"union",hasAssociatedError:!0,collapsibleKey:"branches",keys:{ordered:{},branches:{child:!0,parse:(Z,X)=>{let Q=[];for(let U of Z){let J=b(U,"root")?U.branches:X.$.parseSchema(U).branches;for(let q of J)if(q.hasKind("morph")){let Y=Q.findIndex((W)=>W.hasKind("morph")&&W.hasEqualMorphs(q));if(Y===-1)Q.push(q);else{let W=Q[Y];Q[Y]=X.$.node("morph",{...W.inner,in:W.rawIn.rawOr(q.rawIn)})}}else Q.push(q)}if(!X.def.ordered)Q.sort((U,J)=>U.hash<J.hash?-1:1);return Q}}},normalize:(Z)=>r(Z)?{branches:Z}:Z,reduce:(Z,X)=>{let Q=K$(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,j2),expected:(Z)=>{let X=t3(Z.errors,"propString"),Q=Object.entries(X).map(([U,J])=>{let q=[];for(let $ of J)Z1(q,$.expected);let Y=j2(q),W=J.every(($)=>$.actual===J[0].actual)?J[0].actual:k(J[0].data);return`${U&&`${U} `}must be ${Y}${W&&` (was ${W})`}`});return j2(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 A.init("presence",Z,X);let U;if(Z.ordered){if(X.ordered)M(D$(Z.expression,X.expression));if(U=_8(X.branches,Z.branches,Q),U instanceof A)U.invert()}else U=_8(Z.branches,X.branches,Q);if(U instanceof A)return U;return Q.$.parseSchema(Z.ordered||X.ordered?{branches:U,ordered:!0}:{branches:U})},...J1("union",(Z,X,Q)=>{let U=_8(Z.branches,[X],Q);if(U instanceof A)return U;if(U.length===1)return U[0];return Q.$.parseSchema(Z.ordered?{branches:U,ordered:!0}:{branches:U})})}});IU=class IU extends h0{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]=R.intrinsic.boolean;continue}Z.push(Q)}return Z}unitBranches=this.branches.filter((Z)=>Z.rawIn.hasKind("unit"));discriminant=this.discriminate();discriminantJson=this.discriminant?O$(this.discriminant):null;expression=this.distribute((Z)=>Z.nestableExpression,P$);createBranchedOptimisticRootApply(){return(Z,X)=>{let Q=this.traverseOptimistic(Z);if(Q!==w0)return Q;let U=new a0(Z,this.$.resolvedConfig);return this.traverseApply(Z,U),U.finalize(X)}}get shallowMorphs(){return this.branches.reduce((Z,X)=>Z1(Z,X.shallowMorphs),[])}get defaultShortDescription(){return this.distribute((Z)=>Z.defaultShortDescription,j2)}innerToJsonSchema(Z){if(this.branchGroups.length===1&&this.branchGroups[0].equals(R.intrinsic.boolean))return{type:"boolean"};let X=this.branchGroups.map((Q)=>Q.toJsonSchemaRecurse(Z));if(X.every((Q)=>Object.keys(Q).length===1&&H2(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 w0};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:J}=Z;if(Z.optimistic=!1,Z.block(`switch(${X})`,()=>{for(let L in Q){let _=Q[L],G=L==="default"?L:`case ${L}`,V;if(_===!0)V=J?"data":"true";else if(J)if(_.rootApplyStrategy==="branchedOptimistic")V=Z.invoke(_,{kind:"Optimistic"});else if(_.contextFreeMorph)V=`${Z.invoke(_)} ? ${Z0(_.contextFreeMorph)}(data) : "${w0}"`;else V=`${Z.invoke(_)} ? data : "${w0}"`;else V=Z.invoke(_);Z.line(`${G}: return ${V}`)}return Z}),Z.traversalKind==="Allows"){Z.return(J?`"${w0}"`:!1);return}let q=j2(this.discriminant.kind==="domain"?U.map((L)=>{let _=L.slice(1,-1);return _==="function"?D0.object:D0[_]}):U),Y=this.discriminant.path.map((L)=>typeof L==="symbol"?Z0(L):JSON.stringify(L)),W=JSON.stringify(q),$=this.discriminant.kind==="domain"?`${B$}[${X}]`:`${M$}(${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?`${Z0(Q.contextFreeMorph)}(data)`:"data":!0));Z.return(X?`"${w0}"`:!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 J=y(this.unitBranches,(q,Y)=>[`${Y.rawIn.serializedValue}`,Y.hasKind("morph")?Y:!0]);return{kind:"unit",path:[],optionallyChainedPropString:"data",cases:J}}let Z=[];for(let J=0;J<this.branches.length-1;J++){let q=this.branches[J];for(let Y=J+1;Y<this.branches.length;Y++){let W=this.branches[Y],$=N0(q.rawIn,W.rawIn,q.$);if(!($ instanceof A))continue;for(let L of $){if(!L.kind||L.optional)continue;let _,G;if(L.kind==="domain"){let{l:F,r:z}=L;_=`"${typeof F==="string"?F:F.domain}"`,G=`"${typeof z==="string"?z:z.domain}"`}else if(L.kind==="unit")_=L.l.serializedValue,G=L.r.serializedValue;else continue;let V=Z.find((F)=>V1(F.path,L.path)&&F.kind===L.kind);if(!V)Z.push({kind:L.kind,cases:{[_]:{branchIndices:[J],condition:L.l},[G]:{branchIndices:[Y],condition:L.r}},path:L.path});else{if(V.cases[_])V.cases[_].branchIndices=Z1(V.cases[_].branchIndices,J);else V.cases[_]??={branchIndices:[J],condition:L.l};if(V.cases[G])V.cases[G].branchIndices=Z1(V.cases[G].branchIndices,Y);else V.cases[G]??={branchIndices:[Y],condition:L.r}}}}}let X=this.ordered?F$(Z,this.branches):Z;if(!X.length)return null;let Q=V$(X,this),U={};for(let J in Q.best.cases){let q=H$(Q,J);if(q===null){U[J]=!0;continue}if(q.length===this.branches.length)return null;if(this.ordered)q.sort(($,L)=>$.originalIndex-L.originalIndex);let Y=q.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[J]=W}if(Q.defaultEntries.length){let J=Q.defaultEntries.map((q)=>q.branch);U.default=this.$.node("union",this.ordered?{branches:J,ordered:!0}:J,{prereduced:!0}),Object.assign(this.referencesById,U.default.referencesById)}return Object.assign(Q.location,{cases:U})}};B$=Z0(e3),M$=Z0(k),V8={implementation:_$,Node:IU},R$={delimiter:" | ",finalDelimiter:" | "}});var w$,kU,F8,yU=(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 z8=O(()=>{E();U0();d();p();u4();N2();w$=g({kind:"unit",hasAssociatedError:!0,keys:{unit:{preserveUndefined:!0,serialize:(Z)=>Z instanceof Date?Z.toISOString():g0(Z)}},normalize:(Z)=>Z,defaults:{description:(Z)=>k(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)=>A.init("unit",Z,X),...J1("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:R.intrinsic.object;if(Z.domain!==U.domain){let J=Z.domain==="undefined"||Z.domain==="null"||Z.domain==="boolean"?Z.domain:R.intrinsic[Z.domain];return A.init("domain",J,U)}}return A.init("assignability",Z,X.hasKind("intersection")?X.children.find((U)=>!U.allows(Z.unit)):X)})}});kU=class kU extends X2{compiledValue=this.json.unit;serializedValue=typeof this.unit==="string"||this.unit instanceof Date?JSON.stringify(this.compiledValue):`${this.compiledValue}`;compiledCondition=yU(this.unit,this.serializedValue);compiledNegation=yU(this.unit,this.serializedValue,"negated");expression=k(this.unit);domain=$0(this.unit);get defaultShortDescription(){return this.domain==="object"?D0.object:this.description}innerToJsonSchema(Z){return this.unit===null?{type:"null"}:R.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};F8={implementation:w$,Node:kU}});var A$,gU,B8,S$=(Z)=>`Index keys ${Z.join(", ")} should be specified as named props.`,C$=(Z)=>`Indexed key definition '${Z}' must be a string or symbol`;var M8=O(()=>{E();b0();Z2();U0();d();v0();p();U1();A$=g({kind:"index",hasAssociatedError:!1,intersectionIsOpen:!0,keys:{signature:{child:!0,parse:(Z,X)=>{let Q=X.$.parseSchema(Z);if(!Q.extends(R.intrinsic.key))return M(C$(Q.expression));let U=Q.branches.filter((J)=>J.hasKind("unit"));if(U.length)return M(S$(U.map((J)=>k(J.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=n(Z.value,X.value,Q),J=U instanceof A?R.intrinsic.never.internal:U;return Q.$.node("index",{signature:Z.signature,value:J})}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}}});gU=class gU extends x0{impliedBasis=R.intrinsic.object.internal;expression=`[${this.signature.expression}]: ${this.value.expression}`;flatRefs=m(this.value.flatRefs.map((Z)=>r0([this.signature,...Z.path],Z.node)),r0([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(){}};B8={implementation:A$,Node:gU}});var N$,vU,O8;var R8=O(()=>{d();S6();N$=g({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:w6,optional:w6}});vU=class vU extends A6{expression=`${this.compiledKey}: ${this.value.expression}`;errorContext=Object.freeze({code:"required",missingValueDescription:this.value.defaultShortDescription,relativePath:[this.key],meta:this.meta});compiledErrorContext=C1(this.errorContext)};O8={implementation:N$,Node:vU}});var j$,mU,E$,b$=(Z)=>{if(!Z.defaultables)return[];let X=[],Q="[",U=Z.prefixLength+Z.defaultablesLength-1;for(let J=Z.prefixLength;J<=U;J++){let[q,Y]=Z.defaultables[J-Z.prefixLength];X.push(U8(J,q,Y)),Q+=`${J}: ${q.id} = ${g0(Y)}, `}return Q+="]",E$[Q]??=X},P8,I$=(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},xU=(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},{}),K8="A postfix required element cannot follow an optional or defaultable element",f$="A postfix element requires a variadic element",I6=(Z)=>{let[X,...Q]=Z.l,[U,...J]=Z.r;if(!X||!U)return Z;let q=Q[Q.length-1]?.kind==="postfix",Y=J[J.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":q||Y?"prefix":X.kind==="defaultables"||U.kind==="defaultables"?"defaultables":"optionals";if(X.kind==="prefix"&&U.kind==="variadic"&&Y){let G=I6({...Z,fixedVariants:[],r:J.map((V)=>({...V,kind:"prefix"}))});if(G.disjoint.length===0)Z.fixedVariants.push(G)}else if(U.kind==="prefix"&&X.kind==="variadic"&&q){let G=I6({...Z,fixedVariants:[],l:Q.map((V)=>({...V,kind:"prefix"}))});if(G.disjoint.length===0)Z.fixedVariants.push(G)}let $=n(X.node,U.node,Z.ctx);if($ instanceof A)if(W==="prefix"||W==="postfix")Z.disjoint.push(...$.withPrefixKey(W==="prefix"?Z.result.length:`-${Q.length+1}`,hU(X)&&hU(U)?"required":"optional")),Z.result=[...Z.result,{kind:W,node:R.intrinsic.never.internal}];else if(W==="optionals"||W==="defaultables")return Z;else return I6({...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(Q8(X.default,U.default));Z.result=[...Z.result,{kind:W,node:$,default:X.kind==="defaultables"?X.default:U.kind==="defaultables"?U.default:u(`Unexpected defaultable intersection from ${X.kind} and ${U.kind} elements.`)}]}else Z.result=[...Z.result,{kind:W,node:$}];let L=Z.l.length,_=Z.r.length;if(X.kind!=="variadic"||L>=_&&(U.kind==="variadic"||_===1))Z.l=Q;if(U.kind!=="variadic"||_>=L&&(X.kind==="variadic"||L===1))Z.r=J;return I6(Z)},hU=(Z)=>Z.kind==="prefix"||Z.kind==="postfix";var T8=O(()=>{E();b0();Z2();U0();d();v0();p();U1();S2();S6();j$=g({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 N6(U,Q[1],null),[U,Q[1]]})},serialize:(Z)=>Z.map((X)=>[X[0].collapsibleJson,g0(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(f$);if(Z.optionals?.length||Z.defaultables?.length)return M(K8)}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()??[],J=Z.defaultables?.slice()??[],q=Z.optionals?.slice()??[],Y=Z.postfix?.slice()??[];if(Z.variadic){while(q[q.length-1]?.equals(Z.variadic))q.pop();if(q.length===0&&J.length===0)while(U[U.length-1]?.equals(Z.variadic))U.pop(),Q++;while(Y[0]?.equals(Z.variadic))Y.shift(),Q++}else if(q.length===0&&J.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:J,optionals:q,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} = ${k(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=I6({l:Z.tuple,r:X.tuple,disjoint:new A,result:[],fixedVariants:[],ctx:Q}),J=U.disjoint.length===0?[U,...U.fixedVariants]:U.fixedVariants;return J.length===0?U.disjoint:J.length===1?Q.$.node("sequence",xU(J[0].result)):Q.$.node("union",J.map((q)=>({proto:Array,sequence:xU(q.result)})))}}});mU=class mU extends x0{impliedBasis=R.intrinsic.Array.internal;tuple=I$(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=_1(this.variadic&&[this.variadic],this.postfix);flatRefs=this.addFlatRefs();addFlatRefs(){return CZ(this.flatRefs,this.prevariadic.flatMap((Z,X)=>m(Z.node.flatRefs.map((Q)=>r0([`${X}`,...Q.path],Q.node)),r0([`${X}`],Z.node)))),CZ(this.flatRefs,this.variadicOrPostfix.flatMap((Z)=>m(Z.flatRefs.map((X)=>r0([R.intrinsic.nonNegativeIntegerString.internal,...X.path],X.node)),r0([R.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=b$(this);defaultValueMorphsReference=this.defaultValueMorphs.length?Z0(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??u(`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(R.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((J)=>{let q=J.node.toJsonSchemaRecurse(X);if(J.kind==="defaultables"){let Y=typeof J.default==="function"?J.default():J.default;q.default=R.intrinsic.jsonData.allows(Y)?Y:X.fallback.defaultValue({code:"defaultValue",base:q,value:Y})}return q});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 J=this.postfix.map((q)=>q.toJsonSchemaRecurse(X));Z=X.fallback.arrayPostfix({code:"arrayPostfix",base:Z,elements:J})}}else{if(Q)Z.additionalItems=!1;else Z.items=!1;delete Z.maxItems}return Z}};E$={},P8={implementation:j$,Node:mU}});var dU=(Z)=>(X)=>{if(X.props.length||X.index){let Q=X.index?.map((J)=>J[Z])??[];for(let J of X.props)Q.push(J[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??"{}"},y$,k$,uU=(Z,X,Q)=>{let U=Z.required?"required":"optional";if(!X.signature.allows(Z.key))return null;let J=N0(Z.value,X.value,Q);if(J instanceof A)return U==="optional"?Q.node("optional",{key:Z.key,value:R.intrinsic.never.internal}):J.withPrefixKey(Z.key,Z.kind);return null},g$,cU,D8,v$=(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+=I.nonNegativeIntegerString.id;else for(let Q=0;Q<Z.sequence.tuple.length;Q++)X+=Q+" | ";X+=")"}return X},x$=(Z)=>{let X=v$(Z);if(!X)return;if(D8[X])return D8[X];let Q=(U,J)=>{for(let q=0;q<Z.defaultable.length;q++)if(!(Z.defaultable[q].key in U))Z.defaultable[q].defaultValueMorph(U,J);if(Z.sequence?.defaultables)for(let q=U.length-Z.sequence.prefixLength;q<Z.sequence.defaultables.length;q++)Z.sequence.defaultValueMorphs[q](U,J);if(Z.undeclared==="delete"){for(let q in U)if(!Z.declaresKey(q))delete U[q]}return U};return D8[X]=Q},h$=(Z,X)=>{let U=`(data${X.defaultable.some((J)=>J.defaultValueMorph.length===2)||X.sequence?.defaultValueMorphs.some((J)=>J.length===2)?", ctx":""})`;return Z.block(`${U} => `,(J)=>{for(let q=0;q<X.defaultable.length;q++){let{serializedKey:Y,defaultValueMorphRef:W}=X.defaultable[q];J.if(`!(${Y} in data)`,($)=>$.line(`${W}${U}`))}if(X.sequence?.defaultables)J.for(`i < ${X.sequence.defaultables.length}`,(q)=>q.set("data[i]",5),`data.length - ${X.sequence.prefixLength}`);if(X.undeclared==="delete")J.forIn("data",(q)=>q.if(`!(${X._compileDeclaresKey(q)})`,(Y)=>Y.line("delete data[k]")));return J.return("data")})},w8,m$=(Z)=>{if(b(Z,"root")&&Z.hasKind("unit"))Z=Z.unit;if(typeof Z==="number")Z=`${Z}`;return Z},u$=(Z,X)=>`${Z} is not allowed as an array index on ${X}. Use the 'nonNegativeIntegerString' keyword instead.`,l4=(Z,X,Q)=>{let[U,J]=r3(Z.branches,(Y)=>Y.hasKind("unit"));if(!U.length)return{index:Q.node("index",{signature:Z,value:X})};let q={};for(let Y of U){let W=Q.node("required",{key:Y.unit,value:X});q[W.kind]=m(q[W.kind],W)}if(J.length)q.index=Q.node("index",{signature:J,value:X});return q},p$=(Z)=>b(Z,"root")?Z.expression:k(Z),pU=(Z,X)=>`Key${X.length===1?"":"s"} ${X.map(p$).join(", ")} ${X.length===1?"does":"do"} not exist on ${Z}`,lU=(Z)=>`Duplicate key ${s0(Z)}`;var A8=O(()=>{E();b0();m4();b1();S1();U0();d();v0();p();N1();U1();J0();S2();y$=dU("description"),k$=dU("expression"),g$=g({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:F0("required"),reduceIo:(Z,X,Q)=>{X.required=m(X.required,Q.map((U)=>Z==="in"?U.rawIn:U.rawOut));return}},optional:{child:!0,parse:F0("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:F0("index")},sequence:{child:!0,parse:F0("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:y$},intersections:{structure:(Z,X,Q)=>{let U={...Z.inner},J={...X.inner},q=new A;if(Z.undeclared){let $=Z.keyof();for(let L of X.requiredKeys)if(!$.allows(L))q.add("presence",R.intrinsic.never.internal,X.propsByKey[L].value,{path:[L]});if(J.optional)J.optional=J.optional.filter((L)=>$.allows(L.key));if(J.index)J.index=J.index.flatMap((L)=>{if(L.signature.extends($))return L;let _=N0($,L.signature,Q.$);if(_ instanceof A)return[];let G=l4(_,L.value,Q.$);if(G.required)J.required=_1(J.required,G.required);if(G.optional)J.optional=_1(J.optional,G.optional);return G.index??[]})}if(X.undeclared){let $=X.keyof();for(let L of Z.requiredKeys)if(!$.allows(L))q.add("presence",Z.propsByKey[L].value,R.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 _=N0($,L.signature,Q.$);if(_ instanceof A)return[];let G=l4(_,L.value,Q.$);if(G.required)U.required=_1(U.required,G.required);if(G.optional)U.optional=_1(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=T2({kind:"structure",baseInner:Y,l:D2(U),r:D2(J),roots:[],ctx:Q});if(W instanceof A)q.push(...W);if(q.length)return q;return W}},reduce:(Z,X)=>{if(!Z.required&&!Z.optional)return;let Q={},U=!1,J=Z.optional?[...Z.optional]:[];if(Z.required)for(let q=0;q<Z.required.length;q++){let Y=Z.required[q];if(Y.key in Q)M(lU(Y.key));if(Q[Y.key]=!0,Z.index)for(let W of Z.index){let $=uU(Y,W,X);if($ instanceof A)return $}}if(Z.optional)for(let q=0;q<Z.optional.length;q++){let Y=Z.optional[q];if(Y.key in Q)M(lU(Y.key));if(Q[Y.key]=!0,Z.index)for(let W of Z.index){let $=uU(Y,W,X);if($ instanceof A)return $;if($!==null)J[q]=$,U=!0}}if(U)return X.node("structure",{...Z,optional:J},{prereduced:!0})}});cU=class cU extends x0{impliedBasis=R.intrinsic.object.internal;impliedSiblings=this.children.flatMap((Z)=>Z.impliedSiblings??[]);props=_1(this.required,this.optional);propsByKey=y(this.props,(Z,X)=>[X.key,X]);propsByKeyReference=Z0(this.propsByKey);expression=k$(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(o(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 J=Q.kind??U?.kind??"required",q=y(Q,(Y,W)=>(Y in C6.implementation.keys)?[Y,W]:[]);return X[J]=m(X[J],this.$.node(J,q)),X},{}))}assertHasKeys(Z){let X=Z.filter((Q)=>!j6(Q,this.keyof()));if(X.length)return M(pU(this.expression,X))}get(Z,...X){let Q,U=!1,J=m$(Z);if((typeof J==="string"||typeof J==="symbol")&&this.propsByKey[J])Q=this.propsByKey[J].value,U=this.propsByKey[J].required;if(this.index){for(let Y of this.index)if(j6(J,Y.signature))Q=Q?.and(Y.value)??Y.value}if(this.sequence&&j6(J,R.intrinsic.nonNegativeIntegerString))if(b(J,"root")){if(this.sequence.variadic)Q=Q?.and(this.sequence.element)??this.sequence.element}else{let Y=Number.parseInt(J);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&&b(J,"root")&&J.extends(R.intrinsic.number))return M(u$(J.expression,this.sequence.expression));return M(pU(this.expression,[J]))}let q=Q.get(...X);return U?q:q.or(R.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=N4(this.inner),U=(J)=>{let q=X.some((Y)=>j6(J,Y));return Z==="pick"?q:!q};if(Q.required)Q.required=Q.required.filter((J)=>U(J.key));if(Q.optional)Q.optional=Q.optional.filter((J)=>U(J.key));if(Q.index)Q.index=Q.index.filter((J)=>U(J.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 J=0;J<this.props.length;J++)if(Z==="Allows"){if(!this.props[J].traverseAllows(X,Q))return!1}else if(this.props[J].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 J=Object.keys(X);J.push(...Object.getOwnPropertySymbols(X));for(let q=0;q<J.length;q++){let Y=J[q];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&&R.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",x$(this))}structuralMorphRef=this.structuralMorph&&Z0(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(["),h$(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 t.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 J=typeof Q.default==="function"?Q.default():Q.default;U.default=R.intrinsic.jsonData.allows(J)?J:X.fallback.defaultValue({code:"defaultValue",base:U,value:J})}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(R.intrinsic.string)){Z.additionalProperties=U;continue}for(let J of Q.signature.branches){if(!J.extends(R.intrinsic.string)){Z=X.fallback.symbolKey({code:"symbolKey",base:Z,key:null,value:U,optional:!1});continue}let q={type:"string"};if(J.hasKind("morph"))q=X.fallback.morph({code:"morph",base:J.rawIn.toJsonSchemaRecurse(X),out:J.rawOut.toJsonSchemaRecurse(X)});if(!J.hasKind("intersection"))return u(`Unexpected index branch kind ${J.kind}.`);let{pattern:Y}=J.inner;if(Y){let W=Object.assign(q,{pattern:Y[0].rule});for(let $=1;$<Y.length;$++)q=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}};D8={},w8={implementation:g$,Node:cU}});var A2,MU;var h4=O(()=>{E();P2();fZ();kZ();oZ();tZ();J8();q8();W8();L8();G8();H8();z8();p();N1();M8();S2();R8();T8();A8();A2={..._U,alias:E6.implementation,domain:p4.implementation,unit:F8.implementation,proto:b6.implementation,union:V8.implementation,morph:$8.implementation,intersection:Y8.implementation,divisor:yZ.implementation,pattern:nZ.implementation,predicate:IZ.implementation,required:O8.implementation,optional:C6.implementation,index:B8.implementation,sequence:P8.implementation,structure:w8.implementation};R.defaultConfig=JQ(Object.assign(y(A2,(Z,X)=>[Z,X.defaults]),{jitless:VQ(),clone:WQ,onUndeclaredKey:"ignore",exactOptionalPropertyTypes:!0,numberAllowsNaN:!1,dateAllowsInvalid:!1,onFail:null,keywords:{},toJsonSchema:t.defaultConfig}));R.resolvedConfig=O6(R.defaultConfig,R.config);MU={...VU,alias:E6.Node,domain:p4.Node,unit:F8.Node,proto:b6.Node,union:V8.Node,morph:$8.Node,intersection:Y8.Node,divisor:yZ.Node,pattern:nZ.Node,predicate:IZ.Node,required:O8.Node,optional:C6.Node,index:B8.Node,sequence:P8.Node,structure:w8.Node}});var E2,S8=(Z,X)=>new E2(y(Z,(Q,U)=>[Q,b(U,"module")?S8(U,X):X.bindReference(U)]));var C8=O(()=>{E();J0();E2=class E2 extends GZ{get[M0](){return"module"}}});var l$=(Z)=>r(Z)?Z:("branches"in Z)&&r(Z.branches)?Z.branches:void 0,d$=(Z,X)=>M(`Node of kind ${X} is not valid as a ${Z} definition`),iU=(Z)=>`#${Z} duplicates public alias ${Z}`,N8,sU,rU="function $",c$=(Z)=>oU(Z,nU(Z)),oU=(Z,X)=>{let Q=X.write(rU,4),U=X.compile()();for(let J of Z){if(J.precompilation)continue;if(J.traverseAllows=U[`${J.id}Allows`].bind(U),J.isRoot()&&!J.allowsRequiresContext)J.allows=J.traverseAllows;if(J.traverseApply=U[`${J.id}Apply`].bind(U),U[`${J.id}Optimistic`])J.traverseOptimistic=U[`${J.id}Optimistic`].bind(U);J.precompilation=Q}},nU=(Z)=>new C4().return(Z.reduce((X,Q)=>{let U=new M6({kind:"Allows"}).indent();Q.compile(U);let J=U.write(`${Q.id}Allows`),q=new M6({kind:"Apply"}).indent();Q.compile(q);let Y=q.write(`${Q.id}Apply`),W=`${X}${J},
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
- `;if(!Q.hasKind("union"))return W;let $=new M6({kind:"Allows",optimistic:!0}).indent();Q.compile($);let L=$.write(`${Q.id}Optimistic`);return`${W}${L},
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
- `)+"}"),d4,E8,aU=(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},tU=(Z)=>y(Z,(X,Q)=>[X,b(Q,"root")||b(Q,"generic")?Q.json:b(Q,"module")?tU(Q):u(`Unexpected resolution ${k(Q)}`)]),j8=(Z,X)=>{let Q=X.indexOf(".");if(Q===-1)return;let U=X.slice(0,Q),J=Z[U];if(J===void 0)return;if(!b(J,"module"))return M(i$(U));let q=X.slice(Q+1),Y=J[q];if(Y===void 0)return j8(J,q);if(b(Y,"root")||b(Y,"generic"))return Y;if(b(Y,"module"))return Y.root??M(Z5(X));u(`Unexpected resolution for alias '${X}': ${k(Y)}`)},c4=(Z,X)=>new E8(Z,X),f6,eU=(Z,X)=>{let Q={};for(let U in X){let J=X[U];if(b(J,"module")){let q=eU(Z,J),Y=y(q,(W,$)=>[`${U}.${W}`,$]);Object.assign(Q,Y)}else if(b(J,"root")||b(J,"generic"))Q[U]=J;else u(`Unexpected scope resolution ${k(J)}`)}return Q},b8=(Z)=>`'${Z}' is unresolvable`,i$=(Z)=>`'${Z}' must reference a module to be accessed using dot syntax`,Z5=(Z)=>`Reference to submodule '${Z}' must specify an alias`,c,b2,FC,m0;var I8=O(()=>{E();P2();bZ();h4();C8();x4();J8();S1();p();U1();J0();N8={};R.ambient??={};d4=class d4{config;resolvedConfig;name;get[M0](){return"scope"}referencesById={};references=[];resolutions={};exportedNames=[];aliases={};resolved=!1;nodesByHash={};intrinsic;constructor(Z,X){if(this.config=O6(R.config,X),this.resolvedConfig=O6(R.resolvedConfig,X),this.name=this.resolvedConfig.name??`anonymousScope${Object.keys(N8).length}`,this.name in N8)M(`A Scope already named ${this.name} already exists`);N8[this.name]=this;let Q=Object.entries(Z).map((U)=>this.preparseOwnAliasEntry(...U));for(let[U,J]of Q){let q=U;if(U[0]==="#"){if(q=U.slice(1),q in this.aliases)M(iU(q));this.aliases[q]=J}else{if(q in this.aliases)M(iU(U));this.aliases[q]=J,this.exportedNames.push(q)}if(!b(J,"module")&&!b(J,"generic")&&!D1(J)){let Y=this.preparseOwnDefinitionFormat(J,{alias:q});this.resolutions[q]=b(Y,"root")?this.bindReference(Y):this.createParseContext(Y).id}}sU??=this.node("union",{branches:["string","number","object","bigint","symbol",{unit:!0},{unit:!1},{unit:void 0},{unit:null}]},{prereduced:!0}),this.nodesByHash[sU.hash]=this.node("intersection",{},{prereduced:!0}),this.intrinsic=R.intrinsic?y(R.intrinsic,(U,J)=>U.startsWith("json")?[]:[U,this.bindReference(J)]):{}}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 E1(Z,U?new I4(Q):Q,X,X,U??null)};units=(Z,X)=>{let Q=[];for(let J of Z)if(!Q.includes(J))Q.push(J);let U=Q.map((J)=>this.node("unit",{unit:J},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(D6(Z),Z,X);preparseNode(Z,X,Q){let U=typeof Z==="string"?Z:D6(X,Z);if(o(X)&&X.kind===U)return X;if(U==="alias"&&!Q?.prereduced){let{reference:Y}=E6.implementation.normalize(X,this);if(Y.startsWith("$")){let W=this.resolveRoot(Y.slice(1));X=W,U=W.kind}}else if(U==="union"&&T0(X,"object")){let Y=l$(X);if(Y?.length===1)X=Y[0],U=D6(X)}if(o(X)&&X.kind===U)return X;let q=A2[U].normalize?.(X,this)??X;if(o(q))return q.kind===U?q:d$(U,q.kind);return{...Q,$:this,kind:U,def:q,prefix:Q.alias??U}}bindReference(Z){let X;if(o(Z))X=Z.$===this?Z:new Z.constructor(Z.attachments,this);else X=Z.$===this?Z:new E1(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(b8(Z))}maybeResolveRoot(Z){let X=this.maybeResolve(Z);if(b(X,"generic"))return;return X}maybeResolveSubalias(Z){return j8(this.aliases,Z)??j8(this.ambient,Z)}get ambient(){return R.ambient}maybeResolve(Z){let X=this.resolutions[Z];if(X){if(typeof X!=="string")return this.bindReference(X);let U=O0[X];if(b(U,"root"))return this.resolutions[Z]=U;if(b(U,"context")){if(U.phase==="resolving")return this.node("alias",{reference:`$${Z}`},{prereduced:!0});if(U.phase==="resolved")return u(`Unexpected resolved context for was uncached by its scope: ${k(U)}`);U.phase="resolving";let J=this.bindReference(this.parseOwnDefinitionFormat(U.def,U));return U.phase="resolved",O0[J.id]=J,O0[U.id]=J,this.resolutions[Z]=J}return u(`Unexpected nodesById entry for ${X}: ${k(U)}`)}let Q=this.aliases[Z]??this.ambient?.[Z];if(!Q)return this.maybeResolveSubalias(Z);if(Q=this.normalizeRootScopeValue(Q),b(Q,"generic"))return this.resolutions[Z]=this.bindReference(Q);if(b(Q,"module")){if(!Q.root)M(Z5(Z));return this.resolutions[Z]=this.bindReference(Q.root)}return this.resolutions[Z]=this.parse(Q,{alias:Z})}createParseContext(Z){let X=Z.id??eZ(Z.prefix);return O0[X]=Object.assign(Z,{[M0]:"context",$:this,id:X,phase:"unresolved"})}traversal(Z){return new a0(Z,this.resolvedConfig)}import(...Z){return new E2(y(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]=b(U,"module")?S8(U,this):aU(this.maybeResolve(Q))}for(let Q of this.lazyResolutions)Q.resolution;if(this._exportedResolutions=eU(this,this._exports),this._json=tU(this._exportedResolutions),Object.assign(this.resolutions,this._exportedResolutions),this.references=Object.values(this.referencesById),!this.resolvedConfig.jitless){let Q=nU(this.references);this.precompilation=Q.write(rU,4),oU(this.references,Q)}this.resolved=!0}let X=Z.length?Z:this.exportedNames;return new E2(y(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(o(U))return this.bindReference(U);let J=this.createParseContext(U),q=Z8(J),Y=this.bindReference(q);return O0[J.id]=Y};parse=(Z,X={})=>this.finalize(this.parseDefinition(Z,X));parseDefinition(Z,X={}){if(b(Z,"root"))return this.bindReference(Z);let Q=this.preparseOwnDefinitionFormat(Z,X);if(b(Q,"root"))return this.bindReference(Q);let U=this.createParseContext(Q);O0[U.id]=U;let J=this.bindReference(this.parseOwnDefinitionFormat(Z,U));if(J.isCyclic)J=BU(J,U.id);return O0[U.id]=J,J}finalize(Z){if(aU(Z),!Z.precompilation&&!this.resolvedConfig.jitless)c$(Z.references);return Z}};E8=class E8 extends d4{parseOwnDefinitionFormat(Z,X){return Z8(X)}preparseOwnDefinitionFormat(Z,X){return this.preparseNode(D6(Z),Z,X)}preparseOwnAliasEntry(Z,X){return[Z,X]}normalizeRootScopeValue(Z){return Z}};f6=new E8({});f6.export();c=f6.schema,b2=f6.node,FC=f6.defineSchema,m0=f6.generic});var f8="^(?:0|[1-9]\\d*)$",s$,MC;var X5=O(()=>{p();s$=new RegExp(f8),MC=Z0(s$)});var Q5,U5,a$,I;var m4=O(()=>{I8();p();X5();Q5=c4({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();R.intrinsic={...Q5};U5=c4({integer:{domain:"number",divisor:1},lengthBoundable:["string",Array],key:["string","symbol"],nonNegativeIntegerString:{domain:"string",pattern:f8}},{prereducedAliases:!0}).export();Object.assign(R.intrinsic,U5);a$=c4({jsonPrimitive:["string","number",{unit:!0},{unit:!1},{unit:null}],jsonObject:{domain:"object",index:{signature:"string",value:"$jsonData"}},jsonData:["$jsonPrimitive","$jsonObject"]},{prereducedAliases:!0}).export(),I={...Q5,...U5,...a$,emptyStructure:b2("structure",{},{prereduced:!0})};R.intrinsic={...I}});var J5=()=>{};var q5=()=>{};var Y5=()=>{};var q0=O(()=>{E();P2();b0();bZ();m4();h4();C8();Z2();x4();fZ();vZ();hZ();kZ();uZ();oZ();lZ();cZ();sZ();rZ();tZ();M1();q8();W8();L8();G8();b1();H8();z8();I8();S1();J5();U0();R6();d();v0();q5();p();Y5();N1();U1();J0();M8();S2();S6();R8();T8();A8()});var i4=(Z,X)=>new RegExp(Z,X);var W5=O(()=>{Object.assign(i4,{as:i4})});var $5=O(()=>{W5()});var L5=O(()=>{P2()});var _5=(Z)=>typeof Z==="string"&&Z[0]==="d"&&(Z[1]==="'"||Z[1]==='"')&&Z[Z.length-1]===Z[1],G5=(Z)=>Z.toString()!=="Invalid Date",V5=(Z)=>Z.slice(2,-1),y8=(Z)=>`'${Z}' could not be parsed by the Date constructor`,H5=(Z,X)=>r$(Z,X),r$=(Z,X)=>{let Q=new Date(Z);if(G5(Q))return Q;let U=CQ(Z);if(U!==void 0){let J=new Date(U);if(G5(J))return J}return X?M(X===!0?y8(Z):X):void 0};var k8=O(()=>{E()});var o$,s4=(Z,X)=>{let Q=Z.scanner.shiftUntilEscapable(t$[B5[X]]);if(Z.scanner.lookahead==="")return Z.error(ZL(Q,X));if(Z.scanner.shift(),X in z5){let U;try{U=new RegExp(Q)}catch(J){M(String(J))}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:(J)=>U.exec(J),declaredOut:o$})}else if(L0(X,g8))Z.root=Z.ctx.$.node("unit",{unit:Q});else{let U=H5(Q,y8(Q));Z.root=Z.ctx.$.node("unit",{meta:Q,unit:U})}},g8,F5,n$,z5,B5,t$,e$,ZL=(Z,X)=>`${X}${Z} requires a closing ${e$[B5[X]]}`;var M5=O(()=>{q0();E();k8();o$=c({proto:"Array",sequence:"string",required:{key:"groups",value:["object",{unit:void 0}]}}),g8={"'":1,'"':1},F5={"/":1,"'":1,'"':1},n$={"d'":"'",'d"':'"',"'":"'",'"':'"'},z5={"/":"/","x/":"/"},B5={...n$,...z5},t$={"'":(Z)=>Z.lookahead==="'",'"':(Z)=>Z.lookahead==='"',"/":(Z)=>Z.lookahead==="/"},e$={'"':"double-quote","'":"single-quote","/":"forward slash"}});var O5=(Z)=>`Private type references should not include '#'. Use '${Z}' instead.`,a4="Optional definitions like 'string?' are only valid as properties in an object or tuple",r4="Defaultable definitions like 'number = 0' are only valid as properties in an object or tuple";var q1,R5=(Z,X)=>Z===">"?X[0]==="="?X[1]==="=":X.trimStart()===""||L0(X.trimStart()[0],q1):Z==="="?X[0]!=="=":Z===","||Z==="?";var I2=O(()=>{E();q1={"<":1,">":1,"=":1,"|":1,"&":1,")":1,"[":1,"%":1,",":1,":":1,"?":1,"#":1,...w1}});var P5=(Z,X,Q)=>K5(Z,X,Q,[]),K5=(Z,X,Q,U)=>{let J=Q.parseUntilFinalizer();if(U.push(J.root),J.finalizer===">"){if(U.length!==X.params.length)return Q.error(v8(Z,X.names,U.map((q)=>q.expression)));return U}if(J.finalizer===",")return K5(Z,X,Q,U);return J.error(S4(">"))},v8=(Z,X,Q)=>`${Z}<${X.join(", ")}> requires exactly ${X.length} args (got ${Q.length}${Q.length===0?"":`: ${Q.join(", ")}`})`;var T5=O(()=>{E()});var o4=(Z)=>{let X=Z.scanner.shiftUntilLookahead(q1);if(X==="keyof")Z.addPrefix("keyof");else Z.root=QL(Z,X)},XL=(Z,X,Q)=>{if(Q.scanner.shiftUntilNonWhitespace(),Q.scanner.shift()!=="<")return Q.error(v8(Z,X.names,[]));let J=P5(Z,X,Q);return X(...J)},QL=(Z,X)=>UL(Z,X)??JL(Z,X)??Z.error(X===""?Z.scanner.lookahead==="#"?O5(Z.shiftedBy(1).scanner.shiftUntilLookahead(q1)):x8(Z):b8(X)),UL=(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(b(Q,"root"))return Q;if(Q===void 0)return;if(b(Q,"generic"))return XL(X,Q,Z);return M(`Unexpected resolution ${k(Q)}`)},JL=(Z,X)=>{let Q=NQ(X);if(Q!==void 0)return Z.ctx.$.node("unit",{unit:Q});let U=EQ(X);if(U!==void 0)return Z.ctx.$.node("unit",{unit:U})},x8=(Z)=>{let X=Z.previousOperator();return X?h8(X,Z.scanner.unscanned):qL(Z.scanner.unscanned)},h8=(Z,X="")=>`Token '${Z}' requires a right operand${X?` before '${X}'`:""}`,qL=(Z)=>`Expected an expression${Z?` before '${Z}'`:""}`;var m8=O(()=>{q0();E();I2();T5()});var u8=(Z)=>Z.scanner.lookahead===""?Z.error(x8(Z)):Z.scanner.lookahead==="("?Z.shiftedBy(1).reduceGroupOpen():Z.scanner.lookaheadIsIn(F5)?s4(Z,Z.scanner.shift()):Z.scanner.lookaheadIsIn(w1)?u8(Z.shiftedBy(1)):Z.scanner.lookahead==="d"?Z.scanner.nextLookahead in g8?s4(Z,`${Z.scanner.shift()}${Z.scanner.shift()}`):o4(Z):Z.scanner.lookahead==="x"?Z.scanner.nextLookahead==="/"?Z.shiftedBy(2)&&s4(Z,"x/"):o4(Z):o4(Z);var D5=O(()=>{E();M5();m8()});var w5,A5,f2,S5=(Z,X)=>`Left bounds are only valid when paired with right bounds (try ...${X}${Z})`,n4=(Z)=>`Left-bounded expressions must specify their limits using < or <= (was ${Z})`,C5=(Z,X,Q,U)=>`An expression may have at most one left bound (parsed ${Z}${f2[X]}, ${Q}${f2[U]})`;var p8=O(()=>{w5={">":!0,">=":!0},A5={"<":!0,"<=":!0},f2={"<":">",">":"<","<=":">=",">=":"<=","==":"=="}});var j5=(Z,X)=>{let Q=YL(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 $L(Z,Q)},E5,YL=(Z,X)=>Z.scanner.lookaheadIs("=")?`${X}${Z.scanner.shift()}`:X,N5=(Z,X,Q,U)=>{if(Q.extends(R.intrinsic.number)){if(typeof X!=="number")return M(l8(Z,X,U));return Z==="=="?["min","max"]:Z[0]===">"?["min"]:["max"]}if(Q.extends(R.intrinsic.lengthBoundable)){if(typeof X!=="number")return M(l8(Z,X,U));return Z==="=="?["exactLength"]:Z[0]===">"?["minLength"]:["maxLength"]}if(Q.extends(R.intrinsic.Date))return Z==="=="?["after","before"]:Z[0]===">"?["after"]:["before"];return M(UU(Q.expression))},WL=(Z)=>({rule:_5(Z.limit)?V5(Z.limit):Z.limit,exclusive:Z.comparator.length===1}),$L=(Z,X)=>{let Q=Z.unsetRoot(),U=Z.scanner.location;Z.parseOperand();let J=Z.unsetRoot(),q=Z.scanner.sliceChars(U,Z.scanner.location);if(Z.root=Q,!J.hasKind("unit")||typeof J.unit!=="number"&&!(J.unit instanceof Date))return Z.error(l8(X,q,"right"));let Y=J.unit,W=X.length===1,$=N5(X,typeof Y==="number"?Y:q,Q,"right");for(let _ of $)Z.constrainRoot(_,X==="=="?{rule:Y}:{rule:Y,exclusive:W});if(!Z.branches.leftBound)return;if(!L0(X,A5))return Z.error(n4(X));let L=N5(Z.branches.leftBound.comparator,Z.branches.leftBound.limit,Q,"left");Z.constrainRoot(L[0],WL(Z.branches.leftBound)),Z.branches.leftBound=null},l8=(Z,X,Q)=>`Comparator ${Q==="left"?f2[Z]:Z} must be ${Q==="left"?"preceded":"followed"} by a corresponding literal (was ${X})`;var b5=O(()=>{q0();E();p8();k8();E5={"<":1,">":1,"=":1}});var I5=(Z)=>{Z.scanner.shiftUntilNonWhitespace();let X=Z.scanner.shiftUntilLookahead(q1);Z.root=Z.root.brand(X)};var f5=O(()=>{I2()});var k5=(Z)=>{Z.scanner.shiftUntilNonWhitespace();let X=Z.scanner.shiftUntilLookahead(q1),Q=jQ(X,{errorOnFail:y5(X)});if(Q===0)Z.error(y5(0));Z.root=Z.root.constrain("divisor",Q)},y5=(Z)=>`% operator must be followed by a non-zero integer literal (was ${Z})`;var g5=O(()=>{E();I2()});var d8=(Z)=>{let X=Z.scanner.shift();return X===""?Z.finalize(""):X==="["?Z.scanner.shift()==="]"?Z.setRoot(Z.root.array()):Z.error(LL):X==="|"?Z.scanner.lookahead===">"?Z.shiftedBy(1).pushRootToBranch("|>"):Z.pushRootToBranch(X):X==="&"?Z.pushRootToBranch(X):X===")"?Z.finalizeGroup():R5(X,Z.scanner.unscanned)?Z.finalize(X):L0(X,E5)?j5(Z,X):X==="%"?k5(Z):X==="#"?I5(Z):(X in w1)?d8(Z):Z.error(t4(X))},t4=(Z,X="")=>`'${Z}' is not allowed here${X&&` (should be ${X})`}`,LL="Missing expected ']'";var c8=O(()=>{E();I2();b5();f5();g5()});var v5=(Z)=>{let X=Z.unsetRoot();Z.parseOperand();let Q=Z.unsetRoot();if(!Q.hasKind("unit"))return Z.error(GL(Q.expression));let U=Q.unit instanceof Date?()=>new Date(Q.unit):Q.unit;return[X,"=",U]},GL=(Z)=>`Default value '${Z}' must be a literal value`;var i8=(Z,X)=>{let Q=X.$.maybeResolveRoot(Z);if(Q)return Q;if(Z.endsWith("[]")){let q=X.$.maybeResolveRoot(Z.slice(0,-2));if(q)return q.array()}let U=new y2(new B6(Z),X),J=_L(U);if(U.finalizer===">")M(t4(">"));return J},_L=(Z)=>{Z.parseOperand();let X=y6(Z).root;if(!X)return u(`Root was unexpectedly unset after parsing string '${Z.scanner.scanned}'`);if(Z.finalizer==="=")X=v5(Z);else if(Z.finalizer==="?")X=[X,"?"];if(Z.scanner.shiftUntilNonWhitespace(),Z.scanner.lookahead)M(t4(Z.scanner.lookahead));return X},y6=(Z)=>{while(Z.finalizer===void 0)VL(Z);return Z},VL=(Z)=>Z.hasRoot()?Z.parseOperator():Z.parseOperand();var e4=O(()=>{E();s8();c8()});class y2{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(S4(")"));this.finalizeBranches(),this.finalizer=Z}reduceLeftBound(Z,X){let Q=f2[X];if(!L0(Q,w5))return this.error(n4(X));if(this.branches.leftBound)return this.error(C5(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(gQ(")",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():u(`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 y6(new y2(this.scanner,this.ctx))}parseOperator(){return d8(this)}parseOperand(){return u8(this)}assertRangeUnset(){if(this.branches.leftBound)return this.error(S5(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 s8=O(()=>{E();D5();c8();e4();p8()});var HL="An empty string is not a valid generic parameter name",Z9=(Z,X,Q)=>{Z.shiftUntilNonWhitespace();let U=Z.shiftUntilLookahead(q1);if(U===""){if(Z.lookahead===""&&X.length)return X;return M(HL)}return Z.shiftUntilNonWhitespace(),FL(Z,U,X,Q)},x5="extends ",FL=(Z,X,Q,U)=>{if(Z.shiftUntilNonWhitespace(),Z.unscanned.startsWith(x5))Z.jumpForward(x5.length);else{if(Z.lookahead===",")Z.shift();return Q.push(X),Z9(Z,Q,U)}let J=y6(new y2(Z,U));return Q.push([X,J.root]),Z9(Z,Q,U)};var a8=O(()=>{q0();E();s8();I2();e4()});var r8,h5,zL=`":" must be followed by exactly one return type e.g:
46
- fn("string", ":", "number")(s => s.length)`;var m5=O(()=>{E();r8=class r8 extends A0{constructor(Z){let X={$:Z,raw:Z.fn};super((...Q)=>{let U=Q.indexOf(":"),J=U===-1?Q.length-1:U-1,q=Q.slice(0,J+1),Y=Z.parse(q).assertHasKind("intersection"),W=Z.intrinsic.unknown;if(U!==-1){if(U!==Q.length-2)return M(zL);W=Z.parse(Q[U+1])}return($)=>new h5($,Y,W)},{attach:X})}};h5=class h5 extends A0{raw;params;returns;expression;constructor(Z,X,Q){let U=`typed ${Z.name}`,J={[U]:(...Y)=>{let W=X.assert(Y),$=Z(...W);return Q.assert($)}}[U];super(J);this.raw=Z,this.params=X,this.returns=Q;let q=X.expression;if(q[0]==="["&&q[q.length-1]==="]")q=q.slice(1,-1);else if(q.endsWith("[]"))q=`...${q}`;this.expression=`(${q}) => ${Q?.expression??"unknown"}`}}});var o8,k6,u5=(Z)=>Z.throw(),BL="A key matcher must be specified before the first case i.e. match.at('foo') or match.in<object>().at('bar')",ML="At most one key matcher may be specified per expression";var p5=O(()=>{q0();E();o8=class o8 extends A0{$;constructor(Z){super((...X)=>new k6(Z)(...X),{bind:Z});this.$=Z}in(Z){return new k6(this.$,Z===void 0?void 0:this.$.parse(Z))}at(Z,X){return new k6(this.$).at(Z,X)}case(Z,X){return new k6(this.$).case(Z,X)}};k6=class k6 extends A0{$;in;key;branches=[];constructor(Z,X){super((Q)=>this.caseEntries(Object.entries(Q).map(([U,J])=>U==="default"?[U,J]:[this.$.parse(U),J])));this.$=Z,this.in=X}at(Z,X){if(this.key)M(ML);if(this.branches.length)M(BL);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 ${$0(U)})`);this.caseEntry(Q,U)}return this}default(Z){if(typeof Z==="function")this.case(I.unknown,Z);let X={branches:this.branches,ordered:!0};if(Z==="never"||Z==="assert")X.meta={onFail:u5};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:u5},"self");return this.$.finalize(U)}}});var X9=(Z,X)=>{if(r(Z)){if(Z[1]==="=")return[X.$.parseOwnDefinitionFormat(Z[0],X),"=",Z[2]];if(Z[1]==="?")return[X.$.parseOwnDefinitionFormat(Z[0],X),"?"]}return Q9(Z,X)},l5="Only required keys may make their values optional, e.g. { [mySymbol]: ['number', '?'] }",d5="Only required keys may specify default values, e.g. { value: 'number = 0' }";var n8=O(()=>{E();t8()});var c5=(Z,X)=>{let Q,U={},J=r1(Z);for(let[Y,W]of J){let $=PL(Y);if($.kind==="spread"){if(!Q1(U))return M(RL);let F=X.$.parseOwnDefinitionFormat(W,X);if(F.equals(I.object))continue;if(!F.hasKind("intersection")||!F.basis?.equals(I.object))return M(KL(F.expression));Q=F.structure;continue}if($.kind==="undeclared"){if(W!=="reject"&&W!=="delete"&&W!=="ignore")M(OL(W));U.undeclared=W;continue}let L=X9(W,X),_=$;if($.kind==="required"){if(!r(L))e8(U,"required",{key:$.normalized,value:L},X);else e8(U,"optional",L[1]==="="?{key:$.normalized,value:L[0],default:L[2]}:{key:$.normalized,value:L[0]},X);continue}if(r(L)){if(L[1]==="?")M(l5);if(L[1]==="=")M(d5)}if($.kind==="optional"){e8(U,"optional",{key:$.normalized,value:L},X);continue}let G=X.$.parseOwnDefinitionFormat(_.normalized,X),V=l4(G,L,X.$);if(V.index)U.index=m(U.index,V.index);if(V.required)U.required=m(U.required,V.required)}let q=X.$.node("structure",U);return X.$.parseSchema({domain:"object",structure:Q?.merge(q)??q})},e8=(Z,X,Q,U)=>{Z[X]=m(Z[X],U.$.node(X,Q))},OL=(Z)=>`Value of '+' key must be 'reject', 'delete', or 'ignore' (was ${k(Z)})`,RL="Spread operator may only be used as the first key in an object",PL=(Z)=>typeof Z==="symbol"?{kind:"required",normalized:Z}:Z[Z.length-1]==="?"?Z[Z.length-2]===n1?{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]===n1&&Z[1]==="["&&Z[Z.length-1]==="]"?{kind:"required",normalized:Z.slice(1)}:Z==="..."?{kind:"spread"}:Z==="+"?{kind:"undeclared"}:{kind:"required",normalized:Z==="\\..."?"...":Z==="\\+"?"+":Z},KL=(Z)=>`Spread operand must resolve to an object literal type (was ${Z})`;var i5=O(()=>{q0();E();n8()});var a5=(Z,X)=>bL(Z)?t5[Z[0]](Z,X):jL(Z)?n5[Z[1]](Z,X):null,TL=(Z,X)=>X.$.parseOwnDefinitionFormat(Z[1],X).keyof(),ZX=(Z,X)=>{if(Z[2]===void 0)return M(h8(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 J=Z[1]==="&"?N0(Q,U,X.$):T6(Q,U,X.$);if(J instanceof A)return J.throw();return J},DL=(Z,X)=>X.$.parseOwnDefinitionFormat(Z[0],X).array(),wL=(Z,X)=>{if(typeof Z[2]!=="function")return M(r5("=>",Z[2]));return X.$.parseOwnDefinitionFormat(Z[0],X).pipe(Z[2])},r5=(Z,X)=>`${Z===":"?"Narrow":"Morph"} expression requires a function following '${Z}' (was ${typeof X})`,AL=(Z,X)=>{if(typeof Z[2]!=="function")return M(r5(":",Z[2]));return X.$.parseOwnDefinitionFormat(Z[0],X).constrain("predicate",Z[2])},SL=(Z,X)=>X.$.parseOwnDefinitionFormat(Z[0],X).configure(Z[2],Z[3]),o5=(Z)=>Z,CL,NL,n5,jL=(Z)=>n5[Z[1]]!==void 0,EL=(Z)=>Z,t5,bL=(Z)=>t5[Z[0]]!==void 0,s5=(Z)=>`Expected a constructor following 'instanceof' operator (was ${Z})`;var e5=O(()=>{q0();E();m8();CL=o5({"[]":DL,"?":()=>M(a4)}),NL=o5({"|":ZX,"&":ZX,":":AL,"=>":wL,"|>":ZX,"@":SL,"=":()=>M(r4)}),n5={...CL,...NL},t5=EL({keyof:TL,instanceof:(Z,X)=>{if(typeof Z[1]!=="function")return M(s5($6(Z[1])));let Q=Z.slice(1).map((U)=>typeof U==="function"?X.$.node("proto",{proto:U}):M(s5($6(U))));return Q.length===1?Q[0]:X.$.node("union",{branches:Q})},"===":(Z,X)=>X.$.units(Z.slice(1))})});var Q7=(Z,X)=>{let Q=[{}],U=0;while(U<Z.length){let J=!1;if(Z[U]==="..."&&U<Z.length-1)J=!0,U++;let q=X9(Z[U],X),[Y,W,$]=!r(q)?[q]:q;if(U++,J){if(!Y.extends(R.intrinsic.Array))return M(yL(Y.expression));Q=Q.flatMap((L)=>Y.distribute((_)=>fL(N4(L),_)))}else Q=Q.map((L)=>{if(W==="?")return U7(L,Y);if(W==="=")return IL(L,Y,$);return XX(L,Y)})}return X.$.parseSchema(Q.map((J)=>Q1(J)?{proto:Array,exactLength:0}:{proto:Array,sequence:J}))},XX=(Z,X)=>{if(Z.defaultables||Z.optionals)return M(Z.variadic?K8:kL);if(Z.variadic)Z.postfix=m(Z.postfix,X);else Z.prefix=m(Z.prefix,X);return Z},U7=(Z,X)=>{if(Z.variadic)return M(J7);return Z.optionals=m(Z.optionals,X),Z},IL=(Z,X,Q)=>{if(Z.variadic)return M(J7);if(Z.optionals)return M(gL);return Z.defaultables=m(Z.defaultables,[[X,Q]]),Z},Z7=(Z,X)=>{if(Z.postfix)M(X7);if(Z.variadic){if(!Z.variadic.equals(X))M(X7)}else Z.variadic=X.internal;return Z},fL=(Z,X)=>{let Q=X.select({method:"find",kind:"sequence"});if(!Q)return Z7(Z,R.intrinsic.unknown);if(Q.prefix)for(let U of Q.prefix)XX(Z,U);if(Q.optionals)for(let U of Q.optionals)U7(Z,U);if(Q.variadic)Z7(Z,Q.variadic);if(Q.postfix)for(let U of Q.postfix)XX(Z,U);return Z},yL=(Z)=>`Spread element must be an array (was ${Z})`,X7="A tuple may have at most one variadic element",kL="A required element may not follow an optional element",J7="An optional element may not follow a variadic element",gL="A defaultable element may not follow an optional element without a default";var q7=O(()=>{q0();E();n8()});var vL,Q9=(Z,X)=>{if(typeof Z==="string"){if(X.args&&Object.keys(X.args).some((U)=>Z.includes(U)))return i8(Z,X);let Q=vL[X.$.name]??={};return Q[Z]??=i8(Z,X)}return T0(Z,"object")?xL(Z,X):M(QX($0(Z)))},xL=(Z,X)=>{let Q=W6(Z);switch(Q){case void 0:if(b(Z,"root"))return Z;if("~standard"in Z)return hL(Z,X);return c5(Z,X);case"Array":return mL(Z,X);case"RegExp":return X.$.node("intersection",{domain:"string",pattern:Z},{prereduced:!0});case"Function":{let U=D1(Z)?Z():Z;if(b(U,"root"))return U;return M(QX("Function"))}default:return M(QX(Q??k(Z)))}},hL=(Z,X)=>X.$.intrinsic.unknown.pipe((Q,U)=>{let J=Z["~standard"].validate(Q);if(!J.issues)return J.value;for(let{message:q,path:Y}of J.issues)if(Y)if(Y.length)U.error({problem:KQ(q),relativePath:Y.map((W)=>typeof W==="object"?W.key:W)});else U.error({message:q});else U.error({message:q})}),mL=(Z,X)=>a5(Z,X)??Q7(Z,X),QX=(Z)=>`Type definitions must be strings or objects (was ${Z})`;var t8=O(()=>{q0();E();i5();e4();e5();q7();vL={}});var UX;var JX=O(()=>{q0();E();UX=class UX extends A0{constructor(Z){let X=Object.assign({errors:S0,hkt:H0,$: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),J=Z.parseGenericParams(U,{});return new E1(J,Q[1],Z,Z,null)}return Z.parse(Q)},{attach:X})}}});var k2,U9,g6,h;var o0=O(()=>{q0();E();m5();a8();p5();t8();JX();k2=R;U9=class U9 extends d4{get ambientAttachments(){if(!k2.typeAttachments)return;return this.cacheGetter("ambientAttachments",y(k2.typeAttachments,(Z,X)=>[Z,this.bindReference(X)]))}preparseOwnAliasEntry(Z,X){let Q=Z.indexOf("<");if(Q===-1){if(b(X,"module")||b(X,"generic"))return[Z,X];let q=this.name==="ark"?Z:Z==="root"?this.name:`${this.name}.${Z}`,Y=this.resolvedConfig.keywords?.[q];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),J=Z.slice(Q+1,-1);return[U,()=>{let q=this.parseGenericParams(J,{alias:U});return ZU(q,X,this)}]}parseGenericParams(Z,X){return Z9(new B6(Z),[],this.createParseContext({...X,def:Z,prefix:"generic"}))}normalizeRootScopeValue(Z){if(D1(Z)&&!b(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=Q9(Z,X);if(r(U)){if(U[1]==="=")return M(r4);if(U[1]==="?")return M(a4)}return U}unit=(Z)=>this.units([Z]);valueOf=(Z)=>this.units(qQ(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 r8(this);match=new o8(this);declare=()=>({type:this.type});define(Z){return Z}type=new UX(this);static scope=(Z,X={})=>new U9(Z,X);static module=(Z,X={})=>this.scope(Z,X).export()};g6=Object.assign(U9.scope,{define:(Z)=>Z}),h=U9});var Y7,uL,W7;var $7=O(()=>{q0();E();o0();Y7=class Y7 extends H0{description='merge an object\'s properties onto another like `Merge(User, { isAdmin: "true" })`'};uL=m0(["base",I.object],["props",I.object])((Z)=>Z.base.merge(Z.props),Y7),W7=h.module({Key:I.key,Merge:uL})});var L7,pL,G7;var _7=O(()=>{q0();E();o0();L7=class L7 extends H0{};pL=m0("element")((Z)=>{let X=Z.element.exclude(I.Array),Q=X.array();return X.rawOr(Q).pipe(T1).distribute((U)=>U.assertHasKind("morph").declareOut(Q),c)},L7),G7=h.module({root:I.Array,readonly:"root",index:I.nonNegativeIntegerString,liftFrom:pL},{name:"Array"})});var qX,lL,V7,H7;var F7=O(()=>{q0();E();o0();qX=c(["string",t1.FileConstructor]),lL=qX.rawOr(qX.array()),V7=c({meta:"an object representing parsed form data",domain:"object",index:{signature:"string",value:lL}}),H7=h.module({root:["instanceof",FormData],value:qX,parsed:V7,parse:c({in:FormData,morphs:(Z)=>{let X={};for(let[Q,U]of Z)if(Q in X){let J=X[Q];if(typeof J==="string"||J instanceof t1.FileConstructor)X[Q]=[J,U];else J.push(U)}else X[Q]=U;return X},declaredOut:V7})},{name:"FormData"})});var z7;var B7=O(()=>{o0();z7=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 dL,M7;var O7=O(()=>{E();o0();_7();F7();B7();dL={Boolean:1,Number:1,String:1},M7=h.module({...y({..._Z,...HZ},(Z,X)=>(Z in dL)?[]:[Z,["instanceof",X]]),Array:G7,TypedArray:z7,FormData:H7})});var cL,iL,J9;var YX=O(()=>{q0();o0();cL=c({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"}),iL=c({domain:"number",divisor:1}),J9=h.module({root:I.number,integer:iL,epoch:cL,safe:c({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 e=(Z,X,Q)=>{let U={domain:"string",pattern:{rule:Z.source,flags:Z.flags,meta:X}};if(Q)U.meta={format:Q};return b2("intersection",U)},R7,b7,sL,aL,P7,rL,oL=(Z)=>{let X=Z.replace(/[ -]+/g,""),Q=0,U,J,q=!1;for(let Y=X.length-1;Y>=0;Y--){if(U=X.substring(Y,Y+1),J=Number.parseInt(U,10),q)J*=2,Q+=J>=10?J%10+1:J;else Q+=J;q=!q}return!!(Q%10===0?X:!1)},nL,tL,eL,ZG=(Z)=>!Number.isNaN(new Date(Z).valueOf()),K7,T7,XG,D7,QG,UG,JG,w7="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",I1,qG,Y0="(?:[0-9a-fA-F]{1,4})",YG,WG,g2="a JSON string",I7=(Z)=>{if(!(Z instanceof SyntaxError))throw Z;return`must be ${g2} (${Z})`},$G,LG=(Z,X)=>{if(Z.length===0)return X.error({code:"predicate",expected:g2,actual:"empty"});try{return JSON.parse(Z)}catch(Q){return X.error({code:"predicate",expected:g2,problem:I7(Q)})}},GG,A7,_G,f7,v6,q9,VG,HG,FG,zG,BG,S7,MG,C7="a regex pattern",OG,RG,PG,N7,KG,j7,TG,DG=(Z)=>URL.canParse(Z),E7,wG,AG,y7;var k7=O(()=>{q0();E();o0();YX();R7=e(_6,"a well-formed integer string"),b7=h.module({root:R7,parse:c({in:R7,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:I.integer})},{name:"string.integer"}),sL=e(/^[\dA-Fa-f]+$/,"hex characters only"),aL=h.module({root:e(/^(?:[\d+/A-Za-z]{4})*(?:[\d+/A-Za-z]{2}==|[\d+/A-Za-z]{3}=)?$/,"base64-encoded"),url:e(/^(?:[\w-]{4})*(?:[\w-]{2}(?:==|%3D%3D)?|[\w-]{3}(?:=|%3D)?)?$/,"base64url-encoded")},{name:"string.base64"}),P7=e(/^[A-Z].*$/,"capitalized"),rL=h.module({root:c({in:"string",morphs:(Z)=>Z.charAt(0).toUpperCase()+Z.slice(1),declaredOut:P7}),preformatted:P7},{name:"string.capitalize"}),nL=/^(?: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}))$/,tL=c({domain:"string",pattern:{meta:"a credit card number",rule:nL.source},predicate:{meta:"a credit card number",predicate:oL}}),eL=/^([+-]?\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)?)?)?)?$/,K7=c({domain:"string",predicate:{meta:"a parsable date",predicate:ZG}}).assertHasKind("intersection"),T7=b7.root.internal.narrow((Z,X)=>{let Q=Number.parseInt(Z),U=J9.epoch(Q);if(U instanceof S0)return X.errors.merge(U),!1;return!0}).configure({description:"an integer string representing a safe Unix timestamp"},"self").assertHasKind("intersection"),XG=h.module({root:T7,parse:c({in:T7,morphs:(Z)=>new Date(Z),declaredOut:I.Date})},{name:"string.date.epoch"}),D7=e(eL,"an ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ) date").internal.assertHasKind("intersection"),QG=h.module({root:D7,parse:c({in:D7,morphs:(Z)=>new Date(Z),declaredOut:I.Date})},{name:"string.date.iso"}),UG=h.module({root:K7,parse:c({declaredIn:K7,in:"string",morphs:(Z,X)=>{let Q=new Date(Z);if(Number.isNaN(Q.valueOf()))return X.error("a parsable date");return Q},declaredOut:I.Date}),iso:QG,epoch:XG},{name:"string.date"}),JG=e(/^[\w%+.-]+@[\d.A-Za-z-]+\.[A-Za-z]{2,}$/,"an email address","email"),I1=`(${w7}[.]){3}${w7}`,qG=new RegExp(`^${I1}$`),YG=new RegExp(`^((?:${Y0}:){7}(?:${Y0}|:)|(?:${Y0}:){6}(?:${I1}|:${Y0}|:)|(?:${Y0}:){5}(?::${I1}|(:${Y0}){1,2}|:)|(?:${Y0}:){4}(?:(:${Y0}){0,1}:${I1}|(:${Y0}){1,3}|:)|(?:${Y0}:){3}(?:(:${Y0}){0,2}:${I1}|(:${Y0}){1,4}|:)|(?:${Y0}:){2}(?:(:${Y0}){0,3}:${I1}|(:${Y0}){1,5}|:)|(?:${Y0}:){1}(?:(:${Y0}){0,4}:${I1}|(:${Y0}){1,6}|:)|(?::((?::${Y0}){0,5}:${I1}|(?::${Y0}){1,7}|:)))(%[0-9a-zA-Z.]{1,})?$`),WG=h.module({root:["v4 | v6","@","an IP address"],v4:e(qG,"an IPv4 address","ipv4"),v6:e(YG,"an IPv6 address","ipv6")},{name:"string.ip"}),$G=c({meta:g2,domain:"string",predicate:{meta:g2,predicate:(Z,X)=>{try{return JSON.parse(Z),!0}catch(Q){return X.reject({code:"predicate",expected:g2,problem:I7(Q)})}}}}),GG=h.module({root:$G,parse:c({meta:"safe JSON string parser",in:"string",morphs:LG,declaredOut:I.jsonObject})},{name:"string.json"}),A7=e(/^[a-z]*$/,"only lowercase letters"),_G=h.module({root:c({in:"string",morphs:(Z)=>Z.toLowerCase(),declaredOut:A7}),preformatted:A7},{name:"string.lower"}),f7=["NFC","NFD","NFKC","NFKD"],v6=y(f7,(Z,X)=>[X,c({domain:"string",predicate:(Q)=>Q.normalize(X)===Q,meta:`${X}-normalized unicode`})]),q9=y(f7,(Z,X)=>[X,c({in:"string",morphs:(Q)=>Q.normalize(X),declaredOut:v6[X]})]),VG=h.module({root:q9.NFC,preformatted:v6.NFC},{name:"string.normalize.NFC"}),HG=h.module({root:q9.NFD,preformatted:v6.NFD},{name:"string.normalize.NFD"}),FG=h.module({root:q9.NFKC,preformatted:v6.NFKC},{name:"string.normalize.NFKC"}),zG=h.module({root:q9.NFKD,preformatted:v6.NFKD},{name:"string.normalize.NFKD"}),BG=h.module({root:"NFC",NFC:VG,NFD:HG,NFKC:FG,NFKD:zG},{name:"string.normalize"}),S7=e(D4,"a well-formed numeric string"),MG=h.module({root:S7,parse:c({in:S7,morphs:(Z)=>Number.parseFloat(Z),declaredOut:I.number})},{name:"string.numeric"}),OG=c({domain:"string",predicate:{meta:C7,predicate:(Z,X)=>{try{return new RegExp(Z),!0}catch(Q){return X.reject({code:"predicate",expected:C7,problem:String(Q)})}}},meta:{format:"regex"}}),RG=/^(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-]+)*))?$/,PG=e(RG,"a semantic version (see https://semver.org/)"),N7=e(/^\S.*\S$|^\S?$/,"trimmed"),KG=h.module({root:c({in:"string",morphs:(Z)=>Z.trim(),declaredOut:N7}),preformatted:N7},{name:"string.trim"}),j7=e(/^[A-Z]*$/,"only uppercase letters"),TG=h.module({root:c({in:"string",morphs:(Z)=>Z.toUpperCase(),declaredOut:j7}),preformatted:j7},{name:"string.upper"}),E7=c({domain:"string",predicate:{meta:"a URL string",predicate:DG},meta:{format:"uri"}}),wG=h.module({root:E7,parse:c({declaredIn:E7,in:"string",morphs:(Z,X)=>{try{return new URL(Z)}catch{return X.error("a URL string")}},declaredOut:c(URL)})},{name:"string.url"}),AG=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:e(/^[\da-f]{8}-[\da-f]{4}-1[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv1"),v2:e(/^[\da-f]{8}-[\da-f]{4}-2[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv2"),v3:e(/^[\da-f]{8}-[\da-f]{4}-3[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv3"),v4:e(/^[\da-f]{8}-[\da-f]{4}-4[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv4"),v5:e(/^[\da-f]{8}-[\da-f]{4}-5[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv5"),v6:e(/^[\da-f]{8}-[\da-f]{4}-6[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv6"),v7:e(/^[\da-f]{8}-[\da-f]{4}-7[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv7"),v8:e(/^[\da-f]{8}-[\da-f]{4}-8[\da-f]{3}-[89ab][\da-f]{3}-[\da-f]{12}$/i,"a UUIDv8")},{name:"string.uuid"}),y7=h.module({root:I.string,alpha:e(/^[A-Za-z]*$/,"only letters"),alphanumeric:e(/^[\dA-Za-z]*$/,"only letters and digits 0-9"),hex:sL,base64:aL,capitalize:rL,creditCard:tL,date:UG,digits:e(/^\d*$/,"only digits 0-9"),email:JG,integer:b7,ip:WG,json:GG,lower:_G,normalize:BG,numeric:MG,regex:OG,semver:PG,trim:KG,upper:TG,url:wG,uuid:AG},{name:"string"})});var g7,v7,SG,x7,h7,CG,m7,NG,u7,jG,p7,EG,l7,bG,d7,IG,c7,fG,i7;var s7=O(()=>{q0();E();o0();g7=h.module({bigint:I.bigint,boolean:I.boolean,false:I.false,never:I.never,null:I.null,number:I.number,object:I.object,string:I.string,symbol:I.symbol,true:I.true,unknown:I.unknown,undefined:I.undefined}),v7=h.module({root:I.unknown,any:I.unknown},{name:"unknown"}),SG=h.module({root:I.jsonObject,stringify:b2("morph",{in:I.jsonObject,morphs:(Z)=>JSON.stringify(Z),declaredOut:I.string})},{name:"object.json"}),x7=h.module({root:I.object,json:SG},{name:"object"});h7=class h7 extends H0{description='instantiate an object from an index signature and corresponding value type like `Record("string", "number")`'};CG=m0(["K",I.key],"V")((Z)=>({domain:"object",index:{signature:Z.K,value:Z.V}}),h7);m7=class m7 extends H0{description='pick a set of properties from an object like `Pick(User, "name | age")`'};NG=m0(["T",I.object],["K",I.key])((Z)=>Z.T.pick(Z.K),m7);u7=class u7 extends H0{description='omit a set of properties from an object like `Omit(User, "age")`'};jG=m0(["T",I.object],["K",I.key])((Z)=>Z.T.omit(Z.K),u7);p7=class p7 extends H0{description="make all named properties of an object optional like `Partial(User)`"};EG=m0(["T",I.object])((Z)=>Z.T.partial(),p7);l7=class l7 extends H0{description="make all named properties of an object required like `Required(User)`"};bG=m0(["T",I.object])((Z)=>Z.T.required(),l7);d7=class d7 extends H0{description='exclude branches of a union like `Exclude("boolean", "true")`'};IG=m0("T","U")((Z)=>Z.T.exclude(Z.U),d7);c7=class c7 extends H0{description='extract branches of a union like `Extract("0 | false | 1", "number")`'};fG=m0("T","U")((Z)=>Z.T.extract(Z.U),c7),i7=h.module({Exclude:IG,Extract:fG,Omit:jG,Partial:EG,Pick:NG,Record:CG,Required:bG})});var O1,G0,i,yG,kG,gG,rE,vG,xG;var a7=O(()=>{o0();$7();O7();YX();k7();s7();O1=g6({...g7,...i7,...M7,...W7,string:y7,number:J9,object:x7,unknown:v7},{prereducedAliases:!0,name:"ark"}),G0=O1.export();Object.assign(k2.ambient,G0);k2.typeAttachments={string:G0.string.root,number:G0.number.root,bigint:G0.bigint,boolean:G0.boolean,symbol:G0.symbol,undefined:G0.undefined,null:G0.null,object:G0.object.root,unknown:G0.unknown.root,false:G0.false,true:G0.true,never:G0.never,arrayIndex:G0.Array.index,Key:G0.Key,Record:G0.Record,Array:G0.Array.root,Date:G0.Date};i=Object.assign(O1.type,k2.typeAttachments),yG=O1.match,kG=O1.fn,gG=O1.generic,rE=O1.schema,vG=O1.define,xG=O1.declare});var r7=O(()=>{q0()});var WX=O(()=>{q0();E();$5();a8();a7();r7();o0();JX();L5()});class j0{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(Y9.TEMPLATE_INTERPOLATION,(Q,U)=>{try{let J=this.evaluateExpression(U,X);if(J===void 0||J===null)return"undefined";return String(J)}catch(J){return console.error(`Error in interpolation: ${Q}`,J),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(Y9.NESTED_PROPERTY_ACCESS.test(Z))return this.getNestedValue(Z,X);if(Y9.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 J of Q){if(U===null||U===void 0||typeof U!=="object"||!(J in U))return;U=U[J]}return U}static findVariableInContext(Z,X){let Q=this.getNestedValue(Z,X);if(Q!==void 0)return Q;for(let U of o7){let J=`${U}.${Z}`,q=this.getNestedValue(J,X);if(q!==void 0)return q}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 J=this.getNestedValue(U,X);if(J!==void 0)return typeof J==="string"?`"${J}"`:String(J);return U}),Q=Q.replace(Y9.WORD_BOUNDARY,(U)=>{if(mG.includes(U))return U;if(o7.has(U))return U;let J=this.findVariableInContext(U,X);if(J!==void 0)return typeof J==="string"?`"${J}"`:String(J);return U});try{return this.evaluateMathExpression(Q)}catch(U){return console.error(`Error in mathematical evaluation: ${Z}`,U),NaN}}}var hG,o7,u0,mG,Y9;var W9=O(()=>{hG={DATA:"data",VARS:"vars",REQUEST:"request",COMPUTED:"computed",ENV:"env",STATE:"state",EVENT:"event",TIMESTAMP:"timestamp"},o7=new Set(Object.values(hG)),u0={RANDOM:"random",FLOOR:"floor",CEIL:"ceil",ROUND:"round",SQRT:"sqrt",ABS:"abs",POW:"pow",MIN:"min",MAX:"max",SIN:"sin",COS:"cos",TAN:"tan"},mG=[u0.RANDOM,u0.FLOOR,u0.CEIL,u0.ROUND,u0.SQRT,u0.ABS,u0.POW,u0.MIN,u0.MAX,u0.SIN,u0.COS,u0.TAN],Y9={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}});class $X{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 z0{static instance;state;persistence;constructor(){this.state={},this.persistence=new $X}static getInstance(){if(!z0.instance)z0.instance=new z0;return z0.instance}setPersistence(Z){this.persistence=Z}async initialize(){let Z=await this.persistence.loadState();if(Z instanceof Map)this.state=Object.fromEntries(Z);else this.state=Z||{};console.log(`[StateManager] Initialized with ${Object.keys(this.state).length} root keys.`)}get(Z){return this.state[Z]}async set(Z,X){this.state[Z]=X,await this.persistence.saveState(Z,X)}async increment(Z,X=1){let Q=this.state[Z]||0,U=Number(Q)+X;return this.state[Z]=U,await this.persistence.saveState(Z,U),U}async decrement(Z,X=1){return this.increment(Z,-X)}async delete(Z){if(Z in this.state)return delete this.state[Z],await this.persistence.deleteState(Z),!0;return!1}async clear(){this.state={},await this.persistence.clearState()}async applyConfig(Z){if(!Z.state)return;for(let[X,Q]of Object.entries(Z.state))if(typeof Q!=="object"||Q===null||!("value"in Q)){if(this.state[X]===void 0)await this.set(X,Q)}else{let U=Q;if(this.state[X]===void 0)await this.set(X,U.value);if(U.lifecycle?.ttl)this.setupTTL(X,U.lifecycle.ttl)}}setupTTL(Z,X){let Q=0;if(typeof X==="number")Q=X;else{let U=X.match(/^(\d+)([smhd])$/);if(U&&U[1]&&U[2]){let J=parseInt(U[1]),q=U[2];Q=J*({s:1000,m:60000,h:3600000,d:86400000}[q]||0)}}if(Q>0)setTimeout(()=>{this.delete(Z).catch(console.error)},Q)}getAll(){return{...this.state}}getLiveProxy(){let Z=this;function X(Q,U=[]){return new Proxy(Q,{get(J,q){let Y=J[q];if(Y&&typeof Y==="object"&&!Array.isArray(Y))return X(Y,[...U,q]);return Y},set(J,q,Y){if(typeof q!=="string")return!1;J[q]=Y;let W=U.length>0?U[0]:q;if(W)Z.persistence.saveState(W,Z.state[W]);return!0}})}return X(this.state)}}var x6=()=>{};var LX={};xY(LX,{BuiltInAction:()=>R0,ActionRegistry:()=>h6});class h6{static instance;actions=new Map;constructor(Z=!0){if(Z)this.registerDefaults()}static getInstance(Z=!0){if(!this.instance)this.instance=new h6(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(R0.LOG,{description:"Logs a message to the console with string interpolation support",params:i({"message?":"string","content?":"string"}),returns:i({message:"string"}),handler:(Z,X)=>{let Q=Z.params?.message||Z.params?.content||"Log Trigger",U=typeof Q==="string"?j0.interpolate(Q,X):String(Q);return console.log(`[TriggerLog] ${U}`),{message:U}}}),this.register(R0.MATH,{description:"Evaluates a mathematical expression or performs string concatenation",params:i({expression:"string"}),returns:i("number | string"),handler:(Z,X)=>{let Q=String(Z.params?.expression||"0");return j0.evaluate(Q,X)}}),this.register(R0.RESPONSE,{description:"Constructs a standardized response object (useful for webhooks/APIs)",params:i({"content?":"string","body?":"string","statusCode?":"number","headers?":"Record<string, string>"}),returns:i({statusCode:"number",headers:"Record<string, string>",body:"string"}),handler:(Z,X)=>{let Q=Z.params?.content||Z.params?.body||"",U=typeof Q==="string"?j0.interpolate(Q,X):String(Q);return{statusCode:Z.params?.statusCode||200,headers:Z.params?.headers||{"Content-Type":"application/json"},body:U}}}),this.register(R0.EXECUTE,{description:"Spawns a shell command and returns the output (Bun only)",params:i({"command?":"string","content?":"string","safe?":"boolean"}),returns:i({command:"string",stdout:"string",stderr:"string",exitCode:"number"}).or(i({command:"string",error:"string"})),handler:async(Z,X)=>{let Q=Z.params?.command||Z.params?.content||"",U=typeof Q==="string"?j0.interpolate(Q,X):String(Q);if(!Z.params?.safe)console.warn(`[Trigger] Executing unsafe command: ${U}`);try{if(typeof Bun>"u")return{command:U,error:"Bun is required for 'execute' action"};let J=Bun.spawn(U.split(" "),{stdout:"pipe",stderr:"pipe"}),[q,Y]=await Promise.all([new Response(J.stdout).text(),new Response(J.stderr).text()]);return{command:U,stdout:q,stderr:Y,exitCode:await J.exited}}catch(J){return{command:U,error:String(J)}}}}),this.register(R0.FORWARD,{description:"Forwards the current event data to a remote URL via HTTP",params:i({url:"string","method?":"'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE'","headers?":"Record<string, string>"}),returns:i({url:"string",method:"string",status:"number",headers:"Record<string, string>",body:"string"}).or(i({url:"string",method:"string",error:"string"})),handler:async(Z,X)=>{let Q=Z.params?.url||"",U=typeof Q==="string"?j0.interpolate(Q,X):String(Q),J=String(Z.params?.method||"POST").toUpperCase(),Y=["POST","PUT","PATCH"].includes(J);try{let W=await fetch(U,{method:J,headers:{"Content-Type":"application/json",...typeof Z.params?.headers==="object"&&Z.params.headers!==null&&!Array.isArray(Z.params.headers)?Z.params.headers:{}},...Y?{body:JSON.stringify(X.data)}:{}});return{url:U,method:J,status:W.status,headers:(()=>{let $={};return W.headers.forEach((L,_)=>$[_]=L),$})(),body:await W.text()}}catch(W){return{url:U,method:J,error:String(W)}}}}),this.register(R0.STATE_SET,{description:"Sets a value in the persistent state",params:i({key:"string",value:"unknown"}),returns:i({key:"string",value:"unknown"}),handler:async(Z,X)=>{let Q=String(Z.params?.key||""),U=Z.params?.value;if(!Q)return{error:"Missing key for STATE_SET"};let J=U;if(typeof U==="string"&&U.includes("${"))J=j0.interpolate(U,X);return await z0.getInstance().set(Q,J),{key:Q,value:J}}}),this.register(R0.STATE_INCREMENT,{description:"Increments a numeric value in the persistent state",params:i({key:"string","amount?":"number"}),returns:i({key:"string",newValue:"number"}),handler:async(Z,X)=>{let Q=String(Z.params?.key||""),U=Number(Z.params?.amount)||1;if(!Q)return{error:"Missing key for STATE_INCREMENT"};let J=await z0.getInstance().increment(Q,U);return{key:Q,newValue:J}}}),this.register(R0.STATE_GET,{description:"Reads a value from state and optionally stores it in context.env",params:i({key:"string","as?":"string"}),returns:i({key:"string",value:"unknown","storedAs?":"string"}),handler:async(Z,X)=>{let Q=String(Z.params?.key||""),U=String(Z.params?.as||Q);if(!Q)return{error:"Missing key for STATE_GET"};let J=await z0.getInstance().get(Q);if(!X.env)X.env={};return X.env[U]=J,{key:Q,value:J,storedAs:U}}}),this.register(R0.STATE_DELETE,{description:"Deletes a key from the persistent state",params:i({key:"string"}),returns:i({key:"string",deleted:"boolean"}),handler:async(Z,X)=>{let Q=String(Z.params?.key||"");if(!Q)return{error:"Missing key for STATE_DELETE"};let U=await z0.getInstance().delete(Q);return{key:Q,deleted:U}}}),this.register(R0.EMIT_EVENT,{description:"Emits a new event back into the system",params:i({event:"string","data?":"object"}),returns:i({event:"string",payload:"object"}),handler:(Z,X)=>{return{event:String(Z.params?.event||""),payload:Z.params?.data||{}}}}),this.register(R0.NOTIFY,{description:"Sends a notification to a specific target",params:i({"message?":"string","content?":"string","target?":"string"}),returns:i({target:"string",message:"string"}),handler:(Z,X)=>{let Q=Z.params?.message||Z.params?.content||"Notification",U=Z.params?.target||"default";return console.log(`[Notification] To: ${U}, Msg: ${Q}`),{target:U,message:Q}}}),this.register(R0.STATE_OP,{description:"Executes a custom JavaScript block with access to context and state",params:i({run:"string"}),returns:i("unknown"),handler:(Z,X)=>{if(Z.params?.run)return Function("context","state","data","vars","env","helpers",`with(context) { ${Z.params.run} }`)(X,X.state,X.data,X.vars,X.env,X.helpers);return{warning:"Missing 'run' param for STATE_OP"}}})}}var R0;var v2=O(()=>{WX();W9();x6();R0={LOG:"LOG",MATH:"MATH",RESPONSE:"RESPONSE",EXECUTE:"EXECUTE",FORWARD:"FORWARD",STATE_SET:"STATE_SET",STATE_INCREMENT:"STATE_INCREMENT",STATE_GET:"STATE_GET",STATE_DELETE:"STATE_DELETE",EMIT_EVENT:"EMIT_EVENT",NOTIFY:"NOTIFY",STATE_OP:"STATE_OP"}});var l=C((W_)=>{var wX=Symbol.for("yaml.alias"),_J=Symbol.for("yaml.document"),M9=Symbol.for("yaml.map"),VJ=Symbol.for("yaml.pair"),AX=Symbol.for("yaml.scalar"),O9=Symbol.for("yaml.seq"),P1=Symbol.for("yaml.node.type"),Z_=(Z)=>!!Z&&typeof Z==="object"&&Z[P1]===wX,X_=(Z)=>!!Z&&typeof Z==="object"&&Z[P1]===_J,Q_=(Z)=>!!Z&&typeof Z==="object"&&Z[P1]===M9,U_=(Z)=>!!Z&&typeof Z==="object"&&Z[P1]===VJ,HJ=(Z)=>!!Z&&typeof Z==="object"&&Z[P1]===AX,J_=(Z)=>!!Z&&typeof Z==="object"&&Z[P1]===O9;function FJ(Z){if(Z&&typeof Z==="object")switch(Z[P1]){case M9:case O9:return!0}return!1}function q_(Z){if(Z&&typeof Z==="object")switch(Z[P1]){case wX:case M9:case AX:case O9:return!0}return!1}var Y_=(Z)=>(HJ(Z)||FJ(Z))&&!!Z.anchor;W_.ALIAS=wX;W_.DOC=_J;W_.MAP=M9;W_.NODE_TYPE=P1;W_.PAIR=VJ;W_.SCALAR=AX;W_.SEQ=O9;W_.hasAnchor=Y_;W_.isAlias=Z_;W_.isCollection=FJ;W_.isDocument=X_;W_.isMap=Q_;W_.isNode=q_;W_.isPair=U_;W_.isScalar=HJ;W_.isSeq=J_});var c6=C((w_)=>{var _0=l(),E0=Symbol("break visit"),zJ=Symbol("skip children"),W1=Symbol("remove node");function R9(Z,X){let Q=BJ(X);if(_0.isDocument(Z)){if(u2(null,Z.contents,Q,Object.freeze([Z]))===W1)Z.contents=null}else u2(null,Z,Q,Object.freeze([]))}R9.BREAK=E0;R9.SKIP=zJ;R9.REMOVE=W1;function u2(Z,X,Q,U){let J=MJ(Z,X,Q,U);if(_0.isNode(J)||_0.isPair(J))return OJ(Z,U,J),u2(Z,J,Q,U);if(typeof J!=="symbol"){if(_0.isCollection(X)){U=Object.freeze(U.concat(X));for(let q=0;q<X.items.length;++q){let Y=u2(q,X.items[q],Q,U);if(typeof Y==="number")q=Y-1;else if(Y===E0)return E0;else if(Y===W1)X.items.splice(q,1),q-=1}}else if(_0.isPair(X)){U=Object.freeze(U.concat(X));let q=u2("key",X.key,Q,U);if(q===E0)return E0;else if(q===W1)X.key=null;let Y=u2("value",X.value,Q,U);if(Y===E0)return E0;else if(Y===W1)X.value=null}}return J}async function P9(Z,X){let Q=BJ(X);if(_0.isDocument(Z)){if(await p2(null,Z.contents,Q,Object.freeze([Z]))===W1)Z.contents=null}else await p2(null,Z,Q,Object.freeze([]))}P9.BREAK=E0;P9.SKIP=zJ;P9.REMOVE=W1;async function p2(Z,X,Q,U){let J=await MJ(Z,X,Q,U);if(_0.isNode(J)||_0.isPair(J))return OJ(Z,U,J),p2(Z,J,Q,U);if(typeof J!=="symbol"){if(_0.isCollection(X)){U=Object.freeze(U.concat(X));for(let q=0;q<X.items.length;++q){let Y=await p2(q,X.items[q],Q,U);if(typeof Y==="number")q=Y-1;else if(Y===E0)return E0;else if(Y===W1)X.items.splice(q,1),q-=1}}else if(_0.isPair(X)){U=Object.freeze(U.concat(X));let q=await p2("key",X.key,Q,U);if(q===E0)return E0;else if(q===W1)X.key=null;let Y=await p2("value",X.value,Q,U);if(Y===E0)return E0;else if(Y===W1)X.value=null}}return J}function BJ(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 MJ(Z,X,Q,U){if(typeof Q==="function")return Q(Z,X,U);if(_0.isMap(X))return Q.Map?.(Z,X,U);if(_0.isSeq(X))return Q.Seq?.(Z,X,U);if(_0.isPair(X))return Q.Pair?.(Z,X,U);if(_0.isScalar(X))return Q.Scalar?.(Z,X,U);if(_0.isAlias(X))return Q.Alias?.(Z,X,U);return}function OJ(Z,X,Q){let U=X[X.length-1];if(_0.isCollection(U))U.items[Z]=Q;else if(_0.isPair(U))if(Z==="key")U.key=Q;else U.value=Q;else if(_0.isDocument(U))U.contents=Q;else{let J=_0.isAlias(U)?"alias":"scalar";throw Error(`Cannot replace node with ${J} parent`)}}w_.visit=R9;w_.visitAsync=P9});var SX=C((E_)=>{var RJ=l(),C_=c6(),N_={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},j_=(Z)=>Z.replace(/[!,[\]{}]/g,(X)=>N_[X]);class l0{constructor(Z,X){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},l0.defaultYaml,Z),this.tags=Object.assign({},l0.defaultTags,X)}clone(){let Z=new l0(this.yaml,this.tags);return Z.docStart=this.docStart,Z}atDocument(){let Z=new l0(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:l0.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},l0.defaultTags);break}return Z}add(Z,X){if(this.atNextDocument)this.yaml={explicit:l0.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},l0.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[J,q]=Q;return this.tags[J]=q,!0}case"%YAML":{if(this.yaml.explicit=!0,Q.length!==1)return X(0,"%YAML directive should contain exactly one part"),!1;let[J]=Q;if(J==="1.1"||J==="1.2")return this.yaml.version=J,!0;else{let q=/^\d+\.\d+$/.test(J);return X(6,`Unsupported YAML version ${J}`,q),!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 q=Z.slice(2,-1);if(q==="!"||q==="!!")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 q}let[,Q,U]=Z.match(/^(.*!)([^!]*)$/s);if(!U)X(`The ${Z} tag has no suffix`);let J=this.tags[Q];if(J)try{return J+decodeURIComponent(U)}catch(q){return X(String(q)),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+j_(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&&RJ.isNode(Z.contents)){let J={};C_.visit(Z.contents,(q,Y)=>{if(RJ.isNode(Y)&&Y.tag)J[Y.tag]=!0}),U=Object.keys(J)}else U=[];for(let[J,q]of Q){if(J==="!!"&&q==="tag:yaml.org,2002:")continue;if(!Z||U.some((Y)=>Y.startsWith(q)))X.push(`%TAG ${J} ${q}`)}return X.join(`
47
- `)}}l0.defaultYaml={explicit:!1,version:"1.2"};l0.defaultTags={"!!":"tag:yaml.org,2002:"};E_.Directives=l0});var K9=C((k_)=>{var PJ=l(),I_=c6();function f_(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 KJ(Z){let X=new Set;return I_.visit(Z,{Value(Q,U){if(U.anchor)X.add(U.anchor)}}),X}function TJ(Z,X){for(let Q=1;;++Q){let U=`${Z}${Q}`;if(!X.has(U))return U}}function y_(Z,X){let Q=[],U=new Map,J=null;return{onAnchor:(q)=>{Q.push(q),J??(J=KJ(Z));let Y=TJ(X,J);return J.add(Y),Y},setAnchors:()=>{for(let q of Q){let Y=U.get(q);if(typeof Y==="object"&&Y.anchor&&(PJ.isScalar(Y.node)||PJ.isCollection(Y.node)))Y.node.anchor=Y.anchor;else{let W=Error("Failed to resolve repeated object (this should not happen)");throw W.source=q,W}}},sourceObjects:U}}k_.anchorIsValid=f_;k_.anchorNames=KJ;k_.createNodeAnchors=y_;k_.findNewAnchor=TJ});var CX=C((m_)=>{function i6(Z,X,Q,U){if(U&&typeof U==="object")if(Array.isArray(U))for(let J=0,q=U.length;J<q;++J){let Y=U[J],W=i6(Z,U,String(J),Y);if(W===void 0)delete U[J];else if(W!==Y)U[J]=W}else if(U instanceof Map)for(let J of Array.from(U.keys())){let q=U.get(J),Y=i6(Z,U,J,q);if(Y===void 0)U.delete(J);else if(Y!==q)U.set(J,Y)}else if(U instanceof Set)for(let J of Array.from(U)){let q=i6(Z,U,J,J);if(q===void 0)U.delete(J);else if(q!==J)U.delete(J),U.add(q)}else for(let[J,q]of Object.entries(U)){let Y=i6(Z,U,J,q);if(Y===void 0)delete U[J];else if(Y!==q)U[J]=Y}return Z.call(X,Q,U)}m_.applyReviver=i6});var g1=C((l_)=>{var p_=l();function DJ(Z,X,Q){if(Array.isArray(Z))return Z.map((U,J)=>DJ(U,String(J),Q));if(Z&&typeof Z.toJSON==="function"){if(!Q||!p_.hasAnchor(Z))return Z.toJSON(X,Q);let U={aliasCount:0,count:1,res:void 0};Q.anchors.set(Z,U),Q.onCreate=(q)=>{U.res=q,delete Q.onCreate};let J=Z.toJSON(X,Q);if(Q.onCreate)Q.onCreate(J);return J}if(typeof Z==="bigint"&&!Q?.keep)return Number(Z);return Z}l_.toJS=DJ});var T9=C((s_)=>{var c_=CX(),wJ=l(),i_=g1();class AJ{constructor(Z){Object.defineProperty(this,wJ.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:J}={}){if(!wJ.isDocument(Z))throw TypeError("A document argument is required");let q={anchors:new Map,doc:Z,keep:!0,mapAsMap:X===!0,mapKeyWarned:!1,maxAliasCount:typeof Q==="number"?Q:100},Y=i_.toJS(this,"",q);if(typeof U==="function")for(let{count:W,res:$}of q.anchors.values())U($,W);return typeof J==="function"?c_.applyReviver(J,{"":Y},"",Y):Y}}s_.NodeBase=AJ});var s6=C((e_)=>{var r_=K9(),o_=c6(),l2=l(),n_=T9(),t_=g1();class SJ extends n_.NodeBase{constructor(Z){super(l2.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=[],o_.visit(Z,{Node:(J,q)=>{if(l2.isAlias(q)||l2.hasAnchor(q))Q.push(q)}}),X)X.aliasResolveCache=Q;let U=void 0;for(let J of Q){if(J===this)break;if(J.anchor===this.source)U=J}return U}toJSON(Z,X){if(!X)return{source:this.source};let{anchors:Q,doc:U,maxAliasCount:J}=X,q=this.resolve(U,X);if(!q){let W=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw ReferenceError(W)}let Y=Q.get(q);if(!Y)t_.toJS(q,null,X),Y=Q.get(q);if(Y?.res===void 0)throw ReferenceError("This should not happen: Alias anchor was not resolved?");if(J>=0){if(Y.count+=1,Y.aliasCount===0)Y.aliasCount=D9(U,q,Q);if(Y.count*Y.aliasCount>J)throw ReferenceError("Excessive alias count indicates a resource exhaustion attack")}return Y.res}toString(Z,X,Q){let U=`*${this.source}`;if(Z){if(r_.anchorIsValid(this.source),Z.options.verifyAliasOrder&&!Z.anchors.has(this.source)){let J=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw Error(J)}if(Z.implicitKey)return`${U} `}return U}}function D9(Z,X,Q){if(l2.isAlias(X)){let U=X.resolve(Z),J=Q&&U&&Q.get(U);return J?J.count*J.aliasCount:0}else if(l2.isCollection(X)){let U=0;for(let J of X.items){let q=D9(Z,J,Q);if(q>U)U=q}return U}else if(l2.isPair(X)){let U=D9(Z,X.key,Q),J=D9(Z,X.value,Q);return Math.max(U,J)}return 1}e_.Alias=SJ});var W0=C((qV)=>{var XV=l(),QV=T9(),UV=g1(),JV=(Z)=>!Z||typeof Z!=="function"&&typeof Z!=="object";class U2 extends QV.NodeBase{constructor(Z){super(XV.SCALAR);this.value=Z}toJSON(Z,X){return X?.keep?this.value:UV.toJS(this.value,Z,X)}toString(){return String(this.value)}}U2.BLOCK_FOLDED="BLOCK_FOLDED";U2.BLOCK_LITERAL="BLOCK_LITERAL";U2.PLAIN="PLAIN";U2.QUOTE_DOUBLE="QUOTE_DOUBLE";U2.QUOTE_SINGLE="QUOTE_SINGLE";qV.Scalar=U2;qV.isScalarValue=JV});var a6=C((VV)=>{var $V=s6(),J2=l(),CJ=W0(),LV="tag:yaml.org,2002:";function GV(Z,X,Q){if(X){let U=Q.filter((q)=>q.tag===X),J=U.find((q)=>!q.format)??U[0];if(!J)throw Error(`Tag ${X} not found`);return J}return Q.find((U)=>U.identify?.(Z)&&!U.format)}function _V(Z,X,Q){if(J2.isDocument(Z))Z=Z.contents;if(J2.isNode(Z))return Z;if(J2.isPair(Z)){let G=Q.schema[J2.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:J,onTagObj:q,schema:Y,sourceObjects:W}=Q,$=void 0;if(U&&Z&&typeof Z==="object")if($=W.get(Z),$)return $.anchor??($.anchor=J(Z)),new $V.Alias($.anchor);else $={anchor:null,node:null},W.set(Z,$);if(X?.startsWith("!!"))X=LV+X.slice(2);let L=GV(Z,X,Y.tags);if(!L){if(Z&&typeof Z.toJSON==="function")Z=Z.toJSON();if(!Z||typeof Z!=="object"){let G=new CJ.Scalar(Z);if($)$.node=G;return G}L=Z instanceof Map?Y[J2.MAP]:(Symbol.iterator in Object(Z))?Y[J2.SEQ]:Y[J2.MAP]}if(q)q(L),delete Q.onTagObj;let _=L?.createNode?L.createNode(Q.schema,Z,Q):typeof L?.nodeClass?.from==="function"?L.nodeClass.from(Q.schema,Z,Q):new CJ.Scalar(Z);if(X)_.tag=X;else if(!L.default)_.tag=L.tag;if($)$.node=_;return _}VV.createNode=_V});var w9=C((BV)=>{var FV=a6(),$1=l(),zV=T9();function NX(Z,X,Q){let U=Q;for(let J=X.length-1;J>=0;--J){let q=X[J];if(typeof q==="number"&&Number.isInteger(q)&&q>=0){let Y=[];Y[q]=U,U=Y}else U=new Map([[q,U]])}return FV.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 NJ=(Z)=>Z==null||typeof Z==="object"&&!!Z[Symbol.iterator]().next().done;class jJ extends zV.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(NJ(Z))this.add(X);else{let[Q,...U]=Z,J=this.get(Q,!0);if($1.isCollection(J))J.addIn(U,X);else if(J===void 0&&this.schema)this.set(Q,NX(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,J=this.get(Q,!0);if(U.length===0)return!X&&$1.isScalar(J)?J.value:J;else return $1.isCollection(J)?J.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 J=this.get(Q,!0);if($1.isCollection(J))J.setIn(U,X);else if(J===void 0&&this.schema)this.set(Q,NX(this.schema,U,X));else throw Error(`Expected YAML collection at ${Q}. Remaining path: ${U}`)}}}BV.Collection=jJ;BV.collectionFromPath=NX;BV.isEmptyPath=NJ});var r6=C((TV)=>{var PV=(Z)=>Z.replace(/^(?!$)(?: $)?/gm,"#");function jX(Z,X){if(/^\n+$/.test(Z))return Z.substring(1);return X?Z.replace(/^(?! *$)/gm,X):Z}var KV=(Z,X,Q)=>Z.endsWith(`
48
- `)?jX(Q,X):Q.includes(`
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
+ `)?yX(Q,X):Q.includes(`
49
49
  `)?`
50
- `+jX(Q,X):(Z.endsWith(" ")?"":" ")+Q;TV.indentComment=jX;TV.lineComment=KV;TV.stringifyComment=PV});var bJ=C((CV)=>{function SV(Z,X,Q="flow",{indentAtStart:U,lineWidth:J=80,minContentWidth:q=20,onFold:Y,onOverflow:W}={}){if(!J||J<0)return Z;if(J<q)q=0;let $=Math.max(1+q,1+J-X.length);if(Z.length<=$)return Z;let L=[],_={},G=J-X.length;if(typeof U==="number")if(U>J-Math.max(2,q))L.push(0);else G=J-U;let V=void 0,F=void 0,z=!1,H=-1,B=-1,K=-1;if(Q==="block"){if(H=EJ(Z,H,X.length),H!==-1)G=H+$}for(let P;P=Z[H+=1];){if(Q==="quoted"&&P==="\\"){switch(B=H,Z[H+1]){case"x":H+=3;break;case"u":H+=5;break;case"U":H+=9;break;default:H+=1}K=H}if(P===`
51
- `){if(Q==="block")H=EJ(Z,H,X.length);G=H+X.length+$,V=void 0}else{if(P===" "&&F&&F!==" "&&F!==`
52
- `&&F!=="\t"){let D=Z[H+1];if(D&&D!==" "&&D!==`
53
- `&&D!=="\t")V=H}if(H>=G)if(V)L.push(V),G=V+$,V=void 0;else if(Q==="quoted"){while(F===" "||F==="\t")F=P,P=Z[H+=1],z=!0;let D=H>K+1?H-2:B-1;if(_[D])return Z;L.push(D),_[D]=!0,G=D+$,V=void 0}else z=!0}F=P}if(z&&W)W();if(L.length===0)return Z;if(Y)Y();let T=Z.slice(0,L[0]);for(let P=0;P<L.length;++P){let D=L[P],S=L[P+1]||Z.length;if(D===0)T=`
54
- ${X}${Z.slice(0,S)}`;else{if(Q==="quoted"&&_[D])T+=`${Z[D]}\\`;T+=`
55
- ${X}${Z.slice(D+1,S)}`}}return T}function EJ(Z,X,Q){let U=X,J=X+1,q=Z[J];while(q===" "||q==="\t")if(X<J+Q)q=Z[++X];else{do q=Z[++X];while(q&&q!==`
56
- `);U=X,J=X+1,q=Z[J]}return U}CV.FOLD_BLOCK="block";CV.FOLD_FLOW="flow";CV.FOLD_QUOTED="quoted";CV.foldFlowLines=SV});var n6=C((kV)=>{var t0=W0(),v1=bJ(),S9=(Z,X)=>({indentAtStart:X?Z.indent.length:Z.indentAtStart,lineWidth:Z.options.lineWidth,minContentWidth:Z.options.minContentWidth}),C9=(Z)=>/^(%|---|\.\.\.)/m.test(Z);function IV(Z,X,Q){if(!X||X<0)return!1;let U=X-Q,J=Z.length;if(J<=U)return!1;for(let q=0,Y=0;q<J;++q)if(Z[q]===`
57
- `){if(q-Y>U)return!0;if(Y=q+1,J-Y<=U)return!1}return!0}function o6(Z,X){let Q=JSON.stringify(Z);if(X.options.doubleQuotedAsJSON)return Q;let{implicitKey:U}=X,J=X.options.doubleQuotedMinMultiLineLength,q=X.indent||(C9(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 _=Q.substr($+2,4);switch(_){case"0000":Y+="\\0";break;case"0007":Y+="\\a";break;case"000b":Y+="\\v";break;case"001b":Y+="\\e";break;case"0085":Y+="\\N";break;case"00a0":Y+="\\_";break;case"2028":Y+="\\L";break;case"2029":Y+="\\P";break;default:if(_.substr(0,2)==="00")Y+="\\x"+_.substr(2);else Y+=Q.substr($,6)}$+=5,W=$+1}break;case"n":if(U||Q[$+2]==='"'||Q.length<J)$+=1;else{Y+=Q.slice(W,$)+`
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
+ `){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 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
+ `);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
+ `){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
 
59
59
  `;while(Q[$+2]==="\\"&&Q[$+3]==="n"&&Q[$+4]!=='"')Y+=`
60
- `,$+=2;if(Y+=q,Q[$+2]===" ")Y+="\\";$+=1,W=$+1}break;default:$+=1}}return Y=W?Y+Q.slice(W):Q,U?Y:v1.foldFlowLines(Y,q,v1.FOLD_QUOTED,S9(X,!1))}function EX(Z,X){if(X.options.singleQuote===!1||X.implicitKey&&Z.includes(`
61
- `)||/[ \t]\n|\n[ \t]/.test(Z))return o6(Z,X);let Q=X.indent||(C9(Z)?" ":""),U="'"+Z.replace(/'/g,"''").replace(/\n+/g,`$&
62
- ${Q}`)+"'";return X.implicitKey?U:v1.foldFlowLines(U,Q,v1.FOLD_FLOW,S9(X,!1))}function d2(Z,X){let{singleQuote:Q}=X.options,U;if(Q===!1)U=o6;else{let J=Z.includes('"'),q=Z.includes("'");if(J&&!q)U=EX;else if(q&&!J)U=o6;else U=Q?EX:o6}return U(Z,X)}var bX;try{bX=new RegExp(`(^|(?<!
60
+ `,$+=2;if(Y+=J,Q[$+2]===" ")Y+="\\";$+=1,W=$+1}break;default:$+=1}}return Y=W?Y+Q.slice(W):Q,U?Y:v1.foldFlowLines(Y,J,v1.FOLD_QUOTED,E9(X,!1))}function kX(Z,X){if(X.options.singleQuote===!1||X.implicitKey&&Z.includes(`
61
+ `)||/[ \t]\n|\n[ \t]/.test(Z))return U4(Z,X);let Q=X.indent||(b9(Z)?" ":""),U="'"+Z.replace(/'/g,"''").replace(/\n+/g,`$&
62
+ ${Q}`)+"'";return X.implicitKey?U:v1.foldFlowLines(U,Q,v1.FOLD_FLOW,E9(X,!1))}function r2(Z,X){let{singleQuote:Q}=X.options,U;if(Q===!1)U=U4;else{let q=Z.includes('"'),J=Z.includes("'");if(q&&!J)U=kX;else if(J&&!q)U=U4;else U=Q?kX:U4}return U(Z,X)}var gX;try{gX=new RegExp(`(^|(?<!
63
63
  ))
64
64
  +(?!
65
- |$)`,"g")}catch{bX=/\n+(?!\n|$)/g}function A9({comment:Z,type:X,value:Q},U,J,q){let{blockQuote:Y,commentString:W,lineWidth:$}=U.options;if(!Y||/\n[\t ]+$/.test(Q))return d2(Q,U);let L=U.indent||(U.forceBlockIndent||C9(Q)?" ":""),_=Y==="literal"?!0:Y==="folded"||X===t0.Scalar.BLOCK_FOLDED?!1:X===t0.Scalar.BLOCK_LITERAL?!0:!IV(Q,$,L.length);if(!Q)return _?`|
65
+ |$)`,"g")}catch{gX=/\n+(?!\n|$)/g}function N9({comment:Z,type:X,value:Q},U,q,J){let{blockQuote:Y,commentString:W,lineWidth:$}=U.options;if(!Y||/\n[\t ]+$/.test(Q))return r2(Q,U);let L=U.indent||(U.forceBlockIndent||b9(Q)?" ":""),V=Y==="literal"?!0:Y==="folded"||X===o0.Scalar.BLOCK_FOLDED?!1:X===o0.Scalar.BLOCK_LITERAL?!0:!h_(Q,$,L.length);if(!Q)return V?`|
66
66
  `:`>
67
- `;let G,V;for(V=Q.length;V>0;--V){let S=Q[V-1];if(S!==`
68
- `&&S!=="\t"&&S!==" ")break}let F=Q.substring(V),z=F.indexOf(`
69
- `);if(z===-1)G="-";else if(Q===F||z!==F.length-1){if(G="+",q)q()}else G="";if(F){if(Q=Q.slice(0,-F.length),F[F.length-1]===`
70
- `)F=F.slice(0,-1);F=F.replace(bX,`$&${L}`)}let H=!1,B,K=-1;for(B=0;B<Q.length;++B){let S=Q[B];if(S===" ")H=!0;else if(S===`
71
- `)K=B;else break}let T=Q.substring(0,K<B?K+1:B);if(T)Q=Q.substring(T.length),T=T.replace(/\n+/g,`$&${L}`);let D=(H?L?"2":"1":"")+G;if(Z){if(D+=" "+W(Z.replace(/ ?[\r\n]+/g," ")),J)J()}if(!_){let S=Q.replace(/\n+/g,`
72
- $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${L}`),j=!1,v=S9(U,!0);if(Y!=="folded"&&X!==t0.Scalar.BLOCK_FOLDED)v.onOverflow=()=>{j=!0};let N=v1.foldFlowLines(`${T}${S}${F}`,L,v1.FOLD_BLOCK,v);if(!j)return`>${D}
73
- ${L}${N}`}return Q=Q.replace(/\n+/g,`$&${L}`),`|${D}
74
- ${L}${T}${Q}${F}`}function fV(Z,X,Q,U){let{type:J,value:q}=Z,{actualString:Y,implicitKey:W,indent:$,indentStep:L,inFlow:_}=X;if(W&&q.includes(`
75
- `)||_&&/[[\]{},]/.test(q))return d2(q,X);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(q))return W||_||!q.includes(`
76
- `)?d2(q,X):A9(Z,X,Q,U);if(!W&&!_&&J!==t0.Scalar.PLAIN&&q.includes(`
77
- `))return A9(Z,X,Q,U);if(C9(q)){if($==="")return X.forceBlockIndent=!0,A9(Z,X,Q,U);else if(W&&$===L)return d2(q,X)}let G=q.replace(/\n+/g,`$&
78
- ${$}`);if(Y){let V=(H)=>H.default&&H.tag!=="tag:yaml.org,2002:str"&&H.test?.test(G),{compat:F,tags:z}=X.doc.schema;if(z.some(V)||F?.some(V))return d2(q,X)}return W?G:v1.foldFlowLines(G,$,v1.FOLD_FLOW,S9(X,!1))}function yV(Z,X,Q,U){let{implicitKey:J,inFlow:q}=X,Y=typeof Z.value==="string"?Z:Object.assign({},Z,{value:String(Z.value)}),{type:W}=Z;if(W!==t0.Scalar.QUOTE_DOUBLE){if(/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(Y.value))W=t0.Scalar.QUOTE_DOUBLE}let $=(_)=>{switch(_){case t0.Scalar.BLOCK_FOLDED:case t0.Scalar.BLOCK_LITERAL:return J||q?d2(Y.value,X):A9(Y,X,Q,U);case t0.Scalar.QUOTE_DOUBLE:return o6(Y.value,X);case t0.Scalar.QUOTE_SINGLE:return EX(Y.value,X);case t0.Scalar.PLAIN:return fV(Y,X,Q,U);default:return null}},L=$(W);if(L===null){let{defaultKeyType:_,defaultStringType:G}=X.options,V=J&&_||G;if(L=$(V),L===null)throw Error(`Unsupported default string type ${V}`)}return L}kV.stringifyString=yV});var t6=C((dV)=>{var vV=K9(),x1=l(),xV=r6(),hV=n6();function mV(Z,X){let Q=Object.assign({blockQuote:!0,commentString:xV.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 uV(Z,X){if(X.tag){let J=Z.filter((q)=>q.tag===X.tag);if(J.length>0)return J.find((q)=>q.format===X.format)??J[0]}let Q=void 0,U;if(x1.isScalar(X)){U=X.value;let J=Z.filter((q)=>q.identify?.(U));if(J.length>1){let q=J.filter((Y)=>Y.test);if(q.length>0)J=q}Q=J.find((q)=>q.format===X.format)??J.find((q)=>!q.format)}else U=X,Q=Z.find((J)=>J.nodeClass&&U instanceof J.nodeClass);if(!Q){let J=U?.constructor?.name??(U===null?"null":typeof U);throw Error(`Tag not resolved for ${J} value`)}return Q}function pV(Z,X,{anchors:Q,doc:U}){if(!U.directives)return"";let J=[],q=(x1.isScalar(Z)||x1.isCollection(Z))&&Z.anchor;if(q&&vV.anchorIsValid(q))Q.add(q),J.push(`&${q}`);let Y=Z.tag??(X.default?null:X.tag);if(Y)J.push(U.directives.tagString(Y));return J.join(" ")}function lV(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 J=void 0,q=x1.isNode(Z)?Z:X.doc.createNode(Z,{onTagObj:($)=>J=$});J??(J=uV(X.doc.schema.tags,q));let Y=pV(q,J,X);if(Y.length>0)X.indentAtStart=(X.indentAtStart??0)+Y.length+1;let W=typeof J.stringify==="function"?J.stringify(q,X,Q,U):x1.isScalar(q)?hV.stringifyString(q,X,Q,U):q.toString(X,Q,U);if(!Y)return W;return x1.isScalar(q)||W[0]==="{"||W[0]==="["?`${Y} ${W}`:`${Y}
79
- ${X.indent}${W}`}dV.createStringifyContext=mV;dV.stringify=lV});var yJ=C((aV)=>{var K1=l(),IJ=W0(),fJ=t6(),e6=r6();function sV({key:Z,value:X},Q,U,J){let{allNullValues:q,doc:Y,indent:W,indentStep:$,options:{commentString:L,indentSeq:_,simpleKeys:G}}=Q,V=K1.isNode(Z)&&Z.comment||null;if(G){if(V)throw Error("With simple keys, key nodes cannot have comments");if(K1.isCollection(Z)||!K1.isNode(Z)&&typeof Z==="object")throw Error("With simple keys, collection cannot be used as a key value")}let F=!G&&(!Z||V&&X==null&&!Q.inFlow||K1.isCollection(Z)||(K1.isScalar(Z)?Z.type===IJ.Scalar.BLOCK_FOLDED||Z.type===IJ.Scalar.BLOCK_LITERAL:typeof Z==="object"));Q=Object.assign({},Q,{allNullValues:!1,implicitKey:!F&&(G||!q),indent:W+$});let z=!1,H=!1,B=fJ.stringify(Z,Q,()=>z=!0,()=>H=!0);if(!F&&!Q.inFlow&&B.length>1024){if(G)throw Error("With simple keys, single line scalar must not span more than 1024 characters");F=!0}if(Q.inFlow){if(q||X==null){if(z&&U)U();return B===""?"?":F?`? ${B}`:B}}else if(q&&!G||X==null&&F){if(B=`? ${B}`,V&&!z)B+=e6.lineComment(B,Q.indent,L(V));else if(H&&J)J();return B}if(z)V=null;if(F){if(V)B+=e6.lineComment(B,Q.indent,L(V));B=`? ${B}
80
- ${W}:`}else if(B=`${B}:`,V)B+=e6.lineComment(B,Q.indent,L(V));let K,T,P;if(K1.isNode(X))K=!!X.spaceBefore,T=X.commentBefore,P=X.comment;else if(K=!1,T=null,P=null,X&&typeof X==="object")X=Y.createNode(X);if(Q.implicitKey=!1,!F&&!V&&K1.isScalar(X))Q.indentAtStart=B.length+1;if(H=!1,!_&&$.length>=2&&!Q.inFlow&&!F&&K1.isSeq(X)&&!X.flow&&!X.tag&&!X.anchor)Q.indent=Q.indent.substring(2);let D=!1,S=fJ.stringify(X,Q,()=>D=!0,()=>H=!0),j=" ";if(V||K||T){if(j=K?`
81
- `:"",T){let v=L(T);j+=`
82
- ${e6.indentComment(v,Q.indent)}`}if(S===""&&!Q.inFlow){if(j===`
83
- `&&P)j=`
67
+ `;let G,_;for(_=Q.length;_>0;--_){let S=Q[_-1];if(S!==`
68
+ `&&S!=="\t"&&S!==" ")break}let H=Q.substring(_),F=H.indexOf(`
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
+ `)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 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
+ ${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
+ `)||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
+ `)?r2(J,X):N9(Z,X,Q,U);if(!W&&!V&&q!==o0.Scalar.PLAIN&&J.includes(`
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 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
+ `:"",P){let y=L(P);N+=`
82
+ ${Y4.indentComment(y,Q.indent)}`}if(S===""&&!Q.inFlow){if(N===`
83
+ `&&w)N=`
84
84
 
85
- `}else j+=`
86
- ${Q.indent}`}else if(!F&&K1.isCollection(X)){let v=S[0],N=S.indexOf(`
87
- `),x=N!==-1,s=Q.inFlow??X.flow??X.items.length===0;if(x||!s){let Q0=!1;if(x&&(v==="&"||v==="!")){let a=S.indexOf(" ");if(v==="&"&&a!==-1&&a<N&&S[a+1]==="!")a=S.indexOf(" ",a+1);if(a===-1||N<a)Q0=!0}if(!Q0)j=`
85
+ `}else N+=`
86
+ ${Q.indent}`}else if(!H&&R1.isCollection(X)){let y=S[0],A=S.indexOf(`
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
- `)j="";if(B+=j+S,Q.inFlow){if(D&&U)U()}else if(P&&!D)B+=e6.lineComment(B,Q.indent,L(P));else if(H&&J)J();return B}aV.stringifyPair=sV});var IX=C((tV)=>{var kJ=_2("process");function oV(Z,...X){if(Z==="debug")console.log(...X)}function nV(Z,X){if(Z==="debug"||Z==="warn")if(typeof kJ.emitWarning==="function")kJ.emitWarning(X);else console.warn(X)}tV.debug=oV;tV.warn=nV});var E9=C((QH)=>{var Z4=l(),gJ=W0(),N9="<<",j9={identify:(Z)=>Z===N9||typeof Z==="symbol"&&Z.description===N9,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new gJ.Scalar(Symbol(N9)),{addToJSMap:vJ}),stringify:()=>N9},XH=(Z,X)=>(j9.identify(X)||Z4.isScalar(X)&&(!X.type||X.type===gJ.Scalar.PLAIN)&&j9.identify(X.value))&&Z?.doc.schema.tags.some((Q)=>Q.tag===j9.tag&&Q.default);function vJ(Z,X,Q){if(Q=Z&&Z4.isAlias(Q)?Q.resolve(Z.doc):Q,Z4.isSeq(Q))for(let U of Q.items)fX(Z,X,U);else if(Array.isArray(Q))for(let U of Q)fX(Z,X,U);else fX(Z,X,Q)}function fX(Z,X,Q){let U=Z&&Z4.isAlias(Q)?Q.resolve(Z.doc):Q;if(!Z4.isMap(U))throw Error("Merge sources must be maps or map aliases");let J=U.toJSON(null,Z,Map);for(let[q,Y]of J)if(X instanceof Map){if(!X.has(q))X.set(q,Y)}else if(X instanceof Set)X.add(q);else if(!Object.prototype.hasOwnProperty.call(X,q))Object.defineProperty(X,q,{value:Y,writable:!0,enumerable:!0,configurable:!0});return X}QH.addMergeToJSMap=vJ;QH.isMergeKey=XH;QH.merge=j9});var kX=C((GH)=>{var YH=IX(),xJ=E9(),WH=t6(),hJ=l(),yX=g1();function $H(Z,X,{key:Q,value:U}){if(hJ.isNode(Q)&&Q.addToJSMap)Q.addToJSMap(Z,X,U);else if(xJ.isMergeKey(Z,Q))xJ.addMergeToJSMap(Z,X,U);else{let J=yX.toJS(Q,"",Z);if(X instanceof Map)X.set(J,yX.toJS(U,J,Z));else if(X instanceof Set)X.add(J);else{let q=LH(Q,J,Z),Y=yX.toJS(U,q,Z);if(q in X)Object.defineProperty(X,q,{value:Y,writable:!0,enumerable:!0,configurable:!0});else X[q]=Y}}return X}function LH(Z,X,Q){if(X===null)return"";if(typeof X!=="object")return String(X);if(hJ.isNode(Z)&&Q?.doc){let U=WH.createStringifyContext(Q.doc,{});U.anchors=new Set;for(let q of Q.anchors.keys())U.anchors.add(q.anchor);U.inFlow=!0,U.inStringifyKey=!0;let J=Z.toString(U);if(!Q.mapKeyWarned){let q=JSON.stringify(J);if(q.length>40)q=q.substring(0,36)+'..."';YH.warn(Q.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${q}. Set mapAsMap: true to use object keys.`),Q.mapKeyWarned=!0}return J}return JSON.stringify(X)}GH.addPairToJSMap=$H});var h1=C((zH)=>{var mJ=a6(),VH=yJ(),HH=kX(),b9=l();function FH(Z,X,Q){let U=mJ.createNode(Z,void 0,Q),J=mJ.createNode(X,void 0,Q);return new I9(U,J)}class I9{constructor(Z,X=null){Object.defineProperty(this,b9.NODE_TYPE,{value:b9.PAIR}),this.key=Z,this.value=X}clone(Z){let{key:X,value:Q}=this;if(b9.isNode(X))X=X.clone(Z);if(b9.isNode(Q))Q=Q.clone(Z);return new I9(X,Q)}toJSON(Z,X){let Q=X?.mapAsMap?new Map:{};return HH.addPairToJSMap(X,Q,this)}toString(Z,X,Q){return Z?.doc?VH.stringifyPair(this,Z,X,Q):JSON.stringify(this)}}zH.Pair=I9;zH.createPair=FH});var gX=C((KH)=>{var q2=l(),uJ=t6(),f9=r6();function OH(Z,X,Q){return(X.inFlow??Z.flow?PH:RH)(Z,X,Q)}function RH({comment:Z,items:X},Q,{blockItemPrefix:U,flowChars:J,itemIndent:q,onChompKeep:Y,onComment:W}){let{indent:$,options:{commentString:L}}=Q,_=Object.assign({},Q,{indent:q,type:null}),G=!1,V=[];for(let z=0;z<X.length;++z){let H=X[z],B=null;if(q2.isNode(H)){if(!G&&H.spaceBefore)V.push("");if(y9(Q,V,H.commentBefore,G),H.comment)B=H.comment}else if(q2.isPair(H)){let T=q2.isNode(H.key)?H.key:null;if(T){if(!G&&T.spaceBefore)V.push("");y9(Q,V,T.commentBefore,G)}}G=!1;let K=uJ.stringify(H,_,()=>B=null,()=>G=!0);if(B)K+=f9.lineComment(K,q,L(B));if(G&&B)G=!1;V.push(U+K)}let F;if(V.length===0)F=J.start+J.end;else{F=V[0];for(let z=1;z<V.length;++z){let H=V[z];F+=H?`
90
- ${$}${H}`:`
91
- `}}if(Z){if(F+=`
92
- `+f9.indentComment(L(Z),$),W)W()}else if(G&&Y)Y();return F}function PH({items:Z},X,{flowChars:Q,itemIndent:U}){let{indent:J,indentStep:q,flowCollectionPadding:Y,options:{commentString:W}}=X;U+=q;let $=Object.assign({},X,{indent:U,inFlow:!0,type:null}),L=!1,_=0,G=[];for(let z=0;z<Z.length;++z){let H=Z[z],B=null;if(q2.isNode(H)){if(H.spaceBefore)G.push("");if(y9(X,G,H.commentBefore,!1),H.comment)B=H.comment}else if(q2.isPair(H)){let T=q2.isNode(H.key)?H.key:null;if(T){if(T.spaceBefore)G.push("");if(y9(X,G,T.commentBefore,!1),T.comment)L=!0}let P=q2.isNode(H.value)?H.value:null;if(P){if(P.comment)B=P.comment;if(P.commentBefore)L=!0}else if(H.value==null&&T?.comment)B=T.comment}if(B)L=!0;let K=uJ.stringify(H,$,()=>B=null);if(z<Z.length-1)K+=",";if(B)K+=f9.lineComment(K,U,W(B));if(!L&&(G.length>_||K.includes(`
93
- `)))L=!0;G.push(K),_=G.length}let{start:V,end:F}=Q;if(G.length===0)return V+F;else{if(!L){let z=G.reduce((H,B)=>H+B.length+2,2);L=X.options.lineWidth>0&&z>X.options.lineWidth}if(L){let z=V;for(let H of G)z+=H?`
94
- ${q}${J}${H}`:`
95
- `;return`${z}
96
- ${J}${F}`}else return`${V}${Y}${G.join(" ")}${Y}${F}`}}function y9({indent:Z,options:{commentString:X}},Q,U,J){if(U&&J)U=U.replace(/^\n+/,"");if(U){let q=f9.indentComment(X(U),Z);Q.push(q.trimStart())}}KH.stringifyCollection=OH});var u1=C((CH)=>{var DH=gX(),wH=kX(),AH=w9(),m1=l(),k9=h1(),SH=W0();function X4(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 pJ extends AH.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:J}=Q,q=new this(Z),Y=(W,$)=>{if(typeof J==="function")$=J.call(X,W,$);else if(Array.isArray(J)&&!J.includes(W))return;if($!==void 0||U)q.items.push(k9.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")q.items.sort(Z.sortMapEntries);return q}add(Z,X){let Q;if(m1.isPair(Z))Q=Z;else if(!Z||typeof Z!=="object"||!("key"in Z))Q=new k9.Pair(Z,Z?.value);else Q=new k9.Pair(Z.key,Z.value);let U=X4(this.items,Q.key),J=this.schema?.sortMapEntries;if(U){if(!X)throw Error(`Key ${Q.key} already set`);if(m1.isScalar(U.value)&&SH.isScalarValue(Q.value))U.value.value=Q.value;else U.value=Q.value}else if(J){let q=this.items.findIndex((Y)=>J(Q,Y)<0);if(q===-1)this.items.push(Q);else this.items.splice(q,0,Q)}else this.items.push(Q)}delete(Z){let X=X4(this.items,Z);if(!X)return!1;return this.items.splice(this.items.indexOf(X),1).length>0}get(Z,X){let U=X4(this.items,Z)?.value;return(!X&&m1.isScalar(U)?U.value:U)??void 0}has(Z){return!!X4(this.items,Z)}set(Z,X){this.add(new k9.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 J of this.items)wH.addPairToJSMap(X,U,J);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 DH.stringifyCollection(this,Z,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:Z.indent||"",onChompKeep:Q,onComment:X})}}CH.YAMLMap=pJ;CH.findPair=X4});var c2=C((IH)=>{var EH=l(),lJ=u1(),bH={collection:"map",default:!0,nodeClass:lJ.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(Z,X){if(!EH.isMap(Z))X("Expected a mapping for this tag");return Z},createNode:(Z,X,Q)=>lJ.YAMLMap.from(Z,X,Q)};IH.map=bH});var p1=C((hH)=>{var yH=a6(),kH=gX(),gH=w9(),v9=l(),vH=W0(),xH=g1();class dJ extends gH.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(Z){super(v9.SEQ,Z);this.items=[]}add(Z){this.items.push(Z)}delete(Z){let X=g9(Z);if(typeof X!=="number")return!1;return this.items.splice(X,1).length>0}get(Z,X){let Q=g9(Z);if(typeof Q!=="number")return;let U=this.items[Q];return!X&&v9.isScalar(U)?U.value:U}has(Z){let X=g9(Z);return typeof X==="number"&&X<this.items.length}set(Z,X){let Q=g9(Z);if(typeof Q!=="number")throw Error(`Expected a valid index, not ${Z}.`);let U=this.items[Q];if(v9.isScalar(U)&&vH.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 J of this.items)Q.push(xH.toJS(J,String(U++),X));return Q}toString(Z,X,Q){if(!Z)return JSON.stringify(this);return kH.stringifyCollection(this,Z,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(Z.indent||"")+" ",onChompKeep:Q,onComment:X})}static from(Z,X,Q){let{replacer:U}=Q,J=new this(Z);if(X&&Symbol.iterator in Object(X)){let q=0;for(let Y of X){if(typeof U==="function"){let W=X instanceof Set?Y:String(q++);Y=U.call(X,W,Y)}J.items.push(yH.createNode(Y,void 0,Q))}}return J}}function g9(Z){let X=v9.isScalar(Z)?Z.value:Z;if(X&&typeof X==="string")X=Number(X);return typeof X==="number"&&Number.isInteger(X)&&X>=0?X:null}hH.YAMLSeq=dJ});var i2=C((lH)=>{var uH=l(),cJ=p1(),pH={collection:"seq",default:!0,nodeClass:cJ.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(Z,X){if(!uH.isSeq(Z))X("Expected a sequence for this tag");return Z},createNode:(Z,X,Q)=>cJ.YAMLSeq.from(Z,X,Q)};lH.seq=pH});var Q4=C((sH)=>{var cH=n6(),iH={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),cH.stringifyString(Z,X,Q,U)}};sH.string=iH});var x9=C((rH)=>{var iJ=W0(),sJ={identify:(Z)=>Z==null,createNode:()=>new iJ.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new iJ.Scalar(null),stringify:({source:Z},X)=>typeof Z==="string"&&sJ.test.test(Z)?Z:X.options.nullStr};rH.nullTag=sJ});var vX=C((tH)=>{var nH=W0(),aJ={identify:(Z)=>typeof Z==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:(Z)=>new nH.Scalar(Z[0]==="t"||Z[0]==="T"),stringify({source:Z,value:X},Q){if(Z&&aJ.test.test(Z)){let U=Z[0]==="t"||Z[0]==="T";if(X===U)return Z}return X?Q.options.trueStr:Q.options.falseStr}};tH.boolTag=aJ});var s2=C((XF)=>{function ZF({format:Z,minFractionDigits:X,tag:Q,value:U}){if(typeof U==="bigint")return String(U);let J=typeof U==="number"?U:Number(U);if(!isFinite(J))return isNaN(J)?".nan":J<0?"-.inf":".inf";let q=Object.is(U,-0)?"-0":JSON.stringify(U);if(!Z&&X&&(!Q||Q==="tag:yaml.org,2002:float")&&/^\d/.test(q)){let Y=q.indexOf(".");if(Y<0)Y=q.length,q+=".";let W=X-(q.length-Y-1);while(W-- >0)q+="0"}return q}XF.stringifyNumber=ZF});var hX=C((WF)=>{var UF=W0(),xX=s2(),JF={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:xX.stringifyNumber},qF={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():xX.stringifyNumber(Z)}},YF={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 UF.Scalar(parseFloat(Z)),Q=Z.indexOf(".");if(Q!==-1&&Z[Z.length-1]==="0")X.minFractionDigits=Z.length-Q-1;return X},stringify:xX.stringifyNumber};WF.float=YF;WF.floatExp=qF;WF.floatNaN=JF});var uX=C((FF)=>{var rJ=s2(),h9=(Z)=>typeof Z==="bigint"||Number.isInteger(Z),mX=(Z,X,Q,{intAsBigInt:U})=>U?BigInt(Z):parseInt(Z.substring(X),Q);function oJ(Z,X,Q){let{value:U}=Z;if(h9(U)&&U>=0)return Q+U.toString(X);return rJ.stringifyNumber(Z)}var _F={identify:(Z)=>h9(Z)&&Z>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(Z,X,Q)=>mX(Z,2,8,Q),stringify:(Z)=>oJ(Z,8,"0o")},VF={identify:h9,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(Z,X,Q)=>mX(Z,0,10,Q),stringify:rJ.stringifyNumber},HF={identify:(Z)=>h9(Z)&&Z>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(Z,X,Q)=>mX(Z,2,16,Q),stringify:(Z)=>oJ(Z,16,"0x")};FF.int=VF;FF.intHex=HF;FF.intOct=_F});var nJ=C((wF)=>{var OF=c2(),RF=x9(),PF=i2(),KF=Q4(),TF=vX(),pX=hX(),lX=uX(),DF=[OF.map,PF.seq,KF.string,RF.nullTag,TF.boolTag,lX.intOct,lX.int,lX.intHex,pX.floatNaN,pX.floatExp,pX.float];wF.schema=DF});var eJ=C((IF)=>{var SF=W0(),CF=c2(),NF=i2();function tJ(Z){return typeof Z==="bigint"||Number.isInteger(Z)}var m9=({value:Z})=>JSON.stringify(Z),jF=[{identify:(Z)=>typeof Z==="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:(Z)=>Z,stringify:m9},{identify:(Z)=>Z==null,createNode:()=>new SF.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:m9},{identify:(Z)=>typeof Z==="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:(Z)=>Z==="true",stringify:m9},{identify:tJ,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})=>tJ(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:m9}],EF={default:!0,tag:"",test:/^/,resolve(Z,X){return X(`Unresolved plain scalar ${JSON.stringify(Z)}`),Z}},bF=[CF.map,NF.seq].concat(jF,EF);IF.schema=bF});var cX=C((gF)=>{var U4=_2("buffer"),dX=W0(),yF=n6(),kF={identify:(Z)=>Z instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(Z,X){if(typeof U4.Buffer==="function")return U4.Buffer.from(Z,"base64");else if(typeof atob==="function"){let Q=atob(Z.replace(/[\n\r]/g,"")),U=new Uint8Array(Q.length);for(let J=0;J<Q.length;++J)U[J]=Q.charCodeAt(J);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,J,q){if(!Q)return"";let Y=Q,W;if(typeof U4.Buffer==="function")W=Y instanceof U4.Buffer?Y.toString("base64"):U4.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=dX.Scalar.BLOCK_LITERAL),X!==dX.Scalar.QUOTE_DOUBLE){let $=Math.max(U.options.lineWidth-U.indent.length,U.options.minContentWidth),L=Math.ceil(W.length/$),_=Array(L);for(let G=0,V=0;G<L;++G,V+=$)_[G]=W.substr(V,$);W=_.join(X===dX.Scalar.BLOCK_LITERAL?`
97
- `:" ")}return yF.stringifyString({comment:Z,type:X,value:W},U,J,q)}};gF.binary=kF});var p9=C((uF)=>{var u9=l(),iX=h1(),xF=W0(),hF=p1();function Zq(Z,X){if(u9.isSeq(Z))for(let Q=0;Q<Z.items.length;++Q){let U=Z.items[Q];if(u9.isPair(U))continue;else if(u9.isMap(U)){if(U.items.length>1)X("Each pair must have its own sequence indicator");let J=U.items[0]||new iX.Pair(new xF.Scalar(null));if(U.commentBefore)J.key.commentBefore=J.key.commentBefore?`${U.commentBefore}
98
- ${J.key.commentBefore}`:U.commentBefore;if(U.comment){let q=J.value??J.key;q.comment=q.comment?`${U.comment}
99
- ${q.comment}`:U.comment}U=J}Z.items[Q]=u9.isPair(U)?U:new iX.Pair(U)}else X("Expected a sequence for this tag");return Z}function Xq(Z,X,Q){let{replacer:U}=Q,J=new hF.YAMLSeq(Z);J.tag="tag:yaml.org,2002:pairs";let q=0;if(X&&Symbol.iterator in Object(X))for(let Y of X){if(typeof U==="function")Y=U.call(X,String(q++),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;J.items.push(iX.createPair(W,$,Q))}return J}var mF={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:Zq,createNode:Xq};uF.createPairs=Xq;uF.pairs=mF;uF.resolvePairs=Zq});var aX=C((sF)=>{var Qq=l(),sX=g1(),J4=u1(),cF=p1(),Uq=p9();class Y2 extends cF.YAMLSeq{constructor(){super();this.add=J4.YAMLMap.prototype.add.bind(this),this.delete=J4.YAMLMap.prototype.delete.bind(this),this.get=J4.YAMLMap.prototype.get.bind(this),this.has=J4.YAMLMap.prototype.has.bind(this),this.set=J4.YAMLMap.prototype.set.bind(this),this.tag=Y2.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 J,q;if(Qq.isPair(U))J=sX.toJS(U.key,"",X),q=sX.toJS(U.value,J,X);else J=sX.toJS(U,"",X);if(Q.has(J))throw Error("Ordered maps must not include duplicate keys");Q.set(J,q)}return Q}static from(Z,X,Q){let U=Uq.createPairs(Z,X,Q),J=new this;return J.items=U.items,J}}Y2.tag="tag:yaml.org,2002:omap";var iF={collection:"seq",identify:(Z)=>Z instanceof Map,nodeClass:Y2,default:!1,tag:"tag:yaml.org,2002:omap",resolve(Z,X){let Q=Uq.resolvePairs(Z,X),U=[];for(let{key:J}of Q.items)if(Qq.isScalar(J))if(U.includes(J.value))X(`Ordered maps must not include duplicate keys: ${J.value}`);else U.push(J.value);return Object.assign(new Y2,Q)},createNode:(Z,X,Q)=>Y2.from(Z,X,Q)};sF.YAMLOMap=Y2;sF.omap=iF});var $q=C((oF)=>{var Jq=W0();function qq({value:Z,source:X},Q){if(X&&(Z?Yq:Wq).test.test(X))return X;return Z?Q.options.trueStr:Q.options.falseStr}var Yq={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 Jq.Scalar(!0),stringify:qq},Wq={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 Jq.Scalar(!1),stringify:qq};oF.falseTag=Wq;oF.trueTag=Yq});var Lq=C((Uz)=>{var eF=W0(),rX=s2(),Zz={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:rX.stringifyNumber},Xz={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():rX.stringifyNumber(Z)}},Qz={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 eF.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:rX.stringifyNumber};Uz.float=Qz;Uz.floatExp=Xz;Uz.floatNaN=Zz});var _q=C((_z)=>{var Gq=s2(),q4=(Z)=>typeof Z==="bigint"||Number.isInteger(Z);function l9(Z,X,Q,{intAsBigInt:U}){let J=Z[0];if(J==="-"||J==="+")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 J==="-"?BigInt(-1)*Y:Y}let q=parseInt(Z,Q);return J==="-"?-1*q:q}function oX(Z,X,Q){let{value:U}=Z;if(q4(U)){let J=U.toString(X);return U<0?"-"+Q+J.substr(1):Q+J}return Gq.stringifyNumber(Z)}var Wz={identify:q4,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(Z,X,Q)=>l9(Z,2,2,Q),stringify:(Z)=>oX(Z,2,"0b")},$z={identify:q4,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(Z,X,Q)=>l9(Z,1,8,Q),stringify:(Z)=>oX(Z,8,"0")},Lz={identify:q4,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(Z,X,Q)=>l9(Z,0,10,Q),stringify:Gq.stringifyNumber},Gz={identify:q4,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(Z,X,Q)=>l9(Z,2,16,Q),stringify:(Z)=>oX(Z,16,"0x")};_z.int=Lz;_z.intBin=Wz;_z.intHex=Gz;_z.intOct=$z});var nX=C((Mz)=>{var i9=l(),d9=h1(),c9=u1();class W2 extends c9.YAMLMap{constructor(Z){super(Z);this.tag=W2.tag}add(Z){let X;if(i9.isPair(Z))X=Z;else if(Z&&typeof Z==="object"&&"key"in Z&&"value"in Z&&Z.value===null)X=new d9.Pair(Z.key,null);else X=new d9.Pair(Z,null);if(!c9.findPair(this.items,X.key))this.items.push(X)}get(Z,X){let Q=c9.findPair(this.items,Z);return!X&&i9.isPair(Q)?i9.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=c9.findPair(this.items,Z);if(Q&&!X)this.items.splice(this.items.indexOf(Q),1);else if(!Q&&X)this.items.push(new d9.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,J=new this(Z);if(X&&Symbol.iterator in Object(X))for(let q of X){if(typeof U==="function")q=U.call(X,q,q);J.items.push(d9.createPair(q,null,Q))}return J}}W2.tag="tag:yaml.org,2002:set";var Bz={collection:"map",identify:(Z)=>Z instanceof Set,nodeClass:W2,default:!1,tag:"tag:yaml.org,2002:set",createNode:(Z,X,Q)=>W2.from(Z,X,Q),resolve(Z,X){if(i9.isMap(Z))if(Z.hasAllNullValues(!0))return Object.assign(new W2,Z);else X("Set items must all have null values");else X("Expected a mapping for this tag");return Z}};Mz.YAMLSet=W2;Mz.set=Bz});var eX=C((Dz)=>{var Pz=s2();function tX(Z,X){let Q=Z[0],U=Q==="-"||Q==="+"?Z.substring(1):Z,J=(Y)=>X?BigInt(Y):Number(Y),q=U.replace(/_/g,"").split(":").reduce((Y,W)=>Y*J(60)+J(W),J(0));return Q==="-"?J(-1)*q:q}function Vq(Z){let{value:X}=Z,Q=(Y)=>Y;if(typeof X==="bigint")Q=(Y)=>BigInt(Y);else if(isNaN(X)||!isFinite(X))return Pz.stringifyNumber(Z);let U="";if(X<0)U="-",X*=Q(-1);let J=Q(60),q=[X%J];if(X<60)q.unshift(0);else if(X=(X-q[0])/J,q.unshift(X%J),X>=60)X=(X-q[0])/J,q.unshift(X);return U+q.map((Y)=>String(Y).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var Kz={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})=>tX(Z,Q),stringify:Vq},Tz={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)=>tX(Z,!1),stringify:Vq},Hq={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(Hq.test);if(!X)throw Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,Q,U,J,q,Y,W]=X.map(Number),$=X[7]?Number((X[7]+"00").substr(1,3)):0,L=Date.UTC(Q,U-1,J,q||0,Y||0,W||0,$),_=X[8];if(_&&_!=="Z"){let G=tX(_,!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$/,"")??""};Dz.floatTime=Tz;Dz.intTime=Kz;Dz.timestamp=Hq});var zq=C((vz)=>{var Cz=c2(),Nz=x9(),jz=i2(),Ez=Q4(),bz=cX(),Fq=$q(),Z3=Lq(),s9=_q(),Iz=E9(),fz=aX(),yz=p9(),kz=nX(),X3=eX(),gz=[Cz.map,jz.seq,Ez.string,Nz.nullTag,Fq.trueTag,Fq.falseTag,s9.intBin,s9.intOct,s9.int,s9.intHex,Z3.floatNaN,Z3.floatExp,Z3.float,bz.binary,Iz.merge,fz.omap,yz.pairs,kz.set,X3.intTime,X3.floatTime,X3.timestamp];vz.schema=gz});var Aq=C((iz)=>{var Rq=c2(),hz=x9(),Pq=i2(),mz=Q4(),uz=vX(),Q3=hX(),U3=uX(),pz=nJ(),lz=eJ(),Kq=cX(),Y4=E9(),Tq=aX(),Dq=p9(),Bq=zq(),wq=nX(),a9=eX(),Mq=new Map([["core",pz.schema],["failsafe",[Rq.map,Pq.seq,mz.string]],["json",lz.schema],["yaml11",Bq.schema],["yaml-1.1",Bq.schema]]),Oq={binary:Kq.binary,bool:uz.boolTag,float:Q3.float,floatExp:Q3.floatExp,floatNaN:Q3.floatNaN,floatTime:a9.floatTime,int:U3.int,intHex:U3.intHex,intOct:U3.intOct,intTime:a9.intTime,map:Rq.map,merge:Y4.merge,null:hz.nullTag,omap:Tq.omap,pairs:Dq.pairs,seq:Pq.seq,set:wq.set,timestamp:a9.timestamp},dz={"tag:yaml.org,2002:binary":Kq.binary,"tag:yaml.org,2002:merge":Y4.merge,"tag:yaml.org,2002:omap":Tq.omap,"tag:yaml.org,2002:pairs":Dq.pairs,"tag:yaml.org,2002:set":wq.set,"tag:yaml.org,2002:timestamp":a9.timestamp};function cz(Z,X,Q){let U=Mq.get(X);if(U&&!Z)return Q&&!U.includes(Y4.merge)?U.concat(Y4.merge):U.slice();let J=U;if(!J)if(Array.isArray(Z))J=[];else{let q=Array.from(Mq.keys()).filter((Y)=>Y!=="yaml11").map((Y)=>JSON.stringify(Y)).join(", ");throw Error(`Unknown schema "${X}"; use one of ${q} or define customTags array`)}if(Array.isArray(Z))for(let q of Z)J=J.concat(q);else if(typeof Z==="function")J=Z(J.slice());if(Q)J=J.concat(Y4.merge);return J.reduce((q,Y)=>{let W=typeof Y==="string"?Oq[Y]:Y;if(!W){let $=JSON.stringify(Y),L=Object.keys(Oq).map((_)=>JSON.stringify(_)).join(", ");throw Error(`Unknown custom tag ${$}; use one of ${L}`)}if(!q.includes(W))q.push(W);return q},[])}iz.coreKnownTags=dz;iz.getTags=cz});var Y3=C((ez)=>{var J3=l(),rz=c2(),oz=i2(),nz=Q4(),r9=Aq(),tz=(Z,X)=>Z.key<X.key?-1:Z.key>X.key?1:0;class q3{constructor({compat:Z,customTags:X,merge:Q,resolveKnownTags:U,schema:J,sortMapEntries:q,toStringDefaults:Y}){this.compat=Array.isArray(Z)?r9.getTags(Z,"compat"):Z?r9.getTags(null,Z):null,this.name=typeof J==="string"&&J||"core",this.knownTags=U?r9.coreKnownTags:{},this.tags=r9.getTags(X,this.name,Q),this.toStringOptions=Y??null,Object.defineProperty(this,J3.MAP,{value:rz.map}),Object.defineProperty(this,J3.SCALAR,{value:nz.string}),Object.defineProperty(this,J3.SEQ,{value:oz.seq}),this.sortMapEntries=typeof q==="function"?q:q===!0?tz:null}clone(){let Z=Object.create(q3.prototype,Object.getOwnPropertyDescriptors(this));return Z.tags=this.tags.slice(),Z}}ez.Schema=q3});var Sq=C((UB)=>{var XB=l(),W3=t6(),W4=r6();function QB(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 J=W3.createStringifyContext(Z,X),{commentString:q}=J.options;if(Z.commentBefore){if(Q.length!==1)Q.unshift("");let $=q(Z.commentBefore);Q.unshift(W4.indentComment($,""))}let Y=!1,W=null;if(Z.contents){if(XB.isNode(Z.contents)){if(Z.contents.spaceBefore&&U)Q.push("");if(Z.contents.commentBefore){let _=q(Z.contents.commentBefore);Q.push(W4.indentComment(_,""))}J.forceBlockIndent=!!Z.comment,W=Z.contents.comment}let $=W?void 0:()=>Y=!0,L=W3.stringify(Z.contents,J,()=>W=null,$);if(W)L+=W4.lineComment(L,"",q(W));if((L[0]==="|"||L[0]===">")&&Q[Q.length-1]==="---")Q[Q.length-1]=`--- ${L}`;else Q.push(L)}else Q.push(W3.stringify(Z.contents,J));if(Z.directives?.docEnd)if(Z.comment){let $=q(Z.comment);if($.includes(`
100
- `))Q.push("..."),Q.push(W4.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(W4.indentComment(q($),""))}}return Q.join(`
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
+ ${$}${z}`:`
91
+ `}}if(Z){if(H+=`
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
+ `)))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
+ ${J}${q}${z}`:`
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=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
+ ${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]=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
+ `))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
- `}UB.stringifyDocument=QB});var $4=C((VB)=>{var qB=s6(),a2=w9(),d0=l(),YB=h1(),WB=g1(),$B=Y3(),LB=Sq(),$3=K9(),GB=CX(),_B=a6(),L3=SX();class G3{constructor(Z,X,Q){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,d0.NODE_TYPE,{value:d0.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 J=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},Q);this.options=J;let{version:q}=J;if(Q?._directives){if(this.directives=Q._directives.atDocument(),this.directives.yaml.explicit)q=this.directives.yaml.version}else this.directives=new L3.Directives({version:q});this.setSchema(q,Q),this.contents=Z===void 0?null:this.createNode(Z,U,Q)}clone(){let Z=Object.create(G3.prototype,{[d0.NODE_TYPE]:{value:d0.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=d0.isNode(this.contents)?this.contents.clone(Z.schema):this.contents,this.range)Z.range=this.range.slice();return Z}add(Z){if(r2(this.contents))this.contents.add(Z)}addIn(Z,X){if(r2(this.contents))this.contents.addIn(Z,X)}createAlias(Z,X){if(!Z.anchor){let Q=$3.anchorNames(this);Z.anchor=!X||Q.has(X)?$3.findNewAnchor(X||"a",Q):X}return new qB.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 H=(K)=>typeof K==="number"||K instanceof String||K instanceof Number,B=X.filter(H).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:J,anchorPrefix:q,flow:Y,keepUndefined:W,onTagObj:$,tag:L}=Q??{},{onAnchor:_,setAnchors:G,sourceObjects:V}=$3.createNodeAnchors(this,q||"a"),F={aliasDuplicateObjects:J??!0,keepUndefined:W??!1,onAnchor:_,onTagObj:$,replacer:U,schema:this.schema,sourceObjects:V},z=_B.createNode(Z,L,F);if(Y&&d0.isCollection(z))z.flow=!0;return G(),z}createPair(Z,X,Q={}){let U=this.createNode(Z,null,Q),J=this.createNode(X,null,Q);return new YB.Pair(U,J)}delete(Z){return r2(this.contents)?this.contents.delete(Z):!1}deleteIn(Z){if(a2.isEmptyPath(Z)){if(this.contents==null)return!1;return this.contents=null,!0}return r2(this.contents)?this.contents.deleteIn(Z):!1}get(Z,X){return d0.isCollection(this.contents)?this.contents.get(Z,X):void 0}getIn(Z,X){if(a2.isEmptyPath(Z))return!X&&d0.isScalar(this.contents)?this.contents.value:this.contents;return d0.isCollection(this.contents)?this.contents.getIn(Z,X):void 0}has(Z){return d0.isCollection(this.contents)?this.contents.has(Z):!1}hasIn(Z){if(a2.isEmptyPath(Z))return this.contents!==void 0;return d0.isCollection(this.contents)?this.contents.hasIn(Z):!1}set(Z,X){if(this.contents==null)this.contents=a2.collectionFromPath(this.schema,[Z],X);else if(r2(this.contents))this.contents.set(Z,X)}setIn(Z,X){if(a2.isEmptyPath(Z))this.contents=X;else if(this.contents==null)this.contents=a2.collectionFromPath(this.schema,Array.from(Z),X);else if(r2(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 L3.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 L3.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 $B.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:J,reviver:q}={}){let Y={anchors:new Map,doc:this,keep:!Z,mapAsMap:Q===!0,mapKeyWarned:!1,maxAliasCount:typeof U==="number"?U:100},W=WB.toJS(this.contents,X??"",Y);if(typeof J==="function")for(let{count:$,res:L}of Y.anchors.values())J(L,$);return typeof q==="function"?GB.applyReviver(q,{"":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 LB.stringifyDocument(this,Z)}}function r2(Z){if(d0.isCollection(Z))return!0;throw Error("Expected a YAML collection as document contents")}VB.Document=G3});var L4=C((zB)=>{class o9 extends Error{constructor(Z,X,Q,U){super();this.name=Z,this.code=Q,this.message=U,this.pos=X}}class Cq extends o9{constructor(Z,X,Q){super("YAMLParseError",Z,X,Q)}}class Nq extends o9{constructor(Z,X,Q){super("YAMLWarning",Z,X,Q)}}var FB=(Z,X)=>(Q)=>{if(Q.pos[0]===-1)return;Q.linePos=Q.pos.map((W)=>X.linePos(W));let{line:U,col:J}=Q.linePos[0];Q.message+=` at line ${U}, column ${J}`;let q=J-1,Y=Z.substring(X.lineStarts[U-1],X.lineStarts[U]).replace(/[\n\r]+$/,"");if(q>=60&&Y.length>80){let W=Math.min(q-39,Y.length-79);Y="…"+Y.substring(W),q-=W-1}if(Y.length>80)Y=Y.substring(0,79)+"…";if(U>1&&/^ *$/.test(Y.substring(0,q))){let W=Z.substring(X.lineStarts[U-2],X.lineStarts[U-1]);if(W.length>80)W=W.substring(0,79)+`…
103
- `;Y=W+Y}if(/[^ ]/.test(Y)){let W=1,$=Q.linePos[1];if($?.line===U&&$.col>J)W=Math.max(1,Math.min($.col-J,80-q));let L=" ".repeat(q)+"^".repeat(W);Q.message+=`:
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
+ `;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
- `}};zB.YAMLError=o9;zB.YAMLParseError=Cq;zB.YAMLWarning=Nq;zB.prettifyError=FB});var G4=C((KB)=>{function PB(Z,{flow:X,indicator:Q,next:U,offset:J,onError:q,parentIndent:Y,startOnNewline:W}){let $=!1,L=W,_=W,G="",V="",F=!1,z=!1,H=null,B=null,K=null,T=null,P=null,D=null,S=null;for(let N of Z){if(z){if(N.type!=="space"&&N.type!=="newline"&&N.type!=="comma")q(N.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");z=!1}if(H){if(L&&N.type!=="comment"&&N.type!=="newline")q(H,"TAB_AS_INDENT","Tabs are not allowed as indentation");H=null}switch(N.type){case"space":if(!X&&(Q!=="doc-start"||U?.type!=="flow-collection")&&N.source.includes("\t"))H=N;_=!0;break;case"comment":{if(!_)q(N,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let x=N.source.substring(1)||" ";if(!G)G=x;else G+=V+x;V="",L=!1;break}case"newline":if(L){if(G)G+=N.source;else if(!D||Q!=="seq-item-ind")$=!0}else V+=N.source;if(L=!0,F=!0,B||K)T=N;_=!0;break;case"anchor":if(B)q(N,"MULTIPLE_ANCHORS","A node can have at most one anchor");if(N.source.endsWith(":"))q(N.offset+N.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0);B=N,S??(S=N.offset),L=!1,_=!1,z=!0;break;case"tag":{if(K)q(N,"MULTIPLE_TAGS","A node can have at most one tag");K=N,S??(S=N.offset),L=!1,_=!1,z=!0;break}case Q:if(B||K)q(N,"BAD_PROP_ORDER",`Anchors and tags must be after the ${N.source} indicator`);if(D)q(N,"UNEXPECTED_TOKEN",`Unexpected ${N.source} in ${X??"collection"}`);D=N,L=Q==="seq-item-ind"||Q==="explicit-key-ind",_=!1;break;case"comma":if(X){if(P)q(N,"UNEXPECTED_TOKEN",`Unexpected , in ${X}`);P=N,L=!1,_=!1;break}default:q(N,"UNEXPECTED_TOKEN",`Unexpected ${N.type} token`),L=!1,_=!1}}let j=Z[Z.length-1],v=j?j.offset+j.source.length:J;if(z&&U&&U.type!=="space"&&U.type!=="newline"&&U.type!=="comma"&&(U.type!=="scalar"||U.source!==""))q(U.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space");if(H&&(L&&H.indent<=Y||U?.type==="block-map"||U?.type==="block-seq"))q(H,"TAB_AS_INDENT","Tabs are not allowed as indentation");return{comma:P,found:D,spaceBefore:$,comment:G,hasNewline:F,anchor:B,tag:K,newlineAfterProp:T,end:v,start:S??v}}KB.resolveProps=PB});var n9=C((DB)=>{function _3(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(_3(X.key)||_3(X.value))return!0}return!1;default:return!0}}DB.containsNewline=_3});var V3=C((CB)=>{var AB=n9();function SB(Z,X,Q){if(X?.type==="flow-collection"){let U=X.end[0];if(U.indent===Z&&(U.source==="]"||U.source==="}")&&AB.containsNewline(X))Q(U,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}CB.flowIndentCheck=SB});var H3=C((EB)=>{var jq=l();function jB(Z,X,Q){let{uniqueKeys:U}=Z.options;if(U===!1)return!1;let J=typeof U==="function"?U:(q,Y)=>q===Y||jq.isScalar(q)&&jq.isScalar(Y)&&q.value===Y.value;return X.some((q)=>J(q.key,Q))}EB.mapIncludes=jB});var yq=C((gB)=>{var Eq=h1(),IB=u1(),bq=G4(),fB=n9(),Iq=V3(),yB=H3(),fq="All mapping items must start at the same column";function kB({composeNode:Z,composeEmptyNode:X},Q,U,J,q){let W=new(q?.nodeClass??IB.YAMLMap)(Q.schema);if(Q.atRoot)Q.atRoot=!1;let $=U.offset,L=null;for(let _ of U.items){let{start:G,key:V,sep:F,value:z}=_,H=bq.resolveProps(G,{indicator:"explicit-key-ind",next:V??F?.[0],offset:$,onError:J,parentIndent:U.indent,startOnNewline:!0}),B=!H.found;if(B){if(V){if(V.type==="block-seq")J($,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key");else if("indent"in V&&V.indent!==U.indent)J($,"BAD_INDENT",fq)}if(!H.anchor&&!H.tag&&!F){if(L=H.end,H.comment)if(W.comment)W.comment+=`
109
- `+H.comment;else W.comment=H.comment;continue}if(H.newlineAfterProp||fB.containsNewline(V))J(V??G[G.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else if(H.found?.indent!==U.indent)J($,"BAD_INDENT",fq);Q.atKey=!0;let K=H.end,T=V?Z(Q,V,H,J):X(Q,K,G,null,H,J);if(Q.schema.compat)Iq.flowIndentCheck(U.indent,V,J);if(Q.atKey=!1,yB.mapIncludes(Q,W.items,T))J(K,"DUPLICATE_KEY","Map keys must be unique");let P=bq.resolveProps(F??[],{indicator:"map-value-ind",next:z,offset:T.range[2],onError:J,parentIndent:U.indent,startOnNewline:!V||V.type==="block-scalar"});if($=P.end,P.found){if(B){if(z?.type==="block-map"&&!P.hasNewline)J($,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings");if(Q.options.strict&&H.start<P.found.offset-1024)J(T.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key")}let D=z?Z(Q,z,P,J):X(Q,$,F,null,P,J);if(Q.schema.compat)Iq.flowIndentCheck(U.indent,z,J);$=D.range[2];let S=new Eq.Pair(T,D);if(Q.options.keepSourceTokens)S.srcToken=_;W.items.push(S)}else{if(B)J(T.range,"MISSING_CHAR","Implicit map keys need to be followed by map values");if(P.comment)if(T.comment)T.comment+=`
110
- `+P.comment;else T.comment=P.comment;let D=new Eq.Pair(T);if(Q.options.keepSourceTokens)D.srcToken=_;W.items.push(D)}}if(L&&L<$)J(L,"IMPOSSIBLE","Map comment with trailing content");return W.range=[U.offset,$,L??$],W}gB.resolveBlockMap=kB});var kq=C((pB)=>{var xB=p1(),hB=G4(),mB=V3();function uB({composeNode:Z,composeEmptyNode:X},Q,U,J,q){let W=new(q?.nodeClass??xB.YAMLSeq)(Q.schema);if(Q.atRoot)Q.atRoot=!1;if(Q.atKey)Q.atKey=!1;let $=U.offset,L=null;for(let{start:_,value:G}of U.items){let V=hB.resolveProps(_,{indicator:"seq-item-ind",next:G,offset:$,onError:J,parentIndent:U.indent,startOnNewline:!0});if(!V.found)if(V.anchor||V.tag||G)if(G?.type==="block-seq")J(V.end,"BAD_INDENT","All sequence items must start at the same column");else J($,"MISSING_CHAR","Sequence item without - indicator");else{if(L=V.end,V.comment)W.comment=V.comment;continue}let F=G?Z(Q,G,V,J):X(Q,V.end,_,null,V,J);if(Q.schema.compat)mB.flowIndentCheck(U.indent,G,J);$=F.range[2],W.items.push(F)}return W.range=[U.offset,$,L??$],W}pB.resolveBlockSeq=uB});var o2=C((cB)=>{function dB(Z,X,Q,U){let J="";if(Z){let q=!1,Y="";for(let W of Z){let{source:$,type:L}=W;switch(L){case"space":q=!0;break;case"comment":{if(Q&&!q)U(W,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let _=$.substring(1)||" ";if(!J)J=_;else J+=Y+_;Y="";break}case"newline":if(J)Y+=$;q=!0;break;default:U(W,"UNEXPECTED_TOKEN",`Unexpected ${L} at node end`)}X+=$.length}}return{comment:J,offset:X}}cB.resolveEnd=dB});var xq=C((ZM)=>{var sB=l(),aB=h1(),gq=u1(),rB=p1(),oB=o2(),vq=G4(),nB=n9(),tB=H3(),F3="Block collections are not allowed within flow collections",z3=(Z)=>Z&&(Z.type==="block-map"||Z.type==="block-seq");function eB({composeNode:Z,composeEmptyNode:X},Q,U,J,q){let Y=U.start.source==="{",W=Y?"flow map":"flow sequence",L=new(q?.nodeClass??(Y?gq.YAMLMap:rB.YAMLSeq))(Q.schema);L.flow=!0;let _=Q.atRoot;if(_)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:T,key:P,sep:D,value:S}=K,j=vq.resolveProps(T,{flow:W,indicator:"explicit-key-ind",next:P??D?.[0],offset:G,onError:J,parentIndent:U.indent,startOnNewline:!1});if(!j.found){if(!j.anchor&&!j.tag&&!D&&!S){if(B===0&&j.comma)J(j.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${W}`);else if(B<U.items.length-1)J(j.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${W}`);if(j.comment)if(L.comment)L.comment+=`
111
- `+j.comment;else L.comment=j.comment;G=j.end;continue}if(!Y&&Q.options.strict&&nB.containsNewline(P))J(P,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(B===0){if(j.comma)J(j.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${W}`)}else{if(!j.comma)J(j.start,"MISSING_CHAR",`Missing , between ${W} items`);if(j.comment){let v="";Z:for(let N of T)switch(N.type){case"comma":case"space":break;case"comment":v=N.source.substring(1);break Z;default:break Z}if(v){let N=L.items[L.items.length-1];if(sB.isPair(N))N=N.value??N.key;if(N.comment)N.comment+=`
112
- `+v;else N.comment=v;j.comment=j.comment.substring(v.length+1)}}}if(!Y&&!D&&!j.found){let v=S?Z(Q,S,j,J):X(Q,j.end,D,null,j,J);if(L.items.push(v),G=v.range[2],z3(S))J(v.range,"BLOCK_IN_FLOW",F3)}else{Q.atKey=!0;let v=j.end,N=P?Z(Q,P,j,J):X(Q,v,T,null,j,J);if(z3(P))J(N.range,"BLOCK_IN_FLOW",F3);Q.atKey=!1;let x=vq.resolveProps(D??[],{flow:W,indicator:"map-value-ind",next:S,offset:N.range[2],onError:J,parentIndent:U.indent,startOnNewline:!1});if(x.found){if(!Y&&!j.found&&Q.options.strict){if(D)for(let a of D){if(a===x.found)break;if(a.type==="newline"){J(a,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}if(j.start<x.found.offset-1024)J(x.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]===":")J(S,"MISSING_CHAR",`Missing space after : in ${W}`);else J(x.start,"MISSING_CHAR",`Missing , or : between ${W} items`);let s=S?Z(Q,S,x,J):x.found?X(Q,x.end,D,null,x,J):null;if(s){if(z3(S))J(s.range,"BLOCK_IN_FLOW",F3)}else if(x.comment)if(N.comment)N.comment+=`
113
- `+x.comment;else N.comment=x.comment;let Q0=new aB.Pair(N,s);if(Q.options.keepSourceTokens)Q0.srcToken=K;if(Y){let a=L;if(tB.mapIncludes(Q,a.items,N))J(v,"DUPLICATE_KEY","Map keys must be unique");a.items.push(Q0)}else{let a=new gq.YAMLMap(Q.schema);a.flow=!0,a.items.push(Q0);let V0=(s??N).range;a.range=[N.range[0],V0[1],V0[2]],L.items.push(a)}G=s?s.range[2]:x.end}}let V=Y?"}":"]",[F,...z]=U.end,H=G;if(F?.source===V)H=F.offset+F.source.length;else{let B=W[0].toUpperCase()+W.substring(1),K=_?`${B} must end with a ${V}`:`${B} in block collection must be sufficiently indented and end with a ${V}`;if(J(G,_?"MISSING_CHAR":"BAD_INDENT",K),F&&F.source.length!==1)z.unshift(F)}if(z.length>0){let B=oB.resolveEnd(z,H,Q.options.strict,J);if(B.comment)if(L.comment)L.comment+=`
114
- `+B.comment;else L.comment=B.comment;L.range=[U.offset,H,B.offset]}else L.range=[U.offset,H,H];return L}ZM.resolveFlowCollection=eB});var hq=C((GM)=>{var QM=l(),UM=W0(),JM=u1(),qM=p1(),YM=yq(),WM=kq(),$M=xq();function B3(Z,X,Q,U,J,q){let Y=Q.type==="block-map"?YM.resolveBlockMap(Z,X,Q,U,q):Q.type==="block-seq"?WM.resolveBlockSeq(Z,X,Q,U,q):$M.resolveFlowCollection(Z,X,Q,U,q),W=Y.constructor;if(J==="!"||J===W.tagName)return Y.tag=W.tagName,Y;if(J)Y.tag=J;return Y}function LM(Z,X,Q,U,J){let q=U.tag,Y=!q?null:X.directives.tagName(q.source,(V)=>J(q,"TAG_RESOLVE_FAILED",V));if(Q.type==="block-seq"){let{anchor:V,newlineAfterProp:F}=U,z=V&&q?V.offset>q.offset?V:q:V??q;if(z&&(!F||F.offset<z.offset))J(z,"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(!q||!Y||Y==="!"||Y===JM.YAMLMap.tagName&&W==="map"||Y===qM.YAMLSeq.tagName&&W==="seq")return B3(Z,X,Q,J,Y);let $=X.schema.tags.find((V)=>V.tag===Y&&V.collection===W);if(!$){let V=X.schema.knownTags[Y];if(V?.collection===W)X.schema.tags.push(Object.assign({},V,{default:!1})),$=V;else{if(V)J(q,"BAD_COLLECTION_TYPE",`${V.tag} used for ${W} collection, but expects ${V.collection??"scalar"}`,!0);else J(q,"TAG_RESOLVE_FAILED",`Unresolved tag: ${Y}`,!0);return B3(Z,X,Q,J,Y)}}let L=B3(Z,X,Q,J,Y,$),_=$.resolve?.(L,(V)=>J(q,"TAG_RESOLVE_FAILED",V),X.options)??L,G=QM.isNode(_)?_:new UM.Scalar(_);if(G.range=L.range,G.tag=Y,$?.format)G.format=$.format;return G}GM.composeCollection=LM});var O3=C((zM)=>{var M3=W0();function VM(Z,X,Q){let U=X.offset,J=HM(X,Z.options.strict,Q);if(!J)return{value:"",type:null,comment:"",range:[U,U,U]};let q=J.mode===">"?M3.Scalar.BLOCK_FOLDED:M3.Scalar.BLOCK_LITERAL,Y=X.source?FM(X.source):[],W=Y.length;for(let H=Y.length-1;H>=0;--H){let B=Y[H][1];if(B===""||B==="\r")W=H;else break}if(W===0){let H=J.chomp==="+"&&Y.length>0?`
115
- `.repeat(Math.max(1,Y.length-1)):"",B=U+J.length;if(X.source)B+=X.source.length;return{value:H,type:q,comment:J.comment,range:[U,B,B]}}let $=X.indent+J.indent,L=X.offset+J.length,_=0;for(let H=0;H<W;++H){let[B,K]=Y[H];if(K===""||K==="\r"){if(J.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(J.indent===0)$=B.length;if(_=H,$===0&&!Z.atRoot)Q(L,"BAD_INDENT","Block scalar values in collections must be indented");break}L+=B.length+K.length+1}for(let H=Y.length-1;H>=W;--H)if(Y[H][0].length>$)W=H+1;let G="",V="",F=!1;for(let H=0;H<_;++H)G+=Y[H][0].slice($)+`
116
- `;for(let H=_;H<W;++H){let[B,K]=Y[H];L+=B.length+K.length+1;let T=K[K.length-1]==="\r";if(T)K=K.slice(0,-1);if(K&&B.length<$){let D=`Block scalar lines must not be less indented than their ${J.indent?"explicit indentation indicator":"first line"}`;Q(L-K.length-(T?2:1),"BAD_INDENT",D),B=""}if(q===M3.Scalar.BLOCK_LITERAL)G+=V+B.slice($)+K,V=`
117
- `;else if(B.length>$||K[0]==="\t"){if(V===" ")V=`
118
- `;else if(!F&&V===`
119
- `)V=`
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
+ `+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&&!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
+ `+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 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
+ `.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 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
+ `;else if(B.length>$||K[0]==="\t"){if(_===" ")_=`
118
+ `;else if(!H&&_===`
119
+ `)_=`
120
120
 
121
- `;G+=V+B.slice($)+K,V=`
122
- `,F=!0}else if(K==="")if(V===`
121
+ `;G+=_+B.slice($)+K,_=`
122
+ `,H=!0}else if(K==="")if(_===`
123
123
  `)G+=`
124
- `;else V=`
125
- `;else G+=V+K,V=" ",F=!1}switch(J.chomp){case"-":break;case"+":for(let H=W;H<Y.length;++H)G+=`
126
- `+Y[H][0].slice($);if(G[G.length-1]!==`
124
+ `;else _=`
125
+ `;else G+=_+K,_=" ",H=!1}switch(q.chomp){case"-":break;case"+":for(let z=W;z<Y.length;++z)G+=`
126
+ `+Y[z][0].slice($);if(G[G.length-1]!==`
127
127
  `)G+=`
128
128
  `;break;default:G+=`
129
- `}let z=U+J.length+X.source.length;return{value:G,type:q,comment:J.comment,range:[U,z,z]}}function HM({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:J}=X[0],q=J[0],Y=0,W="",$=-1;for(let V=1;V<J.length;++V){let F=J[V];if(!W&&(F==="-"||F==="+"))W=F;else{let z=Number(F);if(!Y&&z)Y=z;else if($===-1)$=Z+V}}if($!==-1)U($,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${J}`);let L=!1,_="",G=J.length;for(let V=1;V<X.length;++V){let F=X[V];switch(F.type){case"space":L=!0;case"newline":G+=F.source.length;break;case"comment":if(Q&&!L)U(F,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");G+=F.source.length,_=F.source.substring(1);break;case"error":U(F,"UNEXPECTED_TOKEN",F.message),G+=F.source.length;break;default:{let z=`Unexpected token in block scalar header: ${F.type}`;U(F,"UNEXPECTED_TOKEN",z);let H=F.source;if(H&&typeof H==="string")G+=H.length}}}return{mode:q,indent:Y,chomp:W,comment:_,length:G}}function FM(Z){let X=Z.split(/\n( *)/),Q=X[0],U=Q.match(/^( *)/),q=[U?.[1]?[U[1],Q.slice(U[1].length)]:["",Q]];for(let Y=1;Y<X.length;Y+=2)q.push([X[Y],X[Y+1]]);return q}zM.resolveBlockScalar=VM});var P3=C((AM)=>{var R3=W0(),MM=o2();function OM(Z,X,Q){let{offset:U,type:J,source:q,end:Y}=Z,W,$,L=(V,F,z)=>Q(U+V,F,z);switch(J){case"scalar":W=R3.Scalar.PLAIN,$=RM(q,L);break;case"single-quoted-scalar":W=R3.Scalar.QUOTE_SINGLE,$=PM(q,L);break;case"double-quoted-scalar":W=R3.Scalar.QUOTE_DOUBLE,$=KM(q,L);break;default:return Q(Z,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${J}`),{value:"",type:null,comment:"",range:[U,U+q.length,U+q.length]}}let _=U+q.length,G=MM.resolveEnd(Y,_,X,Q);return{value:$,type:W,comment:G.comment,range:[U,_,G.offset]}}function RM(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 mq(Z)}function PM(Z,X){if(Z[Z.length-1]!=="'"||Z.length===1)X(Z.length,"MISSING_CHAR","Missing closing 'quote");return mq(Z.slice(1,-1)).replace(/''/g,"'")}function mq(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
- `,"sy")}catch{X=/(.*?)[ \t]*\r?\n/sy,Q=/[ \t]*(.*?)[ \t]*\r?\n/sy}let U=X.exec(Z);if(!U)return Z;let J=U[1],q=" ",Y=X.lastIndex;Q.lastIndex=Y;while(U=Q.exec(Z)){if(U[1]==="")if(q===`
132
- `)J+=q;else q=`
133
- `;else J+=q+U[1],q=" ";Y=Q.lastIndex}let W=/[ \t]*(.*)/sy;return W.lastIndex=Y,U=W.exec(Z),J+q+(U?.[1]??"")}function KM(Z,X){let Q="";for(let U=1;U<Z.length-1;++U){let J=Z[U];if(J==="\r"&&Z[U+1]===`
134
- `)continue;if(J===`
135
- `){let{fold:q,offset:Y}=TM(Z,U);Q+=q,U=Y}else if(J==="\\"){let q=Z[++U],Y=DM[q];if(Y)Q+=Y;else if(q===`
136
- `){q=Z[U+1];while(q===" "||q==="\t")q=Z[++U+1]}else if(q==="\r"&&Z[U+1]===`
137
- `){q=Z[++U+1];while(q===" "||q==="\t")q=Z[++U+1]}else if(q==="x"||q==="u"||q==="U"){let W={x:2,u:4,U:8}[q];Q+=wM(Z,U+1,W,X),U+=W}else{let W=Z.substr(U-1,2);X(U-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${W}`),Q+=W}}else if(J===" "||J==="\t"){let q=U,Y=Z[U+1];while(Y===" "||Y==="\t")Y=Z[++U+1];if(Y!==`
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
+ `)q+=J;else J=`
133
+ `;else q+=J+U[1],J=" ";Y=Q.lastIndex}let W=/[ \t]*(.*)/sy;return W.lastIndex=Y,U=W.exec(Z),q+J+(U?.[1]??"")}function CM(Z,X){let Q="";for(let U=1;U<Z.length-1;++U){let q=Z[U];if(q==="\r"&&Z[U+1]===`
134
+ `)continue;if(q===`
135
+ `){let{fold:J,offset:Y}=NM(Z,U);Q+=J,U=Y}else if(q==="\\"){let J=Z[++U],Y=EM[J];if(Y)Q+=Y;else if(J===`
136
+ `){J=Z[U+1];while(J===" "||J==="\t")J=Z[++U+1]}else if(J==="\r"&&Z[U+1]===`
137
+ `){J=Z[++U+1];while(J===" "||J==="\t")J=Z[++U+1]}else if(J==="x"||J==="u"||J==="U"){let W={x:2,u:4,U:8}[J];Q+=bM(Z,U+1,W,X),U+=W}else{let W=Z.substr(U-1,2);X(U-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${W}`),Q+=W}}else if(q===" "||q==="\t"){let J=U,Y=Z[U+1];while(Y===" "||Y==="\t")Y=Z[++U+1];if(Y!==`
138
138
  `&&!(Y==="\r"&&Z[U+2]===`
139
- `))Q+=U>q?Z.slice(q,U+1):J}else Q+=J}if(Z[Z.length-1]!=='"'||Z.length===1)X(Z.length,"MISSING_CHAR",'Missing closing "quote');return Q}function TM(Z,X){let Q="",U=Z[X+1];while(U===" "||U==="\t"||U===`
139
+ `))Q+=U>J?Z.slice(J,U+1):q}else Q+=q}if(Z[Z.length-1]!=='"'||Z.length===1)X(Z.length,"MISSING_CHAR",'Missing closing "quote');return Q}function NM(Z,X){let Q="",U=Z[X+1];while(U===" "||U==="\t"||U===`
140
140
  `||U==="\r"){if(U==="\r"&&Z[X+2]!==`
141
141
  `)break;if(U===`
142
142
  `)Q+=`
143
- `;X+=1,U=Z[X+1]}if(!Q)Q=" ";return{fold:Q,offset:X}}var DM={"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 wM(Z,X,Q,U){let J=Z.substr(X,Q),Y=J.length===Q&&/^[0-9a-fA-F]+$/.test(J)?parseInt(J,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)}AM.resolveFlowScalar=OM});var pq=C((IM)=>{var $2=l(),uq=W0(),CM=O3(),NM=P3();function jM(Z,X,Q,U){let{value:J,type:q,comment:Y,range:W}=X.type==="block-scalar"?CM.resolveBlockScalar(Z,X,U):NM.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[$2.SCALAR];else if($)L=EM(Z.schema,J,$,Q,U);else if(X.type==="scalar")L=bM(Z,J,X,U);else L=Z.schema[$2.SCALAR];let _;try{let G=L.resolve(J,(V)=>U(Q??X,"TAG_RESOLVE_FAILED",V),Z.options);_=$2.isScalar(G)?G:new uq.Scalar(G)}catch(G){let V=G instanceof Error?G.message:String(G);U(Q??X,"TAG_RESOLVE_FAILED",V),_=new uq.Scalar(J)}if(_.range=W,_.source=J,q)_.type=q;if($)_.tag=$;if(L.format)_.format=L.format;if(Y)_.comment=Y;return _}function EM(Z,X,Q,U,J){if(Q==="!")return Z[$2.SCALAR];let q=[];for(let W of Z.tags)if(!W.collection&&W.tag===Q)if(W.default&&W.test)q.push(W);else return W;for(let W of q)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 J(U,"TAG_RESOLVE_FAILED",`Unresolved tag: ${Q}`,Q!=="tag:yaml.org,2002:str"),Z[$2.SCALAR]}function bM({atKey:Z,directives:X,schema:Q},U,J,q){let Y=Q.tags.find((W)=>(W.default===!0||Z&&W.default==="key")&&W.test?.test(U))||Q[$2.SCALAR];if(Q.compat){let W=Q.compat.find(($)=>$.default&&$.test?.test(U))??Q[$2.SCALAR];if(Y.tag!==W.tag){let $=X.tagString(Y.tag),L=X.tagString(W.tag),_=`Value may be parsed as either ${$} or ${L}`;q(J,"TAG_RESOLVE_FAILED",_,!0)}}return Y}IM.composeScalar=jM});var lq=C((kM)=>{function yM(Z,X,Q){if(X){Q??(Q=X.length);for(let U=Q-1;U>=0;--U){let J=X[U];switch(J.type){case"space":case"comment":case"newline":Z-=J.source.length;continue}J=X[++U];while(J?.type==="space")Z+=J.source.length,J=X[++U];break}}return Z}kM.emptyScalarPosition=yM});var iq=C((dM)=>{var vM=s6(),xM=l(),hM=hq(),dq=pq(),mM=o2(),uM=lq(),pM={composeNode:cq,composeEmptyNode:K3};function cq(Z,X,Q,U){let J=Z.atKey,{spaceBefore:q,comment:Y,anchor:W,tag:$}=Q,L,_=!0;switch(X.type){case"alias":if(L=lM(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=dq.composeScalar(Z,X,$,U),W)L.anchor=W.source.substring(1);break;case"block-map":case"block-seq":case"flow-collection":if(L=hM.composeCollection(pM,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=K3(Z,X.offset,void 0,null,Q,U),_=!1}}if(W&&L.anchor==="")U(W,"BAD_ALIAS","Anchor cannot be an empty string");if(J&&Z.options.stringKeys&&(!xM.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(q)L.spaceBefore=!0;if(Y)if(X.type==="scalar"&&X.source==="")L.comment=Y;else L.commentBefore=Y;if(Z.options.keepSourceTokens&&_)L.srcToken=X;return L}function K3(Z,X,Q,U,{spaceBefore:J,comment:q,anchor:Y,tag:W,end:$},L){let _={type:"scalar",offset:uM.emptyScalarPosition(X,Q,U),indent:-1,source:""},G=dq.composeScalar(Z,_,W,L);if(Y){if(G.anchor=Y.source.substring(1),G.anchor==="")L(Y,"BAD_ALIAS","Anchor cannot be an empty string")}if(J)G.spaceBefore=!0;if(q)G.comment=q,G.range[2]=$;return G}function lM({options:Z},{offset:X,source:Q,end:U},J){let q=new vM.Alias(Q.substring(1));if(q.source==="")J(X,"BAD_ALIAS","Alias cannot be an empty string");if(q.source.endsWith(":"))J(X+Q.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let Y=X+Q.length,W=mM.resolveEnd(U,Y,Z.strict,J);if(q.range=[X,Y,W.offset],W.comment)q.comment=W.comment;return q}dM.composeEmptyNode=K3;dM.composeNode=cq});var aq=C((nM)=>{var sM=$4(),sq=iq(),aM=o2(),rM=G4();function oM(Z,X,{offset:Q,start:U,value:J,end:q},Y){let W=Object.assign({_directives:X},Z),$=new sM.Document(void 0,W),L={atKey:!1,atRoot:!0,directives:$.directives,options:$.options,schema:$.schema},_=rM.resolveProps(U,{indicator:"doc-start",next:J??q?.[0],offset:Q,onError:Y,parentIndent:0,startOnNewline:!0});if(_.found){if($.directives.docStart=!0,J&&(J.type==="block-map"||J.type==="block-seq")&&!_.hasNewline)Y(_.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")}$.contents=J?sq.composeNode(L,J,_,Y):sq.composeEmptyNode(L,_.end,U,null,_,Y);let G=$.contents.range[2],V=aM.resolveEnd(q,G,!1,Y);if(V.comment)$.comment=V.comment;return $.range=[Q,G,V.offset],$}nM.composeDoc=oM});var T3=C((JO)=>{var eM=_2("process"),ZO=SX(),XO=$4(),_4=L4(),rq=l(),QO=aq(),UO=o2();function V4(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 oq(Z){let X="",Q=!1,U=!1;for(let J=0;J<Z.length;++J){let q=Z[J];switch(q[0]){case"#":X+=(X===""?"":U?`
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=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
- `)+(q.substring(1)||" "),Q=!0,U=!1;break;case"%":if(Z[J+1]?.[0]!=="#")J+=1;Q=!1;break;default:if(!Q)U=!0;Q=!1}}return{comment:X,afterEmptyLine:U}}class nq{constructor(Z={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(X,Q,U,J)=>{let q=V4(X);if(J)this.warnings.push(new _4.YAMLWarning(q,Q,U));else this.errors.push(new _4.YAMLParseError(q,Q,U))},this.directives=new ZO.Directives({version:Z.version||"1.2"}),this.options=Z}decorate(Z,X){let{comment:Q,afterEmptyLine:U}=oq(this.prelude);if(Q){let J=Z.contents;if(X)Z.comment=Z.comment?`${Z.comment}
148
- ${Q}`:Q;else if(U||Z.directives.docStart||!J)Z.commentBefore=Q;else if(rq.isCollection(J)&&!J.flow&&J.items.length>0){let q=J.items[0];if(rq.isPair(q))q=q.key;let Y=q.commentBefore;q.commentBefore=Y?`${Q}
149
- ${Y}`:Q}else{let q=J.commentBefore;J.commentBefore=q?`${Q}
150
- ${q}`: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:oq(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(eM.env.LOG_STREAM)console.dir(Z,{depth:null});switch(Z.type){case"directive":this.directives.add(Z.source,(X,Q,U)=>{let J=V4(Z);J[0]+=X,this.onError(J,"BAD_DIRECTIVE",Q,U)}),this.prelude.push(Z.source),this.atDirectives=!0;break;case"document":{let X=QO.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 _4.YAMLParseError(V4(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 _4.YAMLParseError(V4(Z),"UNEXPECTED_TOKEN","Unexpected doc-end without preceding document"));break}this.doc.directives.docEnd=!0;let X=UO.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 _4.YAMLParseError(V4(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 XO.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}}}JO.Composer=nq});var ZY=C((HO)=>{var YO=O3(),WO=P3(),$O=L4(),tq=n6();function LO(Z,X=!0,Q){if(Z){let U=(J,q,Y)=>{let W=typeof J==="number"?J:Array.isArray(J)?J[0]:J.offset;if(Q)Q(W,q,Y);else throw new $O.YAMLParseError([W,W+1],q,Y)};switch(Z.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return WO.resolveFlowScalar(Z,X,U);case"block-scalar":return YO.resolveBlockScalar({options:{strict:X}},Z,U)}}return null}function GO(Z,X){let{implicitKey:Q=!1,indent:U,inFlow:J=!1,offset:q=-1,type:Y="PLAIN"}=X,W=tq.stringifyString({type:Y,value:Z},{implicitKey:Q,indent:U>0?" ".repeat(U):"",inFlow:J,options:{blockQuote:!0,lineWidth:-1}}),$=X.end??[{type:"newline",offset:-1,indent:U,source:`
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
+ ${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
+ ${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(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
- `),_=W.substring(0,L),G=W.substring(L+1)+`
154
- `,V=[{type:"block-scalar-header",offset:q,indent:U,source:_}];if(!eq(V,$))V.push({type:"newline",offset:-1,indent:U,source:`
155
- `});return{type:"block-scalar",offset:q,indent:U,props:V,source:G}}case'"':return{type:"double-quoted-scalar",offset:q,indent:U,source:W,end:$};case"'":return{type:"single-quoted-scalar",offset:q,indent:U,source:W,end:$};default:return{type:"scalar",offset:q,indent:U,source:W,end:$}}}function _O(Z,X,Q={}){let{afterKey:U=!1,implicitKey:J=!1,inFlow:q=!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 $=tq.stringifyString({type:Y,value:X},{implicitKey:J||W===null,indent:W!==null&&W>0?" ".repeat(W):"",inFlow:q,options:{blockQuote:!0,lineWidth:-1}});switch($[0]){case"|":case">":VO(Z,$);break;case'"':D3(Z,$,"double-quoted-scalar");break;case"'":D3(Z,$,"single-quoted-scalar");break;default:D3(Z,$,"scalar")}}function VO(Z,X){let Q=X.indexOf(`
156
- `),U=X.substring(0,Q),J=X.substring(Q+1)+`
157
- `;if(Z.type==="block-scalar"){let q=Z.props[0];if(q.type!=="block-scalar-header")throw Error("Invalid block scalar header");q.source=U,Z.source=J}else{let{offset:q}=Z,Y="indent"in Z?Z.indent:-1,W=[{type:"block-scalar-header",offset:q,indent:Y,source:U}];if(!eq(W,"end"in Z?Z.end:void 0))W.push({type:"newline",offset:-1,indent:Y,source:`
158
- `});for(let $ of Object.keys(Z))if($!=="type"&&$!=="offset")delete Z[$];Object.assign(Z,{type:"block-scalar",indent:Y,props:W,source:J})}}function eq(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 D3(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),J=X.length;if(Z.props[0].type==="block-scalar-header")J-=Z.props[0].source.length;for(let q of U)q.offset+=J;delete Z.props,Object.assign(Z,{type:Q,source:X,end:U});break}case"block-map":case"block-seq":{let J={type:"newline",offset:Z.offset+X.length,indent:Z.indent,source:`
159
- `};delete Z.items,Object.assign(Z,{type:Q,source:X,end:[J]});break}default:{let U="indent"in Z?Z.indent:-1,J="end"in Z&&Array.isArray(Z.end)?Z.end.filter((q)=>q.type==="space"||q.type==="comment"||q.type==="newline"):[];for(let q of Object.keys(Z))if(q!=="type"&&q!=="offset")delete Z[q];Object.assign(Z,{type:Q,indent:U,source:X,end:J})}}}HO.createScalarToken=GO;HO.resolveAsScalar=LO;HO.setScalarValue=_O});var XY=C((OO)=>{var MO=(Z)=>("type"in Z)?e9(Z):t9(Z);function e9(Z){switch(Z.type){case"block-scalar":{let X="";for(let Q of Z.props)X+=e9(Q);return X+Z.source}case"block-map":case"block-seq":{let X="";for(let Q of Z.items)X+=t9(Q);return X}case"flow-collection":{let X=Z.start.source;for(let Q of Z.items)X+=t9(Q);for(let Q of Z.end)X+=Q.source;return X}case"document":{let X=t9(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 t9({start:Z,key:X,sep:Q,value:U}){let J="";for(let q of Z)J+=q.source;if(X)J+=e9(X);if(Q)for(let q of Q)J+=q.source;if(U)J+=e9(U);return J}OO.stringify=MO});var JY=C((KO)=>{var w3=Symbol("break visit"),PO=Symbol("skip children"),QY=Symbol("remove item");function L2(Z,X){if("type"in Z&&Z.type==="document")Z={start:Z.start,value:Z.value};UY(Object.freeze([]),Z,X)}L2.BREAK=w3;L2.SKIP=PO;L2.REMOVE=QY;L2.itemAtPath=(Z,X)=>{let Q=Z;for(let[U,J]of X){let q=Q?.[U];if(q&&"items"in q)Q=q.items[J];else return}return Q};L2.parentCollection=(Z,X)=>{let Q=L2.itemAtPath(Z,X.slice(0,-1)),U=X[X.length-1][0],J=Q?.[U];if(J&&"items"in J)return J;throw Error("Parent collection not found")};function UY(Z,X,Q){let U=Q(X,Z);if(typeof U==="symbol")return U;for(let J of["key","value"]){let q=X[J];if(q&&"items"in q){for(let Y=0;Y<q.items.length;++Y){let W=UY(Object.freeze(Z.concat([[J,Y]])),q.items[Y],Q);if(typeof W==="number")Y=W-1;else if(W===w3)return w3;else if(W===QY)q.items.splice(Y,1),Y-=1}if(typeof U==="function"&&J==="key")U=U(X,Z)}}return typeof U==="function"?U(X,Z):U}KO.visit=L2});var ZZ=C((jO)=>{var A3=ZY(),DO=XY(),wO=JY(),S3="\uFEFF",C3="\x02",N3="\x18",j3="\x1F",AO=(Z)=>!!Z&&("items"in Z),SO=(Z)=>!!Z&&(Z.type==="scalar"||Z.type==="single-quoted-scalar"||Z.type==="double-quoted-scalar"||Z.type==="block-scalar");function CO(Z){switch(Z){case S3:return"<BOM>";case C3:return"<DOC>";case N3:return"<FLOW_END>";case j3:return"<SCALAR>";default:return JSON.stringify(Z)}}function NO(Z){switch(Z){case S3:return"byte-order-mark";case C3:return"doc-mode";case N3:return"flow-error-end";case j3:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
153
+ `),V=W.substring(0,L),G=W.substring(L+1)+`
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 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
+ `),U=X.substring(0,Q),q=X.substring(Q+1)+`
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
+ `});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})}}}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}jO.createScalarToken=A3.createScalarToken;jO.resolveAsScalar=A3.resolveAsScalar;jO.setScalarValue=A3.setScalarValue;jO.stringify=DO.stringify;jO.visit=wO.visit;jO.BOM=S3;jO.DOCUMENT=C3;jO.FLOW_END=N3;jO.SCALAR=j3;jO.isCollection=AO;jO.isScalar=SO;jO.prettyToken=CO;jO.tokenType=NO});var b3=C((cO)=>{var H4=ZZ();function e0(Z){switch(Z){case void 0:case" ":case`
162
- `:case"\r":case"\t":return!0;default:return!1}}var qY=new Set("0123456789ABCDEFabcdef"),lO=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),XZ=new Set(",[]{}"),dO=new Set(` ,[]{}
163
- \r `),E3=(Z)=>!Z||dO.has(Z);class YY{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===`
167
- `||Q>=this.indentNext||!X&&!this.atEnd?Z+Q:-1}if(X==="-"||X==="."){let Q=this.buffer.substr(Z,3);if((Q==="---"||Q==="...")&&e0(this.buffer[Z+3]))return-1}return Z}getLine(){let Z=this.lineEndPos;if(typeof Z!=="number"||Z!==-1&&Z<this.pos)Z=this.buffer.indexOf(`
168
- `,this.pos),this.lineEndPos=Z;if(Z===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[Z-1]==="\r")Z-=1;return this.buffer.substring(this.pos,Z)}hasChars(Z){return this.pos+Z<=this.buffer.length}setNext(Z){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=Z,null}peek(Z){return this.buffer.substr(this.pos,Z)}*parseNext(Z){switch(Z){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let Z=this.getLine();if(Z===null)return this.setNext("stream");if(Z[0]===H4.BOM)yield*this.pushCount(1),Z=Z.substring(1);if(Z[0]==="%"){let X=Z.length,Q=Z.indexOf("#");while(Q!==-1){let J=Z[Q-1];if(J===" "||J==="\t"){X=Q-1;break}else Q=Z.indexOf("#",Q+1)}while(!0){let J=Z[X-1];if(J===" "||J==="\t")X-=1;else break}let U=(yield*this.pushCount(X))+(yield*this.pushSpaces(!0));return yield*this.pushCount(Z.length-U),this.pushNewline(),"stream"}if(this.atLineEnd()){let X=yield*this.pushSpaces(!0);return yield*this.pushCount(Z.length-X),yield*this.pushNewline(),"stream"}return yield H4.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let Z=this.charAt(0);if(!Z&&!this.atEnd)return this.setNext("line-start");if(Z==="-"||Z==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let X=this.peek(3);if((X==="---"||X==="...")&&e0(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,X==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!e0(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[Z,X]=this.peek(2);if(!X&&!this.atEnd)return this.setNext("block-start");if((Z==="-"||Z==="?"||Z===":")&&e0(X)){let Q=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=Q,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let Z=this.getLine();if(Z===null)return this.setNext("doc");let X=yield*this.pushIndicators();switch(Z[X]){case"#":yield*this.pushCount(Z.length-X);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(E3),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return X+=yield*this.parseBlockScalarHeader(),X+=yield*this.pushSpaces(!0),yield*this.pushCount(Z.length-X),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let Z,X,Q=-1;do{if(Z=yield*this.pushNewline(),Z>0)X=yield*this.pushSpaces(!1),this.indentValue=Q=X;else X=0;X+=yield*this.pushSpaces(!0)}while(Z+X>0);let U=this.getLine();if(U===null)return this.setNext("flow");if(Q!==-1&&Q<this.indentNext&&U[0]!=="#"||Q===0&&(U.startsWith("---")||U.startsWith("..."))&&e0(U[3])){if(!(Q===this.indentNext-1&&this.flowLevel===1&&(U[0]==="]"||U[0]==="}")))return this.flowLevel=0,yield H4.FLOW_END,yield*this.parseLineStart()}let J=0;while(U[J]===",")J+=yield*this.pushCount(1),J+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(J+=yield*this.pushIndicators(),U[J]){case void 0:return"flow";case"#":return yield*this.pushCount(U.length-J),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(E3),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let q=this.charAt(1);if(this.flowKey||e0(q)||q===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let Z=this.charAt(0),X=this.buffer.indexOf(Z,this.pos+1);if(Z==="'")while(X!==-1&&this.buffer[X+1]==="'")X=this.buffer.indexOf("'",X+2);else while(X!==-1){let J=0;while(this.buffer[X-1-J]==="\\")J+=1;if(J%2===0)break;X=this.buffer.indexOf('"',X+1)}let Q=this.buffer.substring(0,X),U=Q.indexOf(`
169
- `,this.pos);if(U!==-1){while(U!==-1){let J=this.continueScalar(U+1);if(J===-1)break;U=Q.indexOf(`
170
- `,J)}if(U!==-1)X=U-(Q[U-1]==="\r"?2:1)}if(X===-1){if(!this.atEnd)return this.setNext("quoted-scalar");X=this.buffer.length}return yield*this.pushToIndex(X+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let Z=this.pos;while(!0){let X=this.buffer[++Z];if(X==="+")this.blockScalarKeep=!0;else if(X>"0"&&X<="9")this.blockScalarIndent=Number(X)-1;else if(X!=="-")break}return yield*this.pushUntil((X)=>e0(X)||X==="#")}*parseBlockScalar(){let Z=this.pos-1,X=0,Q;Z:for(let J=this.pos;Q=this.buffer[J];++J)switch(Q){case" ":X+=1;break;case`
171
- `:Z=J,X=0;break;case"\r":{let q=this.buffer[J+1];if(!q&&!this.atEnd)return this.setNext("block-scalar");if(q===`
172
- `)break}default:break Z}if(!Q&&!this.atEnd)return this.setNext("block-scalar");if(X>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=X;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let J=this.continueScalar(Z+1);if(J===-1)break;Z=this.buffer.indexOf(`
173
- `,J)}while(Z!==-1);if(Z===-1){if(!this.atEnd)return this.setNext("block-scalar");Z=this.buffer.length}}let U=Z+1;Q=this.buffer[U];while(Q===" ")Q=this.buffer[++U];if(Q==="\t"){while(Q==="\t"||Q===" "||Q==="\r"||Q===`
174
- `)Q=this.buffer[++U];Z=U-1}else if(!this.blockScalarKeep)do{let J=Z-1,q=this.buffer[J];if(q==="\r")q=this.buffer[--J];let Y=J;while(q===" ")q=this.buffer[--J];if(q===`
175
- `&&J>=this.pos&&J+1+X>Y)Z=J;else break}while(!0);return yield H4.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 J=this.buffer[Q+1];if(e0(J)||Z&&XZ.has(J))break;X=Q}else if(e0(U)){let J=this.buffer[Q+1];if(U==="\r")if(J===`
167
+ `||Q>=this.indentNext||!X&&!this.atEnd?Z+Q:-1}if(X==="-"||X==="."){let Q=this.buffer.substr(Z,3);if((Q==="---"||Q==="...")&&n0(this.buffer[Z+3]))return-1}return Z}getLine(){let Z=this.lineEndPos;if(typeof Z!=="number"||Z!==-1&&Z<this.pos)Z=this.buffer.indexOf(`
168
+ `,this.pos),this.lineEndPos=Z;if(Z===-1)return this.atEnd?this.buffer.substring(this.pos):null;if(this.buffer[Z-1]==="\r")Z-=1;return this.buffer.substring(this.pos,Z)}hasChars(Z){return this.pos+Z<=this.buffer.length}setNext(Z){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=Z,null}peek(Z){return this.buffer.substr(this.pos,Z)}*parseNext(Z){switch(Z){case"stream":return yield*this.parseStream();case"line-start":return yield*this.parseLineStart();case"block-start":return yield*this.parseBlockStart();case"doc":return yield*this.parseDocument();case"flow":return yield*this.parseFlowCollection();case"quoted-scalar":return yield*this.parseQuotedScalar();case"block-scalar":return yield*this.parseBlockScalar();case"plain-scalar":return yield*this.parsePlainScalar()}}*parseStream(){let Z=this.getLine();if(Z===null)return this.setNext("stream");if(Z[0]===T4.BOM)yield*this.pushCount(1),Z=Z.substring(1);if(Z[0]==="%"){let X=Z.length,Q=Z.indexOf("#");while(Q!==-1){let q=Z[Q-1];if(q===" "||q==="\t"){X=Q-1;break}else Q=Z.indexOf("#",Q+1)}while(!0){let q=Z[X-1];if(q===" "||q==="\t")X-=1;else break}let U=(yield*this.pushCount(X))+(yield*this.pushSpaces(!0));return yield*this.pushCount(Z.length-U),this.pushNewline(),"stream"}if(this.atLineEnd()){let X=yield*this.pushSpaces(!0);return yield*this.pushCount(Z.length-X),yield*this.pushNewline(),"stream"}return yield T4.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let Z=this.charAt(0);if(!Z&&!this.atEnd)return this.setNext("line-start");if(Z==="-"||Z==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let X=this.peek(3);if((X==="---"||X==="...")&&n0(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,X==="---"?"doc":"stream"}if(this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!n0(this.charAt(1)))this.indentNext=this.indentValue;return yield*this.parseBlockStart()}*parseBlockStart(){let[Z,X]=this.peek(2);if(!X&&!this.atEnd)return this.setNext("block-start");if((Z==="-"||Z==="?"||Z===":")&&n0(X)){let Q=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=Q,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let Z=this.getLine();if(Z===null)return this.setNext("doc");let X=yield*this.pushIndicators();switch(Z[X]){case"#":yield*this.pushCount(Z.length-X);case void 0:return yield*this.pushNewline(),yield*this.parseLineStart();case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel=1,"flow";case"}":case"]":return yield*this.pushCount(1),"doc";case"*":return yield*this.pushUntil(k3),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return X+=yield*this.parseBlockScalarHeader(),X+=yield*this.pushSpaces(!0),yield*this.pushCount(Z.length-X),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let Z,X,Q=-1;do{if(Z=yield*this.pushNewline(),Z>0)X=yield*this.pushSpaces(!1),this.indentValue=Q=X;else X=0;X+=yield*this.pushSpaces(!0)}while(Z+X>0);let U=this.getLine();if(U===null)return this.setNext("flow");if(Q!==-1&&Q<this.indentNext&&U[0]!=="#"||Q===0&&(U.startsWith("---")||U.startsWith("..."))&&n0(U[3])){if(!(Q===this.indentNext-1&&this.flowLevel===1&&(U[0]==="]"||U[0]==="}")))return this.flowLevel=0,yield T4.FLOW_END,yield*this.parseLineStart()}let q=0;while(U[q]===",")q+=yield*this.pushCount(1),q+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(q+=yield*this.pushIndicators(),U[q]){case void 0:return"flow";case"#":return yield*this.pushCount(U.length-q),"flow";case"{":case"[":return yield*this.pushCount(1),this.flowKey=!1,this.flowLevel+=1,"flow";case"}":case"]":return yield*this.pushCount(1),this.flowKey=!0,this.flowLevel-=1,this.flowLevel?"flow":"doc";case"*":return yield*this.pushUntil(k3),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let J=this.charAt(1);if(this.flowKey||n0(J)||J===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let Z=this.charAt(0),X=this.buffer.indexOf(Z,this.pos+1);if(Z==="'")while(X!==-1&&this.buffer[X+1]==="'")X=this.buffer.indexOf("'",X+2);else while(X!==-1){let q=0;while(this.buffer[X-1-q]==="\\")q+=1;if(q%2===0)break;X=this.buffer.indexOf('"',X+1)}let Q=this.buffer.substring(0,X),U=Q.indexOf(`
169
+ `,this.pos);if(U!==-1){while(U!==-1){let q=this.continueScalar(U+1);if(q===-1)break;U=Q.indexOf(`
170
+ `,q)}if(U!==-1)X=U-(Q[U-1]==="\r"?2:1)}if(X===-1){if(!this.atEnd)return this.setNext("quoted-scalar");X=this.buffer.length}return yield*this.pushToIndex(X+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let Z=this.pos;while(!0){let X=this.buffer[++Z];if(X==="+")this.blockScalarKeep=!0;else if(X>"0"&&X<="9")this.blockScalarIndent=Number(X)-1;else if(X!=="-")break}return yield*this.pushUntil((X)=>n0(X)||X==="#")}*parseBlockScalar(){let Z=this.pos-1,X=0,Q;Z:for(let q=this.pos;Q=this.buffer[q];++q)switch(Q){case" ":X+=1;break;case`
171
+ `:Z=q,X=0;break;case"\r":{let J=this.buffer[q+1];if(!J&&!this.atEnd)return this.setNext("block-scalar");if(J===`
172
+ `)break}default:break Z}if(!Q&&!this.atEnd)return this.setNext("block-scalar");if(X>=this.indentNext){if(this.blockScalarIndent===-1)this.indentNext=X;else this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let q=this.continueScalar(Z+1);if(q===-1)break;Z=this.buffer.indexOf(`
173
+ `,q)}while(Z!==-1);if(Z===-1){if(!this.atEnd)return this.setNext("block-scalar");Z=this.buffer.length}}let U=Z+1;Q=this.buffer[U];while(Q===" ")Q=this.buffer[++U];if(Q==="\t"){while(Q==="\t"||Q===" "||Q==="\r"||Q===`
174
+ `)Q=this.buffer[++U];Z=U-1}else if(!this.blockScalarKeep)do{let q=Z-1,J=this.buffer[q];if(J==="\r")J=this.buffer[--q];let Y=q;while(J===" ")J=this.buffer[--q];if(J===`
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
- `,J=this.buffer[Q+1];else X=Q;if(J==="#"||Z&&XZ.has(J))break;if(U===`
178
- `){let q=this.continueScalar(Q+1);if(q===-1)break;Q=Math.max(Q,q-2)}}else{if(Z&&XZ.has(U))break;X=Q}if(!U&&!this.atEnd)return this.setNext("plain-scalar");return yield H4.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(E3))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let Z=this.flowLevel>0,X=this.charAt(1);if(e0(X)||Z&&XZ.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(!e0(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(lO.has(X))X=this.buffer[++Z];else if(X==="%"&&qY.has(this.buffer[Z+1])&&qY.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===`
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(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)}}cO.Lexer=YY});var I3=C((sO)=>{class WY{constructor(){this.lineStarts=[],this.addNewLine=(Z)=>this.lineStarts.push(Z),this.linePos=(Z)=>{let X=0,Q=this.lineStarts.length;while(X<Q){let J=X+Q>>1;if(this.lineStarts[J]<Z)X=J+1;else Q=J}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}}}}sO.LineCounter=WY});var f3=C((nO)=>{var rO=_2("process"),$Y=ZZ(),oO=b3();function l1(Z,X){for(let Q=0;Q<Z.length;++Q)if(Z[Q].type===X)return!0;return!1}function LY(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 _Y(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 QZ(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 n2(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 GY(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,_Y(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 VY{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 oO.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,rO.env.LOG_TOKENS)console.log("|",$Y.prettyToken(Z));if(this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=Z.length;return}let X=$Y.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")GY(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&&LY(U.start)===-1&&(X.indent===0||U.start.every((J)=>J.type!=="comment"||J.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(LY(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=QZ(this.peek(2)),Q=n2(X),U;if(Z.end)U=Z.end,U.push(this.sourceToken),delete Z.end;else U=[this.sourceToken];let J={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]=J}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
- `,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",J=[];if(U&&X.sep&&!X.value){let q=[];for(let Y=0;Y<X.sep.length;++Y){let W=X.sep[Y];switch(W.type){case"newline":q.push(Y);break;case"space":break;case"comment":if(W.indent>Z.indent)q.length=0;break;default:q.length=0}}if(q.length>=2)J=X.sep.splice(q[1])}switch(this.type){case"anchor":case"tag":if(U||X.value)J.push(this.sourceToken),Z.items.push({start:J}),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)J.push(this.sourceToken),Z.items.push({start:J,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 q=n2(X.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:q,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:J,key:null,sep:[this.sourceToken]}]});else if(_Y(X.key)&&!l1(X.sep,"newline")){let q=n2(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:q,key:Y,sep:W}]})}else if(J.length>0)X.sep=X.sep.concat(J,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:J,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 q=this.flowScalar(this.type);if(U||X.value)Z.items.push({start:J,key:q,sep:[]}),this.onKeyLine=!0;else if(X.sep)this.stack.push(q);else Object.assign(X,{key:q,sep:[]}),this.onKeyLine=!0;return}default:{let q=this.startBlockValue(Z);if(q){if(q.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:J});this.stack.push(q);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=QZ(Q),J=n2(U);GY(Z);let q=Z.end.splice(1,Z.end.length);q.push(this.sourceToken);let Y={type:"block-map",offset:Z.offset,indent:Z.indent,items:[{start:J,key:Z,sep:q}]};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(`
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=QZ(Z),Q=n2(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=QZ(Z),Q=n2(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()}}}nO.Parser=VY});var MY=C((YR)=>{var HY=T3(),eO=$4(),F4=L4(),ZR=IX(),XR=l(),QR=I3(),FY=f3();function zY(Z){let X=Z.prettyErrors!==!1;return{lineCounter:Z.lineCounter||X&&new QR.LineCounter||null,prettyErrors:X}}function UR(Z,X={}){let{lineCounter:Q,prettyErrors:U}=zY(X),J=new FY.Parser(Q?.addNewLine),q=new HY.Composer(X),Y=Array.from(q.compose(J.parse(Z)));if(U&&Q)for(let W of Y)W.errors.forEach(F4.prettifyError(Z,Q)),W.warnings.forEach(F4.prettifyError(Z,Q));if(Y.length>0)return Y;return Object.assign([],{empty:!0},q.streamInfo())}function BY(Z,X={}){let{lineCounter:Q,prettyErrors:U}=zY(X),J=new FY.Parser(Q?.addNewLine),q=new HY.Composer(X),Y=null;for(let W of q.compose(J.parse(Z),!0,Z.length))if(!Y)Y=W;else if(Y.options.logLevel!=="silent"){Y.errors.push(new F4.YAMLParseError(W.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}if(U&&Q)Y.errors.forEach(F4.prettifyError(Z,Q)),Y.warnings.forEach(F4.prettifyError(Z,Q));return Y}function JR(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 J=BY(Z,Q);if(!J)return null;if(J.warnings.forEach((q)=>ZR.warn(J.options.logLevel,q)),J.errors.length>0)if(J.options.logLevel!=="silent")throw J.errors[0];else J.errors=[];return J.toJS(Object.assign({reviver:U},Q))}function qR(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 J=Math.round(Q);Q=J<1?void 0:J>8?{indent:8}:{indent:J}}if(Z===void 0){let{keepUndefined:J}=Q??X??{};if(!J)return}if(XR.isDocument(Z)&&!U)return Z.toString(Q);return new eO.Document(Z,U,Q).toString(Q)}YR.parse=JR;YR.parseAllDocuments=UR;YR.parseDocument=BY;YR.stringify=qR});var k3=C((DR)=>{var _R=T3(),VR=$4(),HR=Y3(),y3=L4(),FR=s6(),d1=l(),zR=h1(),BR=W0(),MR=u1(),OR=p1(),RR=ZZ(),PR=b3(),KR=I3(),TR=f3(),UZ=MY(),OY=c6();DR.Composer=_R.Composer;DR.Document=VR.Document;DR.Schema=HR.Schema;DR.YAMLError=y3.YAMLError;DR.YAMLParseError=y3.YAMLParseError;DR.YAMLWarning=y3.YAMLWarning;DR.Alias=FR.Alias;DR.isAlias=d1.isAlias;DR.isCollection=d1.isCollection;DR.isDocument=d1.isDocument;DR.isMap=d1.isMap;DR.isNode=d1.isNode;DR.isPair=d1.isPair;DR.isScalar=d1.isScalar;DR.isSeq=d1.isSeq;DR.Pair=zR.Pair;DR.Scalar=BR.Scalar;DR.YAMLMap=MR.YAMLMap;DR.YAMLSeq=OR.YAMLSeq;DR.CST=RR;DR.Lexer=PR.Lexer;DR.LineCounter=KR.LineCounter;DR.Parser=TR.Parser;DR.parse=UZ.parse;DR.parseAllDocuments=UZ.parseAllDocuments;DR.parseDocument=UZ.parseDocument;DR.stringify=UZ.stringify;DR.visit=OY.visit;DR.visitAsync=OY.visitAsync});v2();var x2;((q)=>{q.ENGINE_START="engine:start";q.ENGINE_DONE="engine:done";q.RULE_MATCH="rule:match";q.ACTION_SUCCESS="action:success";q.ACTION_ERROR="action:error"})(x2||={});var $9;((U)=>{U.RULE_ADDED="rule:added";U.RULE_REMOVED="rule:removed";U.RULE_UPDATED="rule:updated"})($9||={});var Rb=x2,L9=$9;class GX{static instance;handlers=new Map;constructor(){}static getInstance(){if(!this.instance)this.instance=new GX;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((J)=>{try{J(X)}catch(q){console.error(`Error in event handler for ${Q}:`,q)}})}}var p0=GX.getInstance();var uG=R0,pG=x2,lG=$9,_X={IF:"if",THEN:"then",ELSE:"else",BREAK:"break",CONTINUE:"continue",MODE:"mode",ACTIONS:"actions",RUN:"run",DELAY:"delay",PROBABILITY:"probability",PARAMS:"params",TYPE:"type",ON:"on"},VX={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"},G9={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}`},Db={Actions:uG,Events:pG,RuleEvents:lG,ControlFlow:_X,ErrorMessages:VX,DebugMessages:G9};W9();class dG{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 cG{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 HX{static getNestedValue(Z,X){let Q=Z.split("."),U=X;for(let J of Q){if(U===null||U===void 0)return;if(typeof U==="object"&&U!==null&&J in U)U=U[J];else return}return U}static interpolate(Z,X){if(typeof Z!=="string")return Z;return Z.replace(/\$\{([^}]+)\}/g,(Q,U)=>{let J=this.getNestedValue(U,X);if(J!==void 0)return String(J);return Q})}static compare(Z,X,Q){let U=(q)=>{if(q instanceof Date)return q.getTime();if(typeof q==="number")return q;if(typeof q==="string"){let Y=new Date(q);return isNaN(Y.getTime())?0:Y.getTime()}return 0},J=(q)=>{if(typeof q==="number")return q;if(q===null||q===void 0||q==="")return null;let Y=Number(q);return isNaN(Y)?null:Y};switch(X){case"EQ":case"==":return Z==Q;case"NEQ":case"!=":return Z!=Q;case"GT":case">":{let q=J(Z),Y=J(Q);return q!==null&&Y!==null&&q>Y}case"GTE":case">=":{let q=J(Z),Y=J(Q);return q!==null&&Y!==null&&q>=Y}case"LT":case"<":{let q=J(Z),Y=J(Q);return q!==null&&Y!==null&&q<Y}case"LTE":case"<=":{let q=J(Z),Y=J(Q);return q!==null&&Y!==null&&q<=Y}case"IN":return Array.isArray(Q)&&Q.some((q)=>q===Z);case"NOT_IN":return Array.isArray(Q)&&!Q.some((q)=>q===Z);case"CONTAINS":if(Array.isArray(Q))return Q.some((q)=>String(Z).includes(String(q)));if(Array.isArray(Z)||typeof Z==="string")return Z.includes(Q);return!1;case"NOT_CONTAINS":if(Array.isArray(Q))return!Q.some((q)=>String(Z).includes(String(q)));if(Array.isArray(Z)||typeof Z==="string")return!Z.includes(Q);return!1;case"STARTS_WITH":if(Array.isArray(Q))return Q.some((q)=>String(Z).startsWith(String(q)));if(typeof Z==="string"&&typeof Q==="string")return Z.startsWith(Q);return!1;case"ENDS_WITH":if(Array.isArray(Q))return Q.some((q)=>String(Z).endsWith(String(q)));if(typeof Z==="string"&&typeof Q==="string")return Z.endsWith(Q);return!1;case"IS_EMPTY":{let q=!1;if(typeof Z==="string")q=Z==="";else if(Array.isArray(Z))q=Z.length===0;else if(Z===null||Z===void 0)q=!0;else if(typeof Z==="object")q=Object.keys(Z).length===0;return Q===!1?!q:q}case"IS_NULL":case"IS_NONE":{let q=Z===null||Z===void 0;return Q===!1?!q:q}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 q=J(Z),Y=J(Q[0]),W=J(Q[1]);return q!==null&&Y!==null&&W!==null&&q>=Y&&q<=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}}}W9();class f1{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((J)=>this.evaluateRecursiveCondition(J,X));else return U.conditions.every((J)=>this.evaluateRecursiveCondition(J,X))}let Q=Z;try{let U=j0.evaluate(Q.field,X),J=Q.value;if(typeof J==="string"&&J.includes("${"))J=j0.interpolate(J,X);return HX.compare(U,Q.operator,J)}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(_X),W=Object.keys(U).filter(($)=>!Y.includes($));for(let $ of W)if(Q?!!Q.get($):!0){U.type=$;let _=U[$];if(typeof _==="string")U.params={...U.params,message:_,content:_};else if(typeof _==="object"&&_!==null)U.params={...U.params,..._};break}}if(U.run)try{return{shouldExecute:!1,executedAction:{type:"RUN",result:Function("context","state","data","vars","env","helpers",`with(context) { ${U.run} }`)(X,X.state,X.data,X.vars,X.env,X.helpers),timestamp:Date.now()},normalizedAction:U}}catch(Y){return{shouldExecute:!1,executedAction:{type:"RUN",error:String(Y),timestamp:Date.now()},normalizedAction:U}}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 J=U.probability;if(typeof J==="string"){let Y=j0.evaluate(J,X);J=typeof Y==="number"?Y:Number(Y)}if(J!==void 0&&Math.random()>J)return{shouldExecute:!1,executedAction:{type:U.type||"skipped",result:{skipped:"probability check failed"},timestamp:Date.now()},normalizedAction:U};let q=U.delay;if(typeof q==="string"){let Y=j0.evaluate(q,X);q=typeof Y==="number"?Y:Number(Y)}if(q&&q>0)await new Promise((Y)=>setTimeout(Y,q));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,J=X.reduce((W,$)=>W+U($),0),q=Math.random()*J;for(let W of X){let $=U(W);if(q-=$,q<=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,J]of Object.entries(Z))Q[U]=this.interpolateDeep(J,X);return Q}static interpolateDeep(Z,X){if(typeof Z==="string"&&Z.includes("${"))return j0.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,J]of Object.entries(Z))Q[U]=this.interpolateDeep(J,X);return Q}return Z}}class m6{_rules=[];actionHandlers=new Map;lastExecution=new Map;_config;constructor(Z=[]){if(Array.isArray(Z))this._rules=Z;else this._config=Z,this._rules=[...Z.rules];try{let{ActionRegistry:X}=(v2(),a3(LX));X.getInstance(!0)}catch{}this.sortRules()}sortRules(){this._rules.sort((Z,X)=>(X.priority||0)-(Z.priority||0))}registerAction(Z,X){this.actionHandlers.set(Z,X)}async processEvent(Z){let X=[];if(!Z.state)Z.state=this.getStateContext?this.getStateContext():{};let Q=this._rules.filter((U)=>U.enabled!==!1&&U.on===Z.event);for(let U of Q){if(U.cooldown&&this.checkCooldown(U.id,U.cooldown))continue;let J=f1.evaluateConditions(U.if,Z),q;if(J)p0.emit("rule:match",{rule:U,context:Z}),q=U.do;else if(U.else)q=U.else;if(q){let Y=await this.executeRuleActions(q,Z);this.lastExecution.set(U.id,Date.now()),X.push({ruleId:U.id,success:!0,executedActions:Y})}if(!J&&!U.else&&!this.shouldEvaluateAll())break;if(J&&!this.shouldEvaluateAll())break}return X}async processEventSimple(Z,X={},Q={}){let U={event:Z,data:X,vars:Q,timestamp:Date.now(),state:this.getStateContext?this.getStateContext():{}};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)),J=Z.filter((Y)=>!Q.has(Y.id)),q=X.filter((Y)=>!U.has(Y.id));this._rules=[...Z],this.sortRules(),J.forEach((Y)=>{this.emitRuleEvent(L9.RULE_ADDED,{ruleId:Y.id,timestamp:Date.now()})}),q.forEach((Y)=>{this.emitRuleEvent(L9.RULE_REMOVED,{ruleId:Y.id,timestamp:Date.now()})}),this.emitRuleEvent(L9.RULE_UPDATED,{count:Z.length,added:J.length,removed:q.length,unchanged:Z.length-J.length,timestamp:Date.now()})}emitRuleEvent(Z,X){try{if(p0)p0.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}getStateContext(){return{}}evaluateConditions(Z,X){return f1.evaluateConditions(Z,X)}evaluateSingleCondition(Z,X){return f1.evaluateConditions(Z,X)}async executeRuleActions(Z,X){let{actionsToExecute:Q}=f1.selectActions(Z),U=[];for(let J of Q){if("actions"in J&&"mode"in J){U.push(...await this.executeRuleActions(J,X));continue}let q=J;if("if"in q&&q.if&&(q.then||q.else||q.do)){let W=this.evaluateConditions(q.if,X),$=q.then||q.do;if(W&&$)U.push(...await this.executeRuleActions($,X));else if(!W&&q.else)U.push(...await this.executeRuleActions(q.else,X));continue}if("if"in q&&q.if){if(!this.evaluateConditions(q.if,X))continue}let Y=await this.executeSingleAction(q,X);if(U.push(Y),Y.type==="BREAK")break}return U}async executeSingleAction(Z,X){let{shouldExecute:Q,executedAction:U,normalizedAction:J}=await f1.processSingleActionBase(Z,X);if(!Q)return U;try{let q=this.actionHandlers.get(J.type);if(q){let W=await q(J.params||{},X);return p0.emit("action:success",{action:J,context:X,result:W}),{type:J.type,result:W,timestamp:Date.now()}}try{let{ActionRegistry:W}=(v2(),a3(LX)),$=W.getInstance().get(J.type);if($){let L=await $(J,X);return p0.emit("action:success",{action:J,context:X,result:L}),{type:J.type,result:L,timestamp:Date.now()}}}catch{}let Y=`${VX.UNKNOWN_ACTION}: ${J.type}`;if(this._config?.globalSettings?.strictActions)throw Error(Y);return console.warn(Y),{type:J.type,result:{warning:Y},timestamp:Date.now()}}catch(q){return console.error(`Error executing action ${J.type}:`,q),p0.emit("action:error",{action:J,context:X,error:String(q)}),{type:J.type,error:String(q),timestamp:Date.now()}}}interpolateParams(Z,X){return f1.interpolateParams(Z,X)}get rules(){return[...this._rules]}get config(){return this._config}set rules(Z){this._rules=[...Z],this.sortRules()}}v2();x6();class n7 extends m6{actionRegistry;stateManager;constructor(Z){super(Z);this.actionRegistry=h6.getInstance(!0),this.stateManager=z0.getInstance()}async evaluateContext(Z){if(!Z.state)Z.state=this.stateManager.getLiveProxy();if(this._config?.stateConfig)await this.stateManager.applyConfig(this._config.stateConfig);if(!Z.env)Z.env={};if(this._config?.globalSettings?.debugMode)console.log(G9.RULE_ENGINE_EVALUATING(this._rules.length,Z.event));p0.emit("engine:start",{context:Z,rulesCount:this._rules.length});let X=await this.processEvent(Z);return p0.emit("engine:done",{results:X,context:Z}),X}async processEvent(Z,X={},Q={}){if(typeof Z==="string"){let q={event:Z,data:X,vars:Q,timestamp:Date.now(),state:this.stateManager.getLiveProxy()};return this.processEvent(q)}let U=Z;if(U.state=this.stateManager.getLiveProxy(),this._config?.stateConfig)await this.stateManager.applyConfig(this._config.stateConfig);if(p0.emit("engine:start",{context:U,rulesCount:this._rules.length}),this._config?.globalSettings?.debugMode)console.log(G9.RULE_ENGINE_EVALUATING(this._rules.length,U.event));let J=await super.processEvent(U);return p0.emit("engine:done",{results:J,context:U}),J}getStateContext(){return this.stateManager.getLiveProxy()}get ActionRegistry(){return this.actionRegistry}get StateManager(){return this.stateManager}}v2();x6();class iG{static create(Z,X,Q={}){return{event:Z,timestamp:Date.now(),data:typeof X==="object"&&X!==null?X:{value:X},vars:Q,state:z0.getInstance().getLiveProxy(),helpers:this.getDefaultHelpers()}}static fromRequest(Z,X,Q={}){let U=new URL(Z.url);return{event:"HTTP_REQUEST",timestamp:Date.now(),data:{method:Z.method,path:U.pathname,query:Object.fromEntries(U.searchParams),headers:(()=>{let J={};return Z.headers.forEach((q,Y)=>J[Y]=q),J})(),body:X||{}},vars:{...Q,ip:Z.headers.get("x-forwarded-for")||"unknown"},state:z0.getInstance().getLiveProxy(),helpers:this.getDefaultHelpers()}}static fromWebhook(Z,X,Q,U={}){return{event:`WEBHOOK_${Z.toUpperCase()}_${X.toUpperCase()}`,timestamp:Date.now(),data:Q,vars:{...U,provider:Z},state:z0.getInstance().getLiveProxy(),helpers:this.getDefaultHelpers()}}static getDefaultHelpers(){return{now:()=>Date.now(),uuid:()=>crypto.randomUUID(),jsonParse:(Z)=>{try{return typeof Z==="string"?JSON.parse(Z):null}catch{return null}},jsonStringify:(Z)=>{try{return JSON.stringify(Z)}catch{return null}}}}}x6();WX();var sG=["EQ","==","NEQ","!="],t7=["GT",">","GTE",">=","LT","<","LTE","<="],e7=["IN","NOT_IN","RANGE"],ZJ=["CONTAINS","NOT_CONTAINS","STARTS_WITH","ENDS_WITH"],aG=["IS_NULL","IS_NONE"],rG=["IS_EMPTY","HAS_KEY","MATCHES","SINCE","AFTER","BEFORE","UNTIL"],UI=[...sG,...t7,...e7,...ZJ,...aG,...rG];function XJ(Z){return e7.includes(Z)}function QJ(Z){return ZJ.includes(Z)}function UJ(Z){return t7.includes(Z)}var y1=g6({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(),GI=y1.Operator,_I=y1.Condition,VI=y1.ConditionGroup,HI=y1.RuleCondition,FI=y1.Action,zI=y1.ActionGroup,BI=y1.InlineConditionalAction,oG=y1.TriggerRule;class FX{static validate(Z){let X=oG(Z);if(X instanceof i.errors){let J=[];for(let q of X){let Y=q.path.join("."),W=q.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.";J.push({path:Y,message:W,suggestion:$,severity:"error"})}return{valid:!1,issues:J}}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,J)=>{this.validateInlineConditionalRecursive(U,X,`${Q}.${J}`)});return}if(typeof Z==="object"&&Z!==null&&"mode"in Z&&"actions"in Z){let U=Z;if(Array.isArray(U.actions))U.actions.forEach((J,q)=>{this.validateInlineConditionalRecursive(J,X,`${Q}.actions.${q}`)});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,J)=>{this.validateConditionsRecursive(U,X,`${Q}.${J}`)});return}if(typeof Z==="object"&&Z!==null&&"conditions"in Z&&Array.isArray(Z.conditions)){Z.conditions.forEach((U,J)=>{this.validateConditionsRecursive(U,X,`${Q}.conditions.${J}`)});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:J}=Z,q=U;if(XJ(q)){if(!Array.isArray(J)){X.push({path:`${Q}.value`,message:`Incorrect value type: Operator '${q}' expects a List (Array), but received ${typeof J}.`,suggestion:q==="RANGE"?"Use format [min, max]":"Use format [item1, item2]",severity:"error"});return}if(q==="RANGE"){if(J.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 J[0]!=="number"&&typeof J[0]!=="string")X.push({path:`${Q}.value`,message:"Incorrect range type: Range values must be numbers or expression strings.",severity:"error"})}}else if(q==="CONTAINS"||q==="NOT_CONTAINS"){if(typeof J!=="string"&&!Array.isArray(J))X.push({path:`${Q}.value`,message:`Incorrect value type: Operator 'CONTAINS' expects a String or List (Array), but received ${typeof J}.`,suggestion:"Use a substring or a list of items.",severity:"error"})}else if(QJ(q)){if(typeof J!=="string"&&!Array.isArray(J))X.push({path:`${Q}.value`,message:`Incorrect value type: Operator '${q}' expects a String or List (Array), but received ${typeof J}.`,suggestion:"Use a string prefix/suffix or a list of prefixes/suffixes.",severity:"error"})}else if(q==="MATCHES")if(typeof J!=="string")X.push({path:`${Q}.value`,message:`Incorrect value type: Operator 'MATCHES' expects a string (regex pattern), but received ${typeof J}.`,severity:"error"});else try{new RegExp(J)}catch(Y){X.push({path:`${Q}.value`,message:`Invalid Regex pattern: ${Y.message}`,severity:"error"})}else if(UJ(q)){if(typeof J!=="number"&&typeof J!=="string")X.push({path:`${Q}.value`,message:`Incorrect value type: Operator '${q}' expects a number or expression string, but received ${typeof J}.`,severity:"error"})}else if(q==="HAS_KEY"){if(typeof J!=="string")X.push({path:`${Q}.value`,message:`Incorrect value type: Operator 'HAS_KEY' expects a string (key name), but received ${typeof J}.`,severity:"error"})}}}function _9(Z,X){let Q=new Map,U=[];for(let q of Z){let W=q[X];if(W!==void 0&&W!==null){let $=String(W);if(!Q.has($))Q.set($,q)}else U.push(q)}let J=Array.from(new Set(U.map((q)=>JSON.stringify(q)))).map((q)=>JSON.parse(q));return[...Array.from(Q.values()),...J]}function u6(Z,X={}){let{deduplicate:Q=!0,uniqueIdField:U}=X;if(!Z)return;if(Array.isArray(Z)){let J=Z.map((Y)=>u6(Y,X)).filter((Y)=>Y!==void 0);if(!Q)return J.length===0?void 0:J.length===1?J[0]:J;let q=U?_9(J,U):Array.from(new Set(J.map((Y)=>JSON.stringify(Y)))).map((Y)=>JSON.parse(Y));return q.length===0?void 0:q.length===1?q[0]:q}if("operator"in Z&&"conditions"in Z){let J=Z,q=u6(J.conditions,X);if(!q)return;if(!Array.isArray(q))q=[q];let Y=[];for(let $ of q)if("operator"in $&&"conditions"in $&&$.operator===J.operator)Y.push(...$.conditions);else Y.push($);let W;if(!Q)W=Y;else if(U)W=_9(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:J.operator,conditions:W}}return Z}function p6(Z,X={}){let{deduplicate:Q=!1,uniqueIdField:U}=X;if(!Z)return;if(Array.isArray(Z)){let J=Z.map(($)=>p6($,X)).filter(($)=>$!==void 0);if(!Q){let $=J.flatMap((_)=>Array.isArray(_)?_:[_]),L=[];for(let _ of $)if("mode"in _&&"actions"in _&&_.mode==="ALL")L.push(..._.actions);else L.push(_);if(L.length===0)return;if(L.length===1)return L[0];return L}let q=J.flatMap(($)=>Array.isArray($)?$:[$]),Y=[];for(let $ of q)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=_9(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 J=Z,q=p6(J.actions,X);if(!q)return;if(!Array.isArray(q))q=[q];let Y=[];for(let $ of q)if("mode"in $&&"actions"in $&&$.mode===J.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=_9(Y,U);else W=Array.from(new Set(Y.map(($)=>JSON.stringify($)))).map(($)=>JSON.parse($));return{mode:J.mode,actions:W}}return Z}class k1{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 k1("AND");return this.conditions.push(Z(X).build()),this}or(Z){let X=new k1("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 l6{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 zX{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 q=0;q<Q.length-1;q++){let Y=Q[q];if(!Y)continue;if(!(Y in U))U[Y]={};U=U[Y]}let J=Q[Q.length-1];if(J)U[J]=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 f={EVENT:"event",CONDITION:"condition",CONDITION_GROUP:"condition_group",ACTION:"action",ACTION_GROUP:"action_group",DO:"do"},w={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"},f0={DO:"do",ELSE:"else"},BX={AND:"AND",OR:"OR"};var H9=(Z)=>Z.type===f.EVENT,R1=(Z)=>Z.type===f.CONDITION||Z.type===f.CONDITION_GROUP,Y1=(Z)=>Z.type===f.ACTION||Z.type===f.ACTION_GROUP||Z.type===f.DO,F9=(Z)=>Z.type===f.DO;var h2=(Z)=>{return Z.data?.branchType===f0.ELSE?f0.ELSE:f0.DO};function MX(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 X0(Z,X,Q){let U=[...Q];return Z.edges.filter((J)=>J.source===X&&U.includes(J.sourceHandle||""))}var n0={CONDITION_OUTPUT:[w.CONDITION_OUTPUT,w.CONDITION_OUTPUT_LEGACY],ACTION_OUTPUT:[w.ACTION_OUTPUT,w.ACTION_OUTPUT_LEGACY],DO_OUTPUT:[w.DO_OUTPUT,""],THEN_ELSE:[w.THEN_OUTPUT,w.ELSE_OUTPUT],DO_CONDITION:[w.DO_CONDITION_OUTPUT],CONDITION_CHAIN:[w.CONDITION_OUTPUT,w.CONDITION_OUTPUT_LEGACY,w.THEN_OUTPUT,w.ELSE_OUTPUT],ANY:[w.CONDITION_OUTPUT,w.CONDITION_OUTPUT_LEGACY,""]};class JJ{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 qJ{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 YJ{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 WJ{conditionConverter=new JJ;actionConverter=new qJ;eventConverter=new YJ;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 $J=new WJ;function OX(Z){let X=Z.data||{};return $J.getConditionConverter().convert(X,{nodes:[],edges:[]})}function RX(Z){let X=Z.data||{};return $J.getActionConverter().convert(X,{nodes:[],edges:[]})}function z9(Z,X){let Q=X.options.isCondNode||R1,U=X.nodes.find((L)=>L.id===Z);if(!U||U.type!==f.CONDITION_GROUP)return{conditions:[],operator:BX.AND};let J=U.data.operator||BX.AND,q=[],Y=new Set;function W(L){if(Y.has(L))return;Y.add(L);let _=X.nodes.find((F)=>F.id===L);if(!_||!Q(_)||_.type===f.CONDITION_GROUP)return;let G=OX(_);q.push(G);let V=X0(X,L,[...n0.CONDITION_OUTPUT,w.THEN_OUTPUT]).filter((F)=>{let z=X.nodes.find((H)=>H.id===F.target);return z&&Q(z)});for(let F of V)W(F.target)}let $=X0(X,Z,[w.CONDITION_GROUP_OUTPUT]).filter((L)=>{let _=X.nodes.find((G)=>G.id===L.target);return _&&Q(_)});for(let L of $)W(L.target);return{conditions:q,operator:J}}function Q2(Z,X){if(X.options.resolveCondition&&X.options.resolveCondition!==Q2)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||R1;if(!Q||!U(Q))return null;if(Q.type===f.CONDITION_GROUP){let{conditions:Y,operator:W}=z9(Z,X);if(Y.length===0)return null;if(Y.length===1)return Y[0];return{operator:W,conditions:Y}}let J=OX(Q);if(X.transformers?.condition){let Y=X.transformers.condition(J,Q);if(Y===null)return null;return Y}let q=X0(X,Z,n0.CONDITION_OUTPUT).filter((Y)=>{let W=X.nodes.find(($)=>$.id===Y.target);return W&&U(W)});if(q.length>0){let Y=q.map((W)=>Q2(W.target,X)).filter((W)=>W!==null);if(Y.length>0)return{operator:"AND",conditions:[J,...Y]}}return J}function PX(Z,X){let Q=X.options.isCondNode||R1,U,J;function q(Y){let W=X.nodes.find((_)=>_.id===Y);if(!W||!Q(W))return;let $=X.edges.filter((_)=>_.source===Y);for(let _ of $){let G=X.nodes.find((V)=>V.id===_.target);if(!G)continue;if(G.type===f.ACTION||G.type===f.ACTION_GROUP||G.type===f.DO)if(_.sourceHandle===w.ELSE_OUTPUT)J=_.target;else U=_.target}let L=X0(X,Y,n0.CONDITION_OUTPUT).filter((_)=>{let G=X.nodes.find((V)=>V.id===_.target);return G&&Q(G)});for(let _ of L)q(_.target)}return q(Z),{thenActionId:U,elseActionId:J}}function m2(Z,X){let Q=X.options.isActNode||Y1,U=X.nodes.find((_)=>_.id===Z);if(!U||U.type!==f.ACTION_GROUP)return{actions:[],mode:"ALL"};let J=U.data.mode||"ALL",q=[],Y=new Set;function W(_){if(Y.has(_))return;Y.add(_);let G=X.nodes.find((z)=>z.id===_);if(!G||!Q(G)||G.type===f.ACTION_GROUP)return;let V=RX(G);q.push(V);let F=X0(X,_,n0.ACTION_OUTPUT).filter((z)=>{let H=X.nodes.find((B)=>B.id===z.target);return H&&Q(H)});for(let z of F)W(z.target)}let $=X0(X,Z,[w.ACTION_GROUP_OUTPUT,w.DO_OUTPUT,"do-output","action-output","action-group-output"]).filter((_)=>{let G=X.nodes.find((V)=>V.id===_.target);return G&&Q(G)});for(let _ of $)W(_.target);let L=X0(X,Z,[w.ACTION_GROUP_CONDITION_OUTPUT,"condition-output"]);for(let _ of L){let G=B0(_.target,X);if(G)q.push(G)}return{actions:q,mode:J}}function B0(Z,X){if(X.options.resolveAction&&X.options.resolveAction!==B0)return X.options.resolveAction(Z,X);let Q=X.nodes.find((q)=>q.id===Z);if(!Q)return null;if(Q.type===f.ACTION_GROUP){if(X.visitedActs?.has(Z))return null;X.visitedActs?.add(Z);let{actions:q,mode:Y}=m2(Z,X);if(q.length===0)return null;return{mode:Y,actions:q}}if(Q.type===f.CONDITION){if(X.options.resolveCondition){let q=X.options.resolveCondition(Z,X);if(q){let{doBranches:Y,elseBranches:W}=d6(Z,X),$=null,L=null;if(Y.length>0){let _=Y[0],G=LJ(_,X);if(G.length>0)$=G.length===1?G[0]:{mode:"ALL",actions:G}}if(W.length>0){let _=W[0],G=LJ(_,X);if(G.length>0)L=G.length===1?G[0]:{mode:"ALL",actions:G}}if(!$&&!L){let _=PX(Z,X);if(_.thenActionId)$=B0(_.thenActionId,X);if(_.elseActionId)L=B0(_.elseActionId,X)}if($||L)return{if:q,then:$??void 0,do:$??void 0,else:L??void 0}}}}if(!(X.options.isActNode||Y1)(Q))return null;if(X.visitedActs?.has(Z))return null;X.visitedActs?.add(Z);let J=RX(Q);if(X.transformers?.action){let q=X.transformers.action(J,Q);if(q===null)return null;return q}return J}function LJ(Z,X){let Q=X.options.isActNode||Y1,U=[],J=X0(X,Z,[w.DO_OUTPUT,w.ELSE_OUTPUT,"do-output","else-output","action-output",""]).filter((q)=>{let Y=X.nodes.find((W)=>W.id===q.target);return Y&&Q(Y)});for(let q of J){let Y=B0(q.target,X);if(Y)U.push(Y)}return U}function d6(Z,X){let Q=X.options.isActNode?($)=>$.type===f.CONDITION||$.type===f.CONDITION_GROUP:($)=>$.type===f.CONDITION||$.type===f.CONDITION_GROUP,U=($)=>$.type===f.DO,J=[],q=[],Y=new Set;function W($){if(Y.has($))return;Y.add($);let L=X0(X,$,[...n0.CONDITION_OUTPUT,w.THEN_OUTPUT]).filter((G)=>{let V=X.nodes.find((F)=>F.id===G.target);return V&&U(V)});for(let G of L){let V=X.nodes.find((z)=>z.id===G.target);if(!V)continue;if(h2(V)===f0.ELSE){if(!q.includes(G.target))q.push(G.target)}else if(!J.includes(G.target))J.push(G.target)}let _=X0(X,$,n0.CONDITION_OUTPUT).filter((G)=>{let V=X.nodes.find((F)=>F.id===G.target);return V&&Q(V)});for(let G of _)W(G.target)}return W(Z),{doBranches:J,elseBranches:q}}function nG(Z,X,Q={},U){let J={...Q,resolveCondition:Q.resolveCondition||Q2,resolveAction:Q.resolveAction||B0};return{nodes:Z,edges:X,visitedConds:new Set,visitedActs:new Set,options:J,transformers:U}}var Vf=h2,tG=MX;function eG(Z,X,Q){let U=X.options.isCondNode||R1,J=F9,q=X0(X,Z,[w.DO_CONDITION_OUTPUT]).find((z)=>{let H=X.nodes.find((B)=>B.id===z.target);return H&&U(H)}),Y;if(q)Y=q.target;if(!Y)return null;let W=new Set(X.visitedConds);X.visitedConds.clear();let $=Q2(Y,X);if(X.visitedConds=W,!$)return null;let{thenActionId:L,elseActionId:_}=KX(Y,X),G=X0(X,Z,[w.DO_CONDITION_OUTPUT]).find((z)=>{let H=X.nodes.find((B)=>B.id===z.target);return H&&(X.options.isActNode?.(H)??Y1(H))});if(G&&!_)_=G.target;let V=L?B0(L,X):void 0,F=_?B0(_,X):void 0;return{if:$,do:V??void 0,else:F??void 0}}function B9(Z,X,Q){let U=X.options.isActNode||Y1,J=[],q=X0(X,Z,n0.DO_OUTPUT).filter((W)=>{let $=X.nodes.find((L)=>L.id===W.target);return $&&U($)});for(let W of q){let $=B0(W.target,X);if($)J.push($)}let Y=eG(Z,X,Q);if(Y)J.push(Y);return J}function KX(Z,X){let Q=X.options.isCondNode||R1,U=X.options.isActNode||Y1,J=F9,q,Y;function W($){let L=X.nodes.find((V)=>V.id===$);if(!L||!Q(L))return;let _=X0(X,$,[w.THEN_OUTPUT,w.ELSE_OUTPUT,w.CONDITION_OUTPUT,w.CONDITION_OUTPUT_LEGACY,w.DO_OUTPUT,""]);for(let V of _){let F=X.nodes.find((z)=>z.id===V.target);if(!F)continue;if(J(F)){let z=X0(X,F.id,[w.DO_OUTPUT,""]).filter((P)=>{let D=X.nodes.find((S)=>S.id===P.target);return D&&U(D)}),H=h2(F);for(let P of z)if(H===f0.ELSE)Y=P.target;else q=P.target;let B=X0(X,F.id,[w.DO_CONDITION_OUTPUT]),K=B.find((P)=>{let D=X.nodes.find((S)=>S.id===P.target);return D&&Q(D)}),T=B.find((P)=>{let D=X.nodes.find((S)=>S.id===P.target);return D&&U(D)});if(T&&!Y)Y=T.target;continue}if(F.type===f.ACTION_GROUP){q=V.target;continue}if(!U(F))continue;if(V.sourceHandle===w.ELSE_OUTPUT)Y=V.target;else q=V.target}let G=X0(X,$,n0.CONDITION_OUTPUT).filter((V)=>{let F=X.nodes.find((z)=>z.id===V.target);return F&&Q(F)});for(let V of G)W(V.target)}return W(Z),{thenActionId:q,elseActionId:Y}}function TX(Z,X,Q={},U){let J=new DX;if(Q.optimizeOptions)J.withOptimizeOptions(Q.optimizeOptions);let q=Q.isEventNode||H9,Y=Q.isCondNode||R1,W=Q.isActNode||Y1,$=Q.extractEventData||tG,L=Z.find((P)=>q(P));if(!L)throw Error("Missing Event Trigger node");let _=$(L);if(!_.id||!_.on)throw Error("Rule ID and Event Name are required");if(J.id(_.id).on(_.on),_.name)J.name(_.name);if(_.description)J.description(_.description);if(_.priority!==void 0)J.priority(Number(_.priority));if(_.enabled!==void 0)J.enabled(!!_.enabled);if(_.cooldown!==void 0)J.cooldown(Number(_.cooldown));if(_.tags)J.tags(_.tags);let G=nG(Z,X,Q,U),V=X.filter((P)=>P.source===L.id),F=[],z=[],H=[],B=[];for(let P of V){let D=G.nodes.find((S)=>S.id===P.target);if(!D)continue;if(D.type===f.CONDITION_GROUP)F.push(P.target);else if(Y(D))z.push(P.target);else if(D.type===f.ACTION_GROUP)H.push(P.target);else if(W(D))B.push(P.target)}for(let P of F){let{conditions:D,operator:S}=z9(P,G);if(D.length>0){let j={operator:S,conditions:D};J.withIf(j);let v=G.edges.filter((s)=>s.source===P&&s.sourceHandle?.startsWith("cond")).map((s)=>s.target),N=null,x=null;for(let s of v){let Q0=KX(s,G),a=Q0.thenActionId?B0(Q0.thenActionId,G):null,V0=Q0.elseActionId?B0(Q0.elseActionId,G):null,{doBranches:K0,elseBranches:y0}=d6(s,G),L1=[];for(let U6 of K0){let WZ=B9(U6,G,s);L1.push(...WZ)}if(L1.length>0)a=L1.length===1?L1[0]:{mode:"ALL",actions:L1};let G1=[];for(let U6 of y0){let WZ=B9(U6,G,s);G1.push(...WZ)}if(G1.length>0)V0=G1.length===1?G1[0]:{mode:"ALL",actions:G1};if(a)N=a;if(V0)x=V0}if(N)J.withDo(N);if(x)J.elseRule(x)}}if(z.length>0&&F.length===0){let P=[],D,S;for(let V0 of z){let K0=Q2(V0,G);if(K0)P.push(K0);let y0=KX(V0,G);if(y0.thenActionId)D=y0.thenActionId;if(y0.elseActionId)S=y0.elseActionId}if(P.length===1)J.withIf(P[0]);else if(P.length>1)J.withIf({operator:"AND",conditions:P});let j=z[0];if(!j)return J;let{doBranches:v,elseBranches:N}=d6(j,G),x=[];for(let V0 of v){let K0=B9(V0,G,j);x.push(...K0)}let s=x.length===1?x[0]:x.length>1?{mode:"ALL",actions:x}:D?B0(D,G):null,Q0=[];for(let V0 of N){let K0=B9(V0,G,j);Q0.push(...K0)}let a=Q0.length===1?Q0[0]:Q0.length>1?{mode:"ALL",actions:Q0}:S?B0(S,G):null;if(s)J.withDo(s);if(a)J.elseRule(a);if(!D&&!x.length)for(let V0 of z){let K0=X0(G,V0,[w.THEN_OUTPUT,w.CONDITION_OUTPUT,"condition-output","then-output","output",""]).filter((y0)=>{return G.nodes.find((G1)=>G1.id===y0.target)?.type===f.ACTION_GROUP});for(let y0 of K0){let{actions:L1,mode:G1}=m2(y0.target,G);if(L1.length>0){let U6={mode:G1,actions:L1};J.withDo(U6);break}}}}let K=new Set;if(z.length>0&&F.length===0)for(let P of z){let D=X0(G,P,[w.THEN_OUTPUT,w.CONDITION_OUTPUT,"condition-output","then-output","output",""]).filter((S)=>{return G.nodes.find((v)=>v.id===S.target)?.type===f.ACTION_GROUP});for(let S of D)K.add(S.target)}let T=H.filter((P)=>!K.has(P));if(T.length>0)for(let P of T)if(X0(G,P,[w.ACTION_GROUP_CONDITION_OUTPUT,"condition-output"]).filter((S)=>{let j=G.nodes.find((v)=>v.id===S.target);return j&&Y(j)}).length>0){let{actions:S,mode:j}=m2(P,G);if(S.length>0){let v={mode:j,actions:S};J.withDo(v)}}else{let{actions:S,mode:j}=m2(P,G);if(S.length>0)J.withDo({mode:j,actions:S})}if(B.length>0&&z.length===0&&F.length===0)for(let P of B){let D=B0(P,G);if(D)J.withDo(D)}return J}function GJ(Z,X,Q={},U){let J=Q.isEventNode||H9,q=Z.filter(($)=>J($));if(q.length===0)return{rules:[],errors:["No Event nodes found in the graph"]};let Y=[],W=[];for(let $ of q)try{let L=$.id,_=new Set([L]),G=[L];while(G.length>0){let B=G.shift(),K=X.filter((T)=>T.source===B);for(let T of K)if(!_.has(T.target))_.add(T.target),G.push(T.target)}let V=Z.filter((B)=>_.has(B.id)),F=X.filter((B)=>_.has(B.source)&&_.has(B.target)),H=TX(V,F,Q,U).build();Y.push(H)}catch(L){let _=L instanceof Error?L.message:String(L);W.push(`Failed to parse rule for event ${$.id}: ${_}`)}return{rules:Y,errors:W}}class DX{rule={enabled:!0,priority:0};optimizeOptions={};static fromGraph(Z,X,Q,U){return TX(Z,X,Q,U)}static fromGraphMultiple(Z,X,Q,U){return GJ(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 k1,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 l6,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 V9(this,Z,X,Q)}whenComplex(Z){let X=new k1,Q=Z(X).build();return new V9(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 J=(q)=>({...q,if:{field:Z,operator:X,value:Q}});if(Array.isArray(U)){let q=U.length-1,Y=U[q];if(Y&&"actions"in Y){let W=Y.actions,$=W.length-1;if($>=0)W[$]=J(W[$])}else if(Y)U[q]=J(Y)}else if(U&&"actions"in U){let q=U.actions,Y=q.length-1;if(Y>=0)q[Y]=J(q[Y])}else if(U)this.rule.do=J(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,J=X[U];if(J&&"actions"in J){let q=J.actions,Y=q.length-1;if(Y>=0)q[Y]=Q(q[Y])}else if(J)X[U]=Q(J)}else if(X&&"actions"in X){let U=X.actions,J=U.length-1;if(J>=0)U[J]=Q(U[J])}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,J=X[U];if(J&&"actions"in J){let q=J.actions,Y=q.length-1;if(Y>=0)q[Y]=Q(q[Y])}else if(J)X[U]=Q(J)}else if(X&&"actions"in X){let U=X.actions,J=U.length-1;if(J>=0)U[J]=Q(U[J])}else if(X)this.rule.do=[Q(X)];return this}elseAction(Z){return this.else(Z)}build(){if(!this.rule.id)throw Error("Rule ID is required");if(!this.rule.on)throw Error("Rule 'on' event is required");if(!this.rule.do)throw Error("Rule 'do' action is required");if(this.rule.if)this.rule.if=u6(this.rule.if,this.optimizeOptions);if(this.rule.do){let Z=p6(this.rule.do,this.optimizeOptions);this.rule.do=Z?Z:this.rule.do}return this.rule}}class V9{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 g3=s3(k3(),1);class eR{static toYaml(Z){let X=Array.isArray(Z)?Z:[Z];return g3.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 g3.default.stringify(Q,{indent:2,lineWidth:0})}static toCleanJson(Z,X=!0){let U=(Array.isArray(Z)?Z:[Z]).map((J)=>this.cleanRule(J));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"),q=(await import("path")).dirname(X);await U.mkdir(q,{recursive:!0}),await U.writeFile(X,Q,"utf8")}else throw Error("saveToFile is only supported in Node.js/Bun environments")}}var YZ=s3(k3(),1);var ZP=["EQ","==","NEQ","!="],XP=["GT",">","GTE",">=","LT","<","LTE","<="],QP=["IN","NOT_IN","RANGE"],UP=["CONTAINS","NOT_CONTAINS","STARTS_WITH","ENDS_WITH"];var RY=[...ZP,...XP,...QP,...UP,"IS_EMPTY","HAS_KEY","MATCHES","SINCE","AFTER","BEFORE","UNTIL","RANGE"],PY=["AND","OR"],KY=["ALL","EITHER","SEQUENCE"];function P0(Z){return typeof Z==="object"&&Z!==null&&!Array.isArray(Z)}function JP(Z){return typeof Z==="string"&&Z.length>0}function qP(Z){return typeof Z==="number"&&!isNaN(Z)}function YP(Z){return typeof Z==="boolean"}function c1(Z){return"operator"in Z&&"conditions"in Z&&(Z.operator==="AND"||Z.operator==="OR")}function i1(Z){return"field"in Z&&"operator"in Z}function v3(Z){return typeof Z==="object"&&Z!==null&&"mode"in Z&&"actions"in Z&&Array.isArray(Z.actions)}function JZ(Z){return typeof Z==="object"&&Z!==null&&"if"in Z}function WP(Z){return typeof Z==="object"&&Z!==null&&"type"in Z}function x3(Z){return typeof Z==="string"&&KY.includes(Z)}function $P(Z){return typeof Z==="string"&&PY.includes(Z)}function LP(Z){return typeof Z==="string"&&zP(RY,Z)}function z4(Z){return Z.type||"log"}function B4(Z){if(!Z.params)return"{}";return typeof Z.params==="string"?Z.params:JSON.stringify(Z.params)}function t2(Z){if(i1(Z))return Z.field||"data";return"data"}function e2(Z){if(i1(Z))return Z.operator||"EQ";if(c1(Z))return Z.operator==="OR"?"OR":"AND";return"EQ"}function Z6(Z){if(i1(Z))return Z.value;return}function h3(Z=0){let X=Z;return()=>`node_${X++}`}function m3(){let Z=0;return()=>`edge_${Date.now()}_${Z++}`}function u3(Z=100,X=100,Q=300,U=150){return(J,q,Y)=>({x:Z+J*Q,y:X+q*U-Y*U/2})}function X6(Z){if(Z===void 0)return[];if(Array.isArray(Z))return Z;return[Z]}function GP(Z){if(!Z)return[];if(Array.isArray(Z))return Z;return[Z]}function _P(Z){if(!Z)return[];if(Array.isArray(Z))return Z;return[Z]}function VP(Z){return Z.replace(/\.(ya?ml)$/i,"")}function HP(Z){return{"==":"EQ","!=":"NEQ",">":"GT",">=":"GTE","<":"LT","<=":"LTE"}[Z]||Z}function FP(Z,X){if(!(X in Z)||Z[X]===void 0||Z[X]===null)throw Error(`Missing required field: ${X}`)}function zP(Z,X){return Z.includes(X)}function BP(Z,X,Q){let U=typeof Z;if(U!==X)throw Error(`Field "${Q}" expected type "${X}", got "${U}"`)}function MP(Z,X,Q){if(typeof Z!=="string"||!X.includes(Z))throw Error(`Field "${Q}" must be one of: ${X.join(", ")}`)}function M4(Z,X,Q,U){if(!P0(Z))throw Error(`Rule at index ${X} is not an object`);let J={...Z};if("actions"in J&&!("do"in J))J.do=J.actions,delete J.actions;if(!("enabled"in J))J.enabled=!0;if(!("priority"in J))J.priority=0;if(!J.id){if(U===!0&&Q){let q=Q.replace(/\.(ya?ml)$/i,"");J.id=q}else if(typeof U==="string")J.id=`${U}-${X}`}if("if"in J&&J.if!==void 0)J.if=qZ(J.if);if("do"in J&&J.do!==void 0)J.do=wY(J.do);if("else"in J&&J.else!==void 0)J.else=AY(J.else);return J}function qZ(Z){if(!Z)return[];if(P0(Z))return TY(Z);if(Array.isArray(Z))return Z.map((X,Q)=>{if(P0(X))return TY(X);throw Error(`Invalid condition at index ${Q}: expected object`)});throw Error("Invalid condition format: expected object or array")}function TY(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=qZ(Z.conditions);return{operator:Y,conditions:Array.isArray(W)?W:[W]}}let{field:U,operator:J,value:q}=Z;return{field:U||"data",operator:J||"EQ",value:q}}function wY(Z){if(!Z)return[];if(P0(Z)&&"mode"in Z&&"actions"in Z)return G2(Z);if(P0(Z))return s1(Z);if(Array.isArray(Z))return Z.map((X,Q)=>{if(P0(X)){if("mode"in X&&"actions"in X)return G2(X);return s1(X)}throw Error(`Invalid action at index ${Q}: expected object`)});throw Error("Invalid do field format: expected object or array")}function AY(Z){if(!Z)return[];if(P0(Z)&&"mode"in Z&&"actions"in Z)return G2(Z);if(P0(Z))return s1(Z);if(Array.isArray(Z))return Z.map((X,Q)=>{if(P0(X)){if("mode"in X&&"actions"in X)return G2(X);return s1(X)}throw Error(`Invalid action at index ${Q}: expected object`)});throw Error("Invalid else field format: expected object or array")}function s1(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:qZ(X.if)};if("then"in X&&X.then!==void 0)U.then=DY(X.then);if("else"in X&&X.else!==void 0)U.else=DY(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 DY(Z){if(!Z)return[];if(P0(Z)&&"mode"in Z&&"actions"in Z)return G2(Z);if(P0(Z))return s1(Z);if(Array.isArray(Z)){let X=[];for(let Q=0;Q<Z.length;Q++){let U=Z[Q];if(P0(U))if("mode"in U&&"actions"in U){let J=G2(U);for(let q of J.actions)X.push(q)}else X.push(s1(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 G2(Z){let X=Z.mode||"ALL";if(!x3(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((J,q)=>{if(P0(J)){if("mode"in J&&"actions"in J)return G2(J);return s1(J)}throw Error(`Invalid action in group at index ${q}: expected object`)});return{mode:X,actions:U}}function OP(Z,X,Q,U){let J=M4(Z,X,Q,U);if(!J.on)throw Error(`Rule at index ${X} missing required field: on`);return J}function RP(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 SY(Z,X,Q){return{id:X,type:f.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 CY(Z,X,Q){return{id:X,type:f.CONDITION_GROUP,position:Q,data:{operator:Z}}}function O4(Z,X,Q,U,J){return{id:U,type:f.CONDITION,position:J,data:{field:Z||"data",operator:X||"EQ",value:Q??""}}}function p3(Z,X,Q){return{id:X,type:f.DO,position:Q,data:{branchType:Z}}}function NY(Z,X,Q){let U,J,q,Y,W,$,L;if(JZ(Z)){let G=Z.if;if(G){let H=(Array.isArray(G)?G:[G])[0];if(H&&i1(H))U=H.field,J=H.operator,q=H.value!==void 0?typeof H.value==="string"?H.value:JSON.stringify(H.value):void 0}let V=Z.then;if(V){let z=Array.isArray(V)?V:[V];if(z[0])Y=z4(z[0]),W=B4(z[0])}let F=Z.else;if(F){let z=Array.isArray(F)?F:[F];if(z[0])$=z4(z[0]),L=B4(z[0])}}let _={type:z4(Z),params:B4(Z)};if(U)_.conditionField=U;if(J)_.conditionOperator=J;if(q!==void 0)_.conditionValue=q;if(Y)_.thenType=Y;if(W)_.thenParams=W;if($)_.elseType=$;if(L)_.elseParams=L;return{id:X,type:f.ACTION,position:Q,data:_}}function jY(Z,X,Q){return{id:X,type:f.ACTION_GROUP,position:Q,data:{mode:Z||"SEQUENCE"}}}function c0(Z,X,Q,U,J){return{id:J?J():`edge_${Z}_${X}_${Date.now()}`,source:Z,target:X,sourceHandle:Q??null,targetHandle:U??null}}function PP(Z,X={}){let Q=[],U=[],J=[];if(!Z.id)J.push("Missing required field: id");if(!Z.on)J.push("Missing required field: on (event trigger)");if(!Z.do&&Z.do!=="")J.push("Missing required field: do (actions)");if(J.length>0)return{nodes:[],edges:[],valid:!1,errors:J};let q=X.startNodeId||"event-node",Y=h3(0),W=m3(),$=u3();try{let L=SY(Z,q,X.startPosition||{x:100,y:300});Q.push(L);let _=X6(Z.if);if(_.length>0){let{conditionNodes:G,groupNodeId:V}=KP(_,Q,U,L.id,Y,$),F=X6(Z.do);if(F.length>0){let H=G.length>0?G[G.length-1].id:V||L.id;Q6(F,Q,U,H,Y,W,$,"do")}let z=X6(Z.else);if(z.length>0){let H=G.length>0?G[G.length-1].id:V||L.id;Q6(z,Q,U,H,Y,W,$,"else")}}else{let G=X6(Z.do);if(G.length>0)Q6(G,Q,U,L.id,Y,W,$,"do")}return{nodes:Q,edges:U,valid:!0,errors:[]}}catch(L){let _=L instanceof Error?L.message:"Unknown error during conversion";return J.push(_),{nodes:Q,edges:U,valid:!1,errors:J}}}function KP(Z,X,Q,U,J,q){let Y=[],W,$=Z.length>1,L=Z.some(c1);if($||L){W=J();let _="AND",G=Z.find(c1);if(G&&c1(G))_=G.operator;let V=CY(_,W,q(1,0,1));X.push(V),Q.push(c0(U,W,null,w.CONDITION_GROUP_INPUT,void 0));let F=null;Z.forEach((z,H)=>{let B,K;if(c1(z)){if(z.conditions)z.conditions.forEach((T,P)=>{if(c1(T))return;if(B=J(),K=O4(t2(T),e2(T),Z6(T),B,q(2,H*2+P,Z.length*2)),X.push(K),Y.push(K),F)Q.push(c0(F,B,w.CONDITION_OUTPUT,w.CONDITION_INPUT,void 0));else Q.push(c0(W,B,w.CONDITION_GROUP_OUTPUT,w.CONDITION_INPUT,void 0));F=B})}else{if(B=J(),K=O4(t2(z),e2(z),Z6(z),B,q(2,H,Z.length)),X.push(K),Y.push(K),F)Q.push(c0(F,B,w.CONDITION_OUTPUT,w.CONDITION_INPUT,void 0));else Q.push(c0(W,B,w.CONDITION_GROUP_OUTPUT,w.CONDITION_INPUT,void 0));F=B}})}else{let _=J(),G=O4(t2(Z[0]),e2(Z[0]),Z6(Z[0]),_,q(1,0,1));X.push(G),Y.push(G),Q.push(c0(U,_,null,w.CONDITION_INPUT,void 0))}return{conditionNodes:Y,groupNodeId:W}}function Q6(Z,X,Q,U,J,q,Y,W){Z.forEach(($,L)=>{if(v3($)){let H=J(),B=X.find((D)=>D.id===U)?.position||{x:100,y:100},K=jY($.mode,H,{x:B.x+300,y:B.y+L*75});X.push(K);let T=X.find((D)=>D.id===U),P;if(T?.type===f.EVENT)P=w.EVENT_OUTPUT;else if(T?.type===f.CONDITION)P=w.CONDITION_OUTPUT;else if(T?.type===f.CONDITION_GROUP)P=w.CONDITION_GROUP_OUTPUT;else if(T?.type===f.ACTION_GROUP)P=w.ACTION_GROUP_OUTPUT;else if(T?.type===f.DO)P=w.DO_OUTPUT;else P=W===f0.ELSE?w.ELSE_OUTPUT:w.THEN_OUTPUT;Q.push(c0(U,H,P,w.ACTION_GROUP_INPUT,q)),Q6($.actions,X,Q,H,J,q,Y,W);return}if(JZ($)){let B=$.if,K=Array.isArray(B)?B[0]:B;if(K&&i1(K)){let T=J(),P=Y(2,L,Z.length),D=O4(t2(K),e2(K),Z6(K),T,{x:P.x+300,y:P.y});X.push(D);let S=X.find((x)=>x.id===U),j;if(S?.type===f.EVENT)j=w.EVENT_OUTPUT;else if(S?.type===f.ACTION_GROUP)j=w.ACTION_GROUP_CONDITION_OUTPUT;else if(S?.type===f.CONDITION)j=w.CONDITION_OUTPUT;else if(S?.type===f.DO)j=w.DO_OUTPUT;else j=W===f0.ELSE?w.CONDITION_OUTPUT:w.CONDITION_OUTPUT;Q.push(c0(U,T,j,w.CONDITION_INPUT,q));let v=$.then;if(v){let x=J(),s=p3("do",x,{x:D.position.x+300,y:D.position.y-100});X.push(s),Q.push(c0(T,x,w.CONDITION_OUTPUT,w.DO_INPUT,q));let Q0=Array.isArray(v)?v:[v];Q6(Q0,X,Q,x,J,q,(V0,K0,y0)=>{return{x:s.position.x+300,y:s.position.y-K0*150}},"do")}let N=$.else;if(N){let x=J(),s=p3("else",x,{x:D.position.x+300,y:D.position.y+100});X.push(s),Q.push(c0(T,x,w.CONDITION_OUTPUT,w.DO_INPUT,q));let Q0=Array.isArray(N)?N:[N];Q6(Q0,X,Q,x,J,q,(V0,K0,y0)=>{return{x:s.position.x+300,y:s.position.y+K0*150}},"else")}}return}let _=J(),G=X.find((H)=>H.id===U)?.position||{x:700,y:100},V=NY($,_,{x:G.x+300,y:G.y+L*150});X.push(V);let F=X.find((H)=>H.id===U),z;if(F?.type===f.EVENT)z=w.EVENT_OUTPUT;else if(F?.type===f.CONDITION)z=w.CONDITION_OUTPUT;else if(F?.type===f.CONDITION_GROUP)z=w.CONDITION_GROUP_OUTPUT;else if(F?.type===f.ACTION_GROUP)z=w.ACTION_GROUP_OUTPUT;else if(F?.type===f.DO)z=w.DO_OUTPUT;else z=W===f0.ELSE?w.CONDITION_OUTPUT:w.CONDITION_OUTPUT;Q.push(c0(U,_,z,w.ACTION_INPUT,q))})}function EY(Z,X={}){let{autoId:Q=!1,filename:U,throwOnError:J=!1,multiDocument:q=!0}=X,Y=[],W=[];try{let L;if(q){let G=YZ.parseAllDocuments(Z);for(let V of G)if(V.errors&&V.errors.length>0){let F=V.errors.map((z)=>z.message).join(", ");throw Error(`YAML syntax error: ${F}`)}L=G.map((V)=>V.toJS())}else{let G=YZ.parse(Z);L=Array.isArray(G)?[G]:[G]}let _=[];L.forEach((G)=>{if(Array.isArray(G))_.push(...G);else _.push(G)}),_.forEach((G,V)=>{try{let F;if(Q&&!U)F={...M4(G,V),id:`rule-${V}`};else F=M4(G,V,U,Q);let z=FX.validate(F);if(z.valid)W.push(z.rule);else Y.push({index:V,message:`Validation failed for rule at index ${V}`,issues:z.issues.map((H)=>({path:H.path,message:H.message,suggestion:H.suggestion}))})}catch(F){let z=F instanceof Error?F.message:`Unknown error at index ${V}`;Y.push({index:V,message:z})}})}catch(L){let _=L instanceof Error?L.message:"Unknown parsing error";Y.push({index:-1,message:`Failed to parse YAML: ${_}`})}let $={rules:W,errors:Y,valid:Y.length===0&&W.length>0};if(J&&!$.valid){let L=$.errors.map((_)=>{let G=`Rule ${_.index}: ${_.message}`;if(_.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
- `+_.issues.map((V)=>` - [${V.path}] ${V.message}`).join(`
186
+ `+V.issues.map((_)=>` - [${_.path}] ${_.message}`).join(`
187
187
  `);return G}).join(`
188
188
  `);throw Error(`YAML parsing failed:
189
- ${L}`)}return $}function $k(Z,X={}){return EY(Z,{...X,multiDocument:!1})}function Lk(Z,X={}){let Q=EY(Z,{...X,throwOnError:!0});if(Q.rules.length===0)throw Error("No valid rules found in YAML");return Q.rules[0]}var Tk={id:{description:"Unique identifier for this rule",examples:["my-rule-1","donation-handler","user-login-tracker"]},name:{description:"Human-readable name for the rule",examples:["Donation Handler","User Login Tracker"]},description:{description:"Detailed description of what this rule does"},on:{description:"The event name that triggers this rule",values:"String event name (e.g., `Donation`, `UserLogin`, `minecraft:player_join`)",examples:["Donation","UserLogin","minecraft:player_join","COMMAND"]},if:{description:"Condition(s) that must be met for the rule to execute",values:"Single condition object, array of conditions, or condition group with AND/OR operator"},do:{description:"Action(s) to execute when conditions are met",values:"Single action object, array of actions, or action group with mode (ALL, SEQUENCE, EITHER)"},priority:{description:"Execution priority (higher values execute first)",values:"Integer number",examples:["1","10","100"]},enabled:{description:"Whether this rule is active",values:"Boolean: `true` or `false`",examples:["true","false"]},cooldown:{description:"Minimum time in milliseconds between executions",values:"Non-negative integer (milliseconds)",examples:["1000","5000","60000"]},tags:{description:"Tags for categorizing and organizing rules",values:"Array of strings",examples:['["gameplay", "monetization"]','["debug", "test"]']},comment:{description:"Internal developer note (not used in execution)"}},Dk={EQ:{description:"Equal to (==)",valueType:"Any value",examples:["value: 100",'value: "hello"',"value: true"]},"==":{description:"Equal to (same as EQ)",valueType:"Any value",examples:["value: 100",'value: "hello"']},NEQ:{description:"Not equal to (!=)",valueType:"Any value",examples:["value: 0",'value: "goodbye"']},"!=":{description:"Not equal to (same as NEQ)",valueType:"Any value",examples:["value: 0"]},GT:{description:"Greater than (>)",valueType:"Number or expression string",examples:["value: 100",'value: "${state.count}"']},">":{description:"Greater than (same as GT)",valueType:"Number or expression string",examples:["value: 50"]},GTE:{description:"Greater than or equal to (>=)",valueType:"Number or expression string",examples:["value: 100"]},">=":{description:"Greater than or equal to (same as GTE)",valueType:"Number or expression string",examples:["value: 100"]},LT:{description:"Less than (<)",valueType:"Number or expression string",examples:["value: 100"]},"<":{description:"Less than (same as LT)",valueType:"Number or expression string",examples:["value: 50"]},LTE:{description:"Less than or equal to (<=)",valueType:"Number or expression string",examples:["value: 100"]},"<=":{description:"Less than or equal to (same as LTE)",valueType:"Number or expression string",examples:["value: 100"]},IN:{description:"Value is in the given list",valueType:"Array of values",examples:["value: [1, 2, 3]",'value: ["a", "b", "c"]']},NOT_IN:{description:"Value is not in the given list",valueType:"Array of values",examples:["value: [0, null]"]},CONTAINS:{description:"String contains substring, or array includes item",valueType:"String (for substring) or Array (for item check)",examples:['value: "hello"','value: ["item1", "item2"]']},NOT_CONTAINS:{description:"String does not contain substring, or array does not include item",valueType:"String (for substring) or Array (for item check)",examples:['value: "spam"','value: ["excluded"]']},STARTS_WITH:{description:"String starts with the specified prefix",valueType:"String",examples:['value: "https://"','value: "user_"']},ENDS_WITH:{description:"String ends with the specified suffix",valueType:"String",examples:['value: ".com"','value: "_admin"']},IS_EMPTY:{description:"Value is empty (string, array, object, or null)",valueType:"No value required",examples:["(no value needed)"]},IS_NULL:{description:"Value is null or undefined",valueType:"No value required",examples:["(no value needed)"]},IS_NONE:{description:"Alias for IS_NULL",valueType:"No value required",examples:["(no value needed)"]},HAS_KEY:{description:"Object has the specified key",valueType:"String (key name)",examples:['value: "userId"','value: "role"']},MATCHES:{description:"Value matches the regular expression pattern",valueType:"String (regex pattern)",examples:['value: "^[A-Z].*"','value: "\\\\d{3}-\\\\d{4}"']},RANGE:{description:"Value is within the specified range [min, max] (inclusive)",valueType:"Array of exactly 2 numbers: [min, max]",examples:["value: [0, 100]","value: [1, 10]"]},SINCE:{description:"Date/time is after or equal to the specified value",valueType:"Date string or timestamp",examples:['value: "2024-01-01"']},AFTER:{description:"Date/time is after the specified value (alias for SINCE)",valueType:"Date string or timestamp",examples:['value: "2024-01-01T00:00:00Z"']},BEFORE:{description:"Date/time is before the specified value",valueType:"Date string or timestamp",examples:['value: "2024-12-31"']},UNTIL:{description:"Date/time is before or equal to the specified value (alias for BEFORE)",valueType:"Date string or timestamp",examples:['value: "2024-12-31T23:59:59Z"']},AND:{description:"Logical AND - all conditions must be true",valueType:"Used in condition groups",examples:[`operator: AND
189
+ ${L}`)}return $}function Vk(Z,X={}){return kY(Z,{...X,multiDocument:!1})}function _k(Z,X={}){let Q=kY(Z,{...X,throwOnError:!0});if(Q.rules.length===0)throw Error("No valid rules found in YAML");return Q.rules[0]}var Ak={id:{description:"Unique identifier for this rule",examples:["my-rule-1","donation-handler","user-login-tracker"]},name:{description:"Human-readable name for the rule",examples:["Donation Handler","User Login Tracker"]},description:{description:"Detailed description of what this rule does"},on:{description:"The event name that triggers this rule",values:"String event name (e.g., `Donation`, `UserLogin`, `minecraft:player_join`)",examples:["Donation","UserLogin","minecraft:player_join","COMMAND"]},if:{description:"Condition(s) that must be met for the rule to execute",values:"Single condition object, array of conditions, or condition group with AND/OR operator"},do:{description:"Action(s) to execute when conditions are met",values:"Single action object, array of actions, or action group with mode (ALL, SEQUENCE, EITHER)"},priority:{description:"Execution priority (higher values execute first)",values:"Integer number",examples:["1","10","100"]},enabled:{description:"Whether this rule is active",values:"Boolean: `true` or `false`",examples:["true","false"]},cooldown:{description:"Minimum time in milliseconds between executions",values:"Non-negative integer (milliseconds)",examples:["1000","5000","60000"]},tags:{description:"Tags for categorizing and organizing rules",values:"Array of strings",examples:['["gameplay", "monetization"]','["debug", "test"]']},comment:{description:"Internal developer note (not used in execution)"}},Sk={EQ:{description:"Equal to (==)",valueType:"Any value",examples:["value: 100",'value: "hello"',"value: true"]},"==":{description:"Equal to (same as EQ)",valueType:"Any value",examples:["value: 100",'value: "hello"']},NEQ:{description:"Not equal to (!=)",valueType:"Any value",examples:["value: 0",'value: "goodbye"']},"!=":{description:"Not equal to (same as NEQ)",valueType:"Any value",examples:["value: 0"]},GT:{description:"Greater than (>)",valueType:"Number or expression string",examples:["value: 100",'value: "${vars.count}"']},">":{description:"Greater than (same as GT)",valueType:"Number or expression string",examples:["value: 50"]},GTE:{description:"Greater than or equal to (>=)",valueType:"Number or expression string",examples:["value: 100"]},">=":{description:"Greater than or equal to (same as GTE)",valueType:"Number or expression string",examples:["value: 100"]},LT:{description:"Less than (<)",valueType:"Number or expression string",examples:["value: 100"]},"<":{description:"Less than (same as LT)",valueType:"Number or expression string",examples:["value: 50"]},LTE:{description:"Less than or equal to (<=)",valueType:"Number or expression string",examples:["value: 100"]},"<=":{description:"Less than or equal to (same as LTE)",valueType:"Number or expression string",examples:["value: 100"]},IN:{description:"Value is in the given list",valueType:"Array of values",examples:["value: [1, 2, 3]",'value: ["a", "b", "c"]']},NOT_IN:{description:"Value is not in the given list",valueType:"Array of values",examples:["value: [0, null]"]},CONTAINS:{description:"String contains substring, or array includes item",valueType:"String (for substring) or Array (for item check)",examples:['value: "hello"','value: ["item1", "item2"]']},NOT_CONTAINS:{description:"String does not contain substring, or array does not include item",valueType:"String (for substring) or Array (for item check)",examples:['value: "spam"','value: ["excluded"]']},STARTS_WITH:{description:"String starts with the specified prefix",valueType:"String",examples:['value: "https://"','value: "user_"']},ENDS_WITH:{description:"String ends with the specified suffix",valueType:"String",examples:['value: ".com"','value: "_admin"']},IS_EMPTY:{description:"Value is empty (string, array, object, or null)",valueType:"No value required",examples:["(no value needed)"]},IS_NULL:{description:"Value is null or undefined",valueType:"No value required",examples:["(no value needed)"]},IS_NONE:{description:"Alias for IS_NULL",valueType:"No value required",examples:["(no value needed)"]},HAS_KEY:{description:"Object has the specified key",valueType:"String (key name)",examples:['value: "userId"','value: "role"']},MATCHES:{description:"Value matches the regular expression pattern",valueType:"String (regex pattern)",examples:['value: "^[A-Z].*"','value: "\\\\d{3}-\\\\d{4}"']},RANGE:{description:"Value is within the specified range [min, max] (inclusive)",valueType:"Array of exactly 2 numbers: [min, max]",examples:["value: [0, 100]","value: [1, 10]"]},SINCE:{description:"Date/time is after or equal to the specified value",valueType:"Date string or timestamp",examples:['value: "2024-01-01"']},AFTER:{description:"Date/time is after the specified value (alias for SINCE)",valueType:"Date string or timestamp",examples:['value: "2024-01-01T00:00:00Z"']},BEFORE:{description:"Date/time is before the specified value",valueType:"Date string or timestamp",examples:['value: "2024-12-31"']},UNTIL:{description:"Date/time is before or equal to the specified value (alias for BEFORE)",valueType:"Date string or timestamp",examples:['value: "2024-12-31T23:59:59Z"']},AND:{description:"Logical AND - all conditions must be true",valueType:"Used in condition groups",examples:[`operator: AND
190
190
  conditions:
191
191
  - field: data.x
192
192
  operator: GT
@@ -194,6 +194,6 @@ conditions:
194
194
  conditions:
195
195
  - field: data.x
196
196
  operator: EQ
197
- value: 1`]}},wk={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"}},Ak={type:{description:"The type of action to perform",values:"String action type (e.g., `log`, `execute`, `notify`, `STATE_SET`, `EMIT_EVENT`)"},params:{description:"Parameters for the action (varies by action type)",values:"Object with action-specific parameters"},run:{description:"Direct script execution block (JavaScript-like syntax)",values:"String block of code"},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"}},Sk={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"]},STATE_SET:{description:"Updates a value in the global state manager",params:["key: string","value: any"]},STATE_OP:{description:"Performs direct operations on state using a script",params:["run: string"]}};export{RP as validateRule,MP as validateFieldValue,BP as validateFieldType,PP as triggerRuleToNodes,p0 as triggerEmitter,L9 as ruleEvents,FP as requireField,EY as parseYamlRules,Lk as parseYamlRuleStrict,$k as parseYamlRule,GJ as parseGraphToRules,TX as parseGraph,u6 as optimizeCondition,p6 as optimizeAction,OP as normalizeRuleAdvanced,M4 as normalizeRule,HP as normalizeOperator,AY as normalizeElseField,wY as normalizeDoField,_P as normalizeConditionsUtils,qZ as normalizeConditions,GP as normalizeActions,s1 as normalizeAction,qP as isValidNumber,x3 as isValidExecutionMode,$P as isValidConditionOperator,LP as isValidComparisonOperator,i1 as isSimpleCondition,WP as isSimpleAction,P0 as isObject,JP as isNonEmptyString,c1 as isConditionGroup,YP as isBoolean,v3 as isActionGroup,JZ as hasConditionalExecution,Z6 as getConditionValue,e2 as getConditionOperator,t2 as getConditionField,z4 as getActionType,B4 as getActionParams,VP as generateRuleIdFromFilename,KX as findTerminalActions,X6 as ensureArray,Rb as engineEvents,Vf as defaultGetDoBranchType,tG as defaultExtractEventData,u3 as createPositionCalculator,nG as createParserContext,h3 as createNodeIdGenerator,m3 as createEdgeIdGenerator,B9 as collectDoActions,SY as buildEventNode,c0 as buildEdge,p3 as buildDoNode,O4 as buildConditionNode,CY as buildConditionGroupNode,NY as buildActionNode,jY as buildActionGroupNode,FX as TriggerValidator,HX as TriggerUtils,Db as TriggerSystem,oG as TriggerRuleSchema,m6 as TriggerEngine,GX as TriggerEmitter,z0 as StateManager,eR as RuleExporter,lG as RuleEvents,$9 as RuleEvent,n7 as RuleEngine,HI as RuleConditionSchema,DX as RuleBuilder,zX as ParamsBuilder,Dk as OPERATOR_DOCS,f as NodeType,u0 as MathFunctions,BI as InlineConditionalActionSchema,$X as InMemoryPersistence,w as HandleId,Tk as FIELD_DOCS,j0 as ExpressionEngine,pG as Events,dG as EventQueue,VX as ErrorMessages,x2 as EngineEvent,m6 as Engine,G9 as DebugMessages,_X as ControlFlow,hG as ContextKeys,iG as ContextAdapter,V9 as ConditionalActionBuilder,_I as ConditionSchema,BX as ConditionOperator,VI as ConditionGroupSchema,k1 as ConditionBuilder,GI as ComparisonOperatorSchema,wk as CONDITION_FIELD_DOCS,R0 as BuiltInAction,cG as BrowserPersistence,f0 as BranchType,uG as Actions,FI as ActionSchema,h6 as ActionRegistry,zI as ActionGroupSchema,l6 as ActionBuilder,Sk as ACTION_TYPE_DOCS,Ak 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=4A21D319D1C873F964756E2164756E21
199
+ //# debugId=BE754F6A92594B7764756E2164756E21