@kindlm/cli 0.2.0 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +198 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +198 -8
- package/dist/index.js.map +1 -1
- package/dist/kindlm.js +202 -12
- package/dist/kindlm.js.map +1 -1
- package/package.json +1 -2
package/dist/kindlm.js
CHANGED
|
@@ -1,5 +1,157 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
2
|
+
var v$=Object.create;var Jc=Object.defineProperty;var _$=Object.getOwnPropertyDescriptor;var b$=Object.getOwnPropertyNames;var w$=Object.getPrototypeOf,$$=Object.prototype.hasOwnProperty;var ka=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var _=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),S$=(t,e)=>{for(var r in e)Jc(t,r,{get:e[r],enumerable:!0})},k$=(t,e,r,s)=>{if(e&&typeof e=="object"||typeof e=="function")for(let n of b$(e))!$$.call(t,n)&&n!==r&&Jc(t,n,{get:()=>e[n],enumerable:!(s=_$(e,n))||s.enumerable});return t};var Hc=(t,e,r)=>(r=t!=null?v$(w$(t)):{},k$(e||!t||!t.__esModule?Jc(r,"default",{value:t,enumerable:!0}):r,t));var Q=_(Te=>{"use strict";var Zc=Symbol.for("yaml.alias"),Tm=Symbol.for("yaml.document"),Ca=Symbol.for("yaml.map"),Nm=Symbol.for("yaml.pair"),Qc=Symbol.for("yaml.scalar"),Aa=Symbol.for("yaml.seq"),Wt=Symbol.for("yaml.node.type"),LS=t=>!!t&&typeof t=="object"&&t[Wt]===Zc,FS=t=>!!t&&typeof t=="object"&&t[Wt]===Tm,US=t=>!!t&&typeof t=="object"&&t[Wt]===Ca,VS=t=>!!t&&typeof t=="object"&&t[Wt]===Nm,Pm=t=>!!t&&typeof t=="object"&&t[Wt]===Qc,KS=t=>!!t&&typeof t=="object"&&t[Wt]===Aa;function Om(t){if(t&&typeof t=="object")switch(t[Wt]){case Ca:case Aa:return!0}return!1}function zS(t){if(t&&typeof t=="object")switch(t[Wt]){case Zc:case Ca:case Qc:case Aa:return!0}return!1}var BS=t=>(Pm(t)||Om(t))&&!!t.anchor;Te.ALIAS=Zc;Te.DOC=Tm;Te.MAP=Ca;Te.NODE_TYPE=Wt;Te.PAIR=Nm;Te.SCALAR=Qc;Te.SEQ=Aa;Te.hasAnchor=BS;Te.isAlias=LS;Te.isCollection=Om;Te.isDocument=FS;Te.isMap=US;Te.isNode=zS;Te.isPair=VS;Te.isScalar=Pm;Te.isSeq=KS});var Ln=_(Xc=>{"use strict";var Se=Q(),ze=Symbol("break visit"),Cm=Symbol("skip children"),It=Symbol("remove node");function Ra(t,e){let r=Am(e);Se.isDocument(t)?Vs(null,t.contents,r,Object.freeze([t]))===It&&(t.contents=null):Vs(null,t,r,Object.freeze([]))}Ra.BREAK=ze;Ra.SKIP=Cm;Ra.REMOVE=It;function Vs(t,e,r,s){let n=Rm(t,e,r,s);if(Se.isNode(n)||Se.isPair(n))return Im(t,s,n),Vs(t,n,r,s);if(typeof n!="symbol"){if(Se.isCollection(e)){s=Object.freeze(s.concat(e));for(let i=0;i<e.items.length;++i){let a=Vs(i,e.items[i],r,s);if(typeof a=="number")i=a-1;else{if(a===ze)return ze;a===It&&(e.items.splice(i,1),i-=1)}}}else if(Se.isPair(e)){s=Object.freeze(s.concat(e));let i=Vs("key",e.key,r,s);if(i===ze)return ze;i===It&&(e.key=null);let a=Vs("value",e.value,r,s);if(a===ze)return ze;a===It&&(e.value=null)}}return n}async function Ia(t,e){let r=Am(e);Se.isDocument(t)?await Ks(null,t.contents,r,Object.freeze([t]))===It&&(t.contents=null):await Ks(null,t,r,Object.freeze([]))}Ia.BREAK=ze;Ia.SKIP=Cm;Ia.REMOVE=It;async function Ks(t,e,r,s){let n=await Rm(t,e,r,s);if(Se.isNode(n)||Se.isPair(n))return Im(t,s,n),Ks(t,n,r,s);if(typeof n!="symbol"){if(Se.isCollection(e)){s=Object.freeze(s.concat(e));for(let i=0;i<e.items.length;++i){let a=await Ks(i,e.items[i],r,s);if(typeof a=="number")i=a-1;else{if(a===ze)return ze;a===It&&(e.items.splice(i,1),i-=1)}}}else if(Se.isPair(e)){s=Object.freeze(s.concat(e));let i=await Ks("key",e.key,r,s);if(i===ze)return ze;i===It&&(e.key=null);let a=await Ks("value",e.value,r,s);if(a===ze)return ze;a===It&&(e.value=null)}}return n}function Am(t){return typeof t=="object"&&(t.Collection||t.Node||t.Value)?Object.assign({Alias:t.Node,Map:t.Node,Scalar:t.Node,Seq:t.Node},t.Value&&{Map:t.Value,Scalar:t.Value,Seq:t.Value},t.Collection&&{Map:t.Collection,Seq:t.Collection},t):t}function Rm(t,e,r,s){if(typeof r=="function")return r(t,e,s);if(Se.isMap(e))return r.Map?.(t,e,s);if(Se.isSeq(e))return r.Seq?.(t,e,s);if(Se.isPair(e))return r.Pair?.(t,e,s);if(Se.isScalar(e))return r.Scalar?.(t,e,s);if(Se.isAlias(e))return r.Alias?.(t,e,s)}function Im(t,e,r){let s=e[e.length-1];if(Se.isCollection(s))s.items[t]=r;else if(Se.isPair(s))t==="key"?s.key=r:s.value=r;else if(Se.isDocument(s))s.contents=r;else{let n=Se.isAlias(s)?"alias":"scalar";throw new Error(`Cannot replace node with ${n} parent`)}}Xc.visit=Ra;Xc.visitAsync=Ia});var el=_(xm=>{"use strict";var Mm=Q(),JS=Ln(),HS={"!":"%21",",":"%2C","[":"%5B","]":"%5D","{":"%7B","}":"%7D"},GS=t=>t.replace(/[!,[\]{}]/g,e=>HS[e]),Fn=class t{constructor(e,r){this.docStart=null,this.docEnd=!1,this.yaml=Object.assign({},t.defaultYaml,e),this.tags=Object.assign({},t.defaultTags,r)}clone(){let e=new t(this.yaml,this.tags);return e.docStart=this.docStart,e}atDocument(){let e=new t(this.yaml,this.tags);switch(this.yaml.version){case"1.1":this.atNextDocument=!0;break;case"1.2":this.atNextDocument=!1,this.yaml={explicit:t.defaultYaml.explicit,version:"1.2"},this.tags=Object.assign({},t.defaultTags);break}return e}add(e,r){this.atNextDocument&&(this.yaml={explicit:t.defaultYaml.explicit,version:"1.1"},this.tags=Object.assign({},t.defaultTags),this.atNextDocument=!1);let s=e.trim().split(/[ \t]+/),n=s.shift();switch(n){case"%TAG":{if(s.length!==2&&(r(0,"%TAG directive should contain exactly two parts"),s.length<2))return!1;let[i,a]=s;return this.tags[i]=a,!0}case"%YAML":{if(this.yaml.explicit=!0,s.length!==1)return r(0,"%YAML directive should contain exactly one part"),!1;let[i]=s;if(i==="1.1"||i==="1.2")return this.yaml.version=i,!0;{let a=/^\d+\.\d+$/.test(i);return r(6,`Unsupported YAML version ${i}`,a),!1}}default:return r(0,`Unknown directive ${n}`,!0),!1}}tagName(e,r){if(e==="!")return"!";if(e[0]!=="!")return r(`Not a valid tag: ${e}`),null;if(e[1]==="<"){let a=e.slice(2,-1);return a==="!"||a==="!!"?(r(`Verbatim tags aren't resolved, so ${e} is invalid.`),null):(e[e.length-1]!==">"&&r("Verbatim tags must end with a >"),a)}let[,s,n]=e.match(/^(.*!)([^!]*)$/s);n||r(`The ${e} tag has no suffix`);let i=this.tags[s];if(i)try{return i+decodeURIComponent(n)}catch(a){return r(String(a)),null}return s==="!"?e:(r(`Could not resolve tag: ${e}`),null)}tagString(e){for(let[r,s]of Object.entries(this.tags))if(e.startsWith(s))return r+GS(e.substring(s.length));return e[0]==="!"?e:`!<${e}>`}toString(e){let r=this.yaml.explicit?[`%YAML ${this.yaml.version||"1.2"}`]:[],s=Object.entries(this.tags),n;if(e&&s.length>0&&Mm.isNode(e.contents)){let i={};JS.visit(e.contents,(a,o)=>{Mm.isNode(o)&&o.tag&&(i[o.tag]=!0)}),n=Object.keys(i)}else n=[];for(let[i,a]of s)i==="!!"&&a==="tag:yaml.org,2002:"||(!e||n.some(o=>o.startsWith(a)))&&r.push(`%TAG ${i} ${a}`);return r.join(`
|
|
3
|
+
`)}};Fn.defaultYaml={explicit:!1,version:"1.2"};Fn.defaultTags={"!!":"tag:yaml.org,2002:"};xm.Directives=Fn});var Ma=_(Un=>{"use strict";var jm=Q(),YS=Ln();function WS(t){if(/[\x00-\x19\s,[\]{}]/.test(t)){let r=`Anchor must not contain whitespace or control characters: ${JSON.stringify(t)}`;throw new Error(r)}return!0}function qm(t){let e=new Set;return YS.visit(t,{Value(r,s){s.anchor&&e.add(s.anchor)}}),e}function Dm(t,e){for(let r=1;;++r){let s=`${t}${r}`;if(!e.has(s))return s}}function ZS(t,e){let r=[],s=new Map,n=null;return{onAnchor:i=>{r.push(i),n??(n=qm(t));let a=Dm(e,n);return n.add(a),a},setAnchors:()=>{for(let i of r){let a=s.get(i);if(typeof a=="object"&&a.anchor&&(jm.isScalar(a.node)||jm.isCollection(a.node)))a.node.anchor=a.anchor;else{let o=new Error("Failed to resolve repeated object (this should not happen)");throw o.source=i,o}}},sourceObjects:s}}Un.anchorIsValid=WS;Un.anchorNames=qm;Un.createNodeAnchors=ZS;Un.findNewAnchor=Dm});var tl=_(Lm=>{"use strict";function Vn(t,e,r,s){if(s&&typeof s=="object")if(Array.isArray(s))for(let n=0,i=s.length;n<i;++n){let a=s[n],o=Vn(t,s,String(n),a);o===void 0?delete s[n]:o!==a&&(s[n]=o)}else if(s instanceof Map)for(let n of Array.from(s.keys())){let i=s.get(n),a=Vn(t,s,n,i);a===void 0?s.delete(n):a!==i&&s.set(n,a)}else if(s instanceof Set)for(let n of Array.from(s)){let i=Vn(t,s,n,n);i===void 0?s.delete(n):i!==n&&(s.delete(n),s.add(i))}else for(let[n,i]of Object.entries(s)){let a=Vn(t,s,n,i);a===void 0?delete s[n]:a!==i&&(s[n]=a)}return t.call(e,r,s)}Lm.applyReviver=Vn});var hr=_(Um=>{"use strict";var QS=Q();function Fm(t,e,r){if(Array.isArray(t))return t.map((s,n)=>Fm(s,String(n),r));if(t&&typeof t.toJSON=="function"){if(!r||!QS.hasAnchor(t))return t.toJSON(e,r);let s={aliasCount:0,count:1,res:void 0};r.anchors.set(t,s),r.onCreate=i=>{s.res=i,delete r.onCreate};let n=t.toJSON(e,r);return r.onCreate&&r.onCreate(n),n}return typeof t=="bigint"&&!r?.keep?Number(t):t}Um.toJS=Fm});var xa=_(Km=>{"use strict";var XS=tl(),Vm=Q(),ek=hr(),rl=class{constructor(e){Object.defineProperty(this,Vm.NODE_TYPE,{value:e})}clone(){let e=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return this.range&&(e.range=this.range.slice()),e}toJS(e,{mapAsMap:r,maxAliasCount:s,onAnchor:n,reviver:i}={}){if(!Vm.isDocument(e))throw new TypeError("A document argument is required");let a={anchors:new Map,doc:e,keep:!0,mapAsMap:r===!0,mapKeyWarned:!1,maxAliasCount:typeof s=="number"?s:100},o=ek.toJS(this,"",a);if(typeof n=="function")for(let{count:c,res:l}of a.anchors.values())n(l,c);return typeof i=="function"?XS.applyReviver(i,{"":o},"",o):o}};Km.NodeBase=rl});var Kn=_(zm=>{"use strict";var tk=Ma(),rk=Ln(),zs=Q(),sk=xa(),nk=hr(),sl=class extends sk.NodeBase{constructor(e){super(zs.ALIAS),this.source=e,Object.defineProperty(this,"tag",{set(){throw new Error("Alias nodes cannot have tags")}})}resolve(e,r){let s;r?.aliasResolveCache?s=r.aliasResolveCache:(s=[],rk.visit(e,{Node:(i,a)=>{(zs.isAlias(a)||zs.hasAnchor(a))&&s.push(a)}}),r&&(r.aliasResolveCache=s));let n;for(let i of s){if(i===this)break;i.anchor===this.source&&(n=i)}return n}toJSON(e,r){if(!r)return{source:this.source};let{anchors:s,doc:n,maxAliasCount:i}=r,a=this.resolve(n,r);if(!a){let c=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new ReferenceError(c)}let o=s.get(a);if(o||(nk.toJS(a,null,r),o=s.get(a)),o?.res===void 0){let c="This should not happen: Alias anchor was not resolved?";throw new ReferenceError(c)}if(i>=0&&(o.count+=1,o.aliasCount===0&&(o.aliasCount=ja(n,a,s)),o.count*o.aliasCount>i)){let c="Excessive alias count indicates a resource exhaustion attack";throw new ReferenceError(c)}return o.res}toString(e,r,s){let n=`*${this.source}`;if(e){if(tk.anchorIsValid(this.source),e.options.verifyAliasOrder&&!e.anchors.has(this.source)){let i=`Unresolved alias (the anchor must be set before the alias): ${this.source}`;throw new Error(i)}if(e.implicitKey)return`${n} `}return n}};function ja(t,e,r){if(zs.isAlias(e)){let s=e.resolve(t),n=r&&s&&r.get(s);return n?n.count*n.aliasCount:0}else if(zs.isCollection(e)){let s=0;for(let n of e.items){let i=ja(t,n,r);i>s&&(s=i)}return s}else if(zs.isPair(e)){let s=ja(t,e.key,r),n=ja(t,e.value,r);return Math.max(s,n)}return 1}zm.Alias=sl});var we=_(nl=>{"use strict";var ik=Q(),ak=xa(),ok=hr(),ck=t=>!t||typeof t!="function"&&typeof t!="object",gr=class extends ak.NodeBase{constructor(e){super(ik.SCALAR),this.value=e}toJSON(e,r){return r?.keep?this.value:ok.toJS(this.value,e,r)}toString(){return String(this.value)}};gr.BLOCK_FOLDED="BLOCK_FOLDED";gr.BLOCK_LITERAL="BLOCK_LITERAL";gr.PLAIN="PLAIN";gr.QUOTE_DOUBLE="QUOTE_DOUBLE";gr.QUOTE_SINGLE="QUOTE_SINGLE";nl.Scalar=gr;nl.isScalarValue=ck});var zn=_(Jm=>{"use strict";var lk=Kn(),as=Q(),Bm=we(),uk="tag:yaml.org,2002:";function dk(t,e,r){if(e){let s=r.filter(i=>i.tag===e),n=s.find(i=>!i.format)??s[0];if(!n)throw new Error(`Tag ${e} not found`);return n}return r.find(s=>s.identify?.(t)&&!s.format)}function fk(t,e,r){if(as.isDocument(t)&&(t=t.contents),as.isNode(t))return t;if(as.isPair(t)){let d=r.schema[as.MAP].createNode?.(r.schema,null,r);return d.items.push(t),d}(t instanceof String||t instanceof Number||t instanceof Boolean||typeof BigInt<"u"&&t instanceof BigInt)&&(t=t.valueOf());let{aliasDuplicateObjects:s,onAnchor:n,onTagObj:i,schema:a,sourceObjects:o}=r,c;if(s&&t&&typeof t=="object"){if(c=o.get(t),c)return c.anchor??(c.anchor=n(t)),new lk.Alias(c.anchor);c={anchor:null,node:null},o.set(t,c)}e?.startsWith("!!")&&(e=uk+e.slice(2));let l=dk(t,e,a.tags);if(!l){if(t&&typeof t.toJSON=="function"&&(t=t.toJSON()),!t||typeof t!="object"){let d=new Bm.Scalar(t);return c&&(c.node=d),d}l=t instanceof Map?a[as.MAP]:Symbol.iterator in Object(t)?a[as.SEQ]:a[as.MAP]}i&&(i(l),delete r.onTagObj);let u=l?.createNode?l.createNode(r.schema,t,r):typeof l?.nodeClass?.from=="function"?l.nodeClass.from(r.schema,t,r):new Bm.Scalar(t);return e?u.tag=e:l.default||(u.tag=l.tag),c&&(c.node=u),u}Jm.createNode=fk});var Da=_(qa=>{"use strict";var pk=zn(),Mt=Q(),mk=xa();function il(t,e,r){let s=r;for(let n=e.length-1;n>=0;--n){let i=e[n];if(typeof i=="number"&&Number.isInteger(i)&&i>=0){let a=[];a[i]=s,s=a}else s=new Map([[i,s]])}return pk.createNode(s,void 0,{aliasDuplicateObjects:!1,keepUndefined:!1,onAnchor:()=>{throw new Error("This should not happen, please report a bug.")},schema:t,sourceObjects:new Map})}var Hm=t=>t==null||typeof t=="object"&&!!t[Symbol.iterator]().next().done,al=class extends mk.NodeBase{constructor(e,r){super(e),Object.defineProperty(this,"schema",{value:r,configurable:!0,enumerable:!1,writable:!0})}clone(e){let r=Object.create(Object.getPrototypeOf(this),Object.getOwnPropertyDescriptors(this));return e&&(r.schema=e),r.items=r.items.map(s=>Mt.isNode(s)||Mt.isPair(s)?s.clone(e):s),this.range&&(r.range=this.range.slice()),r}addIn(e,r){if(Hm(e))this.add(r);else{let[s,...n]=e,i=this.get(s,!0);if(Mt.isCollection(i))i.addIn(n,r);else if(i===void 0&&this.schema)this.set(s,il(this.schema,n,r));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${n}`)}}deleteIn(e){let[r,...s]=e;if(s.length===0)return this.delete(r);let n=this.get(r,!0);if(Mt.isCollection(n))return n.deleteIn(s);throw new Error(`Expected YAML collection at ${r}. Remaining path: ${s}`)}getIn(e,r){let[s,...n]=e,i=this.get(s,!0);return n.length===0?!r&&Mt.isScalar(i)?i.value:i:Mt.isCollection(i)?i.getIn(n,r):void 0}hasAllNullValues(e){return this.items.every(r=>{if(!Mt.isPair(r))return!1;let s=r.value;return s==null||e&&Mt.isScalar(s)&&s.value==null&&!s.commentBefore&&!s.comment&&!s.tag})}hasIn(e){let[r,...s]=e;if(s.length===0)return this.has(r);let n=this.get(r,!0);return Mt.isCollection(n)?n.hasIn(s):!1}setIn(e,r){let[s,...n]=e;if(n.length===0)this.set(s,r);else{let i=this.get(s,!0);if(Mt.isCollection(i))i.setIn(n,r);else if(i===void 0&&this.schema)this.set(s,il(this.schema,n,r));else throw new Error(`Expected YAML collection at ${s}. Remaining path: ${n}`)}}};qa.Collection=al;qa.collectionFromPath=il;qa.isEmptyPath=Hm});var Bn=_(La=>{"use strict";var hk=t=>t.replace(/^(?!$)(?: $)?/gm,"#");function ol(t,e){return/^\n+$/.test(t)?t.substring(1):e?t.replace(/^(?! *$)/gm,e):t}var gk=(t,e,r)=>t.endsWith(`
|
|
4
|
+
`)?ol(r,e):r.includes(`
|
|
5
|
+
`)?`
|
|
6
|
+
`+ol(r,e):(t.endsWith(" ")?"":" ")+r;La.indentComment=ol;La.lineComment=gk;La.stringifyComment=hk});var Ym=_(Jn=>{"use strict";var yk="flow",cl="block",Fa="quoted";function vk(t,e,r="flow",{indentAtStart:s,lineWidth:n=80,minContentWidth:i=20,onFold:a,onOverflow:o}={}){if(!n||n<0)return t;n<i&&(i=0);let c=Math.max(1+i,1+n-e.length);if(t.length<=c)return t;let l=[],u={},d=n-e.length;typeof s=="number"&&(s>n-Math.max(2,i)?l.push(0):d=n-s);let f,p,y=!1,m=-1,g=-1,h=-1;r===cl&&(m=Gm(t,m,e.length),m!==-1&&(d=m+c));for(let b;b=t[m+=1];){if(r===Fa&&b==="\\"){switch(g=m,t[m+1]){case"x":m+=3;break;case"u":m+=5;break;case"U":m+=9;break;default:m+=1}h=m}if(b===`
|
|
7
|
+
`)r===cl&&(m=Gm(t,m,e.length)),d=m+e.length+c,f=void 0;else{if(b===" "&&p&&p!==" "&&p!==`
|
|
8
|
+
`&&p!==" "){let $=t[m+1];$&&$!==" "&&$!==`
|
|
9
|
+
`&&$!==" "&&(f=m)}if(m>=d)if(f)l.push(f),d=f+c,f=void 0;else if(r===Fa){for(;p===" "||p===" ";)p=b,b=t[m+=1],y=!0;let $=m>h+1?m-2:g-1;if(u[$])return t;l.push($),u[$]=!0,d=$+c,f=void 0}else y=!0}p=b}if(y&&o&&o(),l.length===0)return t;a&&a();let v=t.slice(0,l[0]);for(let b=0;b<l.length;++b){let $=l[b],w=l[b+1]||t.length;$===0?v=`
|
|
10
|
+
${e}${t.slice(0,w)}`:(r===Fa&&u[$]&&(v+=`${t[$]}\\`),v+=`
|
|
11
|
+
${e}${t.slice($+1,w)}`)}return v}function Gm(t,e,r){let s=e,n=e+1,i=t[n];for(;i===" "||i===" ";)if(e<n+r)i=t[++e];else{do i=t[++e];while(i&&i!==`
|
|
12
|
+
`);s=e,n=e+1,i=t[n]}return s}Jn.FOLD_BLOCK=cl;Jn.FOLD_FLOW=yk;Jn.FOLD_QUOTED=Fa;Jn.foldFlowLines=vk});var Gn=_(Wm=>{"use strict";var vt=we(),yr=Ym(),Va=(t,e)=>({indentAtStart:e?t.indent.length:t.indentAtStart,lineWidth:t.options.lineWidth,minContentWidth:t.options.minContentWidth}),Ka=t=>/^(%|---|\.\.\.)/m.test(t);function _k(t,e,r){if(!e||e<0)return!1;let s=e-r,n=t.length;if(n<=s)return!1;for(let i=0,a=0;i<n;++i)if(t[i]===`
|
|
13
|
+
`){if(i-a>s)return!0;if(a=i+1,n-a<=s)return!1}return!0}function Hn(t,e){let r=JSON.stringify(t);if(e.options.doubleQuotedAsJSON)return r;let{implicitKey:s}=e,n=e.options.doubleQuotedMinMultiLineLength,i=e.indent||(Ka(t)?" ":""),a="",o=0;for(let c=0,l=r[c];l;l=r[++c])if(l===" "&&r[c+1]==="\\"&&r[c+2]==="n"&&(a+=r.slice(o,c)+"\\ ",c+=1,o=c,l="\\"),l==="\\")switch(r[c+1]){case"u":{a+=r.slice(o,c);let u=r.substr(c+2,4);switch(u){case"0000":a+="\\0";break;case"0007":a+="\\a";break;case"000b":a+="\\v";break;case"001b":a+="\\e";break;case"0085":a+="\\N";break;case"00a0":a+="\\_";break;case"2028":a+="\\L";break;case"2029":a+="\\P";break;default:u.substr(0,2)==="00"?a+="\\x"+u.substr(2):a+=r.substr(c,6)}c+=5,o=c+1}break;case"n":if(s||r[c+2]==='"'||r.length<n)c+=1;else{for(a+=r.slice(o,c)+`
|
|
14
|
+
|
|
15
|
+
`;r[c+2]==="\\"&&r[c+3]==="n"&&r[c+4]!=='"';)a+=`
|
|
16
|
+
`,c+=2;a+=i,r[c+2]===" "&&(a+="\\"),c+=1,o=c+1}break;default:c+=1}return a=o?a+r.slice(o):r,s?a:yr.foldFlowLines(a,i,yr.FOLD_QUOTED,Va(e,!1))}function ll(t,e){if(e.options.singleQuote===!1||e.implicitKey&&t.includes(`
|
|
17
|
+
`)||/[ \t]\n|\n[ \t]/.test(t))return Hn(t,e);let r=e.indent||(Ka(t)?" ":""),s="'"+t.replace(/'/g,"''").replace(/\n+/g,`$&
|
|
18
|
+
${r}`)+"'";return e.implicitKey?s:yr.foldFlowLines(s,r,yr.FOLD_FLOW,Va(e,!1))}function Bs(t,e){let{singleQuote:r}=e.options,s;if(r===!1)s=Hn;else{let n=t.includes('"'),i=t.includes("'");n&&!i?s=ll:i&&!n?s=Hn:s=r?ll:Hn}return s(t,e)}var ul;try{ul=new RegExp(`(^|(?<!
|
|
19
|
+
))
|
|
20
|
+
+(?!
|
|
21
|
+
|$)`,"g")}catch{ul=/\n+(?!\n|$)/g}function Ua({comment:t,type:e,value:r},s,n,i){let{blockQuote:a,commentString:o,lineWidth:c}=s.options;if(!a||/\n[\t ]+$/.test(r))return Bs(r,s);let l=s.indent||(s.forceBlockIndent||Ka(r)?" ":""),u=a==="literal"?!0:a==="folded"||e===vt.Scalar.BLOCK_FOLDED?!1:e===vt.Scalar.BLOCK_LITERAL?!0:!_k(r,c,l.length);if(!r)return u?`|
|
|
22
|
+
`:`>
|
|
23
|
+
`;let d,f;for(f=r.length;f>0;--f){let w=r[f-1];if(w!==`
|
|
24
|
+
`&&w!==" "&&w!==" ")break}let p=r.substring(f),y=p.indexOf(`
|
|
25
|
+
`);y===-1?d="-":r===p||y!==p.length-1?(d="+",i&&i()):d="",p&&(r=r.slice(0,-p.length),p[p.length-1]===`
|
|
26
|
+
`&&(p=p.slice(0,-1)),p=p.replace(ul,`$&${l}`));let m=!1,g,h=-1;for(g=0;g<r.length;++g){let w=r[g];if(w===" ")m=!0;else if(w===`
|
|
27
|
+
`)h=g;else break}let v=r.substring(0,h<g?h+1:g);v&&(r=r.substring(v.length),v=v.replace(/\n+/g,`$&${l}`));let $=(m?l?"2":"1":"")+d;if(t&&($+=" "+o(t.replace(/ ?[\r\n]+/g," ")),n&&n()),!u){let w=r.replace(/\n+/g,`
|
|
28
|
+
$&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,"$1$2").replace(/\n+/g,`$&${l}`),k=!1,N=Va(s,!0);a!=="folded"&&e!==vt.Scalar.BLOCK_FOLDED&&(N.onOverflow=()=>{k=!0});let T=yr.foldFlowLines(`${v}${w}${p}`,l,yr.FOLD_BLOCK,N);if(!k)return`>${$}
|
|
29
|
+
${l}${T}`}return r=r.replace(/\n+/g,`$&${l}`),`|${$}
|
|
30
|
+
${l}${v}${r}${p}`}function bk(t,e,r,s){let{type:n,value:i}=t,{actualString:a,implicitKey:o,indent:c,indentStep:l,inFlow:u}=e;if(o&&i.includes(`
|
|
31
|
+
`)||u&&/[[\]{},]/.test(i))return Bs(i,e);if(/^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(i))return o||u||!i.includes(`
|
|
32
|
+
`)?Bs(i,e):Ua(t,e,r,s);if(!o&&!u&&n!==vt.Scalar.PLAIN&&i.includes(`
|
|
33
|
+
`))return Ua(t,e,r,s);if(Ka(i)){if(c==="")return e.forceBlockIndent=!0,Ua(t,e,r,s);if(o&&c===l)return Bs(i,e)}let d=i.replace(/\n+/g,`$&
|
|
34
|
+
${c}`);if(a){let f=m=>m.default&&m.tag!=="tag:yaml.org,2002:str"&&m.test?.test(d),{compat:p,tags:y}=e.doc.schema;if(y.some(f)||p?.some(f))return Bs(i,e)}return o?d:yr.foldFlowLines(d,c,yr.FOLD_FLOW,Va(e,!1))}function wk(t,e,r,s){let{implicitKey:n,inFlow:i}=e,a=typeof t.value=="string"?t:Object.assign({},t,{value:String(t.value)}),{type:o}=t;o!==vt.Scalar.QUOTE_DOUBLE&&/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(a.value)&&(o=vt.Scalar.QUOTE_DOUBLE);let c=u=>{switch(u){case vt.Scalar.BLOCK_FOLDED:case vt.Scalar.BLOCK_LITERAL:return n||i?Bs(a.value,e):Ua(a,e,r,s);case vt.Scalar.QUOTE_DOUBLE:return Hn(a.value,e);case vt.Scalar.QUOTE_SINGLE:return ll(a.value,e);case vt.Scalar.PLAIN:return bk(a,e,r,s);default:return null}},l=c(o);if(l===null){let{defaultKeyType:u,defaultStringType:d}=e.options,f=n&&u||d;if(l=c(f),l===null)throw new Error(`Unsupported default string type ${f}`)}return l}Wm.stringifyString=wk});var Yn=_(dl=>{"use strict";var $k=Ma(),vr=Q(),Sk=Bn(),kk=Gn();function Ek(t,e){let r=Object.assign({blockQuote:!0,commentString:Sk.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},t.schema.toStringOptions,e),s;switch(r.collectionStyle){case"block":s=!1;break;case"flow":s=!0;break;default:s=null}return{anchors:new Set,doc:t,flowCollectionPadding:r.flowCollectionPadding?" ":"",indent:"",indentStep:typeof r.indent=="number"?" ".repeat(r.indent):" ",inFlow:s,options:r}}function Tk(t,e){if(e.tag){let n=t.filter(i=>i.tag===e.tag);if(n.length>0)return n.find(i=>i.format===e.format)??n[0]}let r,s;if(vr.isScalar(e)){s=e.value;let n=t.filter(i=>i.identify?.(s));if(n.length>1){let i=n.filter(a=>a.test);i.length>0&&(n=i)}r=n.find(i=>i.format===e.format)??n.find(i=>!i.format)}else s=e,r=t.find(n=>n.nodeClass&&s instanceof n.nodeClass);if(!r){let n=s?.constructor?.name??(s===null?"null":typeof s);throw new Error(`Tag not resolved for ${n} value`)}return r}function Nk(t,e,{anchors:r,doc:s}){if(!s.directives)return"";let n=[],i=(vr.isScalar(t)||vr.isCollection(t))&&t.anchor;i&&$k.anchorIsValid(i)&&(r.add(i),n.push(`&${i}`));let a=t.tag??(e.default?null:e.tag);return a&&n.push(s.directives.tagString(a)),n.join(" ")}function Pk(t,e,r,s){if(vr.isPair(t))return t.toString(e,r,s);if(vr.isAlias(t)){if(e.doc.directives)return t.toString(e);if(e.resolvedAliases?.has(t))throw new TypeError("Cannot stringify circular structure without alias nodes");e.resolvedAliases?e.resolvedAliases.add(t):e.resolvedAliases=new Set([t]),t=t.resolve(e.doc)}let n,i=vr.isNode(t)?t:e.doc.createNode(t,{onTagObj:c=>n=c});n??(n=Tk(e.doc.schema.tags,i));let a=Nk(i,n,e);a.length>0&&(e.indentAtStart=(e.indentAtStart??0)+a.length+1);let o=typeof n.stringify=="function"?n.stringify(i,e,r,s):vr.isScalar(i)?kk.stringifyString(i,e,r,s):i.toString(e,r,s);return a?vr.isScalar(i)||o[0]==="{"||o[0]==="["?`${a} ${o}`:`${a}
|
|
35
|
+
${e.indent}${o}`:o}dl.createStringifyContext=Ek;dl.stringify=Pk});var eh=_(Xm=>{"use strict";var Zt=Q(),Zm=we(),Qm=Yn(),Wn=Bn();function Ok({key:t,value:e},r,s,n){let{allNullValues:i,doc:a,indent:o,indentStep:c,options:{commentString:l,indentSeq:u,simpleKeys:d}}=r,f=Zt.isNode(t)&&t.comment||null;if(d){if(f)throw new Error("With simple keys, key nodes cannot have comments");if(Zt.isCollection(t)||!Zt.isNode(t)&&typeof t=="object"){let N="With simple keys, collection cannot be used as a key value";throw new Error(N)}}let p=!d&&(!t||f&&e==null&&!r.inFlow||Zt.isCollection(t)||(Zt.isScalar(t)?t.type===Zm.Scalar.BLOCK_FOLDED||t.type===Zm.Scalar.BLOCK_LITERAL:typeof t=="object"));r=Object.assign({},r,{allNullValues:!1,implicitKey:!p&&(d||!i),indent:o+c});let y=!1,m=!1,g=Qm.stringify(t,r,()=>y=!0,()=>m=!0);if(!p&&!r.inFlow&&g.length>1024){if(d)throw new Error("With simple keys, single line scalar must not span more than 1024 characters");p=!0}if(r.inFlow){if(i||e==null)return y&&s&&s(),g===""?"?":p?`? ${g}`:g}else if(i&&!d||e==null&&p)return g=`? ${g}`,f&&!y?g+=Wn.lineComment(g,r.indent,l(f)):m&&n&&n(),g;y&&(f=null),p?(f&&(g+=Wn.lineComment(g,r.indent,l(f))),g=`? ${g}
|
|
36
|
+
${o}:`):(g=`${g}:`,f&&(g+=Wn.lineComment(g,r.indent,l(f))));let h,v,b;Zt.isNode(e)?(h=!!e.spaceBefore,v=e.commentBefore,b=e.comment):(h=!1,v=null,b=null,e&&typeof e=="object"&&(e=a.createNode(e))),r.implicitKey=!1,!p&&!f&&Zt.isScalar(e)&&(r.indentAtStart=g.length+1),m=!1,!u&&c.length>=2&&!r.inFlow&&!p&&Zt.isSeq(e)&&!e.flow&&!e.tag&&!e.anchor&&(r.indent=r.indent.substring(2));let $=!1,w=Qm.stringify(e,r,()=>$=!0,()=>m=!0),k=" ";if(f||h||v){if(k=h?`
|
|
37
|
+
`:"",v){let N=l(v);k+=`
|
|
38
|
+
${Wn.indentComment(N,r.indent)}`}w===""&&!r.inFlow?k===`
|
|
39
|
+
`&&b&&(k=`
|
|
40
|
+
|
|
41
|
+
`):k+=`
|
|
42
|
+
${r.indent}`}else if(!p&&Zt.isCollection(e)){let N=w[0],T=w.indexOf(`
|
|
43
|
+
`),se=T!==-1,ve=r.inFlow??e.flow??e.items.length===0;if(se||!ve){let ke=!1;if(se&&(N==="&"||N==="!")){let D=w.indexOf(" ");N==="&"&&D!==-1&&D<T&&w[D+1]==="!"&&(D=w.indexOf(" ",D+1)),(D===-1||T<D)&&(ke=!0)}ke||(k=`
|
|
44
|
+
${r.indent}`)}}else(w===""||w[0]===`
|
|
45
|
+
`)&&(k="");return g+=k+w,r.inFlow?$&&s&&s():b&&!$?g+=Wn.lineComment(g,r.indent,l(b)):m&&n&&n(),g}Xm.stringifyPair=Ok});var pl=_(fl=>{"use strict";var th=ka("process");function Ck(t,...e){t==="debug"&&console.log(...e)}function Ak(t,e){(t==="debug"||t==="warn")&&(typeof th.emitWarning=="function"?th.emitWarning(e):console.warn(e))}fl.debug=Ck;fl.warn=Ak});var Ha=_(Ja=>{"use strict";var Zn=Q(),rh=we(),za="<<",Ba={identify:t=>t===za||typeof t=="symbol"&&t.description===za,default:"key",tag:"tag:yaml.org,2002:merge",test:/^<<$/,resolve:()=>Object.assign(new rh.Scalar(Symbol(za)),{addToJSMap:sh}),stringify:()=>za},Rk=(t,e)=>(Ba.identify(e)||Zn.isScalar(e)&&(!e.type||e.type===rh.Scalar.PLAIN)&&Ba.identify(e.value))&&t?.doc.schema.tags.some(r=>r.tag===Ba.tag&&r.default);function sh(t,e,r){if(r=t&&Zn.isAlias(r)?r.resolve(t.doc):r,Zn.isSeq(r))for(let s of r.items)ml(t,e,s);else if(Array.isArray(r))for(let s of r)ml(t,e,s);else ml(t,e,r)}function ml(t,e,r){let s=t&&Zn.isAlias(r)?r.resolve(t.doc):r;if(!Zn.isMap(s))throw new Error("Merge sources must be maps or map aliases");let n=s.toJSON(null,t,Map);for(let[i,a]of n)e instanceof Map?e.has(i)||e.set(i,a):e instanceof Set?e.add(i):Object.prototype.hasOwnProperty.call(e,i)||Object.defineProperty(e,i,{value:a,writable:!0,enumerable:!0,configurable:!0});return e}Ja.addMergeToJSMap=sh;Ja.isMergeKey=Rk;Ja.merge=Ba});var gl=_(ah=>{"use strict";var Ik=pl(),nh=Ha(),Mk=Yn(),ih=Q(),hl=hr();function xk(t,e,{key:r,value:s}){if(ih.isNode(r)&&r.addToJSMap)r.addToJSMap(t,e,s);else if(nh.isMergeKey(t,r))nh.addMergeToJSMap(t,e,s);else{let n=hl.toJS(r,"",t);if(e instanceof Map)e.set(n,hl.toJS(s,n,t));else if(e instanceof Set)e.add(n);else{let i=jk(r,n,t),a=hl.toJS(s,i,t);i in e?Object.defineProperty(e,i,{value:a,writable:!0,enumerable:!0,configurable:!0}):e[i]=a}}return e}function jk(t,e,r){if(e===null)return"";if(typeof e!="object")return String(e);if(ih.isNode(t)&&r?.doc){let s=Mk.createStringifyContext(r.doc,{});s.anchors=new Set;for(let i of r.anchors.keys())s.anchors.add(i.anchor);s.inFlow=!0,s.inStringifyKey=!0;let n=t.toString(s);if(!r.mapKeyWarned){let i=JSON.stringify(n);i.length>40&&(i=i.substring(0,36)+'..."'),Ik.warn(r.doc.options.logLevel,`Keys with collection values will be stringified due to JS Object restrictions: ${i}. Set mapAsMap: true to use object keys.`),r.mapKeyWarned=!0}return n}return JSON.stringify(e)}ah.addPairToJSMap=xk});var _r=_(yl=>{"use strict";var oh=zn(),qk=eh(),Dk=gl(),Ga=Q();function Lk(t,e,r){let s=oh.createNode(t,void 0,r),n=oh.createNode(e,void 0,r);return new Ya(s,n)}var Ya=class t{constructor(e,r=null){Object.defineProperty(this,Ga.NODE_TYPE,{value:Ga.PAIR}),this.key=e,this.value=r}clone(e){let{key:r,value:s}=this;return Ga.isNode(r)&&(r=r.clone(e)),Ga.isNode(s)&&(s=s.clone(e)),new t(r,s)}toJSON(e,r){let s=r?.mapAsMap?new Map:{};return Dk.addPairToJSMap(r,s,this)}toString(e,r,s){return e?.doc?qk.stringifyPair(this,e,r,s):JSON.stringify(this)}};yl.Pair=Ya;yl.createPair=Lk});var vl=_(lh=>{"use strict";var os=Q(),ch=Yn(),Wa=Bn();function Fk(t,e,r){return(e.inFlow??t.flow?Vk:Uk)(t,e,r)}function Uk({comment:t,items:e},r,{blockItemPrefix:s,flowChars:n,itemIndent:i,onChompKeep:a,onComment:o}){let{indent:c,options:{commentString:l}}=r,u=Object.assign({},r,{indent:i,type:null}),d=!1,f=[];for(let y=0;y<e.length;++y){let m=e[y],g=null;if(os.isNode(m))!d&&m.spaceBefore&&f.push(""),Za(r,f,m.commentBefore,d),m.comment&&(g=m.comment);else if(os.isPair(m)){let v=os.isNode(m.key)?m.key:null;v&&(!d&&v.spaceBefore&&f.push(""),Za(r,f,v.commentBefore,d))}d=!1;let h=ch.stringify(m,u,()=>g=null,()=>d=!0);g&&(h+=Wa.lineComment(h,i,l(g))),d&&g&&(d=!1),f.push(s+h)}let p;if(f.length===0)p=n.start+n.end;else{p=f[0];for(let y=1;y<f.length;++y){let m=f[y];p+=m?`
|
|
46
|
+
${c}${m}`:`
|
|
47
|
+
`}}return t?(p+=`
|
|
48
|
+
`+Wa.indentComment(l(t),c),o&&o()):d&&a&&a(),p}function Vk({items:t},e,{flowChars:r,itemIndent:s}){let{indent:n,indentStep:i,flowCollectionPadding:a,options:{commentString:o}}=e;s+=i;let c=Object.assign({},e,{indent:s,inFlow:!0,type:null}),l=!1,u=0,d=[];for(let y=0;y<t.length;++y){let m=t[y],g=null;if(os.isNode(m))m.spaceBefore&&d.push(""),Za(e,d,m.commentBefore,!1),m.comment&&(g=m.comment);else if(os.isPair(m)){let v=os.isNode(m.key)?m.key:null;v&&(v.spaceBefore&&d.push(""),Za(e,d,v.commentBefore,!1),v.comment&&(l=!0));let b=os.isNode(m.value)?m.value:null;b?(b.comment&&(g=b.comment),b.commentBefore&&(l=!0)):m.value==null&&v?.comment&&(g=v.comment)}g&&(l=!0);let h=ch.stringify(m,c,()=>g=null);y<t.length-1&&(h+=","),g&&(h+=Wa.lineComment(h,s,o(g))),!l&&(d.length>u||h.includes(`
|
|
49
|
+
`))&&(l=!0),d.push(h),u=d.length}let{start:f,end:p}=r;if(d.length===0)return f+p;if(!l){let y=d.reduce((m,g)=>m+g.length+2,2);l=e.options.lineWidth>0&&y>e.options.lineWidth}if(l){let y=f;for(let m of d)y+=m?`
|
|
50
|
+
${i}${n}${m}`:`
|
|
51
|
+
`;return`${y}
|
|
52
|
+
${n}${p}`}else return`${f}${a}${d.join(" ")}${a}${p}`}function Za({indent:t,options:{commentString:e}},r,s,n){if(s&&n&&(s=s.replace(/^\n+/,"")),s){let i=Wa.indentComment(e(s),t);r.push(i.trimStart())}}lh.stringifyCollection=Fk});var wr=_(bl=>{"use strict";var Kk=vl(),zk=gl(),Bk=Da(),br=Q(),Qa=_r(),Jk=we();function Qn(t,e){let r=br.isScalar(e)?e.value:e;for(let s of t)if(br.isPair(s)&&(s.key===e||s.key===r||br.isScalar(s.key)&&s.key.value===r))return s}var _l=class extends Bk.Collection{static get tagName(){return"tag:yaml.org,2002:map"}constructor(e){super(br.MAP,e),this.items=[]}static from(e,r,s){let{keepUndefined:n,replacer:i}=s,a=new this(e),o=(c,l)=>{if(typeof i=="function")l=i.call(r,c,l);else if(Array.isArray(i)&&!i.includes(c))return;(l!==void 0||n)&&a.items.push(Qa.createPair(c,l,s))};if(r instanceof Map)for(let[c,l]of r)o(c,l);else if(r&&typeof r=="object")for(let c of Object.keys(r))o(c,r[c]);return typeof e.sortMapEntries=="function"&&a.items.sort(e.sortMapEntries),a}add(e,r){let s;br.isPair(e)?s=e:!e||typeof e!="object"||!("key"in e)?s=new Qa.Pair(e,e?.value):s=new Qa.Pair(e.key,e.value);let n=Qn(this.items,s.key),i=this.schema?.sortMapEntries;if(n){if(!r)throw new Error(`Key ${s.key} already set`);br.isScalar(n.value)&&Jk.isScalarValue(s.value)?n.value.value=s.value:n.value=s.value}else if(i){let a=this.items.findIndex(o=>i(s,o)<0);a===-1?this.items.push(s):this.items.splice(a,0,s)}else this.items.push(s)}delete(e){let r=Qn(this.items,e);return r?this.items.splice(this.items.indexOf(r),1).length>0:!1}get(e,r){let n=Qn(this.items,e)?.value;return(!r&&br.isScalar(n)?n.value:n)??void 0}has(e){return!!Qn(this.items,e)}set(e,r){this.add(new Qa.Pair(e,r),!0)}toJSON(e,r,s){let n=s?new s:r?.mapAsMap?new Map:{};r?.onCreate&&r.onCreate(n);for(let i of this.items)zk.addPairToJSMap(r,n,i);return n}toString(e,r,s){if(!e)return JSON.stringify(this);for(let n of this.items)if(!br.isPair(n))throw new Error(`Map items must all be pairs; found ${JSON.stringify(n)} instead`);return!e.allNullValues&&this.hasAllNullValues(!1)&&(e=Object.assign({},e,{allNullValues:!0})),Kk.stringifyCollection(this,e,{blockItemPrefix:"",flowChars:{start:"{",end:"}"},itemIndent:e.indent||"",onChompKeep:s,onComment:r})}};bl.YAMLMap=_l;bl.findPair=Qn});var Js=_(dh=>{"use strict";var Hk=Q(),uh=wr(),Gk={collection:"map",default:!0,nodeClass:uh.YAMLMap,tag:"tag:yaml.org,2002:map",resolve(t,e){return Hk.isMap(t)||e("Expected a mapping for this tag"),t},createNode:(t,e,r)=>uh.YAMLMap.from(t,e,r)};dh.map=Gk});var $r=_(fh=>{"use strict";var Yk=zn(),Wk=vl(),Zk=Da(),eo=Q(),Qk=we(),Xk=hr(),wl=class extends Zk.Collection{static get tagName(){return"tag:yaml.org,2002:seq"}constructor(e){super(eo.SEQ,e),this.items=[]}add(e){this.items.push(e)}delete(e){let r=Xa(e);return typeof r!="number"?!1:this.items.splice(r,1).length>0}get(e,r){let s=Xa(e);if(typeof s!="number")return;let n=this.items[s];return!r&&eo.isScalar(n)?n.value:n}has(e){let r=Xa(e);return typeof r=="number"&&r<this.items.length}set(e,r){let s=Xa(e);if(typeof s!="number")throw new Error(`Expected a valid index, not ${e}.`);let n=this.items[s];eo.isScalar(n)&&Qk.isScalarValue(r)?n.value=r:this.items[s]=r}toJSON(e,r){let s=[];r?.onCreate&&r.onCreate(s);let n=0;for(let i of this.items)s.push(Xk.toJS(i,String(n++),r));return s}toString(e,r,s){return e?Wk.stringifyCollection(this,e,{blockItemPrefix:"- ",flowChars:{start:"[",end:"]"},itemIndent:(e.indent||"")+" ",onChompKeep:s,onComment:r}):JSON.stringify(this)}static from(e,r,s){let{replacer:n}=s,i=new this(e);if(r&&Symbol.iterator in Object(r)){let a=0;for(let o of r){if(typeof n=="function"){let c=r instanceof Set?o:String(a++);o=n.call(r,c,o)}i.items.push(Yk.createNode(o,void 0,s))}}return i}};function Xa(t){let e=eo.isScalar(t)?t.value:t;return e&&typeof e=="string"&&(e=Number(e)),typeof e=="number"&&Number.isInteger(e)&&e>=0?e:null}fh.YAMLSeq=wl});var Hs=_(mh=>{"use strict";var eE=Q(),ph=$r(),tE={collection:"seq",default:!0,nodeClass:ph.YAMLSeq,tag:"tag:yaml.org,2002:seq",resolve(t,e){return eE.isSeq(t)||e("Expected a sequence for this tag"),t},createNode:(t,e,r)=>ph.YAMLSeq.from(t,e,r)};mh.seq=tE});var Xn=_(hh=>{"use strict";var rE=Gn(),sE={identify:t=>typeof t=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:t=>t,stringify(t,e,r,s){return e=Object.assign({actualString:!0},e),rE.stringifyString(t,e,r,s)}};hh.string=sE});var to=_(vh=>{"use strict";var gh=we(),yh={identify:t=>t==null,createNode:()=>new gh.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^(?:~|[Nn]ull|NULL)?$/,resolve:()=>new gh.Scalar(null),stringify:({source:t},e)=>typeof t=="string"&&yh.test.test(t)?t:e.options.nullStr};vh.nullTag=yh});var $l=_(bh=>{"use strict";var nE=we(),_h={identify:t=>typeof t=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/,resolve:t=>new nE.Scalar(t[0]==="t"||t[0]==="T"),stringify({source:t,value:e},r){if(t&&_h.test.test(t)){let s=t[0]==="t"||t[0]==="T";if(e===s)return t}return e?r.options.trueStr:r.options.falseStr}};bh.boolTag=_h});var Gs=_(wh=>{"use strict";function iE({format:t,minFractionDigits:e,tag:r,value:s}){if(typeof s=="bigint")return String(s);let n=typeof s=="number"?s:Number(s);if(!isFinite(n))return isNaN(n)?".nan":n<0?"-.inf":".inf";let i=Object.is(s,-0)?"-0":JSON.stringify(s);if(!t&&e&&(!r||r==="tag:yaml.org,2002:float")&&/^\d/.test(i)){let a=i.indexOf(".");a<0&&(a=i.length,i+=".");let o=e-(i.length-a-1);for(;o-- >0;)i+="0"}return i}wh.stringifyNumber=iE});var kl=_(ro=>{"use strict";var aE=we(),Sl=Gs(),oE={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:t=>t.slice(-3).toLowerCase()==="nan"?NaN:t[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:Sl.stringifyNumber},cE={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/,resolve:t=>parseFloat(t),stringify(t){let e=Number(t.value);return isFinite(e)?e.toExponential():Sl.stringifyNumber(t)}},lE={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/,resolve(t){let e=new aE.Scalar(parseFloat(t)),r=t.indexOf(".");return r!==-1&&t[t.length-1]==="0"&&(e.minFractionDigits=t.length-r-1),e},stringify:Sl.stringifyNumber};ro.float=lE;ro.floatExp=cE;ro.floatNaN=oE});var Tl=_(no=>{"use strict";var $h=Gs(),so=t=>typeof t=="bigint"||Number.isInteger(t),El=(t,e,r,{intAsBigInt:s})=>s?BigInt(t):parseInt(t.substring(e),r);function Sh(t,e,r){let{value:s}=t;return so(s)&&s>=0?r+s.toString(e):$h.stringifyNumber(t)}var uE={identify:t=>so(t)&&t>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^0o[0-7]+$/,resolve:(t,e,r)=>El(t,2,8,r),stringify:t=>Sh(t,8,"0o")},dE={identify:so,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9]+$/,resolve:(t,e,r)=>El(t,0,10,r),stringify:$h.stringifyNumber},fE={identify:t=>so(t)&&t>=0,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^0x[0-9a-fA-F]+$/,resolve:(t,e,r)=>El(t,2,16,r),stringify:t=>Sh(t,16,"0x")};no.int=dE;no.intHex=fE;no.intOct=uE});var Eh=_(kh=>{"use strict";var pE=Js(),mE=to(),hE=Hs(),gE=Xn(),yE=$l(),Nl=kl(),Pl=Tl(),vE=[pE.map,hE.seq,gE.string,mE.nullTag,yE.boolTag,Pl.intOct,Pl.int,Pl.intHex,Nl.floatNaN,Nl.floatExp,Nl.float];kh.schema=vE});var Ph=_(Nh=>{"use strict";var _E=we(),bE=Js(),wE=Hs();function Th(t){return typeof t=="bigint"||Number.isInteger(t)}var io=({value:t})=>JSON.stringify(t),$E=[{identify:t=>typeof t=="string",default:!0,tag:"tag:yaml.org,2002:str",resolve:t=>t,stringify:io},{identify:t=>t==null,createNode:()=>new _E.Scalar(null),default:!0,tag:"tag:yaml.org,2002:null",test:/^null$/,resolve:()=>null,stringify:io},{identify:t=>typeof t=="boolean",default:!0,tag:"tag:yaml.org,2002:bool",test:/^true$|^false$/,resolve:t=>t==="true",stringify:io},{identify:Th,default:!0,tag:"tag:yaml.org,2002:int",test:/^-?(?:0|[1-9][0-9]*)$/,resolve:(t,e,{intAsBigInt:r})=>r?BigInt(t):parseInt(t,10),stringify:({value:t})=>Th(t)?t.toString():JSON.stringify(t)},{identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/,resolve:t=>parseFloat(t),stringify:io}],SE={default:!0,tag:"",test:/^/,resolve(t,e){return e(`Unresolved plain scalar ${JSON.stringify(t)}`),t}},kE=[bE.map,wE.seq].concat($E,SE);Nh.schema=kE});var Cl=_(Oh=>{"use strict";var ei=ka("buffer"),Ol=we(),EE=Gn(),TE={identify:t=>t instanceof Uint8Array,default:!1,tag:"tag:yaml.org,2002:binary",resolve(t,e){if(typeof ei.Buffer=="function")return ei.Buffer.from(t,"base64");if(typeof atob=="function"){let r=atob(t.replace(/[\n\r]/g,"")),s=new Uint8Array(r.length);for(let n=0;n<r.length;++n)s[n]=r.charCodeAt(n);return s}else return e("This environment does not support reading binary tags; either Buffer or atob is required"),t},stringify({comment:t,type:e,value:r},s,n,i){if(!r)return"";let a=r,o;if(typeof ei.Buffer=="function")o=a instanceof ei.Buffer?a.toString("base64"):ei.Buffer.from(a.buffer).toString("base64");else if(typeof btoa=="function"){let c="";for(let l=0;l<a.length;++l)c+=String.fromCharCode(a[l]);o=btoa(c)}else throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required");if(e??(e=Ol.Scalar.BLOCK_LITERAL),e!==Ol.Scalar.QUOTE_DOUBLE){let c=Math.max(s.options.lineWidth-s.indent.length,s.options.minContentWidth),l=Math.ceil(o.length/c),u=new Array(l);for(let d=0,f=0;d<l;++d,f+=c)u[d]=o.substr(f,c);o=u.join(e===Ol.Scalar.BLOCK_LITERAL?`
|
|
53
|
+
`:" ")}return EE.stringifyString({comment:t,type:e,value:o},s,n,i)}};Oh.binary=TE});var co=_(oo=>{"use strict";var ao=Q(),Al=_r(),NE=we(),PE=$r();function Ch(t,e){if(ao.isSeq(t))for(let r=0;r<t.items.length;++r){let s=t.items[r];if(!ao.isPair(s)){if(ao.isMap(s)){s.items.length>1&&e("Each pair must have its own sequence indicator");let n=s.items[0]||new Al.Pair(new NE.Scalar(null));if(s.commentBefore&&(n.key.commentBefore=n.key.commentBefore?`${s.commentBefore}
|
|
54
|
+
${n.key.commentBefore}`:s.commentBefore),s.comment){let i=n.value??n.key;i.comment=i.comment?`${s.comment}
|
|
55
|
+
${i.comment}`:s.comment}s=n}t.items[r]=ao.isPair(s)?s:new Al.Pair(s)}}else e("Expected a sequence for this tag");return t}function Ah(t,e,r){let{replacer:s}=r,n=new PE.YAMLSeq(t);n.tag="tag:yaml.org,2002:pairs";let i=0;if(e&&Symbol.iterator in Object(e))for(let a of e){typeof s=="function"&&(a=s.call(e,String(i++),a));let o,c;if(Array.isArray(a))if(a.length===2)o=a[0],c=a[1];else throw new TypeError(`Expected [key, value] tuple: ${a}`);else if(a&&a instanceof Object){let l=Object.keys(a);if(l.length===1)o=l[0],c=a[o];else throw new TypeError(`Expected tuple with one key, not ${l.length} keys`)}else o=a;n.items.push(Al.createPair(o,c,r))}return n}var OE={collection:"seq",default:!1,tag:"tag:yaml.org,2002:pairs",resolve:Ch,createNode:Ah};oo.createPairs=Ah;oo.pairs=OE;oo.resolvePairs=Ch});var Ml=_(Il=>{"use strict";var Rh=Q(),Rl=hr(),ti=wr(),CE=$r(),Ih=co(),cs=class t extends CE.YAMLSeq{constructor(){super(),this.add=ti.YAMLMap.prototype.add.bind(this),this.delete=ti.YAMLMap.prototype.delete.bind(this),this.get=ti.YAMLMap.prototype.get.bind(this),this.has=ti.YAMLMap.prototype.has.bind(this),this.set=ti.YAMLMap.prototype.set.bind(this),this.tag=t.tag}toJSON(e,r){if(!r)return super.toJSON(e);let s=new Map;r?.onCreate&&r.onCreate(s);for(let n of this.items){let i,a;if(Rh.isPair(n)?(i=Rl.toJS(n.key,"",r),a=Rl.toJS(n.value,i,r)):i=Rl.toJS(n,"",r),s.has(i))throw new Error("Ordered maps must not include duplicate keys");s.set(i,a)}return s}static from(e,r,s){let n=Ih.createPairs(e,r,s),i=new this;return i.items=n.items,i}};cs.tag="tag:yaml.org,2002:omap";var AE={collection:"seq",identify:t=>t instanceof Map,nodeClass:cs,default:!1,tag:"tag:yaml.org,2002:omap",resolve(t,e){let r=Ih.resolvePairs(t,e),s=[];for(let{key:n}of r.items)Rh.isScalar(n)&&(s.includes(n.value)?e(`Ordered maps must not include duplicate keys: ${n.value}`):s.push(n.value));return Object.assign(new cs,r)},createNode:(t,e,r)=>cs.from(t,e,r)};Il.YAMLOMap=cs;Il.omap=AE});var Dh=_(xl=>{"use strict";var Mh=we();function xh({value:t,source:e},r){return e&&(t?jh:qh).test.test(e)?e:t?r.options.trueStr:r.options.falseStr}var jh={identify:t=>t===!0,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/,resolve:()=>new Mh.Scalar(!0),stringify:xh},qh={identify:t=>t===!1,default:!0,tag:"tag:yaml.org,2002:bool",test:/^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/,resolve:()=>new Mh.Scalar(!1),stringify:xh};xl.falseTag=qh;xl.trueTag=jh});var Lh=_(lo=>{"use strict";var RE=we(),jl=Gs(),IE={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/,resolve:t=>t.slice(-3).toLowerCase()==="nan"?NaN:t[0]==="-"?Number.NEGATIVE_INFINITY:Number.POSITIVE_INFINITY,stringify:jl.stringifyNumber},ME={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"EXP",test:/^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/,resolve:t=>parseFloat(t.replace(/_/g,"")),stringify(t){let e=Number(t.value);return isFinite(e)?e.toExponential():jl.stringifyNumber(t)}},xE={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",test:/^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/,resolve(t){let e=new RE.Scalar(parseFloat(t.replace(/_/g,""))),r=t.indexOf(".");if(r!==-1){let s=t.substring(r+1).replace(/_/g,"");s[s.length-1]==="0"&&(e.minFractionDigits=s.length)}return e},stringify:jl.stringifyNumber};lo.float=xE;lo.floatExp=ME;lo.floatNaN=IE});var Uh=_(si=>{"use strict";var Fh=Gs(),ri=t=>typeof t=="bigint"||Number.isInteger(t);function uo(t,e,r,{intAsBigInt:s}){let n=t[0];if((n==="-"||n==="+")&&(e+=1),t=t.substring(e).replace(/_/g,""),s){switch(r){case 2:t=`0b${t}`;break;case 8:t=`0o${t}`;break;case 16:t=`0x${t}`;break}let a=BigInt(t);return n==="-"?BigInt(-1)*a:a}let i=parseInt(t,r);return n==="-"?-1*i:i}function ql(t,e,r){let{value:s}=t;if(ri(s)){let n=s.toString(e);return s<0?"-"+r+n.substr(1):r+n}return Fh.stringifyNumber(t)}var jE={identify:ri,default:!0,tag:"tag:yaml.org,2002:int",format:"BIN",test:/^[-+]?0b[0-1_]+$/,resolve:(t,e,r)=>uo(t,2,2,r),stringify:t=>ql(t,2,"0b")},qE={identify:ri,default:!0,tag:"tag:yaml.org,2002:int",format:"OCT",test:/^[-+]?0[0-7_]+$/,resolve:(t,e,r)=>uo(t,1,8,r),stringify:t=>ql(t,8,"0")},DE={identify:ri,default:!0,tag:"tag:yaml.org,2002:int",test:/^[-+]?[0-9][0-9_]*$/,resolve:(t,e,r)=>uo(t,0,10,r),stringify:Fh.stringifyNumber},LE={identify:ri,default:!0,tag:"tag:yaml.org,2002:int",format:"HEX",test:/^[-+]?0x[0-9a-fA-F_]+$/,resolve:(t,e,r)=>uo(t,2,16,r),stringify:t=>ql(t,16,"0x")};si.int=DE;si.intBin=jE;si.intHex=LE;si.intOct=qE});var Ll=_(Dl=>{"use strict";var mo=Q(),fo=_r(),po=wr(),ls=class t extends po.YAMLMap{constructor(e){super(e),this.tag=t.tag}add(e){let r;mo.isPair(e)?r=e:e&&typeof e=="object"&&"key"in e&&"value"in e&&e.value===null?r=new fo.Pair(e.key,null):r=new fo.Pair(e,null),po.findPair(this.items,r.key)||this.items.push(r)}get(e,r){let s=po.findPair(this.items,e);return!r&&mo.isPair(s)?mo.isScalar(s.key)?s.key.value:s.key:s}set(e,r){if(typeof r!="boolean")throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof r}`);let s=po.findPair(this.items,e);s&&!r?this.items.splice(this.items.indexOf(s),1):!s&&r&&this.items.push(new fo.Pair(e))}toJSON(e,r){return super.toJSON(e,r,Set)}toString(e,r,s){if(!e)return JSON.stringify(this);if(this.hasAllNullValues(!0))return super.toString(Object.assign({},e,{allNullValues:!0}),r,s);throw new Error("Set items must all have null values")}static from(e,r,s){let{replacer:n}=s,i=new this(e);if(r&&Symbol.iterator in Object(r))for(let a of r)typeof n=="function"&&(a=n.call(r,a,a)),i.items.push(fo.createPair(a,null,s));return i}};ls.tag="tag:yaml.org,2002:set";var FE={collection:"map",identify:t=>t instanceof Set,nodeClass:ls,default:!1,tag:"tag:yaml.org,2002:set",createNode:(t,e,r)=>ls.from(t,e,r),resolve(t,e){if(mo.isMap(t)){if(t.hasAllNullValues(!0))return Object.assign(new ls,t);e("Set items must all have null values")}else e("Expected a mapping for this tag");return t}};Dl.YAMLSet=ls;Dl.set=FE});var Ul=_(ho=>{"use strict";var UE=Gs();function Fl(t,e){let r=t[0],s=r==="-"||r==="+"?t.substring(1):t,n=a=>e?BigInt(a):Number(a),i=s.replace(/_/g,"").split(":").reduce((a,o)=>a*n(60)+n(o),n(0));return r==="-"?n(-1)*i:i}function Vh(t){let{value:e}=t,r=a=>a;if(typeof e=="bigint")r=a=>BigInt(a);else if(isNaN(e)||!isFinite(e))return UE.stringifyNumber(t);let s="";e<0&&(s="-",e*=r(-1));let n=r(60),i=[e%n];return e<60?i.unshift(0):(e=(e-i[0])/n,i.unshift(e%n),e>=60&&(e=(e-i[0])/n,i.unshift(e))),s+i.map(a=>String(a).padStart(2,"0")).join(":").replace(/000000\d*$/,"")}var VE={identify:t=>typeof t=="bigint"||Number.isInteger(t),default:!0,tag:"tag:yaml.org,2002:int",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/,resolve:(t,e,{intAsBigInt:r})=>Fl(t,r),stringify:Vh},KE={identify:t=>typeof t=="number",default:!0,tag:"tag:yaml.org,2002:float",format:"TIME",test:/^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/,resolve:t=>Fl(t,!1),stringify:Vh},Kh={identify:t=>t 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(t){let e=t.match(Kh.test);if(!e)throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd");let[,r,s,n,i,a,o]=e.map(Number),c=e[7]?Number((e[7]+"00").substr(1,3)):0,l=Date.UTC(r,s-1,n,i||0,a||0,o||0,c),u=e[8];if(u&&u!=="Z"){let d=Fl(u,!1);Math.abs(d)<30&&(d*=60),l-=6e4*d}return new Date(l)},stringify:({value:t})=>t?.toISOString().replace(/(T00:00:00)?\.000Z$/,"")??""};ho.floatTime=KE;ho.intTime=VE;ho.timestamp=Kh});var Jh=_(Bh=>{"use strict";var zE=Js(),BE=to(),JE=Hs(),HE=Xn(),GE=Cl(),zh=Dh(),Vl=Lh(),go=Uh(),YE=Ha(),WE=Ml(),ZE=co(),QE=Ll(),Kl=Ul(),XE=[zE.map,JE.seq,HE.string,BE.nullTag,zh.trueTag,zh.falseTag,go.intBin,go.intOct,go.int,go.intHex,Vl.floatNaN,Vl.floatExp,Vl.float,GE.binary,YE.merge,WE.omap,ZE.pairs,QE.set,Kl.intTime,Kl.floatTime,Kl.timestamp];Bh.schema=XE});var rg=_(Jl=>{"use strict";var Wh=Js(),e1=to(),Zh=Hs(),t1=Xn(),r1=$l(),zl=kl(),Bl=Tl(),s1=Eh(),n1=Ph(),Qh=Cl(),ni=Ha(),Xh=Ml(),eg=co(),Hh=Jh(),tg=Ll(),yo=Ul(),Gh=new Map([["core",s1.schema],["failsafe",[Wh.map,Zh.seq,t1.string]],["json",n1.schema],["yaml11",Hh.schema],["yaml-1.1",Hh.schema]]),Yh={binary:Qh.binary,bool:r1.boolTag,float:zl.float,floatExp:zl.floatExp,floatNaN:zl.floatNaN,floatTime:yo.floatTime,int:Bl.int,intHex:Bl.intHex,intOct:Bl.intOct,intTime:yo.intTime,map:Wh.map,merge:ni.merge,null:e1.nullTag,omap:Xh.omap,pairs:eg.pairs,seq:Zh.seq,set:tg.set,timestamp:yo.timestamp},i1={"tag:yaml.org,2002:binary":Qh.binary,"tag:yaml.org,2002:merge":ni.merge,"tag:yaml.org,2002:omap":Xh.omap,"tag:yaml.org,2002:pairs":eg.pairs,"tag:yaml.org,2002:set":tg.set,"tag:yaml.org,2002:timestamp":yo.timestamp};function a1(t,e,r){let s=Gh.get(e);if(s&&!t)return r&&!s.includes(ni.merge)?s.concat(ni.merge):s.slice();let n=s;if(!n)if(Array.isArray(t))n=[];else{let i=Array.from(Gh.keys()).filter(a=>a!=="yaml11").map(a=>JSON.stringify(a)).join(", ");throw new Error(`Unknown schema "${e}"; use one of ${i} or define customTags array`)}if(Array.isArray(t))for(let i of t)n=n.concat(i);else typeof t=="function"&&(n=t(n.slice()));return r&&(n=n.concat(ni.merge)),n.reduce((i,a)=>{let o=typeof a=="string"?Yh[a]:a;if(!o){let c=JSON.stringify(a),l=Object.keys(Yh).map(u=>JSON.stringify(u)).join(", ");throw new Error(`Unknown custom tag ${c}; use one of ${l}`)}return i.includes(o)||i.push(o),i},[])}Jl.coreKnownTags=i1;Jl.getTags=a1});var Yl=_(sg=>{"use strict";var Hl=Q(),o1=Js(),c1=Hs(),l1=Xn(),vo=rg(),u1=(t,e)=>t.key<e.key?-1:t.key>e.key?1:0,Gl=class t{constructor({compat:e,customTags:r,merge:s,resolveKnownTags:n,schema:i,sortMapEntries:a,toStringDefaults:o}){this.compat=Array.isArray(e)?vo.getTags(e,"compat"):e?vo.getTags(null,e):null,this.name=typeof i=="string"&&i||"core",this.knownTags=n?vo.coreKnownTags:{},this.tags=vo.getTags(r,this.name,s),this.toStringOptions=o??null,Object.defineProperty(this,Hl.MAP,{value:o1.map}),Object.defineProperty(this,Hl.SCALAR,{value:l1.string}),Object.defineProperty(this,Hl.SEQ,{value:c1.seq}),this.sortMapEntries=typeof a=="function"?a:a===!0?u1:null}clone(){let e=Object.create(t.prototype,Object.getOwnPropertyDescriptors(this));return e.tags=this.tags.slice(),e}};sg.Schema=Gl});var ig=_(ng=>{"use strict";var d1=Q(),Wl=Yn(),ii=Bn();function f1(t,e){let r=[],s=e.directives===!0;if(e.directives!==!1&&t.directives){let c=t.directives.toString(t);c?(r.push(c),s=!0):t.directives.docStart&&(s=!0)}s&&r.push("---");let n=Wl.createStringifyContext(t,e),{commentString:i}=n.options;if(t.commentBefore){r.length!==1&&r.unshift("");let c=i(t.commentBefore);r.unshift(ii.indentComment(c,""))}let a=!1,o=null;if(t.contents){if(d1.isNode(t.contents)){if(t.contents.spaceBefore&&s&&r.push(""),t.contents.commentBefore){let u=i(t.contents.commentBefore);r.push(ii.indentComment(u,""))}n.forceBlockIndent=!!t.comment,o=t.contents.comment}let c=o?void 0:()=>a=!0,l=Wl.stringify(t.contents,n,()=>o=null,c);o&&(l+=ii.lineComment(l,"",i(o))),(l[0]==="|"||l[0]===">")&&r[r.length-1]==="---"?r[r.length-1]=`--- ${l}`:r.push(l)}else r.push(Wl.stringify(t.contents,n));if(t.directives?.docEnd)if(t.comment){let c=i(t.comment);c.includes(`
|
|
56
|
+
`)?(r.push("..."),r.push(ii.indentComment(c,""))):r.push(`... ${c}`)}else r.push("...");else{let c=t.comment;c&&a&&(c=c.replace(/^\n+/,"")),c&&((!a||o)&&r[r.length-1]!==""&&r.push(""),r.push(ii.indentComment(i(c),"")))}return r.join(`
|
|
57
|
+
`)+`
|
|
58
|
+
`}ng.stringifyDocument=f1});var ai=_(ag=>{"use strict";var p1=Kn(),Ys=Da(),at=Q(),m1=_r(),h1=hr(),g1=Yl(),y1=ig(),Zl=Ma(),v1=tl(),_1=zn(),Ql=el(),Xl=class t{constructor(e,r,s){this.commentBefore=null,this.comment=null,this.errors=[],this.warnings=[],Object.defineProperty(this,at.NODE_TYPE,{value:at.DOC});let n=null;typeof r=="function"||Array.isArray(r)?n=r:s===void 0&&r&&(s=r,r=void 0);let i=Object.assign({intAsBigInt:!1,keepSourceTokens:!1,logLevel:"warn",prettyErrors:!0,strict:!0,stringKeys:!1,uniqueKeys:!0,version:"1.2"},s);this.options=i;let{version:a}=i;s?._directives?(this.directives=s._directives.atDocument(),this.directives.yaml.explicit&&(a=this.directives.yaml.version)):this.directives=new Ql.Directives({version:a}),this.setSchema(a,s),this.contents=e===void 0?null:this.createNode(e,n,s)}clone(){let e=Object.create(t.prototype,{[at.NODE_TYPE]:{value:at.DOC}});return e.commentBefore=this.commentBefore,e.comment=this.comment,e.errors=this.errors.slice(),e.warnings=this.warnings.slice(),e.options=Object.assign({},this.options),this.directives&&(e.directives=this.directives.clone()),e.schema=this.schema.clone(),e.contents=at.isNode(this.contents)?this.contents.clone(e.schema):this.contents,this.range&&(e.range=this.range.slice()),e}add(e){Ws(this.contents)&&this.contents.add(e)}addIn(e,r){Ws(this.contents)&&this.contents.addIn(e,r)}createAlias(e,r){if(!e.anchor){let s=Zl.anchorNames(this);e.anchor=!r||s.has(r)?Zl.findNewAnchor(r||"a",s):r}return new p1.Alias(e.anchor)}createNode(e,r,s){let n;if(typeof r=="function")e=r.call({"":e},"",e),n=r;else if(Array.isArray(r)){let g=v=>typeof v=="number"||v instanceof String||v instanceof Number,h=r.filter(g).map(String);h.length>0&&(r=r.concat(h)),n=r}else s===void 0&&r&&(s=r,r=void 0);let{aliasDuplicateObjects:i,anchorPrefix:a,flow:o,keepUndefined:c,onTagObj:l,tag:u}=s??{},{onAnchor:d,setAnchors:f,sourceObjects:p}=Zl.createNodeAnchors(this,a||"a"),y={aliasDuplicateObjects:i??!0,keepUndefined:c??!1,onAnchor:d,onTagObj:l,replacer:n,schema:this.schema,sourceObjects:p},m=_1.createNode(e,u,y);return o&&at.isCollection(m)&&(m.flow=!0),f(),m}createPair(e,r,s={}){let n=this.createNode(e,null,s),i=this.createNode(r,null,s);return new m1.Pair(n,i)}delete(e){return Ws(this.contents)?this.contents.delete(e):!1}deleteIn(e){return Ys.isEmptyPath(e)?this.contents==null?!1:(this.contents=null,!0):Ws(this.contents)?this.contents.deleteIn(e):!1}get(e,r){return at.isCollection(this.contents)?this.contents.get(e,r):void 0}getIn(e,r){return Ys.isEmptyPath(e)?!r&&at.isScalar(this.contents)?this.contents.value:this.contents:at.isCollection(this.contents)?this.contents.getIn(e,r):void 0}has(e){return at.isCollection(this.contents)?this.contents.has(e):!1}hasIn(e){return Ys.isEmptyPath(e)?this.contents!==void 0:at.isCollection(this.contents)?this.contents.hasIn(e):!1}set(e,r){this.contents==null?this.contents=Ys.collectionFromPath(this.schema,[e],r):Ws(this.contents)&&this.contents.set(e,r)}setIn(e,r){Ys.isEmptyPath(e)?this.contents=r:this.contents==null?this.contents=Ys.collectionFromPath(this.schema,Array.from(e),r):Ws(this.contents)&&this.contents.setIn(e,r)}setSchema(e,r={}){typeof e=="number"&&(e=String(e));let s;switch(e){case"1.1":this.directives?this.directives.yaml.version="1.1":this.directives=new Ql.Directives({version:"1.1"}),s={resolveKnownTags:!1,schema:"yaml-1.1"};break;case"1.2":case"next":this.directives?this.directives.yaml.version=e:this.directives=new Ql.Directives({version:e}),s={resolveKnownTags:!0,schema:"core"};break;case null:this.directives&&delete this.directives,s=null;break;default:{let n=JSON.stringify(e);throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${n}`)}}if(r.schema instanceof Object)this.schema=r.schema;else if(s)this.schema=new g1.Schema(Object.assign(s,r));else throw new Error("With a null YAML version, the { schema: Schema } option is required")}toJS({json:e,jsonArg:r,mapAsMap:s,maxAliasCount:n,onAnchor:i,reviver:a}={}){let o={anchors:new Map,doc:this,keep:!e,mapAsMap:s===!0,mapKeyWarned:!1,maxAliasCount:typeof n=="number"?n:100},c=h1.toJS(this.contents,r??"",o);if(typeof i=="function")for(let{count:l,res:u}of o.anchors.values())i(u,l);return typeof a=="function"?v1.applyReviver(a,{"":c},"",c):c}toJSON(e,r){return this.toJS({json:!0,jsonArg:e,mapAsMap:!1,onAnchor:r})}toString(e={}){if(this.errors.length>0)throw new Error("Document with errors cannot be stringified");if("indent"in e&&(!Number.isInteger(e.indent)||Number(e.indent)<=0)){let r=JSON.stringify(e.indent);throw new Error(`"indent" option must be a positive integer, not ${r}`)}return y1.stringifyDocument(this,e)}};function Ws(t){if(at.isCollection(t))return!0;throw new Error("Expected a YAML collection as document contents")}ag.Document=Xl});var li=_(ci=>{"use strict";var oi=class extends Error{constructor(e,r,s,n){super(),this.name=e,this.code=s,this.message=n,this.pos=r}},eu=class extends oi{constructor(e,r,s){super("YAMLParseError",e,r,s)}},tu=class extends oi{constructor(e,r,s){super("YAMLWarning",e,r,s)}},b1=(t,e)=>r=>{if(r.pos[0]===-1)return;r.linePos=r.pos.map(o=>e.linePos(o));let{line:s,col:n}=r.linePos[0];r.message+=` at line ${s}, column ${n}`;let i=n-1,a=t.substring(e.lineStarts[s-1],e.lineStarts[s]).replace(/[\n\r]+$/,"");if(i>=60&&a.length>80){let o=Math.min(i-39,a.length-79);a="\u2026"+a.substring(o),i-=o-1}if(a.length>80&&(a=a.substring(0,79)+"\u2026"),s>1&&/^ *$/.test(a.substring(0,i))){let o=t.substring(e.lineStarts[s-2],e.lineStarts[s-1]);o.length>80&&(o=o.substring(0,79)+`\u2026
|
|
59
|
+
`),a=o+a}if(/[^ ]/.test(a)){let o=1,c=r.linePos[1];c?.line===s&&c.col>n&&(o=Math.max(1,Math.min(c.col-n,80-i)));let l=" ".repeat(i)+"^".repeat(o);r.message+=`:
|
|
60
|
+
|
|
61
|
+
${a}
|
|
62
|
+
${l}
|
|
63
|
+
`}};ci.YAMLError=oi;ci.YAMLParseError=eu;ci.YAMLWarning=tu;ci.prettifyError=b1});var ui=_(og=>{"use strict";function w1(t,{flow:e,indicator:r,next:s,offset:n,onError:i,parentIndent:a,startOnNewline:o}){let c=!1,l=o,u=o,d="",f="",p=!1,y=!1,m=null,g=null,h=null,v=null,b=null,$=null,w=null;for(let T of t)switch(y&&(T.type!=="space"&&T.type!=="newline"&&T.type!=="comma"&&i(T.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),y=!1),m&&(l&&T.type!=="comment"&&T.type!=="newline"&&i(m,"TAB_AS_INDENT","Tabs are not allowed as indentation"),m=null),T.type){case"space":!e&&(r!=="doc-start"||s?.type!=="flow-collection")&&T.source.includes(" ")&&(m=T),u=!0;break;case"comment":{u||i(T,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let se=T.source.substring(1)||" ";d?d+=f+se:d=se,f="",l=!1;break}case"newline":l?d?d+=T.source:(!$||r!=="seq-item-ind")&&(c=!0):f+=T.source,l=!0,p=!0,(g||h)&&(v=T),u=!0;break;case"anchor":g&&i(T,"MULTIPLE_ANCHORS","A node can have at most one anchor"),T.source.endsWith(":")&&i(T.offset+T.source.length-1,"BAD_ALIAS","Anchor ending in : is ambiguous",!0),g=T,w??(w=T.offset),l=!1,u=!1,y=!0;break;case"tag":{h&&i(T,"MULTIPLE_TAGS","A node can have at most one tag"),h=T,w??(w=T.offset),l=!1,u=!1,y=!0;break}case r:(g||h)&&i(T,"BAD_PROP_ORDER",`Anchors and tags must be after the ${T.source} indicator`),$&&i(T,"UNEXPECTED_TOKEN",`Unexpected ${T.source} in ${e??"collection"}`),$=T,l=r==="seq-item-ind"||r==="explicit-key-ind",u=!1;break;case"comma":if(e){b&&i(T,"UNEXPECTED_TOKEN",`Unexpected , in ${e}`),b=T,l=!1,u=!1;break}default:i(T,"UNEXPECTED_TOKEN",`Unexpected ${T.type} token`),l=!1,u=!1}let k=t[t.length-1],N=k?k.offset+k.source.length:n;return y&&s&&s.type!=="space"&&s.type!=="newline"&&s.type!=="comma"&&(s.type!=="scalar"||s.source!=="")&&i(s.offset,"MISSING_CHAR","Tags and anchors must be separated from the next token by white space"),m&&(l&&m.indent<=a||s?.type==="block-map"||s?.type==="block-seq")&&i(m,"TAB_AS_INDENT","Tabs are not allowed as indentation"),{comma:b,found:$,spaceBefore:c,comment:d,hasNewline:p,anchor:g,tag:h,newlineAfterProp:v,end:N,start:w??N}}og.resolveProps=w1});var _o=_(cg=>{"use strict";function ru(t){if(!t)return null;switch(t.type){case"alias":case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":if(t.source.includes(`
|
|
64
|
+
`))return!0;if(t.end){for(let e of t.end)if(e.type==="newline")return!0}return!1;case"flow-collection":for(let e of t.items){for(let r of e.start)if(r.type==="newline")return!0;if(e.sep){for(let r of e.sep)if(r.type==="newline")return!0}if(ru(e.key)||ru(e.value))return!0}return!1;default:return!0}}cg.containsNewline=ru});var su=_(lg=>{"use strict";var $1=_o();function S1(t,e,r){if(e?.type==="flow-collection"){let s=e.end[0];s.indent===t&&(s.source==="]"||s.source==="}")&&$1.containsNewline(e)&&r(s,"BAD_INDENT","Flow end indicator should be more indented than parent",!0)}}lg.flowIndentCheck=S1});var nu=_(dg=>{"use strict";var ug=Q();function k1(t,e,r){let{uniqueKeys:s}=t.options;if(s===!1)return!1;let n=typeof s=="function"?s:(i,a)=>i===a||ug.isScalar(i)&&ug.isScalar(a)&&i.value===a.value;return e.some(i=>n(i.key,r))}dg.mapIncludes=k1});var yg=_(gg=>{"use strict";var fg=_r(),E1=wr(),pg=ui(),T1=_o(),mg=su(),N1=nu(),hg="All mapping items must start at the same column";function P1({composeNode:t,composeEmptyNode:e},r,s,n,i){let a=i?.nodeClass??E1.YAMLMap,o=new a(r.schema);r.atRoot&&(r.atRoot=!1);let c=s.offset,l=null;for(let u of s.items){let{start:d,key:f,sep:p,value:y}=u,m=pg.resolveProps(d,{indicator:"explicit-key-ind",next:f??p?.[0],offset:c,onError:n,parentIndent:s.indent,startOnNewline:!0}),g=!m.found;if(g){if(f&&(f.type==="block-seq"?n(c,"BLOCK_AS_IMPLICIT_KEY","A block sequence may not be used as an implicit map key"):"indent"in f&&f.indent!==s.indent&&n(c,"BAD_INDENT",hg)),!m.anchor&&!m.tag&&!p){l=m.end,m.comment&&(o.comment?o.comment+=`
|
|
65
|
+
`+m.comment:o.comment=m.comment);continue}(m.newlineAfterProp||T1.containsNewline(f))&&n(f??d[d.length-1],"MULTILINE_IMPLICIT_KEY","Implicit keys need to be on a single line")}else m.found?.indent!==s.indent&&n(c,"BAD_INDENT",hg);r.atKey=!0;let h=m.end,v=f?t(r,f,m,n):e(r,h,d,null,m,n);r.schema.compat&&mg.flowIndentCheck(s.indent,f,n),r.atKey=!1,N1.mapIncludes(r,o.items,v)&&n(h,"DUPLICATE_KEY","Map keys must be unique");let b=pg.resolveProps(p??[],{indicator:"map-value-ind",next:y,offset:v.range[2],onError:n,parentIndent:s.indent,startOnNewline:!f||f.type==="block-scalar"});if(c=b.end,b.found){g&&(y?.type==="block-map"&&!b.hasNewline&&n(c,"BLOCK_AS_IMPLICIT_KEY","Nested mappings are not allowed in compact mappings"),r.options.strict&&m.start<b.found.offset-1024&&n(v.range,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit block mapping key"));let $=y?t(r,y,b,n):e(r,c,p,null,b,n);r.schema.compat&&mg.flowIndentCheck(s.indent,y,n),c=$.range[2];let w=new fg.Pair(v,$);r.options.keepSourceTokens&&(w.srcToken=u),o.items.push(w)}else{g&&n(v.range,"MISSING_CHAR","Implicit map keys need to be followed by map values"),b.comment&&(v.comment?v.comment+=`
|
|
66
|
+
`+b.comment:v.comment=b.comment);let $=new fg.Pair(v);r.options.keepSourceTokens&&($.srcToken=u),o.items.push($)}}return l&&l<c&&n(l,"IMPOSSIBLE","Map comment with trailing content"),o.range=[s.offset,c,l??c],o}gg.resolveBlockMap=P1});var _g=_(vg=>{"use strict";var O1=$r(),C1=ui(),A1=su();function R1({composeNode:t,composeEmptyNode:e},r,s,n,i){let a=i?.nodeClass??O1.YAMLSeq,o=new a(r.schema);r.atRoot&&(r.atRoot=!1),r.atKey&&(r.atKey=!1);let c=s.offset,l=null;for(let{start:u,value:d}of s.items){let f=C1.resolveProps(u,{indicator:"seq-item-ind",next:d,offset:c,onError:n,parentIndent:s.indent,startOnNewline:!0});if(!f.found)if(f.anchor||f.tag||d)d?.type==="block-seq"?n(f.end,"BAD_INDENT","All sequence items must start at the same column"):n(c,"MISSING_CHAR","Sequence item without - indicator");else{l=f.end,f.comment&&(o.comment=f.comment);continue}let p=d?t(r,d,f,n):e(r,f.end,u,null,f,n);r.schema.compat&&A1.flowIndentCheck(s.indent,d,n),c=p.range[2],o.items.push(p)}return o.range=[s.offset,c,l??c],o}vg.resolveBlockSeq=R1});var Zs=_(bg=>{"use strict";function I1(t,e,r,s){let n="";if(t){let i=!1,a="";for(let o of t){let{source:c,type:l}=o;switch(l){case"space":i=!0;break;case"comment":{r&&!i&&s(o,"MISSING_CHAR","Comments must be separated from other tokens by white space characters");let u=c.substring(1)||" ";n?n+=a+u:n=u,a="";break}case"newline":n&&(a+=c),i=!0;break;default:s(o,"UNEXPECTED_TOKEN",`Unexpected ${l} at node end`)}e+=c.length}}return{comment:n,offset:e}}bg.resolveEnd=I1});var kg=_(Sg=>{"use strict";var M1=Q(),x1=_r(),wg=wr(),j1=$r(),q1=Zs(),$g=ui(),D1=_o(),L1=nu(),iu="Block collections are not allowed within flow collections",au=t=>t&&(t.type==="block-map"||t.type==="block-seq");function F1({composeNode:t,composeEmptyNode:e},r,s,n,i){let a=s.start.source==="{",o=a?"flow map":"flow sequence",c=i?.nodeClass??(a?wg.YAMLMap:j1.YAMLSeq),l=new c(r.schema);l.flow=!0;let u=r.atRoot;u&&(r.atRoot=!1),r.atKey&&(r.atKey=!1);let d=s.offset+s.start.source.length;for(let g=0;g<s.items.length;++g){let h=s.items[g],{start:v,key:b,sep:$,value:w}=h,k=$g.resolveProps(v,{flow:o,indicator:"explicit-key-ind",next:b??$?.[0],offset:d,onError:n,parentIndent:s.indent,startOnNewline:!1});if(!k.found){if(!k.anchor&&!k.tag&&!$&&!w){g===0&&k.comma?n(k.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${o}`):g<s.items.length-1&&n(k.start,"UNEXPECTED_TOKEN",`Unexpected empty item in ${o}`),k.comment&&(l.comment?l.comment+=`
|
|
67
|
+
`+k.comment:l.comment=k.comment),d=k.end;continue}!a&&r.options.strict&&D1.containsNewline(b)&&n(b,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line")}if(g===0)k.comma&&n(k.comma,"UNEXPECTED_TOKEN",`Unexpected , in ${o}`);else if(k.comma||n(k.start,"MISSING_CHAR",`Missing , between ${o} items`),k.comment){let N="";e:for(let T of v)switch(T.type){case"comma":case"space":break;case"comment":N=T.source.substring(1);break e;default:break e}if(N){let T=l.items[l.items.length-1];M1.isPair(T)&&(T=T.value??T.key),T.comment?T.comment+=`
|
|
68
|
+
`+N:T.comment=N,k.comment=k.comment.substring(N.length+1)}}if(!a&&!$&&!k.found){let N=w?t(r,w,k,n):e(r,k.end,$,null,k,n);l.items.push(N),d=N.range[2],au(w)&&n(N.range,"BLOCK_IN_FLOW",iu)}else{r.atKey=!0;let N=k.end,T=b?t(r,b,k,n):e(r,N,v,null,k,n);au(b)&&n(T.range,"BLOCK_IN_FLOW",iu),r.atKey=!1;let se=$g.resolveProps($??[],{flow:o,indicator:"map-value-ind",next:w,offset:T.range[2],onError:n,parentIndent:s.indent,startOnNewline:!1});if(se.found){if(!a&&!k.found&&r.options.strict){if($)for(let D of $){if(D===se.found)break;if(D.type==="newline"){n(D,"MULTILINE_IMPLICIT_KEY","Implicit keys of flow sequence pairs need to be on a single line");break}}k.start<se.found.offset-1024&&n(se.found,"KEY_OVER_1024_CHARS","The : indicator must be at most 1024 chars after the start of an implicit flow sequence key")}}else w&&("source"in w&&w.source?.[0]===":"?n(w,"MISSING_CHAR",`Missing space after : in ${o}`):n(se.start,"MISSING_CHAR",`Missing , or : between ${o} items`));let ve=w?t(r,w,se,n):se.found?e(r,se.end,$,null,se,n):null;ve?au(w)&&n(ve.range,"BLOCK_IN_FLOW",iu):se.comment&&(T.comment?T.comment+=`
|
|
69
|
+
`+se.comment:T.comment=se.comment);let ke=new x1.Pair(T,ve);if(r.options.keepSourceTokens&&(ke.srcToken=h),a){let D=l;L1.mapIncludes(r,D.items,T)&&n(N,"DUPLICATE_KEY","Map keys must be unique"),D.items.push(ke)}else{let D=new wg.YAMLMap(r.schema);D.flow=!0,D.items.push(ke);let ue=(ve??T).range;D.range=[T.range[0],ue[1],ue[2]],l.items.push(D)}d=ve?ve.range[2]:se.end}}let f=a?"}":"]",[p,...y]=s.end,m=d;if(p?.source===f)m=p.offset+p.source.length;else{let g=o[0].toUpperCase()+o.substring(1),h=u?`${g} must end with a ${f}`:`${g} in block collection must be sufficiently indented and end with a ${f}`;n(d,u?"MISSING_CHAR":"BAD_INDENT",h),p&&p.source.length!==1&&y.unshift(p)}if(y.length>0){let g=q1.resolveEnd(y,m,r.options.strict,n);g.comment&&(l.comment?l.comment+=`
|
|
70
|
+
`+g.comment:l.comment=g.comment),l.range=[s.offset,m,g.offset]}else l.range=[s.offset,m,m];return l}Sg.resolveFlowCollection=F1});var Tg=_(Eg=>{"use strict";var U1=Q(),V1=we(),K1=wr(),z1=$r(),B1=yg(),J1=_g(),H1=kg();function ou(t,e,r,s,n,i){let a=r.type==="block-map"?B1.resolveBlockMap(t,e,r,s,i):r.type==="block-seq"?J1.resolveBlockSeq(t,e,r,s,i):H1.resolveFlowCollection(t,e,r,s,i),o=a.constructor;return n==="!"||n===o.tagName?(a.tag=o.tagName,a):(n&&(a.tag=n),a)}function G1(t,e,r,s,n){let i=s.tag,a=i?e.directives.tagName(i.source,f=>n(i,"TAG_RESOLVE_FAILED",f)):null;if(r.type==="block-seq"){let{anchor:f,newlineAfterProp:p}=s,y=f&&i?f.offset>i.offset?f:i:f??i;y&&(!p||p.offset<y.offset)&&n(y,"MISSING_CHAR","Missing newline after block sequence props")}let o=r.type==="block-map"?"map":r.type==="block-seq"?"seq":r.start.source==="{"?"map":"seq";if(!i||!a||a==="!"||a===K1.YAMLMap.tagName&&o==="map"||a===z1.YAMLSeq.tagName&&o==="seq")return ou(t,e,r,n,a);let c=e.schema.tags.find(f=>f.tag===a&&f.collection===o);if(!c){let f=e.schema.knownTags[a];if(f?.collection===o)e.schema.tags.push(Object.assign({},f,{default:!1})),c=f;else return f?n(i,"BAD_COLLECTION_TYPE",`${f.tag} used for ${o} collection, but expects ${f.collection??"scalar"}`,!0):n(i,"TAG_RESOLVE_FAILED",`Unresolved tag: ${a}`,!0),ou(t,e,r,n,a)}let l=ou(t,e,r,n,a,c),u=c.resolve?.(l,f=>n(i,"TAG_RESOLVE_FAILED",f),e.options)??l,d=U1.isNode(u)?u:new V1.Scalar(u);return d.range=l.range,d.tag=a,c?.format&&(d.format=c.format),d}Eg.composeCollection=G1});var lu=_(Ng=>{"use strict";var cu=we();function Y1(t,e,r){let s=e.offset,n=W1(e,t.options.strict,r);if(!n)return{value:"",type:null,comment:"",range:[s,s,s]};let i=n.mode===">"?cu.Scalar.BLOCK_FOLDED:cu.Scalar.BLOCK_LITERAL,a=e.source?Z1(e.source):[],o=a.length;for(let m=a.length-1;m>=0;--m){let g=a[m][1];if(g===""||g==="\r")o=m;else break}if(o===0){let m=n.chomp==="+"&&a.length>0?`
|
|
71
|
+
`.repeat(Math.max(1,a.length-1)):"",g=s+n.length;return e.source&&(g+=e.source.length),{value:m,type:i,comment:n.comment,range:[s,g,g]}}let c=e.indent+n.indent,l=e.offset+n.length,u=0;for(let m=0;m<o;++m){let[g,h]=a[m];if(h===""||h==="\r")n.indent===0&&g.length>c&&(c=g.length);else{g.length<c&&r(l+g.length,"MISSING_CHAR","Block scalars with more-indented leading empty lines must use an explicit indentation indicator"),n.indent===0&&(c=g.length),u=m,c===0&&!t.atRoot&&r(l,"BAD_INDENT","Block scalar values in collections must be indented");break}l+=g.length+h.length+1}for(let m=a.length-1;m>=o;--m)a[m][0].length>c&&(o=m+1);let d="",f="",p=!1;for(let m=0;m<u;++m)d+=a[m][0].slice(c)+`
|
|
72
|
+
`;for(let m=u;m<o;++m){let[g,h]=a[m];l+=g.length+h.length+1;let v=h[h.length-1]==="\r";if(v&&(h=h.slice(0,-1)),h&&g.length<c){let $=`Block scalar lines must not be less indented than their ${n.indent?"explicit indentation indicator":"first line"}`;r(l-h.length-(v?2:1),"BAD_INDENT",$),g=""}i===cu.Scalar.BLOCK_LITERAL?(d+=f+g.slice(c)+h,f=`
|
|
73
|
+
`):g.length>c||h[0]===" "?(f===" "?f=`
|
|
74
|
+
`:!p&&f===`
|
|
75
|
+
`&&(f=`
|
|
76
|
+
|
|
77
|
+
`),d+=f+g.slice(c)+h,f=`
|
|
78
|
+
`,p=!0):h===""?f===`
|
|
79
|
+
`?d+=`
|
|
80
|
+
`:f=`
|
|
81
|
+
`:(d+=f+h,f=" ",p=!1)}switch(n.chomp){case"-":break;case"+":for(let m=o;m<a.length;++m)d+=`
|
|
82
|
+
`+a[m][0].slice(c);d[d.length-1]!==`
|
|
83
|
+
`&&(d+=`
|
|
84
|
+
`);break;default:d+=`
|
|
85
|
+
`}let y=s+n.length+e.source.length;return{value:d,type:i,comment:n.comment,range:[s,y,y]}}function W1({offset:t,props:e},r,s){if(e[0].type!=="block-scalar-header")return s(e[0],"IMPOSSIBLE","Block scalar header not found"),null;let{source:n}=e[0],i=n[0],a=0,o="",c=-1;for(let f=1;f<n.length;++f){let p=n[f];if(!o&&(p==="-"||p==="+"))o=p;else{let y=Number(p);!a&&y?a=y:c===-1&&(c=t+f)}}c!==-1&&s(c,"UNEXPECTED_TOKEN",`Block scalar header includes extra characters: ${n}`);let l=!1,u="",d=n.length;for(let f=1;f<e.length;++f){let p=e[f];switch(p.type){case"space":l=!0;case"newline":d+=p.source.length;break;case"comment":r&&!l&&s(p,"MISSING_CHAR","Comments must be separated from other tokens by white space characters"),d+=p.source.length,u=p.source.substring(1);break;case"error":s(p,"UNEXPECTED_TOKEN",p.message),d+=p.source.length;break;default:{let y=`Unexpected token in block scalar header: ${p.type}`;s(p,"UNEXPECTED_TOKEN",y);let m=p.source;m&&typeof m=="string"&&(d+=m.length)}}}return{mode:i,indent:a,chomp:o,comment:u,length:d}}function Z1(t){let e=t.split(/\n( *)/),r=e[0],s=r.match(/^( *)/),i=[s?.[1]?[s[1],r.slice(s[1].length)]:["",r]];for(let a=1;a<e.length;a+=2)i.push([e[a],e[a+1]]);return i}Ng.resolveBlockScalar=Y1});var du=_(Og=>{"use strict";var uu=we(),Q1=Zs();function X1(t,e,r){let{offset:s,type:n,source:i,end:a}=t,o,c,l=(f,p,y)=>r(s+f,p,y);switch(n){case"scalar":o=uu.Scalar.PLAIN,c=eT(i,l);break;case"single-quoted-scalar":o=uu.Scalar.QUOTE_SINGLE,c=tT(i,l);break;case"double-quoted-scalar":o=uu.Scalar.QUOTE_DOUBLE,c=rT(i,l);break;default:return r(t,"UNEXPECTED_TOKEN",`Expected a flow scalar value, but found: ${n}`),{value:"",type:null,comment:"",range:[s,s+i.length,s+i.length]}}let u=s+i.length,d=Q1.resolveEnd(a,u,e,r);return{value:c,type:o,comment:d.comment,range:[s,u,d.offset]}}function eT(t,e){let r="";switch(t[0]){case" ":r="a tab character";break;case",":r="flow indicator character ,";break;case"%":r="directive indicator character %";break;case"|":case">":{r=`block scalar indicator ${t[0]}`;break}case"@":case"`":{r=`reserved character ${t[0]}`;break}}return r&&e(0,"BAD_SCALAR_START",`Plain value cannot start with ${r}`),Pg(t)}function tT(t,e){return(t[t.length-1]!=="'"||t.length===1)&&e(t.length,"MISSING_CHAR","Missing closing 'quote"),Pg(t.slice(1,-1)).replace(/''/g,"'")}function Pg(t){let e,r;try{e=new RegExp(`(.*?)(?<![ ])[ ]*\r?
|
|
86
|
+
`,"sy"),r=new RegExp(`[ ]*(.*?)(?:(?<![ ])[ ]*)?\r?
|
|
87
|
+
`,"sy")}catch{e=/(.*?)[ \t]*\r?\n/sy,r=/[ \t]*(.*?)[ \t]*\r?\n/sy}let s=e.exec(t);if(!s)return t;let n=s[1],i=" ",a=e.lastIndex;for(r.lastIndex=a;s=r.exec(t);)s[1]===""?i===`
|
|
88
|
+
`?n+=i:i=`
|
|
89
|
+
`:(n+=i+s[1],i=" "),a=r.lastIndex;let o=/[ \t]*(.*)/sy;return o.lastIndex=a,s=o.exec(t),n+i+(s?.[1]??"")}function rT(t,e){let r="";for(let s=1;s<t.length-1;++s){let n=t[s];if(!(n==="\r"&&t[s+1]===`
|
|
90
|
+
`))if(n===`
|
|
91
|
+
`){let{fold:i,offset:a}=sT(t,s);r+=i,s=a}else if(n==="\\"){let i=t[++s],a=nT[i];if(a)r+=a;else if(i===`
|
|
92
|
+
`)for(i=t[s+1];i===" "||i===" ";)i=t[++s+1];else if(i==="\r"&&t[s+1]===`
|
|
93
|
+
`)for(i=t[++s+1];i===" "||i===" ";)i=t[++s+1];else if(i==="x"||i==="u"||i==="U"){let o={x:2,u:4,U:8}[i];r+=iT(t,s+1,o,e),s+=o}else{let o=t.substr(s-1,2);e(s-1,"BAD_DQ_ESCAPE",`Invalid escape sequence ${o}`),r+=o}}else if(n===" "||n===" "){let i=s,a=t[s+1];for(;a===" "||a===" ";)a=t[++s+1];a!==`
|
|
94
|
+
`&&!(a==="\r"&&t[s+2]===`
|
|
95
|
+
`)&&(r+=s>i?t.slice(i,s+1):n)}else r+=n}return(t[t.length-1]!=='"'||t.length===1)&&e(t.length,"MISSING_CHAR",'Missing closing "quote'),r}function sT(t,e){let r="",s=t[e+1];for(;(s===" "||s===" "||s===`
|
|
96
|
+
`||s==="\r")&&!(s==="\r"&&t[e+2]!==`
|
|
97
|
+
`);)s===`
|
|
98
|
+
`&&(r+=`
|
|
99
|
+
`),e+=1,s=t[e+1];return r||(r=" "),{fold:r,offset:e}}var nT={0:"\0",a:"\x07",b:"\b",e:"\x1B",f:"\f",n:`
|
|
100
|
+
`,r:"\r",t:" ",v:"\v",N:"\x85",_:"\xA0",L:"\u2028",P:"\u2029"," ":" ",'"':'"',"/":"/","\\":"\\"," ":" "};function iT(t,e,r,s){let n=t.substr(e,r),a=n.length===r&&/^[0-9a-fA-F]+$/.test(n)?parseInt(n,16):NaN;if(isNaN(a)){let o=t.substr(e-2,r+2);return s(e-2,"BAD_DQ_ESCAPE",`Invalid escape sequence ${o}`),o}return String.fromCodePoint(a)}Og.resolveFlowScalar=X1});var Rg=_(Ag=>{"use strict";var us=Q(),Cg=we(),aT=lu(),oT=du();function cT(t,e,r,s){let{value:n,type:i,comment:a,range:o}=e.type==="block-scalar"?aT.resolveBlockScalar(t,e,s):oT.resolveFlowScalar(e,t.options.strict,s),c=r?t.directives.tagName(r.source,d=>s(r,"TAG_RESOLVE_FAILED",d)):null,l;t.options.stringKeys&&t.atKey?l=t.schema[us.SCALAR]:c?l=lT(t.schema,n,c,r,s):e.type==="scalar"?l=uT(t,n,e,s):l=t.schema[us.SCALAR];let u;try{let d=l.resolve(n,f=>s(r??e,"TAG_RESOLVE_FAILED",f),t.options);u=us.isScalar(d)?d:new Cg.Scalar(d)}catch(d){let f=d instanceof Error?d.message:String(d);s(r??e,"TAG_RESOLVE_FAILED",f),u=new Cg.Scalar(n)}return u.range=o,u.source=n,i&&(u.type=i),c&&(u.tag=c),l.format&&(u.format=l.format),a&&(u.comment=a),u}function lT(t,e,r,s,n){if(r==="!")return t[us.SCALAR];let i=[];for(let o of t.tags)if(!o.collection&&o.tag===r)if(o.default&&o.test)i.push(o);else return o;for(let o of i)if(o.test?.test(e))return o;let a=t.knownTags[r];return a&&!a.collection?(t.tags.push(Object.assign({},a,{default:!1,test:void 0})),a):(n(s,"TAG_RESOLVE_FAILED",`Unresolved tag: ${r}`,r!=="tag:yaml.org,2002:str"),t[us.SCALAR])}function uT({atKey:t,directives:e,schema:r},s,n,i){let a=r.tags.find(o=>(o.default===!0||t&&o.default==="key")&&o.test?.test(s))||r[us.SCALAR];if(r.compat){let o=r.compat.find(c=>c.default&&c.test?.test(s))??r[us.SCALAR];if(a.tag!==o.tag){let c=e.tagString(a.tag),l=e.tagString(o.tag),u=`Value may be parsed as either ${c} or ${l}`;i(n,"TAG_RESOLVE_FAILED",u,!0)}}return a}Ag.composeScalar=cT});var Mg=_(Ig=>{"use strict";function dT(t,e,r){if(e){r??(r=e.length);for(let s=r-1;s>=0;--s){let n=e[s];switch(n.type){case"space":case"comment":case"newline":t-=n.source.length;continue}for(n=e[++s];n?.type==="space";)t+=n.source.length,n=e[++s];break}}return t}Ig.emptyScalarPosition=dT});var qg=_(pu=>{"use strict";var fT=Kn(),pT=Q(),mT=Tg(),xg=Rg(),hT=Zs(),gT=Mg(),yT={composeNode:jg,composeEmptyNode:fu};function jg(t,e,r,s){let n=t.atKey,{spaceBefore:i,comment:a,anchor:o,tag:c}=r,l,u=!0;switch(e.type){case"alias":l=vT(t,e,s),(o||c)&&s(e,"ALIAS_PROPS","An alias node must not specify any properties");break;case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"block-scalar":l=xg.composeScalar(t,e,c,s),o&&(l.anchor=o.source.substring(1));break;case"block-map":case"block-seq":case"flow-collection":l=mT.composeCollection(yT,t,e,r,s),o&&(l.anchor=o.source.substring(1));break;default:{let d=e.type==="error"?e.message:`Unsupported token (type: ${e.type})`;s(e,"UNEXPECTED_TOKEN",d),l=fu(t,e.offset,void 0,null,r,s),u=!1}}return o&&l.anchor===""&&s(o,"BAD_ALIAS","Anchor cannot be an empty string"),n&&t.options.stringKeys&&(!pT.isScalar(l)||typeof l.value!="string"||l.tag&&l.tag!=="tag:yaml.org,2002:str")&&s(c??e,"NON_STRING_KEY","With stringKeys, all keys must be strings"),i&&(l.spaceBefore=!0),a&&(e.type==="scalar"&&e.source===""?l.comment=a:l.commentBefore=a),t.options.keepSourceTokens&&u&&(l.srcToken=e),l}function fu(t,e,r,s,{spaceBefore:n,comment:i,anchor:a,tag:o,end:c},l){let u={type:"scalar",offset:gT.emptyScalarPosition(e,r,s),indent:-1,source:""},d=xg.composeScalar(t,u,o,l);return a&&(d.anchor=a.source.substring(1),d.anchor===""&&l(a,"BAD_ALIAS","Anchor cannot be an empty string")),n&&(d.spaceBefore=!0),i&&(d.comment=i,d.range[2]=c),d}function vT({options:t},{offset:e,source:r,end:s},n){let i=new fT.Alias(r.substring(1));i.source===""&&n(e,"BAD_ALIAS","Alias cannot be an empty string"),i.source.endsWith(":")&&n(e+r.length-1,"BAD_ALIAS","Alias ending in : is ambiguous",!0);let a=e+r.length,o=hT.resolveEnd(s,a,t.strict,n);return i.range=[e,a,o.offset],o.comment&&(i.comment=o.comment),i}pu.composeEmptyNode=fu;pu.composeNode=jg});var Fg=_(Lg=>{"use strict";var _T=ai(),Dg=qg(),bT=Zs(),wT=ui();function $T(t,e,{offset:r,start:s,value:n,end:i},a){let o=Object.assign({_directives:e},t),c=new _T.Document(void 0,o),l={atKey:!1,atRoot:!0,directives:c.directives,options:c.options,schema:c.schema},u=wT.resolveProps(s,{indicator:"doc-start",next:n??i?.[0],offset:r,onError:a,parentIndent:0,startOnNewline:!0});u.found&&(c.directives.docStart=!0,n&&(n.type==="block-map"||n.type==="block-seq")&&!u.hasNewline&&a(u.end,"MISSING_CHAR","Block collection cannot start on same line with directives-end marker")),c.contents=n?Dg.composeNode(l,n,u,a):Dg.composeEmptyNode(l,u.end,s,null,u,a);let d=c.contents.range[2],f=bT.resolveEnd(i,d,!1,a);return f.comment&&(c.comment=f.comment),c.range=[r,d,f.offset],c}Lg.composeDoc=$T});var hu=_(Kg=>{"use strict";var ST=ka("process"),kT=el(),ET=ai(),di=li(),Ug=Q(),TT=Fg(),NT=Zs();function fi(t){if(typeof t=="number")return[t,t+1];if(Array.isArray(t))return t.length===2?t:[t[0],t[1]];let{offset:e,source:r}=t;return[e,e+(typeof r=="string"?r.length:1)]}function Vg(t){let e="",r=!1,s=!1;for(let n=0;n<t.length;++n){let i=t[n];switch(i[0]){case"#":e+=(e===""?"":s?`
|
|
101
|
+
|
|
102
|
+
`:`
|
|
103
|
+
`)+(i.substring(1)||" "),r=!0,s=!1;break;case"%":t[n+1]?.[0]!=="#"&&(n+=1),r=!1;break;default:r||(s=!0),r=!1}}return{comment:e,afterEmptyLine:s}}var mu=class{constructor(e={}){this.doc=null,this.atDirectives=!1,this.prelude=[],this.errors=[],this.warnings=[],this.onError=(r,s,n,i)=>{let a=fi(r);i?this.warnings.push(new di.YAMLWarning(a,s,n)):this.errors.push(new di.YAMLParseError(a,s,n))},this.directives=new kT.Directives({version:e.version||"1.2"}),this.options=e}decorate(e,r){let{comment:s,afterEmptyLine:n}=Vg(this.prelude);if(s){let i=e.contents;if(r)e.comment=e.comment?`${e.comment}
|
|
104
|
+
${s}`:s;else if(n||e.directives.docStart||!i)e.commentBefore=s;else if(Ug.isCollection(i)&&!i.flow&&i.items.length>0){let a=i.items[0];Ug.isPair(a)&&(a=a.key);let o=a.commentBefore;a.commentBefore=o?`${s}
|
|
105
|
+
${o}`:s}else{let a=i.commentBefore;i.commentBefore=a?`${s}
|
|
106
|
+
${a}`:s}}r?(Array.prototype.push.apply(e.errors,this.errors),Array.prototype.push.apply(e.warnings,this.warnings)):(e.errors=this.errors,e.warnings=this.warnings),this.prelude=[],this.errors=[],this.warnings=[]}streamInfo(){return{comment:Vg(this.prelude).comment,directives:this.directives,errors:this.errors,warnings:this.warnings}}*compose(e,r=!1,s=-1){for(let n of e)yield*this.next(n);yield*this.end(r,s)}*next(e){switch(ST.env.LOG_STREAM&&console.dir(e,{depth:null}),e.type){case"directive":this.directives.add(e.source,(r,s,n)=>{let i=fi(e);i[0]+=r,this.onError(i,"BAD_DIRECTIVE",s,n)}),this.prelude.push(e.source),this.atDirectives=!0;break;case"document":{let r=TT.composeDoc(this.options,this.directives,e,this.onError);this.atDirectives&&!r.directives.docStart&&this.onError(e,"MISSING_CHAR","Missing directives-end/doc-start indicator line"),this.decorate(r,!1),this.doc&&(yield this.doc),this.doc=r,this.atDirectives=!1;break}case"byte-order-mark":case"space":break;case"comment":case"newline":this.prelude.push(e.source);break;case"error":{let r=e.source?`${e.message}: ${JSON.stringify(e.source)}`:e.message,s=new di.YAMLParseError(fi(e),"UNEXPECTED_TOKEN",r);this.atDirectives||!this.doc?this.errors.push(s):this.doc.errors.push(s);break}case"doc-end":{if(!this.doc){let s="Unexpected doc-end without preceding document";this.errors.push(new di.YAMLParseError(fi(e),"UNEXPECTED_TOKEN",s));break}this.doc.directives.docEnd=!0;let r=NT.resolveEnd(e.end,e.offset+e.source.length,this.doc.options.strict,this.onError);if(this.decorate(this.doc,!0),r.comment){let s=this.doc.comment;this.doc.comment=s?`${s}
|
|
107
|
+
${r.comment}`:r.comment}this.doc.range[2]=r.offset;break}default:this.errors.push(new di.YAMLParseError(fi(e),"UNEXPECTED_TOKEN",`Unsupported token ${e.type}`))}}*end(e=!1,r=-1){if(this.doc)this.decorate(this.doc,!0),yield this.doc,this.doc=null;else if(e){let s=Object.assign({_directives:this.directives},this.options),n=new ET.Document(void 0,s);this.atDirectives&&this.onError(r,"MISSING_CHAR","Missing directives-end indicator line"),n.range=[0,r,r],this.decorate(n,!1),yield n}}};Kg.Composer=mu});var Jg=_(bo=>{"use strict";var PT=lu(),OT=du(),CT=li(),zg=Gn();function AT(t,e=!0,r){if(t){let s=(n,i,a)=>{let o=typeof n=="number"?n:Array.isArray(n)?n[0]:n.offset;if(r)r(o,i,a);else throw new CT.YAMLParseError([o,o+1],i,a)};switch(t.type){case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return OT.resolveFlowScalar(t,e,s);case"block-scalar":return PT.resolveBlockScalar({options:{strict:e}},t,s)}}return null}function RT(t,e){let{implicitKey:r=!1,indent:s,inFlow:n=!1,offset:i=-1,type:a="PLAIN"}=e,o=zg.stringifyString({type:a,value:t},{implicitKey:r,indent:s>0?" ".repeat(s):"",inFlow:n,options:{blockQuote:!0,lineWidth:-1}}),c=e.end??[{type:"newline",offset:-1,indent:s,source:`
|
|
108
|
+
`}];switch(o[0]){case"|":case">":{let l=o.indexOf(`
|
|
109
|
+
`),u=o.substring(0,l),d=o.substring(l+1)+`
|
|
110
|
+
`,f=[{type:"block-scalar-header",offset:i,indent:s,source:u}];return Bg(f,c)||f.push({type:"newline",offset:-1,indent:s,source:`
|
|
111
|
+
`}),{type:"block-scalar",offset:i,indent:s,props:f,source:d}}case'"':return{type:"double-quoted-scalar",offset:i,indent:s,source:o,end:c};case"'":return{type:"single-quoted-scalar",offset:i,indent:s,source:o,end:c};default:return{type:"scalar",offset:i,indent:s,source:o,end:c}}}function IT(t,e,r={}){let{afterKey:s=!1,implicitKey:n=!1,inFlow:i=!1,type:a}=r,o="indent"in t?t.indent:null;if(s&&typeof o=="number"&&(o+=2),!a)switch(t.type){case"single-quoted-scalar":a="QUOTE_SINGLE";break;case"double-quoted-scalar":a="QUOTE_DOUBLE";break;case"block-scalar":{let l=t.props[0];if(l.type!=="block-scalar-header")throw new Error("Invalid block scalar header");a=l.source[0]===">"?"BLOCK_FOLDED":"BLOCK_LITERAL";break}default:a="PLAIN"}let c=zg.stringifyString({type:a,value:e},{implicitKey:n||o===null,indent:o!==null&&o>0?" ".repeat(o):"",inFlow:i,options:{blockQuote:!0,lineWidth:-1}});switch(c[0]){case"|":case">":MT(t,c);break;case'"':gu(t,c,"double-quoted-scalar");break;case"'":gu(t,c,"single-quoted-scalar");break;default:gu(t,c,"scalar")}}function MT(t,e){let r=e.indexOf(`
|
|
112
|
+
`),s=e.substring(0,r),n=e.substring(r+1)+`
|
|
113
|
+
`;if(t.type==="block-scalar"){let i=t.props[0];if(i.type!=="block-scalar-header")throw new Error("Invalid block scalar header");i.source=s,t.source=n}else{let{offset:i}=t,a="indent"in t?t.indent:-1,o=[{type:"block-scalar-header",offset:i,indent:a,source:s}];Bg(o,"end"in t?t.end:void 0)||o.push({type:"newline",offset:-1,indent:a,source:`
|
|
114
|
+
`});for(let c of Object.keys(t))c!=="type"&&c!=="offset"&&delete t[c];Object.assign(t,{type:"block-scalar",indent:a,props:o,source:n})}}function Bg(t,e){if(e)for(let r of e)switch(r.type){case"space":case"comment":t.push(r);break;case"newline":return t.push(r),!0}return!1}function gu(t,e,r){switch(t.type){case"scalar":case"double-quoted-scalar":case"single-quoted-scalar":t.type=r,t.source=e;break;case"block-scalar":{let s=t.props.slice(1),n=e.length;t.props[0].type==="block-scalar-header"&&(n-=t.props[0].source.length);for(let i of s)i.offset+=n;delete t.props,Object.assign(t,{type:r,source:e,end:s});break}case"block-map":case"block-seq":{let n={type:"newline",offset:t.offset+e.length,indent:t.indent,source:`
|
|
115
|
+
`};delete t.items,Object.assign(t,{type:r,source:e,end:[n]});break}default:{let s="indent"in t?t.indent:-1,n="end"in t&&Array.isArray(t.end)?t.end.filter(i=>i.type==="space"||i.type==="comment"||i.type==="newline"):[];for(let i of Object.keys(t))i!=="type"&&i!=="offset"&&delete t[i];Object.assign(t,{type:r,indent:s,source:e,end:n})}}}bo.createScalarToken=RT;bo.resolveAsScalar=AT;bo.setScalarValue=IT});var Gg=_(Hg=>{"use strict";var xT=t=>"type"in t?$o(t):wo(t);function $o(t){switch(t.type){case"block-scalar":{let e="";for(let r of t.props)e+=$o(r);return e+t.source}case"block-map":case"block-seq":{let e="";for(let r of t.items)e+=wo(r);return e}case"flow-collection":{let e=t.start.source;for(let r of t.items)e+=wo(r);for(let r of t.end)e+=r.source;return e}case"document":{let e=wo(t);if(t.end)for(let r of t.end)e+=r.source;return e}default:{let e=t.source;if("end"in t&&t.end)for(let r of t.end)e+=r.source;return e}}}function wo({start:t,key:e,sep:r,value:s}){let n="";for(let i of t)n+=i.source;if(e&&(n+=$o(e)),r)for(let i of r)n+=i.source;return s&&(n+=$o(s)),n}Hg.stringify=xT});var Qg=_(Zg=>{"use strict";var yu=Symbol("break visit"),jT=Symbol("skip children"),Yg=Symbol("remove item");function ds(t,e){"type"in t&&t.type==="document"&&(t={start:t.start,value:t.value}),Wg(Object.freeze([]),t,e)}ds.BREAK=yu;ds.SKIP=jT;ds.REMOVE=Yg;ds.itemAtPath=(t,e)=>{let r=t;for(let[s,n]of e){let i=r?.[s];if(i&&"items"in i)r=i.items[n];else return}return r};ds.parentCollection=(t,e)=>{let r=ds.itemAtPath(t,e.slice(0,-1)),s=e[e.length-1][0],n=r?.[s];if(n&&"items"in n)return n;throw new Error("Parent collection not found")};function Wg(t,e,r){let s=r(e,t);if(typeof s=="symbol")return s;for(let n of["key","value"]){let i=e[n];if(i&&"items"in i){for(let a=0;a<i.items.length;++a){let o=Wg(Object.freeze(t.concat([[n,a]])),i.items[a],r);if(typeof o=="number")a=o-1;else{if(o===yu)return yu;o===Yg&&(i.items.splice(a,1),a-=1)}}typeof s=="function"&&n==="key"&&(s=s(e,t))}}return typeof s=="function"?s(e,t):s}Zg.visit=ds});var So=_(Be=>{"use strict";var vu=Jg(),qT=Gg(),DT=Qg(),_u="\uFEFF",bu="",wu="",$u="",LT=t=>!!t&&"items"in t,FT=t=>!!t&&(t.type==="scalar"||t.type==="single-quoted-scalar"||t.type==="double-quoted-scalar"||t.type==="block-scalar");function UT(t){switch(t){case _u:return"<BOM>";case bu:return"<DOC>";case wu:return"<FLOW_END>";case $u:return"<SCALAR>";default:return JSON.stringify(t)}}function VT(t){switch(t){case _u:return"byte-order-mark";case bu:return"doc-mode";case wu:return"flow-error-end";case $u:return"scalar";case"---":return"doc-start";case"...":return"doc-end";case"":case`
|
|
116
|
+
`:case`\r
|
|
117
|
+
`:return"newline";case"-":return"seq-item-ind";case"?":return"explicit-key-ind";case":":return"map-value-ind";case"{":return"flow-map-start";case"}":return"flow-map-end";case"[":return"flow-seq-start";case"]":return"flow-seq-end";case",":return"comma"}switch(t[0]){case" ":case" ":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}Be.createScalarToken=vu.createScalarToken;Be.resolveAsScalar=vu.resolveAsScalar;Be.setScalarValue=vu.setScalarValue;Be.stringify=qT.stringify;Be.visit=DT.visit;Be.BOM=_u;Be.DOCUMENT=bu;Be.FLOW_END=wu;Be.SCALAR=$u;Be.isCollection=LT;Be.isScalar=FT;Be.prettyToken=UT;Be.tokenType=VT});var Eu=_(ey=>{"use strict";var pi=So();function _t(t){switch(t){case void 0:case" ":case`
|
|
118
|
+
`:case"\r":case" ":return!0;default:return!1}}var Xg=new Set("0123456789ABCDEFabcdef"),KT=new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"),ko=new Set(",[]{}"),zT=new Set(` ,[]{}
|
|
119
|
+
\r `),Su=t=>!t||zT.has(t),ku=class{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(e,r=!1){if(e){if(typeof e!="string")throw TypeError("source is not a string");this.buffer=this.buffer?this.buffer+e:e,this.lineEndPos=null}this.atEnd=!r;let s=this.next??"stream";for(;s&&(r||this.hasChars(1));)s=yield*this.parseNext(s)}atLineEnd(){let e=this.pos,r=this.buffer[e];for(;r===" "||r===" ";)r=this.buffer[++e];return!r||r==="#"||r===`
|
|
120
|
+
`?!0:r==="\r"?this.buffer[e+1]===`
|
|
121
|
+
`:!1}charAt(e){return this.buffer[this.pos+e]}continueScalar(e){let r=this.buffer[e];if(this.indentNext>0){let s=0;for(;r===" ";)r=this.buffer[++s+e];if(r==="\r"){let n=this.buffer[s+e+1];if(n===`
|
|
122
|
+
`||!n&&!this.atEnd)return e+s+1}return r===`
|
|
123
|
+
`||s>=this.indentNext||!r&&!this.atEnd?e+s:-1}if(r==="-"||r==="."){let s=this.buffer.substr(e,3);if((s==="---"||s==="...")&&_t(this.buffer[e+3]))return-1}return e}getLine(){let e=this.lineEndPos;return(typeof e!="number"||e!==-1&&e<this.pos)&&(e=this.buffer.indexOf(`
|
|
124
|
+
`,this.pos),this.lineEndPos=e),e===-1?this.atEnd?this.buffer.substring(this.pos):null:(this.buffer[e-1]==="\r"&&(e-=1),this.buffer.substring(this.pos,e))}hasChars(e){return this.pos+e<=this.buffer.length}setNext(e){return this.buffer=this.buffer.substring(this.pos),this.pos=0,this.lineEndPos=null,this.next=e,null}peek(e){return this.buffer.substr(this.pos,e)}*parseNext(e){switch(e){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 e=this.getLine();if(e===null)return this.setNext("stream");if(e[0]===pi.BOM&&(yield*this.pushCount(1),e=e.substring(1)),e[0]==="%"){let r=e.length,s=e.indexOf("#");for(;s!==-1;){let i=e[s-1];if(i===" "||i===" "){r=s-1;break}else s=e.indexOf("#",s+1)}for(;;){let i=e[r-1];if(i===" "||i===" ")r-=1;else break}let n=(yield*this.pushCount(r))+(yield*this.pushSpaces(!0));return yield*this.pushCount(e.length-n),this.pushNewline(),"stream"}if(this.atLineEnd()){let r=yield*this.pushSpaces(!0);return yield*this.pushCount(e.length-r),yield*this.pushNewline(),"stream"}return yield pi.DOCUMENT,yield*this.parseLineStart()}*parseLineStart(){let e=this.charAt(0);if(!e&&!this.atEnd)return this.setNext("line-start");if(e==="-"||e==="."){if(!this.atEnd&&!this.hasChars(4))return this.setNext("line-start");let r=this.peek(3);if((r==="---"||r==="...")&&_t(this.charAt(3)))return yield*this.pushCount(3),this.indentValue=0,this.indentNext=0,r==="---"?"doc":"stream"}return this.indentValue=yield*this.pushSpaces(!1),this.indentNext>this.indentValue&&!_t(this.charAt(1))&&(this.indentNext=this.indentValue),yield*this.parseBlockStart()}*parseBlockStart(){let[e,r]=this.peek(2);if(!r&&!this.atEnd)return this.setNext("block-start");if((e==="-"||e==="?"||e===":")&&_t(r)){let s=(yield*this.pushCount(1))+(yield*this.pushSpaces(!0));return this.indentNext=this.indentValue+1,this.indentValue+=s,yield*this.parseBlockStart()}return"doc"}*parseDocument(){yield*this.pushSpaces(!0);let e=this.getLine();if(e===null)return this.setNext("doc");let r=yield*this.pushIndicators();switch(e[r]){case"#":yield*this.pushCount(e.length-r);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(Su),"doc";case'"':case"'":return yield*this.parseQuotedScalar();case"|":case">":return r+=yield*this.parseBlockScalarHeader(),r+=yield*this.pushSpaces(!0),yield*this.pushCount(e.length-r),yield*this.pushNewline(),yield*this.parseBlockScalar();default:return yield*this.parsePlainScalar()}}*parseFlowCollection(){let e,r,s=-1;do e=yield*this.pushNewline(),e>0?(r=yield*this.pushSpaces(!1),this.indentValue=s=r):r=0,r+=yield*this.pushSpaces(!0);while(e+r>0);let n=this.getLine();if(n===null)return this.setNext("flow");if((s!==-1&&s<this.indentNext&&n[0]!=="#"||s===0&&(n.startsWith("---")||n.startsWith("..."))&&_t(n[3]))&&!(s===this.indentNext-1&&this.flowLevel===1&&(n[0]==="]"||n[0]==="}")))return this.flowLevel=0,yield pi.FLOW_END,yield*this.parseLineStart();let i=0;for(;n[i]===",";)i+=yield*this.pushCount(1),i+=yield*this.pushSpaces(!0),this.flowKey=!1;switch(i+=yield*this.pushIndicators(),n[i]){case void 0:return"flow";case"#":return yield*this.pushCount(n.length-i),"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(Su),"flow";case'"':case"'":return this.flowKey=!0,yield*this.parseQuotedScalar();case":":{let a=this.charAt(1);if(this.flowKey||_t(a)||a===",")return this.flowKey=!1,yield*this.pushCount(1),yield*this.pushSpaces(!0),"flow"}default:return this.flowKey=!1,yield*this.parsePlainScalar()}}*parseQuotedScalar(){let e=this.charAt(0),r=this.buffer.indexOf(e,this.pos+1);if(e==="'")for(;r!==-1&&this.buffer[r+1]==="'";)r=this.buffer.indexOf("'",r+2);else for(;r!==-1;){let i=0;for(;this.buffer[r-1-i]==="\\";)i+=1;if(i%2===0)break;r=this.buffer.indexOf('"',r+1)}let s=this.buffer.substring(0,r),n=s.indexOf(`
|
|
125
|
+
`,this.pos);if(n!==-1){for(;n!==-1;){let i=this.continueScalar(n+1);if(i===-1)break;n=s.indexOf(`
|
|
126
|
+
`,i)}n!==-1&&(r=n-(s[n-1]==="\r"?2:1))}if(r===-1){if(!this.atEnd)return this.setNext("quoted-scalar");r=this.buffer.length}return yield*this.pushToIndex(r+1,!1),this.flowLevel?"flow":"doc"}*parseBlockScalarHeader(){this.blockScalarIndent=-1,this.blockScalarKeep=!1;let e=this.pos;for(;;){let r=this.buffer[++e];if(r==="+")this.blockScalarKeep=!0;else if(r>"0"&&r<="9")this.blockScalarIndent=Number(r)-1;else if(r!=="-")break}return yield*this.pushUntil(r=>_t(r)||r==="#")}*parseBlockScalar(){let e=this.pos-1,r=0,s;e:for(let i=this.pos;s=this.buffer[i];++i)switch(s){case" ":r+=1;break;case`
|
|
127
|
+
`:e=i,r=0;break;case"\r":{let a=this.buffer[i+1];if(!a&&!this.atEnd)return this.setNext("block-scalar");if(a===`
|
|
128
|
+
`)break}default:break e}if(!s&&!this.atEnd)return this.setNext("block-scalar");if(r>=this.indentNext){this.blockScalarIndent===-1?this.indentNext=r:this.indentNext=this.blockScalarIndent+(this.indentNext===0?1:this.indentNext);do{let i=this.continueScalar(e+1);if(i===-1)break;e=this.buffer.indexOf(`
|
|
129
|
+
`,i)}while(e!==-1);if(e===-1){if(!this.atEnd)return this.setNext("block-scalar");e=this.buffer.length}}let n=e+1;for(s=this.buffer[n];s===" ";)s=this.buffer[++n];if(s===" "){for(;s===" "||s===" "||s==="\r"||s===`
|
|
130
|
+
`;)s=this.buffer[++n];e=n-1}else if(!this.blockScalarKeep)do{let i=e-1,a=this.buffer[i];a==="\r"&&(a=this.buffer[--i]);let o=i;for(;a===" ";)a=this.buffer[--i];if(a===`
|
|
131
|
+
`&&i>=this.pos&&i+1+r>o)e=i;else break}while(!0);return yield pi.SCALAR,yield*this.pushToIndex(e+1,!0),yield*this.parseLineStart()}*parsePlainScalar(){let e=this.flowLevel>0,r=this.pos-1,s=this.pos-1,n;for(;n=this.buffer[++s];)if(n===":"){let i=this.buffer[s+1];if(_t(i)||e&&ko.has(i))break;r=s}else if(_t(n)){let i=this.buffer[s+1];if(n==="\r"&&(i===`
|
|
132
|
+
`?(s+=1,n=`
|
|
133
|
+
`,i=this.buffer[s+1]):r=s),i==="#"||e&&ko.has(i))break;if(n===`
|
|
134
|
+
`){let a=this.continueScalar(s+1);if(a===-1)break;s=Math.max(s,a-2)}}else{if(e&&ko.has(n))break;r=s}return!n&&!this.atEnd?this.setNext("plain-scalar"):(yield pi.SCALAR,yield*this.pushToIndex(r+1,!0),e?"flow":"doc")}*pushCount(e){return e>0?(yield this.buffer.substr(this.pos,e),this.pos+=e,e):0}*pushToIndex(e,r){let s=this.buffer.slice(this.pos,e);return s?(yield s,this.pos+=s.length,s.length):(r&&(yield""),0)}*pushIndicators(){switch(this.charAt(0)){case"!":return(yield*this.pushTag())+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"&":return(yield*this.pushUntil(Su))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators());case"-":case"?":case":":{let e=this.flowLevel>0,r=this.charAt(1);if(_t(r)||e&&ko.has(r))return e?this.flowKey&&(this.flowKey=!1):this.indentNext=this.indentValue+1,(yield*this.pushCount(1))+(yield*this.pushSpaces(!0))+(yield*this.pushIndicators())}}return 0}*pushTag(){if(this.charAt(1)==="<"){let e=this.pos+2,r=this.buffer[e];for(;!_t(r)&&r!==">";)r=this.buffer[++e];return yield*this.pushToIndex(r===">"?e+1:e,!1)}else{let e=this.pos+1,r=this.buffer[e];for(;r;)if(KT.has(r))r=this.buffer[++e];else if(r==="%"&&Xg.has(this.buffer[e+1])&&Xg.has(this.buffer[e+2]))r=this.buffer[e+=3];else break;return yield*this.pushToIndex(e,!1)}}*pushNewline(){let e=this.buffer[this.pos];return e===`
|
|
135
|
+
`?yield*this.pushCount(1):e==="\r"&&this.charAt(1)===`
|
|
136
|
+
`?yield*this.pushCount(2):0}*pushSpaces(e){let r=this.pos-1,s;do s=this.buffer[++r];while(s===" "||e&&s===" ");let n=r-this.pos;return n>0&&(yield this.buffer.substr(this.pos,n),this.pos=r),n}*pushUntil(e){let r=this.pos,s=this.buffer[r];for(;!e(s);)s=this.buffer[++r];return yield*this.pushToIndex(r,!1)}};ey.Lexer=ku});var Nu=_(ty=>{"use strict";var Tu=class{constructor(){this.lineStarts=[],this.addNewLine=e=>this.lineStarts.push(e),this.linePos=e=>{let r=0,s=this.lineStarts.length;for(;r<s;){let i=r+s>>1;this.lineStarts[i]<e?r=i+1:s=i}if(this.lineStarts[r]===e)return{line:r+1,col:1};if(r===0)return{line:0,col:e};let n=this.lineStarts[r-1];return{line:r,col:e-n+1}}}};ty.LineCounter=Tu});var Ou=_(ay=>{"use strict";var BT=ka("process"),ry=So(),JT=Eu();function Sr(t,e){for(let r=0;r<t.length;++r)if(t[r].type===e)return!0;return!1}function sy(t){for(let e=0;e<t.length;++e)switch(t[e].type){case"space":case"comment":case"newline":break;default:return e}return-1}function iy(t){switch(t?.type){case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":case"flow-collection":return!0;default:return!1}}function Eo(t){switch(t.type){case"document":return t.start;case"block-map":{let e=t.items[t.items.length-1];return e.sep??e.start}case"block-seq":return t.items[t.items.length-1].start;default:return[]}}function Qs(t){if(t.length===0)return[];let e=t.length;e:for(;--e>=0;)switch(t[e].type){case"doc-start":case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":case"newline":break e}for(;t[++e]?.type==="space";);return t.splice(e,t.length)}function ny(t){if(t.start.type==="flow-seq-start")for(let e of t.items)e.sep&&!e.value&&!Sr(e.start,"explicit-key-ind")&&!Sr(e.sep,"map-value-ind")&&(e.key&&(e.value=e.key),delete e.key,iy(e.value)?e.value.end?Array.prototype.push.apply(e.value.end,e.sep):e.value.end=e.sep:Array.prototype.push.apply(e.start,e.sep),delete e.sep)}var Pu=class{constructor(e){this.atNewLine=!0,this.atScalar=!1,this.indent=0,this.offset=0,this.onKeyLine=!1,this.stack=[],this.source="",this.type="",this.lexer=new JT.Lexer,this.onNewLine=e}*parse(e,r=!1){this.onNewLine&&this.offset===0&&this.onNewLine(0);for(let s of this.lexer.lex(e,r))yield*this.next(s);r||(yield*this.end())}*next(e){if(this.source=e,BT.env.LOG_TOKENS&&console.log("|",ry.prettyToken(e)),this.atScalar){this.atScalar=!1,yield*this.step(),this.offset+=e.length;return}let r=ry.tokenType(e);if(r)if(r==="scalar")this.atNewLine=!1,this.atScalar=!0,this.type="scalar";else{switch(this.type=r,yield*this.step(),r){case"newline":this.atNewLine=!0,this.indent=0,this.onNewLine&&this.onNewLine(this.offset+e.length);break;case"space":this.atNewLine&&e[0]===" "&&(this.indent+=e.length);break;case"explicit-key-ind":case"map-value-ind":case"seq-item-ind":this.atNewLine&&(this.indent+=e.length);break;case"doc-mode":case"flow-error-end":return;default:this.atNewLine=!1}this.offset+=e.length}else{let s=`Not a YAML token: ${e}`;yield*this.pop({type:"error",offset:this.offset,message:s,source:e}),this.offset+=e.length}}*end(){for(;this.stack.length>0;)yield*this.pop()}get sourceToken(){return{type:this.type,offset:this.offset,indent:this.indent,source:this.source}}*step(){let e=this.peek(1);if(this.type==="doc-end"&&e?.type!=="doc-end"){for(;this.stack.length>0;)yield*this.pop();this.stack.push({type:"doc-end",offset:this.offset,source:this.source});return}if(!e)return yield*this.stream();switch(e.type){case"document":return yield*this.document(e);case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":return yield*this.scalar(e);case"block-scalar":return yield*this.blockScalar(e);case"block-map":return yield*this.blockMap(e);case"block-seq":return yield*this.blockSequence(e);case"flow-collection":return yield*this.flowCollection(e);case"doc-end":return yield*this.documentEnd(e)}yield*this.pop()}peek(e){return this.stack[this.stack.length-e]}*pop(e){let r=e??this.stack.pop();if(!r)yield{type:"error",offset:this.offset,source:"",message:"Tried to pop an empty stack"};else if(this.stack.length===0)yield r;else{let s=this.peek(1);switch(r.type==="block-scalar"?r.indent="indent"in s?s.indent:0:r.type==="flow-collection"&&s.type==="document"&&(r.indent=0),r.type==="flow-collection"&&ny(r),s.type){case"document":s.value=r;break;case"block-scalar":s.props.push(r);break;case"block-map":{let n=s.items[s.items.length-1];if(n.value){s.items.push({start:[],key:r,sep:[]}),this.onKeyLine=!0;return}else if(n.sep)n.value=r;else{Object.assign(n,{key:r,sep:[]}),this.onKeyLine=!n.explicitKey;return}break}case"block-seq":{let n=s.items[s.items.length-1];n.value?s.items.push({start:[],value:r}):n.value=r;break}case"flow-collection":{let n=s.items[s.items.length-1];!n||n.value?s.items.push({start:[],key:r,sep:[]}):n.sep?n.value=r:Object.assign(n,{key:r,sep:[]});return}default:yield*this.pop(),yield*this.pop(r)}if((s.type==="document"||s.type==="block-map"||s.type==="block-seq")&&(r.type==="block-map"||r.type==="block-seq")){let n=r.items[r.items.length-1];n&&!n.sep&&!n.value&&n.start.length>0&&sy(n.start)===-1&&(r.indent===0||n.start.every(i=>i.type!=="comment"||i.indent<r.indent))&&(s.type==="document"?s.end=n.start:s.items.push({start:n.start}),r.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 e={type:"document",offset:this.offset,start:[]};this.type==="doc-start"&&e.start.push(this.sourceToken),this.stack.push(e);return}}yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML stream`,source:this.source}}*document(e){if(e.value)return yield*this.lineEnd(e);switch(this.type){case"doc-start":{sy(e.start)!==-1?(yield*this.pop(),yield*this.step()):e.start.push(this.sourceToken);return}case"anchor":case"tag":case"space":case"comment":case"newline":e.start.push(this.sourceToken);return}let r=this.startBlockValue(e);r?this.stack.push(r):yield{type:"error",offset:this.offset,message:`Unexpected ${this.type} token in YAML document`,source:this.source}}*scalar(e){if(this.type==="map-value-ind"){let r=Eo(this.peek(2)),s=Qs(r),n;e.end?(n=e.end,n.push(this.sourceToken),delete e.end):n=[this.sourceToken];let i={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:s,key:e,sep:n}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=i}else yield*this.lineEnd(e)}*blockScalar(e){switch(this.type){case"space":case"comment":case"newline":e.props.push(this.sourceToken);return;case"scalar":if(e.source=this.source,this.atNewLine=!0,this.indent=0,this.onNewLine){let r=this.source.indexOf(`
|
|
137
|
+
`)+1;for(;r!==0;)this.onNewLine(this.offset+r),r=this.source.indexOf(`
|
|
138
|
+
`,r)+1}yield*this.pop();break;default:yield*this.pop(),yield*this.step()}}*blockMap(e){let r=e.items[e.items.length-1];switch(this.type){case"newline":if(this.onKeyLine=!1,r.value){let s="end"in r.value?r.value.end:void 0;(Array.isArray(s)?s[s.length-1]:void 0)?.type==="comment"?s?.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)e.items.push({start:[this.sourceToken]});else if(r.sep)r.sep.push(this.sourceToken);else{if(this.atIndentedComment(r.start,e.indent)){let n=e.items[e.items.length-2]?.value?.end;if(Array.isArray(n)){Array.prototype.push.apply(n,r.start),n.push(this.sourceToken),e.items.pop();return}}r.start.push(this.sourceToken)}return}if(this.indent>=e.indent){let s=!this.onKeyLine&&this.indent===e.indent,n=s&&(r.sep||r.explicitKey)&&this.type!=="seq-item-ind",i=[];if(n&&r.sep&&!r.value){let a=[];for(let o=0;o<r.sep.length;++o){let c=r.sep[o];switch(c.type){case"newline":a.push(o);break;case"space":break;case"comment":c.indent>e.indent&&(a.length=0);break;default:a.length=0}}a.length>=2&&(i=r.sep.splice(a[1]))}switch(this.type){case"anchor":case"tag":n||r.value?(i.push(this.sourceToken),e.items.push({start:i}),this.onKeyLine=!0):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"explicit-key-ind":!r.sep&&!r.explicitKey?(r.start.push(this.sourceToken),r.explicitKey=!0):n||r.value?(i.push(this.sourceToken),e.items.push({start:i,explicitKey:!0})):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(r.explicitKey)if(r.sep)if(r.value)e.items.push({start:[],key:null,sep:[this.sourceToken]});else if(Sr(r.sep,"map-value-ind"))this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:i,key:null,sep:[this.sourceToken]}]});else if(iy(r.key)&&!Sr(r.sep,"newline")){let a=Qs(r.start),o=r.key,c=r.sep;c.push(this.sourceToken),delete r.key,delete r.sep,this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:o,sep:c}]})}else i.length>0?r.sep=r.sep.concat(i,this.sourceToken):r.sep.push(this.sourceToken);else if(Sr(r.start,"newline"))Object.assign(r,{key:null,sep:[this.sourceToken]});else{let a=Qs(r.start);this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:a,key:null,sep:[this.sourceToken]}]})}else r.sep?r.value||n?e.items.push({start:i,key:null,sep:[this.sourceToken]}):Sr(r.sep,"map-value-ind")?this.stack.push({type:"block-map",offset:this.offset,indent:this.indent,items:[{start:[],key:null,sep:[this.sourceToken]}]}):r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});this.onKeyLine=!0;return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let a=this.flowScalar(this.type);n||r.value?(e.items.push({start:i,key:a,sep:[]}),this.onKeyLine=!0):r.sep?this.stack.push(a):(Object.assign(r,{key:a,sep:[]}),this.onKeyLine=!0);return}default:{let a=this.startBlockValue(e);if(a){if(a.type==="block-seq"){if(!r.explicitKey&&r.sep&&!Sr(r.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 s&&e.items.push({start:i});this.stack.push(a);return}}}}yield*this.pop(),yield*this.step()}*blockSequence(e){let r=e.items[e.items.length-1];switch(this.type){case"newline":if(r.value){let s="end"in r.value?r.value.end:void 0;(Array.isArray(s)?s[s.length-1]:void 0)?.type==="comment"?s?.push(this.sourceToken):e.items.push({start:[this.sourceToken]})}else r.start.push(this.sourceToken);return;case"space":case"comment":if(r.value)e.items.push({start:[this.sourceToken]});else{if(this.atIndentedComment(r.start,e.indent)){let n=e.items[e.items.length-2]?.value?.end;if(Array.isArray(n)){Array.prototype.push.apply(n,r.start),n.push(this.sourceToken),e.items.pop();return}}r.start.push(this.sourceToken)}return;case"anchor":case"tag":if(r.value||this.indent<=e.indent)break;r.start.push(this.sourceToken);return;case"seq-item-ind":if(this.indent!==e.indent)break;r.value||Sr(r.start,"seq-item-ind")?e.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return}if(this.indent>e.indent){let s=this.startBlockValue(e);if(s){this.stack.push(s);return}}yield*this.pop(),yield*this.step()}*flowCollection(e){let r=e.items[e.items.length-1];if(this.type==="flow-error-end"){let s;do yield*this.pop(),s=this.peek(1);while(s?.type==="flow-collection")}else if(e.end.length===0){switch(this.type){case"comma":case"explicit-key-ind":!r||r.sep?e.items.push({start:[this.sourceToken]}):r.start.push(this.sourceToken);return;case"map-value-ind":!r||r.value?e.items.push({start:[],key:null,sep:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):Object.assign(r,{key:null,sep:[this.sourceToken]});return;case"space":case"comment":case"newline":case"anchor":case"tag":!r||r.value?e.items.push({start:[this.sourceToken]}):r.sep?r.sep.push(this.sourceToken):r.start.push(this.sourceToken);return;case"alias":case"scalar":case"single-quoted-scalar":case"double-quoted-scalar":{let n=this.flowScalar(this.type);!r||r.value?e.items.push({start:[],key:n,sep:[]}):r.sep?this.stack.push(n):Object.assign(r,{key:n,sep:[]});return}case"flow-map-end":case"flow-seq-end":e.end.push(this.sourceToken);return}let s=this.startBlockValue(e);s?this.stack.push(s):(yield*this.pop(),yield*this.step())}else{let s=this.peek(2);if(s.type==="block-map"&&(this.type==="map-value-ind"&&s.indent===e.indent||this.type==="newline"&&!s.items[s.items.length-1].sep))yield*this.pop(),yield*this.step();else if(this.type==="map-value-ind"&&s.type!=="flow-collection"){let n=Eo(s),i=Qs(n);ny(e);let a=e.end.splice(1,e.end.length);a.push(this.sourceToken);let o={type:"block-map",offset:e.offset,indent:e.indent,items:[{start:i,key:e,sep:a}]};this.onKeyLine=!0,this.stack[this.stack.length-1]=o}else yield*this.lineEnd(e)}}flowScalar(e){if(this.onNewLine){let r=this.source.indexOf(`
|
|
139
|
+
`)+1;for(;r!==0;)this.onNewLine(this.offset+r),r=this.source.indexOf(`
|
|
140
|
+
`,r)+1}return{type:e,offset:this.offset,indent:this.indent,source:this.source}}startBlockValue(e){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 r=Eo(e),s=Qs(r);return s.push(this.sourceToken),{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,explicitKey:!0}]}}case"map-value-ind":{this.onKeyLine=!0;let r=Eo(e),s=Qs(r);return{type:"block-map",offset:this.offset,indent:this.indent,items:[{start:s,key:null,sep:[this.sourceToken]}]}}}return null}atIndentedComment(e,r){return this.type!=="comment"||this.indent<=r?!1:e.every(s=>s.type==="newline"||s.type==="space")}*documentEnd(e){this.type!=="doc-mode"&&(e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop()))}*lineEnd(e){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;default:e.end?e.end.push(this.sourceToken):e.end=[this.sourceToken],this.type==="newline"&&(yield*this.pop())}}};ay.Parser=Pu});var dy=_(hi=>{"use strict";var oy=hu(),HT=ai(),mi=li(),GT=pl(),YT=Q(),WT=Nu(),cy=Ou();function ly(t){let e=t.prettyErrors!==!1;return{lineCounter:t.lineCounter||e&&new WT.LineCounter||null,prettyErrors:e}}function ZT(t,e={}){let{lineCounter:r,prettyErrors:s}=ly(e),n=new cy.Parser(r?.addNewLine),i=new oy.Composer(e),a=Array.from(i.compose(n.parse(t)));if(s&&r)for(let o of a)o.errors.forEach(mi.prettifyError(t,r)),o.warnings.forEach(mi.prettifyError(t,r));return a.length>0?a:Object.assign([],{empty:!0},i.streamInfo())}function uy(t,e={}){let{lineCounter:r,prettyErrors:s}=ly(e),n=new cy.Parser(r?.addNewLine),i=new oy.Composer(e),a=null;for(let o of i.compose(n.parse(t),!0,t.length))if(!a)a=o;else if(a.options.logLevel!=="silent"){a.errors.push(new mi.YAMLParseError(o.range.slice(0,2),"MULTIPLE_DOCS","Source contains multiple documents; please use YAML.parseAllDocuments()"));break}return s&&r&&(a.errors.forEach(mi.prettifyError(t,r)),a.warnings.forEach(mi.prettifyError(t,r))),a}function QT(t,e,r){let s;typeof e=="function"?s=e:r===void 0&&e&&typeof e=="object"&&(r=e);let n=uy(t,r);if(!n)return null;if(n.warnings.forEach(i=>GT.warn(n.options.logLevel,i)),n.errors.length>0){if(n.options.logLevel!=="silent")throw n.errors[0];n.errors=[]}return n.toJS(Object.assign({reviver:s},r))}function XT(t,e,r){let s=null;if(typeof e=="function"||Array.isArray(e)?s=e:r===void 0&&e&&(r=e),typeof r=="string"&&(r=r.length),typeof r=="number"){let n=Math.round(r);r=n<1?void 0:n>8?{indent:8}:{indent:n}}if(t===void 0){let{keepUndefined:n}=r??e??{};if(!n)return}return YT.isDocument(t)&&!s?t.toString(r):new HT.Document(t,s,r).toString(r)}hi.parse=QT;hi.parseAllDocuments=ZT;hi.parseDocument=uy;hi.stringify=XT});var py=_(ae=>{"use strict";var eN=hu(),tN=ai(),rN=Yl(),Cu=li(),sN=Kn(),kr=Q(),nN=_r(),iN=we(),aN=wr(),oN=$r(),cN=So(),lN=Eu(),uN=Nu(),dN=Ou(),To=dy(),fy=Ln();ae.Composer=eN.Composer;ae.Document=tN.Document;ae.Schema=rN.Schema;ae.YAMLError=Cu.YAMLError;ae.YAMLParseError=Cu.YAMLParseError;ae.YAMLWarning=Cu.YAMLWarning;ae.Alias=sN.Alias;ae.isAlias=kr.isAlias;ae.isCollection=kr.isCollection;ae.isDocument=kr.isDocument;ae.isMap=kr.isMap;ae.isNode=kr.isNode;ae.isPair=kr.isPair;ae.isScalar=kr.isScalar;ae.isSeq=kr.isSeq;ae.Pair=nN.Pair;ae.Scalar=iN.Scalar;ae.YAMLMap=aN.YAMLMap;ae.YAMLSeq=oN.YAMLSeq;ae.CST=cN;ae.Lexer=lN.Lexer;ae.LineCounter=uN.LineCounter;ae.Parser=dN.Parser;ae.parse=To.parse;ae.parseAllDocuments=To.parseAllDocuments;ae.parseDocument=To.parseDocument;ae.stringify=To.stringify;ae.visit=fy.visit;ae.visitAsync=fy.visitAsync});var vi=_(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.regexpCode=ne.getEsmExportName=ne.getProperty=ne.safeStringify=ne.stringify=ne.strConcat=ne.addCodeArg=ne.str=ne._=ne.nil=ne._Code=ne.Name=ne.IDENTIFIER=ne._CodeOrName=void 0;var gi=class{};ne._CodeOrName=gi;ne.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var fs=class extends gi{constructor(e){if(super(),!ne.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ne.Name=fs;var ot=class extends gi{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,s)=>`${r}${s}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,s)=>(s instanceof fs&&(r[s.str]=(r[s.str]||0)+1),r),{})}};ne._Code=ot;ne.nil=new ot("");function my(t,...e){let r=[t[0]],s=0;for(;s<e.length;)Ru(r,e[s]),r.push(t[++s]);return new ot(r)}ne._=my;var Au=new ot("+");function hy(t,...e){let r=[yi(t[0])],s=0;for(;s<e.length;)r.push(Au),Ru(r,e[s]),r.push(Au,yi(t[++s]));return fN(r),new ot(r)}ne.str=hy;function Ru(t,e){e instanceof ot?t.push(...e._items):e instanceof fs?t.push(e):t.push(hN(e))}ne.addCodeArg=Ru;function fN(t){let e=1;for(;e<t.length-1;){if(t[e]===Au){let r=pN(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function pN(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof fs||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof fs))return`"${t}${e.slice(1)}`}function mN(t,e){return e.emptyStr()?t:t.emptyStr()?e:hy`${t}${e}`}ne.strConcat=mN;function hN(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:yi(Array.isArray(t)?t.join(","):t)}function gN(t){return new ot(yi(t))}ne.stringify=gN;function yi(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ne.safeStringify=yi;function yN(t){return typeof t=="string"&&ne.IDENTIFIER.test(t)?new ot(`.${t}`):my`[${t}]`}ne.getProperty=yN;function vN(t){if(typeof t=="string"&&ne.IDENTIFIER.test(t))return new ot(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ne.getEsmExportName=vN;function _N(t){return new ot(t.toString())}ne.regexpCode=_N});var xu=_(He=>{"use strict";Object.defineProperty(He,"__esModule",{value:!0});He.ValueScope=He.ValueScopeName=He.Scope=He.varKinds=He.UsedValueState=void 0;var Je=vi(),Iu=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},No;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(No||(He.UsedValueState=No={}));He.varKinds={const:new Je.Name("const"),let:new Je.Name("let"),var:new Je.Name("var")};var Po=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Je.Name?e:this.name(e)}name(e){return new Je.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,s;if(!((s=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||s===void 0)&&s.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};He.Scope=Po;var Oo=class extends Je.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:s}){this.value=e,this.scopePath=(0,Je._)`.${new Je.Name(r)}[${s}]`}};He.ValueScopeName=Oo;var bN=(0,Je._)`\n`,Mu=class extends Po{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?bN:Je.nil}}get(){return this._scope}name(e){return new Oo(e,this._newName(e))}value(e,r){var s;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let n=this.toName(e),{prefix:i}=n,a=(s=r.key)!==null&&s!==void 0?s:r.ref,o=this._values[i];if(o){let u=o.get(a);if(u)return u}else o=this._values[i]=new Map;o.set(a,n);let c=this._scope[i]||(this._scope[i]=[]),l=c.length;return c[l]=r.ref,n.setValue(r,{property:i,itemIndex:l}),n}getValue(e,r){let s=this._values[e];if(s)return s.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,s=>{if(s.scopePath===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return(0,Je._)`${e}${s.scopePath}`})}scopeCode(e=this._values,r,s){return this._reduceValues(e,n=>{if(n.value===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return n.value.code},r,s)}_reduceValues(e,r,s={},n){let i=Je.nil;for(let a in e){let o=e[a];if(!o)continue;let c=s[a]=s[a]||new Map;o.forEach(l=>{if(c.has(l))return;c.set(l,No.Started);let u=r(l);if(u){let d=this.opts.es5?He.varKinds.var:He.varKinds.const;i=(0,Je._)`${i}${d} ${l} = ${u};${this.opts._n}`}else if(u=n?.(l))i=(0,Je._)`${i}${u}${this.opts._n}`;else throw new Iu(l);c.set(l,No.Completed)})}return i}};He.ValueScope=Mu});var J=_(z=>{"use strict";Object.defineProperty(z,"__esModule",{value:!0});z.or=z.and=z.not=z.CodeGen=z.operators=z.varKinds=z.ValueScopeName=z.ValueScope=z.Scope=z.Name=z.regexpCode=z.stringify=z.getProperty=z.nil=z.strConcat=z.str=z._=void 0;var W=vi(),bt=xu(),Er=vi();Object.defineProperty(z,"_",{enumerable:!0,get:function(){return Er._}});Object.defineProperty(z,"str",{enumerable:!0,get:function(){return Er.str}});Object.defineProperty(z,"strConcat",{enumerable:!0,get:function(){return Er.strConcat}});Object.defineProperty(z,"nil",{enumerable:!0,get:function(){return Er.nil}});Object.defineProperty(z,"getProperty",{enumerable:!0,get:function(){return Er.getProperty}});Object.defineProperty(z,"stringify",{enumerable:!0,get:function(){return Er.stringify}});Object.defineProperty(z,"regexpCode",{enumerable:!0,get:function(){return Er.regexpCode}});Object.defineProperty(z,"Name",{enumerable:!0,get:function(){return Er.Name}});var Io=xu();Object.defineProperty(z,"Scope",{enumerable:!0,get:function(){return Io.Scope}});Object.defineProperty(z,"ValueScope",{enumerable:!0,get:function(){return Io.ValueScope}});Object.defineProperty(z,"ValueScopeName",{enumerable:!0,get:function(){return Io.ValueScopeName}});Object.defineProperty(z,"varKinds",{enumerable:!0,get:function(){return Io.varKinds}});z.operators={GT:new W._Code(">"),GTE:new W._Code(">="),LT:new W._Code("<"),LTE:new W._Code("<="),EQ:new W._Code("==="),NEQ:new W._Code("!=="),NOT:new W._Code("!"),OR:new W._Code("||"),AND:new W._Code("&&"),ADD:new W._Code("+")};var Qt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},ju=class extends Qt{constructor(e,r,s){super(),this.varKind=e,this.name=r,this.rhs=s}render({es5:e,_n:r}){let s=e?bt.varKinds.var:this.varKind,n=this.rhs===void 0?"":` = ${this.rhs}`;return`${s} ${this.name}${n};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=en(this.rhs,e,r)),this}get names(){return this.rhs instanceof W._CodeOrName?this.rhs.names:{}}},Co=class extends Qt{constructor(e,r,s){super(),this.lhs=e,this.rhs=r,this.sideEffects=s}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof W.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=en(this.rhs,e,r),this}get names(){let e=this.lhs instanceof W.Name?{}:{...this.lhs.names};return Ro(e,this.rhs)}},qu=class extends Co{constructor(e,r,s,n){super(e,s,n),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Du=class extends Qt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Lu=class extends Qt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Fu=class extends Qt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Uu=class extends Qt{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=en(this.code,e,r),this}get names(){return this.code instanceof W._CodeOrName?this.code.names:{}}},_i=class extends Qt{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,s)=>r+s.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let s=e[r].optimizeNodes();Array.isArray(s)?e.splice(r,1,...s):s?e[r]=s:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:s}=this,n=s.length;for(;n--;){let i=s[n];i.optimizeNames(e,r)||(wN(e,i.names),s.splice(n,1))}return s.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>hs(e,r.names),{})}},Xt=class extends _i{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Vu=class extends _i{},Xs=class extends Xt{};Xs.kind="else";var ps=class t extends Xt{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let s=r.optimizeNodes();r=this.else=Array.isArray(s)?new Xs(s):s}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(gy(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var s;if(this.else=(s=this.else)===null||s===void 0?void 0:s.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=en(this.condition,e,r),this}get names(){let e=super.names;return Ro(e,this.condition),this.else&&hs(e,this.else.names),e}};ps.kind="if";var ms=class extends Xt{};ms.kind="for";var Ku=class extends ms{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=en(this.iteration,e,r),this}get names(){return hs(super.names,this.iteration.names)}},zu=class extends ms{constructor(e,r,s,n){super(),this.varKind=e,this.name=r,this.from=s,this.to=n}render(e){let r=e.es5?bt.varKinds.var:this.varKind,{name:s,from:n,to:i}=this;return`for(${r} ${s}=${n}; ${s}<${i}; ${s}++)`+super.render(e)}get names(){let e=Ro(super.names,this.from);return Ro(e,this.to)}},Ao=class extends ms{constructor(e,r,s,n){super(),this.loop=e,this.varKind=r,this.name=s,this.iterable=n}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=en(this.iterable,e,r),this}get names(){return hs(super.names,this.iterable.names)}},bi=class extends Xt{constructor(e,r,s){super(),this.name=e,this.args=r,this.async=s}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};bi.kind="func";var wi=class extends _i{render(e){return"return "+super.render(e)}};wi.kind="return";var Bu=class extends Xt{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var s,n;return super.optimizeNames(e,r),(s=this.catch)===null||s===void 0||s.optimizeNames(e,r),(n=this.finally)===null||n===void 0||n.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&hs(e,this.catch.names),this.finally&&hs(e,this.finally.names),e}},$i=class extends Xt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};$i.kind="catch";var Si=class extends Xt{render(e){return"finally"+super.render(e)}};Si.kind="finally";var Ju=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
141
|
+
`:""},this._extScope=e,this._scope=new bt.Scope({parent:e}),this._nodes=[new Vu]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let s=this._extScope.value(e,r);return(this._values[s.prefix]||(this._values[s.prefix]=new Set)).add(s),s}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,s,n){let i=this._scope.toName(r);return s!==void 0&&n&&(this._constants[i.str]=s),this._leafNode(new ju(e,i,s)),i}const(e,r,s){return this._def(bt.varKinds.const,e,r,s)}let(e,r,s){return this._def(bt.varKinds.let,e,r,s)}var(e,r,s){return this._def(bt.varKinds.var,e,r,s)}assign(e,r,s){return this._leafNode(new Co(e,r,s))}add(e,r){return this._leafNode(new qu(e,z.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==W.nil&&this._leafNode(new Uu(e)),this}object(...e){let r=["{"];for(let[s,n]of e)r.length>1&&r.push(","),r.push(s),(s!==n||this.opts.es5)&&(r.push(":"),(0,W.addCodeArg)(r,n));return r.push("}"),new W._Code(r)}if(e,r,s){if(this._blockNode(new ps(e)),r&&s)this.code(r).else().code(s).endIf();else if(r)this.code(r).endIf();else if(s)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new ps(e))}else(){return this._elseNode(new Xs)}endIf(){return this._endBlockNode(ps,Xs)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Ku(e),r)}forRange(e,r,s,n,i=this.opts.es5?bt.varKinds.var:bt.varKinds.let){let a=this._scope.toName(e);return this._for(new zu(i,a,r,s),()=>n(a))}forOf(e,r,s,n=bt.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof W.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,W._)`${a}.length`,o=>{this.var(i,(0,W._)`${a}[${o}]`),s(i)})}return this._for(new Ao("of",n,i,r),()=>s(i))}forIn(e,r,s,n=this.opts.es5?bt.varKinds.var:bt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,W._)`Object.keys(${r})`,s);let i=this._scope.toName(e);return this._for(new Ao("in",n,i,r),()=>s(i))}endFor(){return this._endBlockNode(ms)}label(e){return this._leafNode(new Du(e))}break(e){return this._leafNode(new Lu(e))}return(e){let r=new wi;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(wi)}try(e,r,s){if(!r&&!s)throw new Error('CodeGen: "try" without "catch" and "finally"');let n=new Bu;if(this._blockNode(n),this.code(e),r){let i=this.name("e");this._currNode=n.catch=new $i(i),r(i)}return s&&(this._currNode=n.finally=new Si,this.code(s)),this._endBlockNode($i,Si)}throw(e){return this._leafNode(new Fu(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let s=this._nodes.length-r;if(s<0||e!==void 0&&s!==e)throw new Error(`CodeGen: wrong number of nodes: ${s} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=W.nil,s,n){return this._blockNode(new bi(e,r,s)),n&&this.code(n).endFunc(),this}endFunc(){return this._endBlockNode(bi)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let s=this._currNode;if(s instanceof e||r&&s instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof ps))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};z.CodeGen=Ju;function hs(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ro(t,e){return e instanceof W._CodeOrName?hs(t,e.names):t}function en(t,e,r){if(t instanceof W.Name)return s(t);if(!n(t))return t;return new W._Code(t._items.reduce((i,a)=>(a instanceof W.Name&&(a=s(a)),a instanceof W._Code?i.push(...a._items):i.push(a),i),[]));function s(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function n(i){return i instanceof W._Code&&i._items.some(a=>a instanceof W.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function wN(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function gy(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,W._)`!${Hu(t)}`}z.not=gy;var $N=yy(z.operators.AND);function SN(...t){return t.reduce($N)}z.and=SN;var kN=yy(z.operators.OR);function EN(...t){return t.reduce(kN)}z.or=EN;function yy(t){return(e,r)=>e===W.nil?r:r===W.nil?e:(0,W._)`${Hu(e)} ${t} ${Hu(r)}`}function Hu(t){return t instanceof W.Name?t:(0,W._)`(${t})`}});var X=_(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.checkStrictMode=H.getErrorPath=H.Type=H.useFunc=H.setEvaluated=H.evaluatedPropsToName=H.mergeEvaluated=H.eachItem=H.unescapeJsonPointer=H.escapeJsonPointer=H.escapeFragment=H.unescapeFragment=H.schemaRefOrVal=H.schemaHasRulesButRef=H.schemaHasRules=H.checkUnknownRules=H.alwaysValidSchema=H.toHash=void 0;var de=J(),TN=vi();function NN(t){let e={};for(let r of t)e[r]=!0;return e}H.toHash=NN;function PN(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(by(t,e),!wy(e,t.self.RULES.all))}H.alwaysValidSchema=PN;function by(t,e=t.schema){let{opts:r,self:s}=t;if(!r.strictSchema||typeof e=="boolean")return;let n=s.RULES.keywords;for(let i in e)n[i]||ky(t,`unknown keyword: "${i}"`)}H.checkUnknownRules=by;function wy(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}H.schemaHasRules=wy;function ON(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}H.schemaHasRulesButRef=ON;function CN({topSchemaRef:t,schemaPath:e},r,s,n){if(!n){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,de._)`${r}`}return(0,de._)`${t}${e}${(0,de.getProperty)(s)}`}H.schemaRefOrVal=CN;function AN(t){return $y(decodeURIComponent(t))}H.unescapeFragment=AN;function RN(t){return encodeURIComponent(Yu(t))}H.escapeFragment=RN;function Yu(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}H.escapeJsonPointer=Yu;function $y(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}H.unescapeJsonPointer=$y;function IN(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}H.eachItem=IN;function vy({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:s}){return(n,i,a,o)=>{let c=a===void 0?i:a instanceof de.Name?(i instanceof de.Name?t(n,i,a):e(n,i,a),a):i instanceof de.Name?(e(n,a,i),i):r(i,a);return o===de.Name&&!(c instanceof de.Name)?s(n,c):c}}H.mergeEvaluated={props:vy({mergeNames:(t,e,r)=>t.if((0,de._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,de._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,de._)`${r} || {}`).code((0,de._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,de._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,de._)`${r} || {}`),Wu(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Sy}),items:vy({mergeNames:(t,e,r)=>t.if((0,de._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,de._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,de._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,de._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Sy(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,de._)`{}`);return e!==void 0&&Wu(t,r,e),r}H.evaluatedPropsToName=Sy;function Wu(t,e,r){Object.keys(r).forEach(s=>t.assign((0,de._)`${e}${(0,de.getProperty)(s)}`,!0))}H.setEvaluated=Wu;var _y={};function MN(t,e){return t.scopeValue("func",{ref:e,code:_y[e.code]||(_y[e.code]=new TN._Code(e.code))})}H.useFunc=MN;var Gu;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Gu||(H.Type=Gu={}));function xN(t,e,r){if(t instanceof de.Name){let s=e===Gu.Num;return r?s?(0,de._)`"[" + ${t} + "]"`:(0,de._)`"['" + ${t} + "']"`:s?(0,de._)`"/" + ${t}`:(0,de._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,de.getProperty)(t).toString():"/"+Yu(t)}H.getErrorPath=xN;function ky(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}H.checkStrictMode=ky});var er=_(Zu=>{"use strict";Object.defineProperty(Zu,"__esModule",{value:!0});var Re=J(),jN={data:new Re.Name("data"),valCxt:new Re.Name("valCxt"),instancePath:new Re.Name("instancePath"),parentData:new Re.Name("parentData"),parentDataProperty:new Re.Name("parentDataProperty"),rootData:new Re.Name("rootData"),dynamicAnchors:new Re.Name("dynamicAnchors"),vErrors:new Re.Name("vErrors"),errors:new Re.Name("errors"),this:new Re.Name("this"),self:new Re.Name("self"),scope:new Re.Name("scope"),json:new Re.Name("json"),jsonPos:new Re.Name("jsonPos"),jsonLen:new Re.Name("jsonLen"),jsonPart:new Re.Name("jsonPart")};Zu.default=jN});var ki=_(Ie=>{"use strict";Object.defineProperty(Ie,"__esModule",{value:!0});Ie.extendErrors=Ie.resetErrorsCount=Ie.reportExtraError=Ie.reportError=Ie.keyword$DataError=Ie.keywordError=void 0;var ee=J(),Mo=X(),De=er();Ie.keywordError={message:({keyword:t})=>(0,ee.str)`must pass "${t}" keyword validation`};Ie.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,ee.str)`"${t}" keyword must be ${e} ($data)`:(0,ee.str)`"${t}" keyword is invalid ($data)`};function qN(t,e=Ie.keywordError,r,s){let{it:n}=t,{gen:i,compositeRule:a,allErrors:o}=n,c=Ny(t,e,r);s??(a||o)?Ey(i,c):Ty(n,(0,ee._)`[${c}]`)}Ie.reportError=qN;function DN(t,e=Ie.keywordError,r){let{it:s}=t,{gen:n,compositeRule:i,allErrors:a}=s,o=Ny(t,e,r);Ey(n,o),i||a||Ty(s,De.default.vErrors)}Ie.reportExtraError=DN;function LN(t,e){t.assign(De.default.errors,e),t.if((0,ee._)`${De.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,ee._)`${De.default.vErrors}.length`,e),()=>t.assign(De.default.vErrors,null)))}Ie.resetErrorsCount=LN;function FN({gen:t,keyword:e,schemaValue:r,data:s,errsCount:n,it:i}){if(n===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",n,De.default.errors,o=>{t.const(a,(0,ee._)`${De.default.vErrors}[${o}]`),t.if((0,ee._)`${a}.instancePath === undefined`,()=>t.assign((0,ee._)`${a}.instancePath`,(0,ee.strConcat)(De.default.instancePath,i.errorPath))),t.assign((0,ee._)`${a}.schemaPath`,(0,ee.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,ee._)`${a}.schema`,r),t.assign((0,ee._)`${a}.data`,s))})}Ie.extendErrors=FN;function Ey(t,e){let r=t.const("err",e);t.if((0,ee._)`${De.default.vErrors} === null`,()=>t.assign(De.default.vErrors,(0,ee._)`[${r}]`),(0,ee._)`${De.default.vErrors}.push(${r})`),t.code((0,ee._)`${De.default.errors}++`)}function Ty(t,e){let{gen:r,validateName:s,schemaEnv:n}=t;n.$async?r.throw((0,ee._)`new ${t.ValidationError}(${e})`):(r.assign((0,ee._)`${s}.errors`,e),r.return(!1))}var gs={keyword:new ee.Name("keyword"),schemaPath:new ee.Name("schemaPath"),params:new ee.Name("params"),propertyName:new ee.Name("propertyName"),message:new ee.Name("message"),schema:new ee.Name("schema"),parentSchema:new ee.Name("parentSchema")};function Ny(t,e,r){let{createErrors:s}=t.it;return s===!1?(0,ee._)`{}`:UN(t,e,r)}function UN(t,e,r={}){let{gen:s,it:n}=t,i=[VN(n,r),KN(t,r)];return zN(t,e,i),s.object(...i)}function VN({errorPath:t},{instancePath:e}){let r=e?(0,ee.str)`${t}${(0,Mo.getErrorPath)(e,Mo.Type.Str)}`:t;return[De.default.instancePath,(0,ee.strConcat)(De.default.instancePath,r)]}function KN({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:s}){let n=s?e:(0,ee.str)`${e}/${t}`;return r&&(n=(0,ee.str)`${n}${(0,Mo.getErrorPath)(r,Mo.Type.Str)}`),[gs.schemaPath,n]}function zN(t,{params:e,message:r},s){let{keyword:n,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:l,topSchemaRef:u,schemaPath:d}=o;s.push([gs.keyword,n],[gs.params,typeof e=="function"?e(t):e||(0,ee._)`{}`]),c.messages&&s.push([gs.message,typeof r=="function"?r(t):r]),c.verbose&&s.push([gs.schema,a],[gs.parentSchema,(0,ee._)`${u}${d}`],[De.default.data,i]),l&&s.push([gs.propertyName,l])}});var Oy=_(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.boolOrEmptySchema=tn.topBoolOrEmptySchema=void 0;var BN=ki(),JN=J(),HN=er(),GN={message:"boolean schema is false"};function YN(t){let{gen:e,schema:r,validateName:s}=t;r===!1?Py(t,!1):typeof r=="object"&&r.$async===!0?e.return(HN.default.data):(e.assign((0,JN._)`${s}.errors`,null),e.return(!0))}tn.topBoolOrEmptySchema=YN;function WN(t,e){let{gen:r,schema:s}=t;s===!1?(r.var(e,!1),Py(t)):r.var(e,!0)}tn.boolOrEmptySchema=WN;function Py(t,e){let{gen:r,data:s}=t,n={gen:r,keyword:"false schema",data:s,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,BN.reportError)(n,GN,void 0,e)}});var Qu=_(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.getRules=rn.isJSONType=void 0;var ZN=["string","number","integer","boolean","null","object","array"],QN=new Set(ZN);function XN(t){return typeof t=="string"&&QN.has(t)}rn.isJSONType=XN;function eP(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}rn.getRules=eP});var Xu=_(Tr=>{"use strict";Object.defineProperty(Tr,"__esModule",{value:!0});Tr.shouldUseRule=Tr.shouldUseGroup=Tr.schemaHasRulesForType=void 0;function tP({schema:t,self:e},r){let s=e.RULES.types[r];return s&&s!==!0&&Cy(t,s)}Tr.schemaHasRulesForType=tP;function Cy(t,e){return e.rules.some(r=>Ay(t,r))}Tr.shouldUseGroup=Cy;function Ay(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(s=>t[s]!==void 0))}Tr.shouldUseRule=Ay});var Ei=_(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.reportTypeError=Me.checkDataTypes=Me.checkDataType=Me.coerceAndCheckDataType=Me.getJSONTypes=Me.getSchemaTypes=Me.DataType=void 0;var rP=Qu(),sP=Xu(),nP=ki(),F=J(),Ry=X(),sn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(sn||(Me.DataType=sn={}));function iP(t){let e=Iy(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Me.getSchemaTypes=iP;function Iy(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(rP.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Me.getJSONTypes=Iy;function aP(t,e){let{gen:r,data:s,opts:n}=t,i=oP(e,n.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,sP.schemaHasRulesForType)(t,e[0]));if(a){let o=td(e,s,n.strictNumbers,sn.Wrong);r.if(o,()=>{i.length?cP(t,e,i):rd(t)})}return a}Me.coerceAndCheckDataType=aP;var My=new Set(["string","number","integer","boolean","null"]);function oP(t,e){return e?t.filter(r=>My.has(r)||e==="array"&&r==="array"):[]}function cP(t,e,r){let{gen:s,data:n,opts:i}=t,a=s.let("dataType",(0,F._)`typeof ${n}`),o=s.let("coerced",(0,F._)`undefined`);i.coerceTypes==="array"&&s.if((0,F._)`${a} == 'object' && Array.isArray(${n}) && ${n}.length == 1`,()=>s.assign(n,(0,F._)`${n}[0]`).assign(a,(0,F._)`typeof ${n}`).if(td(e,n,i.strictNumbers),()=>s.assign(o,n))),s.if((0,F._)`${o} !== undefined`);for(let l of r)(My.has(l)||l==="array"&&i.coerceTypes==="array")&&c(l);s.else(),rd(t),s.endIf(),s.if((0,F._)`${o} !== undefined`,()=>{s.assign(n,o),lP(t,o)});function c(l){switch(l){case"string":s.elseIf((0,F._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,F._)`"" + ${n}`).elseIf((0,F._)`${n} === null`).assign(o,(0,F._)`""`);return;case"number":s.elseIf((0,F._)`${a} == "boolean" || ${n} === null
|
|
142
|
+
|| (${a} == "string" && ${n} && ${n} == +${n})`).assign(o,(0,F._)`+${n}`);return;case"integer":s.elseIf((0,F._)`${a} === "boolean" || ${n} === null
|
|
143
|
+
|| (${a} === "string" && ${n} && ${n} == +${n} && !(${n} % 1))`).assign(o,(0,F._)`+${n}`);return;case"boolean":s.elseIf((0,F._)`${n} === "false" || ${n} === 0 || ${n} === null`).assign(o,!1).elseIf((0,F._)`${n} === "true" || ${n} === 1`).assign(o,!0);return;case"null":s.elseIf((0,F._)`${n} === "" || ${n} === 0 || ${n} === false`),s.assign(o,null);return;case"array":s.elseIf((0,F._)`${a} === "string" || ${a} === "number"
|
|
144
|
+
|| ${a} === "boolean" || ${n} === null`).assign(o,(0,F._)`[${n}]`)}}}function lP({gen:t,parentData:e,parentDataProperty:r},s){t.if((0,F._)`${e} !== undefined`,()=>t.assign((0,F._)`${e}[${r}]`,s))}function ed(t,e,r,s=sn.Correct){let n=s===sn.Correct?F.operators.EQ:F.operators.NEQ,i;switch(t){case"null":return(0,F._)`${e} ${n} null`;case"array":i=(0,F._)`Array.isArray(${e})`;break;case"object":i=(0,F._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,F._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,F._)`typeof ${e} ${n} ${t}`}return s===sn.Correct?i:(0,F.not)(i);function a(o=F.nil){return(0,F.and)((0,F._)`typeof ${e} == "number"`,o,r?(0,F._)`isFinite(${e})`:F.nil)}}Me.checkDataType=ed;function td(t,e,r,s){if(t.length===1)return ed(t[0],e,r,s);let n,i=(0,Ry.toHash)(t);if(i.array&&i.object){let a=(0,F._)`typeof ${e} != "object"`;n=i.null?a:(0,F._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else n=F.nil;i.number&&delete i.integer;for(let a in i)n=(0,F.and)(n,ed(a,e,r,s));return n}Me.checkDataTypes=td;var uP={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,F._)`{type: ${t}}`:(0,F._)`{type: ${e}}`};function rd(t){let e=dP(t);(0,nP.reportError)(e,uP)}Me.reportTypeError=rd;function dP(t){let{gen:e,data:r,schema:s}=t,n=(0,Ry.schemaRefOrVal)(t,s,"type");return{gen:e,keyword:"type",data:r,schema:s.type,schemaCode:n,schemaValue:n,parentSchema:s,params:{},it:t}}});var jy=_(xo=>{"use strict";Object.defineProperty(xo,"__esModule",{value:!0});xo.assignDefaults=void 0;var nn=J(),fP=X();function pP(t,e){let{properties:r,items:s}=t.schema;if(e==="object"&&r)for(let n in r)xy(t,n,r[n].default);else e==="array"&&Array.isArray(s)&&s.forEach((n,i)=>xy(t,i,n.default))}xo.assignDefaults=pP;function xy(t,e,r){let{gen:s,compositeRule:n,data:i,opts:a}=t;if(r===void 0)return;let o=(0,nn._)`${i}${(0,nn.getProperty)(e)}`;if(n){(0,fP.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,nn._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,nn._)`${c} || ${o} === null || ${o} === ""`),s.if(c,(0,nn._)`${o} = ${(0,nn.stringify)(r)}`)}});var ct=_(ce=>{"use strict";Object.defineProperty(ce,"__esModule",{value:!0});ce.validateUnion=ce.validateArray=ce.usePattern=ce.callValidateCode=ce.schemaProperties=ce.allSchemaProperties=ce.noPropertyInData=ce.propertyInData=ce.isOwnProperty=ce.hasPropFunc=ce.reportMissingProp=ce.checkMissingProp=ce.checkReportMissingProp=void 0;var pe=J(),sd=X(),Nr=er(),mP=X();function hP(t,e){let{gen:r,data:s,it:n}=t;r.if(id(r,s,e,n.opts.ownProperties),()=>{t.setParams({missingProperty:(0,pe._)`${e}`},!0),t.error()})}ce.checkReportMissingProp=hP;function gP({gen:t,data:e,it:{opts:r}},s,n){return(0,pe.or)(...s.map(i=>(0,pe.and)(id(t,e,i,r.ownProperties),(0,pe._)`${n} = ${i}`)))}ce.checkMissingProp=gP;function yP(t,e){t.setParams({missingProperty:e},!0),t.error()}ce.reportMissingProp=yP;function qy(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,pe._)`Object.prototype.hasOwnProperty`})}ce.hasPropFunc=qy;function nd(t,e,r){return(0,pe._)`${qy(t)}.call(${e}, ${r})`}ce.isOwnProperty=nd;function vP(t,e,r,s){let n=(0,pe._)`${e}${(0,pe.getProperty)(r)} !== undefined`;return s?(0,pe._)`${n} && ${nd(t,e,r)}`:n}ce.propertyInData=vP;function id(t,e,r,s){let n=(0,pe._)`${e}${(0,pe.getProperty)(r)} === undefined`;return s?(0,pe.or)(n,(0,pe.not)(nd(t,e,r))):n}ce.noPropertyInData=id;function Dy(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ce.allSchemaProperties=Dy;function _P(t,e){return Dy(e).filter(r=>!(0,sd.alwaysValidSchema)(t,e[r]))}ce.schemaProperties=_P;function bP({schemaCode:t,data:e,it:{gen:r,topSchemaRef:s,schemaPath:n,errorPath:i},it:a},o,c,l){let u=l?(0,pe._)`${t}, ${e}, ${s}${n}`:e,d=[[Nr.default.instancePath,(0,pe.strConcat)(Nr.default.instancePath,i)],[Nr.default.parentData,a.parentData],[Nr.default.parentDataProperty,a.parentDataProperty],[Nr.default.rootData,Nr.default.rootData]];a.opts.dynamicRef&&d.push([Nr.default.dynamicAnchors,Nr.default.dynamicAnchors]);let f=(0,pe._)`${u}, ${r.object(...d)}`;return c!==pe.nil?(0,pe._)`${o}.call(${c}, ${f})`:(0,pe._)`${o}(${f})`}ce.callValidateCode=bP;var wP=(0,pe._)`new RegExp`;function $P({gen:t,it:{opts:e}},r){let s=e.unicodeRegExp?"u":"",{regExp:n}=e.code,i=n(r,s);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,pe._)`${n.code==="new RegExp"?wP:(0,mP.useFunc)(t,n)}(${r}, ${s})`})}ce.usePattern=$P;function SP(t){let{gen:e,data:r,keyword:s,it:n}=t,i=e.name("valid");if(n.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,pe._)`${r}.length`);e.forRange("i",0,c,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:sd.Type.Num},i),e.if((0,pe.not)(i),o)})}}ce.validateArray=SP;function kP(t){let{gen:e,schema:r,keyword:s,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,sd.alwaysValidSchema)(n,c))&&!n.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,l)=>{let u=t.subschema({keyword:s,schemaProp:l,compositeRule:!0},o);e.assign(a,(0,pe._)`${a} || ${o}`),t.mergeValidEvaluated(u,o)||e.if((0,pe.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}ce.validateUnion=kP});var Uy=_(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.validateKeywordUsage=xt.validSchemaType=xt.funcKeywordCode=xt.macroKeywordCode=void 0;var Le=J(),ys=er(),EP=ct(),TP=ki();function NP(t,e){let{gen:r,keyword:s,schema:n,parentSchema:i,it:a}=t,o=e.macro.call(a.self,n,i,a),c=Fy(r,s,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let l=r.name("valid");t.subschema({schema:o,schemaPath:Le.nil,errSchemaPath:`${a.errSchemaPath}/${s}`,topSchemaRef:c,compositeRule:!0},l),t.pass(l,()=>t.error(!0))}xt.macroKeywordCode=NP;function PP(t,e){var r;let{gen:s,keyword:n,schema:i,parentSchema:a,$data:o,it:c}=t;CP(c,e);let l=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,u=Fy(s,n,l),d=s.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)m(),e.modifying&&Ly(t),g(()=>t.error());else{let h=e.async?p():y();e.modifying&&Ly(t),g(()=>OP(t,h))}}function p(){let h=s.let("ruleErrs",null);return s.try(()=>m((0,Le._)`await `),v=>s.assign(d,!1).if((0,Le._)`${v} instanceof ${c.ValidationError}`,()=>s.assign(h,(0,Le._)`${v}.errors`),()=>s.throw(v))),h}function y(){let h=(0,Le._)`${u}.errors`;return s.assign(h,null),m(Le.nil),h}function m(h=e.async?(0,Le._)`await `:Le.nil){let v=c.opts.passContext?ys.default.this:ys.default.self,b=!("compile"in e&&!o||e.schema===!1);s.assign(d,(0,Le._)`${h}${(0,EP.callValidateCode)(t,u,v,b)}`,e.modifying)}function g(h){var v;s.if((0,Le.not)((v=e.valid)!==null&&v!==void 0?v:d),h)}}xt.funcKeywordCode=PP;function Ly(t){let{gen:e,data:r,it:s}=t;e.if(s.parentData,()=>e.assign(r,(0,Le._)`${s.parentData}[${s.parentDataProperty}]`))}function OP(t,e){let{gen:r}=t;r.if((0,Le._)`Array.isArray(${e})`,()=>{r.assign(ys.default.vErrors,(0,Le._)`${ys.default.vErrors} === null ? ${e} : ${ys.default.vErrors}.concat(${e})`).assign(ys.default.errors,(0,Le._)`${ys.default.vErrors}.length`),(0,TP.extendErrors)(t)},()=>t.error())}function CP({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Fy(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Le.stringify)(r)})}function AP(t,e,r=!1){return!e.length||e.some(s=>s==="array"?Array.isArray(t):s==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==s||r&&typeof t>"u")}xt.validSchemaType=AP;function RP({schema:t,opts:e,self:r,errSchemaPath:s},n,i){if(Array.isArray(n.keyword)?!n.keyword.includes(i):n.keyword!==i)throw new Error("ajv implementation error");let a=n.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(n.validateSchema&&!n.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${s}": `+r.errorsText(n.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}xt.validateKeywordUsage=RP});var Ky=_(Pr=>{"use strict";Object.defineProperty(Pr,"__esModule",{value:!0});Pr.extendSubschemaMode=Pr.extendSubschemaData=Pr.getSubschema=void 0;var jt=J(),Vy=X();function IP(t,{keyword:e,schemaProp:r,schema:s,schemaPath:n,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&s!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,jt._)`${t.schemaPath}${(0,jt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,jt._)`${t.schemaPath}${(0,jt.getProperty)(e)}${(0,jt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Vy.escapeFragment)(r)}`}}if(s!==void 0){if(n===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:s,schemaPath:n,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}Pr.getSubschema=IP;function MP(t,e,{dataProp:r,dataPropType:s,data:n,dataTypes:i,propertyName:a}){if(n!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:l,dataPathArr:u,opts:d}=e,f=o.let("data",(0,jt._)`${e.data}${(0,jt.getProperty)(r)}`,!0);c(f),t.errorPath=(0,jt.str)`${l}${(0,Vy.getErrorPath)(r,s,d.jsPropertySyntax)}`,t.parentDataProperty=(0,jt._)`${r}`,t.dataPathArr=[...u,t.parentDataProperty]}if(n!==void 0){let l=n instanceof jt.Name?n:o.let("data",n,!0);c(l),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(l){t.data=l,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,l]}}Pr.extendSubschemaData=MP;function xP(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:s,createErrors:n,allErrors:i}){s!==void 0&&(t.compositeRule=s),n!==void 0&&(t.createErrors=n),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}Pr.extendSubschemaMode=xP});var Ti=_((ZU,zy)=>{"use strict";zy.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var s,n,i;if(Array.isArray(e)){if(s=e.length,s!=r.length)return!1;for(n=s;n--!==0;)if(!t(e[n],r[n]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(i=Object.keys(e),s=i.length,s!==Object.keys(r).length)return!1;for(n=s;n--!==0;)if(!Object.prototype.hasOwnProperty.call(r,i[n]))return!1;for(n=s;n--!==0;){var a=i[n];if(!t(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}});var Jy=_((QU,By)=>{"use strict";var Or=By.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var s=typeof r=="function"?r:r.pre||function(){},n=r.post||function(){};jo(e,s,n,t,"",t)};Or.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Or.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Or.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Or.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function jo(t,e,r,s,n,i,a,o,c,l){if(s&&typeof s=="object"&&!Array.isArray(s)){e(s,n,i,a,o,c,l);for(var u in s){var d=s[u];if(Array.isArray(d)){if(u in Or.arrayKeywords)for(var f=0;f<d.length;f++)jo(t,e,r,d[f],n+"/"+u+"/"+f,i,n,u,s,f)}else if(u in Or.propsKeywords){if(d&&typeof d=="object")for(var p in d)jo(t,e,r,d[p],n+"/"+u+"/"+jP(p),i,n,u,s,p)}else(u in Or.keywords||t.allKeys&&!(u in Or.skipKeywords))&&jo(t,e,r,d,n+"/"+u,i,n,u,s)}r(s,n,i,a,o,c,l)}}function jP(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Ni=_(Ge=>{"use strict";Object.defineProperty(Ge,"__esModule",{value:!0});Ge.getSchemaRefs=Ge.resolveUrl=Ge.normalizeId=Ge._getFullPath=Ge.getFullPath=Ge.inlineRef=void 0;var qP=X(),DP=Ti(),LP=Jy(),FP=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function UP(t,e=!0){return typeof t=="boolean"?!0:e===!0?!ad(t):e?Hy(t)<=e:!1}Ge.inlineRef=UP;var VP=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function ad(t){for(let e in t){if(VP.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(ad)||typeof r=="object"&&ad(r))return!0}return!1}function Hy(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!FP.has(r)&&(typeof t[r]=="object"&&(0,qP.eachItem)(t[r],s=>e+=Hy(s)),e===1/0))return 1/0}return e}function Gy(t,e="",r){r!==!1&&(e=an(e));let s=t.parse(e);return Yy(t,s)}Ge.getFullPath=Gy;function Yy(t,e){return t.serialize(e).split("#")[0]+"#"}Ge._getFullPath=Yy;var KP=/#\/?$/;function an(t){return t?t.replace(KP,""):""}Ge.normalizeId=an;function zP(t,e,r){return r=an(r),t.resolve(e,r)}Ge.resolveUrl=zP;var BP=/^[a-z_][-a-z0-9._]*$/i;function JP(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:s}=this.opts,n=an(t[r]||e),i={"":n},a=Gy(s,n,!1),o={},c=new Set;return LP(t,{allKeys:!0},(d,f,p,y)=>{if(y===void 0)return;let m=a+f,g=i[y];typeof d[r]=="string"&&(g=h.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),i[f]=g;function h(b){let $=this.opts.uriResolver.resolve;if(b=an(g?$(g,b):b),c.has(b))throw u(b);c.add(b);let w=this.refs[b];return typeof w=="string"&&(w=this.refs[w]),typeof w=="object"?l(d,w.schema,b):b!==an(m)&&(b[0]==="#"?(l(d,o[b],b),o[b]=d):this.refs[b]=m),b}function v(b){if(typeof b=="string"){if(!BP.test(b))throw new Error(`invalid anchor "${b}"`);h.call(this,`#${b}`)}}}),o;function l(d,f,p){if(f!==void 0&&!DP(d,f))throw u(p)}function u(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ge.getSchemaRefs=JP});var Ci=_(Cr=>{"use strict";Object.defineProperty(Cr,"__esModule",{value:!0});Cr.getData=Cr.KeywordCxt=Cr.validateFunctionCode=void 0;var e0=Oy(),Wy=Ei(),cd=Xu(),qo=Ei(),HP=jy(),Oi=Uy(),od=Ky(),A=J(),j=er(),GP=Ni(),tr=X(),Pi=ki();function YP(t){if(s0(t)&&(n0(t),r0(t))){QP(t);return}t0(t,()=>(0,e0.topBoolOrEmptySchema)(t))}Cr.validateFunctionCode=YP;function t0({gen:t,validateName:e,schema:r,schemaEnv:s,opts:n},i){n.code.es5?t.func(e,(0,A._)`${j.default.data}, ${j.default.valCxt}`,s.$async,()=>{t.code((0,A._)`"use strict"; ${Zy(r,n)}`),ZP(t,n),t.code(i)}):t.func(e,(0,A._)`${j.default.data}, ${WP(n)}`,s.$async,()=>t.code(Zy(r,n)).code(i))}function WP(t){return(0,A._)`{${j.default.instancePath}="", ${j.default.parentData}, ${j.default.parentDataProperty}, ${j.default.rootData}=${j.default.data}${t.dynamicRef?(0,A._)`, ${j.default.dynamicAnchors}={}`:A.nil}}={}`}function ZP(t,e){t.if(j.default.valCxt,()=>{t.var(j.default.instancePath,(0,A._)`${j.default.valCxt}.${j.default.instancePath}`),t.var(j.default.parentData,(0,A._)`${j.default.valCxt}.${j.default.parentData}`),t.var(j.default.parentDataProperty,(0,A._)`${j.default.valCxt}.${j.default.parentDataProperty}`),t.var(j.default.rootData,(0,A._)`${j.default.valCxt}.${j.default.rootData}`),e.dynamicRef&&t.var(j.default.dynamicAnchors,(0,A._)`${j.default.valCxt}.${j.default.dynamicAnchors}`)},()=>{t.var(j.default.instancePath,(0,A._)`""`),t.var(j.default.parentData,(0,A._)`undefined`),t.var(j.default.parentDataProperty,(0,A._)`undefined`),t.var(j.default.rootData,j.default.data),e.dynamicRef&&t.var(j.default.dynamicAnchors,(0,A._)`{}`)})}function QP(t){let{schema:e,opts:r,gen:s}=t;t0(t,()=>{r.$comment&&e.$comment&&a0(t),sO(t),s.let(j.default.vErrors,null),s.let(j.default.errors,0),r.unevaluated&&XP(t),i0(t),aO(t)})}function XP(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,A._)`${r}.evaluated`),e.if((0,A._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,A._)`${t.evaluated}.props`,(0,A._)`undefined`)),e.if((0,A._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,A._)`${t.evaluated}.items`,(0,A._)`undefined`))}function Zy(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,A._)`/*# sourceURL=${r} */`:A.nil}function eO(t,e){if(s0(t)&&(n0(t),r0(t))){tO(t,e);return}(0,e0.boolOrEmptySchema)(t,e)}function r0({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function s0(t){return typeof t.schema!="boolean"}function tO(t,e){let{schema:r,gen:s,opts:n}=t;n.$comment&&r.$comment&&a0(t),nO(t),iO(t);let i=s.const("_errs",j.default.errors);i0(t,i),s.var(e,(0,A._)`${i} === ${j.default.errors}`)}function n0(t){(0,tr.checkUnknownRules)(t),rO(t)}function i0(t,e){if(t.opts.jtd)return Qy(t,[],!1,e);let r=(0,Wy.getSchemaTypes)(t.schema),s=(0,Wy.coerceAndCheckDataType)(t,r);Qy(t,r,!s,e)}function rO(t){let{schema:e,errSchemaPath:r,opts:s,self:n}=t;e.$ref&&s.ignoreKeywordsWithRef&&(0,tr.schemaHasRulesButRef)(e,n.RULES)&&n.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function sO(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,tr.checkStrictMode)(t,"default is ignored in the schema root")}function nO(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,GP.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function iO(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function a0({gen:t,schemaEnv:e,schema:r,errSchemaPath:s,opts:n}){let i=r.$comment;if(n.$comment===!0)t.code((0,A._)`${j.default.self}.logger.log(${i})`);else if(typeof n.$comment=="function"){let a=(0,A.str)`${s}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,A._)`${j.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function aO(t){let{gen:e,schemaEnv:r,validateName:s,ValidationError:n,opts:i}=t;r.$async?e.if((0,A._)`${j.default.errors} === 0`,()=>e.return(j.default.data),()=>e.throw((0,A._)`new ${n}(${j.default.vErrors})`)):(e.assign((0,A._)`${s}.errors`,j.default.vErrors),i.unevaluated&&oO(t),e.return((0,A._)`${j.default.errors} === 0`))}function oO({gen:t,evaluated:e,props:r,items:s}){r instanceof A.Name&&t.assign((0,A._)`${e}.props`,r),s instanceof A.Name&&t.assign((0,A._)`${e}.items`,s)}function Qy(t,e,r,s){let{gen:n,schema:i,data:a,allErrors:o,opts:c,self:l}=t,{RULES:u}=l;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,tr.schemaHasRulesButRef)(i,u))){n.block(()=>c0(t,"$ref",u.all.$ref.definition));return}c.jtd||cO(t,e),n.block(()=>{for(let f of u.rules)d(f);d(u.post)});function d(f){(0,cd.shouldUseGroup)(i,f)&&(f.type?(n.if((0,qo.checkDataType)(f.type,a,c.strictNumbers)),Xy(t,f),e.length===1&&e[0]===f.type&&r&&(n.else(),(0,qo.reportTypeError)(t)),n.endIf()):Xy(t,f),o||n.if((0,A._)`${j.default.errors} === ${s||0}`))}}function Xy(t,e){let{gen:r,schema:s,opts:{useDefaults:n}}=t;n&&(0,HP.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,cd.shouldUseRule)(s,i)&&c0(t,i.keyword,i.definition,e.type)})}function cO(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(lO(t,e),t.opts.allowUnionTypes||uO(t,e),dO(t,t.dataTypes))}function lO(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{o0(t.dataTypes,r)||ld(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),pO(t,e)}}function uO(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&ld(t,"use allowUnionTypes to allow union type keyword")}function dO(t,e){let r=t.self.RULES.all;for(let s in r){let n=r[s];if(typeof n=="object"&&(0,cd.shouldUseRule)(t.schema,n)){let{type:i}=n.definition;i.length&&!i.some(a=>fO(e,a))&&ld(t,`missing type "${i.join(",")}" for keyword "${s}"`)}}}function fO(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function o0(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function pO(t,e){let r=[];for(let s of t.dataTypes)o0(e,s)?r.push(s):e.includes("integer")&&s==="number"&&r.push("integer");t.dataTypes=r}function ld(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,tr.checkStrictMode)(t,e,t.opts.strictTypes)}var Do=class{constructor(e,r,s){if((0,Oi.validateKeywordUsage)(e,r,s),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=s,this.data=e.data,this.schema=e.schema[s],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,tr.schemaRefOrVal)(e,this.schema,s,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",l0(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Oi.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${s} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",j.default.errors))}result(e,r,s){this.failResult((0,A.not)(e),r,s)}failResult(e,r,s){this.gen.if(e),s?s():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,A.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,A._)`${r} !== undefined && (${(0,A.or)(this.invalid$data(),e)})`)}error(e,r,s){if(r){this.setParams(r),this._error(e,s),this.setParams({});return}this._error(e,s)}_error(e,r){(e?Pi.reportExtraError:Pi.reportError)(this,this.def.error,r)}$dataError(){(0,Pi.reportError)(this,this.def.$dataError||Pi.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Pi.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,s=A.nil){this.gen.block(()=>{this.check$data(e,s),r()})}check$data(e=A.nil,r=A.nil){if(!this.$data)return;let{gen:s,schemaCode:n,schemaType:i,def:a}=this;s.if((0,A.or)((0,A._)`${n} === undefined`,r)),e!==A.nil&&s.assign(e,!0),(i.length||a.validateSchema)&&(s.elseIf(this.invalid$data()),this.$dataError(),e!==A.nil&&s.assign(e,!1)),s.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:s,def:n,it:i}=this;return(0,A.or)(a(),o());function a(){if(s.length){if(!(r instanceof A.Name))throw new Error("ajv implementation error");let c=Array.isArray(s)?s:[s];return(0,A._)`${(0,qo.checkDataTypes)(c,r,i.opts.strictNumbers,qo.DataType.Wrong)}`}return A.nil}function o(){if(n.validateSchema){let c=e.scopeValue("validate$data",{ref:n.validateSchema});return(0,A._)`!${c}(${r})`}return A.nil}}subschema(e,r){let s=(0,od.getSubschema)(this.it,e);(0,od.extendSubschemaData)(s,this.it,e),(0,od.extendSubschemaMode)(s,e);let n={...this.it,...s,items:void 0,props:void 0};return eO(n,r),n}mergeEvaluated(e,r){let{it:s,gen:n}=this;s.opts.unevaluated&&(s.props!==!0&&e.props!==void 0&&(s.props=tr.mergeEvaluated.props(n,e.props,s.props,r)),s.items!==!0&&e.items!==void 0&&(s.items=tr.mergeEvaluated.items(n,e.items,s.items,r)))}mergeValidEvaluated(e,r){let{it:s,gen:n}=this;if(s.opts.unevaluated&&(s.props!==!0||s.items!==!0))return n.if(r,()=>this.mergeEvaluated(e,A.Name)),!0}};Cr.KeywordCxt=Do;function c0(t,e,r,s){let n=new Do(t,r,e);"code"in r?r.code(n,s):n.$data&&r.validate?(0,Oi.funcKeywordCode)(n,r):"macro"in r?(0,Oi.macroKeywordCode)(n,r):(r.compile||r.validate)&&(0,Oi.funcKeywordCode)(n,r)}var mO=/^\/(?:[^~]|~0|~1)*$/,hO=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function l0(t,{dataLevel:e,dataNames:r,dataPathArr:s}){let n,i;if(t==="")return j.default.rootData;if(t[0]==="/"){if(!mO.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);n=t,i=j.default.rootData}else{let l=hO.exec(t);if(!l)throw new Error(`Invalid JSON-pointer: ${t}`);let u=+l[1];if(n=l[2],n==="#"){if(u>=e)throw new Error(c("property/index",u));return s[e-u]}if(u>e)throw new Error(c("data",u));if(i=r[e-u],!n)return i}let a=i,o=n.split("/");for(let l of o)l&&(i=(0,A._)`${i}${(0,A.getProperty)((0,tr.unescapeJsonPointer)(l))}`,a=(0,A._)`${a} && ${i}`);return a;function c(l,u){return`Cannot access ${l} ${u} levels up, current level is ${e}`}}Cr.getData=l0});var Lo=_(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var ud=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};dd.default=ud});var Ai=_(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var fd=Ni(),pd=class extends Error{constructor(e,r,s,n){super(n||`can't resolve reference ${s} from id ${r}`),this.missingRef=(0,fd.resolveUrl)(e,r,s),this.missingSchema=(0,fd.normalizeId)((0,fd.getFullPath)(e,this.missingRef))}};md.default=pd});var Uo=_(lt=>{"use strict";Object.defineProperty(lt,"__esModule",{value:!0});lt.resolveSchema=lt.getCompilingSchema=lt.resolveRef=lt.compileSchema=lt.SchemaEnv=void 0;var wt=J(),gO=Lo(),vs=er(),$t=Ni(),u0=X(),yO=Ci(),on=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let s;typeof e.schema=="object"&&(s=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,$t.normalizeId)(s?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=s?.$async,this.refs={}}};lt.SchemaEnv=on;function gd(t){let e=d0.call(this,t);if(e)return e;let r=(0,$t.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:s,lines:n}=this.opts.code,{ownProperties:i}=this.opts,a=new wt.CodeGen(this.scope,{es5:s,lines:n,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:gO.default,code:(0,wt._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let l={gen:a,allErrors:this.opts.allErrors,data:vs.default.data,parentData:vs.default.parentData,parentDataProperty:vs.default.parentDataProperty,dataNames:[vs.default.data],dataPathArr:[wt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,wt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:wt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,wt._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(t),(0,yO.validateFunctionCode)(l),a.optimize(this.opts.code.optimize);let d=a.toString();u=`${a.scopeRefs(vs.default.scope)}return ${d}`,this.opts.code.process&&(u=this.opts.code.process(u,t));let p=new Function(`${vs.default.self}`,`${vs.default.scope}`,u)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:y,items:m}=l;p.evaluated={props:y instanceof wt.Name?void 0:y,items:m instanceof wt.Name?void 0:m,dynamicProps:y instanceof wt.Name,dynamicItems:m instanceof wt.Name},p.source&&(p.source.evaluated=(0,wt.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,u&&this.logger.error("Error compiling schema, function code:",u),d}finally{this._compilations.delete(t)}}lt.compileSchema=gd;function vO(t,e,r){var s;r=(0,$t.resolveUrl)(this.opts.uriResolver,e,r);let n=t.refs[r];if(n)return n;let i=wO.call(this,t,r);if(i===void 0){let a=(s=t.localRefs)===null||s===void 0?void 0:s[r],{schemaId:o}=this.opts;a&&(i=new on({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=_O.call(this,i)}lt.resolveRef=vO;function _O(t){return(0,$t.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:gd.call(this,t)}function d0(t){for(let e of this._compilations)if(bO(e,t))return e}lt.getCompilingSchema=d0;function bO(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function wO(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Fo.call(this,t,e)}function Fo(t,e){let r=this.opts.uriResolver.parse(e),s=(0,$t._getFullPath)(this.opts.uriResolver,r),n=(0,$t.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&s===n)return hd.call(this,r,t);let i=(0,$t.normalizeId)(s),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=Fo.call(this,t,a);return typeof o?.schema!="object"?void 0:hd.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||gd.call(this,a),i===(0,$t.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,l=o[c];return l&&(n=(0,$t.resolveUrl)(this.opts.uriResolver,n,l)),new on({schema:o,schemaId:c,root:t,baseId:n})}return hd.call(this,r,a)}}lt.resolveSchema=Fo;var $O=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function hd(t,{baseId:e,schema:r,root:s}){var n;if(((n=t.fragment)===null||n===void 0?void 0:n[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,u0.unescapeFragment)(o)];if(c===void 0)return;r=c;let l=typeof r=="object"&&r[this.opts.schemaId];!$O.has(o)&&l&&(e=(0,$t.resolveUrl)(this.opts.uriResolver,e,l))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,u0.schemaHasRulesButRef)(r,this.RULES)){let o=(0,$t.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=Fo.call(this,s,o)}let{schemaId:a}=this.opts;if(i=i||new on({schema:r,schemaId:a,root:s,baseId:e}),i.schema!==i.root.schema)return i}});var f0=_((nV,SO)=>{SO.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var vd=_((iV,g0)=>{"use strict";var kO=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),m0=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function yd(t){let e="",r=0,s=0;for(s=0;s<t.length;s++)if(r=t[s].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[s];break}for(s+=1;s<t.length;s++){if(r=t[s].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[s]}return e}var EO=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function p0(t){return t.length=0,!0}function TO(t,e,r){if(t.length){let s=yd(t);if(s!=="")e.push(s);else return r.error=!0,!1;t.length=0}return!0}function NO(t){let e=0,r={error:!1,address:"",zone:""},s=[],n=[],i=!1,a=!1,o=TO;for(let c=0;c<t.length;c++){let l=t[c];if(!(l==="["||l==="]"))if(l===":"){if(i===!0&&(a=!0),!o(n,s,r))break;if(++e>7){r.error=!0;break}c>0&&t[c-1]===":"&&(i=!0),s.push(":");continue}else if(l==="%"){if(!o(n,s,r))break;o=p0}else{n.push(l);continue}}return n.length&&(o===p0?r.zone=n.join(""):a?s.push(n.join("")):s.push(yd(n))),r.address=s.join(""),r}function h0(t){if(PO(t,":")<2)return{host:t,isIPV6:!1};let e=NO(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,s=e.address;return e.zone&&(r+="%"+e.zone,s+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:s}}}function PO(t,e){let r=0;for(let s=0;s<t.length;s++)t[s]===e&&r++;return r}function OO(t){let e=t,r=[],s=-1,n=0;for(;n=e.length;){if(n===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(n===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(n===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((s=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,s)),e=e.slice(s)}return r.join("")}function CO(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function AO(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!m0(r)){let s=h0(r);s.isIPV6===!0?r=`[${s.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}g0.exports={nonSimpleDomain:EO,recomposeAuthority:AO,normalizeComponentEncoding:CO,removeDotSegments:OO,isIPv4:m0,isUUID:kO,normalizeIPv6:h0,stringArrayToHexStripped:yd}});var w0=_((aV,b0)=>{"use strict";var{isUUID:RO}=vd(),IO=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,MO=["http","https","ws","wss","urn","urn:uuid"];function xO(t){return MO.indexOf(t)!==-1}function _d(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function y0(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function v0(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function jO(t){return t.secure=_d(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function qO(t){if((t.port===(_d(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function DO(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(IO);if(r){let s=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let n=`${s}:${e.nid||t.nid}`,i=bd(n);t.path=void 0,i&&(t=i.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function LO(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",s=t.nid.toLowerCase(),n=`${r}:${e.nid||s}`,i=bd(n);i&&(t=i.serialize(t,e));let a=t,o=t.nss;return a.path=`${s||e.nid}:${o}`,e.skipEscape=!0,a}function FO(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!RO(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function UO(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var _0={scheme:"http",domainHost:!0,parse:y0,serialize:v0},VO={scheme:"https",domainHost:_0.domainHost,parse:y0,serialize:v0},Vo={scheme:"ws",domainHost:!0,parse:jO,serialize:qO},KO={scheme:"wss",domainHost:Vo.domainHost,parse:Vo.parse,serialize:Vo.serialize},zO={scheme:"urn",parse:DO,serialize:LO,skipNormalize:!0},BO={scheme:"urn:uuid",parse:FO,serialize:UO,skipNormalize:!0},Ko={http:_0,https:VO,ws:Vo,wss:KO,urn:zO,"urn:uuid":BO};Object.setPrototypeOf(Ko,null);function bd(t){return t&&(Ko[t]||Ko[t.toLowerCase()])||void 0}b0.exports={wsIsSecure:_d,SCHEMES:Ko,isValidSchemeName:xO,getSchemeHandler:bd}});var $d=_((oV,Bo)=>{"use strict";var{normalizeIPv6:JO,removeDotSegments:Ri,recomposeAuthority:HO,normalizeComponentEncoding:zo,isIPv4:GO,nonSimpleDomain:YO}=vd(),{SCHEMES:WO,getSchemeHandler:$0}=w0();function ZO(t,e){return typeof t=="string"?t=qt(rr(t,e),e):typeof t=="object"&&(t=rr(qt(t,e),e)),t}function QO(t,e,r){let s=r?Object.assign({scheme:"null"},r):{scheme:"null"},n=S0(rr(t,s),rr(e,s),s,!0);return s.skipEscape=!0,qt(n,s)}function S0(t,e,r,s){let n={};return s||(t=rr(qt(t,r),r),e=rr(qt(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(n.scheme=e.scheme,n.userinfo=e.userinfo,n.host=e.host,n.port=e.port,n.path=Ri(e.path||""),n.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(n.userinfo=e.userinfo,n.host=e.host,n.port=e.port,n.path=Ri(e.path||""),n.query=e.query):(e.path?(e.path[0]==="/"?n.path=Ri(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?n.path="/"+e.path:t.path?n.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:n.path=e.path,n.path=Ri(n.path)),n.query=e.query):(n.path=t.path,e.query!==void 0?n.query=e.query:n.query=t.query),n.userinfo=t.userinfo,n.host=t.host,n.port=t.port),n.scheme=t.scheme),n.fragment=e.fragment,n}function XO(t,e,r){return typeof t=="string"?(t=unescape(t),t=qt(zo(rr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=qt(zo(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=qt(zo(rr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=qt(zo(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function qt(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},s=Object.assign({},e),n=[],i=$0(s.scheme||r.scheme);i&&i.serialize&&i.serialize(r,s),r.path!==void 0&&(s.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),s.reference!=="suffix"&&r.scheme&&n.push(r.scheme,":");let a=HO(r);if(a!==void 0&&(s.reference!=="suffix"&&n.push("//"),n.push(a),r.path&&r.path[0]!=="/"&&n.push("/")),r.path!==void 0){let o=r.path;!s.absolutePath&&(!i||!i.absolutePath)&&(o=Ri(o)),a===void 0&&o[0]==="/"&&o[1]==="/"&&(o="/%2F"+o.slice(2)),n.push(o)}return r.query!==void 0&&n.push("?",r.query),r.fragment!==void 0&&n.push("#",r.fragment),n.join("")}var eC=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function rr(t,e){let r=Object.assign({},e),s={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},n=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(eC);if(i){if(s.scheme=i[1],s.userinfo=i[3],s.host=i[4],s.port=parseInt(i[5],10),s.path=i[6]||"",s.query=i[7],s.fragment=i[8],isNaN(s.port)&&(s.port=i[5]),s.host)if(GO(s.host)===!1){let c=JO(s.host);s.host=c.host.toLowerCase(),n=c.isIPV6}else n=!0;s.scheme===void 0&&s.userinfo===void 0&&s.host===void 0&&s.port===void 0&&s.query===void 0&&!s.path?s.reference="same-document":s.scheme===void 0?s.reference="relative":s.fragment===void 0?s.reference="absolute":s.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==s.reference&&(s.error=s.error||"URI is not a "+r.reference+" reference.");let a=$0(r.scheme||s.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&s.host&&(r.domainHost||a&&a.domainHost)&&n===!1&&YO(s.host))try{s.host=URL.domainToASCII(s.host.toLowerCase())}catch(o){s.error=s.error||"Host's domain name can not be converted to ASCII: "+o}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(s.scheme!==void 0&&(s.scheme=unescape(s.scheme)),s.host!==void 0&&(s.host=unescape(s.host))),s.path&&(s.path=escape(unescape(s.path))),s.fragment&&(s.fragment=encodeURI(decodeURIComponent(s.fragment)))),a&&a.parse&&a.parse(s,r)}else s.error=s.error||"URI can not be parsed.";return s}var wd={SCHEMES:WO,normalize:ZO,resolve:QO,resolveComponent:S0,equal:XO,serialize:qt,parse:rr};Bo.exports=wd;Bo.exports.default=wd;Bo.exports.fastUri=wd});var E0=_(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var k0=$d();k0.code='require("ajv/dist/runtime/uri").default';Sd.default=k0});var I0=_(Ne=>{"use strict";Object.defineProperty(Ne,"__esModule",{value:!0});Ne.CodeGen=Ne.Name=Ne.nil=Ne.stringify=Ne.str=Ne._=Ne.KeywordCxt=void 0;var tC=Ci();Object.defineProperty(Ne,"KeywordCxt",{enumerable:!0,get:function(){return tC.KeywordCxt}});var cn=J();Object.defineProperty(Ne,"_",{enumerable:!0,get:function(){return cn._}});Object.defineProperty(Ne,"str",{enumerable:!0,get:function(){return cn.str}});Object.defineProperty(Ne,"stringify",{enumerable:!0,get:function(){return cn.stringify}});Object.defineProperty(Ne,"nil",{enumerable:!0,get:function(){return cn.nil}});Object.defineProperty(Ne,"Name",{enumerable:!0,get:function(){return cn.Name}});Object.defineProperty(Ne,"CodeGen",{enumerable:!0,get:function(){return cn.CodeGen}});var rC=Lo(),C0=Ai(),sC=Qu(),Ii=Uo(),nC=J(),Mi=Ni(),Jo=Ei(),Ed=X(),T0=f0(),iC=E0(),A0=(t,e)=>new RegExp(t,e);A0.code="new RegExp";var aC=["removeAdditional","useDefaults","coerceTypes"],oC=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),cC={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},lC={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},N0=200;function uC(t){var e,r,s,n,i,a,o,c,l,u,d,f,p,y,m,g,h,v,b,$,w,k,N,T,se;let ve=t.strict,ke=(e=t.code)===null||e===void 0?void 0:e.optimize,D=ke===!0||ke===void 0?1:ke||0,ue=(s=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&s!==void 0?s:A0,tt=(n=t.uriResolver)!==null&&n!==void 0?n:iC.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:ve)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:ve)!==null&&c!==void 0?c:!0,strictTypes:(u=(l=t.strictTypes)!==null&&l!==void 0?l:ve)!==null&&u!==void 0?u:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:ve)!==null&&f!==void 0?f:"log",strictRequired:(y=(p=t.strictRequired)!==null&&p!==void 0?p:ve)!==null&&y!==void 0?y:!1,code:t.code?{...t.code,optimize:D,regExp:ue}:{optimize:D,regExp:ue},loopRequired:(m=t.loopRequired)!==null&&m!==void 0?m:N0,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:N0,meta:(h=t.meta)!==null&&h!==void 0?h:!0,messages:(v=t.messages)!==null&&v!==void 0?v:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:($=t.schemaId)!==null&&$!==void 0?$:"$id",addUsedSchema:(w=t.addUsedSchema)!==null&&w!==void 0?w:!0,validateSchema:(k=t.validateSchema)!==null&&k!==void 0?k:!0,validateFormats:(N=t.validateFormats)!==null&&N!==void 0?N:!0,unicodeRegExp:(T=t.unicodeRegExp)!==null&&T!==void 0?T:!0,int32range:(se=t.int32range)!==null&&se!==void 0?se:!0,uriResolver:tt}}var xi=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...uC(e)};let{es5:r,lines:s}=this.opts.code;this.scope=new nC.ValueScope({scope:{},prefixes:oC,es5:r,lines:s}),this.logger=gC(e.logger);let n=e.validateFormats;e.validateFormats=!1,this.RULES=(0,sC.getRules)(),P0.call(this,cC,e,"NOT SUPPORTED"),P0.call(this,lC,e,"DEPRECATED","warn"),this._metaOpts=mC.call(this),e.formats&&fC.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&pC.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),dC.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:s}=this.opts,n=T0;s==="id"&&(n={...T0},n.id=n.$id,delete n.$id),r&&e&&this.addMetaSchema(n,n[s],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let s;if(typeof e=="string"){if(s=this.getSchema(e),!s)throw new Error(`no schema with key or ref "${e}"`)}else s=this.compile(e);let n=s(r);return"$async"in s||(this.errors=s.errors),n}compile(e,r){let s=this._addSchema(e,r);return s.validate||this._compileSchemaEnv(s)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:s}=this.opts;return n.call(this,e,r);async function n(u,d){await i.call(this,u.$schema);let f=this._addSchema(u,d);return f.validate||a.call(this,f)}async function i(u){u&&!this.getSchema(u)&&await n.call(this,{$ref:u},!0)}async function a(u){try{return this._compileSchemaEnv(u)}catch(d){if(!(d instanceof C0.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,u)}}function o({missingSchema:u,missingRef:d}){if(this.refs[u])throw new Error(`AnySchema ${u} is loaded but ${d} cannot be resolved`)}async function c(u){let d=await l.call(this,u);this.refs[u]||await i.call(this,d.$schema),this.refs[u]||this.addSchema(d,u,r)}async function l(u){let d=this._loading[u];if(d)return d;try{return await(this._loading[u]=s(u))}finally{delete this._loading[u]}}}addSchema(e,r,s,n=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,s,n);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,Mi.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,s,r,n,!0),this}addMetaSchema(e,r,s=this.opts.validateSchema){return this.addSchema(e,r,!0,s),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let s;if(s=e.$schema,s!==void 0&&typeof s!="string")throw new Error("$schema must be a string");if(s=s||this.opts.defaultMeta||this.defaultMeta(),!s)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let n=this.validate(s,e);if(!n&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return n}getSchema(e){let r;for(;typeof(r=O0.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:s}=this.opts,n=new Ii.SchemaEnv({schema:{},schemaId:s});if(r=Ii.resolveSchema.call(this,n,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=O0.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let s=e[this.opts.schemaId];return s&&(s=(0,Mi.normalizeId)(s),delete this.schemas[s],delete this.refs[s]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let s;if(typeof e=="string")s=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=s);else if(typeof e=="object"&&r===void 0){if(r=e,s=r.keyword,Array.isArray(s)&&!s.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(vC.call(this,s,r),!r)return(0,Ed.eachItem)(s,i=>kd.call(this,i)),this;bC.call(this,r);let n={...r,type:(0,Jo.getJSONTypes)(r.type),schemaType:(0,Jo.getJSONTypes)(r.schemaType)};return(0,Ed.eachItem)(s,n.type.length===0?i=>kd.call(this,i,n):i=>n.type.forEach(a=>kd.call(this,i,n,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let s of r.rules){let n=s.rules.findIndex(i=>i.keyword===e);n>=0&&s.rules.splice(n,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:s="data"}={}){return!e||e.length===0?"No errors":e.map(n=>`${s}${n.instancePath} ${n.message}`).reduce((n,i)=>n+r+i)}$dataMetaSchema(e,r){let s=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let n of r){let i=n.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in s){let c=s[o];if(typeof c!="object")continue;let{$data:l}=c.definition,u=a[o];l&&u&&(a[o]=R0(u))}}return e}_removeAllSchemas(e,r){for(let s in e){let n=e[s];(!r||r.test(s))&&(typeof n=="string"?delete e[s]:n&&!n.meta&&(this._cache.delete(n.schema),delete e[s]))}}_addSchema(e,r,s,n=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;s=(0,Mi.normalizeId)(a||s);let l=Mi.getSchemaRefs.call(this,e,s);return c=new Ii.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:s,localRefs:l}),this._cache.set(c.schema,c),i&&!s.startsWith("#")&&(s&&this._checkUnique(s),this.refs[s]=c),n&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Ii.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Ii.compileSchema.call(this,e)}finally{this.opts=r}}};xi.ValidationError=rC.default;xi.MissingRefError=C0.default;Ne.default=xi;function P0(t,e,r,s="error"){for(let n in t){let i=n;i in e&&this.logger[s](`${r}: option ${n}. ${t[i]}`)}}function O0(t){return t=(0,Mi.normalizeId)(t),this.schemas[t]||this.refs[t]}function dC(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function fC(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function pC(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function mC(){let t={...this.opts};for(let e of aC)delete t[e];return t}var hC={log(){},warn(){},error(){}};function gC(t){if(t===!1)return hC;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var yC=/^[a-z_$][a-z0-9_$:-]*$/i;function vC(t,e){let{RULES:r}=this;if((0,Ed.eachItem)(t,s=>{if(r.keywords[s])throw new Error(`Keyword ${s} is already defined`);if(!yC.test(s))throw new Error(`Keyword ${s} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function kd(t,e,r){var s;let n=e?.post;if(r&&n)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=n?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,Jo.getJSONTypes)(e.type),schemaType:(0,Jo.getJSONTypes)(e.schemaType)}};e.before?_C.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(s=e.implements)===null||s===void 0||s.forEach(c=>this.addKeyword(c))}function _C(t,e,r){let s=t.rules.findIndex(n=>n.keyword===r);s>=0?t.rules.splice(s,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function bC(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=R0(e)),t.validateSchema=this.compile(e,!0))}var wC={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function R0(t){return{anyOf:[t,wC]}}});var M0=_(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var $C={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Td.default=$C});var D0=_(_s=>{"use strict";Object.defineProperty(_s,"__esModule",{value:!0});_s.callRef=_s.getValidate=void 0;var SC=Ai(),x0=ct(),Ye=J(),ln=er(),j0=Uo(),Ho=X(),kC={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:s}=t,{baseId:n,schemaEnv:i,validateName:a,opts:o,self:c}=s,{root:l}=i;if((r==="#"||r==="#/")&&n===l.baseId)return d();let u=j0.resolveRef.call(c,l,n,r);if(u===void 0)throw new SC.default(s.opts.uriResolver,n,r);if(u instanceof j0.SchemaEnv)return f(u);return p(u);function d(){if(i===l)return Go(t,a,i,i.$async);let y=e.scopeValue("root",{ref:l});return Go(t,(0,Ye._)`${y}.validate`,l,l.$async)}function f(y){let m=q0(t,y);Go(t,m,y,y.$async)}function p(y){let m=e.scopeValue("schema",o.code.source===!0?{ref:y,code:(0,Ye.stringify)(y)}:{ref:y}),g=e.name("valid"),h=t.subschema({schema:y,dataTypes:[],schemaPath:Ye.nil,topSchemaRef:m,errSchemaPath:r},g);t.mergeEvaluated(h),t.ok(g)}}};function q0(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ye._)`${r.scopeValue("wrapper",{ref:e})}.validate`}_s.getValidate=q0;function Go(t,e,r,s){let{gen:n,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,l=c.passContext?ln.default.this:Ye.nil;s?u():d();function u(){if(!o.$async)throw new Error("async schema referenced by sync schema");let y=n.let("valid");n.try(()=>{n.code((0,Ye._)`await ${(0,x0.callValidateCode)(t,e,l)}`),p(e),a||n.assign(y,!0)},m=>{n.if((0,Ye._)`!(${m} instanceof ${i.ValidationError})`,()=>n.throw(m)),f(m),a||n.assign(y,!1)}),t.ok(y)}function d(){t.result((0,x0.callValidateCode)(t,e,l),()=>p(e),()=>f(e))}function f(y){let m=(0,Ye._)`${y}.errors`;n.assign(ln.default.vErrors,(0,Ye._)`${ln.default.vErrors} === null ? ${m} : ${ln.default.vErrors}.concat(${m})`),n.assign(ln.default.errors,(0,Ye._)`${ln.default.vErrors}.length`)}function p(y){var m;if(!i.opts.unevaluated)return;let g=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(i.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(i.props=Ho.mergeEvaluated.props(n,g.props,i.props));else{let h=n.var("props",(0,Ye._)`${y}.evaluated.props`);i.props=Ho.mergeEvaluated.props(n,h,i.props,Ye.Name)}if(i.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(i.items=Ho.mergeEvaluated.items(n,g.items,i.items));else{let h=n.var("items",(0,Ye._)`${y}.evaluated.items`);i.items=Ho.mergeEvaluated.items(n,h,i.items,Ye.Name)}}}_s.callRef=Go;_s.default=kC});var L0=_(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var EC=M0(),TC=D0(),NC=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",EC.default,TC.default];Nd.default=NC});var F0=_(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var Yo=J(),Ar=Yo.operators,Wo={maximum:{okStr:"<=",ok:Ar.LTE,fail:Ar.GT},minimum:{okStr:">=",ok:Ar.GTE,fail:Ar.LT},exclusiveMaximum:{okStr:"<",ok:Ar.LT,fail:Ar.GTE},exclusiveMinimum:{okStr:">",ok:Ar.GT,fail:Ar.LTE}},PC={message:({keyword:t,schemaCode:e})=>(0,Yo.str)`must be ${Wo[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Yo._)`{comparison: ${Wo[t].okStr}, limit: ${e}}`},OC={keyword:Object.keys(Wo),type:"number",schemaType:"number",$data:!0,error:PC,code(t){let{keyword:e,data:r,schemaCode:s}=t;t.fail$data((0,Yo._)`${r} ${Wo[e].fail} ${s} || isNaN(${r})`)}};Pd.default=OC});var U0=_(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var ji=J(),CC={message:({schemaCode:t})=>(0,ji.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,ji._)`{multipleOf: ${t}}`},AC={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:CC,code(t){let{gen:e,data:r,schemaCode:s,it:n}=t,i=n.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,ji._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,ji._)`${a} !== parseInt(${a})`;t.fail$data((0,ji._)`(${s} === 0 || (${a} = ${r}/${s}, ${o}))`)}};Od.default=AC});var K0=_(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});function V0(t){let e=t.length,r=0,s=0,n;for(;s<e;)r++,n=t.charCodeAt(s++),n>=55296&&n<=56319&&s<e&&(n=t.charCodeAt(s),(n&64512)===56320&&s++);return r}Cd.default=V0;V0.code='require("ajv/dist/runtime/ucs2length").default'});var z0=_(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var bs=J(),RC=X(),IC=K0(),MC={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,bs.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,bs._)`{limit: ${t}}`},xC={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:MC,code(t){let{keyword:e,data:r,schemaCode:s,it:n}=t,i=e==="maxLength"?bs.operators.GT:bs.operators.LT,a=n.opts.unicode===!1?(0,bs._)`${r}.length`:(0,bs._)`${(0,RC.useFunc)(t.gen,IC.default)}(${r})`;t.fail$data((0,bs._)`${a} ${i} ${s}`)}};Ad.default=xC});var B0=_(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var jC=ct(),qC=X(),un=J(),DC={message:({schemaCode:t})=>(0,un.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,un._)`{pattern: ${t}}`},LC={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:DC,code(t){let{gen:e,data:r,$data:s,schema:n,schemaCode:i,it:a}=t,o=a.opts.unicodeRegExp?"u":"";if(s){let{regExp:c}=a.opts.code,l=c.code==="new RegExp"?(0,un._)`new RegExp`:(0,qC.useFunc)(e,c),u=e.let("valid");e.try(()=>e.assign(u,(0,un._)`${l}(${i}, ${o}).test(${r})`),()=>e.assign(u,!1)),t.fail$data((0,un._)`!${u}`)}else{let c=(0,jC.usePattern)(t,n);t.fail$data((0,un._)`!${c}.test(${r})`)}}};Rd.default=LC});var J0=_(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var qi=J(),FC={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,qi.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,qi._)`{limit: ${t}}`},UC={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:FC,code(t){let{keyword:e,data:r,schemaCode:s}=t,n=e==="maxProperties"?qi.operators.GT:qi.operators.LT;t.fail$data((0,qi._)`Object.keys(${r}).length ${n} ${s}`)}};Id.default=UC});var H0=_(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var Di=ct(),Li=J(),VC=X(),KC={message:({params:{missingProperty:t}})=>(0,Li.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Li._)`{missingProperty: ${t}}`},zC={keyword:"required",type:"object",schemaType:"array",$data:!0,error:KC,code(t){let{gen:e,schema:r,schemaCode:s,data:n,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?l():u(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:y}=t.it;for(let m of r)if(p?.[m]===void 0&&!y.has(m)){let g=a.schemaEnv.baseId+a.errSchemaPath,h=`required property "${m}" is not defined at "${g}" (strictRequired)`;(0,VC.checkStrictMode)(a,h,a.opts.strictRequired)}}function l(){if(c||i)t.block$data(Li.nil,d);else for(let p of r)(0,Di.checkReportMissingProp)(t,p)}function u(){let p=e.let("missing");if(c||i){let y=e.let("valid",!0);t.block$data(y,()=>f(p,y)),t.ok(y)}else e.if((0,Di.checkMissingProp)(t,r,p)),(0,Di.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",s,p=>{t.setParams({missingProperty:p}),e.if((0,Di.noPropertyInData)(e,n,p,o.ownProperties),()=>t.error())})}function f(p,y){t.setParams({missingProperty:p}),e.forOf(p,s,()=>{e.assign(y,(0,Di.propertyInData)(e,n,p,o.ownProperties)),e.if((0,Li.not)(y),()=>{t.error(),e.break()})},Li.nil)}}};Md.default=zC});var G0=_(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var Fi=J(),BC={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Fi.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Fi._)`{limit: ${t}}`},JC={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:BC,code(t){let{keyword:e,data:r,schemaCode:s}=t,n=e==="maxItems"?Fi.operators.GT:Fi.operators.LT;t.fail$data((0,Fi._)`${r}.length ${n} ${s}`)}};xd.default=JC});var Zo=_(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});var Y0=Ti();Y0.code='require("ajv/dist/runtime/equal").default';jd.default=Y0});var W0=_(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var qd=Ei(),Pe=J(),HC=X(),GC=Zo(),YC={message:({params:{i:t,j:e}})=>(0,Pe.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Pe._)`{i: ${t}, j: ${e}}`},WC={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:YC,code(t){let{gen:e,data:r,$data:s,schema:n,parentSchema:i,schemaCode:a,it:o}=t;if(!s&&!n)return;let c=e.let("valid"),l=i.items?(0,qd.getSchemaTypes)(i.items):[];t.block$data(c,u,(0,Pe._)`${a} === false`),t.ok(c);function u(){let y=e.let("i",(0,Pe._)`${r}.length`),m=e.let("j");t.setParams({i:y,j:m}),e.assign(c,!0),e.if((0,Pe._)`${y} > 1`,()=>(d()?f:p)(y,m))}function d(){return l.length>0&&!l.some(y=>y==="object"||y==="array")}function f(y,m){let g=e.name("item"),h=(0,qd.checkDataTypes)(l,g,o.opts.strictNumbers,qd.DataType.Wrong),v=e.const("indices",(0,Pe._)`{}`);e.for((0,Pe._)`;${y}--;`,()=>{e.let(g,(0,Pe._)`${r}[${y}]`),e.if(h,(0,Pe._)`continue`),l.length>1&&e.if((0,Pe._)`typeof ${g} == "string"`,(0,Pe._)`${g} += "_"`),e.if((0,Pe._)`typeof ${v}[${g}] == "number"`,()=>{e.assign(m,(0,Pe._)`${v}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Pe._)`${v}[${g}] = ${y}`)})}function p(y,m){let g=(0,HC.useFunc)(e,GC.default),h=e.name("outer");e.label(h).for((0,Pe._)`;${y}--;`,()=>e.for((0,Pe._)`${m} = ${y}; ${m}--;`,()=>e.if((0,Pe._)`${g}(${r}[${y}], ${r}[${m}])`,()=>{t.error(),e.assign(c,!1).break(h)})))}}};Dd.default=WC});var Z0=_(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});var Ld=J(),ZC=X(),QC=Zo(),XC={message:"must be equal to constant",params:({schemaCode:t})=>(0,Ld._)`{allowedValue: ${t}}`},eA={keyword:"const",$data:!0,error:XC,code(t){let{gen:e,data:r,$data:s,schemaCode:n,schema:i}=t;s||i&&typeof i=="object"?t.fail$data((0,Ld._)`!${(0,ZC.useFunc)(e,QC.default)}(${r}, ${n})`):t.fail((0,Ld._)`${i} !== ${r}`)}};Fd.default=eA});var Q0=_(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var Ui=J(),tA=X(),rA=Zo(),sA={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Ui._)`{allowedValues: ${t}}`},nA={keyword:"enum",schemaType:"array",$data:!0,error:sA,code(t){let{gen:e,data:r,$data:s,schema:n,schemaCode:i,it:a}=t;if(!s&&n.length===0)throw new Error("enum must have non-empty array");let o=n.length>=a.opts.loopEnum,c,l=()=>c??(c=(0,tA.useFunc)(e,rA.default)),u;if(o||s)u=e.let("valid"),t.block$data(u,d);else{if(!Array.isArray(n))throw new Error("ajv implementation error");let p=e.const("vSchema",i);u=(0,Ui.or)(...n.map((y,m)=>f(p,m)))}t.pass(u);function d(){e.assign(u,!1),e.forOf("v",i,p=>e.if((0,Ui._)`${l()}(${r}, ${p})`,()=>e.assign(u,!0).break()))}function f(p,y){let m=n[y];return typeof m=="object"&&m!==null?(0,Ui._)`${l()}(${r}, ${p}[${y}])`:(0,Ui._)`${r} === ${m}`}}};Ud.default=nA});var X0=_(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var iA=F0(),aA=U0(),oA=z0(),cA=B0(),lA=J0(),uA=H0(),dA=G0(),fA=W0(),pA=Z0(),mA=Q0(),hA=[iA.default,aA.default,oA.default,cA.default,lA.default,uA.default,dA.default,fA.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},pA.default,mA.default];Vd.default=hA});var zd=_(Vi=>{"use strict";Object.defineProperty(Vi,"__esModule",{value:!0});Vi.validateAdditionalItems=void 0;var ws=J(),Kd=X(),gA={message:({params:{len:t}})=>(0,ws.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ws._)`{limit: ${t}}`},yA={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:gA,code(t){let{parentSchema:e,it:r}=t,{items:s}=e;if(!Array.isArray(s)){(0,Kd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}ev(t,s)}};function ev(t,e){let{gen:r,schema:s,data:n,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,ws._)`${n}.length`);if(s===!1)t.setParams({len:e.length}),t.pass((0,ws._)`${o} <= ${e.length}`);else if(typeof s=="object"&&!(0,Kd.alwaysValidSchema)(a,s)){let l=r.var("valid",(0,ws._)`${o} <= ${e.length}`);r.if((0,ws.not)(l),()=>c(l)),t.ok(l)}function c(l){r.forRange("i",e.length,o,u=>{t.subschema({keyword:i,dataProp:u,dataPropType:Kd.Type.Num},l),a.allErrors||r.if((0,ws.not)(l),()=>r.break())})}}Vi.validateAdditionalItems=ev;Vi.default=yA});var Bd=_(Ki=>{"use strict";Object.defineProperty(Ki,"__esModule",{value:!0});Ki.validateTuple=void 0;var tv=J(),Qo=X(),vA=ct(),_A={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return rv(t,"additionalItems",e);r.items=!0,!(0,Qo.alwaysValidSchema)(r,e)&&t.ok((0,vA.validateArray)(t))}};function rv(t,e,r=t.schema){let{gen:s,parentSchema:n,data:i,keyword:a,it:o}=t;u(n),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=Qo.mergeEvaluated.items(s,r.length,o.items));let c=s.name("valid"),l=s.const("len",(0,tv._)`${i}.length`);r.forEach((d,f)=>{(0,Qo.alwaysValidSchema)(o,d)||(s.if((0,tv._)`${l} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function u(d){let{opts:f,errSchemaPath:p}=o,y=r.length,m=y===d.minItems&&(y===d.maxItems||d[e]===!1);if(f.strictTuples&&!m){let g=`"${a}" is ${y}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,Qo.checkStrictMode)(o,g,f.strictTuples)}}}Ki.validateTuple=rv;Ki.default=_A});var sv=_(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var bA=Bd(),wA={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,bA.validateTuple)(t,"items")};Jd.default=wA});var iv=_(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var nv=J(),$A=X(),SA=ct(),kA=zd(),EA={message:({params:{len:t}})=>(0,nv.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,nv._)`{limit: ${t}}`},TA={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:EA,code(t){let{schema:e,parentSchema:r,it:s}=t,{prefixItems:n}=r;s.items=!0,!(0,$A.alwaysValidSchema)(s,e)&&(n?(0,kA.validateAdditionalItems)(t,n):t.ok((0,SA.validateArray)(t)))}};Hd.default=TA});var av=_(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var ut=J(),Xo=X(),NA={message:({params:{min:t,max:e}})=>e===void 0?(0,ut.str)`must contain at least ${t} valid item(s)`:(0,ut.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ut._)`{minContains: ${t}}`:(0,ut._)`{minContains: ${t}, maxContains: ${e}}`},PA={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:NA,code(t){let{gen:e,schema:r,parentSchema:s,data:n,it:i}=t,a,o,{minContains:c,maxContains:l}=s;i.opts.next?(a=c===void 0?1:c,o=l):a=1;let u=e.const("len",(0,ut._)`${n}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,Xo.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,Xo.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Xo.alwaysValidSchema)(i,r)){let m=(0,ut._)`${u} >= ${a}`;o!==void 0&&(m=(0,ut._)`${m} && ${u} <= ${o}`),t.pass(m);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,ut._)`${n}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let m=e.name("_valid"),g=e.let("count",0);p(m,()=>e.if(m,()=>y(g)))}function p(m,g){e.forRange("i",0,u,h=>{t.subschema({keyword:"contains",dataProp:h,dataPropType:Xo.Type.Num,compositeRule:!0},m),g()})}function y(m){e.code((0,ut._)`${m}++`),o===void 0?e.if((0,ut._)`${m} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,ut._)`${m} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,ut._)`${m} >= ${a}`,()=>e.assign(d,!0)))}}};Gd.default=PA});var lv=_(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.validateSchemaDeps=Dt.validatePropertyDeps=Dt.error=void 0;var Yd=J(),OA=X(),zi=ct();Dt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let s=e===1?"property":"properties";return(0,Yd.str)`must have ${s} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:s}})=>(0,Yd._)`{property: ${t},
|
|
145
|
+
missingProperty: ${s},
|
|
146
|
+
depsCount: ${e},
|
|
147
|
+
deps: ${r}}`};var CA={keyword:"dependencies",type:"object",schemaType:"object",error:Dt.error,code(t){let[e,r]=AA(t);ov(t,e),cv(t,r)}};function AA({schema:t}){let e={},r={};for(let s in t){if(s==="__proto__")continue;let n=Array.isArray(t[s])?e:r;n[s]=t[s]}return[e,r]}function ov(t,e=t.schema){let{gen:r,data:s,it:n}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,zi.propertyInData)(r,s,a,n.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),n.allErrors?r.if(c,()=>{for(let l of o)(0,zi.checkReportMissingProp)(t,l)}):(r.if((0,Yd._)`${c} && (${(0,zi.checkMissingProp)(t,o,i)})`),(0,zi.reportMissingProp)(t,i),r.else())}}Dt.validatePropertyDeps=ov;function cv(t,e=t.schema){let{gen:r,data:s,keyword:n,it:i}=t,a=r.name("valid");for(let o in e)(0,OA.alwaysValidSchema)(i,e[o])||(r.if((0,zi.propertyInData)(r,s,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:n,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}Dt.validateSchemaDeps=cv;Dt.default=CA});var dv=_(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var uv=J(),RA=X(),IA={message:"property name must be valid",params:({params:t})=>(0,uv._)`{propertyName: ${t.propertyName}}`},MA={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:IA,code(t){let{gen:e,schema:r,data:s,it:n}=t;if((0,RA.alwaysValidSchema)(n,r))return;let i=e.name("valid");e.forIn("key",s,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,uv.not)(i),()=>{t.error(!0),n.allErrors||e.break()})}),t.ok(i)}};Wd.default=MA});var Qd=_(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var ec=ct(),St=J(),xA=er(),tc=X(),jA={message:"must NOT have additional properties",params:({params:t})=>(0,St._)`{additionalProperty: ${t.additionalProperty}}`},qA={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:jA,code(t){let{gen:e,schema:r,parentSchema:s,data:n,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,tc.alwaysValidSchema)(a,r))return;let l=(0,ec.allSchemaProperties)(s.properties),u=(0,ec.allSchemaProperties)(s.patternProperties);d(),t.ok((0,St._)`${i} === ${xA.default.errors}`);function d(){e.forIn("key",n,g=>{!l.length&&!u.length?y(g):e.if(f(g),()=>y(g))})}function f(g){let h;if(l.length>8){let v=(0,tc.schemaRefOrVal)(a,s.properties,"properties");h=(0,ec.isOwnProperty)(e,v,g)}else l.length?h=(0,St.or)(...l.map(v=>(0,St._)`${g} === ${v}`)):h=St.nil;return u.length&&(h=(0,St.or)(h,...u.map(v=>(0,St._)`${(0,ec.usePattern)(t,v)}.test(${g})`))),(0,St.not)(h)}function p(g){e.code((0,St._)`delete ${n}[${g}]`)}function y(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,tc.alwaysValidSchema)(a,r)){let h=e.name("valid");c.removeAdditional==="failing"?(m(g,h,!1),e.if((0,St.not)(h),()=>{t.reset(),p(g)})):(m(g,h),o||e.if((0,St.not)(h),()=>e.break()))}}function m(g,h,v){let b={keyword:"additionalProperties",dataProp:g,dataPropType:tc.Type.Str};v===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,h)}}};Zd.default=qA});var mv=_(ef=>{"use strict";Object.defineProperty(ef,"__esModule",{value:!0});var DA=Ci(),fv=ct(),Xd=X(),pv=Qd(),LA={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:s,data:n,it:i}=t;i.opts.removeAdditional==="all"&&s.additionalProperties===void 0&&pv.default.code(new DA.KeywordCxt(i,pv.default,"additionalProperties"));let a=(0,fv.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=Xd.mergeEvaluated.props(e,(0,Xd.toHash)(a),i.props));let o=a.filter(d=>!(0,Xd.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)l(d)?u(d):(e.if((0,fv.propertyInData)(e,n,d,i.opts.ownProperties)),u(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function l(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function u(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};ef.default=LA});var vv=_(tf=>{"use strict";Object.defineProperty(tf,"__esModule",{value:!0});var hv=ct(),rc=J(),gv=X(),yv=X(),FA={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:s,parentSchema:n,it:i}=t,{opts:a}=i,o=(0,hv.allSchemaProperties)(r),c=o.filter(m=>(0,gv.alwaysValidSchema)(i,r[m]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let l=a.strictSchema&&!a.allowMatchingProperties&&n.properties,u=e.name("valid");i.props!==!0&&!(i.props instanceof rc.Name)&&(i.props=(0,yv.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let m of o)l&&p(m),i.allErrors?y(m):(e.var(u,!0),y(m),e.if(u))}function p(m){for(let g in l)new RegExp(m).test(g)&&(0,gv.checkStrictMode)(i,`property ${g} matches pattern ${m} (use allowMatchingProperties)`)}function y(m){e.forIn("key",s,g=>{e.if((0,rc._)`${(0,hv.usePattern)(t,m)}.test(${g})`,()=>{let h=c.includes(m);h||t.subschema({keyword:"patternProperties",schemaProp:m,dataProp:g,dataPropType:yv.Type.Str},u),i.opts.unevaluated&&d!==!0?e.assign((0,rc._)`${d}[${g}]`,!0):!h&&!i.allErrors&&e.if((0,rc.not)(u),()=>e.break())})})}}};tf.default=FA});var _v=_(rf=>{"use strict";Object.defineProperty(rf,"__esModule",{value:!0});var UA=X(),VA={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:s}=t;if((0,UA.alwaysValidSchema)(s,r)){t.fail();return}let n=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},n),t.failResult(n,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};rf.default=VA});var bv=_(sf=>{"use strict";Object.defineProperty(sf,"__esModule",{value:!0});var KA=ct(),zA={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:KA.validateUnion,error:{message:"must match a schema in anyOf"}};sf.default=zA});var wv=_(nf=>{"use strict";Object.defineProperty(nf,"__esModule",{value:!0});var sc=J(),BA=X(),JA={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,sc._)`{passingSchemas: ${t.passing}}`},HA={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:JA,code(t){let{gen:e,schema:r,parentSchema:s,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(n.opts.discriminator&&s.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(l),t.result(a,()=>t.reset(),()=>t.error(!0));function l(){i.forEach((u,d)=>{let f;(0,BA.alwaysValidSchema)(n,u)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,sc._)`${c} && ${a}`).assign(a,!1).assign(o,(0,sc._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,sc.Name)})})}}};nf.default=HA});var $v=_(af=>{"use strict";Object.defineProperty(af,"__esModule",{value:!0});var GA=X(),YA={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let n=e.name("valid");r.forEach((i,a)=>{if((0,GA.alwaysValidSchema)(s,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},n);t.ok(n),t.mergeEvaluated(o)})}};af.default=YA});var Ev=_(of=>{"use strict";Object.defineProperty(of,"__esModule",{value:!0});var nc=J(),kv=X(),WA={message:({params:t})=>(0,nc.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,nc._)`{failingKeyword: ${t.ifClause}}`},ZA={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:WA,code(t){let{gen:e,parentSchema:r,it:s}=t;r.then===void 0&&r.else===void 0&&(0,kv.checkStrictMode)(s,'"if" without "then" and "else" is ignored');let n=Sv(s,"then"),i=Sv(s,"else");if(!n&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),n&&i){let u=e.let("ifClause");t.setParams({ifClause:u}),e.if(o,l("then",u),l("else",u))}else n?e.if(o,l("then")):e.if((0,nc.not)(o),l("else"));t.pass(a,()=>t.error(!0));function c(){let u=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(u)}function l(u,d){return()=>{let f=t.subschema({keyword:u},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,nc._)`${u}`):t.setParams({ifClause:u})}}}};function Sv(t,e){let r=t.schema[e];return r!==void 0&&!(0,kv.alwaysValidSchema)(t,r)}of.default=ZA});var Tv=_(cf=>{"use strict";Object.defineProperty(cf,"__esModule",{value:!0});var QA=X(),XA={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,QA.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};cf.default=XA});var Nv=_(lf=>{"use strict";Object.defineProperty(lf,"__esModule",{value:!0});var eR=zd(),tR=sv(),rR=Bd(),sR=iv(),nR=av(),iR=lv(),aR=dv(),oR=Qd(),cR=mv(),lR=vv(),uR=_v(),dR=bv(),fR=wv(),pR=$v(),mR=Ev(),hR=Tv();function gR(t=!1){let e=[uR.default,dR.default,fR.default,pR.default,mR.default,hR.default,aR.default,oR.default,iR.default,cR.default,lR.default];return t?e.push(tR.default,sR.default):e.push(eR.default,rR.default),e.push(nR.default),e}lf.default=gR});var Pv=_(uf=>{"use strict";Object.defineProperty(uf,"__esModule",{value:!0});var _e=J(),yR={message:({schemaCode:t})=>(0,_e.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,_e._)`{format: ${t}}`},vR={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:yR,code(t,e){let{gen:r,data:s,$data:n,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:l,schemaEnv:u,self:d}=o;if(!c.validateFormats)return;n?f():p();function f(){let y=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),m=r.const("fDef",(0,_e._)`${y}[${a}]`),g=r.let("fType"),h=r.let("format");r.if((0,_e._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(g,(0,_e._)`${m}.type || "string"`).assign(h,(0,_e._)`${m}.validate`),()=>r.assign(g,(0,_e._)`"string"`).assign(h,m)),t.fail$data((0,_e.or)(v(),b()));function v(){return c.strictSchema===!1?_e.nil:(0,_e._)`${a} && !${h}`}function b(){let $=u.$async?(0,_e._)`(${m}.async ? await ${h}(${s}) : ${h}(${s}))`:(0,_e._)`${h}(${s})`,w=(0,_e._)`(typeof ${h} == "function" ? ${$} : ${h}.test(${s}))`;return(0,_e._)`${h} && ${h} !== true && ${g} === ${e} && !${w}`}}function p(){let y=d.formats[i];if(!y){v();return}if(y===!0)return;let[m,g,h]=b(y);m===e&&t.pass($());function v(){if(c.strictSchema===!1){d.logger.warn(w());return}throw new Error(w());function w(){return`unknown format "${i}" ignored in schema at path "${l}"`}}function b(w){let k=w instanceof RegExp?(0,_e.regexpCode)(w):c.code.formats?(0,_e._)`${c.code.formats}${(0,_e.getProperty)(i)}`:void 0,N=r.scopeValue("formats",{key:i,ref:w,code:k});return typeof w=="object"&&!(w instanceof RegExp)?[w.type||"string",w.validate,(0,_e._)`${N}.validate`]:["string",w,N]}function $(){if(typeof y=="object"&&!(y instanceof RegExp)&&y.async){if(!u.$async)throw new Error("async format in sync schema");return(0,_e._)`await ${h}(${s})`}return typeof g=="function"?(0,_e._)`${h}(${s})`:(0,_e._)`${h}.test(${s})`}}}};uf.default=vR});var Ov=_(df=>{"use strict";Object.defineProperty(df,"__esModule",{value:!0});var _R=Pv(),bR=[_R.default];df.default=bR});var Cv=_(dn=>{"use strict";Object.defineProperty(dn,"__esModule",{value:!0});dn.contentVocabulary=dn.metadataVocabulary=void 0;dn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];dn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Rv=_(ff=>{"use strict";Object.defineProperty(ff,"__esModule",{value:!0});var wR=L0(),$R=X0(),SR=Nv(),kR=Ov(),Av=Cv(),ER=[wR.default,$R.default,(0,SR.default)(),kR.default,Av.metadataVocabulary,Av.contentVocabulary];ff.default=ER});var Mv=_(ic=>{"use strict";Object.defineProperty(ic,"__esModule",{value:!0});ic.DiscrError=void 0;var Iv;(function(t){t.Tag="tag",t.Mapping="mapping"})(Iv||(ic.DiscrError=Iv={}))});var jv=_(mf=>{"use strict";Object.defineProperty(mf,"__esModule",{value:!0});var fn=J(),pf=Mv(),xv=Uo(),TR=Ai(),NR=X(),PR={message:({params:{discrError:t,tagName:e}})=>t===pf.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,fn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},OR={keyword:"discriminator",type:"object",schemaType:"object",error:PR,code(t){let{gen:e,data:r,schema:s,parentSchema:n,it:i}=t,{oneOf:a}=n;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=s.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(s.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),l=e.const("tag",(0,fn._)`${r}${(0,fn.getProperty)(o)}`);e.if((0,fn._)`typeof ${l} == "string"`,()=>u(),()=>t.error(!1,{discrError:pf.DiscrError.Tag,tag:l,tagName:o})),t.ok(c);function u(){let p=f();e.if(!1);for(let y in p)e.elseIf((0,fn._)`${l} === ${y}`),e.assign(c,d(p[y]));e.else(),t.error(!1,{discrError:pf.DiscrError.Mapping,tag:l,tagName:o}),e.endIf()}function d(p){let y=e.name("valid"),m=t.subschema({keyword:"oneOf",schemaProp:p},y);return t.mergeEvaluated(m,fn.Name),y}function f(){var p;let y={},m=h(n),g=!0;for(let $=0;$<a.length;$++){let w=a[$];if(w?.$ref&&!(0,NR.schemaHasRulesButRef)(w,i.self.RULES)){let N=w.$ref;if(w=xv.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,N),w instanceof xv.SchemaEnv&&(w=w.schema),w===void 0)throw new TR.default(i.opts.uriResolver,i.baseId,N)}let k=(p=w?.properties)===null||p===void 0?void 0:p[o];if(typeof k!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${o}"`);g=g&&(m||h(w)),v(k,$)}if(!g)throw new Error(`discriminator: "${o}" must be required`);return y;function h({required:$}){return Array.isArray($)&&$.includes(o)}function v($,w){if($.const)b($.const,w);else if($.enum)for(let k of $.enum)b(k,w);else throw new Error(`discriminator: "properties/${o}" must have "const" or "enum"`)}function b($,w){if(typeof $!="string"||$ in y)throw new Error(`discriminator: "${o}" values must be unique strings`);y[$]=w}}}};mf.default=OR});var qv=_((YV,CR)=>{CR.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var Lv=_((me,hf)=>{"use strict";Object.defineProperty(me,"__esModule",{value:!0});me.MissingRefError=me.ValidationError=me.CodeGen=me.Name=me.nil=me.stringify=me.str=me._=me.KeywordCxt=me.Ajv=void 0;var AR=I0(),RR=Rv(),IR=jv(),Dv=qv(),MR=["/properties"],ac="http://json-schema.org/draft-07/schema",pn=class extends AR.default{_addVocabularies(){super._addVocabularies(),RR.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(IR.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Dv,MR):Dv;this.addMetaSchema(e,ac,!1),this.refs["http://json-schema.org/schema"]=ac}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ac)?ac:void 0)}};me.Ajv=pn;hf.exports=me=pn;hf.exports.Ajv=pn;Object.defineProperty(me,"__esModule",{value:!0});me.default=pn;var xR=Ci();Object.defineProperty(me,"KeywordCxt",{enumerable:!0,get:function(){return xR.KeywordCxt}});var mn=J();Object.defineProperty(me,"_",{enumerable:!0,get:function(){return mn._}});Object.defineProperty(me,"str",{enumerable:!0,get:function(){return mn.str}});Object.defineProperty(me,"stringify",{enumerable:!0,get:function(){return mn.stringify}});Object.defineProperty(me,"nil",{enumerable:!0,get:function(){return mn.nil}});Object.defineProperty(me,"Name",{enumerable:!0,get:function(){return mn.Name}});Object.defineProperty(me,"CodeGen",{enumerable:!0,get:function(){return mn.CodeGen}});var jR=Lo();Object.defineProperty(me,"ValidationError",{enumerable:!0,get:function(){return jR.default}});var qR=Ai();Object.defineProperty(me,"MissingRefError",{enumerable:!0,get:function(){return qR.default}})});var Hv=_(Ft=>{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});Ft.formatNames=Ft.fastFormats=Ft.fullFormats=void 0;function Lt(t,e){return{validate:t,compare:e}}Ft.fullFormats={date:Lt(Kv,_f),time:Lt(yf(!0),bf),"date-time":Lt(Fv(!0),Bv),"iso-time":Lt(yf(),zv),"iso-date-time":Lt(Fv(),Jv),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:KR,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:WR,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:zR,int32:{type:"number",validate:HR},int64:{type:"number",validate:GR},float:{type:"number",validate:Vv},double:{type:"number",validate:Vv},password:!0,binary:!0};Ft.fastFormats={...Ft.fullFormats,date:Lt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,_f),time:Lt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,bf),"date-time":Lt(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Bv),"iso-time":Lt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,zv),"iso-date-time":Lt(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Jv),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Ft.formatNames=Object.keys(Ft.fullFormats);function DR(t){return t%4===0&&(t%100!==0||t%400===0)}var LR=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,FR=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Kv(t){let e=LR.exec(t);if(!e)return!1;let r=+e[1],s=+e[2],n=+e[3];return s>=1&&s<=12&&n>=1&&n<=(s===2&&DR(r)?29:FR[s])}function _f(t,e){if(t&&e)return t>e?1:t<e?-1:0}var gf=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function yf(t){return function(r){let s=gf.exec(r);if(!s)return!1;let n=+s[1],i=+s[2],a=+s[3],o=s[4],c=s[5]==="-"?-1:1,l=+(s[6]||0),u=+(s[7]||0);if(l>23||u>59||t&&!o)return!1;if(n<=23&&i<=59&&a<60)return!0;let d=i-u*c,f=n-l*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&a<61}}function bf(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),s=new Date("2020-01-01T"+e).valueOf();if(r&&s)return r-s}function zv(t,e){if(!(t&&e))return;let r=gf.exec(t),s=gf.exec(e);if(r&&s)return t=r[1]+r[2]+r[3],e=s[1]+s[2]+s[3],t>e?1:t<e?-1:0}var vf=/t|\s/i;function Fv(t){let e=yf(t);return function(s){let n=s.split(vf);return n.length===2&&Kv(n[0])&&e(n[1])}}function Bv(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),s=new Date(e).valueOf();if(r&&s)return r-s}function Jv(t,e){if(!(t&&e))return;let[r,s]=t.split(vf),[n,i]=e.split(vf),a=_f(r,n);if(a!==void 0)return a||bf(s,i)}var UR=/\/|:/,VR=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function KR(t){return UR.test(t)&&VR.test(t)}var Uv=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function zR(t){return Uv.lastIndex=0,Uv.test(t)}var BR=-(2**31),JR=2**31-1;function HR(t){return Number.isInteger(t)&&t<=JR&&t>=BR}function GR(t){return Number.isInteger(t)}function Vv(){return!0}var YR=/[^\\]\\Z/;function WR(t){if(YR.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Hi=_(ie=>{"use strict";Object.defineProperty(ie,"__esModule",{value:!0});ie.regexpCode=ie.getEsmExportName=ie.getProperty=ie.safeStringify=ie.stringify=ie.strConcat=ie.addCodeArg=ie.str=ie._=ie.nil=ie._Code=ie.Name=ie.IDENTIFIER=ie._CodeOrName=void 0;var Bi=class{};ie._CodeOrName=Bi;ie.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var $s=class extends Bi{constructor(e){if(super(),!ie.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ie.Name=$s;var dt=class extends Bi{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,s)=>`${r}${s}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,s)=>(s instanceof $s&&(r[s.str]=(r[s.str]||0)+1),r),{})}};ie._Code=dt;ie.nil=new dt("");function Gv(t,...e){let r=[t[0]],s=0;for(;s<e.length;)$f(r,e[s]),r.push(t[++s]);return new dt(r)}ie._=Gv;var wf=new dt("+");function Yv(t,...e){let r=[Ji(t[0])],s=0;for(;s<e.length;)r.push(wf),$f(r,e[s]),r.push(wf,Ji(t[++s]));return ZR(r),new dt(r)}ie.str=Yv;function $f(t,e){e instanceof dt?t.push(...e._items):e instanceof $s?t.push(e):t.push(eI(e))}ie.addCodeArg=$f;function ZR(t){let e=1;for(;e<t.length-1;){if(t[e]===wf){let r=QR(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function QR(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof $s||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof $s))return`"${t}${e.slice(1)}`}function XR(t,e){return e.emptyStr()?t:t.emptyStr()?e:Yv`${t}${e}`}ie.strConcat=XR;function eI(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Ji(Array.isArray(t)?t.join(","):t)}function tI(t){return new dt(Ji(t))}ie.stringify=tI;function Ji(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ie.safeStringify=Ji;function rI(t){return typeof t=="string"&&ie.IDENTIFIER.test(t)?new dt(`.${t}`):Gv`[${t}]`}ie.getProperty=rI;function sI(t){if(typeof t=="string"&&ie.IDENTIFIER.test(t))return new dt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ie.getEsmExportName=sI;function nI(t){return new dt(t.toString())}ie.regexpCode=nI});var Ef=_(Ze=>{"use strict";Object.defineProperty(Ze,"__esModule",{value:!0});Ze.ValueScope=Ze.ValueScopeName=Ze.Scope=Ze.varKinds=Ze.UsedValueState=void 0;var We=Hi(),Sf=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},oc;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(oc||(Ze.UsedValueState=oc={}));Ze.varKinds={const:new We.Name("const"),let:new We.Name("let"),var:new We.Name("var")};var cc=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof We.Name?e:this.name(e)}name(e){return new We.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,s;if(!((s=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||s===void 0)&&s.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ze.Scope=cc;var lc=class extends We.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:s}){this.value=e,this.scopePath=(0,We._)`.${new We.Name(r)}[${s}]`}};Ze.ValueScopeName=lc;var iI=(0,We._)`\n`,kf=class extends cc{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?iI:We.nil}}get(){return this._scope}name(e){return new lc(e,this._newName(e))}value(e,r){var s;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let n=this.toName(e),{prefix:i}=n,a=(s=r.key)!==null&&s!==void 0?s:r.ref,o=this._values[i];if(o){let u=o.get(a);if(u)return u}else o=this._values[i]=new Map;o.set(a,n);let c=this._scope[i]||(this._scope[i]=[]),l=c.length;return c[l]=r.ref,n.setValue(r,{property:i,itemIndex:l}),n}getValue(e,r){let s=this._values[e];if(s)return s.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,s=>{if(s.scopePath===void 0)throw new Error(`CodeGen: name "${s}" has no value`);return(0,We._)`${e}${s.scopePath}`})}scopeCode(e=this._values,r,s){return this._reduceValues(e,n=>{if(n.value===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return n.value.code},r,s)}_reduceValues(e,r,s={},n){let i=We.nil;for(let a in e){let o=e[a];if(!o)continue;let c=s[a]=s[a]||new Map;o.forEach(l=>{if(c.has(l))return;c.set(l,oc.Started);let u=r(l);if(u){let d=this.opts.es5?Ze.varKinds.var:Ze.varKinds.const;i=(0,We._)`${i}${d} ${l} = ${u};${this.opts._n}`}else if(u=n?.(l))i=(0,We._)`${i}${u}${this.opts._n}`;else throw new Sf(l);c.set(l,oc.Completed)})}return i}};Ze.ValueScope=kf});var K=_(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.or=B.and=B.not=B.CodeGen=B.operators=B.varKinds=B.ValueScopeName=B.ValueScope=B.Scope=B.Name=B.regexpCode=B.stringify=B.getProperty=B.nil=B.strConcat=B.str=B._=void 0;var Z=Hi(),kt=Ef(),Rr=Hi();Object.defineProperty(B,"_",{enumerable:!0,get:function(){return Rr._}});Object.defineProperty(B,"str",{enumerable:!0,get:function(){return Rr.str}});Object.defineProperty(B,"strConcat",{enumerable:!0,get:function(){return Rr.strConcat}});Object.defineProperty(B,"nil",{enumerable:!0,get:function(){return Rr.nil}});Object.defineProperty(B,"getProperty",{enumerable:!0,get:function(){return Rr.getProperty}});Object.defineProperty(B,"stringify",{enumerable:!0,get:function(){return Rr.stringify}});Object.defineProperty(B,"regexpCode",{enumerable:!0,get:function(){return Rr.regexpCode}});Object.defineProperty(B,"Name",{enumerable:!0,get:function(){return Rr.Name}});var pc=Ef();Object.defineProperty(B,"Scope",{enumerable:!0,get:function(){return pc.Scope}});Object.defineProperty(B,"ValueScope",{enumerable:!0,get:function(){return pc.ValueScope}});Object.defineProperty(B,"ValueScopeName",{enumerable:!0,get:function(){return pc.ValueScopeName}});Object.defineProperty(B,"varKinds",{enumerable:!0,get:function(){return pc.varKinds}});B.operators={GT:new Z._Code(">"),GTE:new Z._Code(">="),LT:new Z._Code("<"),LTE:new Z._Code("<="),EQ:new Z._Code("==="),NEQ:new Z._Code("!=="),NOT:new Z._Code("!"),OR:new Z._Code("||"),AND:new Z._Code("&&"),ADD:new Z._Code("+")};var sr=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Tf=class extends sr{constructor(e,r,s){super(),this.varKind=e,this.name=r,this.rhs=s}render({es5:e,_n:r}){let s=e?kt.varKinds.var:this.varKind,n=this.rhs===void 0?"":` = ${this.rhs}`;return`${s} ${this.name}${n};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=gn(this.rhs,e,r)),this}get names(){return this.rhs instanceof Z._CodeOrName?this.rhs.names:{}}},uc=class extends sr{constructor(e,r,s){super(),this.lhs=e,this.rhs=r,this.sideEffects=s}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Z.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=gn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Z.Name?{}:{...this.lhs.names};return fc(e,this.rhs)}},Nf=class extends uc{constructor(e,r,s,n){super(e,s,n),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Pf=class extends sr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Of=class extends sr{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Cf=class extends sr{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Af=class extends sr{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=gn(this.code,e,r),this}get names(){return this.code instanceof Z._CodeOrName?this.code.names:{}}},Gi=class extends sr{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,s)=>r+s.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let s=e[r].optimizeNodes();Array.isArray(s)?e.splice(r,1,...s):s?e[r]=s:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:s}=this,n=s.length;for(;n--;){let i=s[n];i.optimizeNames(e,r)||(aI(e,i.names),s.splice(n,1))}return s.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Es(e,r.names),{})}},nr=class extends Gi{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Rf=class extends Gi{},hn=class extends nr{};hn.kind="else";var Ss=class t extends nr{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let s=r.optimizeNodes();r=this.else=Array.isArray(s)?new hn(s):s}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Wv(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var s;if(this.else=(s=this.else)===null||s===void 0?void 0:s.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=gn(this.condition,e,r),this}get names(){let e=super.names;return fc(e,this.condition),this.else&&Es(e,this.else.names),e}};Ss.kind="if";var ks=class extends nr{};ks.kind="for";var If=class extends ks{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=gn(this.iteration,e,r),this}get names(){return Es(super.names,this.iteration.names)}},Mf=class extends ks{constructor(e,r,s,n){super(),this.varKind=e,this.name=r,this.from=s,this.to=n}render(e){let r=e.es5?kt.varKinds.var:this.varKind,{name:s,from:n,to:i}=this;return`for(${r} ${s}=${n}; ${s}<${i}; ${s}++)`+super.render(e)}get names(){let e=fc(super.names,this.from);return fc(e,this.to)}},dc=class extends ks{constructor(e,r,s,n){super(),this.loop=e,this.varKind=r,this.name=s,this.iterable=n}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=gn(this.iterable,e,r),this}get names(){return Es(super.names,this.iterable.names)}},Yi=class extends nr{constructor(e,r,s){super(),this.name=e,this.args=r,this.async=s}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};Yi.kind="func";var Wi=class extends Gi{render(e){return"return "+super.render(e)}};Wi.kind="return";var xf=class extends nr{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var s,n;return super.optimizeNames(e,r),(s=this.catch)===null||s===void 0||s.optimizeNames(e,r),(n=this.finally)===null||n===void 0||n.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Es(e,this.catch.names),this.finally&&Es(e,this.finally.names),e}},Zi=class extends nr{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Zi.kind="catch";var Qi=class extends nr{render(e){return"finally"+super.render(e)}};Qi.kind="finally";var jf=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
148
|
+
`:""},this._extScope=e,this._scope=new kt.Scope({parent:e}),this._nodes=[new Rf]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let s=this._extScope.value(e,r);return(this._values[s.prefix]||(this._values[s.prefix]=new Set)).add(s),s}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,s,n){let i=this._scope.toName(r);return s!==void 0&&n&&(this._constants[i.str]=s),this._leafNode(new Tf(e,i,s)),i}const(e,r,s){return this._def(kt.varKinds.const,e,r,s)}let(e,r,s){return this._def(kt.varKinds.let,e,r,s)}var(e,r,s){return this._def(kt.varKinds.var,e,r,s)}assign(e,r,s){return this._leafNode(new uc(e,r,s))}add(e,r){return this._leafNode(new Nf(e,B.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Z.nil&&this._leafNode(new Af(e)),this}object(...e){let r=["{"];for(let[s,n]of e)r.length>1&&r.push(","),r.push(s),(s!==n||this.opts.es5)&&(r.push(":"),(0,Z.addCodeArg)(r,n));return r.push("}"),new Z._Code(r)}if(e,r,s){if(this._blockNode(new Ss(e)),r&&s)this.code(r).else().code(s).endIf();else if(r)this.code(r).endIf();else if(s)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Ss(e))}else(){return this._elseNode(new hn)}endIf(){return this._endBlockNode(Ss,hn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new If(e),r)}forRange(e,r,s,n,i=this.opts.es5?kt.varKinds.var:kt.varKinds.let){let a=this._scope.toName(e);return this._for(new Mf(i,a,r,s),()=>n(a))}forOf(e,r,s,n=kt.varKinds.const){let i=this._scope.toName(e);if(this.opts.es5){let a=r instanceof Z.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Z._)`${a}.length`,o=>{this.var(i,(0,Z._)`${a}[${o}]`),s(i)})}return this._for(new dc("of",n,i,r),()=>s(i))}forIn(e,r,s,n=this.opts.es5?kt.varKinds.var:kt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Z._)`Object.keys(${r})`,s);let i=this._scope.toName(e);return this._for(new dc("in",n,i,r),()=>s(i))}endFor(){return this._endBlockNode(ks)}label(e){return this._leafNode(new Pf(e))}break(e){return this._leafNode(new Of(e))}return(e){let r=new Wi;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Wi)}try(e,r,s){if(!r&&!s)throw new Error('CodeGen: "try" without "catch" and "finally"');let n=new xf;if(this._blockNode(n),this.code(e),r){let i=this.name("e");this._currNode=n.catch=new Zi(i),r(i)}return s&&(this._currNode=n.finally=new Qi,this.code(s)),this._endBlockNode(Zi,Qi)}throw(e){return this._leafNode(new Cf(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let s=this._nodes.length-r;if(s<0||e!==void 0&&s!==e)throw new Error(`CodeGen: wrong number of nodes: ${s} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=Z.nil,s,n){return this._blockNode(new Yi(e,r,s)),n&&this.code(n).endFunc(),this}endFunc(){return this._endBlockNode(Yi)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let s=this._currNode;if(s instanceof e||r&&s instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Ss))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};B.CodeGen=jf;function Es(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function fc(t,e){return e instanceof Z._CodeOrName?Es(t,e.names):t}function gn(t,e,r){if(t instanceof Z.Name)return s(t);if(!n(t))return t;return new Z._Code(t._items.reduce((i,a)=>(a instanceof Z.Name&&(a=s(a)),a instanceof Z._Code?i.push(...a._items):i.push(a),i),[]));function s(i){let a=r[i.str];return a===void 0||e[i.str]!==1?i:(delete e[i.str],a)}function n(i){return i instanceof Z._Code&&i._items.some(a=>a instanceof Z.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function aI(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Wv(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Z._)`!${qf(t)}`}B.not=Wv;var oI=Zv(B.operators.AND);function cI(...t){return t.reduce(oI)}B.and=cI;var lI=Zv(B.operators.OR);function uI(...t){return t.reduce(lI)}B.or=uI;function Zv(t){return(e,r)=>e===Z.nil?r:r===Z.nil?e:(0,Z._)`${qf(e)} ${t} ${qf(r)}`}function qf(t){return t instanceof Z.Name?t:(0,Z._)`(${t})`}});var te=_(G=>{"use strict";Object.defineProperty(G,"__esModule",{value:!0});G.checkStrictMode=G.getErrorPath=G.Type=G.useFunc=G.setEvaluated=G.evaluatedPropsToName=G.mergeEvaluated=G.eachItem=G.unescapeJsonPointer=G.escapeJsonPointer=G.escapeFragment=G.unescapeFragment=G.schemaRefOrVal=G.schemaHasRulesButRef=G.schemaHasRules=G.checkUnknownRules=G.alwaysValidSchema=G.toHash=void 0;var fe=K(),dI=Hi();function fI(t){let e={};for(let r of t)e[r]=!0;return e}G.toHash=fI;function pI(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(e_(t,e),!t_(e,t.self.RULES.all))}G.alwaysValidSchema=pI;function e_(t,e=t.schema){let{opts:r,self:s}=t;if(!r.strictSchema||typeof e=="boolean")return;let n=s.RULES.keywords;for(let i in e)n[i]||n_(t,`unknown keyword: "${i}"`)}G.checkUnknownRules=e_;function t_(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}G.schemaHasRules=t_;function mI(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}G.schemaHasRulesButRef=mI;function hI({topSchemaRef:t,schemaPath:e},r,s,n){if(!n){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,fe._)`${r}`}return(0,fe._)`${t}${e}${(0,fe.getProperty)(s)}`}G.schemaRefOrVal=hI;function gI(t){return r_(decodeURIComponent(t))}G.unescapeFragment=gI;function yI(t){return encodeURIComponent(Lf(t))}G.escapeFragment=yI;function Lf(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}G.escapeJsonPointer=Lf;function r_(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}G.unescapeJsonPointer=r_;function vI(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}G.eachItem=vI;function Qv({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:s}){return(n,i,a,o)=>{let c=a===void 0?i:a instanceof fe.Name?(i instanceof fe.Name?t(n,i,a):e(n,i,a),a):i instanceof fe.Name?(e(n,a,i),i):r(i,a);return o===fe.Name&&!(c instanceof fe.Name)?s(n,c):c}}G.mergeEvaluated={props:Qv({mergeNames:(t,e,r)=>t.if((0,fe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,fe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,fe._)`${r} || {}`).code((0,fe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,fe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,fe._)`${r} || {}`),Ff(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:s_}),items:Qv({mergeNames:(t,e,r)=>t.if((0,fe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,fe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,fe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,fe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function s_(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,fe._)`{}`);return e!==void 0&&Ff(t,r,e),r}G.evaluatedPropsToName=s_;function Ff(t,e,r){Object.keys(r).forEach(s=>t.assign((0,fe._)`${e}${(0,fe.getProperty)(s)}`,!0))}G.setEvaluated=Ff;var Xv={};function _I(t,e){return t.scopeValue("func",{ref:e,code:Xv[e.code]||(Xv[e.code]=new dI._Code(e.code))})}G.useFunc=_I;var Df;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Df||(G.Type=Df={}));function bI(t,e,r){if(t instanceof fe.Name){let s=e===Df.Num;return r?s?(0,fe._)`"[" + ${t} + "]"`:(0,fe._)`"['" + ${t} + "']"`:s?(0,fe._)`"/" + ${t}`:(0,fe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,fe.getProperty)(t).toString():"/"+Lf(t)}G.getErrorPath=bI;function n_(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}G.checkStrictMode=n_});var ir=_(Uf=>{"use strict";Object.defineProperty(Uf,"__esModule",{value:!0});var xe=K(),wI={data:new xe.Name("data"),valCxt:new xe.Name("valCxt"),instancePath:new xe.Name("instancePath"),parentData:new xe.Name("parentData"),parentDataProperty:new xe.Name("parentDataProperty"),rootData:new xe.Name("rootData"),dynamicAnchors:new xe.Name("dynamicAnchors"),vErrors:new xe.Name("vErrors"),errors:new xe.Name("errors"),this:new xe.Name("this"),self:new xe.Name("self"),scope:new xe.Name("scope"),json:new xe.Name("json"),jsonPos:new xe.Name("jsonPos"),jsonLen:new xe.Name("jsonLen"),jsonPart:new xe.Name("jsonPart")};Uf.default=wI});var Xi=_(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});je.extendErrors=je.resetErrorsCount=je.reportExtraError=je.reportError=je.keyword$DataError=je.keywordError=void 0;var re=K(),mc=te(),Fe=ir();je.keywordError={message:({keyword:t})=>(0,re.str)`must pass "${t}" keyword validation`};je.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,re.str)`"${t}" keyword must be ${e} ($data)`:(0,re.str)`"${t}" keyword is invalid ($data)`};function $I(t,e=je.keywordError,r,s){let{it:n}=t,{gen:i,compositeRule:a,allErrors:o}=n,c=o_(t,e,r);s??(a||o)?i_(i,c):a_(n,(0,re._)`[${c}]`)}je.reportError=$I;function SI(t,e=je.keywordError,r){let{it:s}=t,{gen:n,compositeRule:i,allErrors:a}=s,o=o_(t,e,r);i_(n,o),i||a||a_(s,Fe.default.vErrors)}je.reportExtraError=SI;function kI(t,e){t.assign(Fe.default.errors,e),t.if((0,re._)`${Fe.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,re._)`${Fe.default.vErrors}.length`,e),()=>t.assign(Fe.default.vErrors,null)))}je.resetErrorsCount=kI;function EI({gen:t,keyword:e,schemaValue:r,data:s,errsCount:n,it:i}){if(n===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",n,Fe.default.errors,o=>{t.const(a,(0,re._)`${Fe.default.vErrors}[${o}]`),t.if((0,re._)`${a}.instancePath === undefined`,()=>t.assign((0,re._)`${a}.instancePath`,(0,re.strConcat)(Fe.default.instancePath,i.errorPath))),t.assign((0,re._)`${a}.schemaPath`,(0,re.str)`${i.errSchemaPath}/${e}`),i.opts.verbose&&(t.assign((0,re._)`${a}.schema`,r),t.assign((0,re._)`${a}.data`,s))})}je.extendErrors=EI;function i_(t,e){let r=t.const("err",e);t.if((0,re._)`${Fe.default.vErrors} === null`,()=>t.assign(Fe.default.vErrors,(0,re._)`[${r}]`),(0,re._)`${Fe.default.vErrors}.push(${r})`),t.code((0,re._)`${Fe.default.errors}++`)}function a_(t,e){let{gen:r,validateName:s,schemaEnv:n}=t;n.$async?r.throw((0,re._)`new ${t.ValidationError}(${e})`):(r.assign((0,re._)`${s}.errors`,e),r.return(!1))}var Ts={keyword:new re.Name("keyword"),schemaPath:new re.Name("schemaPath"),params:new re.Name("params"),propertyName:new re.Name("propertyName"),message:new re.Name("message"),schema:new re.Name("schema"),parentSchema:new re.Name("parentSchema")};function o_(t,e,r){let{createErrors:s}=t.it;return s===!1?(0,re._)`{}`:TI(t,e,r)}function TI(t,e,r={}){let{gen:s,it:n}=t,i=[NI(n,r),PI(t,r)];return OI(t,e,i),s.object(...i)}function NI({errorPath:t},{instancePath:e}){let r=e?(0,re.str)`${t}${(0,mc.getErrorPath)(e,mc.Type.Str)}`:t;return[Fe.default.instancePath,(0,re.strConcat)(Fe.default.instancePath,r)]}function PI({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:s}){let n=s?e:(0,re.str)`${e}/${t}`;return r&&(n=(0,re.str)`${n}${(0,mc.getErrorPath)(r,mc.Type.Str)}`),[Ts.schemaPath,n]}function OI(t,{params:e,message:r},s){let{keyword:n,data:i,schemaValue:a,it:o}=t,{opts:c,propertyName:l,topSchemaRef:u,schemaPath:d}=o;s.push([Ts.keyword,n],[Ts.params,typeof e=="function"?e(t):e||(0,re._)`{}`]),c.messages&&s.push([Ts.message,typeof r=="function"?r(t):r]),c.verbose&&s.push([Ts.schema,a],[Ts.parentSchema,(0,re._)`${u}${d}`],[Fe.default.data,i]),l&&s.push([Ts.propertyName,l])}});var l_=_(yn=>{"use strict";Object.defineProperty(yn,"__esModule",{value:!0});yn.boolOrEmptySchema=yn.topBoolOrEmptySchema=void 0;var CI=Xi(),AI=K(),RI=ir(),II={message:"boolean schema is false"};function MI(t){let{gen:e,schema:r,validateName:s}=t;r===!1?c_(t,!1):typeof r=="object"&&r.$async===!0?e.return(RI.default.data):(e.assign((0,AI._)`${s}.errors`,null),e.return(!0))}yn.topBoolOrEmptySchema=MI;function xI(t,e){let{gen:r,schema:s}=t;s===!1?(r.var(e,!1),c_(t)):r.var(e,!0)}yn.boolOrEmptySchema=xI;function c_(t,e){let{gen:r,data:s}=t,n={gen:r,keyword:"false schema",data:s,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,CI.reportError)(n,II,void 0,e)}});var Vf=_(vn=>{"use strict";Object.defineProperty(vn,"__esModule",{value:!0});vn.getRules=vn.isJSONType=void 0;var jI=["string","number","integer","boolean","null","object","array"],qI=new Set(jI);function DI(t){return typeof t=="string"&&qI.has(t)}vn.isJSONType=DI;function LI(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}vn.getRules=LI});var Kf=_(Ir=>{"use strict";Object.defineProperty(Ir,"__esModule",{value:!0});Ir.shouldUseRule=Ir.shouldUseGroup=Ir.schemaHasRulesForType=void 0;function FI({schema:t,self:e},r){let s=e.RULES.types[r];return s&&s!==!0&&u_(t,s)}Ir.schemaHasRulesForType=FI;function u_(t,e){return e.rules.some(r=>d_(t,r))}Ir.shouldUseGroup=u_;function d_(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(s=>t[s]!==void 0))}Ir.shouldUseRule=d_});var ea=_(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.reportTypeError=qe.checkDataTypes=qe.checkDataType=qe.coerceAndCheckDataType=qe.getJSONTypes=qe.getSchemaTypes=qe.DataType=void 0;var UI=Vf(),VI=Kf(),KI=Xi(),U=K(),f_=te(),_n;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(_n||(qe.DataType=_n={}));function zI(t){let e=p_(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}qe.getSchemaTypes=zI;function p_(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(UI.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}qe.getJSONTypes=p_;function BI(t,e){let{gen:r,data:s,opts:n}=t,i=JI(e,n.coerceTypes),a=e.length>0&&!(i.length===0&&e.length===1&&(0,VI.schemaHasRulesForType)(t,e[0]));if(a){let o=Bf(e,s,n.strictNumbers,_n.Wrong);r.if(o,()=>{i.length?HI(t,e,i):Jf(t)})}return a}qe.coerceAndCheckDataType=BI;var m_=new Set(["string","number","integer","boolean","null"]);function JI(t,e){return e?t.filter(r=>m_.has(r)||e==="array"&&r==="array"):[]}function HI(t,e,r){let{gen:s,data:n,opts:i}=t,a=s.let("dataType",(0,U._)`typeof ${n}`),o=s.let("coerced",(0,U._)`undefined`);i.coerceTypes==="array"&&s.if((0,U._)`${a} == 'object' && Array.isArray(${n}) && ${n}.length == 1`,()=>s.assign(n,(0,U._)`${n}[0]`).assign(a,(0,U._)`typeof ${n}`).if(Bf(e,n,i.strictNumbers),()=>s.assign(o,n))),s.if((0,U._)`${o} !== undefined`);for(let l of r)(m_.has(l)||l==="array"&&i.coerceTypes==="array")&&c(l);s.else(),Jf(t),s.endIf(),s.if((0,U._)`${o} !== undefined`,()=>{s.assign(n,o),GI(t,o)});function c(l){switch(l){case"string":s.elseIf((0,U._)`${a} == "number" || ${a} == "boolean"`).assign(o,(0,U._)`"" + ${n}`).elseIf((0,U._)`${n} === null`).assign(o,(0,U._)`""`);return;case"number":s.elseIf((0,U._)`${a} == "boolean" || ${n} === null
|
|
149
|
+
|| (${a} == "string" && ${n} && ${n} == +${n})`).assign(o,(0,U._)`+${n}`);return;case"integer":s.elseIf((0,U._)`${a} === "boolean" || ${n} === null
|
|
150
|
+
|| (${a} === "string" && ${n} && ${n} == +${n} && !(${n} % 1))`).assign(o,(0,U._)`+${n}`);return;case"boolean":s.elseIf((0,U._)`${n} === "false" || ${n} === 0 || ${n} === null`).assign(o,!1).elseIf((0,U._)`${n} === "true" || ${n} === 1`).assign(o,!0);return;case"null":s.elseIf((0,U._)`${n} === "" || ${n} === 0 || ${n} === false`),s.assign(o,null);return;case"array":s.elseIf((0,U._)`${a} === "string" || ${a} === "number"
|
|
151
|
+
|| ${a} === "boolean" || ${n} === null`).assign(o,(0,U._)`[${n}]`)}}}function GI({gen:t,parentData:e,parentDataProperty:r},s){t.if((0,U._)`${e} !== undefined`,()=>t.assign((0,U._)`${e}[${r}]`,s))}function zf(t,e,r,s=_n.Correct){let n=s===_n.Correct?U.operators.EQ:U.operators.NEQ,i;switch(t){case"null":return(0,U._)`${e} ${n} null`;case"array":i=(0,U._)`Array.isArray(${e})`;break;case"object":i=(0,U._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":i=a((0,U._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":i=a();break;default:return(0,U._)`typeof ${e} ${n} ${t}`}return s===_n.Correct?i:(0,U.not)(i);function a(o=U.nil){return(0,U.and)((0,U._)`typeof ${e} == "number"`,o,r?(0,U._)`isFinite(${e})`:U.nil)}}qe.checkDataType=zf;function Bf(t,e,r,s){if(t.length===1)return zf(t[0],e,r,s);let n,i=(0,f_.toHash)(t);if(i.array&&i.object){let a=(0,U._)`typeof ${e} != "object"`;n=i.null?a:(0,U._)`!${e} || ${a}`,delete i.null,delete i.array,delete i.object}else n=U.nil;i.number&&delete i.integer;for(let a in i)n=(0,U.and)(n,zf(a,e,r,s));return n}qe.checkDataTypes=Bf;var YI={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,U._)`{type: ${t}}`:(0,U._)`{type: ${e}}`};function Jf(t){let e=WI(t);(0,KI.reportError)(e,YI)}qe.reportTypeError=Jf;function WI(t){let{gen:e,data:r,schema:s}=t,n=(0,f_.schemaRefOrVal)(t,s,"type");return{gen:e,keyword:"type",data:r,schema:s.type,schemaCode:n,schemaValue:n,parentSchema:s,params:{},it:t}}});var g_=_(hc=>{"use strict";Object.defineProperty(hc,"__esModule",{value:!0});hc.assignDefaults=void 0;var bn=K(),ZI=te();function QI(t,e){let{properties:r,items:s}=t.schema;if(e==="object"&&r)for(let n in r)h_(t,n,r[n].default);else e==="array"&&Array.isArray(s)&&s.forEach((n,i)=>h_(t,i,n.default))}hc.assignDefaults=QI;function h_(t,e,r){let{gen:s,compositeRule:n,data:i,opts:a}=t;if(r===void 0)return;let o=(0,bn._)`${i}${(0,bn.getProperty)(e)}`;if(n){(0,ZI.checkStrictMode)(t,`default is ignored for: ${o}`);return}let c=(0,bn._)`${o} === undefined`;a.useDefaults==="empty"&&(c=(0,bn._)`${c} || ${o} === null || ${o} === ""`),s.if(c,(0,bn._)`${o} = ${(0,bn.stringify)(r)}`)}});var ft=_(le=>{"use strict";Object.defineProperty(le,"__esModule",{value:!0});le.validateUnion=le.validateArray=le.usePattern=le.callValidateCode=le.schemaProperties=le.allSchemaProperties=le.noPropertyInData=le.propertyInData=le.isOwnProperty=le.hasPropFunc=le.reportMissingProp=le.checkMissingProp=le.checkReportMissingProp=void 0;var he=K(),Hf=te(),Mr=ir(),XI=te();function eM(t,e){let{gen:r,data:s,it:n}=t;r.if(Yf(r,s,e,n.opts.ownProperties),()=>{t.setParams({missingProperty:(0,he._)`${e}`},!0),t.error()})}le.checkReportMissingProp=eM;function tM({gen:t,data:e,it:{opts:r}},s,n){return(0,he.or)(...s.map(i=>(0,he.and)(Yf(t,e,i,r.ownProperties),(0,he._)`${n} = ${i}`)))}le.checkMissingProp=tM;function rM(t,e){t.setParams({missingProperty:e},!0),t.error()}le.reportMissingProp=rM;function y_(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,he._)`Object.prototype.hasOwnProperty`})}le.hasPropFunc=y_;function Gf(t,e,r){return(0,he._)`${y_(t)}.call(${e}, ${r})`}le.isOwnProperty=Gf;function sM(t,e,r,s){let n=(0,he._)`${e}${(0,he.getProperty)(r)} !== undefined`;return s?(0,he._)`${n} && ${Gf(t,e,r)}`:n}le.propertyInData=sM;function Yf(t,e,r,s){let n=(0,he._)`${e}${(0,he.getProperty)(r)} === undefined`;return s?(0,he.or)(n,(0,he.not)(Gf(t,e,r))):n}le.noPropertyInData=Yf;function v_(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}le.allSchemaProperties=v_;function nM(t,e){return v_(e).filter(r=>!(0,Hf.alwaysValidSchema)(t,e[r]))}le.schemaProperties=nM;function iM({schemaCode:t,data:e,it:{gen:r,topSchemaRef:s,schemaPath:n,errorPath:i},it:a},o,c,l){let u=l?(0,he._)`${t}, ${e}, ${s}${n}`:e,d=[[Mr.default.instancePath,(0,he.strConcat)(Mr.default.instancePath,i)],[Mr.default.parentData,a.parentData],[Mr.default.parentDataProperty,a.parentDataProperty],[Mr.default.rootData,Mr.default.rootData]];a.opts.dynamicRef&&d.push([Mr.default.dynamicAnchors,Mr.default.dynamicAnchors]);let f=(0,he._)`${u}, ${r.object(...d)}`;return c!==he.nil?(0,he._)`${o}.call(${c}, ${f})`:(0,he._)`${o}(${f})`}le.callValidateCode=iM;var aM=(0,he._)`new RegExp`;function oM({gen:t,it:{opts:e}},r){let s=e.unicodeRegExp?"u":"",{regExp:n}=e.code,i=n(r,s);return t.scopeValue("pattern",{key:i.toString(),ref:i,code:(0,he._)`${n.code==="new RegExp"?aM:(0,XI.useFunc)(t,n)}(${r}, ${s})`})}le.usePattern=oM;function cM(t){let{gen:e,data:r,keyword:s,it:n}=t,i=e.name("valid");if(n.allErrors){let o=e.let("valid",!0);return a(()=>e.assign(o,!1)),o}return e.var(i,!0),a(()=>e.break()),i;function a(o){let c=e.const("len",(0,he._)`${r}.length`);e.forRange("i",0,c,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Hf.Type.Num},i),e.if((0,he.not)(i),o)})}}le.validateArray=cM;function lM(t){let{gen:e,schema:r,keyword:s,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Hf.alwaysValidSchema)(n,c))&&!n.opts.unevaluated)return;let a=e.let("valid",!1),o=e.name("_valid");e.block(()=>r.forEach((c,l)=>{let u=t.subschema({keyword:s,schemaProp:l,compositeRule:!0},o);e.assign(a,(0,he._)`${a} || ${o}`),t.mergeValidEvaluated(u,o)||e.if((0,he.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}le.validateUnion=lM});var w_=_(Ut=>{"use strict";Object.defineProperty(Ut,"__esModule",{value:!0});Ut.validateKeywordUsage=Ut.validSchemaType=Ut.funcKeywordCode=Ut.macroKeywordCode=void 0;var Ue=K(),Ns=ir(),uM=ft(),dM=Xi();function fM(t,e){let{gen:r,keyword:s,schema:n,parentSchema:i,it:a}=t,o=e.macro.call(a.self,n,i,a),c=b_(r,s,o);a.opts.validateSchema!==!1&&a.self.validateSchema(o,!0);let l=r.name("valid");t.subschema({schema:o,schemaPath:Ue.nil,errSchemaPath:`${a.errSchemaPath}/${s}`,topSchemaRef:c,compositeRule:!0},l),t.pass(l,()=>t.error(!0))}Ut.macroKeywordCode=fM;function pM(t,e){var r;let{gen:s,keyword:n,schema:i,parentSchema:a,$data:o,it:c}=t;hM(c,e);let l=!o&&e.compile?e.compile.call(c.self,i,a,c):e.validate,u=b_(s,n,l),d=s.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)m(),e.modifying&&__(t),g(()=>t.error());else{let h=e.async?p():y();e.modifying&&__(t),g(()=>mM(t,h))}}function p(){let h=s.let("ruleErrs",null);return s.try(()=>m((0,Ue._)`await `),v=>s.assign(d,!1).if((0,Ue._)`${v} instanceof ${c.ValidationError}`,()=>s.assign(h,(0,Ue._)`${v}.errors`),()=>s.throw(v))),h}function y(){let h=(0,Ue._)`${u}.errors`;return s.assign(h,null),m(Ue.nil),h}function m(h=e.async?(0,Ue._)`await `:Ue.nil){let v=c.opts.passContext?Ns.default.this:Ns.default.self,b=!("compile"in e&&!o||e.schema===!1);s.assign(d,(0,Ue._)`${h}${(0,uM.callValidateCode)(t,u,v,b)}`,e.modifying)}function g(h){var v;s.if((0,Ue.not)((v=e.valid)!==null&&v!==void 0?v:d),h)}}Ut.funcKeywordCode=pM;function __(t){let{gen:e,data:r,it:s}=t;e.if(s.parentData,()=>e.assign(r,(0,Ue._)`${s.parentData}[${s.parentDataProperty}]`))}function mM(t,e){let{gen:r}=t;r.if((0,Ue._)`Array.isArray(${e})`,()=>{r.assign(Ns.default.vErrors,(0,Ue._)`${Ns.default.vErrors} === null ? ${e} : ${Ns.default.vErrors}.concat(${e})`).assign(Ns.default.errors,(0,Ue._)`${Ns.default.vErrors}.length`),(0,dM.extendErrors)(t)},()=>t.error())}function hM({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function b_(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Ue.stringify)(r)})}function gM(t,e,r=!1){return!e.length||e.some(s=>s==="array"?Array.isArray(t):s==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==s||r&&typeof t>"u")}Ut.validSchemaType=gM;function yM({schema:t,opts:e,self:r,errSchemaPath:s},n,i){if(Array.isArray(n.keyword)?!n.keyword.includes(i):n.keyword!==i)throw new Error("ajv implementation error");let a=n.dependencies;if(a?.some(o=>!Object.prototype.hasOwnProperty.call(t,o)))throw new Error(`parent schema must have dependencies of ${i}: ${a.join(",")}`);if(n.validateSchema&&!n.validateSchema(t[i])){let c=`keyword "${i}" value is invalid at path "${s}": `+r.errorsText(n.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Ut.validateKeywordUsage=yM});var S_=_(xr=>{"use strict";Object.defineProperty(xr,"__esModule",{value:!0});xr.extendSubschemaMode=xr.extendSubschemaData=xr.getSubschema=void 0;var Vt=K(),$_=te();function vM(t,{keyword:e,schemaProp:r,schema:s,schemaPath:n,errSchemaPath:i,topSchemaRef:a}){if(e!==void 0&&s!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let o=t.schema[e];return r===void 0?{schema:o,schemaPath:(0,Vt._)`${t.schemaPath}${(0,Vt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:o[r],schemaPath:(0,Vt._)`${t.schemaPath}${(0,Vt.getProperty)(e)}${(0,Vt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,$_.escapeFragment)(r)}`}}if(s!==void 0){if(n===void 0||i===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:s,schemaPath:n,topSchemaRef:a,errSchemaPath:i}}throw new Error('either "keyword" or "schema" must be passed')}xr.getSubschema=vM;function _M(t,e,{dataProp:r,dataPropType:s,data:n,dataTypes:i,propertyName:a}){if(n!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:o}=e;if(r!==void 0){let{errorPath:l,dataPathArr:u,opts:d}=e,f=o.let("data",(0,Vt._)`${e.data}${(0,Vt.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Vt.str)`${l}${(0,$_.getErrorPath)(r,s,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Vt._)`${r}`,t.dataPathArr=[...u,t.parentDataProperty]}if(n!==void 0){let l=n instanceof Vt.Name?n:o.let("data",n,!0);c(l),a!==void 0&&(t.propertyName=a)}i&&(t.dataTypes=i);function c(l){t.data=l,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,l]}}xr.extendSubschemaData=_M;function bM(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:s,createErrors:n,allErrors:i}){s!==void 0&&(t.compositeRule=s),n!==void 0&&(t.createErrors=n),i!==void 0&&(t.allErrors=i),t.jtdDiscriminator=e,t.jtdMetadata=r}xr.extendSubschemaMode=bM});var E_=_((dK,k_)=>{"use strict";var jr=k_.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var s=typeof r=="function"?r:r.pre||function(){},n=r.post||function(){};gc(e,s,n,t,"",t)};jr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};jr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};jr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};jr.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function gc(t,e,r,s,n,i,a,o,c,l){if(s&&typeof s=="object"&&!Array.isArray(s)){e(s,n,i,a,o,c,l);for(var u in s){var d=s[u];if(Array.isArray(d)){if(u in jr.arrayKeywords)for(var f=0;f<d.length;f++)gc(t,e,r,d[f],n+"/"+u+"/"+f,i,n,u,s,f)}else if(u in jr.propsKeywords){if(d&&typeof d=="object")for(var p in d)gc(t,e,r,d[p],n+"/"+u+"/"+wM(p),i,n,u,s,p)}else(u in jr.keywords||t.allKeys&&!(u in jr.skipKeywords))&&gc(t,e,r,d,n+"/"+u,i,n,u,s)}r(s,n,i,a,o,c,l)}}function wM(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var ta=_(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.getSchemaRefs=Qe.resolveUrl=Qe.normalizeId=Qe._getFullPath=Qe.getFullPath=Qe.inlineRef=void 0;var $M=te(),SM=Ti(),kM=E_(),EM=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function TM(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Wf(t):e?T_(t)<=e:!1}Qe.inlineRef=TM;var NM=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Wf(t){for(let e in t){if(NM.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Wf)||typeof r=="object"&&Wf(r))return!0}return!1}function T_(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!EM.has(r)&&(typeof t[r]=="object"&&(0,$M.eachItem)(t[r],s=>e+=T_(s)),e===1/0))return 1/0}return e}function N_(t,e="",r){r!==!1&&(e=wn(e));let s=t.parse(e);return P_(t,s)}Qe.getFullPath=N_;function P_(t,e){return t.serialize(e).split("#")[0]+"#"}Qe._getFullPath=P_;var PM=/#\/?$/;function wn(t){return t?t.replace(PM,""):""}Qe.normalizeId=wn;function OM(t,e,r){return r=wn(r),t.resolve(e,r)}Qe.resolveUrl=OM;var CM=/^[a-z_][-a-z0-9._]*$/i;function AM(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:s}=this.opts,n=wn(t[r]||e),i={"":n},a=N_(s,n,!1),o={},c=new Set;return kM(t,{allKeys:!0},(d,f,p,y)=>{if(y===void 0)return;let m=a+f,g=i[y];typeof d[r]=="string"&&(g=h.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),i[f]=g;function h(b){let $=this.opts.uriResolver.resolve;if(b=wn(g?$(g,b):b),c.has(b))throw u(b);c.add(b);let w=this.refs[b];return typeof w=="string"&&(w=this.refs[w]),typeof w=="object"?l(d,w.schema,b):b!==wn(m)&&(b[0]==="#"?(l(d,o[b],b),o[b]=d):this.refs[b]=m),b}function v(b){if(typeof b=="string"){if(!CM.test(b))throw new Error(`invalid anchor "${b}"`);h.call(this,`#${b}`)}}}),o;function l(d,f,p){if(f!==void 0&&!SM(d,f))throw u(p)}function u(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Qe.getSchemaRefs=AM});var na=_(qr=>{"use strict";Object.defineProperty(qr,"__esModule",{value:!0});qr.getData=qr.KeywordCxt=qr.validateFunctionCode=void 0;var I_=l_(),O_=ea(),Qf=Kf(),yc=ea(),RM=g_(),sa=w_(),Zf=S_(),R=K(),q=ir(),IM=ta(),ar=te(),ra=Xi();function MM(t){if(j_(t)&&(q_(t),x_(t))){qM(t);return}M_(t,()=>(0,I_.topBoolOrEmptySchema)(t))}qr.validateFunctionCode=MM;function M_({gen:t,validateName:e,schema:r,schemaEnv:s,opts:n},i){n.code.es5?t.func(e,(0,R._)`${q.default.data}, ${q.default.valCxt}`,s.$async,()=>{t.code((0,R._)`"use strict"; ${C_(r,n)}`),jM(t,n),t.code(i)}):t.func(e,(0,R._)`${q.default.data}, ${xM(n)}`,s.$async,()=>t.code(C_(r,n)).code(i))}function xM(t){return(0,R._)`{${q.default.instancePath}="", ${q.default.parentData}, ${q.default.parentDataProperty}, ${q.default.rootData}=${q.default.data}${t.dynamicRef?(0,R._)`, ${q.default.dynamicAnchors}={}`:R.nil}}={}`}function jM(t,e){t.if(q.default.valCxt,()=>{t.var(q.default.instancePath,(0,R._)`${q.default.valCxt}.${q.default.instancePath}`),t.var(q.default.parentData,(0,R._)`${q.default.valCxt}.${q.default.parentData}`),t.var(q.default.parentDataProperty,(0,R._)`${q.default.valCxt}.${q.default.parentDataProperty}`),t.var(q.default.rootData,(0,R._)`${q.default.valCxt}.${q.default.rootData}`),e.dynamicRef&&t.var(q.default.dynamicAnchors,(0,R._)`${q.default.valCxt}.${q.default.dynamicAnchors}`)},()=>{t.var(q.default.instancePath,(0,R._)`""`),t.var(q.default.parentData,(0,R._)`undefined`),t.var(q.default.parentDataProperty,(0,R._)`undefined`),t.var(q.default.rootData,q.default.data),e.dynamicRef&&t.var(q.default.dynamicAnchors,(0,R._)`{}`)})}function qM(t){let{schema:e,opts:r,gen:s}=t;M_(t,()=>{r.$comment&&e.$comment&&L_(t),VM(t),s.let(q.default.vErrors,null),s.let(q.default.errors,0),r.unevaluated&&DM(t),D_(t),BM(t)})}function DM(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,R._)`${r}.evaluated`),e.if((0,R._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,R._)`${t.evaluated}.props`,(0,R._)`undefined`)),e.if((0,R._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,R._)`${t.evaluated}.items`,(0,R._)`undefined`))}function C_(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,R._)`/*# sourceURL=${r} */`:R.nil}function LM(t,e){if(j_(t)&&(q_(t),x_(t))){FM(t,e);return}(0,I_.boolOrEmptySchema)(t,e)}function x_({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function j_(t){return typeof t.schema!="boolean"}function FM(t,e){let{schema:r,gen:s,opts:n}=t;n.$comment&&r.$comment&&L_(t),KM(t),zM(t);let i=s.const("_errs",q.default.errors);D_(t,i),s.var(e,(0,R._)`${i} === ${q.default.errors}`)}function q_(t){(0,ar.checkUnknownRules)(t),UM(t)}function D_(t,e){if(t.opts.jtd)return A_(t,[],!1,e);let r=(0,O_.getSchemaTypes)(t.schema),s=(0,O_.coerceAndCheckDataType)(t,r);A_(t,r,!s,e)}function UM(t){let{schema:e,errSchemaPath:r,opts:s,self:n}=t;e.$ref&&s.ignoreKeywordsWithRef&&(0,ar.schemaHasRulesButRef)(e,n.RULES)&&n.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function VM(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,ar.checkStrictMode)(t,"default is ignored in the schema root")}function KM(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,IM.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function zM(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function L_({gen:t,schemaEnv:e,schema:r,errSchemaPath:s,opts:n}){let i=r.$comment;if(n.$comment===!0)t.code((0,R._)`${q.default.self}.logger.log(${i})`);else if(typeof n.$comment=="function"){let a=(0,R.str)`${s}/$comment`,o=t.scopeValue("root",{ref:e.root});t.code((0,R._)`${q.default.self}.opts.$comment(${i}, ${a}, ${o}.schema)`)}}function BM(t){let{gen:e,schemaEnv:r,validateName:s,ValidationError:n,opts:i}=t;r.$async?e.if((0,R._)`${q.default.errors} === 0`,()=>e.return(q.default.data),()=>e.throw((0,R._)`new ${n}(${q.default.vErrors})`)):(e.assign((0,R._)`${s}.errors`,q.default.vErrors),i.unevaluated&&JM(t),e.return((0,R._)`${q.default.errors} === 0`))}function JM({gen:t,evaluated:e,props:r,items:s}){r instanceof R.Name&&t.assign((0,R._)`${e}.props`,r),s instanceof R.Name&&t.assign((0,R._)`${e}.items`,s)}function A_(t,e,r,s){let{gen:n,schema:i,data:a,allErrors:o,opts:c,self:l}=t,{RULES:u}=l;if(i.$ref&&(c.ignoreKeywordsWithRef||!(0,ar.schemaHasRulesButRef)(i,u))){n.block(()=>U_(t,"$ref",u.all.$ref.definition));return}c.jtd||HM(t,e),n.block(()=>{for(let f of u.rules)d(f);d(u.post)});function d(f){(0,Qf.shouldUseGroup)(i,f)&&(f.type?(n.if((0,yc.checkDataType)(f.type,a,c.strictNumbers)),R_(t,f),e.length===1&&e[0]===f.type&&r&&(n.else(),(0,yc.reportTypeError)(t)),n.endIf()):R_(t,f),o||n.if((0,R._)`${q.default.errors} === ${s||0}`))}}function R_(t,e){let{gen:r,schema:s,opts:{useDefaults:n}}=t;n&&(0,RM.assignDefaults)(t,e.type),r.block(()=>{for(let i of e.rules)(0,Qf.shouldUseRule)(s,i)&&U_(t,i.keyword,i.definition,e.type)})}function HM(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(GM(t,e),t.opts.allowUnionTypes||YM(t,e),WM(t,t.dataTypes))}function GM(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{F_(t.dataTypes,r)||Xf(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),QM(t,e)}}function YM(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Xf(t,"use allowUnionTypes to allow union type keyword")}function WM(t,e){let r=t.self.RULES.all;for(let s in r){let n=r[s];if(typeof n=="object"&&(0,Qf.shouldUseRule)(t.schema,n)){let{type:i}=n.definition;i.length&&!i.some(a=>ZM(e,a))&&Xf(t,`missing type "${i.join(",")}" for keyword "${s}"`)}}}function ZM(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function F_(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function QM(t,e){let r=[];for(let s of t.dataTypes)F_(e,s)?r.push(s):e.includes("integer")&&s==="number"&&r.push("integer");t.dataTypes=r}function Xf(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,ar.checkStrictMode)(t,e,t.opts.strictTypes)}var vc=class{constructor(e,r,s){if((0,sa.validateKeywordUsage)(e,r,s),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=s,this.data=e.data,this.schema=e.schema[s],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,ar.schemaRefOrVal)(e,this.schema,s,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",V_(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,sa.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${s} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",q.default.errors))}result(e,r,s){this.failResult((0,R.not)(e),r,s)}failResult(e,r,s){this.gen.if(e),s?s():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,R.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,R._)`${r} !== undefined && (${(0,R.or)(this.invalid$data(),e)})`)}error(e,r,s){if(r){this.setParams(r),this._error(e,s),this.setParams({});return}this._error(e,s)}_error(e,r){(e?ra.reportExtraError:ra.reportError)(this,this.def.error,r)}$dataError(){(0,ra.reportError)(this,this.def.$dataError||ra.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,ra.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,s=R.nil){this.gen.block(()=>{this.check$data(e,s),r()})}check$data(e=R.nil,r=R.nil){if(!this.$data)return;let{gen:s,schemaCode:n,schemaType:i,def:a}=this;s.if((0,R.or)((0,R._)`${n} === undefined`,r)),e!==R.nil&&s.assign(e,!0),(i.length||a.validateSchema)&&(s.elseIf(this.invalid$data()),this.$dataError(),e!==R.nil&&s.assign(e,!1)),s.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:s,def:n,it:i}=this;return(0,R.or)(a(),o());function a(){if(s.length){if(!(r instanceof R.Name))throw new Error("ajv implementation error");let c=Array.isArray(s)?s:[s];return(0,R._)`${(0,yc.checkDataTypes)(c,r,i.opts.strictNumbers,yc.DataType.Wrong)}`}return R.nil}function o(){if(n.validateSchema){let c=e.scopeValue("validate$data",{ref:n.validateSchema});return(0,R._)`!${c}(${r})`}return R.nil}}subschema(e,r){let s=(0,Zf.getSubschema)(this.it,e);(0,Zf.extendSubschemaData)(s,this.it,e),(0,Zf.extendSubschemaMode)(s,e);let n={...this.it,...s,items:void 0,props:void 0};return LM(n,r),n}mergeEvaluated(e,r){let{it:s,gen:n}=this;s.opts.unevaluated&&(s.props!==!0&&e.props!==void 0&&(s.props=ar.mergeEvaluated.props(n,e.props,s.props,r)),s.items!==!0&&e.items!==void 0&&(s.items=ar.mergeEvaluated.items(n,e.items,s.items,r)))}mergeValidEvaluated(e,r){let{it:s,gen:n}=this;if(s.opts.unevaluated&&(s.props!==!0||s.items!==!0))return n.if(r,()=>this.mergeEvaluated(e,R.Name)),!0}};qr.KeywordCxt=vc;function U_(t,e,r,s){let n=new vc(t,r,e);"code"in r?r.code(n,s):n.$data&&r.validate?(0,sa.funcKeywordCode)(n,r):"macro"in r?(0,sa.macroKeywordCode)(n,r):(r.compile||r.validate)&&(0,sa.funcKeywordCode)(n,r)}var XM=/^\/(?:[^~]|~0|~1)*$/,ex=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function V_(t,{dataLevel:e,dataNames:r,dataPathArr:s}){let n,i;if(t==="")return q.default.rootData;if(t[0]==="/"){if(!XM.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);n=t,i=q.default.rootData}else{let l=ex.exec(t);if(!l)throw new Error(`Invalid JSON-pointer: ${t}`);let u=+l[1];if(n=l[2],n==="#"){if(u>=e)throw new Error(c("property/index",u));return s[e-u]}if(u>e)throw new Error(c("data",u));if(i=r[e-u],!n)return i}let a=i,o=n.split("/");for(let l of o)l&&(i=(0,R._)`${i}${(0,R.getProperty)((0,ar.unescapeJsonPointer)(l))}`,a=(0,R._)`${a} && ${i}`);return a;function c(l,u){return`Cannot access ${l} ${u} levels up, current level is ${e}`}}qr.getData=V_});var _c=_(tp=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});var ep=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};tp.default=ep});var ia=_(np=>{"use strict";Object.defineProperty(np,"__esModule",{value:!0});var rp=ta(),sp=class extends Error{constructor(e,r,s,n){super(n||`can't resolve reference ${s} from id ${r}`),this.missingRef=(0,rp.resolveUrl)(e,r,s),this.missingSchema=(0,rp.normalizeId)((0,rp.getFullPath)(e,this.missingRef))}};np.default=sp});var wc=_(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.resolveSchema=pt.getCompilingSchema=pt.resolveRef=pt.compileSchema=pt.SchemaEnv=void 0;var Et=K(),tx=_c(),Ps=ir(),Tt=ta(),K_=te(),rx=na(),$n=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let s;typeof e.schema=="object"&&(s=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,Tt.normalizeId)(s?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=s?.$async,this.refs={}}};pt.SchemaEnv=$n;function ap(t){let e=z_.call(this,t);if(e)return e;let r=(0,Tt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:s,lines:n}=this.opts.code,{ownProperties:i}=this.opts,a=new Et.CodeGen(this.scope,{es5:s,lines:n,ownProperties:i}),o;t.$async&&(o=a.scopeValue("Error",{ref:tx.default,code:(0,Et._)`require("ajv/dist/runtime/validation_error").default`}));let c=a.scopeName("validate");t.validateName=c;let l={gen:a,allErrors:this.opts.allErrors,data:Ps.default.data,parentData:Ps.default.parentData,parentDataProperty:Ps.default.parentDataProperty,dataNames:[Ps.default.data],dataPathArr:[Et.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Et.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:o,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Et.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Et._)`""`,opts:this.opts,self:this},u;try{this._compilations.add(t),(0,rx.validateFunctionCode)(l),a.optimize(this.opts.code.optimize);let d=a.toString();u=`${a.scopeRefs(Ps.default.scope)}return ${d}`,this.opts.code.process&&(u=this.opts.code.process(u,t));let p=new Function(`${Ps.default.self}`,`${Ps.default.scope}`,u)(this,this.scope.get());if(this.scope.value(c,{ref:p}),p.errors=null,p.schema=t.schema,p.schemaEnv=t,t.$async&&(p.$async=!0),this.opts.code.source===!0&&(p.source={validateName:c,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:y,items:m}=l;p.evaluated={props:y instanceof Et.Name?void 0:y,items:m instanceof Et.Name?void 0:m,dynamicProps:y instanceof Et.Name,dynamicItems:m instanceof Et.Name},p.source&&(p.source.evaluated=(0,Et.stringify)(p.evaluated))}return t.validate=p,t}catch(d){throw delete t.validate,delete t.validateName,u&&this.logger.error("Error compiling schema, function code:",u),d}finally{this._compilations.delete(t)}}pt.compileSchema=ap;function sx(t,e,r){var s;r=(0,Tt.resolveUrl)(this.opts.uriResolver,e,r);let n=t.refs[r];if(n)return n;let i=ax.call(this,t,r);if(i===void 0){let a=(s=t.localRefs)===null||s===void 0?void 0:s[r],{schemaId:o}=this.opts;a&&(i=new $n({schema:a,schemaId:o,root:t,baseId:e}))}if(i!==void 0)return t.refs[r]=nx.call(this,i)}pt.resolveRef=sx;function nx(t){return(0,Tt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:ap.call(this,t)}function z_(t){for(let e of this._compilations)if(ix(e,t))return e}pt.getCompilingSchema=z_;function ix(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function ax(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||bc.call(this,t,e)}function bc(t,e){let r=this.opts.uriResolver.parse(e),s=(0,Tt._getFullPath)(this.opts.uriResolver,r),n=(0,Tt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&s===n)return ip.call(this,r,t);let i=(0,Tt.normalizeId)(s),a=this.refs[i]||this.schemas[i];if(typeof a=="string"){let o=bc.call(this,t,a);return typeof o?.schema!="object"?void 0:ip.call(this,r,o)}if(typeof a?.schema=="object"){if(a.validate||ap.call(this,a),i===(0,Tt.normalizeId)(e)){let{schema:o}=a,{schemaId:c}=this.opts,l=o[c];return l&&(n=(0,Tt.resolveUrl)(this.opts.uriResolver,n,l)),new $n({schema:o,schemaId:c,root:t,baseId:n})}return ip.call(this,r,a)}}pt.resolveSchema=bc;var ox=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function ip(t,{baseId:e,schema:r,root:s}){var n;if(((n=t.fragment)===null||n===void 0?void 0:n[0])!=="/")return;for(let o of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,K_.unescapeFragment)(o)];if(c===void 0)return;r=c;let l=typeof r=="object"&&r[this.opts.schemaId];!ox.has(o)&&l&&(e=(0,Tt.resolveUrl)(this.opts.uriResolver,e,l))}let i;if(typeof r!="boolean"&&r.$ref&&!(0,K_.schemaHasRulesButRef)(r,this.RULES)){let o=(0,Tt.resolveUrl)(this.opts.uriResolver,e,r.$ref);i=bc.call(this,s,o)}let{schemaId:a}=this.opts;if(i=i||new $n({schema:r,schemaId:a,root:s,baseId:e}),i.schema!==i.root.schema)return i}});var B_=_((yK,cx)=>{cx.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var H_=_(op=>{"use strict";Object.defineProperty(op,"__esModule",{value:!0});var J_=$d();J_.code='require("ajv/dist/runtime/uri").default';op.default=J_});var tb=_(Oe=>{"use strict";Object.defineProperty(Oe,"__esModule",{value:!0});Oe.CodeGen=Oe.Name=Oe.nil=Oe.stringify=Oe.str=Oe._=Oe.KeywordCxt=void 0;var lx=na();Object.defineProperty(Oe,"KeywordCxt",{enumerable:!0,get:function(){return lx.KeywordCxt}});var Sn=K();Object.defineProperty(Oe,"_",{enumerable:!0,get:function(){return Sn._}});Object.defineProperty(Oe,"str",{enumerable:!0,get:function(){return Sn.str}});Object.defineProperty(Oe,"stringify",{enumerable:!0,get:function(){return Sn.stringify}});Object.defineProperty(Oe,"nil",{enumerable:!0,get:function(){return Sn.nil}});Object.defineProperty(Oe,"Name",{enumerable:!0,get:function(){return Sn.Name}});Object.defineProperty(Oe,"CodeGen",{enumerable:!0,get:function(){return Sn.CodeGen}});var ux=_c(),Q_=ia(),dx=Vf(),aa=wc(),fx=K(),oa=ta(),$c=ea(),lp=te(),G_=B_(),px=H_(),X_=(t,e)=>new RegExp(t,e);X_.code="new RegExp";var mx=["removeAdditional","useDefaults","coerceTypes"],hx=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),gx={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},yx={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Y_=200;function vx(t){var e,r,s,n,i,a,o,c,l,u,d,f,p,y,m,g,h,v,b,$,w,k,N,T,se;let ve=t.strict,ke=(e=t.code)===null||e===void 0?void 0:e.optimize,D=ke===!0||ke===void 0?1:ke||0,ue=(s=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&s!==void 0?s:X_,tt=(n=t.uriResolver)!==null&&n!==void 0?n:px.default;return{strictSchema:(a=(i=t.strictSchema)!==null&&i!==void 0?i:ve)!==null&&a!==void 0?a:!0,strictNumbers:(c=(o=t.strictNumbers)!==null&&o!==void 0?o:ve)!==null&&c!==void 0?c:!0,strictTypes:(u=(l=t.strictTypes)!==null&&l!==void 0?l:ve)!==null&&u!==void 0?u:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:ve)!==null&&f!==void 0?f:"log",strictRequired:(y=(p=t.strictRequired)!==null&&p!==void 0?p:ve)!==null&&y!==void 0?y:!1,code:t.code?{...t.code,optimize:D,regExp:ue}:{optimize:D,regExp:ue},loopRequired:(m=t.loopRequired)!==null&&m!==void 0?m:Y_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Y_,meta:(h=t.meta)!==null&&h!==void 0?h:!0,messages:(v=t.messages)!==null&&v!==void 0?v:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:($=t.schemaId)!==null&&$!==void 0?$:"$id",addUsedSchema:(w=t.addUsedSchema)!==null&&w!==void 0?w:!0,validateSchema:(k=t.validateSchema)!==null&&k!==void 0?k:!0,validateFormats:(N=t.validateFormats)!==null&&N!==void 0?N:!0,unicodeRegExp:(T=t.unicodeRegExp)!==null&&T!==void 0?T:!0,int32range:(se=t.int32range)!==null&&se!==void 0?se:!0,uriResolver:tt}}var ca=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...vx(e)};let{es5:r,lines:s}=this.opts.code;this.scope=new fx.ValueScope({scope:{},prefixes:hx,es5:r,lines:s}),this.logger=kx(e.logger);let n=e.validateFormats;e.validateFormats=!1,this.RULES=(0,dx.getRules)(),W_.call(this,gx,e,"NOT SUPPORTED"),W_.call(this,yx,e,"DEPRECATED","warn"),this._metaOpts=$x.call(this),e.formats&&bx.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&wx.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),_x.call(this),e.validateFormats=n}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:s}=this.opts,n=G_;s==="id"&&(n={...G_},n.id=n.$id,delete n.$id),r&&e&&this.addMetaSchema(n,n[s],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let s;if(typeof e=="string"){if(s=this.getSchema(e),!s)throw new Error(`no schema with key or ref "${e}"`)}else s=this.compile(e);let n=s(r);return"$async"in s||(this.errors=s.errors),n}compile(e,r){let s=this._addSchema(e,r);return s.validate||this._compileSchemaEnv(s)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:s}=this.opts;return n.call(this,e,r);async function n(u,d){await i.call(this,u.$schema);let f=this._addSchema(u,d);return f.validate||a.call(this,f)}async function i(u){u&&!this.getSchema(u)&&await n.call(this,{$ref:u},!0)}async function a(u){try{return this._compileSchemaEnv(u)}catch(d){if(!(d instanceof Q_.default))throw d;return o.call(this,d),await c.call(this,d.missingSchema),a.call(this,u)}}function o({missingSchema:u,missingRef:d}){if(this.refs[u])throw new Error(`AnySchema ${u} is loaded but ${d} cannot be resolved`)}async function c(u){let d=await l.call(this,u);this.refs[u]||await i.call(this,d.$schema),this.refs[u]||this.addSchema(d,u,r)}async function l(u){let d=this._loading[u];if(d)return d;try{return await(this._loading[u]=s(u))}finally{delete this._loading[u]}}}addSchema(e,r,s,n=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,s,n);return this}let i;if(typeof e=="object"){let{schemaId:a}=this.opts;if(i=e[a],i!==void 0&&typeof i!="string")throw new Error(`schema ${a} must be string`)}return r=(0,oa.normalizeId)(r||i),this._checkUnique(r),this.schemas[r]=this._addSchema(e,s,r,n,!0),this}addMetaSchema(e,r,s=this.opts.validateSchema){return this.addSchema(e,r,!0,s),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let s;if(s=e.$schema,s!==void 0&&typeof s!="string")throw new Error("$schema must be a string");if(s=s||this.opts.defaultMeta||this.defaultMeta(),!s)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let n=this.validate(s,e);if(!n&&r){let i="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(i);else throw new Error(i)}return n}getSchema(e){let r;for(;typeof(r=Z_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:s}=this.opts,n=new aa.SchemaEnv({schema:{},schemaId:s});if(r=aa.resolveSchema.call(this,n,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Z_.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let s=e[this.opts.schemaId];return s&&(s=(0,oa.normalizeId)(s),delete this.schemas[s],delete this.refs[s]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let s;if(typeof e=="string")s=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=s);else if(typeof e=="object"&&r===void 0){if(r=e,s=r.keyword,Array.isArray(s)&&!s.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Tx.call(this,s,r),!r)return(0,lp.eachItem)(s,i=>cp.call(this,i)),this;Px.call(this,r);let n={...r,type:(0,$c.getJSONTypes)(r.type),schemaType:(0,$c.getJSONTypes)(r.schemaType)};return(0,lp.eachItem)(s,n.type.length===0?i=>cp.call(this,i,n):i=>n.type.forEach(a=>cp.call(this,i,n,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let s of r.rules){let n=s.rules.findIndex(i=>i.keyword===e);n>=0&&s.rules.splice(n,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:s="data"}={}){return!e||e.length===0?"No errors":e.map(n=>`${s}${n.instancePath} ${n.message}`).reduce((n,i)=>n+r+i)}$dataMetaSchema(e,r){let s=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let n of r){let i=n.split("/").slice(1),a=e;for(let o of i)a=a[o];for(let o in s){let c=s[o];if(typeof c!="object")continue;let{$data:l}=c.definition,u=a[o];l&&u&&(a[o]=eb(u))}}return e}_removeAllSchemas(e,r){for(let s in e){let n=e[s];(!r||r.test(s))&&(typeof n=="string"?delete e[s]:n&&!n.meta&&(this._cache.delete(n.schema),delete e[s]))}}_addSchema(e,r,s,n=this.opts.validateSchema,i=this.opts.addUsedSchema){let a,{schemaId:o}=this.opts;if(typeof e=="object")a=e[o];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;s=(0,oa.normalizeId)(a||s);let l=oa.getSchemaRefs.call(this,e,s);return c=new aa.SchemaEnv({schema:e,schemaId:o,meta:r,baseId:s,localRefs:l}),this._cache.set(c.schema,c),i&&!s.startsWith("#")&&(s&&this._checkUnique(s),this.refs[s]=c),n&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):aa.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{aa.compileSchema.call(this,e)}finally{this.opts=r}}};ca.ValidationError=ux.default;ca.MissingRefError=Q_.default;Oe.default=ca;function W_(t,e,r,s="error"){for(let n in t){let i=n;i in e&&this.logger[s](`${r}: option ${n}. ${t[i]}`)}}function Z_(t){return t=(0,oa.normalizeId)(t),this.schemas[t]||this.refs[t]}function _x(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function bx(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function wx(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function $x(){let t={...this.opts};for(let e of mx)delete t[e];return t}var Sx={log(){},warn(){},error(){}};function kx(t){if(t===!1)return Sx;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var Ex=/^[a-z_$][a-z0-9_$:-]*$/i;function Tx(t,e){let{RULES:r}=this;if((0,lp.eachItem)(t,s=>{if(r.keywords[s])throw new Error(`Keyword ${s} is already defined`);if(!Ex.test(s))throw new Error(`Keyword ${s} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function cp(t,e,r){var s;let n=e?.post;if(r&&n)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:i}=this,a=n?i.post:i.rules.find(({type:c})=>c===r);if(a||(a={type:r,rules:[]},i.rules.push(a)),i.keywords[t]=!0,!e)return;let o={keyword:t,definition:{...e,type:(0,$c.getJSONTypes)(e.type),schemaType:(0,$c.getJSONTypes)(e.schemaType)}};e.before?Nx.call(this,a,o,e.before):a.rules.push(o),i.all[t]=o,(s=e.implements)===null||s===void 0||s.forEach(c=>this.addKeyword(c))}function Nx(t,e,r){let s=t.rules.findIndex(n=>n.keyword===r);s>=0?t.rules.splice(s,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function Px(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=eb(e)),t.validateSchema=this.compile(e,!0))}var Ox={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function eb(t){return{anyOf:[t,Ox]}}});var rb=_(up=>{"use strict";Object.defineProperty(up,"__esModule",{value:!0});var Cx={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};up.default=Cx});var ab=_(Os=>{"use strict";Object.defineProperty(Os,"__esModule",{value:!0});Os.callRef=Os.getValidate=void 0;var Ax=ia(),sb=ft(),Xe=K(),kn=ir(),nb=wc(),Sc=te(),Rx={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:s}=t,{baseId:n,schemaEnv:i,validateName:a,opts:o,self:c}=s,{root:l}=i;if((r==="#"||r==="#/")&&n===l.baseId)return d();let u=nb.resolveRef.call(c,l,n,r);if(u===void 0)throw new Ax.default(s.opts.uriResolver,n,r);if(u instanceof nb.SchemaEnv)return f(u);return p(u);function d(){if(i===l)return kc(t,a,i,i.$async);let y=e.scopeValue("root",{ref:l});return kc(t,(0,Xe._)`${y}.validate`,l,l.$async)}function f(y){let m=ib(t,y);kc(t,m,y,y.$async)}function p(y){let m=e.scopeValue("schema",o.code.source===!0?{ref:y,code:(0,Xe.stringify)(y)}:{ref:y}),g=e.name("valid"),h=t.subschema({schema:y,dataTypes:[],schemaPath:Xe.nil,topSchemaRef:m,errSchemaPath:r},g);t.mergeEvaluated(h),t.ok(g)}}};function ib(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Xe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Os.getValidate=ib;function kc(t,e,r,s){let{gen:n,it:i}=t,{allErrors:a,schemaEnv:o,opts:c}=i,l=c.passContext?kn.default.this:Xe.nil;s?u():d();function u(){if(!o.$async)throw new Error("async schema referenced by sync schema");let y=n.let("valid");n.try(()=>{n.code((0,Xe._)`await ${(0,sb.callValidateCode)(t,e,l)}`),p(e),a||n.assign(y,!0)},m=>{n.if((0,Xe._)`!(${m} instanceof ${i.ValidationError})`,()=>n.throw(m)),f(m),a||n.assign(y,!1)}),t.ok(y)}function d(){t.result((0,sb.callValidateCode)(t,e,l),()=>p(e),()=>f(e))}function f(y){let m=(0,Xe._)`${y}.errors`;n.assign(kn.default.vErrors,(0,Xe._)`${kn.default.vErrors} === null ? ${m} : ${kn.default.vErrors}.concat(${m})`),n.assign(kn.default.errors,(0,Xe._)`${kn.default.vErrors}.length`)}function p(y){var m;if(!i.opts.unevaluated)return;let g=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(i.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(i.props=Sc.mergeEvaluated.props(n,g.props,i.props));else{let h=n.var("props",(0,Xe._)`${y}.evaluated.props`);i.props=Sc.mergeEvaluated.props(n,h,i.props,Xe.Name)}if(i.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(i.items=Sc.mergeEvaluated.items(n,g.items,i.items));else{let h=n.var("items",(0,Xe._)`${y}.evaluated.items`);i.items=Sc.mergeEvaluated.items(n,h,i.items,Xe.Name)}}}Os.callRef=kc;Os.default=Rx});var ob=_(dp=>{"use strict";Object.defineProperty(dp,"__esModule",{value:!0});var Ix=rb(),Mx=ab(),xx=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Ix.default,Mx.default];dp.default=xx});var cb=_(fp=>{"use strict";Object.defineProperty(fp,"__esModule",{value:!0});var Ec=K(),Dr=Ec.operators,Tc={maximum:{okStr:"<=",ok:Dr.LTE,fail:Dr.GT},minimum:{okStr:">=",ok:Dr.GTE,fail:Dr.LT},exclusiveMaximum:{okStr:"<",ok:Dr.LT,fail:Dr.GTE},exclusiveMinimum:{okStr:">",ok:Dr.GT,fail:Dr.LTE}},jx={message:({keyword:t,schemaCode:e})=>(0,Ec.str)`must be ${Tc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ec._)`{comparison: ${Tc[t].okStr}, limit: ${e}}`},qx={keyword:Object.keys(Tc),type:"number",schemaType:"number",$data:!0,error:jx,code(t){let{keyword:e,data:r,schemaCode:s}=t;t.fail$data((0,Ec._)`${r} ${Tc[e].fail} ${s} || isNaN(${r})`)}};fp.default=qx});var lb=_(pp=>{"use strict";Object.defineProperty(pp,"__esModule",{value:!0});var la=K(),Dx={message:({schemaCode:t})=>(0,la.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,la._)`{multipleOf: ${t}}`},Lx={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:Dx,code(t){let{gen:e,data:r,schemaCode:s,it:n}=t,i=n.opts.multipleOfPrecision,a=e.let("res"),o=i?(0,la._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${i}`:(0,la._)`${a} !== parseInt(${a})`;t.fail$data((0,la._)`(${s} === 0 || (${a} = ${r}/${s}, ${o}))`)}};pp.default=Lx});var db=_(mp=>{"use strict";Object.defineProperty(mp,"__esModule",{value:!0});function ub(t){let e=t.length,r=0,s=0,n;for(;s<e;)r++,n=t.charCodeAt(s++),n>=55296&&n<=56319&&s<e&&(n=t.charCodeAt(s),(n&64512)===56320&&s++);return r}mp.default=ub;ub.code='require("ajv/dist/runtime/ucs2length").default'});var fb=_(hp=>{"use strict";Object.defineProperty(hp,"__esModule",{value:!0});var Cs=K(),Fx=te(),Ux=db(),Vx={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Cs.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Cs._)`{limit: ${t}}`},Kx={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:Vx,code(t){let{keyword:e,data:r,schemaCode:s,it:n}=t,i=e==="maxLength"?Cs.operators.GT:Cs.operators.LT,a=n.opts.unicode===!1?(0,Cs._)`${r}.length`:(0,Cs._)`${(0,Fx.useFunc)(t.gen,Ux.default)}(${r})`;t.fail$data((0,Cs._)`${a} ${i} ${s}`)}};hp.default=Kx});var pb=_(gp=>{"use strict";Object.defineProperty(gp,"__esModule",{value:!0});var zx=ft(),Bx=te(),En=K(),Jx={message:({schemaCode:t})=>(0,En.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,En._)`{pattern: ${t}}`},Hx={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:Jx,code(t){let{gen:e,data:r,$data:s,schema:n,schemaCode:i,it:a}=t,o=a.opts.unicodeRegExp?"u":"";if(s){let{regExp:c}=a.opts.code,l=c.code==="new RegExp"?(0,En._)`new RegExp`:(0,Bx.useFunc)(e,c),u=e.let("valid");e.try(()=>e.assign(u,(0,En._)`${l}(${i}, ${o}).test(${r})`),()=>e.assign(u,!1)),t.fail$data((0,En._)`!${u}`)}else{let c=(0,zx.usePattern)(t,n);t.fail$data((0,En._)`!${c}.test(${r})`)}}};gp.default=Hx});var mb=_(yp=>{"use strict";Object.defineProperty(yp,"__esModule",{value:!0});var ua=K(),Gx={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,ua.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,ua._)`{limit: ${t}}`},Yx={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:Gx,code(t){let{keyword:e,data:r,schemaCode:s}=t,n=e==="maxProperties"?ua.operators.GT:ua.operators.LT;t.fail$data((0,ua._)`Object.keys(${r}).length ${n} ${s}`)}};yp.default=Yx});var hb=_(vp=>{"use strict";Object.defineProperty(vp,"__esModule",{value:!0});var da=ft(),fa=K(),Wx=te(),Zx={message:({params:{missingProperty:t}})=>(0,fa.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,fa._)`{missingProperty: ${t}}`},Qx={keyword:"required",type:"object",schemaType:"array",$data:!0,error:Zx,code(t){let{gen:e,schema:r,schemaCode:s,data:n,$data:i,it:a}=t,{opts:o}=a;if(!i&&r.length===0)return;let c=r.length>=o.loopRequired;if(a.allErrors?l():u(),o.strictRequired){let p=t.parentSchema.properties,{definedProperties:y}=t.it;for(let m of r)if(p?.[m]===void 0&&!y.has(m)){let g=a.schemaEnv.baseId+a.errSchemaPath,h=`required property "${m}" is not defined at "${g}" (strictRequired)`;(0,Wx.checkStrictMode)(a,h,a.opts.strictRequired)}}function l(){if(c||i)t.block$data(fa.nil,d);else for(let p of r)(0,da.checkReportMissingProp)(t,p)}function u(){let p=e.let("missing");if(c||i){let y=e.let("valid",!0);t.block$data(y,()=>f(p,y)),t.ok(y)}else e.if((0,da.checkMissingProp)(t,r,p)),(0,da.reportMissingProp)(t,p),e.else()}function d(){e.forOf("prop",s,p=>{t.setParams({missingProperty:p}),e.if((0,da.noPropertyInData)(e,n,p,o.ownProperties),()=>t.error())})}function f(p,y){t.setParams({missingProperty:p}),e.forOf(p,s,()=>{e.assign(y,(0,da.propertyInData)(e,n,p,o.ownProperties)),e.if((0,fa.not)(y),()=>{t.error(),e.break()})},fa.nil)}}};vp.default=Qx});var gb=_(_p=>{"use strict";Object.defineProperty(_p,"__esModule",{value:!0});var pa=K(),Xx={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,pa.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,pa._)`{limit: ${t}}`},ej={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:Xx,code(t){let{keyword:e,data:r,schemaCode:s}=t,n=e==="maxItems"?pa.operators.GT:pa.operators.LT;t.fail$data((0,pa._)`${r}.length ${n} ${s}`)}};_p.default=ej});var Nc=_(bp=>{"use strict";Object.defineProperty(bp,"__esModule",{value:!0});var yb=Ti();yb.code='require("ajv/dist/runtime/equal").default';bp.default=yb});var vb=_($p=>{"use strict";Object.defineProperty($p,"__esModule",{value:!0});var wp=ea(),Ce=K(),tj=te(),rj=Nc(),sj={message:({params:{i:t,j:e}})=>(0,Ce.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ce._)`{i: ${t}, j: ${e}}`},nj={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:sj,code(t){let{gen:e,data:r,$data:s,schema:n,parentSchema:i,schemaCode:a,it:o}=t;if(!s&&!n)return;let c=e.let("valid"),l=i.items?(0,wp.getSchemaTypes)(i.items):[];t.block$data(c,u,(0,Ce._)`${a} === false`),t.ok(c);function u(){let y=e.let("i",(0,Ce._)`${r}.length`),m=e.let("j");t.setParams({i:y,j:m}),e.assign(c,!0),e.if((0,Ce._)`${y} > 1`,()=>(d()?f:p)(y,m))}function d(){return l.length>0&&!l.some(y=>y==="object"||y==="array")}function f(y,m){let g=e.name("item"),h=(0,wp.checkDataTypes)(l,g,o.opts.strictNumbers,wp.DataType.Wrong),v=e.const("indices",(0,Ce._)`{}`);e.for((0,Ce._)`;${y}--;`,()=>{e.let(g,(0,Ce._)`${r}[${y}]`),e.if(h,(0,Ce._)`continue`),l.length>1&&e.if((0,Ce._)`typeof ${g} == "string"`,(0,Ce._)`${g} += "_"`),e.if((0,Ce._)`typeof ${v}[${g}] == "number"`,()=>{e.assign(m,(0,Ce._)`${v}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ce._)`${v}[${g}] = ${y}`)})}function p(y,m){let g=(0,tj.useFunc)(e,rj.default),h=e.name("outer");e.label(h).for((0,Ce._)`;${y}--;`,()=>e.for((0,Ce._)`${m} = ${y}; ${m}--;`,()=>e.if((0,Ce._)`${g}(${r}[${y}], ${r}[${m}])`,()=>{t.error(),e.assign(c,!1).break(h)})))}}};$p.default=nj});var _b=_(kp=>{"use strict";Object.defineProperty(kp,"__esModule",{value:!0});var Sp=K(),ij=te(),aj=Nc(),oj={message:"must be equal to constant",params:({schemaCode:t})=>(0,Sp._)`{allowedValue: ${t}}`},cj={keyword:"const",$data:!0,error:oj,code(t){let{gen:e,data:r,$data:s,schemaCode:n,schema:i}=t;s||i&&typeof i=="object"?t.fail$data((0,Sp._)`!${(0,ij.useFunc)(e,aj.default)}(${r}, ${n})`):t.fail((0,Sp._)`${i} !== ${r}`)}};kp.default=cj});var bb=_(Ep=>{"use strict";Object.defineProperty(Ep,"__esModule",{value:!0});var ma=K(),lj=te(),uj=Nc(),dj={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,ma._)`{allowedValues: ${t}}`},fj={keyword:"enum",schemaType:"array",$data:!0,error:dj,code(t){let{gen:e,data:r,$data:s,schema:n,schemaCode:i,it:a}=t;if(!s&&n.length===0)throw new Error("enum must have non-empty array");let o=n.length>=a.opts.loopEnum,c,l=()=>c??(c=(0,lj.useFunc)(e,uj.default)),u;if(o||s)u=e.let("valid"),t.block$data(u,d);else{if(!Array.isArray(n))throw new Error("ajv implementation error");let p=e.const("vSchema",i);u=(0,ma.or)(...n.map((y,m)=>f(p,m)))}t.pass(u);function d(){e.assign(u,!1),e.forOf("v",i,p=>e.if((0,ma._)`${l()}(${r}, ${p})`,()=>e.assign(u,!0).break()))}function f(p,y){let m=n[y];return typeof m=="object"&&m!==null?(0,ma._)`${l()}(${r}, ${p}[${y}])`:(0,ma._)`${r} === ${m}`}}};Ep.default=fj});var wb=_(Tp=>{"use strict";Object.defineProperty(Tp,"__esModule",{value:!0});var pj=cb(),mj=lb(),hj=fb(),gj=pb(),yj=mb(),vj=hb(),_j=gb(),bj=vb(),wj=_b(),$j=bb(),Sj=[pj.default,mj.default,hj.default,gj.default,yj.default,vj.default,_j.default,bj.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},wj.default,$j.default];Tp.default=Sj});var Pp=_(ha=>{"use strict";Object.defineProperty(ha,"__esModule",{value:!0});ha.validateAdditionalItems=void 0;var As=K(),Np=te(),kj={message:({params:{len:t}})=>(0,As.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,As._)`{limit: ${t}}`},Ej={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:kj,code(t){let{parentSchema:e,it:r}=t,{items:s}=e;if(!Array.isArray(s)){(0,Np.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}$b(t,s)}};function $b(t,e){let{gen:r,schema:s,data:n,keyword:i,it:a}=t;a.items=!0;let o=r.const("len",(0,As._)`${n}.length`);if(s===!1)t.setParams({len:e.length}),t.pass((0,As._)`${o} <= ${e.length}`);else if(typeof s=="object"&&!(0,Np.alwaysValidSchema)(a,s)){let l=r.var("valid",(0,As._)`${o} <= ${e.length}`);r.if((0,As.not)(l),()=>c(l)),t.ok(l)}function c(l){r.forRange("i",e.length,o,u=>{t.subschema({keyword:i,dataProp:u,dataPropType:Np.Type.Num},l),a.allErrors||r.if((0,As.not)(l),()=>r.break())})}}ha.validateAdditionalItems=$b;ha.default=Ej});var Op=_(ga=>{"use strict";Object.defineProperty(ga,"__esModule",{value:!0});ga.validateTuple=void 0;var Sb=K(),Pc=te(),Tj=ft(),Nj={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return kb(t,"additionalItems",e);r.items=!0,!(0,Pc.alwaysValidSchema)(r,e)&&t.ok((0,Tj.validateArray)(t))}};function kb(t,e,r=t.schema){let{gen:s,parentSchema:n,data:i,keyword:a,it:o}=t;u(n),o.opts.unevaluated&&r.length&&o.items!==!0&&(o.items=Pc.mergeEvaluated.items(s,r.length,o.items));let c=s.name("valid"),l=s.const("len",(0,Sb._)`${i}.length`);r.forEach((d,f)=>{(0,Pc.alwaysValidSchema)(o,d)||(s.if((0,Sb._)`${l} > ${f}`,()=>t.subschema({keyword:a,schemaProp:f,dataProp:f},c)),t.ok(c))});function u(d){let{opts:f,errSchemaPath:p}=o,y=r.length,m=y===d.minItems&&(y===d.maxItems||d[e]===!1);if(f.strictTuples&&!m){let g=`"${a}" is ${y}-tuple, but minItems or maxItems/${e} are not specified or different at path "${p}"`;(0,Pc.checkStrictMode)(o,g,f.strictTuples)}}}ga.validateTuple=kb;ga.default=Nj});var Eb=_(Cp=>{"use strict";Object.defineProperty(Cp,"__esModule",{value:!0});var Pj=Op(),Oj={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,Pj.validateTuple)(t,"items")};Cp.default=Oj});var Nb=_(Ap=>{"use strict";Object.defineProperty(Ap,"__esModule",{value:!0});var Tb=K(),Cj=te(),Aj=ft(),Rj=Pp(),Ij={message:({params:{len:t}})=>(0,Tb.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Tb._)`{limit: ${t}}`},Mj={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Ij,code(t){let{schema:e,parentSchema:r,it:s}=t,{prefixItems:n}=r;s.items=!0,!(0,Cj.alwaysValidSchema)(s,e)&&(n?(0,Rj.validateAdditionalItems)(t,n):t.ok((0,Aj.validateArray)(t)))}};Ap.default=Mj});var Pb=_(Rp=>{"use strict";Object.defineProperty(Rp,"__esModule",{value:!0});var mt=K(),Oc=te(),xj={message:({params:{min:t,max:e}})=>e===void 0?(0,mt.str)`must contain at least ${t} valid item(s)`:(0,mt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,mt._)`{minContains: ${t}}`:(0,mt._)`{minContains: ${t}, maxContains: ${e}}`},jj={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:xj,code(t){let{gen:e,schema:r,parentSchema:s,data:n,it:i}=t,a,o,{minContains:c,maxContains:l}=s;i.opts.next?(a=c===void 0?1:c,o=l):a=1;let u=e.const("len",(0,mt._)`${n}.length`);if(t.setParams({min:a,max:o}),o===void 0&&a===0){(0,Oc.checkStrictMode)(i,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(o!==void 0&&a>o){(0,Oc.checkStrictMode)(i,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Oc.alwaysValidSchema)(i,r)){let m=(0,mt._)`${u} >= ${a}`;o!==void 0&&(m=(0,mt._)`${m} && ${u} <= ${o}`),t.pass(m);return}i.items=!0;let d=e.name("valid");o===void 0&&a===1?p(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),o!==void 0&&e.if((0,mt._)`${n}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let m=e.name("_valid"),g=e.let("count",0);p(m,()=>e.if(m,()=>y(g)))}function p(m,g){e.forRange("i",0,u,h=>{t.subschema({keyword:"contains",dataProp:h,dataPropType:Oc.Type.Num,compositeRule:!0},m),g()})}function y(m){e.code((0,mt._)`${m}++`),o===void 0?e.if((0,mt._)`${m} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,mt._)`${m} > ${o}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,mt._)`${m} >= ${a}`,()=>e.assign(d,!0)))}}};Rp.default=jj});var Ab=_(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.validateSchemaDeps=Kt.validatePropertyDeps=Kt.error=void 0;var Ip=K(),qj=te(),ya=ft();Kt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let s=e===1?"property":"properties";return(0,Ip.str)`must have ${s} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:s}})=>(0,Ip._)`{property: ${t},
|
|
152
|
+
missingProperty: ${s},
|
|
153
|
+
depsCount: ${e},
|
|
154
|
+
deps: ${r}}`};var Dj={keyword:"dependencies",type:"object",schemaType:"object",error:Kt.error,code(t){let[e,r]=Lj(t);Ob(t,e),Cb(t,r)}};function Lj({schema:t}){let e={},r={};for(let s in t){if(s==="__proto__")continue;let n=Array.isArray(t[s])?e:r;n[s]=t[s]}return[e,r]}function Ob(t,e=t.schema){let{gen:r,data:s,it:n}=t;if(Object.keys(e).length===0)return;let i=r.let("missing");for(let a in e){let o=e[a];if(o.length===0)continue;let c=(0,ya.propertyInData)(r,s,a,n.opts.ownProperties);t.setParams({property:a,depsCount:o.length,deps:o.join(", ")}),n.allErrors?r.if(c,()=>{for(let l of o)(0,ya.checkReportMissingProp)(t,l)}):(r.if((0,Ip._)`${c} && (${(0,ya.checkMissingProp)(t,o,i)})`),(0,ya.reportMissingProp)(t,i),r.else())}}Kt.validatePropertyDeps=Ob;function Cb(t,e=t.schema){let{gen:r,data:s,keyword:n,it:i}=t,a=r.name("valid");for(let o in e)(0,qj.alwaysValidSchema)(i,e[o])||(r.if((0,ya.propertyInData)(r,s,o,i.opts.ownProperties),()=>{let c=t.subschema({keyword:n,schemaProp:o},a);t.mergeValidEvaluated(c,a)},()=>r.var(a,!0)),t.ok(a))}Kt.validateSchemaDeps=Cb;Kt.default=Dj});var Ib=_(Mp=>{"use strict";Object.defineProperty(Mp,"__esModule",{value:!0});var Rb=K(),Fj=te(),Uj={message:"property name must be valid",params:({params:t})=>(0,Rb._)`{propertyName: ${t.propertyName}}`},Vj={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:Uj,code(t){let{gen:e,schema:r,data:s,it:n}=t;if((0,Fj.alwaysValidSchema)(n,r))return;let i=e.name("valid");e.forIn("key",s,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},i),e.if((0,Rb.not)(i),()=>{t.error(!0),n.allErrors||e.break()})}),t.ok(i)}};Mp.default=Vj});var jp=_(xp=>{"use strict";Object.defineProperty(xp,"__esModule",{value:!0});var Cc=ft(),Nt=K(),Kj=ir(),Ac=te(),zj={message:"must NOT have additional properties",params:({params:t})=>(0,Nt._)`{additionalProperty: ${t.additionalProperty}}`},Bj={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:zj,code(t){let{gen:e,schema:r,parentSchema:s,data:n,errsCount:i,it:a}=t;if(!i)throw new Error("ajv implementation error");let{allErrors:o,opts:c}=a;if(a.props=!0,c.removeAdditional!=="all"&&(0,Ac.alwaysValidSchema)(a,r))return;let l=(0,Cc.allSchemaProperties)(s.properties),u=(0,Cc.allSchemaProperties)(s.patternProperties);d(),t.ok((0,Nt._)`${i} === ${Kj.default.errors}`);function d(){e.forIn("key",n,g=>{!l.length&&!u.length?y(g):e.if(f(g),()=>y(g))})}function f(g){let h;if(l.length>8){let v=(0,Ac.schemaRefOrVal)(a,s.properties,"properties");h=(0,Cc.isOwnProperty)(e,v,g)}else l.length?h=(0,Nt.or)(...l.map(v=>(0,Nt._)`${g} === ${v}`)):h=Nt.nil;return u.length&&(h=(0,Nt.or)(h,...u.map(v=>(0,Nt._)`${(0,Cc.usePattern)(t,v)}.test(${g})`))),(0,Nt.not)(h)}function p(g){e.code((0,Nt._)`delete ${n}[${g}]`)}function y(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){p(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),o||e.break();return}if(typeof r=="object"&&!(0,Ac.alwaysValidSchema)(a,r)){let h=e.name("valid");c.removeAdditional==="failing"?(m(g,h,!1),e.if((0,Nt.not)(h),()=>{t.reset(),p(g)})):(m(g,h),o||e.if((0,Nt.not)(h),()=>e.break()))}}function m(g,h,v){let b={keyword:"additionalProperties",dataProp:g,dataPropType:Ac.Type.Str};v===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,h)}}};xp.default=Bj});var jb=_(Dp=>{"use strict";Object.defineProperty(Dp,"__esModule",{value:!0});var Jj=na(),Mb=ft(),qp=te(),xb=jp(),Hj={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:s,data:n,it:i}=t;i.opts.removeAdditional==="all"&&s.additionalProperties===void 0&&xb.default.code(new Jj.KeywordCxt(i,xb.default,"additionalProperties"));let a=(0,Mb.allSchemaProperties)(r);for(let d of a)i.definedProperties.add(d);i.opts.unevaluated&&a.length&&i.props!==!0&&(i.props=qp.mergeEvaluated.props(e,(0,qp.toHash)(a),i.props));let o=a.filter(d=>!(0,qp.alwaysValidSchema)(i,r[d]));if(o.length===0)return;let c=e.name("valid");for(let d of o)l(d)?u(d):(e.if((0,Mb.propertyInData)(e,n,d,i.opts.ownProperties)),u(d),i.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function l(d){return i.opts.useDefaults&&!i.compositeRule&&r[d].default!==void 0}function u(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Dp.default=Hj});var Fb=_(Lp=>{"use strict";Object.defineProperty(Lp,"__esModule",{value:!0});var qb=ft(),Rc=K(),Db=te(),Lb=te(),Gj={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:s,parentSchema:n,it:i}=t,{opts:a}=i,o=(0,qb.allSchemaProperties)(r),c=o.filter(m=>(0,Db.alwaysValidSchema)(i,r[m]));if(o.length===0||c.length===o.length&&(!i.opts.unevaluated||i.props===!0))return;let l=a.strictSchema&&!a.allowMatchingProperties&&n.properties,u=e.name("valid");i.props!==!0&&!(i.props instanceof Rc.Name)&&(i.props=(0,Lb.evaluatedPropsToName)(e,i.props));let{props:d}=i;f();function f(){for(let m of o)l&&p(m),i.allErrors?y(m):(e.var(u,!0),y(m),e.if(u))}function p(m){for(let g in l)new RegExp(m).test(g)&&(0,Db.checkStrictMode)(i,`property ${g} matches pattern ${m} (use allowMatchingProperties)`)}function y(m){e.forIn("key",s,g=>{e.if((0,Rc._)`${(0,qb.usePattern)(t,m)}.test(${g})`,()=>{let h=c.includes(m);h||t.subschema({keyword:"patternProperties",schemaProp:m,dataProp:g,dataPropType:Lb.Type.Str},u),i.opts.unevaluated&&d!==!0?e.assign((0,Rc._)`${d}[${g}]`,!0):!h&&!i.allErrors&&e.if((0,Rc.not)(u),()=>e.break())})})}}};Lp.default=Gj});var Ub=_(Fp=>{"use strict";Object.defineProperty(Fp,"__esModule",{value:!0});var Yj=te(),Wj={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:s}=t;if((0,Yj.alwaysValidSchema)(s,r)){t.fail();return}let n=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},n),t.failResult(n,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};Fp.default=Wj});var Vb=_(Up=>{"use strict";Object.defineProperty(Up,"__esModule",{value:!0});var Zj=ft(),Qj={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Zj.validateUnion,error:{message:"must match a schema in anyOf"}};Up.default=Qj});var Kb=_(Vp=>{"use strict";Object.defineProperty(Vp,"__esModule",{value:!0});var Ic=K(),Xj=te(),eq={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Ic._)`{passingSchemas: ${t.passing}}`},tq={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:eq,code(t){let{gen:e,schema:r,parentSchema:s,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(n.opts.discriminator&&s.discriminator)return;let i=r,a=e.let("valid",!1),o=e.let("passing",null),c=e.name("_valid");t.setParams({passing:o}),e.block(l),t.result(a,()=>t.reset(),()=>t.error(!0));function l(){i.forEach((u,d)=>{let f;(0,Xj.alwaysValidSchema)(n,u)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Ic._)`${c} && ${a}`).assign(a,!1).assign(o,(0,Ic._)`[${o}, ${d}]`).else(),e.if(c,()=>{e.assign(a,!0),e.assign(o,d),f&&t.mergeEvaluated(f,Ic.Name)})})}}};Vp.default=tq});var zb=_(Kp=>{"use strict";Object.defineProperty(Kp,"__esModule",{value:!0});var rq=te(),sq={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:s}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let n=e.name("valid");r.forEach((i,a)=>{if((0,rq.alwaysValidSchema)(s,i))return;let o=t.subschema({keyword:"allOf",schemaProp:a},n);t.ok(n),t.mergeEvaluated(o)})}};Kp.default=sq});var Hb=_(zp=>{"use strict";Object.defineProperty(zp,"__esModule",{value:!0});var Mc=K(),Jb=te(),nq={message:({params:t})=>(0,Mc.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Mc._)`{failingKeyword: ${t.ifClause}}`},iq={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:nq,code(t){let{gen:e,parentSchema:r,it:s}=t;r.then===void 0&&r.else===void 0&&(0,Jb.checkStrictMode)(s,'"if" without "then" and "else" is ignored');let n=Bb(s,"then"),i=Bb(s,"else");if(!n&&!i)return;let a=e.let("valid",!0),o=e.name("_valid");if(c(),t.reset(),n&&i){let u=e.let("ifClause");t.setParams({ifClause:u}),e.if(o,l("then",u),l("else",u))}else n?e.if(o,l("then")):e.if((0,Mc.not)(o),l("else"));t.pass(a,()=>t.error(!0));function c(){let u=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},o);t.mergeEvaluated(u)}function l(u,d){return()=>{let f=t.subschema({keyword:u},o);e.assign(a,o),t.mergeValidEvaluated(f,a),d?e.assign(d,(0,Mc._)`${u}`):t.setParams({ifClause:u})}}}};function Bb(t,e){let r=t.schema[e];return r!==void 0&&!(0,Jb.alwaysValidSchema)(t,r)}zp.default=iq});var Gb=_(Bp=>{"use strict";Object.defineProperty(Bp,"__esModule",{value:!0});var aq=te(),oq={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,aq.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Bp.default=oq});var Yb=_(Jp=>{"use strict";Object.defineProperty(Jp,"__esModule",{value:!0});var cq=Pp(),lq=Eb(),uq=Op(),dq=Nb(),fq=Pb(),pq=Ab(),mq=Ib(),hq=jp(),gq=jb(),yq=Fb(),vq=Ub(),_q=Vb(),bq=Kb(),wq=zb(),$q=Hb(),Sq=Gb();function kq(t=!1){let e=[vq.default,_q.default,bq.default,wq.default,$q.default,Sq.default,mq.default,hq.default,pq.default,gq.default,yq.default];return t?e.push(lq.default,dq.default):e.push(cq.default,uq.default),e.push(fq.default),e}Jp.default=kq});var Wb=_(Hp=>{"use strict";Object.defineProperty(Hp,"__esModule",{value:!0});var be=K(),Eq={message:({schemaCode:t})=>(0,be.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,be._)`{format: ${t}}`},Tq={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Eq,code(t,e){let{gen:r,data:s,$data:n,schema:i,schemaCode:a,it:o}=t,{opts:c,errSchemaPath:l,schemaEnv:u,self:d}=o;if(!c.validateFormats)return;n?f():p();function f(){let y=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),m=r.const("fDef",(0,be._)`${y}[${a}]`),g=r.let("fType"),h=r.let("format");r.if((0,be._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(g,(0,be._)`${m}.type || "string"`).assign(h,(0,be._)`${m}.validate`),()=>r.assign(g,(0,be._)`"string"`).assign(h,m)),t.fail$data((0,be.or)(v(),b()));function v(){return c.strictSchema===!1?be.nil:(0,be._)`${a} && !${h}`}function b(){let $=u.$async?(0,be._)`(${m}.async ? await ${h}(${s}) : ${h}(${s}))`:(0,be._)`${h}(${s})`,w=(0,be._)`(typeof ${h} == "function" ? ${$} : ${h}.test(${s}))`;return(0,be._)`${h} && ${h} !== true && ${g} === ${e} && !${w}`}}function p(){let y=d.formats[i];if(!y){v();return}if(y===!0)return;let[m,g,h]=b(y);m===e&&t.pass($());function v(){if(c.strictSchema===!1){d.logger.warn(w());return}throw new Error(w());function w(){return`unknown format "${i}" ignored in schema at path "${l}"`}}function b(w){let k=w instanceof RegExp?(0,be.regexpCode)(w):c.code.formats?(0,be._)`${c.code.formats}${(0,be.getProperty)(i)}`:void 0,N=r.scopeValue("formats",{key:i,ref:w,code:k});return typeof w=="object"&&!(w instanceof RegExp)?[w.type||"string",w.validate,(0,be._)`${N}.validate`]:["string",w,N]}function $(){if(typeof y=="object"&&!(y instanceof RegExp)&&y.async){if(!u.$async)throw new Error("async format in sync schema");return(0,be._)`await ${h}(${s})`}return typeof g=="function"?(0,be._)`${h}(${s})`:(0,be._)`${h}.test(${s})`}}}};Hp.default=Tq});var Zb=_(Gp=>{"use strict";Object.defineProperty(Gp,"__esModule",{value:!0});var Nq=Wb(),Pq=[Nq.default];Gp.default=Pq});var Qb=_(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.contentVocabulary=Tn.metadataVocabulary=void 0;Tn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Tn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var ew=_(Yp=>{"use strict";Object.defineProperty(Yp,"__esModule",{value:!0});var Oq=ob(),Cq=wb(),Aq=Yb(),Rq=Zb(),Xb=Qb(),Iq=[Oq.default,Cq.default,(0,Aq.default)(),Rq.default,Xb.metadataVocabulary,Xb.contentVocabulary];Yp.default=Iq});var rw=_(xc=>{"use strict";Object.defineProperty(xc,"__esModule",{value:!0});xc.DiscrError=void 0;var tw;(function(t){t.Tag="tag",t.Mapping="mapping"})(tw||(xc.DiscrError=tw={}))});var nw=_(Zp=>{"use strict";Object.defineProperty(Zp,"__esModule",{value:!0});var Nn=K(),Wp=rw(),sw=wc(),Mq=ia(),xq=te(),jq={message:({params:{discrError:t,tagName:e}})=>t===Wp.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Nn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},qq={keyword:"discriminator",type:"object",schemaType:"object",error:jq,code(t){let{gen:e,data:r,schema:s,parentSchema:n,it:i}=t,{oneOf:a}=n;if(!i.opts.discriminator)throw new Error("discriminator: requires discriminator option");let o=s.propertyName;if(typeof o!="string")throw new Error("discriminator: requires propertyName");if(s.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),l=e.const("tag",(0,Nn._)`${r}${(0,Nn.getProperty)(o)}`);e.if((0,Nn._)`typeof ${l} == "string"`,()=>u(),()=>t.error(!1,{discrError:Wp.DiscrError.Tag,tag:l,tagName:o})),t.ok(c);function u(){let p=f();e.if(!1);for(let y in p)e.elseIf((0,Nn._)`${l} === ${y}`),e.assign(c,d(p[y]));e.else(),t.error(!1,{discrError:Wp.DiscrError.Mapping,tag:l,tagName:o}),e.endIf()}function d(p){let y=e.name("valid"),m=t.subschema({keyword:"oneOf",schemaProp:p},y);return t.mergeEvaluated(m,Nn.Name),y}function f(){var p;let y={},m=h(n),g=!0;for(let $=0;$<a.length;$++){let w=a[$];if(w?.$ref&&!(0,xq.schemaHasRulesButRef)(w,i.self.RULES)){let N=w.$ref;if(w=sw.resolveRef.call(i.self,i.schemaEnv.root,i.baseId,N),w instanceof sw.SchemaEnv&&(w=w.schema),w===void 0)throw new Mq.default(i.opts.uriResolver,i.baseId,N)}let k=(p=w?.properties)===null||p===void 0?void 0:p[o];if(typeof k!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${o}"`);g=g&&(m||h(w)),v(k,$)}if(!g)throw new Error(`discriminator: "${o}" must be required`);return y;function h({required:$}){return Array.isArray($)&&$.includes(o)}function v($,w){if($.const)b($.const,w);else if($.enum)for(let k of $.enum)b(k,w);else throw new Error(`discriminator: "properties/${o}" must have "const" or "enum"`)}function b($,w){if(typeof $!="string"||$ in y)throw new Error(`discriminator: "${o}" values must be unique strings`);y[$]=w}}}};Zp.default=qq});var iw=_((i9,Dq)=>{Dq.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var ow=_((ge,Qp)=>{"use strict";Object.defineProperty(ge,"__esModule",{value:!0});ge.MissingRefError=ge.ValidationError=ge.CodeGen=ge.Name=ge.nil=ge.stringify=ge.str=ge._=ge.KeywordCxt=ge.Ajv=void 0;var Lq=tb(),Fq=ew(),Uq=nw(),aw=iw(),Vq=["/properties"],jc="http://json-schema.org/draft-07/schema",Pn=class extends Lq.default{_addVocabularies(){super._addVocabularies(),Fq.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(Uq.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(aw,Vq):aw;this.addMetaSchema(e,jc,!1),this.refs["http://json-schema.org/schema"]=jc}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(jc)?jc:void 0)}};ge.Ajv=Pn;Qp.exports=ge=Pn;Qp.exports.Ajv=Pn;Object.defineProperty(ge,"__esModule",{value:!0});ge.default=Pn;var Kq=na();Object.defineProperty(ge,"KeywordCxt",{enumerable:!0,get:function(){return Kq.KeywordCxt}});var On=K();Object.defineProperty(ge,"_",{enumerable:!0,get:function(){return On._}});Object.defineProperty(ge,"str",{enumerable:!0,get:function(){return On.str}});Object.defineProperty(ge,"stringify",{enumerable:!0,get:function(){return On.stringify}});Object.defineProperty(ge,"nil",{enumerable:!0,get:function(){return On.nil}});Object.defineProperty(ge,"Name",{enumerable:!0,get:function(){return On.Name}});Object.defineProperty(ge,"CodeGen",{enumerable:!0,get:function(){return On.CodeGen}});var zq=_c();Object.defineProperty(ge,"ValidationError",{enumerable:!0,get:function(){return zq.default}});var Bq=ia();Object.defineProperty(ge,"MissingRefError",{enumerable:!0,get:function(){return Bq.default}})});var cw=_(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.formatLimitDefinition=void 0;var Jq=ow(),Pt=K(),Lr=Pt.operators,qc={formatMaximum:{okStr:"<=",ok:Lr.LTE,fail:Lr.GT},formatMinimum:{okStr:">=",ok:Lr.GTE,fail:Lr.LT},formatExclusiveMaximum:{okStr:"<",ok:Lr.LT,fail:Lr.GTE},formatExclusiveMinimum:{okStr:">",ok:Lr.GT,fail:Lr.LTE}},Hq={message:({keyword:t,schemaCode:e})=>(0,Pt.str)`should be ${qc[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Pt._)`{comparison: ${qc[t].okStr}, limit: ${e}}`};Cn.formatLimitDefinition={keyword:Object.keys(qc),type:"string",schemaType:"string",$data:!0,error:Hq,code(t){let{gen:e,data:r,schemaCode:s,keyword:n,it:i}=t,{opts:a,self:o}=i;if(!a.validateFormats)return;let c=new Jq.KeywordCxt(i,o.RULES.all.format.definition,"format");c.$data?l():u();function l(){let f=e.scopeValue("formats",{ref:o.formats,code:a.code.formats}),p=e.const("fmt",(0,Pt._)`${f}[${c.schemaCode}]`);t.fail$data((0,Pt.or)((0,Pt._)`typeof ${p} != "object"`,(0,Pt._)`${p} instanceof RegExp`,(0,Pt._)`typeof ${p}.compare != "function"`,d(p)))}function u(){let f=c.schema,p=o.formats[f];if(!p||p===!0)return;if(typeof p!="object"||p instanceof RegExp||typeof p.compare!="function")throw new Error(`"${n}": format "${f}" does not define "compare" function`);let y=e.scopeValue("formats",{key:f,ref:p,code:a.code.formats?(0,Pt._)`${a.code.formats}${(0,Pt.getProperty)(f)}`:void 0});t.fail$data(d(y))}function d(f){return(0,Pt._)`${f}.compare(${r}, ${s}) ${qc[n].fail} 0`}},dependencies:["format"]};var Gq=t=>(t.addKeyword(Cn.formatLimitDefinition),t);Cn.default=Gq});var fw=_((va,dw)=>{"use strict";Object.defineProperty(va,"__esModule",{value:!0});var An=Hv(),Yq=cw(),Xp=K(),lw=new Xp.Name("fullFormats"),Wq=new Xp.Name("fastFormats"),em=(t,e={keywords:!0})=>{if(Array.isArray(e))return uw(t,e,An.fullFormats,lw),t;let[r,s]=e.mode==="fast"?[An.fastFormats,Wq]:[An.fullFormats,lw],n=e.formats||An.formatNames;return uw(t,n,r,s),e.keywords&&(0,Yq.default)(t),t};em.get=(t,e="full")=>{let s=(e==="fast"?An.fastFormats:An.fullFormats)[t];if(!s)throw new Error(`Unknown format "${t}"`);return s};function uw(t,e,r,s){var n,i;(n=(i=t.opts.code).formats)!==null&&n!==void 0||(i.formats=(0,Xp._)`require("ajv-formats/dist/formats").${s}`);for(let a of e)t.addFormat(a,r[a])}dw.exports=va=em;Object.defineProperty(va,"__esModule",{value:!0});va.default=em});import{Command as U2}from"commander";import{existsSync as E$,writeFileSync as T$}from"fs";import{resolve as N$}from"path";import xn from"chalk";var P$=`kindlm: 1
|
|
3
155
|
project: my-project
|
|
4
156
|
|
|
5
157
|
suite:
|
|
@@ -43,15 +195,53 @@ defaults:
|
|
|
43
195
|
repeat: 1
|
|
44
196
|
concurrency: 4
|
|
45
197
|
timeoutMs: 60000
|
|
46
|
-
`;function se(e){e.command("init").description("Create a kindlm.yaml template").option("--force","Overwrite existing kindlm.yaml").action(t=>{let n=je(process.cwd(),"kindlm.yaml");_e(n)&&!t.force&&(console.error(H.red("kindlm.yaml already exists. Use --force to overwrite.")),process.exit(1)),De(n,Fe,"utf-8"),console.log(H.green("Created kindlm.yaml")),console.log(""),console.log("Next steps:"),console.log(` 1. Edit ${H.bold("kindlm.yaml")} with your test configuration`),console.log(` 2. Set your API key: ${H.bold("export OPENAI_API_KEY=sk-...")}`),console.log(` 3. Run tests: ${H.bold("kindlm test")}`)})}import{readFileSync as Be}from"fs";import{resolve as Ue,dirname as Ke}from"path";import M from"chalk";import{parseConfig as ze}from"@kindlm/core";import{readFileSync as He}from"fs";function A(){return{readFile(e){try{return{success:!0,data:He(e,"utf-8")}}catch(t){return{success:!1,error:{code:"CONFIG_FILE_REF_ERROR",message:`Cannot read file: ${e}: ${t instanceof Error?t.message:String(t)}`}}}}}}function ie(e){e.command("validate").description("Validate kindlm.yaml configuration").option("-c, --config <path>","Path to config file","kindlm.yaml").action(t=>{let n=Ue(process.cwd(),t.config),o=Ke(n),r;try{r=Be(n,"utf-8")}catch{console.error(M.red(`Config file not found: ${n}`)),process.exit(1)}let a=A(),i=ze(r,{configDir:o,fileReader:a});if(!i.success){console.error(M.red("Validation failed:"));let c=i.error.details;if(c&&Array.isArray(c.errors))for(let m of c.errors)console.error(M.red(` - ${m}`));else console.error(M.red(` ${i.error.message}`));process.exit(1)}let s=i.data;console.log(M.green("Config is valid!")),console.log(""),console.log(` Suite: ${M.bold(s.suite.name)}`),console.log(` Tests: ${M.bold(String(s.tests.length))}`),console.log(` Models: ${M.bold(String(s.models.length))}`)})}import w from"chalk";import{evaluateGates as Ct,createPrettyReporter as vt,createJsonReporter as Rt,createJunitReporter as wt,createComplianceReporter as St,ProviderError as Tt}from"@kindlm/core";import{readFileSync as Ye,statSync as Xe}from"fs";import{resolve as qe,dirname as Ve}from"path";import $ from"chalk";import{parseConfig as Ze,createProvider as Qe,createRunner as et}from"@kindlm/core";function G(){return{async fetch(e,t){let n=new AbortController,o=t.timeoutMs?setTimeout(()=>n.abort(),t.timeoutMs):void 0;try{let r=await globalThis.fetch(e,{method:t.method,headers:t.headers,body:t.body,signal:n.signal});return{ok:r.ok,status:r.status,json:()=>r.json()}}finally{o!==void 0&&clearTimeout(o)}}}}import Ge from"ora";function D(){let e;return{start(t){e=Ge(t).start()},succeed(t){e?.succeed(t),e=void 0},fail(t){e?.fail(t),e=void 0},stop(){e?.stop(),e=void 0}}}import{spawn as Je}from"child_process";import{ok as We,err as ae}from"@kindlm/core";function ce(){return{async execute(e,t){return new Promise(n=>{let o=Je("sh",["-c",e],{cwd:t.cwd,env:{...process.env,...t.env},stdio:["ignore","pipe","pipe"]}),r=[],a=[];o.stdout.on("data",s=>r.push(s)),o.stderr.on("data",s=>a.push(s));let i=setTimeout(()=>{o.kill("SIGTERM"),setTimeout(()=>{o.killed||o.kill("SIGKILL")},1e3)},t.timeoutMs);o.on("close",(s,c)=>{if(clearTimeout(i),c==="SIGTERM"||c==="SIGKILL"){n(ae({code:"PROVIDER_TIMEOUT",message:`Command timed out after ${t.timeoutMs}ms`}));return}n(We({stdout:Buffer.concat(r).toString("utf-8"),stderr:Buffer.concat(a).toString("utf-8"),exitCode:s??1}))}),o.on("error",s=>{clearTimeout(i),n(ae({code:"UNKNOWN_ERROR",message:`Failed to spawn command: ${s.message}`}))})})}}}var tt=1048576;async function B(e){let t=D(),n=!1,o=()=>{n&&process.exit(130),n=!0,t.stop(),console.error($.yellow(`
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
`),y=!1,d=0;for(;d<f.length;){let C=f[d]??"";if(C.startsWith("```")){y=!y,y&&N(r,30),d++;continue}if(y){N(r,14);let l=r.y;r.save(),r.rect(r.page.margins.left,l-2,i,14).fill("#f5f5f4"),r.restore(),r.fontSize(9).font("Courier").fillColor("#44403c").text(C,{width:i}),d++;continue}if(!C.trim()){r.moveDown(.4),d++;continue}let S=f[d+1]??"";if(C.includes("|")&&d+1<f.length&&S.match(/^\s*\|[-:\s|]+\|\s*$/)){let l=[],p=d;for(;p<f.length&&(f[p]??"").includes("|");)l.push(f[p]??""),p++;let b=gt(l);if(b){yt(r,b,i),d=p;continue}}if(C.match(/^\s*\|[-:]+/)||C.match(/^---+$/)){d++;continue}let h=C.match(/^(#{3,4})\s+(.+)$/);if(h?.[1]&&h[2]){let l=h[1].length,p=pe(l);N(r,p+10),r.moveDown(.3),r.fontSize(p).font("Helvetica-Bold").fillColor("#1c1917").text(h[2].trim(),{width:i}),r.moveDown(.3),d++;continue}if(C.match(/^\s*[-*] /)){N(r,14),r.fontSize(10).font("Helvetica").fillColor("#44403c").text(C.trim(),{indent:12,width:i-12}),d++;continue}N(r,14),r.fontSize(10).font("Helvetica").fillColor("#44403c").text(C.trim(),{width:i}),d++}ht(r)}r.end(),a.on("finish",()=>n(t)),a.on("error",o)})}function ye(e){e.command("test").description("Run test suites").option("-s, --suite <name>","Run a specific suite").option("--compliance","Generate compliance report").option("--reporter <type>","Output format: pretty, json, junit","pretty").option("--runs <count>","Override run count").option("--gate <percent>","Fail if pass rate below threshold").option("--pdf <path>","Export compliance report as PDF (requires --compliance)").option("-c, --config <path>","Path to config file","kindlm.yaml").action(async t=>{try{let{runnerResult:n,config:o,yamlContent:r}=await B({configPath:t.config,runs:t.runs?parseInt(t.runs,10):void 0,gate:t.gate?parseFloat(t.gate):void 0}),{runResult:a,aggregated:i}=n,s=Ct(o.gates,i),m=xt(t.reporter).generate(a,s);if(console.log(m.content),t.compliance){let y=St().generate(a,s);if(console.log(""),console.log(y.content),t.pdf){let d=await he(y.content,t.pdf);console.log(""),console.log(w.green(`PDF report saved to ${d}`))}}try{me({runnerResult:n,suiteName:o.suite.name,configHash:fe(r),timestamp:new Date().toISOString()})}catch{}let u=a.failed===0&&a.errored===0&&s.passed;process.exit(u?0:1)}catch(n){if(n instanceof Tt){let o=n.code==="TIMEOUT"?"Provider timeout":n.code==="NETWORK_ERROR"?"Network error":n.code==="AUTH_FAILED"?"Authentication failed":n.code==="RATE_LIMITED"?"Rate limited":`Provider error (${n.code})`;console.error(w.red(`${o}: ${n.message}`)),n.retryable&&console.error(w.yellow("This error may be transient. Try again or increase --timeout."))}else if(kt(n)){let r=n.code.startsWith("CONFIG_")?"Config error":"Error";console.error(w.red(`${r}: ${n.message}`))}else n instanceof Error&&n.name==="AbortError"?console.error(w.red("Request timed out. Check network connectivity or increase timeout.")):console.error(w.red(`Error: ${n instanceof Error?n.message:String(n)}`));process.exit(1)}})}var bt={bold:e=>w.bold(e),red:e=>w.red(e),green:e=>w.green(e),yellow:e=>w.yellow(e),cyan:e=>w.cyan(e),dim:e=>w.dim(e),greenBold:e=>w.green.bold(e),redBold:e=>w.red.bold(e)};function xt(e){switch(e){case"json":return Rt();case"junit":return wt();default:return vt(bt)}}function kt(e){return typeof e=="object"&&e!==null&&"code"in e&&"message"in e&&typeof e.code=="string"&&typeof e.message=="string"}import{resolve as W,dirname as q,join as V}from"path";import{readFileSync as It}from"fs";import g from"chalk";import{parseConfig as Ot,readBaseline as At,writeBaseline as Mt,listBaselines as Nt,buildBaselineData as Re,compareBaseline as Lt,deserializeBaseline as _t}from"@kindlm/core";import{readFileSync as Pt,writeFileSync as $t,mkdirSync as Ce,readdirSync as Et}from"fs";import{join as X}from"path";function ve(e){return e.replace(/[^a-zA-Z0-9_-]/g,"_")}function J(e){let t=X(e,"baselines");return{read(n){let o=X(t,`${ve(n)}.json`);try{return{success:!0,data:Pt(o,"utf-8")}}catch{return{success:!1,error:{code:"BASELINE_NOT_FOUND",message:`No baseline found for suite "${n}" at ${o}`}}}},write(n,o){try{Ce(t,{recursive:!0});let r=X(t,`${ve(n)}.json`);return $t(r,o,"utf-8"),{success:!0,data:void 0}}catch(r){return{success:!1,error:{code:"UNKNOWN_ERROR",message:`Failed to write baseline: ${r instanceof Error?r.message:String(r)}`}}}},list(){try{return Ce(t,{recursive:!0}),{success:!0,data:Et(t).filter(r=>r.endsWith(".json")).map(r=>r.replace(/\.json$/,""))}}catch(n){return{success:!1,error:{code:"UNKNOWN_ERROR",message:`Failed to list baselines: ${n instanceof Error?n.message:String(n)}`}}}}}}function we(e){let t=e.command("baseline").description("Manage test baselines");t.command("set").description("Save current results as baseline").option("-c, --config <path>","Path to config file","kindlm.yaml").option("--runs <count>","Override run count").action(async n=>{try{let o=q(W(process.cwd(),n.config)),r=V(o,".kindlm"),a=J(r),{config:i,runnerResult:s}=await B({configPath:n.config,runs:n.runs?parseInt(n.runs,10):void 0}),{aggregated:c}=s,m=Re(i.suite.name,c,new Date().toISOString()),u=Mt(m,a);u.success||(console.error(g.red(`Failed to save baseline: ${u.error.message}`)),process.exit(1));let f=Object.keys(m.results).length;console.log(""),console.log(g.green(`Baseline saved for suite "${i.suite.name}" (${f} test${f===1?"":"s"})`)),console.log(g.dim(` Location: ${r}/baselines/`)),process.exit(0)}catch(o){console.error(g.red(`Error: ${o instanceof Error?o.message:String(o)}`)),process.exit(1)}}),t.command("compare").description("Compare latest against baseline").option("-c, --config <path>","Path to config file","kindlm.yaml").option("--runs <count>","Override run count").action(async n=>{try{let o=q(W(process.cwd(),n.config)),r=V(o,".kindlm"),a=J(r),i=W(process.cwd(),n.config),s;try{s=It(i,"utf-8")}catch{console.error(g.red(`Config file not found: ${i}`)),process.exit(1)}let c=A(),m=Ot(s,{configDir:o,fileReader:c});m.success||(console.error(g.red(`Config validation failed: ${m.error.message}`)),process.exit(1));let u=m.data.suite.name,f=At(u,a);f.success||(f.error.code==="BASELINE_NOT_FOUND"?console.error(g.red(`No baseline found for suite "${u}". Run \`kindlm baseline set\` first.`)):console.error(g.red(`Failed to read baseline: ${f.error.message}`)),process.exit(1));let y=f.data,{runnerResult:d}=await B({configPath:n.config,runs:n.runs?parseInt(n.runs,10):void 0,baselineData:y}),{aggregated:C}=d,S=Re(u,C,new Date().toISOString()),h=Lt(y,S.results);if(console.log(""),console.log(g.bold(`Baseline comparison for "${u}"`)),console.log(g.dim(` Baseline from: ${y.createdAt}`)),console.log(""),h.regressions.length>0){console.log(g.red.bold(` Regressions (${h.regressions.length}):`));for(let l of h.regressions)console.log(g.red(` ${l.testName}: ${U(l.baselinePassRate)} \u2192 ${U(l.currentPassRate)}`)),l.newFailureCodes.length>0&&console.log(g.red(` New failures: ${l.newFailureCodes.join(", ")}`));console.log("")}if(h.improvements.length>0){console.log(g.green.bold(` Improvements (${h.improvements.length}):`));for(let l of h.improvements)console.log(g.green(` ${l.testName}: ${U(l.baselinePassRate)} \u2192 ${U(l.currentPassRate)}`));console.log("")}if(h.unchanged.length>0){console.log(g.dim(` Unchanged (${h.unchanged.length}):`));for(let l of h.unchanged)console.log(g.dim(` ${l.testName}: ${U(l.passRate)}`));console.log("")}if(h.newTests.length>0){console.log(g.cyan(` New tests (${h.newTests.length}):`));for(let l of h.newTests)console.log(g.cyan(` ${l}`));console.log("")}if(h.removedTests.length>0){console.log(g.yellow(` Removed tests (${h.removedTests.length}):`));for(let l of h.removedTests)console.log(g.yellow(` ${l}`));console.log("")}process.exit(h.regressions.length>0?1:0)}catch(o){console.error(g.red(`Error: ${o instanceof Error?o.message:String(o)}`)),process.exit(1)}}),t.command("list").description("List saved baselines").option("-c, --config <path>","Path to config file","kindlm.yaml").action(n=>{try{let o=q(W(process.cwd(),n.config)),r=V(o,".kindlm"),a=J(r),i=Nt(a);i.success||(console.error(g.red(`Failed to list baselines: ${i.error.message}`)),process.exit(1));let s=i.data;s.length===0&&(console.log(g.dim("No baselines saved yet. Run `kindlm baseline set` to create one.")),process.exit(0)),console.log(g.bold("Saved baselines:")),console.log("");for(let c of s){let m=a.read(c);if(!m.success){console.log(` ${c} ${g.dim("(unreadable)")}`);continue}let u=_t(m.data);if(!u.success){console.log(` ${c} ${g.dim("(corrupt)")}`);continue}let f=Object.keys(u.data.results).length;console.log(` ${g.cyan(u.data.suiteName)} \u2014 ${f} test${f===1?"":"s"}, saved ${g.dim(u.data.createdAt)}`)}process.exit(0)}catch(o){console.error(g.red(`Error: ${o instanceof Error?o.message:String(o)}`)),process.exit(1)}})}function U(e){return`${(e*100).toFixed(1)}%`}import{createInterface as Gt}from"readline";import{Writable as Jt}from"stream";import I from"chalk";import{readFileSync as Dt,writeFileSync as jt,mkdirSync as Ft,unlinkSync as Ht,chmodSync as Bt}from"fs";import{join as Se}from"path";import{homedir as Te}from"os";function Z(){return Se(Te(),".kindlm","credentials")}function Y(){try{let e=Dt(Z(),"utf-8"),t=JSON.parse(e);return typeof t.token=="string"&&t.token.length>0?t.token:null}catch{return null}}function be(e){let t=Z(),n=Se(Te(),".kindlm");Ft(n,{recursive:!0,mode:448});let o={token:e,savedAt:new Date().toISOString()};jt(t,JSON.stringify(o,null,2),{mode:384}),Bt(t,384)}function xe(){try{Ht(Z())}catch{}}var Ut="https://api.kindlm.com";var E=class extends Error{status;constructor(t,n){super(n),this.name="CloudApiError",this.status=t}};function j(){let e=process.env.KINDLM_CLOUD_URL??Ut;if(e.startsWith("http://")&&!Kt(e))throw new Error(`Refusing to use insecure HTTP for Cloud API: ${e}. Use HTTPS or target localhost for development.`);return e}function Kt(e){try{let t=new URL(e);return t.hostname==="localhost"||t.hostname==="127.0.0.1"||t.hostname==="::1"}catch{return!1}}function zt(e){return new Promise(t=>setTimeout(t,e))}function K(e,t){async function n(o,r,a){let i=`${e}${r}`,s={Authorization:`Bearer ${t}`},c={method:o,headers:s};a!==void 0&&(s["Content-Type"]="application/json",c.body=JSON.stringify(a));let m;for(let u=0;u<=1;u++){u>0&&await zt(1e3);let f=new AbortController,y=setTimeout(()=>f.abort(),3e4);c.signal=f.signal;try{let d=await fetch(i,c);if(!d.ok){if(d.status>=500&&u<1){m=new E(d.status,`HTTP ${d.status}`);continue}let S=`HTTP ${d.status}`;if((d.headers.get("content-type")??"").includes("application/json"))try{let l=await d.json();l.error&&(S=l.error)}catch{}throw new E(d.status,S)}if(d.status===204)return;let C=d.headers.get("content-type")??"";if(!C.includes("application/json"))throw new E(d.status,`Expected JSON response but got content-type: ${C}`);return await d.json()}catch(d){if(d instanceof E)throw d;if(m=d instanceof Error?d:new Error(String(d)),u<1)continue}finally{clearTimeout(y)}}throw m??new Error("Request failed")}return{baseUrl:e,get:o=>n("GET",o),post:(o,r)=>n("POST",o,r),patch:(o,r)=>n("PATCH",o,r),delete:o=>n("DELETE",o)}}function ke(e){e.command("login").description("Authenticate with KindLM Cloud").option("-t, --token <token>","API token (skips interactive prompt)").option("--status","Show current authentication status").option("--logout","Remove stored credentials").action(async t=>{try{if(t.logout){xe(),console.log(I.green("Logged out. Credentials removed."));return}if(t.status){await Wt();return}let n=t.token??process.env.KINDLM_API_TOKEN??await Yt();n.startsWith("klm_")||(console.error(I.red('Invalid token format. KindLM tokens start with "klm_".')),process.exit(1));let o=K(j(),n);try{await o.get("/v1/auth/tokens")}catch(r){throw r instanceof E&&r.status===401&&(console.error(I.red("Invalid or expired token.")),process.exit(1)),r}be(n),console.log(I.green("Authenticated successfully. Token saved."))}catch(n){console.error(I.red(`Login failed: ${n instanceof Error?n.message:String(n)}`)),process.exit(1)}})}async function Wt(){let e=Y();if(!e){console.log(I.yellow('Not authenticated. Run "kindlm login" to authenticate.'));return}let t=K(j(),e);try{await t.get("/v1/auth/tokens"),console.log(I.green("Authenticated.")),console.log(` Cloud URL: ${j()}`)}catch(n){n instanceof E&&n.status===401?console.log(I.yellow('Stored token is invalid or expired. Run "kindlm login" to re-authenticate.')):console.log(I.yellow(`Cannot reach Cloud API: ${n instanceof Error?n.message:String(n)}`))}}function Yt(){return new Promise((e,t)=>{let n=new Jt({write(r,a,i){i()}});process.stderr.write("Paste your KindLM API token: ");let o=Gt({input:process.stdin,output:n,terminal:!0});o.question("",r=>{o.close(),process.stderr.write(`
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
198
|
+
`;function mm(t){t.command("init").description("Create a kindlm.yaml template").option("--force","Overwrite existing kindlm.yaml").action(e=>{let r=N$(process.cwd(),"kindlm.yaml");E$(r)&&!e.force&&(console.error(xn.red("kindlm.yaml already exists. Use --force to overwrite.")),process.exit(1)),T$(r,P$,"utf-8"),console.log(xn.green("Created kindlm.yaml")),console.log(""),console.log("Next steps:"),console.log(` 1. Edit ${xn.bold("kindlm.yaml")} with your test configuration`),console.log(` 2. Set your API key: ${xn.bold("export OPENAI_API_KEY=sk-...")}`),console.log(` 3. Run tests: ${xn.bold("kindlm test")}`)})}import{readFileSync as qL}from"fs";import{resolve as DL,dirname as LL}from"path";import Kr from"chalk";var S={};S$(S,{BRAND:()=>eS,DIRTY:()=>zr,EMPTY_PATH:()=>R$,INVALID:()=>M,NEVER:()=>DS,OK:()=>Ae,ParseStatus:()=>Ee,Schema:()=>V,ZodAny:()=>pr,ZodArray:()=>Yt,ZodBigInt:()=>Jr,ZodBoolean:()=>Hr,ZodBranded:()=>qn,ZodCatch:()=>ns,ZodDate:()=>Gr,ZodDefault:()=>ss,ZodDiscriminatedUnion:()=>Na,ZodEffects:()=>it,ZodEnum:()=>ts,ZodError:()=>Ve,ZodFirstPartyTypeKind:()=>x,ZodFunction:()=>Oa,ZodIntersection:()=>Qr,ZodIssueCode:()=>E,ZodLazy:()=>Xr,ZodLiteral:()=>es,ZodMap:()=>Ls,ZodNaN:()=>Us,ZodNativeEnum:()=>rs,ZodNever:()=>yt,ZodNull:()=>Wr,ZodNullable:()=>Rt,ZodNumber:()=>Br,ZodObject:()=>Ke,ZodOptional:()=>st,ZodParsedType:()=>O,ZodPipeline:()=>Dn,ZodPromise:()=>mr,ZodReadonly:()=>is,ZodRecord:()=>Pa,ZodSchema:()=>V,ZodSet:()=>Fs,ZodString:()=>fr,ZodSymbol:()=>qs,ZodTransformer:()=>it,ZodTuple:()=>At,ZodType:()=>V,ZodUndefined:()=>Yr,ZodUnion:()=>Zr,ZodUnknown:()=>Gt,ZodVoid:()=>Ds,addIssueToContext:()=>P,any:()=>lS,array:()=>pS,bigint:()=>nS,boolean:()=>Em,coerce:()=>qS,custom:()=>$m,date:()=>iS,datetimeRegex:()=>bm,defaultErrorMap:()=>Jt,discriminatedUnion:()=>yS,effect:()=>OS,enum:()=>TS,function:()=>SS,getErrorMap:()=>Ms,getParsedType:()=>Ct,instanceof:()=>rS,intersection:()=>vS,isAborted:()=>Ea,isAsync:()=>xs,isDirty:()=>Ta,isValid:()=>dr,late:()=>tS,lazy:()=>kS,literal:()=>ES,makeIssue:()=>jn,map:()=>wS,nan:()=>sS,nativeEnum:()=>NS,never:()=>dS,null:()=>cS,nullable:()=>AS,number:()=>km,object:()=>mS,objectUtil:()=>Gc,oboolean:()=>jS,onumber:()=>xS,optional:()=>CS,ostring:()=>MS,pipeline:()=>IS,preprocess:()=>RS,promise:()=>PS,quotelessJson:()=>O$,record:()=>bS,set:()=>$S,setErrorMap:()=>A$,strictObject:()=>hS,string:()=>Sm,symbol:()=>aS,transformer:()=>OS,tuple:()=>_S,undefined:()=>oS,union:()=>gS,unknown:()=>uS,util:()=>Y,void:()=>fS});var Y;(function(t){t.assertEqual=n=>{};function e(n){}t.assertIs=e;function r(n){throw new Error}t.assertNever=r,t.arrayToEnum=n=>{let i={};for(let a of n)i[a]=a;return i},t.getValidEnumValues=n=>{let i=t.objectKeys(n).filter(o=>typeof n[n[o]]!="number"),a={};for(let o of i)a[o]=n[o];return t.objectValues(a)},t.objectValues=n=>t.objectKeys(n).map(function(i){return n[i]}),t.objectKeys=typeof Object.keys=="function"?n=>Object.keys(n):n=>{let i=[];for(let a in n)Object.prototype.hasOwnProperty.call(n,a)&&i.push(a);return i},t.find=(n,i)=>{for(let a of n)if(i(a))return a},t.isInteger=typeof Number.isInteger=="function"?n=>Number.isInteger(n):n=>typeof n=="number"&&Number.isFinite(n)&&Math.floor(n)===n;function s(n,i=" | "){return n.map(a=>typeof a=="string"?`'${a}'`:a).join(i)}t.joinValues=s,t.jsonStringifyReplacer=(n,i)=>typeof i=="bigint"?i.toString():i})(Y||(Y={}));var Gc;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Gc||(Gc={}));var O=Y.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Ct=t=>{switch(typeof t){case"undefined":return O.undefined;case"string":return O.string;case"number":return Number.isNaN(t)?O.nan:O.number;case"boolean":return O.boolean;case"function":return O.function;case"bigint":return O.bigint;case"symbol":return O.symbol;case"object":return Array.isArray(t)?O.array:t===null?O.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?O.promise:typeof Map<"u"&&t instanceof Map?O.map:typeof Set<"u"&&t instanceof Set?O.set:typeof Date<"u"&&t instanceof Date?O.date:O.object;default:return O.unknown}};var E=Y.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),O$=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Ve=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=s=>{this.issues=[...this.issues,s]},this.addIssues=(s=[])=>{this.issues=[...this.issues,...s]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(i){return i.message},s={_errors:[]},n=i=>{for(let a of i.issues)if(a.code==="invalid_union")a.unionErrors.map(n);else if(a.code==="invalid_return_type")n(a.returnTypeError);else if(a.code==="invalid_arguments")n(a.argumentsError);else if(a.path.length===0)s._errors.push(r(a));else{let o=s,c=0;for(;c<a.path.length;){let l=a.path[c];c===a.path.length-1?(o[l]=o[l]||{_errors:[]},o[l]._errors.push(r(a))):o[l]=o[l]||{_errors:[]},o=o[l],c++}}};return n(this),s}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Y.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},s=[];for(let n of this.issues)if(n.path.length>0){let i=n.path[0];r[i]=r[i]||[],r[i].push(e(n))}else s.push(e(n));return{formErrors:s,fieldErrors:r}}get formErrors(){return this.flatten()}};Ve.create=t=>new Ve(t);var C$=(t,e)=>{let r;switch(t.code){case E.invalid_type:t.received===O.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case E.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Y.jsonStringifyReplacer)}`;break;case E.unrecognized_keys:r=`Unrecognized key(s) in object: ${Y.joinValues(t.keys,", ")}`;break;case E.invalid_union:r="Invalid input";break;case E.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Y.joinValues(t.options)}`;break;case E.invalid_enum_value:r=`Invalid enum value. Expected ${Y.joinValues(t.options)}, received '${t.received}'`;break;case E.invalid_arguments:r="Invalid function arguments";break;case E.invalid_return_type:r="Invalid function return type";break;case E.invalid_date:r="Invalid date";break;case E.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:Y.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case E.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case E.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case E.custom:r="Invalid input";break;case E.invalid_intersection_types:r="Intersection results could not be merged";break;case E.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case E.not_finite:r="Number must be finite";break;default:r=e.defaultError,Y.assertNever(t)}return{message:r}},Jt=C$;var hm=Jt;function A$(t){hm=t}function Ms(){return hm}var jn=t=>{let{data:e,path:r,errorMaps:s,issueData:n}=t,i=[...r,...n.path||[]],a={...n,path:i};if(n.message!==void 0)return{...n,path:i,message:n.message};let o="",c=s.filter(l=>!!l).slice().reverse();for(let l of c)o=l(a,{data:e,defaultError:o}).message;return{...n,path:i,message:o}},R$=[];function P(t,e){let r=Ms(),s=jn({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Jt?void 0:Jt].filter(n=>!!n)});t.common.issues.push(s)}var Ee=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let s=[];for(let n of r){if(n.status==="aborted")return M;n.status==="dirty"&&e.dirty(),s.push(n.value)}return{status:e.value,value:s}}static async mergeObjectAsync(e,r){let s=[];for(let n of r){let i=await n.key,a=await n.value;s.push({key:i,value:a})}return t.mergeObjectSync(e,s)}static mergeObjectSync(e,r){let s={};for(let n of r){let{key:i,value:a}=n;if(i.status==="aborted"||a.status==="aborted")return M;i.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),i.value!=="__proto__"&&(typeof a.value<"u"||n.alwaysSet)&&(s[i.value]=a.value)}return{status:e.value,value:s}}},M=Object.freeze({status:"aborted"}),zr=t=>({status:"dirty",value:t}),Ae=t=>({status:"valid",value:t}),Ea=t=>t.status==="aborted",Ta=t=>t.status==="dirty",dr=t=>t.status==="valid",xs=t=>typeof Promise<"u"&&t instanceof Promise;var C;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(C||(C={}));var nt=class{constructor(e,r,s,n){this._cachedPath=[],this.parent=e,this.data=r,this._path=s,this._key=n}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},gm=(t,e)=>{if(dr(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Ve(t.common.issues);return this._error=r,this._error}}};function L(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:s,description:n}=t;if(e&&(r||s))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:n}:{errorMap:(a,o)=>{let{message:c}=t;return a.code==="invalid_enum_value"?{message:c??o.defaultError}:typeof o.data>"u"?{message:c??s??o.defaultError}:a.code!=="invalid_type"?{message:o.defaultError}:{message:c??r??o.defaultError}},description:n}}var V=class{get description(){return this._def.description}_getType(e){return Ct(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Ct(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ee,ctx:{common:e.parent.common,data:e.data,parsedType:Ct(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(xs(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let s=this.safeParse(e,r);if(s.success)return s.data;throw s.error}safeParse(e,r){let s={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Ct(e)},n=this._parseSync({data:e,path:s.path,parent:s});return gm(s,n)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Ct(e)};if(!this["~standard"].async)try{let s=this._parseSync({data:e,path:[],parent:r});return dr(s)?{value:s.value}:{issues:r.common.issues}}catch(s){s?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(s=>dr(s)?{value:s.value}:{issues:r.common.issues})}async parseAsync(e,r){let s=await this.safeParseAsync(e,r);if(s.success)return s.data;throw s.error}async safeParseAsync(e,r){let s={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Ct(e)},n=this._parse({data:e,path:s.path,parent:s}),i=await(xs(n)?n:Promise.resolve(n));return gm(s,i)}refine(e,r){let s=n=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(n):r;return this._refinement((n,i)=>{let a=e(n),o=()=>i.addIssue({code:E.custom,...s(n)});return typeof Promise<"u"&&a instanceof Promise?a.then(c=>c?!0:(o(),!1)):a?!0:(o(),!1)})}refinement(e,r){return this._refinement((s,n)=>e(s)?!0:(n.addIssue(typeof r=="function"?r(s,n):r),!1))}_refinement(e){return new it({schema:this,typeName:x.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return st.create(this,this._def)}nullable(){return Rt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Yt.create(this)}promise(){return mr.create(this,this._def)}or(e){return Zr.create([this,e],this._def)}and(e){return Qr.create(this,e,this._def)}transform(e){return new it({...L(this._def),schema:this,typeName:x.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new ss({...L(this._def),innerType:this,defaultValue:r,typeName:x.ZodDefault})}brand(){return new qn({typeName:x.ZodBranded,type:this,...L(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new ns({...L(this._def),innerType:this,catchValue:r,typeName:x.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Dn.create(this,e)}readonly(){return is.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},I$=/^c[^\s-]{8,}$/i,M$=/^[0-9a-z]+$/,x$=/^[0-9A-HJKMNP-TV-Z]{26}$/i,j$=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,q$=/^[a-z0-9_-]{21}$/i,D$=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,L$=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,F$=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,U$="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Yc,V$=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,K$=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,z$=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,B$=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,J$=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,H$=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,vm="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",G$=new RegExp(`^${vm}$`);function _m(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function Y$(t){return new RegExp(`^${_m(t)}$`)}function bm(t){let e=`${vm}T${_m(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function W$(t,e){return!!((e==="v4"||!e)&&V$.test(t)||(e==="v6"||!e)&&z$.test(t))}function Z$(t,e){if(!D$.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let s=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),n=JSON.parse(atob(s));return!(typeof n!="object"||n===null||"typ"in n&&n?.typ!=="JWT"||!n.alg||e&&n.alg!==e)}catch{return!1}}function Q$(t,e){return!!((e==="v4"||!e)&&K$.test(t)||(e==="v6"||!e)&&B$.test(t))}var fr=class t extends V{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==O.string){let i=this._getOrReturnCtx(e);return P(i,{code:E.invalid_type,expected:O.string,received:i.parsedType}),M}let s=new Ee,n;for(let i of this._def.checks)if(i.kind==="min")e.data.length<i.value&&(n=this._getOrReturnCtx(e,n),P(n,{code:E.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),s.dirty());else if(i.kind==="max")e.data.length>i.value&&(n=this._getOrReturnCtx(e,n),P(n,{code:E.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),s.dirty());else if(i.kind==="length"){let a=e.data.length>i.value,o=e.data.length<i.value;(a||o)&&(n=this._getOrReturnCtx(e,n),a?P(n,{code:E.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):o&&P(n,{code:E.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),s.dirty())}else if(i.kind==="email")F$.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"email",code:E.invalid_string,message:i.message}),s.dirty());else if(i.kind==="emoji")Yc||(Yc=new RegExp(U$,"u")),Yc.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"emoji",code:E.invalid_string,message:i.message}),s.dirty());else if(i.kind==="uuid")j$.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"uuid",code:E.invalid_string,message:i.message}),s.dirty());else if(i.kind==="nanoid")q$.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"nanoid",code:E.invalid_string,message:i.message}),s.dirty());else if(i.kind==="cuid")I$.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"cuid",code:E.invalid_string,message:i.message}),s.dirty());else if(i.kind==="cuid2")M$.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"cuid2",code:E.invalid_string,message:i.message}),s.dirty());else if(i.kind==="ulid")x$.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"ulid",code:E.invalid_string,message:i.message}),s.dirty());else if(i.kind==="url")try{new URL(e.data)}catch{n=this._getOrReturnCtx(e,n),P(n,{validation:"url",code:E.invalid_string,message:i.message}),s.dirty()}else i.kind==="regex"?(i.regex.lastIndex=0,i.regex.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"regex",code:E.invalid_string,message:i.message}),s.dirty())):i.kind==="trim"?e.data=e.data.trim():i.kind==="includes"?e.data.includes(i.value,i.position)||(n=this._getOrReturnCtx(e,n),P(n,{code:E.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),s.dirty()):i.kind==="toLowerCase"?e.data=e.data.toLowerCase():i.kind==="toUpperCase"?e.data=e.data.toUpperCase():i.kind==="startsWith"?e.data.startsWith(i.value)||(n=this._getOrReturnCtx(e,n),P(n,{code:E.invalid_string,validation:{startsWith:i.value},message:i.message}),s.dirty()):i.kind==="endsWith"?e.data.endsWith(i.value)||(n=this._getOrReturnCtx(e,n),P(n,{code:E.invalid_string,validation:{endsWith:i.value},message:i.message}),s.dirty()):i.kind==="datetime"?bm(i).test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{code:E.invalid_string,validation:"datetime",message:i.message}),s.dirty()):i.kind==="date"?G$.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{code:E.invalid_string,validation:"date",message:i.message}),s.dirty()):i.kind==="time"?Y$(i).test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{code:E.invalid_string,validation:"time",message:i.message}),s.dirty()):i.kind==="duration"?L$.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"duration",code:E.invalid_string,message:i.message}),s.dirty()):i.kind==="ip"?W$(e.data,i.version)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"ip",code:E.invalid_string,message:i.message}),s.dirty()):i.kind==="jwt"?Z$(e.data,i.alg)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"jwt",code:E.invalid_string,message:i.message}),s.dirty()):i.kind==="cidr"?Q$(e.data,i.version)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"cidr",code:E.invalid_string,message:i.message}),s.dirty()):i.kind==="base64"?J$.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"base64",code:E.invalid_string,message:i.message}),s.dirty()):i.kind==="base64url"?H$.test(e.data)||(n=this._getOrReturnCtx(e,n),P(n,{validation:"base64url",code:E.invalid_string,message:i.message}),s.dirty()):Y.assertNever(i);return{status:s.value,value:e.data}}_regex(e,r,s){return this.refinement(n=>e.test(n),{validation:r,code:E.invalid_string,...C.errToObj(s)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...C.errToObj(e)})}url(e){return this._addCheck({kind:"url",...C.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...C.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...C.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...C.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...C.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...C.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...C.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...C.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...C.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...C.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...C.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...C.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...C.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...C.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...C.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...C.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...C.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...C.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...C.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...C.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...C.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...C.errToObj(r)})}nonempty(e){return this.min(1,C.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};fr.create=t=>new fr({checks:[],typeName:x.ZodString,coerce:t?.coerce??!1,...L(t)});function X$(t,e){let r=(t.toString().split(".")[1]||"").length,s=(e.toString().split(".")[1]||"").length,n=r>s?r:s,i=Number.parseInt(t.toFixed(n).replace(".","")),a=Number.parseInt(e.toFixed(n).replace(".",""));return i%a/10**n}var Br=class t extends V{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==O.number){let i=this._getOrReturnCtx(e);return P(i,{code:E.invalid_type,expected:O.number,received:i.parsedType}),M}let s,n=new Ee;for(let i of this._def.checks)i.kind==="int"?Y.isInteger(e.data)||(s=this._getOrReturnCtx(e,s),P(s,{code:E.invalid_type,expected:"integer",received:"float",message:i.message}),n.dirty()):i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(s=this._getOrReturnCtx(e,s),P(s,{code:E.too_small,minimum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),n.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(s=this._getOrReturnCtx(e,s),P(s,{code:E.too_big,maximum:i.value,type:"number",inclusive:i.inclusive,exact:!1,message:i.message}),n.dirty()):i.kind==="multipleOf"?X$(e.data,i.value)!==0&&(s=this._getOrReturnCtx(e,s),P(s,{code:E.not_multiple_of,multipleOf:i.value,message:i.message}),n.dirty()):i.kind==="finite"?Number.isFinite(e.data)||(s=this._getOrReturnCtx(e,s),P(s,{code:E.not_finite,message:i.message}),n.dirty()):Y.assertNever(i);return{status:n.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,C.toString(r))}gt(e,r){return this.setLimit("min",e,!1,C.toString(r))}lte(e,r){return this.setLimit("max",e,!0,C.toString(r))}lt(e,r){return this.setLimit("max",e,!1,C.toString(r))}setLimit(e,r,s,n){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:s,message:C.toString(n)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:C.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:C.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:C.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:C.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:C.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:C.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:C.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:C.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:C.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&Y.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let s of this._def.checks){if(s.kind==="finite"||s.kind==="int"||s.kind==="multipleOf")return!0;s.kind==="min"?(r===null||s.value>r)&&(r=s.value):s.kind==="max"&&(e===null||s.value<e)&&(e=s.value)}return Number.isFinite(r)&&Number.isFinite(e)}};Br.create=t=>new Br({checks:[],typeName:x.ZodNumber,coerce:t?.coerce||!1,...L(t)});var Jr=class t extends V{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==O.bigint)return this._getInvalidInput(e);let s,n=new Ee;for(let i of this._def.checks)i.kind==="min"?(i.inclusive?e.data<i.value:e.data<=i.value)&&(s=this._getOrReturnCtx(e,s),P(s,{code:E.too_small,type:"bigint",minimum:i.value,inclusive:i.inclusive,message:i.message}),n.dirty()):i.kind==="max"?(i.inclusive?e.data>i.value:e.data>=i.value)&&(s=this._getOrReturnCtx(e,s),P(s,{code:E.too_big,type:"bigint",maximum:i.value,inclusive:i.inclusive,message:i.message}),n.dirty()):i.kind==="multipleOf"?e.data%i.value!==BigInt(0)&&(s=this._getOrReturnCtx(e,s),P(s,{code:E.not_multiple_of,multipleOf:i.value,message:i.message}),n.dirty()):Y.assertNever(i);return{status:n.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return P(r,{code:E.invalid_type,expected:O.bigint,received:r.parsedType}),M}gte(e,r){return this.setLimit("min",e,!0,C.toString(r))}gt(e,r){return this.setLimit("min",e,!1,C.toString(r))}lte(e,r){return this.setLimit("max",e,!0,C.toString(r))}lt(e,r){return this.setLimit("max",e,!1,C.toString(r))}setLimit(e,r,s,n){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:s,message:C.toString(n)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:C.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:C.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:C.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:C.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:C.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Jr.create=t=>new Jr({checks:[],typeName:x.ZodBigInt,coerce:t?.coerce??!1,...L(t)});var Hr=class extends V{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==O.boolean){let s=this._getOrReturnCtx(e);return P(s,{code:E.invalid_type,expected:O.boolean,received:s.parsedType}),M}return Ae(e.data)}};Hr.create=t=>new Hr({typeName:x.ZodBoolean,coerce:t?.coerce||!1,...L(t)});var Gr=class t extends V{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==O.date){let i=this._getOrReturnCtx(e);return P(i,{code:E.invalid_type,expected:O.date,received:i.parsedType}),M}if(Number.isNaN(e.data.getTime())){let i=this._getOrReturnCtx(e);return P(i,{code:E.invalid_date}),M}let s=new Ee,n;for(let i of this._def.checks)i.kind==="min"?e.data.getTime()<i.value&&(n=this._getOrReturnCtx(e,n),P(n,{code:E.too_small,message:i.message,inclusive:!0,exact:!1,minimum:i.value,type:"date"}),s.dirty()):i.kind==="max"?e.data.getTime()>i.value&&(n=this._getOrReturnCtx(e,n),P(n,{code:E.too_big,message:i.message,inclusive:!0,exact:!1,maximum:i.value,type:"date"}),s.dirty()):Y.assertNever(i);return{status:s.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:C.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:C.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};Gr.create=t=>new Gr({checks:[],coerce:t?.coerce||!1,typeName:x.ZodDate,...L(t)});var qs=class extends V{_parse(e){if(this._getType(e)!==O.symbol){let s=this._getOrReturnCtx(e);return P(s,{code:E.invalid_type,expected:O.symbol,received:s.parsedType}),M}return Ae(e.data)}};qs.create=t=>new qs({typeName:x.ZodSymbol,...L(t)});var Yr=class extends V{_parse(e){if(this._getType(e)!==O.undefined){let s=this._getOrReturnCtx(e);return P(s,{code:E.invalid_type,expected:O.undefined,received:s.parsedType}),M}return Ae(e.data)}};Yr.create=t=>new Yr({typeName:x.ZodUndefined,...L(t)});var Wr=class extends V{_parse(e){if(this._getType(e)!==O.null){let s=this._getOrReturnCtx(e);return P(s,{code:E.invalid_type,expected:O.null,received:s.parsedType}),M}return Ae(e.data)}};Wr.create=t=>new Wr({typeName:x.ZodNull,...L(t)});var pr=class extends V{constructor(){super(...arguments),this._any=!0}_parse(e){return Ae(e.data)}};pr.create=t=>new pr({typeName:x.ZodAny,...L(t)});var Gt=class extends V{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ae(e.data)}};Gt.create=t=>new Gt({typeName:x.ZodUnknown,...L(t)});var yt=class extends V{_parse(e){let r=this._getOrReturnCtx(e);return P(r,{code:E.invalid_type,expected:O.never,received:r.parsedType}),M}};yt.create=t=>new yt({typeName:x.ZodNever,...L(t)});var Ds=class extends V{_parse(e){if(this._getType(e)!==O.undefined){let s=this._getOrReturnCtx(e);return P(s,{code:E.invalid_type,expected:O.void,received:s.parsedType}),M}return Ae(e.data)}};Ds.create=t=>new Ds({typeName:x.ZodVoid,...L(t)});var Yt=class t extends V{_parse(e){let{ctx:r,status:s}=this._processInputParams(e),n=this._def;if(r.parsedType!==O.array)return P(r,{code:E.invalid_type,expected:O.array,received:r.parsedType}),M;if(n.exactLength!==null){let a=r.data.length>n.exactLength.value,o=r.data.length<n.exactLength.value;(a||o)&&(P(r,{code:a?E.too_big:E.too_small,minimum:o?n.exactLength.value:void 0,maximum:a?n.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:n.exactLength.message}),s.dirty())}if(n.minLength!==null&&r.data.length<n.minLength.value&&(P(r,{code:E.too_small,minimum:n.minLength.value,type:"array",inclusive:!0,exact:!1,message:n.minLength.message}),s.dirty()),n.maxLength!==null&&r.data.length>n.maxLength.value&&(P(r,{code:E.too_big,maximum:n.maxLength.value,type:"array",inclusive:!0,exact:!1,message:n.maxLength.message}),s.dirty()),r.common.async)return Promise.all([...r.data].map((a,o)=>n.type._parseAsync(new nt(r,a,r.path,o)))).then(a=>Ee.mergeArray(s,a));let i=[...r.data].map((a,o)=>n.type._parseSync(new nt(r,a,r.path,o)));return Ee.mergeArray(s,i)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:C.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:C.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:C.toString(r)}})}nonempty(e){return this.min(1,e)}};Yt.create=(t,e)=>new Yt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:x.ZodArray,...L(e)});function js(t){if(t instanceof Ke){let e={};for(let r in t.shape){let s=t.shape[r];e[r]=st.create(js(s))}return new Ke({...t._def,shape:()=>e})}else return t instanceof Yt?new Yt({...t._def,type:js(t.element)}):t instanceof st?st.create(js(t.unwrap())):t instanceof Rt?Rt.create(js(t.unwrap())):t instanceof At?At.create(t.items.map(e=>js(e))):t}var Ke=class t extends V{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=Y.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==O.object){let l=this._getOrReturnCtx(e);return P(l,{code:E.invalid_type,expected:O.object,received:l.parsedType}),M}let{status:s,ctx:n}=this._processInputParams(e),{shape:i,keys:a}=this._getCached(),o=[];if(!(this._def.catchall instanceof yt&&this._def.unknownKeys==="strip"))for(let l in n.data)a.includes(l)||o.push(l);let c=[];for(let l of a){let u=i[l],d=n.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new nt(n,d,n.path,l)),alwaysSet:l in n.data})}if(this._def.catchall instanceof yt){let l=this._def.unknownKeys;if(l==="passthrough")for(let u of o)c.push({key:{status:"valid",value:u},value:{status:"valid",value:n.data[u]}});else if(l==="strict")o.length>0&&(P(n,{code:E.unrecognized_keys,keys:o}),s.dirty());else if(l!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let l=this._def.catchall;for(let u of o){let d=n.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new nt(n,d,n.path,u)),alwaysSet:u in n.data})}}return n.common.async?Promise.resolve().then(async()=>{let l=[];for(let u of c){let d=await u.key,f=await u.value;l.push({key:d,value:f,alwaysSet:u.alwaysSet})}return l}).then(l=>Ee.mergeObjectSync(s,l)):Ee.mergeObjectSync(s,c)}get shape(){return this._def.shape()}strict(e){return C.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,s)=>{let n=this._def.errorMap?.(r,s).message??s.defaultError;return r.code==="unrecognized_keys"?{message:C.errToObj(e).message??n}:{message:n}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:x.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let s of Y.objectKeys(e))e[s]&&this.shape[s]&&(r[s]=this.shape[s]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let s of Y.objectKeys(this.shape))e[s]||(r[s]=this.shape[s]);return new t({...this._def,shape:()=>r})}deepPartial(){return js(this)}partial(e){let r={};for(let s of Y.objectKeys(this.shape)){let n=this.shape[s];e&&!e[s]?r[s]=n:r[s]=n.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let s of Y.objectKeys(this.shape))if(e&&!e[s])r[s]=this.shape[s];else{let i=this.shape[s];for(;i instanceof st;)i=i._def.innerType;r[s]=i}return new t({...this._def,shape:()=>r})}keyof(){return wm(Y.objectKeys(this.shape))}};Ke.create=(t,e)=>new Ke({shape:()=>t,unknownKeys:"strip",catchall:yt.create(),typeName:x.ZodObject,...L(e)});Ke.strictCreate=(t,e)=>new Ke({shape:()=>t,unknownKeys:"strict",catchall:yt.create(),typeName:x.ZodObject,...L(e)});Ke.lazycreate=(t,e)=>new Ke({shape:t,unknownKeys:"strip",catchall:yt.create(),typeName:x.ZodObject,...L(e)});var Zr=class extends V{_parse(e){let{ctx:r}=this._processInputParams(e),s=this._def.options;function n(i){for(let o of i)if(o.result.status==="valid")return o.result;for(let o of i)if(o.result.status==="dirty")return r.common.issues.push(...o.ctx.common.issues),o.result;let a=i.map(o=>new Ve(o.ctx.common.issues));return P(r,{code:E.invalid_union,unionErrors:a}),M}if(r.common.async)return Promise.all(s.map(async i=>{let a={...r,common:{...r.common,issues:[]},parent:null};return{result:await i._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(n);{let i,a=[];for(let c of s){let l={...r,common:{...r.common,issues:[]},parent:null},u=c._parseSync({data:r.data,path:r.path,parent:l});if(u.status==="valid")return u;u.status==="dirty"&&!i&&(i={result:u,ctx:l}),l.common.issues.length&&a.push(l.common.issues)}if(i)return r.common.issues.push(...i.ctx.common.issues),i.result;let o=a.map(c=>new Ve(c));return P(r,{code:E.invalid_union,unionErrors:o}),M}}get options(){return this._def.options}};Zr.create=(t,e)=>new Zr({options:t,typeName:x.ZodUnion,...L(e)});var Ht=t=>t instanceof Xr?Ht(t.schema):t instanceof it?Ht(t.innerType()):t instanceof es?[t.value]:t instanceof ts?t.options:t instanceof rs?Y.objectValues(t.enum):t instanceof ss?Ht(t._def.innerType):t instanceof Yr?[void 0]:t instanceof Wr?[null]:t instanceof st?[void 0,...Ht(t.unwrap())]:t instanceof Rt?[null,...Ht(t.unwrap())]:t instanceof qn||t instanceof is?Ht(t.unwrap()):t instanceof ns?Ht(t._def.innerType):[],Na=class t extends V{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.object)return P(r,{code:E.invalid_type,expected:O.object,received:r.parsedType}),M;let s=this.discriminator,n=r.data[s],i=this.optionsMap.get(n);return i?r.common.async?i._parseAsync({data:r.data,path:r.path,parent:r}):i._parseSync({data:r.data,path:r.path,parent:r}):(P(r,{code:E.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[s]}),M)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,s){let n=new Map;for(let i of r){let a=Ht(i.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let o of a){if(n.has(o))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(o)}`);n.set(o,i)}}return new t({typeName:x.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:n,...L(s)})}};function Wc(t,e){let r=Ct(t),s=Ct(e);if(t===e)return{valid:!0,data:t};if(r===O.object&&s===O.object){let n=Y.objectKeys(e),i=Y.objectKeys(t).filter(o=>n.indexOf(o)!==-1),a={...t,...e};for(let o of i){let c=Wc(t[o],e[o]);if(!c.valid)return{valid:!1};a[o]=c.data}return{valid:!0,data:a}}else if(r===O.array&&s===O.array){if(t.length!==e.length)return{valid:!1};let n=[];for(let i=0;i<t.length;i++){let a=t[i],o=e[i],c=Wc(a,o);if(!c.valid)return{valid:!1};n.push(c.data)}return{valid:!0,data:n}}else return r===O.date&&s===O.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var Qr=class extends V{_parse(e){let{status:r,ctx:s}=this._processInputParams(e),n=(i,a)=>{if(Ea(i)||Ea(a))return M;let o=Wc(i.value,a.value);return o.valid?((Ta(i)||Ta(a))&&r.dirty(),{status:r.value,value:o.data}):(P(s,{code:E.invalid_intersection_types}),M)};return s.common.async?Promise.all([this._def.left._parseAsync({data:s.data,path:s.path,parent:s}),this._def.right._parseAsync({data:s.data,path:s.path,parent:s})]).then(([i,a])=>n(i,a)):n(this._def.left._parseSync({data:s.data,path:s.path,parent:s}),this._def.right._parseSync({data:s.data,path:s.path,parent:s}))}};Qr.create=(t,e,r)=>new Qr({left:t,right:e,typeName:x.ZodIntersection,...L(r)});var At=class t extends V{_parse(e){let{status:r,ctx:s}=this._processInputParams(e);if(s.parsedType!==O.array)return P(s,{code:E.invalid_type,expected:O.array,received:s.parsedType}),M;if(s.data.length<this._def.items.length)return P(s,{code:E.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),M;!this._def.rest&&s.data.length>this._def.items.length&&(P(s,{code:E.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let i=[...s.data].map((a,o)=>{let c=this._def.items[o]||this._def.rest;return c?c._parse(new nt(s,a,s.path,o)):null}).filter(a=>!!a);return s.common.async?Promise.all(i).then(a=>Ee.mergeArray(r,a)):Ee.mergeArray(r,i)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};At.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new At({items:t,typeName:x.ZodTuple,rest:null,...L(e)})};var Pa=class t extends V{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:s}=this._processInputParams(e);if(s.parsedType!==O.object)return P(s,{code:E.invalid_type,expected:O.object,received:s.parsedType}),M;let n=[],i=this._def.keyType,a=this._def.valueType;for(let o in s.data)n.push({key:i._parse(new nt(s,o,s.path,o)),value:a._parse(new nt(s,s.data[o],s.path,o)),alwaysSet:o in s.data});return s.common.async?Ee.mergeObjectAsync(r,n):Ee.mergeObjectSync(r,n)}get element(){return this._def.valueType}static create(e,r,s){return r instanceof V?new t({keyType:e,valueType:r,typeName:x.ZodRecord,...L(s)}):new t({keyType:fr.create(),valueType:e,typeName:x.ZodRecord,...L(r)})}},Ls=class extends V{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:s}=this._processInputParams(e);if(s.parsedType!==O.map)return P(s,{code:E.invalid_type,expected:O.map,received:s.parsedType}),M;let n=this._def.keyType,i=this._def.valueType,a=[...s.data.entries()].map(([o,c],l)=>({key:n._parse(new nt(s,o,s.path,[l,"key"])),value:i._parse(new nt(s,c,s.path,[l,"value"]))}));if(s.common.async){let o=new Map;return Promise.resolve().then(async()=>{for(let c of a){let l=await c.key,u=await c.value;if(l.status==="aborted"||u.status==="aborted")return M;(l.status==="dirty"||u.status==="dirty")&&r.dirty(),o.set(l.value,u.value)}return{status:r.value,value:o}})}else{let o=new Map;for(let c of a){let l=c.key,u=c.value;if(l.status==="aborted"||u.status==="aborted")return M;(l.status==="dirty"||u.status==="dirty")&&r.dirty(),o.set(l.value,u.value)}return{status:r.value,value:o}}}};Ls.create=(t,e,r)=>new Ls({valueType:e,keyType:t,typeName:x.ZodMap,...L(r)});var Fs=class t extends V{_parse(e){let{status:r,ctx:s}=this._processInputParams(e);if(s.parsedType!==O.set)return P(s,{code:E.invalid_type,expected:O.set,received:s.parsedType}),M;let n=this._def;n.minSize!==null&&s.data.size<n.minSize.value&&(P(s,{code:E.too_small,minimum:n.minSize.value,type:"set",inclusive:!0,exact:!1,message:n.minSize.message}),r.dirty()),n.maxSize!==null&&s.data.size>n.maxSize.value&&(P(s,{code:E.too_big,maximum:n.maxSize.value,type:"set",inclusive:!0,exact:!1,message:n.maxSize.message}),r.dirty());let i=this._def.valueType;function a(c){let l=new Set;for(let u of c){if(u.status==="aborted")return M;u.status==="dirty"&&r.dirty(),l.add(u.value)}return{status:r.value,value:l}}let o=[...s.data.values()].map((c,l)=>i._parse(new nt(s,c,s.path,l)));return s.common.async?Promise.all(o).then(c=>a(c)):a(o)}min(e,r){return new t({...this._def,minSize:{value:e,message:C.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:C.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Fs.create=(t,e)=>new Fs({valueType:t,minSize:null,maxSize:null,typeName:x.ZodSet,...L(e)});var Oa=class t extends V{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.function)return P(r,{code:E.invalid_type,expected:O.function,received:r.parsedType}),M;function s(o,c){return jn({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ms(),Jt].filter(l=>!!l),issueData:{code:E.invalid_arguments,argumentsError:c}})}function n(o,c){return jn({data:o,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Ms(),Jt].filter(l=>!!l),issueData:{code:E.invalid_return_type,returnTypeError:c}})}let i={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof mr){let o=this;return Ae(async function(...c){let l=new Ve([]),u=await o._def.args.parseAsync(c,i).catch(p=>{throw l.addIssue(s(c,p)),l}),d=await Reflect.apply(a,this,u);return await o._def.returns._def.type.parseAsync(d,i).catch(p=>{throw l.addIssue(n(d,p)),l})})}else{let o=this;return Ae(function(...c){let l=o._def.args.safeParse(c,i);if(!l.success)throw new Ve([s(c,l.error)]);let u=Reflect.apply(a,this,l.data),d=o._def.returns.safeParse(u,i);if(!d.success)throw new Ve([n(u,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:At.create(e).rest(Gt.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,s){return new t({args:e||At.create([]).rest(Gt.create()),returns:r||Gt.create(),typeName:x.ZodFunction,...L(s)})}},Xr=class extends V{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Xr.create=(t,e)=>new Xr({getter:t,typeName:x.ZodLazy,...L(e)});var es=class extends V{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return P(r,{received:r.data,code:E.invalid_literal,expected:this._def.value}),M}return{status:"valid",value:e.data}}get value(){return this._def.value}};es.create=(t,e)=>new es({value:t,typeName:x.ZodLiteral,...L(e)});function wm(t,e){return new ts({values:t,typeName:x.ZodEnum,...L(e)})}var ts=class t extends V{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),s=this._def.values;return P(r,{expected:Y.joinValues(s),received:r.parsedType,code:E.invalid_type}),M}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),s=this._def.values;return P(r,{received:r.data,code:E.invalid_enum_value,options:s}),M}return Ae(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(s=>!e.includes(s)),{...this._def,...r})}};ts.create=wm;var rs=class extends V{_parse(e){let r=Y.getValidEnumValues(this._def.values),s=this._getOrReturnCtx(e);if(s.parsedType!==O.string&&s.parsedType!==O.number){let n=Y.objectValues(r);return P(s,{expected:Y.joinValues(n),received:s.parsedType,code:E.invalid_type}),M}if(this._cache||(this._cache=new Set(Y.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let n=Y.objectValues(r);return P(s,{received:s.data,code:E.invalid_enum_value,options:n}),M}return Ae(e.data)}get enum(){return this._def.values}};rs.create=(t,e)=>new rs({values:t,typeName:x.ZodNativeEnum,...L(e)});var mr=class extends V{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==O.promise&&r.common.async===!1)return P(r,{code:E.invalid_type,expected:O.promise,received:r.parsedType}),M;let s=r.parsedType===O.promise?r.data:Promise.resolve(r.data);return Ae(s.then(n=>this._def.type.parseAsync(n,{path:r.path,errorMap:r.common.contextualErrorMap})))}};mr.create=(t,e)=>new mr({type:t,typeName:x.ZodPromise,...L(e)});var it=class extends V{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===x.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:s}=this._processInputParams(e),n=this._def.effect||null,i={addIssue:a=>{P(s,a),a.fatal?r.abort():r.dirty()},get path(){return s.path}};if(i.addIssue=i.addIssue.bind(i),n.type==="preprocess"){let a=n.transform(s.data,i);if(s.common.async)return Promise.resolve(a).then(async o=>{if(r.value==="aborted")return M;let c=await this._def.schema._parseAsync({data:o,path:s.path,parent:s});return c.status==="aborted"?M:c.status==="dirty"?zr(c.value):r.value==="dirty"?zr(c.value):c});{if(r.value==="aborted")return M;let o=this._def.schema._parseSync({data:a,path:s.path,parent:s});return o.status==="aborted"?M:o.status==="dirty"?zr(o.value):r.value==="dirty"?zr(o.value):o}}if(n.type==="refinement"){let a=o=>{let c=n.refinement(o,i);if(s.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return o};if(s.common.async===!1){let o=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});return o.status==="aborted"?M:(o.status==="dirty"&&r.dirty(),a(o.value),{status:r.value,value:o.value})}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(o=>o.status==="aborted"?M:(o.status==="dirty"&&r.dirty(),a(o.value).then(()=>({status:r.value,value:o.value}))))}if(n.type==="transform")if(s.common.async===!1){let a=this._def.schema._parseSync({data:s.data,path:s.path,parent:s});if(!dr(a))return M;let o=n.transform(a.value,i);if(o instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:o}}else return this._def.schema._parseAsync({data:s.data,path:s.path,parent:s}).then(a=>dr(a)?Promise.resolve(n.transform(a.value,i)).then(o=>({status:r.value,value:o})):M);Y.assertNever(n)}};it.create=(t,e,r)=>new it({schema:t,typeName:x.ZodEffects,effect:e,...L(r)});it.createWithPreprocess=(t,e,r)=>new it({schema:e,effect:{type:"preprocess",transform:t},typeName:x.ZodEffects,...L(r)});var st=class extends V{_parse(e){return this._getType(e)===O.undefined?Ae(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};st.create=(t,e)=>new st({innerType:t,typeName:x.ZodOptional,...L(e)});var Rt=class extends V{_parse(e){return this._getType(e)===O.null?Ae(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Rt.create=(t,e)=>new Rt({innerType:t,typeName:x.ZodNullable,...L(e)});var ss=class extends V{_parse(e){let{ctx:r}=this._processInputParams(e),s=r.data;return r.parsedType===O.undefined&&(s=this._def.defaultValue()),this._def.innerType._parse({data:s,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};ss.create=(t,e)=>new ss({innerType:t,typeName:x.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...L(e)});var ns=class extends V{_parse(e){let{ctx:r}=this._processInputParams(e),s={...r,common:{...r.common,issues:[]}},n=this._def.innerType._parse({data:s.data,path:s.path,parent:{...s}});return xs(n)?n.then(i=>({status:"valid",value:i.status==="valid"?i.value:this._def.catchValue({get error(){return new Ve(s.common.issues)},input:s.data})})):{status:"valid",value:n.status==="valid"?n.value:this._def.catchValue({get error(){return new Ve(s.common.issues)},input:s.data})}}removeCatch(){return this._def.innerType}};ns.create=(t,e)=>new ns({innerType:t,typeName:x.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...L(e)});var Us=class extends V{_parse(e){if(this._getType(e)!==O.nan){let s=this._getOrReturnCtx(e);return P(s,{code:E.invalid_type,expected:O.nan,received:s.parsedType}),M}return{status:"valid",value:e.data}}};Us.create=t=>new Us({typeName:x.ZodNaN,...L(t)});var eS=Symbol("zod_brand"),qn=class extends V{_parse(e){let{ctx:r}=this._processInputParams(e),s=r.data;return this._def.type._parse({data:s,path:r.path,parent:r})}unwrap(){return this._def.type}},Dn=class t extends V{_parse(e){let{status:r,ctx:s}=this._processInputParams(e);if(s.common.async)return(async()=>{let i=await this._def.in._parseAsync({data:s.data,path:s.path,parent:s});return i.status==="aborted"?M:i.status==="dirty"?(r.dirty(),zr(i.value)):this._def.out._parseAsync({data:i.value,path:s.path,parent:s})})();{let n=this._def.in._parseSync({data:s.data,path:s.path,parent:s});return n.status==="aborted"?M:n.status==="dirty"?(r.dirty(),{status:"dirty",value:n.value}):this._def.out._parseSync({data:n.value,path:s.path,parent:s})}}static create(e,r){return new t({in:e,out:r,typeName:x.ZodPipeline})}},is=class extends V{_parse(e){let r=this._def.innerType._parse(e),s=n=>(dr(n)&&(n.value=Object.freeze(n.value)),n);return xs(r)?r.then(n=>s(n)):s(r)}unwrap(){return this._def.innerType}};is.create=(t,e)=>new is({innerType:t,typeName:x.ZodReadonly,...L(e)});function ym(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function $m(t,e={},r){return t?pr.create().superRefine((s,n)=>{let i=t(s);if(i instanceof Promise)return i.then(a=>{if(!a){let o=ym(e,s),c=o.fatal??r??!0;n.addIssue({code:"custom",...o,fatal:c})}});if(!i){let a=ym(e,s),o=a.fatal??r??!0;n.addIssue({code:"custom",...a,fatal:o})}}):pr.create()}var tS={object:Ke.lazycreate},x;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(x||(x={}));var rS=(t,e={message:`Input not instance of ${t.name}`})=>$m(r=>r instanceof t,e),Sm=fr.create,km=Br.create,sS=Us.create,nS=Jr.create,Em=Hr.create,iS=Gr.create,aS=qs.create,oS=Yr.create,cS=Wr.create,lS=pr.create,uS=Gt.create,dS=yt.create,fS=Ds.create,pS=Yt.create,mS=Ke.create,hS=Ke.strictCreate,gS=Zr.create,yS=Na.create,vS=Qr.create,_S=At.create,bS=Pa.create,wS=Ls.create,$S=Fs.create,SS=Oa.create,kS=Xr.create,ES=es.create,TS=ts.create,NS=rs.create,PS=mr.create,OS=it.create,CS=st.create,AS=Rt.create,RS=it.createWithPreprocess,IS=Dn.create,MS=()=>Sm().optional(),xS=()=>km().optional(),jS=()=>Em().optional(),qS={string:(t=>fr.create({...t,coerce:!0})),number:(t=>Br.create({...t,coerce:!0})),boolean:(t=>Hr.create({...t,coerce:!0})),bigint:(t=>Jr.create({...t,coerce:!0})),date:(t=>Gr.create({...t,coerce:!0}))};var DS=M;var Nw=Hc(py(),1);import{createHash as IL}from"crypto";var I=class extends Error{constructor(t,e,r,s=!1,n){super(e),this.code=t,this.statusCode=r,this.retryable=s,this.raw=n,this.name="ProviderError"}};function or(t){return{success:!0,data:t}}function ye(t){return{success:!1,error:t}}function Tw(t,e){for(let[r,s]of Object.entries(e))if(JSON.stringify(t[r])!==JSON.stringify(s))return!1;return!0}function Zq(t,e){return{type:"tool_called",evaluate(r){let s=[],n=r.toolCalls.filter(a=>a.name===t),i=r.toolCalls.map(a=>a.name);if(n.length===0)return s.push({assertionType:"tool_called",label:`Tool "${t}" called`,passed:!1,score:0,failureCode:"TOOL_CALL_MISSING",failureMessage:`Expected tool "${t}" to be called, but got: [${i.join(", ")}]`}),Promise.resolve(s);if(s.push({assertionType:"tool_called",label:`Tool "${t}" called`,passed:!0,score:1}),e){let a=n.some(o=>Tw(o.arguments,e));s.push({assertionType:"tool_called",label:`Tool "${t}" args match`,passed:a,score:a?1:0,failureCode:a?void 0:"TOOL_CALL_ARGS_MISMATCH",failureMessage:a?void 0:`Expected args ${JSON.stringify(e)}, got ${JSON.stringify(n[0]?.arguments)}`})}return Promise.resolve(s)}}}function Qq(t){return{type:"tool_not_called",evaluate(e){let r=e.toolCalls.some(s=>s.name===t);return Promise.resolve([{assertionType:"tool_not_called",label:`Tool "${t}" not called`,passed:!r,score:r?0:1,failureCode:r?"TOOL_CALL_UNEXPECTED":void 0,failureMessage:r?`Expected tool "${t}" to NOT be called, but it was`:void 0}])}}}function Xq(t){return{type:"tool_order",evaluate(e){let r=[];for(let s of t){if(s.shouldNotCall){let i=e.toolCalls.some(a=>a.name===s.tool);r.push({assertionType:"tool_order",label:`Tool "${s.tool}" not called`,passed:!i,score:i?0:1,failureCode:i?"TOOL_CALL_UNEXPECTED":void 0,failureMessage:i?`Expected tool "${s.tool}" to NOT be called, but it was`:void 0});continue}let n=e.toolCalls.filter(i=>i.name===s.tool);if(n.length===0){r.push({assertionType:"tool_order",label:`Tool "${s.tool}" called`,passed:!1,score:0,failureCode:"TOOL_CALL_MISSING",failureMessage:`Expected tool "${s.tool}" to be called, but it was not`});continue}if(r.push({assertionType:"tool_order",label:`Tool "${s.tool}" called`,passed:!0,score:1}),s.argsMatch){let i=n.some(a=>Tw(a.arguments,s.argsMatch??{}));r.push({assertionType:"tool_order",label:`Tool "${s.tool}" args match`,passed:i,score:i?1:0,failureCode:i?void 0:"TOOL_CALL_ARGS_MISMATCH",failureMessage:i?void 0:`Expected args ${JSON.stringify(s.argsMatch)}, got ${JSON.stringify(n[0]?.arguments)}`})}if(s.order!==void 0){let i=e.toolCalls.findIndex(o=>o.name===s.tool),a=i===s.order;r.push({assertionType:"tool_order",label:`Tool "${s.tool}" at position ${s.order}`,passed:a,score:a?1:0,failureCode:a?void 0:"TOOL_CALL_ORDER_WRONG",failureMessage:a?void 0:`Expected "${s.tool}" at position ${s.order}, but found at position ${i}`})}}return Promise.resolve(r)}}}var tm;async function eD(){if(tm)return tm;let t=await Promise.resolve().then(()=>Hc(Lv(),1)),e=await Promise.resolve().then(()=>Hc(fw(),1)),r=t.default,s=e.default,n=new r({allErrors:!0,strict:!1});return s(n),tm=n,n}var pw=new Map;function tD(t,e){let r=JSON.stringify(e),s=pw.get(r);if(s)return s;let n=t.compile(e);return pw.set(r,n),n}function rD(t){return{type:"schema",async evaluate(e){let r=[],s;if(t.format==="json")try{s=JSON.parse(e.outputText),r.push({assertionType:"schema",label:"Output is valid JSON",passed:!0,score:1})}catch(n){return r.push({assertionType:"schema",label:"Output is valid JSON",passed:!1,score:0,failureCode:"SCHEMA_PARSE_ERROR",failureMessage:`Failed to parse output as JSON: ${n instanceof Error?n.message:String(n)}`}),r}if(t.schemaContent){let n=await eD(),i=tD(n,t.schemaContent),a=i(s??e.outputText);r.push({assertionType:"schema",label:"Output matches JSON Schema",passed:a,score:a?1:0,failureCode:a?void 0:"SCHEMA_INVALID",failureMessage:a?void 0:`Schema validation failed: ${n.errorsText(i.errors)}`,metadata:a?void 0:{errors:i.errors}})}if(t.contains){let n=e.outputText.toLowerCase();for(let i of t.contains){let a=n.includes(i.toLowerCase());r.push({assertionType:"schema",label:`Output contains "${i}"`,passed:a,score:a?1:0,failureCode:a?void 0:"CONTAINS_FAILED",failureMessage:a?void 0:`Expected output to contain "${i}"`})}}if(t.notContains){let n=e.outputText.toLowerCase();for(let i of t.notContains){let a=n.includes(i.toLowerCase());r.push({assertionType:"schema",label:`Output does not contain "${i}"`,passed:!a,score:a?0:1,failureCode:a?"NOT_CONTAINS_FAILED":void 0,failureMessage:a?`Expected output to NOT contain "${i}"`:void 0})}}if(t.maxLength!==void 0){let n=e.outputText.length<=t.maxLength;r.push({assertionType:"schema",label:`Output length <= ${t.maxLength}`,passed:n,score:n?1:0,failureCode:n?void 0:"MAX_LENGTH_EXCEEDED",failureMessage:n?void 0:`Output length ${e.outputText.length} exceeds max ${t.maxLength}`})}return r}}}function sD(t){return t.length<=4?"*".repeat(t.length):t.slice(0,2)+"*".repeat(t.length-4)+t.slice(-2)}var nD=/(\+|\*|\{[^}]+\})\)?(\+|\*|\{[^}]+\})/;function iD(t){return nD.test(t)}function aD(t,e,r){let s=[],n=Date.now();t.lastIndex=0;let i;for(;(i=t.exec(e))!==null&&(s.push(i[0]),!(s.length>=r||Date.now()-n>100)););return s}function oD(t){let e=[],r;for(let s=0;s<t.denyPatterns.length;s++){let n=t.denyPatterns[s];n!==void 0&&e.push({name:`pii-pattern-${s+1}`,regex:new RegExp(n,"gi")})}if(t.customPatterns)for(let s of t.customPatterns){if(iD(s.pattern)){r=[{assertionType:"pii",label:"No PII detected",passed:!1,score:0,failureCode:"INVALID_PATTERN",failureMessage:`Custom pattern "${s.name}" contains nested quantifiers and may cause catastrophic backtracking`}];break}e.push({name:s.name,regex:new RegExp(s.pattern,"gi")})}return{type:"pii",evaluate(s){if(r)return Promise.resolve(r);let n=[],i=0;for(let{name:o,regex:c}of e){if(i>=1e3)break;let l=1e3-i,u=aD(c,s.outputText,l);for(let d of u)n.push({name:o,redacted:sD(d)});i+=u.length}let a=n.length===0;return Promise.resolve([{assertionType:"pii",label:"No PII detected",passed:a,score:a?1:0,failureCode:a?void 0:"PII_DETECTED",failureMessage:a?void 0:`Found ${n.length} PII match(es): ${n.map(o=>`${o.name}=${o.redacted}`).join(", ")}`,metadata:a?void 0:{matches:n}}])}}}function cD(t){return{type:"keywords_present",evaluate(e){let r=e.outputText.toLowerCase(),s=t.some(n=>r.includes(n.toLowerCase()));return Promise.resolve([{assertionType:"keywords_present",label:"Required keyword present",passed:s,score:s?1:0,failureCode:s?void 0:"KEYWORD_MISSING",failureMessage:s?void 0:`Expected at least one of [${t.join(", ")}] in output`}])}}}function lD(t){return{type:"keywords_absent",evaluate(e){let r=e.outputText.toLowerCase(),s=[];for(let n of t){let i=r.includes(n.toLowerCase());s.push({assertionType:"keywords_absent",label:`Keyword "${n}" absent`,passed:!i,score:i?0:1,failureCode:i?"KEYWORD_DENIED":void 0,failureMessage:i?`Denied keyword "${n}" found in output`:void 0})}return Promise.resolve(s)}}}var uD=`You are an impartial AI judge evaluating an AI assistant's response.
|
|
199
|
+
You will be given:
|
|
200
|
+
- The assistant's response
|
|
201
|
+
- Evaluation criteria
|
|
202
|
+
- An optional rubric
|
|
203
|
+
|
|
204
|
+
Score the response from 0.0 to 1.0 based on how well it meets the criteria.
|
|
205
|
+
|
|
206
|
+
Respond ONLY with a JSON object in this exact format:
|
|
207
|
+
{"score": <number between 0.0 and 1.0>, "reasoning": "<brief explanation>"}`;function dD(t,e,r){let s=`## Assistant Response
|
|
208
|
+
${t}
|
|
209
|
+
|
|
210
|
+
## Criteria
|
|
211
|
+
${e}`;return r&&(s+=`
|
|
212
|
+
|
|
213
|
+
## Rubric
|
|
214
|
+
${r}`),s}function fD(t){let e=t.match(/```(?:json)?\s*([\s\S]*?)```/)??t.match(/(\{[\s\S]*\})/);if(!e?.[1])return null;try{let r=JSON.parse(e[1]);return typeof r.score=="number"&&typeof r.reasoning=="string"?{score:r.score,reasoning:r.reasoning}:null}catch{return null}}function pD(t){return{type:"judge",async evaluate(e){if(!e.judgeAdapter||!e.judgeModel)return[{assertionType:"judge",label:`Judge: ${t.criteria}`,passed:!1,score:0,failureCode:"INTERNAL_ERROR",failureMessage:"Judge assertion requires judgeAdapter and judgeModel in context"}];let r=await e.judgeAdapter.complete({model:e.judgeModel,messages:[{role:"system",content:uD},{role:"user",content:dD(e.outputText,t.criteria,t.rubric)}],params:{temperature:0,maxTokens:512}}),s=fD(r.text);if(!s)return[{assertionType:"judge",label:`Judge: ${t.criteria}`,passed:!1,score:0,failureCode:"INTERNAL_ERROR",failureMessage:`Failed to parse judge response: ${r.text.slice(0,200)}`}];let n=s.score>=t.minScore;return[{assertionType:"judge",label:`Judge: ${t.criteria}`,passed:n,score:s.score,failureCode:n?void 0:"JUDGE_BELOW_THRESHOLD",failureMessage:n?void 0:`Score ${s.score} below threshold ${t.minScore}: ${s.reasoning}`,metadata:{reasoning:s.reasoning}}]}}}var mD=`You are an impartial AI judge comparing two AI assistant responses.
|
|
215
|
+
You will be given a baseline response and a new response.
|
|
216
|
+
Evaluate how much the new response has drifted from the baseline.
|
|
217
|
+
|
|
218
|
+
Score from 0.0 to 1.0 where:
|
|
219
|
+
- 0.0 = responses are semantically identical
|
|
220
|
+
- 0.5 = moderate differences in tone, detail, or structure
|
|
221
|
+
- 1.0 = completely different meaning or contradictory
|
|
222
|
+
|
|
223
|
+
Respond ONLY with a JSON object in this exact format:
|
|
224
|
+
{"driftScore": <number between 0.0 and 1.0>, "reasoning": "<brief explanation>"}`;function hD(t){let e=t.match(/```(?:json)?\s*([\s\S]*?)```/)??t.match(/(\{[\s\S]*\})/);if(!e?.[1])return null;try{let r=JSON.parse(e[1]);return typeof r.driftScore=="number"&&typeof r.reasoning=="string"?{driftScore:r.driftScore,reasoning:r.reasoning}:null}catch{return null}}function mw(t,e){let r=e.split("."),s=t;for(let n of r){if(s==null||typeof s!="object")return;s=s[n]}return s}function gD(t,e,r){let s,n;try{s=JSON.parse(t),n=JSON.parse(e)}catch{return{driftScore:1,mismatched:["(parse error)"]}}let i=[];for(let a of r){let o=mw(s,a),c=mw(n,a);JSON.stringify(o)!==JSON.stringify(c)&&i.push(a)}return{driftScore:r.length>0?i.length/r.length:0,mismatched:i}}function yD(t){return{type:"drift",async evaluate(e){if(!e.baselineText)return[{assertionType:"drift",label:"Drift check",passed:!0,score:1,metadata:{reason:"No baseline available"}}];if(t.method==="embedding")return[{assertionType:"drift",label:"Drift check (embedding)",passed:!0,score:1,metadata:{reason:"Embedding method not yet implemented"}}];if(t.method==="field-diff"){let a=t.fields??[],{driftScore:o,mismatched:c}=gD(e.baselineText,e.outputText,a),l=1-o,u=o<=t.maxScore;return[{assertionType:"drift",label:"Drift check (field-diff)",passed:u,score:l,failureCode:u?void 0:"DRIFT_EXCEEDED",failureMessage:u?void 0:`Drift score ${o.toFixed(2)} exceeds max ${t.maxScore}. Mismatched: [${c.join(", ")}]`,metadata:{driftScore:o,mismatched:c}}]}if(!e.judgeAdapter||!e.judgeModel)return[{assertionType:"drift",label:"Drift check (judge)",passed:!1,score:0,failureCode:"INTERNAL_ERROR",failureMessage:"Drift judge method requires judgeAdapter and judgeModel in context"}];let r=await e.judgeAdapter.complete({model:e.judgeModel,messages:[{role:"system",content:mD},{role:"user",content:`## Baseline Response
|
|
225
|
+
${e.baselineText}
|
|
226
|
+
|
|
227
|
+
## New Response
|
|
228
|
+
${e.outputText}`}],params:{temperature:0,maxTokens:512}}),s=hD(r.text);if(!s)return[{assertionType:"drift",label:"Drift check (judge)",passed:!1,score:0,failureCode:"INTERNAL_ERROR",failureMessage:`Failed to parse drift judge response: ${r.text.slice(0,200)}`}];let n=1-s.driftScore,i=s.driftScore<=t.maxScore;return[{assertionType:"drift",label:"Drift check (judge)",passed:i,score:n,failureCode:i?void 0:"DRIFT_EXCEEDED",failureMessage:i?void 0:`Drift score ${s.driftScore.toFixed(2)} exceeds max ${t.maxScore}: ${s.reasoning}`,metadata:{driftScore:s.driftScore,reasoning:s.reasoning}}]}}}function Lc(t,e){let r=[];if(t.toolCalls)if(t.toolCalls.some(s=>s.order!==void 0))r.push(Xq(t.toolCalls));else for(let s of t.toolCalls)s.shouldNotCall?r.push(Qq(s.tool)):r.push(Zq(s.tool,s.argsMatch??void 0));if(t.output&&r.push(rD({format:t.output.format,schemaFile:t.output.schemaFile,schemaContent:e?.schemaContent,contains:t.output.contains,notContains:t.output.notContains,maxLength:t.output.maxLength})),t.guardrails?.pii&&r.push(oD({denyPatterns:t.guardrails.pii.denyPatterns,customPatterns:t.guardrails.pii.customPatterns})),t.guardrails?.keywords&&(t.guardrails.keywords.allow&&t.guardrails.keywords.allow.length>0&&r.push(cD(t.guardrails.keywords.allow)),t.guardrails.keywords.deny.length>0&&r.push(lD(t.guardrails.keywords.deny))),t.judge)for(let s of t.judge)r.push(pD({criteria:s.criteria,minScore:s.minScore,rubric:s.rubric}));return t.baseline?.drift&&r.push(yD({maxScore:t.baseline.drift.maxScore,method:t.baseline.drift.method,fields:t.baseline.drift.fields})),r}var vD=new Set(["judge","drift"]);function _D(t){return vD.has(t)?"probabilistic":"deterministic"}async function Rn(t,e){let{maxRetries:r,shouldRetry:s,baseDelayMs:n=500}=e,i;for(let a=0;a<=r;a++)try{return await t()}catch(o){if(i=o,a>=r||!s(o))throw o;let c=n*Math.pow(2,a);await bD(c)}throw i}function bD(t){return new Promise(e=>setTimeout(e,t))}var wD={"gpt-4o":{input:2.5,output:10},"gpt-4o-mini":{input:.15,output:.6},"gpt-4-turbo":{input:10,output:30},"o3-mini":{input:1.1,output:4.4}};function $D(t){switch(t){case"stop":return"stop";case"length":return"max_tokens";case"tool_calls":return"tool_calls";default:return"unknown"}}function SD(t,e){let r=typeof e=="object"&&e!==null&&"error"in e?String(e.error?.message??"Unknown error"):"Unknown error";switch(t){case 401:return new I("AUTH_FAILED",r,t,!1,e);case 429:return new I("RATE_LIMITED",r,t,!0,e);case 404:return new I("MODEL_NOT_FOUND",r,t,!1,e);case 400:return r.toLowerCase().includes("context length")?new I("CONTEXT_LENGTH",r,t,!1,e):new I("PROVIDER_ERROR",r,t,!1,e);case 408:return new I("TIMEOUT",r,t,!0,e);default:return new I(t>=500?"PROVIDER_ERROR":"UNKNOWN",r,t,t>=500,e)}}function kD(t){let e="",r="https://api.openai.com/v1",s,n=6e4,i=2;return{name:"openai",async initialize(a){if(!a.apiKey)throw new I("AUTH_FAILED","API key is required");e=a.apiKey,a.baseUrl&&(r=a.baseUrl),s=a.organization,n=a.timeoutMs,i=a.maxRetries},async complete(a){let o={model:a.model,messages:a.messages.map(h=>h.role==="tool"?{role:"tool",content:h.content,tool_call_id:h.toolCallId}:h.role==="assistant"&&h.toolCalls&&h.toolCalls.length>0?{role:"assistant",content:h.content||null,tool_calls:h.toolCalls.map(v=>({id:v.id,type:"function",function:{name:v.name,arguments:JSON.stringify(v.arguments)}}))}:{role:h.role,content:h.content}),temperature:a.params.temperature,max_tokens:a.params.maxTokens};a.params.topP!==void 0&&(o.top_p=a.params.topP),a.params.seed!==void 0&&(o.seed=a.params.seed),a.params.stopSequences&&(o.stop=a.params.stopSequences),a.tools&&a.tools.length>0&&(o.tools=a.tools.map(h=>({type:"function",function:{name:h.name,description:h.description,parameters:h.parameters}})),a.toolChoice&&(o.tool_choice=a.toolChoice));let c={"Content-Type":"application/json",Authorization:`Bearer ${e}`};s&&(c["OpenAI-Organization"]=s);let l=Date.now(),u=await Rn(()=>t.fetch(`${r}/chat/completions`,{method:"POST",headers:c,body:JSON.stringify(o),timeoutMs:n}),{maxRetries:i,shouldRetry:h=>h instanceof I&&h.retryable}),d;try{d=await u.json()}catch{throw new I("PROVIDER_ERROR","Malformed response body from OpenAI API",u.status,u.status>=500)}let f=Date.now()-l;if(!u.ok)throw SD(u.status,d);let p=d,y=p.choices?.[0],m=y?.message,g=(m?.tool_calls??[]).map(h=>{let v;try{v=JSON.parse(h.function.arguments||"{}")}catch{v={_raw:h.function.arguments}}return{id:h.id,name:h.function.name,arguments:v}});return{text:m?.content??"",toolCalls:g,usage:{inputTokens:p.usage?.prompt_tokens??0,outputTokens:p.usage?.completion_tokens??0,totalTokens:p.usage?.total_tokens??0},raw:d,latencyMs:f,modelId:p.model??a.model,finishReason:$D(y?.finish_reason)}},estimateCost(a,o){let c=wD[a];return c?o.inputTokens/1e6*c.input+o.outputTokens/1e6*c.output:null},supportsTools(a){return!a.startsWith("o1-")}}}var ED={"claude-opus-4-5-20250929":{input:15,output:75},"claude-sonnet-4-5-20250929":{input:3,output:15},"claude-haiku-4-5-20251001":{input:.8,output:4}};function TD(t){switch(t){case"end_turn":return"stop";case"max_tokens":return"max_tokens";case"tool_use":return"tool_calls";default:return"unknown"}}function ND(t,e){let r=typeof e=="object"&&e!==null&&"error"in e?String(e.error?.message??"Unknown error"):"Unknown error";switch(t){case 401:return new I("AUTH_FAILED",r,t,!1,e);case 429:return new I("RATE_LIMITED",r,t,!0,e);case 404:return new I("MODEL_NOT_FOUND",r,t,!1,e);case 400:return r.toLowerCase().includes("context length")?new I("CONTEXT_LENGTH",r,t,!1,e):new I("PROVIDER_ERROR",r,t,!1,e);case 408:return new I("TIMEOUT",r,t,!0,e);default:return new I(t>=500?"PROVIDER_ERROR":"UNKNOWN",r,t,t>=500,e)}}function PD(t){let e="",r="https://api.anthropic.com",s=6e4,n=2;return{name:"anthropic",async initialize(i){if(!i.apiKey)throw new I("AUTH_FAILED","API key is required");e=i.apiKey,i.baseUrl&&(r=i.baseUrl),s=i.timeoutMs,n=i.maxRetries},async complete(i){let a=i.messages.find(v=>v.role==="system"),o=i.messages.filter(v=>v.role!=="system").map(v=>{if(v.role==="tool")return{role:"user",content:[{type:"tool_result",tool_use_id:v.toolCallId,content:v.content}]};if(v.role==="assistant"){if(v.toolCalls&&v.toolCalls.length>0){let b=[];v.content&&b.push({type:"text",text:v.content});for(let $ of v.toolCalls)b.push({type:"tool_use",id:$.id,name:$.name,input:$.arguments});return{role:"assistant",content:b}}return{role:"assistant",content:v.content}}return{role:"user",content:v.content}}),c={model:i.model,max_tokens:i.params.maxTokens,messages:o};a&&(c.system=a.content),i.params.temperature!==void 0&&(c.temperature=i.params.temperature),i.params.topP!==void 0&&(c.top_p=i.params.topP),i.params.stopSequences&&(c.stop_sequences=i.params.stopSequences),i.tools&&i.tools.length>0&&(c.tools=i.tools.map(v=>({name:v.name,description:v.description??"",input_schema:v.parameters??{type:"object",properties:{}}})),i.toolChoice&&(c.tool_choice=i.toolChoice==="required"?{type:"any"}:{type:i.toolChoice}));let l=Date.now(),u=await Rn(()=>t.fetch(`${r}/v1/messages`,{method:"POST",headers:{"Content-Type":"application/json","x-api-key":e,"anthropic-version":"2023-06-01"},body:JSON.stringify(c),timeoutMs:s}),{maxRetries:n,shouldRetry:v=>v instanceof I&&v.retryable}),d;try{d=await u.json()}catch{throw new I("PROVIDER_ERROR","Malformed response body from Anthropic API",u.status,u.status>=500)}let f=Date.now()-l;if(!u.ok)throw ND(u.status,d);let p=d,y="",m=[];for(let v of p.content??[])v.type==="text"?y+=v.text:v.type==="tool_use"&&m.push({id:v.id,name:v.name,arguments:v.input??{}});let g=p.usage?.input_tokens??0,h=p.usage?.output_tokens??0;return{text:y,toolCalls:m,usage:{inputTokens:g,outputTokens:h,totalTokens:g+h},raw:d,latencyMs:f,modelId:p.model??i.model,finishReason:TD(p.stop_reason)}},estimateCost(i,a){let o=Object.entries(ED).find(([c])=>i.includes(c)||c.includes(i));return o?a.inputTokens/1e6*o[1].input+a.outputTokens/1e6*o[1].output:null},supportsTools(i){return!0}}}function OD(t,e){if(e)return"tool_calls";switch(t){case"stop":return"stop";case"length":return"max_tokens";default:return"unknown"}}function CD(t,e){let r=typeof e=="object"&&e!==null&&"error"in e?String(e.error):"Unknown error";switch(t){case 404:return new I("MODEL_NOT_FOUND",r,t,!1,e);case 429:return new I("RATE_LIMITED",r,t,!0,e);case 408:return new I("TIMEOUT",r,t,!0,e);default:return new I(t>=500?"PROVIDER_ERROR":"UNKNOWN",r,t,t>=500,e)}}function AD(t){let e="http://localhost:11434",r=6e4,s=2;return{name:"ollama",async initialize(n){n.baseUrl&&(e=n.baseUrl),r=n.timeoutMs,s=n.maxRetries},async complete(n){let i=n.messages.map(h=>h.role==="tool"?{role:"tool",content:h.content}:h.role==="assistant"&&h.toolCalls&&h.toolCalls.length>0?{role:"assistant",content:h.content||"",tool_calls:h.toolCalls.map(v=>({function:{name:v.name,arguments:v.arguments}}))}:{role:h.role,content:h.content}),a={model:n.model,messages:i,stream:!1,options:{temperature:n.params.temperature,num_predict:n.params.maxTokens}},o=a.options;n.params.topP!==void 0&&(o.top_p=n.params.topP),n.params.seed!==void 0&&(o.seed=n.params.seed),n.params.stopSequences&&(o.stop=n.params.stopSequences),n.tools&&n.tools.length>0&&(a.tools=n.tools.map(h=>({type:"function",function:{name:h.name,description:h.description,parameters:h.parameters}})));let c={"Content-Type":"application/json"},l=Date.now(),u=await Rn(()=>t.fetch(`${e}/api/chat`,{method:"POST",headers:c,body:JSON.stringify(a),timeoutMs:r}),{maxRetries:s,shouldRetry:h=>h instanceof I&&h.retryable}),d;try{d=await u.json()}catch{throw new I("PROVIDER_ERROR","Malformed response body from Ollama API",u.status,u.status>=500)}let f=Date.now()-l;if(!u.ok)throw CD(u.status,d);let p=d,y=p.message,m=y?.tool_calls??[],g=m.map((h,v)=>({id:`ollama_call_${v}`,name:h.function.name,arguments:h.function.arguments??{}}));return{text:y?.content??"",toolCalls:g,usage:{inputTokens:p.prompt_eval_count??0,outputTokens:p.eval_count??0,totalTokens:(p.prompt_eval_count??0)+(p.eval_count??0)},raw:d,latencyMs:f,modelId:p.model??n.model,finishReason:OD(p.done_reason,m.length>0)}},estimateCost(){return 0},supportsTools(){return!0}}}var RD={"gemini-2.0-flash":{input:.1,output:.4},"gemini-2.0-flash-lite":{input:.075,output:.3},"gemini-1.5-pro":{input:1.25,output:5},"gemini-1.5-flash":{input:.075,output:.3},"gemini-1.5-flash-8b":{input:.0375,output:.15}};function ID(t,e){if(e)return"tool_calls";switch(t){case"STOP":return"stop";case"MAX_TOKENS":return"max_tokens";case"SAFETY":return"stop";default:return"unknown"}}function MD(t,e){let r=typeof e=="object"&&e!==null&&"error"in e?String(e.error?.message??"Unknown error"):"Unknown error";switch(t){case 400:return r.toLowerCase().includes("api key")?new I("AUTH_FAILED",r,t,!1,e):new I("PROVIDER_ERROR",r,t,!1,e);case 401:case 403:return new I("AUTH_FAILED",r,t,!1,e);case 429:return new I("RATE_LIMITED",r,t,!0,e);case 404:return new I("MODEL_NOT_FOUND",r,t,!1,e);case 408:return new I("TIMEOUT",r,t,!0,e);default:return new I(t>=500?"PROVIDER_ERROR":"UNKNOWN",r,t,t>=500,e)}}function xD(t){let e="",r="https://generativelanguage.googleapis.com/v1beta",s=6e4,n=2;return{name:"gemini",async initialize(i){if(!i.apiKey)throw new I("AUTH_FAILED","API key is required");e=i.apiKey,i.baseUrl&&(r=i.baseUrl),s=i.timeoutMs,n=i.maxRetries},async complete(i){let a=[],o;for(let k of i.messages){if(k.role==="system"){o={parts:[{text:k.content}]};continue}if(k.role==="tool"){a.push({role:"function",parts:[{functionResponse:{name:k.toolName??"unknown",response:jD(k.content)}}]});continue}if(k.role==="assistant"&&k.toolCalls&&k.toolCalls.length>0){let T=[];k.content&&T.push({text:k.content});for(let se of k.toolCalls)T.push({functionCall:{name:se.name,args:se.arguments}});a.push({role:"model",parts:T});continue}let N=k.role==="assistant"?"model":"user";a.push({role:N,parts:[{text:k.content}]})}let c={contents:a,generationConfig:{temperature:i.params.temperature,maxOutputTokens:i.params.maxTokens}};o&&(c.systemInstruction=o);let l=c.generationConfig;i.params.topP!==void 0&&(l.topP=i.params.topP),i.params.stopSequences&&(l.stopSequences=i.params.stopSequences),i.tools&&i.tools.length>0&&(c.tools=[{functionDeclarations:i.tools.map(k=>({name:k.name,description:k.description,parameters:k.parameters}))}],i.toolChoice&&(c.toolConfig=qD(i.toolChoice)));let u={"Content-Type":"application/json","x-goog-api-key":e},d=Date.now(),f=`${r}/models/${i.model}:generateContent`,p=await Rn(()=>t.fetch(f,{method:"POST",headers:u,body:JSON.stringify(c),timeoutMs:s}),{maxRetries:n,shouldRetry:k=>k instanceof I&&k.retryable}),y;try{y=await p.json()}catch{throw new I("PROVIDER_ERROR","Malformed response body from Gemini API",p.status,p.status>=500)}let m=Date.now()-d;if(!p.ok)throw MD(p.status,y);let g=y,h=g.candidates?.[0],v=h?.content?.parts??[],b="",$=[],w=0;for(let k of v)k.text!==void 0&&(b+=k.text),k.functionCall&&($.push({id:`gemini_call_${w}`,name:k.functionCall.name,arguments:k.functionCall.args??{}}),w++);return{text:b,toolCalls:$,usage:{inputTokens:g.usageMetadata?.promptTokenCount??0,outputTokens:g.usageMetadata?.candidatesTokenCount??0,totalTokens:g.usageMetadata?.totalTokenCount??0},raw:y,latencyMs:m,modelId:g.modelVersion??i.model,finishReason:ID(h?.finishReason,$.length>0)}},estimateCost(i,a){let o=RD[i];return o?a.inputTokens/1e6*o.input+a.outputTokens/1e6*o.output:null},supportsTools(){return!0}}}function jD(t){try{return JSON.parse(t)}catch{return{result:t}}}function qD(t){switch(t){case"auto":return{functionCallingConfig:{mode:"AUTO"}};case"required":return{functionCallingConfig:{mode:"ANY"}};case"none":return{functionCallingConfig:{mode:"NONE"}}}}function DD(t){switch(t){case"stop":return"stop";case"length":return"max_tokens";case"tool_calls":return"tool_calls";default:return"unknown"}}function LD(t,e){let r=typeof e=="object"&&e!==null&&"message"in e?String(e.message??"Unknown error"):typeof e=="object"&&e!==null&&"error"in e?String(e.error?.message??"Unknown error"):"Unknown error";switch(t){case 401:return new I("AUTH_FAILED",r,t,!1,e);case 429:return new I("RATE_LIMITED",r,t,!0,e);case 404:return new I("MODEL_NOT_FOUND",r,t,!1,e);case 400:return r.toLowerCase().includes("context length")?new I("CONTEXT_LENGTH",r,t,!1,e):new I("PROVIDER_ERROR",r,t,!1,e);case 408:return new I("TIMEOUT",r,t,!0,e);default:return new I(t>=500?"PROVIDER_ERROR":"UNKNOWN",r,t,t>=500,e)}}function FD(t){let e="",r="https://api.mistral.ai/v1",s=6e4,n=2;return{name:"mistral",async initialize(i){if(!i.apiKey)throw new I("AUTH_FAILED","API key is required");e=i.apiKey,i.baseUrl&&(r=i.baseUrl),s=i.timeoutMs,n=i.maxRetries},async complete(i){let a={model:i.model,messages:i.messages.map(g=>g.role==="tool"?{role:"tool",content:g.content,tool_call_id:g.toolCallId}:g.role==="assistant"&&g.toolCalls&&g.toolCalls.length>0?{role:"assistant",content:g.content||null,tool_calls:g.toolCalls.map(h=>({id:h.id,type:"function",function:{name:h.name,arguments:JSON.stringify(h.arguments)}}))}:{role:g.role,content:g.content}),temperature:i.params.temperature,max_tokens:i.params.maxTokens};i.params.topP!==void 0&&(a.top_p=i.params.topP),i.params.stopSequences&&(a.stop=i.params.stopSequences),i.tools&&i.tools.length>0&&(a.tools=i.tools.map(g=>({type:"function",function:{name:g.name,description:g.description,parameters:g.parameters}})),i.toolChoice&&(a.tool_choice=i.toolChoice));let o={"Content-Type":"application/json",Authorization:`Bearer ${e}`},c=Date.now(),l=await Rn(()=>t.fetch(`${r}/chat/completions`,{method:"POST",headers:o,body:JSON.stringify(a),timeoutMs:s}),{maxRetries:n,shouldRetry:g=>g instanceof I&&g.retryable}),u;try{u=await l.json()}catch{throw new I("PROVIDER_ERROR","Malformed response body from Mistral API",l.status,l.status>=500)}let d=Date.now()-c;if(!l.ok)throw LD(l.status,u);let f=u,p=f.choices?.[0],y=p?.message,m=(y?.tool_calls??[]).map(g=>{let h;try{h=JSON.parse(g.function.arguments||"{}")}catch{h={_raw:g.function.arguments}}return{id:g.id,name:g.function.name,arguments:h}});return{text:y?.content??"",toolCalls:m,usage:{inputTokens:f.usage?.prompt_tokens??0,outputTokens:f.usage?.completion_tokens??0,totalTokens:f.usage?.total_tokens??0},raw:u,latencyMs:d,modelId:f.model??i.model,finishReason:DD(p?.finish_reason)}},estimateCost(i,a){return null},supportsTools(i){return!0}}}function UD(t){switch(t){case"COMPLETE":return"stop";case"MAX_TOKENS":return"max_tokens";case"TOOL_CALL":return"tool_calls";default:return"unknown"}}function VD(t,e){let r=typeof e=="object"&&e!==null&&"message"in e?String(e.message??"Unknown error"):"Unknown error";switch(t){case 401:return new I("AUTH_FAILED",r,t,!1,e);case 429:return new I("RATE_LIMITED",r,t,!0,e);case 404:return new I("MODEL_NOT_FOUND",r,t,!1,e);case 400:return r.toLowerCase().includes("context length")?new I("CONTEXT_LENGTH",r,t,!1,e):new I("PROVIDER_ERROR",r,t,!1,e);case 408:return new I("TIMEOUT",r,t,!0,e);default:return new I(t>=500?"PROVIDER_ERROR":"UNKNOWN",r,t,t>=500,e)}}function KD(t){let e="",r="https://api.cohere.com",s=6e4,n=2;return{name:"cohere",async initialize(i){if(!i.apiKey)throw new I("AUTH_FAILED","API key is required");e=i.apiKey,i.baseUrl&&(r=i.baseUrl),s=i.timeoutMs,n=i.maxRetries},async complete(i){let a={model:i.model,messages:i.messages.map(h=>h.role==="tool"?{role:"tool",content:h.content,tool_call_id:h.toolCallId}:h.role==="assistant"&&h.toolCalls&&h.toolCalls.length>0?{role:"assistant",content:h.content||null,tool_calls:h.toolCalls.map(v=>({id:v.id,type:"function",function:{name:v.name,arguments:JSON.stringify(v.arguments)}}))}:{role:h.role,content:h.content}),temperature:i.params.temperature,max_tokens:i.params.maxTokens};i.params.topP!==void 0&&(a.p=i.params.topP),i.params.stopSequences&&(a.stop_sequences=i.params.stopSequences),i.tools&&i.tools.length>0&&(a.tools=i.tools.map(h=>({type:"function",function:{name:h.name,description:h.description,parameters:h.parameters}})),i.toolChoice&&(a.tool_choice=i.toolChoice));let o={"Content-Type":"application/json",Authorization:`Bearer ${e}`},c=Date.now(),l=await Rn(()=>t.fetch(`${r}/v2/chat`,{method:"POST",headers:o,body:JSON.stringify(a),timeoutMs:s}),{maxRetries:n,shouldRetry:h=>h instanceof I&&h.retryable}),u;try{u=await l.json()}catch{throw new I("PROVIDER_ERROR","Malformed response body from Cohere API",l.status,l.status>=500)}let d=Date.now()-c;if(!l.ok)throw VD(l.status,u);let f=u,p=f.message?.content?.filter(h=>h.type==="text").map(h=>h.text).join("")??"",y=(f.message?.tool_calls??[]).map(h=>{let v;try{v=JSON.parse(h.function.arguments||"{}")}catch{v={_raw:h.function.arguments}}return{id:h.id,name:h.function.name,arguments:v}}),m=f.usage?.tokens?.input_tokens??0,g=f.usage?.tokens?.output_tokens??0;return{text:p,toolCalls:y,usage:{inputTokens:m,outputTokens:g,totalTokens:m+g},raw:u,latencyMs:d,modelId:f.model??i.model,finishReason:UD(f.finish_reason)}},estimateCost(i,a){return null},supportsTools(i){return!0}}}var hw={openai:kD,anthropic:PD,ollama:AD,gemini:xD,mistral:FD,cohere:KD};function Fc(t,e){let r=hw[t];if(!r){let s=Object.keys(hw).join(", ");throw new Error(`Unknown provider: "${t}". Supported providers: ${s}`)}return r(e)}async function zD(t,e,r,s){let n=s?.maxTurns??10,i=[],a=[],o=[...e.messages],c={inputTokens:0,outputTokens:0,totalTokens:0},l=0;for(let d=0;d<n;d++){let f={...e,messages:o},p=await t.complete(f);if(i.push({request:f,response:p}),c.inputTokens+=p.usage.inputTokens,c.outputTokens+=p.usage.outputTokens,c.totalTokens+=p.usage.totalTokens,l+=p.latencyMs,p.toolCalls.length===0)return{turns:i,finalText:p.text,allToolCalls:a,totalUsage:c,totalLatencyMs:l};a.push(...p.toolCalls),o=[...o,{role:"assistant",content:p.text,toolCalls:p.toolCalls}];for(let y of p.toolCalls){let m=r.find(h=>h.name===y.name),g;m?g=BD(m,y.arguments):g={error:`Tool "${y.name}" not simulated`},o.push({role:"tool",content:JSON.stringify(g),toolCallId:y.id,toolName:y.name})}}let u=i[i.length-1]?.response??{text:"",toolCalls:[],usage:{inputTokens:0,outputTokens:0,totalTokens:0},raw:null,latencyMs:0,modelId:e.model,finishReason:"unknown"};return{turns:i,finalText:u.text,allToolCalls:a,totalUsage:c,totalLatencyMs:l}}function BD(t,e){if(t.responses){for(let r of t.responses)if(JD(r.when,e))return r.then}return t.defaultResponse!==void 0?t.defaultResponse:{error:"No matching simulation response"}}function JD(t,e){for(let[r,s]of Object.entries(t))if(JSON.stringify(e[r])!==JSON.stringify(s))return!1;return!0}var HD=S.object({outputTextAttr:S.string().default("gen_ai.completion.0.content"),modelAttr:S.string().default("gen_ai.response.model"),systemAttr:S.string().default("gen_ai.system"),inputTokensAttr:S.string().default("gen_ai.usage.input_tokens"),outputTokensAttr:S.string().default("gen_ai.usage.output_tokens")}),GD=S.object({namePattern:S.string().optional().describe("Regex to filter span names"),attributeMatch:S.record(S.string()).optional().describe("Attributes that must match"),minDurationMs:S.number().min(0).optional()}),YD=S.object({port:S.number().int().min(1).max(65535).default(4318),timeoutMs:S.number().int().min(1e3).default(3e4),spanMapping:HD.default({}),spanFilter:GD.optional()}),rt=S.string().min(1,"Must not be empty"),WD=S.number().min(0).max(2).default(.2),Rs=S.number().min(0).max(1),sm=S.string().refine(t=>{try{return new RegExp(t),!0}catch{return!1}},{message:"Must be a valid regex pattern"}),_a=S.object({apiKeyEnv:rt.describe("Environment variable name containing the API key. Never a raw key."),baseUrl:S.string().url().optional().describe("Custom base URL for API-compatible proxies (e.g., Azure OpenAI, LiteLLM)"),organization:S.string().optional().describe("Organization ID (OpenAI-specific)")}),ZD=S.object({apiKeyEnv:S.string().min(1).optional().describe("Environment variable name containing the API key. Optional for Ollama (local)."),baseUrl:S.string().url().optional().describe("Ollama server URL. Defaults to http://localhost:11434.")}),QD=S.object({openai:_a.optional(),anthropic:_a.optional(),ollama:ZD.optional(),gemini:_a.optional(),mistral:_a.optional(),cohere:_a.optional()}).refine(t=>Object.keys(t).some(e=>t[e]!==void 0),{message:"At least one provider must be configured"}),XD=S.object({temperature:WD,maxTokens:S.number().int().min(1).max(128e3).default(1024),topP:S.number().min(0).max(1).optional(),stopSequences:S.array(S.string()).optional(),seed:S.number().int().optional().describe("Seed for reproducibility (provider-dependent support)")}),eL=S.object({id:rt.describe("Unique identifier for this model config, referenced in reports"),provider:S.enum(["openai","anthropic","ollama","gemini","mistral","cohere"]).describe("Must match a key in the providers section"),model:rt.describe("Model name as the provider expects it (e.g., 'gpt-4o', 'claude-sonnet-4-5-20250929')"),params:XD.default({})}),tL=S.object({system:S.string().optional().describe("System prompt template. Supports {{variable}} interpolation."),user:rt.describe("User prompt template. Supports {{variable}} interpolation."),assistant:S.string().optional().describe("Prefill for assistant response (Anthropic-specific)")}),rL=S.object({format:S.enum(["text","json"]).default("text"),schemaFile:S.string().optional().describe("Path to JSON Schema file (relative to config file). Required if format is 'json'."),contains:S.array(S.string()).optional().describe("Output must contain all of these substrings"),notContains:S.array(S.string()).optional().describe("Output must not contain any of these substrings"),maxLength:S.number().int().positive().optional().describe("Maximum character length of the output")}).refine(t=>!(t.format==="json"&&!t.schemaFile),{message:"schemaFile is required when format is 'json'"}),sL=S.object({enabled:S.boolean().default(!0),denyPatterns:S.array(sm).default(["\\b\\d{3}-\\d{2}-\\d{4}\\b","\\b\\d{4}[\\s-]?\\d{4}[\\s-]?\\d{4}[\\s-]?\\d{4}\\b","\\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\\.[A-Z|a-z]{2,}\\b"]).describe("Regex patterns that must NOT appear in output. Defaults include SSN, credit card, email."),customPatterns:S.array(S.object({name:rt,pattern:sm})).optional().describe("Named custom PII patterns for reporting clarity")}),nL=S.object({deny:S.array(S.string()).default([]).describe("Words/phrases that must NOT appear in output (case-insensitive)"),allow:S.array(S.string()).optional().describe("If set, output MUST contain at least one of these words/phrases")}),iL=S.object({criteria:rt.describe("Natural language description of what to evaluate (e.g., 'Response is empathetic and professional')"),minScore:Rs.default(.7).describe("Minimum score (0-1) for this criterion to pass"),model:S.string().optional().describe("Override judge model for this criterion. Defaults to first model in models list."),rubric:S.string().optional().describe("Detailed rubric for the judge. If omitted, a default rubric is generated from criteria.")}),aL=S.object({tool:rt.describe("Expected tool/function name"),shouldNotCall:S.boolean().optional().default(!1).describe("If true, assert this tool was NOT called"),argsMatch:S.record(S.unknown()).optional().describe("Key-value pairs that must be present in the tool call arguments (partial match)"),argsSchema:S.string().optional().describe("Path to JSON Schema file to validate the tool call arguments"),order:S.number().int().min(0).optional().describe("Expected position in the sequence of tool calls (0-indexed)"),responseContains:S.string().optional().describe("Assert the simulated tool response contains this substring")}),oL=S.object({maxScore:Rs.default(.15).describe("Maximum drift score (0-1). Higher = more drift allowed. Fail if exceeded."),method:S.enum(["judge","embedding","field-diff"]).default("judge").describe("Drift detection method. 'judge' uses LLM comparison, 'embedding' uses cosine similarity, 'field-diff' compares JSON fields."),fields:S.array(S.string()).optional().describe("For field-diff method: JSON paths to compare (e.g., ['response.action', 'response.message'])")}),cL=S.object({pii:sL.optional(),keywords:nL.optional()}),lL=S.object({output:rL.optional(),guardrails:cL.optional(),judge:S.array(iL).optional().describe("LLM-as-judge evaluations. Each criterion is scored independently."),toolCalls:S.array(aL).optional().describe("Expected tool/function calls in the model response"),baseline:S.object({drift:oL.optional()}).optional()}),uL=S.object({name:rt.describe("Tool/function name as the model sees it"),description:S.string().optional().describe("Tool description for documentation"),parameters:S.record(S.unknown()).optional().describe("JSON Schema for the tool's parameters"),responses:S.array(S.object({when:S.record(S.unknown()).describe("Condition: match tool call arguments (partial match)"),then:S.unknown().describe("Simulated response to return when condition matches")})).optional().describe("Simulated responses based on argument matching"),defaultResponse:S.unknown().optional().describe("Response when no 'when' condition matches")}),dL=S.object({name:rt.describe("Unique test case name within the suite. Used in reports and JUnit output."),prompt:rt.optional().describe("Reference to a key in the prompts section. Exactly one of prompt or command must be set."),command:rt.optional().describe("Shell command to execute. Stdout is captured and assertions run against it. Exactly one of prompt or command must be set."),vars:S.record(S.string()).default({}).describe("Variables to interpolate into the prompt template or command"),models:S.array(S.string()).optional().describe("Override: run this test only against these model IDs. Defaults to all models. Ignored for command tests."),repeat:S.number().int().min(1).optional().describe("Override: number of repeat runs for this specific test case"),tools:S.array(uL).optional().describe("Simulated tools available to the model for this test case"),expect:lL.describe("Assertions to evaluate against the model output"),tags:S.array(S.string()).optional().describe("Tags for filtering test cases in CLI (e.g., --tags regression)"),skip:S.boolean().optional().default(!1).describe("Skip this test case during execution")}).refine(t=>{let e=t.prompt!==void 0,r=t.command!==void 0;return(e||r)&&!(e&&r)},{message:"Exactly one of 'prompt' or 'command' must be set on each test case"}),fL=S.object({passRateMin:Rs.default(.95).describe("Minimum overall pass rate (0-1). Computed after repeats and aggregation."),schemaFailuresMax:S.number().int().min(0).default(0).describe("Maximum allowed schema validation failures across entire suite"),judgeAvgMin:Rs.optional().describe("Minimum average LLM-as-judge score across all criteria and test cases"),driftScoreMax:Rs.optional().describe("Maximum allowed drift score against active baseline"),piiFailuresMax:S.number().int().min(0).default(0).describe("Maximum allowed PII detection failures"),keywordFailuresMax:S.number().int().min(0).default(0).describe("Maximum allowed keyword guardrail failures"),costMaxUsd:S.number().positive().optional().describe("Maximum total cost in USD for the entire run. Aborts if exceeded mid-run."),latencyMaxMs:S.number().positive().optional().describe("Maximum average latency in ms. Fails gate if exceeded."),deterministicPassRate:Rs.optional().describe("Minimum pass rate for deterministic assertions only (tool_called, schema, pii, keywords, etc.)"),probabilisticPassRate:Rs.optional().describe("Minimum pass rate for probabilistic assertions only (judge, drift)")}),pL=S.object({enabled:S.boolean().default(!1),framework:S.enum(["eu-ai-act","custom"]).default("eu-ai-act"),outputDir:S.string().default("./compliance-reports"),metadata:S.object({systemName:S.string().optional().describe("Name of the AI system being tested"),systemVersion:S.string().optional().describe("Version of the AI system"),riskLevel:S.enum(["high","limited","minimal"]).optional(),operator:S.string().optional().describe("Organization operating the AI system"),intendedPurpose:S.string().optional().describe("Documented intended purpose of the AI system"),dataGovernanceNotes:S.string().optional()}).optional()}),mL=S.object({enabled:S.boolean().default(!1),includeArtifacts:S.boolean().default(!1).describe("Upload raw prompt inputs and model outputs. Disabled by default for privacy."),redactPatterns:S.array(sm).optional().describe("Patterns to redact from artifacts before upload (applied on top of PII guardrails)"),apiUrl:S.string().url().default("https://api.kindlm.com/v1").describe("Cloud API URL. Override for self-hosted deployments.")}),hL=S.object({name:rt,description:S.string().optional(),tags:S.array(S.string()).optional()}),gL=S.object({kindlm:S.literal(1).describe("Config schema version. Must be 1."),project:rt.describe("Project identifier for cloud upload and report grouping"),suite:hL,providers:QD,models:S.array(eL).min(1,"At least one model must be configured"),prompts:S.record(tL).refine(t=>Object.keys(t).length>0,{message:"At least one prompt must be defined"}),tests:S.array(dL).min(1,"At least one test case must be defined"),gates:fL.default({}),compliance:pL.optional(),trace:YD.optional().describe("OpenTelemetry trace ingestion configuration for the 'kindlm trace' command"),upload:mL.default({}),defaults:S.object({repeat:S.number().int().min(1).default(1).describe("Default repeat count per test case"),concurrency:S.number().int().min(1).max(32).default(4).describe("Default concurrency for test execution"),timeoutMs:S.number().int().min(1e3).default(6e4).describe("Default timeout per provider call in ms"),judgeModel:S.string().optional().describe("Default model ID for LLM-as-judge assertions. Must reference a configured model.")}).default({})});function yL(t){let e=gL.safeParse(t);return e.success?or(e.data):ye({code:"CONFIG_VALIDATION_ERROR",message:"Config validation failed",details:{errors:e.error.issues.map(r=>`${r.path.join(".")}: ${r.message}`)}})}var vL=1048576,gw=1e3,yw=50;function Ur(t,e){if(t.length>vL)return ye({code:"CONFIG_TOO_LARGE",message:`Config exceeds maximum size of 1MB (got ${(t.length/1048576).toFixed(1)}MB)`});let r;try{r=(0,Nw.parse)(t)}catch(c){return ye({code:"CONFIG_PARSE_ERROR",message:`Failed to parse YAML: ${c.message}`,cause:c})}let s=yL(r);if(!s.success)return s;let n=s.data;if(n.tests.length>gw)return ye({code:"CONFIG_VALIDATION_ERROR",message:`Config exceeds maximum of ${gw} tests (got ${n.tests.length})`});if(n.models.length>yw)return ye({code:"CONFIG_VALIDATION_ERROR",message:`Config exceeds maximum of ${yw} models (got ${n.models.length})`});let i=[],a=new Set;for(let c of n.models)a.has(c.id)&&i.push(`Duplicate model ID "${c.id}"`),a.add(c.id);let o=new Set;for(let c of n.tests)o.has(c.name)&&i.push(`Duplicate test name "${c.name}"`),o.add(c.name);for(let c of n.tests)c.prompt&&!(c.prompt in n.prompts)&&i.push(`Test "${c.name}" references prompt "${c.prompt}" which is not defined`);for(let c of n.tests)if(c.models)for(let l of c.models)a.has(l)||i.push(`Test "${c.name}" references model "${l}" which is not configured`);for(let c of n.models)n.providers[c.provider]||i.push(`Model "${c.id}" references provider "${c.provider}" which is not configured`);if(n.defaults.judgeModel&&!a.has(n.defaults.judgeModel)&&i.push(`defaults.judgeModel "${n.defaults.judgeModel}" is not a configured model`),e.fileReader)for(let c of n.tests){if(c.expect.output?.schemaFile){let l=vw(e.configDir,c.expect.output.schemaFile);l.success?e.fileReader.readFile(l.data).success||i.push(`Test "${c.name}": schemaFile "${c.expect.output.schemaFile}" not found at ${l.data}`):i.push(`Test "${c.name}": schemaFile "${c.expect.output.schemaFile}" \u2014 ${l.error.message}`)}if(c.expect.toolCalls){for(let l of c.expect.toolCalls)if(l.argsSchema){let u=vw(e.configDir,l.argsSchema);u.success?e.fileReader.readFile(u.data).success||i.push(`Test "${c.name}": argsSchema "${l.argsSchema}" for tool "${l.tool}" not found at ${u.data}`):i.push(`Test "${c.name}": argsSchema "${l.argsSchema}" for tool "${l.tool}" \u2014 ${u.error.message}`)}}}return i.length>0?ye({code:"CONFIG_VALIDATION_ERROR",message:"Config cross-reference validation failed",details:{errors:i}}):or(n)}function vw(t,e){if(e.startsWith("/")||e.startsWith("\\"))return ye({code:"PATH_TRAVERSAL",message:"Absolute paths are not allowed in config references"});if(/^[a-zA-Z]:/.test(e))return ye({code:"PATH_TRAVERSAL",message:"Absolute paths are not allowed in config references"});let r=t.endsWith("/")?t.slice(0,-1):t,s=`${r}/${e}`,n=_w(s),i=_w(r);return!n.startsWith(i+"/")&&n!==i?ye({code:"PATH_TRAVERSAL",message:`Path "${e}" escapes the config directory`}):or(n)}function _w(t){let e=t.split("/"),r=[];for(let s of e)s==="."||s===""||(s===".."?r.pop():r.push(s));return(t.startsWith("/")?"/":"")+r.join("/")}var Pw=/\{\{(\w+)\}\}/g;function nm(t,e){let r=_L(t,e);if(r.length>0)return ye({code:"CONFIG_VALIDATION_ERROR",message:`Missing template variables: ${r.join(", ")}`,details:{missing:r}});let s=t.replace(Pw,(n,i)=>e[i]);return or(s)}function _L(t,e){let r=new Set;for(let s of t.matchAll(Pw)){let n=s[1];n!==void 0&&!(n in e)&&r.add(n)}return[...r]}function bL(t){let e=t[0];if(!e)throw new Error("aggregateRuns requires at least one run");let{testCaseName:r,modelId:s}=e,n=t.filter(d=>d.assertions.every(f=>f.passed)).length/t.length,i=new Map;for(let d of t)for(let f of d.assertions){let p=i.get(f.assertionType);p||(p=[],i.set(f.assertionType,p)),p.push(f.score)}let a={};for(let[d,f]of i){let p=f.reduce((y,m)=>y+m,0);a[d]={mean:p/f.length,min:Math.min(...f),max:Math.max(...f)}}let o=new Set;for(let d of t)for(let f of d.assertions)!f.passed&&f.failureCode&&o.add(f.failureCode);let c=t.reduce((d,f)=>d+f.latencyMs,0)/t.length,l=t.reduce((d,f)=>d+(f.costEstimateUsd??0),0),u=t.reduce((d,f)=>d+f.tokenUsage.totalTokens,0);return{testCaseName:r,modelId:s,runCount:t.length,passed:n===1,passRate:n,assertionScores:a,failureCodes:[...o],latencyAvgMs:c,totalCostUsd:l,totalTokens:u,runs:t}}function wL(t){let e=t.stdout.split(`
|
|
229
|
+
`),r=[],s=[],n,i=0;for(let a of e){let o=a.trimStart();if(!o.startsWith('{"kindlm":')){r.push(a);continue}let c=$L(o);if(!c){r.push(a);continue}c.kindlm==="tool_call"?s.push({id:c.id??`cmd_tc_${i++}`,name:c.name,arguments:c.arguments}):c.kindlm==="output_json"&&(n=c.data)}return{outputText:r.join(`
|
|
230
|
+
`).trim(),toolCalls:s,outputJson:n,exitCode:t.exitCode,stderr:t.stderr}}function $L(t){try{let e=JSON.parse(t);return typeof e.kindlm!="string"?null:e.kindlm==="tool_call"?typeof e.name!="string"?null:{kindlm:"tool_call",id:typeof e.id=="string"?e.id:void 0,name:e.name,arguments:typeof e.arguments=="object"&&e.arguments!==null?e.arguments:{}}:e.kindlm==="output_json"?{kindlm:"output_json",data:e.data}:null}catch{return null}}function Ow(t,e){return{async run(){let r=Date.now(),s=new Map;for(let v of t.tests)if(v.expect.output?.schemaFile){let b=TL(e.configDir,v.expect.output.schemaFile),$=e.fileReader.readFile(b);if(!$.success)return ye({code:"SCHEMA_FILE_ERROR",message:`Failed to read schema file "${v.expect.output.schemaFile}": ${$.error.message}`});try{s.set(v.name,JSON.parse($.data))}catch(w){return ye({code:"SCHEMA_FILE_ERROR",message:`Failed to parse schema file "${v.expect.output.schemaFile}" as JSON: ${w instanceof Error?w.message:String(w)}`})}}let n=[];for(let v of t.tests){if(v.skip)continue;let b=v.repeat??t.defaults.repeat;if(v.command)for(let $=0;$<b;$++)n.push({test:v,modelConfig:null,runIndex:$});else{let $=v.models??t.models.map(w=>w.id);for(let w of $){let k=t.models.find(N=>N.id===w);if(k)for(let N=0;N<b;N++)n.push({test:v,modelConfig:k,runIndex:N})}}}let i=await EL(n.map(v=>()=>SL(t,e,v,s)),t.defaults.concurrency),a=v=>`${v.testCaseName}::${v.modelId}`,o=new Map;for(let v of i){let b=a(v),$=o.get(b);$||($=[],o.set(b,$)),$.push(v)}let c=[];for(let v of o.values())c.push(bL(v));let l=c.map(v=>({name:v.testCaseName,modelId:v.modelId,status:v.passed?"passed":"failed",assertions:v.runs[0]?.assertions??[],latencyMs:v.latencyAvgMs,costUsd:v.totalCostUsd})),u=t.tests.filter(v=>v.skip).map(v=>({name:v.name,modelId:"",status:"skipped",assertions:[],latencyMs:0,costUsd:0})),d=[...l,...u],f=d.filter(v=>v.status==="passed").length,p=d.filter(v=>v.status==="failed").length,y=d.filter(v=>v.status==="errored").length,m=d.filter(v=>v.status==="skipped").length,g=y>0?"errored":p>0?"failed":"passed",h={suites:[{name:t.suite.name,status:g,tests:d}],totalTests:d.length,passed:f,failed:p,errored:y,skipped:m,durationMs:Date.now()-r};return or({runResult:h,aggregated:c})}}}async function SL(t,e,r,s){let{test:n,modelConfig:i,runIndex:a}=r;if(n.command)return kL(t,e,n,a,s);if(!i)return Ot(n.name,"unknown",a,"No model config for prompt-based test");e.onProgress?.({type:"test_start",test:n.name,model:i.id,run:a});try{let o=e.adapters.get(i.provider);if(!o)return Ot(n.name,i.id,a,`Provider adapter "${i.provider}" not found`);let c=n.prompt?t.prompts[n.prompt]:void 0;if(!c)return Ot(n.name,i.id,a,`Prompt "${n.prompt}" not defined`);let l=nm(c.user,n.vars);if(!l.success)return Ot(n.name,i.id,a,l.error.message);let u=[];if(c.system){let N=nm(c.system,n.vars);if(!N.success)return Ot(n.name,i.id,a,N.error.message);u.push({role:"system",content:N.data})}u.push({role:"user",content:l.data});let d=(n.tools??[]).map(N=>({name:N.name,description:N.description,parameters:N.parameters})),f={model:i.model,messages:u,params:{temperature:i.params.temperature,maxTokens:i.params.maxTokens,topP:i.params.topP,stopSequences:i.params.stopSequences,seed:i.params.seed},tools:d.length>0?d:void 0},p=await zD(o,f,n.tools??[]),y=o.estimateCost(i.model,p.totalUsage),m={};n.expect.output?.schemaFile&&s.has(n.name)&&(m.schemaContent=s.get(n.name));let g=Lc(n.expect,m),h=t.defaults.judgeModel??t.models[0]?.id,v=t.models.find(N=>N.id===h),b=v?e.adapters.get(v.provider):void 0,$={outputText:p.finalText,toolCalls:p.allToolCalls,configDir:e.configDir,latencyMs:p.totalLatencyMs,costUsd:y??void 0,judgeAdapter:b,judgeModel:v?.model};if(e.baselineData){let N=`${n.name}::${i.id}`,T=e.baselineData.results[N];T&&($.baselineText=T.outputText)}let w=[];for(let N of g){let T=await N.evaluate($);w.push(...T)}let k=w.every(N=>N.passed);return e.onProgress?.({type:"test_complete",test:n.name,model:i.id,run:a,passed:k}),{testCaseName:n.name,modelId:i.id,runIndex:a,outputText:p.finalText,assertions:w,latencyMs:p.totalLatencyMs,tokenUsage:p.totalUsage,costEstimateUsd:y}}catch(o){return e.onProgress?.({type:"test_complete",test:n.name,model:i.id,run:a,passed:!1}),Ot(n.name,i.id,a,o instanceof Error?o.message:String(o))}}async function kL(t,e,r,s,n){let i="command";e.onProgress?.({type:"test_start",test:r.name,model:i,run:s});try{if(!e.commandExecutor)return Ot(r.name,i,s,"Command executor not available");if(!r.command)return Ot(r.name,i,s,"No command specified");let a=nm(r.command,r.vars);if(!a.success)return Ot(r.name,i,s,a.error.message);let o=Date.now(),c=await e.commandExecutor.execute(a.data,{timeoutMs:t.defaults.timeoutMs,cwd:e.configDir});if(!c.success)return Ot(r.name,i,s,c.error.message);let l=Date.now()-o,u=wL(c.data),d={};r.expect.output?.schemaFile&&n.has(r.name)&&(d.schemaContent=n.get(r.name));let f=Lc(r.expect,d),p=t.defaults.judgeModel??t.models[0]?.id,y=t.models.find(b=>b.id===p),m=y?e.adapters.get(y.provider):void 0,g={outputText:u.outputText,outputJson:u.outputJson,toolCalls:u.toolCalls,configDir:e.configDir,latencyMs:l,judgeAdapter:m,judgeModel:y?.model};if(e.baselineData){let b=`${r.name}::${i}`,$=e.baselineData.results[b];$&&(g.baselineText=$.outputText)}let h=[];for(let b of f){let $=await b.evaluate(g);h.push(...$)}let v=h.every(b=>b.passed);return e.onProgress?.({type:"test_complete",test:r.name,model:i,run:s,passed:v}),{testCaseName:r.name,modelId:i,runIndex:s,outputText:u.outputText,assertions:h,latencyMs:l,tokenUsage:{inputTokens:0,outputTokens:0,totalTokens:0},costEstimateUsd:null}}catch(a){return e.onProgress?.({type:"test_complete",test:r.name,model:i,run:s,passed:!1}),Ot(r.name,i,s,a instanceof Error?a.message:String(a))}}function Ot(t,e,r,s){return{testCaseName:t,modelId:e,runIndex:r,outputText:"",assertions:[{assertionType:"internal",label:"Execution error",passed:!1,score:0,failureCode:"INTERNAL_ERROR",failureMessage:s}],latencyMs:0,tokenUsage:{inputTokens:0,outputTokens:0,totalTokens:0},costEstimateUsd:null}}async function EL(t,e){let r=new Array(t.length),s=0;async function n(){for(;s<t.length;){let a=s++,o=t[a];o&&(r[a]=await o())}}let i=Array.from({length:Math.min(e,t.length)},()=>n());return await Promise.all(i),r}function TL(t,e){return e.startsWith("/")?e:`${t.endsWith("/")?t.slice(0,-1):t}/${e}`}function Uc(t,e){let r=[],s=e.reduce((l,u)=>l+u.runCount,0),n=e.reduce((l,u)=>l+Math.round(u.passRate*u.runCount),0),i=s>0?n/s:0;r.push({gateName:"passRateMin",passed:i>=t.passRateMin,actual:i,threshold:t.passRateMin,message:i>=t.passRateMin?`Pass rate ${$e(i)} meets minimum ${$e(t.passRateMin)}`:`Pass rate ${$e(i)} below minimum ${$e(t.passRateMin)}`});let a=rm(e,["SCHEMA_INVALID","SCHEMA_PARSE_ERROR"]);if(r.push({gateName:"schemaFailuresMax",passed:a<=t.schemaFailuresMax,actual:a,threshold:t.schemaFailuresMax,message:a<=t.schemaFailuresMax?`Schema failures ${a} within limit ${t.schemaFailuresMax}`:`Schema failures ${a} exceed limit ${t.schemaFailuresMax}`}),t.judgeAvgMin!==void 0){let l=ww(e,"judge"),u=l.length>0?l.reduce((d,f)=>d+f,0)/l.length:1;r.push({gateName:"judgeAvgMin",passed:u>=t.judgeAvgMin,actual:u,threshold:t.judgeAvgMin,message:u>=t.judgeAvgMin?`Judge average ${$e(u)} meets minimum ${$e(t.judgeAvgMin)}`:`Judge average ${$e(u)} below minimum ${$e(t.judgeAvgMin)}`})}if(t.driftScoreMax!==void 0){let l=ww(e,"drift"),u=l.length>0?Math.max(...l):0;r.push({gateName:"driftScoreMax",passed:u<=t.driftScoreMax,actual:u,threshold:t.driftScoreMax,message:u<=t.driftScoreMax?`Drift score ${$e(u)} within limit ${$e(t.driftScoreMax)}`:`Drift score ${$e(u)} exceeds limit ${$e(t.driftScoreMax)}`})}let o=rm(e,["PII_DETECTED"]);r.push({gateName:"piiFailuresMax",passed:o<=t.piiFailuresMax,actual:o,threshold:t.piiFailuresMax,message:o<=t.piiFailuresMax?`PII failures ${o} within limit ${t.piiFailuresMax}`:`PII failures ${o} exceed limit ${t.piiFailuresMax}`});let c=rm(e,["KEYWORD_DENIED","KEYWORD_MISSING"]);if(r.push({gateName:"keywordFailuresMax",passed:c<=t.keywordFailuresMax,actual:c,threshold:t.keywordFailuresMax,message:c<=t.keywordFailuresMax?`Keyword failures ${c} within limit ${t.keywordFailuresMax}`:`Keyword failures ${c} exceed limit ${t.keywordFailuresMax}`}),t.costMaxUsd!==void 0){let l=e.reduce((u,d)=>u+d.totalCostUsd,0);r.push({gateName:"costMaxUsd",passed:l<=t.costMaxUsd,actual:l,threshold:t.costMaxUsd,message:l<=t.costMaxUsd?`Total cost $${l.toFixed(4)} within limit $${t.costMaxUsd.toFixed(4)}`:`Total cost $${l.toFixed(4)} exceeds limit $${t.costMaxUsd.toFixed(4)}`})}if(t.latencyMaxMs!==void 0){let l=e.length>0?e.reduce((u,d)=>u+d.latencyAvgMs,0)/e.length:0;r.push({gateName:"latencyMaxMs",passed:l<=t.latencyMaxMs,actual:l,threshold:t.latencyMaxMs,message:l<=t.latencyMaxMs?`Average latency ${Math.round(l)}ms within limit ${t.latencyMaxMs}ms`:`Average latency ${Math.round(l)}ms exceeds limit ${t.latencyMaxMs}ms`})}if(t.deterministicPassRate!==void 0){let l=bw(e,"deterministic");r.push({gateName:"deterministicPassRate",passed:l>=t.deterministicPassRate,actual:l,threshold:t.deterministicPassRate,message:l>=t.deterministicPassRate?`Deterministic pass rate ${$e(l)} meets minimum ${$e(t.deterministicPassRate)}`:`Deterministic pass rate ${$e(l)} below minimum ${$e(t.deterministicPassRate)}`})}if(t.probabilisticPassRate!==void 0){let l=bw(e,"probabilistic");r.push({gateName:"probabilisticPassRate",passed:l>=t.probabilisticPassRate,actual:l,threshold:t.probabilisticPassRate,message:l>=t.probabilisticPassRate?`Probabilistic pass rate ${$e(l)} meets minimum ${$e(t.probabilisticPassRate)}`:`Probabilistic pass rate ${$e(l)} below minimum ${$e(t.probabilisticPassRate)}`})}return{passed:r.every(l=>l.passed),gates:r}}function bw(t,e){let r=0,s=0;for(let n of t)for(let i of n.runs)for(let a of i.assertions)_D(a.assertionType)===e&&(r++,a.passed&&s++);return r>0?s/r:1}function rm(t,e){let r=0;for(let s of t)for(let n of e)s.failureCodes.includes(n)&&r++;return r}function ww(t,e){let r=[];for(let s of t){let n=s.assertionScores[e];n&&r.push(n.mean)}return r}function $e(t){return(t*100).toFixed(1)+"%"}var Fr=t=>t,NL={bold:Fr,red:Fr,green:Fr,yellow:Fr,cyan:Fr,dim:Fr,greenBold:Fr,redBold:Fr};function Cw(t=NL){return{name:"pretty",generate(e,r){let s=[],n=t;s.push(""),s.push(n.bold(" KindLM Test Results")),s.push("");let i=0;for(let l of e.suites){s.push(PL(l,n));for(let u of l.tests){s.push(OL(u,n));let d=CL(u,n);d&&s.push(d);for(let f of u.assertions)s.push(AL(f,n));i+=u.costUsd}s.push("")}s.push(n.bold(" Summary"));let a=n.green(`${e.passed} passed`),o=e.failed>0?n.red(`${e.failed} failed`):`${e.failed} failed`,c=e.errored>0?n.yellow(`${e.errored} errored`):`${e.errored} errored`;if(s.push(` ${a}, ${o}, ${c} (${e.totalTests} total)`),s.push(` Duration: ${Aw(e.durationMs)}`),i>0&&s.push(` Cost: ${Rw(i)}`),s.push(""),r.gates.length>0){s.push(n.bold(" Quality Gates"));for(let l of r.gates){let u=l.passed?n.green("\u2713"):n.red("\u2717");s.push(` ${u} ${l.message}`)}s.push("")}return e.failed===0&&e.errored===0&&r.passed?s.push(n.greenBold(" \u2713 All tests passed")):s.push(n.redBold(" \u2717 Some tests failed")),s.push(""),{content:s.join(`
|
|
231
|
+
`),format:"text"}}}}function PL(t,e){return` ${t.status==="passed"?e.green("\u2713"):t.status==="skipped"?e.yellow("\u25CB"):e.red("\u2717")} ${e.bold(t.name)}`}function OL(t,e){return` ${t.status==="passed"?e.green("\u2713"):t.status==="skipped"?e.yellow("\u25CB"):e.red("\u2717")} ${t.name}`}function CL(t,e){if(t.status==="skipped")return null;let r=[];return t.modelId&&r.push(t.modelId),t.latencyMs>0&&r.push(Aw(t.latencyMs)),t.costUsd>=5e-5&&r.push(Rw(t.costUsd)),r.length===0?null:` ${e.dim(r.join(" \xB7 "))}`}function AL(t,e){if(t.passed){let i=$w(t),a=i?`${t.label} ${e.cyan(i)}`:t.label;return` ${e.green("\u2713")} ${e.dim(a)}`}let r=$w(t),s=t.failureMessage??"failed",n=r?`${t.label} ${e.cyan(r)}`:t.label;return` ${e.red("\u2717")} ${n}: ${s}`}function $w(t){if(t.assertionType==="judge"||t.assertionType==="drift"){let e=RL(t);if(e!==null){let r=t.passed?"\u2265":"<";return`(${t.score.toFixed(2)} ${r} ${e.toFixed(2)})`}return`(${t.score.toFixed(2)})`}return""}function RL(t){if(t.metadata&&typeof t.metadata=="object"&&"threshold"in t.metadata){let e=t.metadata.threshold;if(typeof e=="number")return e}if(t.failureMessage){let e=t.failureMessage.match(/threshold (\d+\.?\d*)/i);if(e?.[1])return parseFloat(e[1]);let r=t.failureMessage.match(/below (\d+\.?\d*)/i);if(r?.[1])return parseFloat(r[1])}return null}function Aw(t){return t<1e3?`${t}ms`:`${(t/1e3).toFixed(2)}s`}function Rw(t){return t<.01?`$${t.toFixed(4)}`:`$${t.toFixed(2)}`}function Iw(){return{name:"json",generate(t,e){let r={kindlm:{version:"1.0.0",timestamp:new Date().toISOString()},summary:{totalTests:t.totalTests,passed:t.passed,failed:t.failed,errored:t.errored,skipped:t.skipped,durationMs:t.durationMs},gates:{passed:e.passed,results:e.gates},suites:t.suites.map(s=>({name:s.name,status:s.status,tests:s.tests.map(n=>({name:n.name,status:n.status,assertions:n.assertions,latencyMs:n.latencyMs,costUsd:n.costUsd}))}))};return{content:JSON.stringify(r,null,2),format:"json"}}}}function Mw(){return{name:"junit",generate(t,e){let r=t.durationMs/1e3,s=[];s.push('<?xml version="1.0" encoding="UTF-8"?>'),s.push(`<testsuites name="KindLM" tests="${t.totalTests}" failures="${t.failed}" errors="${t.errored}" time="${r.toFixed(3)}">`);for(let n of t.suites){let i=n.tests.filter(c=>c.status==="failed").length,a=n.tests.filter(c=>c.status==="errored").length,o=n.tests.reduce((c,l)=>c+l.latencyMs,0)/1e3;s.push(` <testsuite name="${ht(n.name)}" tests="${n.tests.length}" failures="${i}" errors="${a}" time="${o.toFixed(3)}">`);for(let c of n.tests){let l=c.latencyMs/1e3;if(s.push(` <testcase name="${ht(c.name)}" classname="${ht(n.name)}" time="${l.toFixed(3)}">`),c.status==="skipped")s.push(" <skipped/>");else if(c.status==="errored"&&c.error)s.push(` <error message="${ht(c.error.message)}" type="${ht(c.error.code)}">${ht(c.error.message)}</error>`);else if(c.status==="failed"){let u=c.assertions.filter(d=>!d.passed);for(let d of u)s.push(` <failure message="${ht(d.label)}" type="${ht(d.failureCode??"ASSERTION_FAILED")}">${ht(d.failureMessage??"Assertion failed")}</failure>`)}s.push(" </testcase>")}s.push(" </testsuite>")}if(e.gates.length>0){let n=e.gates.filter(i=>!i.passed).length;s.push(` <testsuite name="Quality Gates" tests="${e.gates.length}" failures="${n}" errors="0" time="0.000">`);for(let i of e.gates)s.push(` <testcase name="${ht(i.gateName)}" classname="Quality Gates" time="0.000">`),i.passed||s.push(` <failure message="${ht(i.message)}" type="GATE_FAILED">${ht(i.message)}</failure>`),s.push(" </testcase>");s.push(" </testsuite>")}return s.push("</testsuites>"),{content:s.join(`
|
|
232
|
+
`),format:"xml"}}}}function ht(t){return t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")}function xw(){return{name:"compliance",generate(t,e){let r=new Date().toISOString(),s=[];s.push("# EU AI Act \u2014 Annex IV Compliance Report"),s.push(""),s.push(`**Generated:** ${r}`),s.push("**Framework:** EU AI Act (Regulation 2024/1689)"),s.push("**Tool:** KindLM v1.0.0"),s.push(""),s.push("## Article 9 \u2014 Risk Management System"),s.push(""),s.push("Testing demonstrates ongoing risk identification and mitigation through automated behavioral regression tests."),s.push(""),s.push(Dc(e,["passRateMin"])),s.push("## Article 10 \u2014 Data and Data Governance"),s.push(""),s.push("PII detection guardrails verify that personal data is not exposed in AI system outputs."),s.push(""),s.push(Dc(e,["piiFailuresMax","keywordFailuresMax"])),s.push("## Article 12 \u2014 Record-Keeping"),s.push(""),s.push("### Test Execution Log"),s.push(""),s.push("| Metric | Value |"),s.push("|--------|-------|"),s.push(`| Total Tests | ${t.totalTests} |`),s.push(`| Passed | ${t.passed} |`),s.push(`| Failed | ${t.failed} |`),s.push(`| Errored | ${t.errored} |`),s.push(`| Duration | ${t.durationMs}ms |`),s.push(""),s.push("### Suite Results"),s.push("");for(let o of t.suites){s.push(`**${o.name}** \u2014 ${o.status}`);for(let c of o.tests){let l=c.status==="passed"?"PASS":"FAIL";s.push(`- [${l}] ${c.name}`)}s.push("")}s.push("## Article 13 \u2014 Transparency and Provision of Information"),s.push(""),s.push("This report provides transparent documentation of AI system testing methodology, results, and quality gate evaluations as required under Article 13."),s.push(""),s.push(Dc(e,["judgeAvgMin","driftScoreMax"])),s.push("## Article 15 \u2014 Accuracy, Robustness and Cybersecurity"),s.push(""),s.push("Schema validation and behavioral assertions verify output accuracy and robustness."),s.push(""),s.push(Dc(e,["schemaFailuresMax","costMaxUsd","latencyMaxMs"])),s.push("## Quality Gate Summary"),s.push(""),s.push("| Gate | Result | Actual | Threshold |"),s.push("|------|--------|--------|-----------|");for(let o of e.gates){let c=o.passed?"PASS":"FAIL";s.push(`| ${o.gateName} | ${c} | ${Sw(o.actual)} | ${Sw(o.threshold)} |`)}s.push("");let n=e.passed?"PASS":"FAIL";s.push(`**Overall Verdict:** ${n}`),s.push("");let i=s.join(`
|
|
233
|
+
`),a=IL("sha256").update(i).digest("hex");return s.push("---"),s.push(`**Tamper Evidence Hash (SHA-256):** \`${a}\``),s.push(""),{content:s.join(`
|
|
234
|
+
`),format:"markdown"}}}}function Dc(t,e){let r=t.gates.filter(n=>e.includes(n.gateName));if(r.length===0)return"";let s=[];s.push("**Gate Evidence:**");for(let n of r){let i=n.passed?"PASS":"FAIL";s.push(`- [${i}] ${n.message}`)}return s.push(""),s.join(`
|
|
235
|
+
`)}function Sw(t){return Number.isInteger(t)?String(t):t.toFixed(4)}var im="1";function ML(t){return JSON.stringify(t,null,2)}function am(t){let e;try{e=JSON.parse(t)}catch{return ye({code:"BASELINE_CORRUPT",message:"Baseline file is not valid JSON"})}if(typeof e!="object"||e===null)return ye({code:"BASELINE_CORRUPT",message:"Baseline file is not a JSON object"});let r=e;return typeof r.version!="string"?ye({code:"BASELINE_CORRUPT",message:"Baseline file missing required field: version"}):r.version!==im?ye({code:"BASELINE_VERSION_MISMATCH",message:`Baseline version "${r.version}" does not match expected "${im}". Re-run \`kindlm baseline set\` to update.`}):typeof r.suiteName!="string"?ye({code:"BASELINE_CORRUPT",message:"Baseline file missing required field: suiteName"}):typeof r.createdAt!="string"?ye({code:"BASELINE_CORRUPT",message:"Baseline file missing required field: createdAt"}):typeof r.results!="object"||r.results===null?ye({code:"BASELINE_CORRUPT",message:"Baseline file missing required field: results"}):or(e)}function jw(t,e){let r=e.read(t);return r.success?am(r.data):r}function qw(t,e){let r=ML(t);return e.write(t.suiteName,r)}function Dw(t){return t.list()}function om(t,e,r){let s={};for(let n of e){let i=`${n.testCaseName}::${n.modelId}`,a=n.runs.find(o=>o.assertions.every(c=>c.passed))??n.runs[0];s[i]={passRate:n.passRate,outputText:a?.outputText??"",failureCodes:n.failureCodes,latencyAvgMs:n.latencyAvgMs,costUsd:n.totalCostUsd,runCount:n.runCount}}return{version:im,suiteName:t,createdAt:r,results:s}}function Lw(t,e){let r=[],s=[],n=[],i=[],a=[],o=new Set(Object.keys(t.results));for(let[c,l]of Object.entries(e)){let u=t.results[c];if(!u){i.push(c);continue}o.delete(c);let d=l.passRate-u.passRate;if(d<-.001){let f=l.failureCodes.filter(p=>!u.failureCodes.includes(p));r.push({testName:c,baselinePassRate:u.passRate,currentPassRate:l.passRate,newFailureCodes:f})}else d>.001?s.push({testName:c,baselinePassRate:u.passRate,currentPassRate:l.passRate}):n.push({testName:c,passRate:l.passRate})}for(let c of o)a.push(c);return{suiteName:t.suiteName,hasBaseline:!0,regressions:r,improvements:s,unchanged:n,newTests:i,removedTests:a}}function Fw(t){if(!t||typeof t!="object")return ye({code:"CONFIG_PARSE_ERROR",message:"OTLP payload must be a non-null object"});let e=t;if(!Array.isArray(e.resourceSpans))return ye({code:"CONFIG_PARSE_ERROR",message:"OTLP payload missing resourceSpans array"});let r=[];for(let s of e.resourceSpans){let n=Ew(s.resource?.attributes??[]);if(Array.isArray(s.scopeSpans)){for(let i of s.scopeSpans)if(Array.isArray(i.spans))for(let a of i.spans){let o=kw(a.startTimeUnixNano),c=kw(a.endTimeUnixNano);r.push({traceId:a.traceId,spanId:a.spanId,parentSpanId:a.parentSpanId||void 0,name:a.name,kind:a.kind,startTimeMs:o,endTimeMs:c,durationMs:c-o,attributes:Ew(a.attributes??[]),resourceAttributes:n,statusCode:a.status?.code,statusMessage:a.status?.message})}}}return or(r)}function kw(t){let e=BigInt(t);return Number(e/1000000n)}function Ew(t){let e={};for(let r of t){let s=xL(r.value);s!==void 0&&(e[r.key]=s)}return e}function xL(t){if(t.stringValue!==void 0)return t.stringValue;if(t.intValue!==void 0)return parseInt(t.intValue,10);if(t.doubleValue!==void 0)return t.doubleValue;if(t.boolValue!==void 0)return t.boolValue}function Uw(t,e){return e?t.filter(r=>{if(e.namePattern&&!new RegExp(e.namePattern).test(r.name))return!1;if(e.attributeMatch){for(let[s,n]of Object.entries(e.attributeMatch))if(String(r.attributes[s])!==n)return!1}return!(e.minDurationMs!==void 0&&r.durationMs<e.minDurationMs)}):t}function Vw(t,e){let r="",s=[],n=0,i=0,a=0,o,c;for(let l of t){let u={...l.resourceAttributes,...l.attributes},d=u[e.outputTextAttr];typeof d=="string"&&d&&(r=r?`${r}
|
|
236
|
+
${d}`:d);let f=u[e.modelAttr];typeof f=="string"&&f&&(o=f);let p=u[e.systemAttr];typeof p=="string"&&p&&(c=p);let y=u[e.inputTokensAttr];typeof y=="number"&&(i+=y);let m=u[e.outputTokensAttr];typeof m=="number"&&(a+=m),l.parentSpanId||(n+=l.durationMs);let g=u["gen_ai.tool.name"],h=u["gen_ai.tool.arguments"];if(typeof g=="string"){let v={};if(typeof h=="string")try{v=JSON.parse(h)}catch{}s.push({id:l.spanId,name:g,arguments:v})}}return{outputText:r,toolCalls:s,latencyMs:n,inputTokens:i,outputTokens:a,model:o,system:c}}function Kw(t,e){let r=t.toolCalls.map(s=>({id:s.id,name:s.name,arguments:s.arguments}));return{outputText:t.outputText,toolCalls:r,configDir:e.configDir,latencyMs:t.latencyMs,judgeAdapter:e.judgeAdapter,judgeModel:e.judgeModel,baselineText:e.baselineText}}import{readFileSync as jL}from"fs";function Vr(){return{readFile(t){try{return{success:!0,data:jL(t,"utf-8")}}catch(e){return{success:!1,error:{code:"CONFIG_FILE_REF_ERROR",message:`Cannot read file: ${t}: ${e instanceof Error?e.message:String(e)}`}}}}}}function zw(t){t.command("validate").description("Validate kindlm.yaml configuration").option("-c, --config <path>","Path to config file","kindlm.yaml").action(e=>{let r=DL(process.cwd(),e.config),s=LL(r),n;try{n=qL(r,"utf-8")}catch{console.error(Kr.red(`Config file not found: ${r}`)),process.exit(1)}let i=Vr(),a=Ur(n,{configDir:s,fileReader:i});if(!a.success){console.error(Kr.red("Validation failed:"));let c=a.error.details;if(c&&Array.isArray(c.errors))for(let l of c.errors)console.error(Kr.red(` - ${l}`));else console.error(Kr.red(` ${a.error.message}`));process.exit(1)}let o=a.data;console.log(Kr.green("Config is valid!")),console.log(""),console.log(` Suite: ${Kr.bold(o.suite.name)}`),console.log(` Tests: ${Kr.bold(String(o.tests.length))}`),console.log(` Models: ${Kr.bold(String(o.models.length))}`)})}import et from"chalk";import{readFileSync as VL,statSync as KL}from"fs";import{resolve as zL,dirname as BL}from"path";import cr from"chalk";function Vc(){return{async fetch(t,e){let r=new AbortController,s=e.timeoutMs?setTimeout(()=>r.abort(),e.timeoutMs):void 0;try{let n=await globalThis.fetch(t,{method:e.method,headers:e.headers,body:e.body,signal:r.signal});return{ok:n.ok,status:n.status,json:()=>n.json()}}finally{s!==void 0&&clearTimeout(s)}}}}import FL from"ora";function In(){let t;return{start(e){t=FL(e).start()},succeed(e){t?.succeed(e),t=void 0},fail(e){t?.fail(e),t=void 0},stop(){t?.stop(),t=void 0}}}import{spawn as UL}from"child_process";function Bw(){return{async execute(t,e){return new Promise(r=>{let s=UL("sh",["-c",t],{cwd:e.cwd,env:{...process.env,...e.env},stdio:["ignore","pipe","pipe"]}),n=[],i=[];s.stdout.on("data",o=>n.push(o)),s.stderr.on("data",o=>i.push(o));let a=setTimeout(()=>{s.kill("SIGTERM"),setTimeout(()=>{s.killed||s.kill("SIGKILL")},1e3)},e.timeoutMs);s.on("close",(o,c)=>{if(clearTimeout(a),c==="SIGTERM"||c==="SIGKILL"){r(ye({code:"PROVIDER_TIMEOUT",message:`Command timed out after ${e.timeoutMs}ms`}));return}r(or({stdout:Buffer.concat(n).toString("utf-8"),stderr:Buffer.concat(i).toString("utf-8"),exitCode:o??1}))}),s.on("error",o=>{clearTimeout(a),r(ye({code:"UNKNOWN_ERROR",message:`Failed to spawn command: ${o.message}`}))})})}}}var JL=1048576;async function ba(t){let e=In(),r=!1,s=()=>{r&&process.exit(130),r=!0,e.stop(),console.error(cr.yellow(`
|
|
237
|
+
Interrupted. Exiting...`)),process.exit(130)};process.on("SIGINT",s);try{return await HL(t,e)}finally{process.removeListener("SIGINT",s)}}async function HL(t,e){let r=zL(process.cwd(),t.configPath),s=BL(r);try{let v=KL(r);v.size>JL&&(console.error(cr.red(`Config file exceeds 1MB limit (${(v.size/1048576).toFixed(1)}MB): ${r}`)),process.exit(1))}catch{console.error(cr.red(`Config file not found: ${r}`)),process.exit(1)}let n;try{n=VL(r,"utf-8")}catch{console.error(cr.red(`Config file not found: ${r}`)),process.exit(1)}let i=Vr(),a=Ur(n,{configDir:s,fileReader:i});a.success||(console.error(cr.red(`Config validation failed: ${a.error.message}`)),process.exit(1));let o=a.data;t.runs!==void 0&&(o.defaults.repeat=t.runs),t.gate!==void 0&&(o.gates?o.gates.passRateMin=t.gate/100:o.gates={passRateMin:t.gate/100});let c=Vc(),l=new Map,u=o.providers;for(let[v,b]of Object.entries(u)){if(!b)continue;let $="";if(b.apiKeyEnv){let k=process.env[b.apiKeyEnv];k||(console.error(cr.red(`Missing environment variable: ${b.apiKeyEnv}`)),process.exit(1)),$=k.trim()}else v!=="ollama"&&(console.error(cr.red(`Provider "${v}" requires apiKeyEnv to be configured`)),process.exit(1));let w;try{w=Fc(v,c)}catch(k){let N=k instanceof Error?k.message:String(k);console.error(cr.red(`Failed to create provider "${v}": ${N}`)),process.exit(1)}await w.initialize({apiKey:$,baseUrl:b.baseUrl,organization:b.organization,timeoutMs:o.defaults.timeoutMs,maxRetries:2}),l.set(v,w)}let d=0,f=GL(o),p=v=>{v.type==="test_start"?e.start(`Running ${v.test} [${v.model}] (${d}/${f})`):v.type==="test_complete"&&d++},m=o.tests.some(v=>v.command)?Bw():void 0,h=await Ow(o,{adapters:l,configDir:s,fileReader:i,onProgress:p,baselineData:t.baselineData,commandExecutor:m}).run();return e.stop(),h.success||(console.error(cr.red(`Run failed: ${h.error.message}`)),process.exit(1)),{config:o,runnerResult:h.data,configDir:s,yamlContent:n}}function GL(t){let e=0;for(let r of t.tests){if(r.skip)continue;let s=r.repeat??t.defaults.repeat;if(r.command)e+=s;else{let n=r.models?.length??t.models.length;e+=n*s}}return e}import{readFileSync as YL,writeFileSync as WL,mkdirSync as ZL}from"fs";import{join as Jw}from"path";import{createHash as QL}from"crypto";function Hw(){return Jw(process.cwd(),".kindlm","last-run.json")}function Gw(t){let e=Hw(),r=Jw(process.cwd(),".kindlm");ZL(r,{recursive:!0,mode:448});let s={...t,runnerResult:{...t.runnerResult,aggregated:t.runnerResult.aggregated.map(n=>{let i=n.runs.flatMap(a=>a.assertions.filter(o=>!o.passed).map(o=>o.failureMessage)).filter(a=>a!==void 0);return{...n,failureMessages:i,runs:[]}})}};WL(e,JSON.stringify(s),{mode:384})}function Yw(){try{let t=YL(Hw(),"utf-8"),e=JSON.parse(t);return e.runnerResult?.runResult&&Array.isArray(e.runnerResult.aggregated)&&typeof e.suiteName=="string"&&typeof e.configHash=="string"&&typeof e.timestamp=="string"?e:null}catch{return null}}function Ww(t){return QL("sha256").update(t).digest("hex")}import XL from"pdfkit";import{createWriteStream as e2}from"fs";import{mkdir as t2}from"fs/promises";import{dirname as r2}from"path";function s2(t){let e=t.split(`
|
|
238
|
+
`),r=[],s="",n=2,i=[];for(let a of e){let o=a.match(/^(#{2,4})\s+(.+)$/);o&&o[1]?.length===2?((s||i.length>0)&&r.push({heading:s,headingLevel:n,body:i.join(`
|
|
239
|
+
`).trim()}),s=o[2]?.trim()??"",n=2,i=[]):i.push(a)}return(s||i.length>0)&&r.push({heading:s,headingLevel:n,body:i.join(`
|
|
240
|
+
`).trim()}),r}function n2(t){return t.match(/^# (.+)$/m)?.[1]?.trim()??"KindLM Compliance Report"}function i2(t){return t.match(/SHA-256:\s*`([a-f0-9]+)`/i)?.[1]??null}function Zw(t){switch(t){case 2:return 18;case 3:return 15;case 4:return 13;default:return 13}}function a2(t){if(t.length<2)return null;let e=t[0]??"",r=t[1]??"";if(!e.includes("|")||!r.match(/^\s*\|[-:\s|]+\|\s*$/))return null;let s=a=>a.split("|").slice(1,-1).map(o=>o.trim()),n={cells:s(e)},i=[];for(let a=2;a<t.length;a++){let o=t[a]??"";if(!o.includes("|"))break;i.push({cells:s(o)})}return{header:n,rows:i}}function Is(t,e){let r=t.page.margins.bottom;t.page.height-r-30-t.y<e&&(t.addPage(),Qw(t))}function Qw(t){let e=new Date().toISOString();t.fontSize(8).font("Helvetica").fillColor("#a8a29e").text("KindLM Compliance Report",60,40),t.text(e,60,40,{align:"right"}),t.moveDown(3)}function o2(t){t.fontSize(8).font("Helvetica").fillColor("#a8a29e").text("Generated by KindLM \xB7 kindlm.com",60,t.page.height-50,{align:"center",width:t.page.width-120})}function c2(t,e,r){let s=e.header.cells.length,n=r/s,i=t.page.margins.left,a=18;Is(t,a*2);let o=(c,l,u)=>{let d=t.y;u&&(t.save(),t.rect(i,d-2,r,a).fill(u),t.restore());for(let f=0;f<c.length;f++){let p=i+f*n;t.fontSize(8).font(l?"Helvetica-Bold":"Courier").fillColor("#44403c").text(c[f]??"",p+4,d,{width:n-8,height:a,lineBreak:!1})}t.y=d+a};o(e.header.cells,!0,"#f5f5f4");for(let c of e.rows)Is(t,a),o(c.cells,!1)}async function Xw(t,e){return await t2(r2(e),{recursive:!0}),new Promise((r,s)=>{let n=new XL({size:"A4",margins:{top:72,bottom:72,left:60,right:60},info:{Title:"KindLM EU AI Act Compliance Report",Author:"KindLM",Creator:"KindLM CLI"}}),i=e2(e);n.pipe(i);let a=n.page.width-n.page.margins.left-n.page.margins.right,o=n2(t),c=i2(t);n.moveDown(6),n.fontSize(28).font("Helvetica-Bold").fillColor("#1c1917").text(o,{align:"center",width:a}),n.moveDown(.5),n.fontSize(14).font("Helvetica").fillColor("#57534e").text("EU AI Act Annex IV Documentation",{align:"center",width:a}),n.moveDown(1),n.fontSize(10).fillColor("#a8a29e").text(`Generated: ${new Date().toISOString()}`,{align:"center",width:a}),c&&(n.moveDown(.3),n.fontSize(9).font("Courier").fillColor("#78716c").text(`SHA-256: ${c}`,{align:"center",width:a})),n.moveDown(2),n.fontSize(10).font("Helvetica").fillColor("#6366f1").text("kindlm.com",{align:"center",link:"https://kindlm.com",width:a});let l=s2(t);for(let u of l){if(n.addPage(),Qw(n),u.heading){let y=Zw(u.headingLevel);n.fontSize(y).font("Helvetica-Bold").fillColor("#1c1917").text(u.heading,{width:a}),n.moveDown(.5),n.moveTo(60,n.y).lineTo(60+a,n.y).strokeColor("#e7e5e4").lineWidth(1).stroke(),n.moveDown(.8)}let d=u.body.split(`
|
|
241
|
+
`),f=!1,p=0;for(;p<d.length;){let y=d[p]??"";if(y.startsWith("```")){f=!f,f&&Is(n,30),p++;continue}if(f){Is(n,14);let h=n.y;n.save(),n.rect(n.page.margins.left,h-2,a,14).fill("#f5f5f4"),n.restore(),n.fontSize(9).font("Courier").fillColor("#44403c").text(y,{width:a}),p++;continue}if(!y.trim()){n.moveDown(.4),p++;continue}let m=d[p+1]??"";if(y.includes("|")&&p+1<d.length&&m.match(/^\s*\|[-:\s|]+\|\s*$/)){let h=[],v=p;for(;v<d.length&&(d[v]??"").includes("|");)h.push(d[v]??""),v++;let b=a2(h);if(b){c2(n,b,a),p=v;continue}}if(y.match(/^\s*\|[-:]+/)||y.match(/^---+$/)){p++;continue}let g=y.match(/^(#{3,4})\s+(.+)$/);if(g?.[1]&&g[2]){let h=g[1].length,v=Zw(h);Is(n,v+10),n.moveDown(.3),n.fontSize(v).font("Helvetica-Bold").fillColor("#1c1917").text(g[2].trim(),{width:a}),n.moveDown(.3),p++;continue}if(y.match(/^\s*[-*] /)){Is(n,14),n.fontSize(10).font("Helvetica").fillColor("#44403c").text(y.trim(),{indent:12,width:a-12}),p++;continue}Is(n,14),n.fontSize(10).font("Helvetica").fillColor("#44403c").text(y.trim(),{width:a}),p++}o2(n)}n.end(),i.on("finish",()=>r(e)),i.on("error",s)})}function e$(t){t.command("test").description("Run test suites").option("-s, --suite <name>","Run a specific suite").option("--compliance","Generate compliance report").option("--reporter <type>","Output format: pretty, json, junit","pretty").option("--runs <count>","Override run count").option("--gate <percent>","Fail if pass rate below threshold").option("--pdf <path>","Export compliance report as PDF (requires --compliance)").option("-c, --config <path>","Path to config file","kindlm.yaml").action(async e=>{try{let{runnerResult:r,config:s,yamlContent:n}=await ba({configPath:e.config,runs:e.runs?parseInt(e.runs,10):void 0,gate:e.gate?parseFloat(e.gate):void 0}),{runResult:i,aggregated:a}=r,o=Uc(s.gates,a),l=u2(e.reporter).generate(i,o);if(console.log(l.content),e.compliance){let f=xw().generate(i,o);if(console.log(""),console.log(f.content),e.pdf){let p=await Xw(f.content,e.pdf);console.log(""),console.log(et.green(`PDF report saved to ${p}`))}}try{Gw({runnerResult:r,suiteName:s.suite.name,configHash:Ww(n),timestamp:new Date().toISOString()})}catch{}let u=i.failed===0&&i.errored===0&&o.passed;process.exit(u?0:1)}catch(r){if(r instanceof I){let s=r.code==="TIMEOUT"?"Provider timeout":r.code==="NETWORK_ERROR"?"Network error":r.code==="AUTH_FAILED"?"Authentication failed":r.code==="RATE_LIMITED"?"Rate limited":`Provider error (${r.code})`;console.error(et.red(`${s}: ${r.message}`)),r.retryable&&console.error(et.yellow("This error may be transient. Try again or increase --timeout."))}else if(d2(r)){let n=r.code.startsWith("CONFIG_")?"Config error":"Error";console.error(et.red(`${n}: ${r.message}`))}else r instanceof Error&&r.name==="AbortError"?console.error(et.red("Request timed out. Check network connectivity or increase timeout.")):console.error(et.red(`Error: ${r instanceof Error?r.message:String(r)}`));process.exit(1)}})}var l2={bold:t=>et.bold(t),red:t=>et.red(t),green:t=>et.green(t),yellow:t=>et.yellow(t),cyan:t=>et.cyan(t),dim:t=>et.dim(t),greenBold:t=>et.green.bold(t),redBold:t=>et.red.bold(t)};function u2(t){switch(t){case"json":return Iw();case"junit":return Mw();default:return Cw(l2)}}function d2(t){return typeof t=="object"&&t!==null&&"code"in t&&"message"in t&&typeof t.code=="string"&&typeof t.message=="string"}import{resolve as zc,dirname as lm,join as um}from"path";import{readFileSync as h2}from"fs";import oe from"chalk";import{readFileSync as f2,writeFileSync as p2,mkdirSync as t$,readdirSync as m2}from"fs";import{join as cm}from"path";function r$(t){return t.replace(/[^a-zA-Z0-9_-]/g,"_")}function Kc(t){let e=cm(t,"baselines");return{read(r){let s=cm(e,`${r$(r)}.json`);try{return{success:!0,data:f2(s,"utf-8")}}catch{return{success:!1,error:{code:"BASELINE_NOT_FOUND",message:`No baseline found for suite "${r}" at ${s}`}}}},write(r,s){try{t$(e,{recursive:!0});let n=cm(e,`${r$(r)}.json`);return p2(n,s,"utf-8"),{success:!0,data:void 0}}catch(n){return{success:!1,error:{code:"UNKNOWN_ERROR",message:`Failed to write baseline: ${n instanceof Error?n.message:String(n)}`}}}},list(){try{return t$(e,{recursive:!0}),{success:!0,data:m2(e).filter(n=>n.endsWith(".json")).map(n=>n.replace(/\.json$/,""))}}catch(r){return{success:!1,error:{code:"UNKNOWN_ERROR",message:`Failed to list baselines: ${r instanceof Error?r.message:String(r)}`}}}}}}function s$(t){let e=t.command("baseline").description("Manage test baselines");e.command("set").description("Save current results as baseline").option("-c, --config <path>","Path to config file","kindlm.yaml").option("--runs <count>","Override run count").action(async r=>{try{let s=lm(zc(process.cwd(),r.config)),n=um(s,".kindlm"),i=Kc(n),{config:a,runnerResult:o}=await ba({configPath:r.config,runs:r.runs?parseInt(r.runs,10):void 0}),{aggregated:c}=o,l=om(a.suite.name,c,new Date().toISOString()),u=qw(l,i);u.success||(console.error(oe.red(`Failed to save baseline: ${u.error.message}`)),process.exit(1));let d=Object.keys(l.results).length;console.log(""),console.log(oe.green(`Baseline saved for suite "${a.suite.name}" (${d} test${d===1?"":"s"})`)),console.log(oe.dim(` Location: ${n}/baselines/`)),process.exit(0)}catch(s){console.error(oe.red(`Error: ${s instanceof Error?s.message:String(s)}`)),process.exit(1)}}),e.command("compare").description("Compare latest against baseline").option("-c, --config <path>","Path to config file","kindlm.yaml").option("--runs <count>","Override run count").action(async r=>{try{let s=lm(zc(process.cwd(),r.config)),n=um(s,".kindlm"),i=Kc(n),a=zc(process.cwd(),r.config),o;try{o=h2(a,"utf-8")}catch{console.error(oe.red(`Config file not found: ${a}`)),process.exit(1)}let c=Vr(),l=Ur(o,{configDir:s,fileReader:c});l.success||(console.error(oe.red(`Config validation failed: ${l.error.message}`)),process.exit(1));let u=l.data.suite.name,d=jw(u,i);d.success||(d.error.code==="BASELINE_NOT_FOUND"?console.error(oe.red(`No baseline found for suite "${u}". Run \`kindlm baseline set\` first.`)):console.error(oe.red(`Failed to read baseline: ${d.error.message}`)),process.exit(1));let f=d.data,{runnerResult:p}=await ba({configPath:r.config,runs:r.runs?parseInt(r.runs,10):void 0,baselineData:f}),{aggregated:y}=p,m=om(u,y,new Date().toISOString()),g=Lw(f,m.results);if(console.log(""),console.log(oe.bold(`Baseline comparison for "${u}"`)),console.log(oe.dim(` Baseline from: ${f.createdAt}`)),console.log(""),g.regressions.length>0){console.log(oe.red.bold(` Regressions (${g.regressions.length}):`));for(let h of g.regressions)console.log(oe.red(` ${h.testName}: ${wa(h.baselinePassRate)} \u2192 ${wa(h.currentPassRate)}`)),h.newFailureCodes.length>0&&console.log(oe.red(` New failures: ${h.newFailureCodes.join(", ")}`));console.log("")}if(g.improvements.length>0){console.log(oe.green.bold(` Improvements (${g.improvements.length}):`));for(let h of g.improvements)console.log(oe.green(` ${h.testName}: ${wa(h.baselinePassRate)} \u2192 ${wa(h.currentPassRate)}`));console.log("")}if(g.unchanged.length>0){console.log(oe.dim(` Unchanged (${g.unchanged.length}):`));for(let h of g.unchanged)console.log(oe.dim(` ${h.testName}: ${wa(h.passRate)}`));console.log("")}if(g.newTests.length>0){console.log(oe.cyan(` New tests (${g.newTests.length}):`));for(let h of g.newTests)console.log(oe.cyan(` ${h}`));console.log("")}if(g.removedTests.length>0){console.log(oe.yellow(` Removed tests (${g.removedTests.length}):`));for(let h of g.removedTests)console.log(oe.yellow(` ${h}`));console.log("")}process.exit(g.regressions.length>0?1:0)}catch(s){console.error(oe.red(`Error: ${s instanceof Error?s.message:String(s)}`)),process.exit(1)}}),e.command("list").description("List saved baselines").option("-c, --config <path>","Path to config file","kindlm.yaml").action(r=>{try{let s=lm(zc(process.cwd(),r.config)),n=um(s,".kindlm"),i=Kc(n),a=Dw(i);a.success||(console.error(oe.red(`Failed to list baselines: ${a.error.message}`)),process.exit(1));let o=a.data;o.length===0&&(console.log(oe.dim("No baselines saved yet. Run `kindlm baseline set` to create one.")),process.exit(0)),console.log(oe.bold("Saved baselines:")),console.log("");for(let c of o){let l=i.read(c);if(!l.success){console.log(` ${c} ${oe.dim("(unreadable)")}`);continue}let u=am(l.data);if(!u.success){console.log(` ${c} ${oe.dim("(corrupt)")}`);continue}let d=Object.keys(u.data.results).length;console.log(` ${oe.cyan(u.data.suiteName)} \u2014 ${d} test${d===1?"":"s"}, saved ${oe.dim(u.data.createdAt)}`)}process.exit(0)}catch(s){console.error(oe.red(`Error: ${s instanceof Error?s.message:String(s)}`)),process.exit(1)}})}function wa(t){return`${(t*100).toFixed(1)}%`}import{createInterface as k2}from"readline";import{Writable as E2}from"stream";import ur from"chalk";import{readFileSync as g2,writeFileSync as y2,mkdirSync as v2,unlinkSync as _2,chmodSync as b2}from"fs";import{join as n$}from"path";import{homedir as i$}from"os";function dm(){return n$(i$(),".kindlm","credentials")}function Bc(){try{let t=g2(dm(),"utf-8"),e=JSON.parse(t);return typeof e.token=="string"&&e.token.length>0?e.token:null}catch{return null}}function a$(t){let e=dm(),r=n$(i$(),".kindlm");v2(r,{recursive:!0,mode:448});let s={token:t,savedAt:new Date().toISOString()};y2(e,JSON.stringify(s,null,2),{mode:384}),b2(e,384)}function o$(){try{_2(dm())}catch{}}var w2="https://api.kindlm.com";var lr=class extends Error{status;constructor(e,r){super(r),this.name="CloudApiError",this.status=e}};function Mn(){let t=process.env.KINDLM_CLOUD_URL??w2;if(t.startsWith("http://")&&!$2(t))throw new Error(`Refusing to use insecure HTTP for Cloud API: ${t}. Use HTTPS or target localhost for development.`);return t}function $2(t){try{let e=new URL(t);return e.hostname==="localhost"||e.hostname==="127.0.0.1"||e.hostname==="::1"}catch{return!1}}function S2(t){return new Promise(e=>setTimeout(e,t))}function $a(t,e){async function r(s,n,i){let a=`${t}${n}`,o={Authorization:`Bearer ${e}`},c={method:s,headers:o};i!==void 0&&(o["Content-Type"]="application/json",c.body=JSON.stringify(i));let l;for(let u=0;u<=1;u++){u>0&&await S2(1e3);let d=new AbortController,f=setTimeout(()=>d.abort(),3e4);c.signal=d.signal;try{let p=await fetch(a,c);if(!p.ok){if(p.status>=500&&u<1){l=new lr(p.status,`HTTP ${p.status}`);continue}let m=`HTTP ${p.status}`;if((p.headers.get("content-type")??"").includes("application/json"))try{let h=await p.json();h.error&&(m=h.error)}catch{}throw new lr(p.status,m)}if(p.status===204)return;let y=p.headers.get("content-type")??"";if(!y.includes("application/json"))throw new lr(p.status,`Expected JSON response but got content-type: ${y}`);return await p.json()}catch(p){if(p instanceof lr)throw p;if(l=p instanceof Error?p:new Error(String(p)),u<1)continue}finally{clearTimeout(f)}}throw l??new Error("Request failed")}return{baseUrl:t,get:s=>r("GET",s),post:(s,n)=>r("POST",s,n),patch:(s,n)=>r("PATCH",s,n),delete:s=>r("DELETE",s)}}function c$(t){t.command("login").description("Authenticate with KindLM Cloud").option("-t, --token <token>","API token (skips interactive prompt)").option("--status","Show current authentication status").option("--logout","Remove stored credentials").action(async e=>{try{if(e.logout){o$(),console.log(ur.green("Logged out. Credentials removed."));return}if(e.status){await T2();return}let r=e.token??process.env.KINDLM_API_TOKEN??await N2();r.startsWith("klm_")||(console.error(ur.red('Invalid token format. KindLM tokens start with "klm_".')),process.exit(1));let s=$a(Mn(),r);try{await s.get("/v1/auth/tokens")}catch(n){throw n instanceof lr&&n.status===401&&(console.error(ur.red("Invalid or expired token.")),process.exit(1)),n}a$(r),console.log(ur.green("Authenticated successfully. Token saved."))}catch(r){console.error(ur.red(`Login failed: ${r instanceof Error?r.message:String(r)}`)),process.exit(1)}})}async function T2(){let t=Bc();if(!t){console.log(ur.yellow('Not authenticated. Run "kindlm login" to authenticate.'));return}let e=$a(Mn(),t);try{await e.get("/v1/auth/tokens"),console.log(ur.green("Authenticated.")),console.log(` Cloud URL: ${Mn()}`)}catch(r){r instanceof lr&&r.status===401?console.log(ur.yellow('Stored token is invalid or expired. Run "kindlm login" to re-authenticate.')):console.log(ur.yellow(`Cannot reach Cloud API: ${r instanceof Error?r.message:String(r)}`))}}function N2(){return new Promise((t,e)=>{let r=new E2({write(n,i,a){a()}});process.stderr.write("Paste your KindLM API token: ");let s=k2({input:process.stdin,output:r,terminal:!0});s.question("",n=>{s.close(),process.stderr.write(`
|
|
242
|
+
`);let i=n.trim();if(!i){e(new Error("No token provided"));return}t(i)})})}import{basename as A2}from"path";import{execSync as R2}from"child_process";import pm from"chalk";import{execSync as fm}from"child_process";function l$(){try{let t=fm("git rev-parse HEAD",{encoding:"utf-8"}).trim()||null,e=fm("git rev-parse --abbrev-ref HEAD",{encoding:"utf-8"}).trim()||null,s=fm("git status --porcelain",{encoding:"utf-8"}).trim().length>0;return{commitSha:t,branch:e,dirty:s}}catch{return{commitSha:null,branch:null,dirty:!1}}}function u$(){return process.env.GITHUB_ACTIONS?{name:"github_actions",isCI:!0,commitSha:process.env.GITHUB_SHA??null,branch:process.env.GITHUB_REF_NAME??null}:process.env.GITLAB_CI?{name:"gitlab_ci",isCI:!0,commitSha:process.env.CI_COMMIT_SHA??null,branch:process.env.CI_COMMIT_BRANCH??null}:process.env.CI?{name:null,isCI:!0,commitSha:null,branch:null}:{name:null,isCI:!1,commitSha:null,branch:null}}function Sa(t){return encodeURIComponent(t)}async function d$(t,e,r){let s=await P2(t,r.projectName),n=await O2(t,s,r.suiteName,r.configHash),i=await t.post(`/v1/runs/${Sa(s)}/runs`,{suiteId:n,commitSha:r.commitSha,branch:r.branch,environment:r.environment,triggeredBy:r.triggeredBy}),a=C2(e.aggregated),o=50;for(let h=0;h<a.length;h+=o){let v=a.slice(h,h+o);await t.post(`/v1/results/${Sa(i.id)}/results`,{results:v})}let{runResult:c}=e,l=c.totalTests>0?c.passed/c.totalTests:0,u=new Set(e.aggregated.map(h=>h.modelId)),d=e.aggregated.map(h=>h.assertionScores.judge?.mean).filter(h=>h!==void 0),f=d.length>0?d.reduce((h,v)=>h+v,0)/d.length:void 0,p=e.aggregated.map(h=>h.latencyAvgMs),y=p.length>0?p.reduce((h,v)=>h+v,0)/p.length:void 0,m=e.aggregated.reduce((h,v)=>h+v.totalCostUsd,0),g=m>0?m:void 0;return await t.patch(`/v1/runs/${Sa(i.id)}`,{status:"completed",passRate:l,testCount:c.totalTests,modelCount:u.size,judgeAvgScore:f,latencyAvgMs:y,costEstimateUsd:g,finishedAt:new Date().toISOString()}),{runId:i.id,projectId:s}}async function P2(t,e){let{projects:r}=await t.get("/v1/projects"),s=r.find(i=>i.name===e);return s?s.id:(await t.post("/v1/projects",{name:e})).id}async function O2(t,e,r,s){let{suites:n}=await t.get(`/v1/suites/${Sa(e)}/suites`),i=n.find(o=>o.name===r);return i?i.id:(await t.post(`/v1/suites/${Sa(e)}/suites`,{name:r,configHash:s})).id}function C2(t){return t.map(e=>{let r=e,s=e.runs.length>0?e.runs.flatMap(n=>n.assertions.filter(i=>!i.passed).map(i=>i.failureMessage)).filter(n=>n!==void 0):r.failureMessages??[];return{testCaseName:e.testCaseName,modelId:e.modelId,passed:e.passed?1:0,passRate:e.passRate,runCount:e.runCount,judgeAvg:e.assertionScores.judge?.mean??null,driftScore:e.assertionScores.drift?.mean??null,latencyAvgMs:e.latencyAvgMs??null,costUsd:e.totalCostUsd??null,totalTokens:e.totalTokens??null,failureCodes:e.failureCodes.length>0?JSON.stringify(e.failureCodes):null,failureMessages:s.length>0?JSON.stringify(s):null,assertionScores:Object.keys(e.assertionScores).length>0?JSON.stringify(e.assertionScores):null}})}function f$(t){t.command("upload").description("Push last run results to KindLM Cloud").option("-t, --token <token>","API token (overrides stored token)").option("-p, --project <name>","Project name").action(async e=>{try{let r=e.token??process.env.KINDLM_API_TOKEN??Bc();r||(console.error(pm.red('Not authenticated. Run "kindlm login" first or pass --token.')),process.exit(1));let s=Yw();s||(console.error(pm.red('No test run found. Run "kindlm test" first.')),process.exit(1));let n=l$(),i=u$(),a=e.project??M2(),o=$a(Mn(),r),c=In();c.start("Uploading results to KindLM Cloud...");try{let l=await d$(o,s.runnerResult,{projectName:a,suiteName:s.suiteName,configHash:s.configHash,commitSha:i.commitSha??n.commitSha??void 0,branch:i.branch??n.branch??void 0,environment:i.isCI?"ci":"local",triggeredBy:i.name??"local"});c.succeed("Uploaded successfully."),console.log(` Run ID: ${l.runId}`),console.log(` Project: ${a}`),console.log(` Suite: ${s.suiteName}`)}catch(l){throw c.fail("Upload failed."),l}}catch(r){console.error(pm.red(`Upload failed: ${r instanceof Error?r.message:String(r)}`)),process.exit(1)}})}function I2(t){try{let s=new URL(t).pathname.split("/").filter(Boolean),n=s[s.length-1];if(n)return n.replace(/\.git$/,"")}catch{}let e=t.match(/^[\w.-]+@[\w.-]+:(.+?)(?:\.git)?$/);if(e?.[1]){let r=e[1].split("/");return r[r.length-1]??null}return null}function M2(){try{let t=R2("git remote get-url origin",{encoding:"utf-8"}).trim(),e=I2(t);if(e)return e}catch{}return A2(process.cwd())}import{readFileSync as j2,statSync as q2}from"fs";import{resolve as D2,dirname as L2}from"path";import{spawn as F2}from"child_process";import gt from"chalk";import{createServer as x2}from"http";function p$(t){let e=[],r=null,s=[];function n(){for(let a of s)a()}function i(a,o){if(o.setHeader("Access-Control-Allow-Origin","*"),o.setHeader("Access-Control-Allow-Methods","POST, OPTIONS"),o.setHeader("Access-Control-Allow-Headers","Content-Type"),a.method==="OPTIONS"){o.writeHead(204),o.end();return}if(a.method!=="POST"||a.url!=="/v1/traces"){o.writeHead(404,{"Content-Type":"application/json"}),o.end(JSON.stringify({error:"Not found"}));return}let c=[];a.on("data",l=>c.push(l)),a.on("end",()=>{try{let l=Buffer.concat(c).toString("utf-8"),u=JSON.parse(l),d=Fw(u);d.success?(e.push(...d.data),n(),o.writeHead(200,{"Content-Type":"application/json"}),o.end(JSON.stringify({partialSuccess:{}}))):(o.writeHead(400,{"Content-Type":"application/json"}),o.end(JSON.stringify({error:d.error.message})))}catch{o.writeHead(400,{"Content-Type":"application/json"}),o.end(JSON.stringify({error:"Invalid JSON"}))}})}return{start(){return new Promise((a,o)=>{r=x2(i),r.on("error",o),r.listen(t,()=>a())})},stop(){return new Promise(a=>{r?r.close(()=>a()):a()})},getSpans(){return[...e]},waitForSpans({timeoutMs:a}){return new Promise(o=>{if(e.length>0){o([...e]);return}let c=setTimeout(()=>{s=s.filter(u=>u!==l),o([...e])},a),l=()=>{clearTimeout(c),s=s.filter(u=>u!==l),setTimeout(()=>o([...e]),500)};s.push(l)})}}}function m$(t){t.command("trace").description("Ingest OpenTelemetry traces and run assertions against them").option("-c, --config <path>","Config file path","kindlm.yaml").option("--port <port>","OTLP HTTP port","4318").option("--command <cmd>","Command to spawn (traces are collected while it runs)").option("--timeout <ms>","Timeout in ms to wait for traces","30000").option("--reporter <type>","Report format: pretty, json, junit","pretty").action(async e=>{let r=In();try{let s=D2(process.cwd(),e.config),n=L2(s);try{q2(s).size>1048576&&(console.error(gt.red("Config file exceeds 1MB limit")),process.exit(1))}catch{console.error(gt.red(`Config file not found: ${s}`)),process.exit(1)}let i;try{i=j2(s,"utf-8")}catch{console.error(gt.red(`Config file not found: ${s}`)),process.exit(1)}let a=Vr(),o=Ur(i,{configDir:n,fileReader:a});o.success||(console.error(gt.red(`Config validation failed: ${o.error.message}`)),process.exit(1));let c=o.data,l=c.trace??{port:parseInt(e.port,10),timeoutMs:parseInt(e.timeout,10),spanMapping:{outputTextAttr:"gen_ai.completion.0.content",modelAttr:"gen_ai.response.model",systemAttr:"gen_ai.system",inputTokensAttr:"gen_ai.usage.input_tokens",outputTokensAttr:"gen_ai.usage.output_tokens"}},u=parseInt(e.port,10)||l.port,d=parseInt(e.timeout,10)||l.timeoutMs,f=p$(u);await f.start(),r.start(`Listening for OTLP traces on port ${u}...`),e.command&&F2("sh",["-c",e.command],{cwd:n,env:{...process.env,OTEL_EXPORTER_OTLP_ENDPOINT:`http://localhost:${u}`,OTEL_EXPORTER_OTLP_PROTOCOL:"http/json"},stdio:"inherit"}).on("error",ue=>{r.fail(`Command failed: ${ue.message}`)});let p=await f.waitForSpans({timeoutMs:d});await f.stop(),p.length===0&&(r.fail("No traces received"),process.exit(1)),r.succeed(`Received ${p.length} spans`);let y=Uw(p,l.spanFilter),m=Vw(y,l.spanMapping),g=Vc(),h=new Map,v=c.providers;for(let[D,ue]of Object.entries(v)){if(!ue)continue;let tt="";if(ue.apiKeyEnv){let zt=process.env[ue.apiKeyEnv];zt&&(tt=zt.trim())}if(!(!tt&&D!=="ollama"))try{let zt=Fc(D,g);await zt.initialize({apiKey:tt,baseUrl:ue.baseUrl,organization:ue.organization,timeoutMs:c.defaults.timeoutMs,maxRetries:2}),h.set(D,zt)}catch{}}let b=c.defaults.judgeModel??c.models[0]?.id,$=c.models.find(D=>D.id===b),w=$?h.get($.provider):void 0,k=Kw(m,{configDir:n,judgeAdapter:w,judgeModel:$?.model}),N=[];for(let D of c.tests){if(D.skip)continue;let ue=Lc(D.expect),tt=[];for(let zt of ue){let Bt=await zt.evaluate(k);tt.push(...Bt)}N.push({testName:D.name,assertions:tt})}let T=N.reduce((D,ue)=>D+ue.assertions.length,0),se=N.reduce((D,ue)=>D+ue.assertions.filter(tt=>tt.passed).length,0),ve=T-se;console.log(),console.log(gt.bold("Trace Test Results")),console.log(gt.dim("\u2500".repeat(50)));for(let{testName:D,assertions:ue}of N){let zt=ue.every(Bt=>Bt.passed)?gt.green("\u2713"):gt.red("\u2717");console.log(`${zt} ${D}`);for(let Bt of ue){let g$=Bt.passed?gt.green(" \u2713"):gt.red(" \u2717"),y$=Bt.failureMessage?`${Bt.label}: ${Bt.failureMessage}`:Bt.label;console.log(`${g$} ${y$}`)}}console.log(),console.log(`${gt.bold("Total:")} ${se} passed, ${ve} failed out of ${T} assertions`);let ke=Uc(c.gates,[]);if(!ke.passed)for(let D of ke.gates.filter(ue=>!ue.passed))console.log(gt.red(`Gate failed: ${D.message}`));process.exit(ve>0?1:0)}catch(s){r.fail(`Trace command failed: ${s instanceof Error?s.message:String(s)}`),process.exit(1)}})}function h$(){let t=new U2;return t.name("kindlm").description("AI agent behavioral regression testing").version("0.3.0"),mm(t),zw(t),e$(t),s$(t),c$(t),f$(t),m$(t),t}process.on("unhandledRejection",t=>{let e=t instanceof Error?t.message:String(t);process.stderr.write(`
|
|
243
|
+
Unhandled error: ${e}
|
|
244
|
+
`),process.exit(1)});process.on("uncaughtException",t=>{process.stderr.write(`
|
|
245
|
+
Fatal error: ${t.message}
|
|
246
|
+
`),process.exit(1)});h$().parse(process.argv);
|
|
57
247
|
//# sourceMappingURL=kindlm.js.map
|