emceepee 0.2.1 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,56 +0,0 @@
1
- #!/usr/bin/env node
2
- import{createRequire as zO}from"node:module";var JO=Object.create;var{getPrototypeOf:GO,defineProperty:SY,getOwnPropertyNames:HO}=Object;var BO=Object.prototype.hasOwnProperty;var IY=(Q,X,Y)=>{Y=Q!=null?JO(GO(Q)):{};let W=X||!Q||!Q.__esModule?SY(Y,"default",{value:Q,enumerable:!0}):Y;for(let $ of HO(Q))if(!BO.call(W,$))SY(W,$,{get:()=>Q[$],enumerable:!0});return W};var w=(Q,X)=>()=>(X||Q((X={exports:{}}).exports,X),X.exports);var m8=(Q,X)=>{for(var Y in X)SY(Q,Y,{get:X[Y],enumerable:!0,configurable:!0,set:(W)=>X[Y]=()=>W})};var lJ=zO(import.meta.url);var r4=w((s3)=>{Object.defineProperty(s3,"__esModule",{value:!0});s3.regexpCode=s3.getEsmExportName=s3.getProperty=s3.safeStringify=s3.stringify=s3.strConcat=s3.addCodeArg=s3.str=s3._=s3.nil=s3._Code=s3.Name=s3.IDENTIFIER=s3._CodeOrName=void 0;class pQ{}s3._CodeOrName=pQ;s3.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class g9 extends pQ{constructor(Q){super();if(!s3.IDENTIFIER.test(Q))throw Error("CodeGen: name must be a valid identifier");this.str=Q}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}s3.Name=g9;class Z1 extends pQ{constructor(Q){super();this._items=typeof Q==="string"?[Q]:Q}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let Q=this._items[0];return Q===""||Q==='""'}get str(){var Q;return(Q=this._str)!==null&&Q!==void 0?Q:this._str=this._items.reduce((X,Y)=>`${X}${Y}`,"")}get names(){var Q;return(Q=this._names)!==null&&Q!==void 0?Q:this._names=this._items.reduce((X,Y)=>{if(Y instanceof g9)X[Y.str]=(X[Y.str]||0)+1;return X},{})}}s3._Code=Z1;s3.nil=new Z1("");function t3(Q,...X){let Y=[Q[0]],W=0;while(W<X.length)b5(Y,X[W]),Y.push(Q[++W]);return new Z1(Y)}s3._=t3;var N5=new Z1("+");function a3(Q,...X){let Y=[o4(Q[0])],W=0;while(W<X.length)Y.push(N5),b5(Y,X[W]),Y.push(N5,o4(Q[++W]));return iM(Y),new Z1(Y)}s3.str=a3;function b5(Q,X){if(X instanceof Z1)Q.push(...X._items);else if(X instanceof g9)Q.push(X);else Q.push(rM(X))}s3.addCodeArg=b5;function iM(Q){let X=1;while(X<Q.length-1){if(Q[X]===N5){let Y=nM(Q[X-1],Q[X+1]);if(Y!==void 0){Q.splice(X-1,3,Y);continue}Q[X++]="+"}X++}}function nM(Q,X){if(X==='""')return Q;if(Q==='""')return X;if(typeof Q=="string"){if(X instanceof g9||Q[Q.length-1]!=='"')return;if(typeof X!="string")return`${Q.slice(0,-1)}${X}"`;if(X[0]==='"')return Q.slice(0,-1)+X.slice(1);return}if(typeof X=="string"&&X[0]==='"'&&!(Q instanceof g9))return`"${Q}${X.slice(1)}`;return}function oM(Q,X){return X.emptyStr()?Q:Q.emptyStr()?X:a3`${Q}${X}`}s3.strConcat=oM;function rM(Q){return typeof Q=="number"||typeof Q=="boolean"||Q===null?Q:o4(Array.isArray(Q)?Q.join(","):Q)}function tM(Q){return new Z1(o4(Q))}s3.stringify=tM;function o4(Q){return JSON.stringify(Q).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}s3.safeStringify=o4;function aM(Q){return typeof Q=="string"&&s3.IDENTIFIER.test(Q)?new Z1(`.${Q}`):t3`[${Q}]`}s3.getProperty=aM;function sM(Q){if(typeof Q=="string"&&s3.IDENTIFIER.test(Q))return new Z1(`${Q}`);throw Error(`CodeGen: invalid export name: ${Q}, use explicit $id name mapping`)}s3.getEsmExportName=sM;function eM(Q){return new Z1(Q.toString())}s3.regexpCode=eM});var E5=w((YB)=>{Object.defineProperty(YB,"__esModule",{value:!0});YB.ValueScope=YB.ValueScopeName=YB.Scope=YB.varKinds=YB.UsedValueState=void 0;var Q1=r4();class QB extends Error{constructor(Q){super(`CodeGen: "code" for ${Q} not defined`);this.value=Q.value}}var iQ;(function(Q){Q[Q.Started=0]="Started",Q[Q.Completed=1]="Completed"})(iQ||(YB.UsedValueState=iQ={}));YB.varKinds={const:new Q1.Name("const"),let:new Q1.Name("let"),var:new Q1.Name("var")};class Z5{constructor({prefixes:Q,parent:X}={}){this._names={},this._prefixes=Q,this._parent=X}toName(Q){return Q instanceof Q1.Name?Q:this.name(Q)}name(Q){return new Q1.Name(this._newName(Q))}_newName(Q){let X=this._names[Q]||this._nameGroup(Q);return`${Q}${X.index++}`}_nameGroup(Q){var X,Y;if(((Y=(X=this._parent)===null||X===void 0?void 0:X._prefixes)===null||Y===void 0?void 0:Y.has(Q))||this._prefixes&&!this._prefixes.has(Q))throw Error(`CodeGen: prefix "${Q}" is not allowed in this scope`);return this._names[Q]={prefix:Q,index:0}}}YB.Scope=Z5;class R5 extends Q1.Name{constructor(Q,X){super(X);this.prefix=Q}setValue(Q,{property:X,itemIndex:Y}){this.value=Q,this.scopePath=Q1._`.${new Q1.Name(X)}[${Y}]`}}YB.ValueScopeName=R5;var VN=Q1._`\n`;class XB extends Z5{constructor(Q){super(Q);this._values={},this._scope=Q.scope,this.opts={...Q,_n:Q.lines?VN:Q1.nil}}get(){return this._scope}name(Q){return new R5(Q,this._newName(Q))}value(Q,X){var Y;if(X.ref===void 0)throw Error("CodeGen: ref must be passed in value");let W=this.toName(Q),{prefix:$}=W,J=(Y=X.key)!==null&&Y!==void 0?Y:X.ref,G=this._values[$];if(G){let z=G.get(J);if(z)return z}else G=this._values[$]=new Map;G.set(J,W);let H=this._scope[$]||(this._scope[$]=[]),B=H.length;return H[B]=X.ref,W.setValue(X,{property:$,itemIndex:B}),W}getValue(Q,X){let Y=this._values[Q];if(!Y)return;return Y.get(X)}scopeRefs(Q,X=this._values){return this._reduceValues(X,(Y)=>{if(Y.scopePath===void 0)throw Error(`CodeGen: name "${Y}" has no value`);return Q1._`${Q}${Y.scopePath}`})}scopeCode(Q=this._values,X,Y){return this._reduceValues(Q,(W)=>{if(W.value===void 0)throw Error(`CodeGen: name "${W}" has no value`);return W.value.code},X,Y)}_reduceValues(Q,X,Y={},W){let $=Q1.nil;for(let J in Q){let G=Q[J];if(!G)continue;let H=Y[J]=Y[J]||new Map;G.forEach((B)=>{if(H.has(B))return;H.set(B,iQ.Started);let z=X(B);if(z){let K=this.opts.es5?YB.varKinds.var:YB.varKinds.const;$=Q1._`${$}${K} ${B} = ${z};${this.opts._n}`}else if(z=W===null||W===void 0?void 0:W(B))$=Q1._`${$}${z}${this.opts._n}`;else throw new QB(B);H.set(B,iQ.Completed)})}return $}}YB.ValueScope=XB});var o=w((X1)=>{Object.defineProperty(X1,"__esModule",{value:!0});X1.or=X1.and=X1.not=X1.CodeGen=X1.operators=X1.varKinds=X1.ValueScopeName=X1.ValueScope=X1.Scope=X1.Name=X1.regexpCode=X1.stringify=X1.getProperty=X1.nil=X1.strConcat=X1.str=X1._=void 0;var s=r4(),R1=E5(),M6=r4();Object.defineProperty(X1,"_",{enumerable:!0,get:function(){return M6._}});Object.defineProperty(X1,"str",{enumerable:!0,get:function(){return M6.str}});Object.defineProperty(X1,"strConcat",{enumerable:!0,get:function(){return M6.strConcat}});Object.defineProperty(X1,"nil",{enumerable:!0,get:function(){return M6.nil}});Object.defineProperty(X1,"getProperty",{enumerable:!0,get:function(){return M6.getProperty}});Object.defineProperty(X1,"stringify",{enumerable:!0,get:function(){return M6.stringify}});Object.defineProperty(X1,"regexpCode",{enumerable:!0,get:function(){return M6.regexpCode}});Object.defineProperty(X1,"Name",{enumerable:!0,get:function(){return M6.Name}});var sQ=E5();Object.defineProperty(X1,"Scope",{enumerable:!0,get:function(){return sQ.Scope}});Object.defineProperty(X1,"ValueScope",{enumerable:!0,get:function(){return sQ.ValueScope}});Object.defineProperty(X1,"ValueScopeName",{enumerable:!0,get:function(){return sQ.ValueScopeName}});Object.defineProperty(X1,"varKinds",{enumerable:!0,get:function(){return sQ.varKinds}});X1.operators={GT:new s._Code(">"),GTE:new s._Code(">="),LT:new s._Code("<"),LTE:new s._Code("<="),EQ:new s._Code("==="),NEQ:new s._Code("!=="),NOT:new s._Code("!"),OR:new s._Code("||"),AND:new s._Code("&&"),ADD:new s._Code("+")};class N6{optimizeNodes(){return this}optimizeNames(Q,X){return this}}class $B extends N6{constructor(Q,X,Y){super();this.varKind=Q,this.name=X,this.rhs=Y}render({es5:Q,_n:X}){let Y=Q?R1.varKinds.var:this.varKind,W=this.rhs===void 0?"":` = ${this.rhs}`;return`${Y} ${this.name}${W};`+X}optimizeNames(Q,X){if(!Q[this.name.str])return;if(this.rhs)this.rhs=h9(this.rhs,Q,X);return this}get names(){return this.rhs instanceof s._CodeOrName?this.rhs.names:{}}}class T5 extends N6{constructor(Q,X,Y){super();this.lhs=Q,this.rhs=X,this.sideEffects=Y}render({_n:Q}){return`${this.lhs} = ${this.rhs};`+Q}optimizeNames(Q,X){if(this.lhs instanceof s.Name&&!Q[this.lhs.str]&&!this.sideEffects)return;return this.rhs=h9(this.rhs,Q,X),this}get names(){let Q=this.lhs instanceof s.Name?{}:{...this.lhs.names};return aQ(Q,this.rhs)}}class JB extends T5{constructor(Q,X,Y,W){super(Q,Y,W);this.op=X}render({_n:Q}){return`${this.lhs} ${this.op}= ${this.rhs};`+Q}}class GB extends N6{constructor(Q){super();this.label=Q,this.names={}}render({_n:Q}){return`${this.label}:`+Q}}class HB extends N6{constructor(Q){super();this.label=Q,this.names={}}render({_n:Q}){return`break${this.label?` ${this.label}`:""};`+Q}}class BB extends N6{constructor(Q){super();this.error=Q}render({_n:Q}){return`throw ${this.error};`+Q}get names(){return this.error.names}}class zB extends N6{constructor(Q){super();this.code=Q}render({_n:Q}){return`${this.code};`+Q}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(Q,X){return this.code=h9(this.code,Q,X),this}get names(){return this.code instanceof s._CodeOrName?this.code.names:{}}}class eQ extends N6{constructor(Q=[]){super();this.nodes=Q}render(Q){return this.nodes.reduce((X,Y)=>X+Y.render(Q),"")}optimizeNodes(){let{nodes:Q}=this,X=Q.length;while(X--){let Y=Q[X].optimizeNodes();if(Array.isArray(Y))Q.splice(X,1,...Y);else if(Y)Q[X]=Y;else Q.splice(X,1)}return Q.length>0?this:void 0}optimizeNames(Q,X){let{nodes:Y}=this,W=Y.length;while(W--){let $=Y[W];if($.optimizeNames(Q,X))continue;LN(Q,$.names),Y.splice(W,1)}return Y.length>0?this:void 0}get names(){return this.nodes.reduce((Q,X)=>a6(Q,X.names),{})}}class b6 extends eQ{render(Q){return"{"+Q._n+super.render(Q)+"}"+Q._n}}class KB extends eQ{}class t4 extends b6{}t4.kind="else";class e1 extends b6{constructor(Q,X){super(X);this.condition=Q}render(Q){let X=`if(${this.condition})`+super.render(Q);if(this.else)X+="else "+this.else.render(Q);return X}optimizeNodes(){super.optimizeNodes();let Q=this.condition;if(Q===!0)return this.nodes;let X=this.else;if(X){let Y=X.optimizeNodes();X=this.else=Array.isArray(Y)?new t4(Y):Y}if(X){if(Q===!1)return X instanceof e1?X:X.nodes;if(this.nodes.length)return this;return new e1(DB(Q),X instanceof e1?[X]:X.nodes)}if(Q===!1||!this.nodes.length)return;return this}optimizeNames(Q,X){var Y;if(this.else=(Y=this.else)===null||Y===void 0?void 0:Y.optimizeNames(Q,X),!(super.optimizeNames(Q,X)||this.else))return;return this.condition=h9(this.condition,Q,X),this}get names(){let Q=super.names;if(aQ(Q,this.condition),this.else)a6(Q,this.else.names);return Q}}e1.kind="if";class f9 extends b6{}f9.kind="for";class FB extends f9{constructor(Q){super();this.iteration=Q}render(Q){return`for(${this.iteration})`+super.render(Q)}optimizeNames(Q,X){if(!super.optimizeNames(Q,X))return;return this.iteration=h9(this.iteration,Q,X),this}get names(){return a6(super.names,this.iteration.names)}}class VB extends f9{constructor(Q,X,Y,W){super();this.varKind=Q,this.name=X,this.from=Y,this.to=W}render(Q){let X=Q.es5?R1.varKinds.var:this.varKind,{name:Y,from:W,to:$}=this;return`for(${X} ${Y}=${W}; ${Y}<${$}; ${Y}++)`+super.render(Q)}get names(){let Q=aQ(super.names,this.from);return aQ(Q,this.to)}}class S5 extends f9{constructor(Q,X,Y,W){super();this.loop=Q,this.varKind=X,this.name=Y,this.iterable=W}render(Q){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(Q)}optimizeNames(Q,X){if(!super.optimizeNames(Q,X))return;return this.iterable=h9(this.iterable,Q,X),this}get names(){return a6(super.names,this.iterable.names)}}class nQ extends b6{constructor(Q,X,Y){super();this.name=Q,this.args=X,this.async=Y}render(Q){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(Q)}}nQ.kind="func";class oQ extends eQ{render(Q){return"return "+super.render(Q)}}oQ.kind="return";class qB extends b6{render(Q){let X="try"+super.render(Q);if(this.catch)X+=this.catch.render(Q);if(this.finally)X+=this.finally.render(Q);return X}optimizeNodes(){var Q,X;return super.optimizeNodes(),(Q=this.catch)===null||Q===void 0||Q.optimizeNodes(),(X=this.finally)===null||X===void 0||X.optimizeNodes(),this}optimizeNames(Q,X){var Y,W;return super.optimizeNames(Q,X),(Y=this.catch)===null||Y===void 0||Y.optimizeNames(Q,X),(W=this.finally)===null||W===void 0||W.optimizeNames(Q,X),this}get names(){let Q=super.names;if(this.catch)a6(Q,this.catch.names);if(this.finally)a6(Q,this.finally.names);return Q}}class rQ extends b6{constructor(Q){super();this.error=Q}render(Q){return`catch(${this.error})`+super.render(Q)}}rQ.kind="catch";class tQ extends b6{render(Q){return"finally"+super.render(Q)}}tQ.kind="finally";class AB{constructor(Q,X={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...X,_n:X.lines?`
3
- `:""},this._extScope=Q,this._scope=new R1.Scope({parent:Q}),this._nodes=[new KB]}toString(){return this._root.render(this.opts)}name(Q){return this._scope.name(Q)}scopeName(Q){return this._extScope.name(Q)}scopeValue(Q,X){let Y=this._extScope.value(Q,X);return(this._values[Y.prefix]||(this._values[Y.prefix]=new Set)).add(Y),Y}getScopeValue(Q,X){return this._extScope.getValue(Q,X)}scopeRefs(Q){return this._extScope.scopeRefs(Q,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(Q,X,Y,W){let $=this._scope.toName(X);if(Y!==void 0&&W)this._constants[$.str]=Y;return this._leafNode(new $B(Q,$,Y)),$}const(Q,X,Y){return this._def(R1.varKinds.const,Q,X,Y)}let(Q,X,Y){return this._def(R1.varKinds.let,Q,X,Y)}var(Q,X,Y){return this._def(R1.varKinds.var,Q,X,Y)}assign(Q,X,Y){return this._leafNode(new T5(Q,X,Y))}add(Q,X){return this._leafNode(new JB(Q,X1.operators.ADD,X))}code(Q){if(typeof Q=="function")Q();else if(Q!==s.nil)this._leafNode(new zB(Q));return this}object(...Q){let X=["{"];for(let[Y,W]of Q){if(X.length>1)X.push(",");if(X.push(Y),Y!==W||this.opts.es5)X.push(":"),(0,s.addCodeArg)(X,W)}return X.push("}"),new s._Code(X)}if(Q,X,Y){if(this._blockNode(new e1(Q)),X&&Y)this.code(X).else().code(Y).endIf();else if(X)this.code(X).endIf();else if(Y)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(Q){return this._elseNode(new e1(Q))}else(){return this._elseNode(new t4)}endIf(){return this._endBlockNode(e1,t4)}_for(Q,X){if(this._blockNode(Q),X)this.code(X).endFor();return this}for(Q,X){return this._for(new FB(Q),X)}forRange(Q,X,Y,W,$=this.opts.es5?R1.varKinds.var:R1.varKinds.let){let J=this._scope.toName(Q);return this._for(new VB($,J,X,Y),()=>W(J))}forOf(Q,X,Y,W=R1.varKinds.const){let $=this._scope.toName(Q);if(this.opts.es5){let J=X instanceof s.Name?X:this.var("_arr",X);return this.forRange("_i",0,s._`${J}.length`,(G)=>{this.var($,s._`${J}[${G}]`),Y($)})}return this._for(new S5("of",W,$,X),()=>Y($))}forIn(Q,X,Y,W=this.opts.es5?R1.varKinds.var:R1.varKinds.const){if(this.opts.ownProperties)return this.forOf(Q,s._`Object.keys(${X})`,Y);let $=this._scope.toName(Q);return this._for(new S5("in",W,$,X),()=>Y($))}endFor(){return this._endBlockNode(f9)}label(Q){return this._leafNode(new GB(Q))}break(Q){return this._leafNode(new HB(Q))}return(Q){let X=new oQ;if(this._blockNode(X),this.code(Q),X.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(oQ)}try(Q,X,Y){if(!X&&!Y)throw Error('CodeGen: "try" without "catch" and "finally"');let W=new qB;if(this._blockNode(W),this.code(Q),X){let $=this.name("e");this._currNode=W.catch=new rQ($),X($)}if(Y)this._currNode=W.finally=new tQ,this.code(Y);return this._endBlockNode(rQ,tQ)}throw(Q){return this._leafNode(new BB(Q))}block(Q,X){if(this._blockStarts.push(this._nodes.length),Q)this.code(Q).endBlock(X);return this}endBlock(Q){let X=this._blockStarts.pop();if(X===void 0)throw Error("CodeGen: not in self-balancing block");let Y=this._nodes.length-X;if(Y<0||Q!==void 0&&Y!==Q)throw Error(`CodeGen: wrong number of nodes: ${Y} vs ${Q} expected`);return this._nodes.length=X,this}func(Q,X=s.nil,Y,W){if(this._blockNode(new nQ(Q,X,Y)),W)this.code(W).endFunc();return this}endFunc(){return this._endBlockNode(nQ)}optimize(Q=1){while(Q-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(Q){return this._currNode.nodes.push(Q),this}_blockNode(Q){this._currNode.nodes.push(Q),this._nodes.push(Q)}_endBlockNode(Q,X){let Y=this._currNode;if(Y instanceof Q||X&&Y instanceof X)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${X?`${Q.kind}/${X.kind}`:Q.kind}"`)}_elseNode(Q){let X=this._currNode;if(!(X instanceof e1))throw Error('CodeGen: "else" without "if"');return this._currNode=X.else=Q,this}get _root(){return this._nodes[0]}get _currNode(){let Q=this._nodes;return Q[Q.length-1]}set _currNode(Q){let X=this._nodes;X[X.length-1]=Q}}X1.CodeGen=AB;function a6(Q,X){for(let Y in X)Q[Y]=(Q[Y]||0)+(X[Y]||0);return Q}function aQ(Q,X){return X instanceof s._CodeOrName?a6(Q,X.names):Q}function h9(Q,X,Y){if(Q instanceof s.Name)return W(Q);if(!$(Q))return Q;return new s._Code(Q._items.reduce((J,G)=>{if(G instanceof s.Name)G=W(G);if(G instanceof s._Code)J.push(...G._items);else J.push(G);return J},[]));function W(J){let G=Y[J.str];if(G===void 0||X[J.str]!==1)return J;return delete X[J.str],G}function $(J){return J instanceof s._Code&&J._items.some((G)=>G instanceof s.Name&&X[G.str]===1&&Y[G.str]!==void 0)}}function LN(Q,X){for(let Y in X)Q[Y]=(Q[Y]||0)-(X[Y]||0)}function DB(Q){return typeof Q=="boolean"||typeof Q=="number"||Q===null?!Q:s._`!${I5(Q)}`}X1.not=DB;var ON=LB(X1.operators.AND);function UN(...Q){return Q.reduce(ON)}X1.and=UN;var jN=LB(X1.operators.OR);function wN(...Q){return Q.reduce(jN)}X1.or=wN;function LB(Q){return(X,Y)=>X===s.nil?Y:Y===s.nil?X:s._`${I5(X)} ${Q} ${I5(Y)}`}function I5(Q){return Q instanceof s.Name?Q:s._`(${Q})`}});var Y0=w((ZB)=>{Object.defineProperty(ZB,"__esModule",{value:!0});ZB.checkStrictMode=ZB.getErrorPath=ZB.Type=ZB.useFunc=ZB.setEvaluated=ZB.evaluatedPropsToName=ZB.mergeEvaluated=ZB.eachItem=ZB.unescapeJsonPointer=ZB.escapeJsonPointer=ZB.escapeFragment=ZB.unescapeFragment=ZB.schemaRefOrVal=ZB.schemaHasRulesButRef=ZB.schemaHasRules=ZB.checkUnknownRules=ZB.alwaysValidSchema=ZB.toHash=void 0;var B0=o(),PN=r4();function ZN(Q){let X={};for(let Y of Q)X[Y]=!0;return X}ZB.toHash=ZN;function RN(Q,X){if(typeof X=="boolean")return X;if(Object.keys(X).length===0)return!0;return wB(Q,X),!MB(X,Q.self.RULES.all)}ZB.alwaysValidSchema=RN;function wB(Q,X=Q.schema){let{opts:Y,self:W}=Q;if(!Y.strictSchema)return;if(typeof X==="boolean")return;let $=W.RULES.keywords;for(let J in X)if(!$[J])PB(Q,`unknown keyword: "${J}"`)}ZB.checkUnknownRules=wB;function MB(Q,X){if(typeof Q=="boolean")return!Q;for(let Y in Q)if(X[Y])return!0;return!1}ZB.schemaHasRules=MB;function EN(Q,X){if(typeof Q=="boolean")return!Q;for(let Y in Q)if(Y!=="$ref"&&X.all[Y])return!0;return!1}ZB.schemaHasRulesButRef=EN;function SN({topSchemaRef:Q,schemaPath:X},Y,W,$){if(!$){if(typeof Y=="number"||typeof Y=="boolean")return Y;if(typeof Y=="string")return B0._`${Y}`}return B0._`${Q}${X}${(0,B0.getProperty)(W)}`}ZB.schemaRefOrVal=SN;function IN(Q){return NB(decodeURIComponent(Q))}ZB.unescapeFragment=IN;function TN(Q){return encodeURIComponent(k5(Q))}ZB.escapeFragment=TN;function k5(Q){if(typeof Q=="number")return`${Q}`;return Q.replace(/~/g,"~0").replace(/\//g,"~1")}ZB.escapeJsonPointer=k5;function NB(Q){return Q.replace(/~1/g,"/").replace(/~0/g,"~")}ZB.unescapeJsonPointer=NB;function CN(Q,X){if(Array.isArray(Q))for(let Y of Q)X(Y);else X(Q)}ZB.eachItem=CN;function UB({mergeNames:Q,mergeToName:X,mergeValues:Y,resultToName:W}){return($,J,G,H)=>{let B=G===void 0?J:G instanceof B0.Name?(J instanceof B0.Name?Q($,J,G):X($,J,G),G):J instanceof B0.Name?(X($,G,J),J):Y(J,G);return H===B0.Name&&!(B instanceof B0.Name)?W($,B):B}}ZB.mergeEvaluated={props:UB({mergeNames:(Q,X,Y)=>Q.if(B0._`${Y} !== true && ${X} !== undefined`,()=>{Q.if(B0._`${X} === true`,()=>Q.assign(Y,!0),()=>Q.assign(Y,B0._`${Y} || {}`).code(B0._`Object.assign(${Y}, ${X})`))}),mergeToName:(Q,X,Y)=>Q.if(B0._`${Y} !== true`,()=>{if(X===!0)Q.assign(Y,!0);else Q.assign(Y,B0._`${Y} || {}`),v5(Q,Y,X)}),mergeValues:(Q,X)=>Q===!0?!0:{...Q,...X},resultToName:bB}),items:UB({mergeNames:(Q,X,Y)=>Q.if(B0._`${Y} !== true && ${X} !== undefined`,()=>Q.assign(Y,B0._`${X} === true ? true : ${Y} > ${X} ? ${Y} : ${X}`)),mergeToName:(Q,X,Y)=>Q.if(B0._`${Y} !== true`,()=>Q.assign(Y,X===!0?!0:B0._`${Y} > ${X} ? ${Y} : ${X}`)),mergeValues:(Q,X)=>Q===!0?!0:Math.max(Q,X),resultToName:(Q,X)=>Q.var("items",X)})};function bB(Q,X){if(X===!0)return Q.var("props",!0);let Y=Q.var("props",B0._`{}`);if(X!==void 0)v5(Q,Y,X);return Y}ZB.evaluatedPropsToName=bB;function v5(Q,X,Y){Object.keys(Y).forEach((W)=>Q.assign(B0._`${X}${(0,B0.getProperty)(W)}`,!0))}ZB.setEvaluated=v5;var jB={};function kN(Q,X){return Q.scopeValue("func",{ref:X,code:jB[X.code]||(jB[X.code]=new PN._Code(X.code))})}ZB.useFunc=kN;var C5;(function(Q){Q[Q.Num=0]="Num",Q[Q.Str=1]="Str"})(C5||(ZB.Type=C5={}));function vN(Q,X,Y){if(Q instanceof B0.Name){let W=X===C5.Num;return Y?W?B0._`"[" + ${Q} + "]"`:B0._`"['" + ${Q} + "']"`:W?B0._`"/" + ${Q}`:B0._`"/" + ${Q}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return Y?(0,B0.getProperty)(Q).toString():"/"+k5(Q)}ZB.getErrorPath=vN;function PB(Q,X,Y=Q.opts.strictSchema){if(!Y)return;if(X=`strict mode: ${X}`,Y===!0)throw Error(X);Q.self.logger.warn(X)}ZB.checkStrictMode=PB});var Q6=w((EB)=>{Object.defineProperty(EB,"__esModule",{value:!0});var h0=o(),aN={data:new h0.Name("data"),valCxt:new h0.Name("valCxt"),instancePath:new h0.Name("instancePath"),parentData:new h0.Name("parentData"),parentDataProperty:new h0.Name("parentDataProperty"),rootData:new h0.Name("rootData"),dynamicAnchors:new h0.Name("dynamicAnchors"),vErrors:new h0.Name("vErrors"),errors:new h0.Name("errors"),this:new h0.Name("this"),self:new h0.Name("self"),scope:new h0.Name("scope"),json:new h0.Name("json"),jsonPos:new h0.Name("jsonPos"),jsonLen:new h0.Name("jsonLen"),jsonPart:new h0.Name("jsonPart")};EB.default=aN});var a4=w((CB)=>{Object.defineProperty(CB,"__esModule",{value:!0});CB.extendErrors=CB.resetErrorsCount=CB.reportExtraError=CB.reportError=CB.keyword$DataError=CB.keywordError=void 0;var Q0=o(),XX=Y0(),p0=Q6();CB.keywordError={message:({keyword:Q})=>Q0.str`must pass "${Q}" keyword validation`};CB.keyword$DataError={message:({keyword:Q,schemaType:X})=>X?Q0.str`"${Q}" keyword must be ${X} ($data)`:Q0.str`"${Q}" keyword is invalid ($data)`};function eN(Q,X=CB.keywordError,Y,W){let{it:$}=Q,{gen:J,compositeRule:G,allErrors:H}=$,B=TB(Q,X,Y);if(W!==null&&W!==void 0?W:G||H)SB(J,B);else IB($,Q0._`[${B}]`)}CB.reportError=eN;function Qb(Q,X=CB.keywordError,Y){let{it:W}=Q,{gen:$,compositeRule:J,allErrors:G}=W,H=TB(Q,X,Y);if(SB($,H),!(J||G))IB(W,p0.default.vErrors)}CB.reportExtraError=Qb;function Xb(Q,X){Q.assign(p0.default.errors,X),Q.if(Q0._`${p0.default.vErrors} !== null`,()=>Q.if(X,()=>Q.assign(Q0._`${p0.default.vErrors}.length`,X),()=>Q.assign(p0.default.vErrors,null)))}CB.resetErrorsCount=Xb;function Yb({gen:Q,keyword:X,schemaValue:Y,data:W,errsCount:$,it:J}){if($===void 0)throw Error("ajv implementation error");let G=Q.name("err");Q.forRange("i",$,p0.default.errors,(H)=>{if(Q.const(G,Q0._`${p0.default.vErrors}[${H}]`),Q.if(Q0._`${G}.instancePath === undefined`,()=>Q.assign(Q0._`${G}.instancePath`,(0,Q0.strConcat)(p0.default.instancePath,J.errorPath))),Q.assign(Q0._`${G}.schemaPath`,Q0.str`${J.errSchemaPath}/${X}`),J.opts.verbose)Q.assign(Q0._`${G}.schema`,Y),Q.assign(Q0._`${G}.data`,W)})}CB.extendErrors=Yb;function SB(Q,X){let Y=Q.const("err",X);Q.if(Q0._`${p0.default.vErrors} === null`,()=>Q.assign(p0.default.vErrors,Q0._`[${Y}]`),Q0._`${p0.default.vErrors}.push(${Y})`),Q.code(Q0._`${p0.default.errors}++`)}function IB(Q,X){let{gen:Y,validateName:W,schemaEnv:$}=Q;if($.$async)Y.throw(Q0._`new ${Q.ValidationError}(${X})`);else Y.assign(Q0._`${W}.errors`,X),Y.return(!1)}var s6={keyword:new Q0.Name("keyword"),schemaPath:new Q0.Name("schemaPath"),params:new Q0.Name("params"),propertyName:new Q0.Name("propertyName"),message:new Q0.Name("message"),schema:new Q0.Name("schema"),parentSchema:new Q0.Name("parentSchema")};function TB(Q,X,Y){let{createErrors:W}=Q.it;if(W===!1)return Q0._`{}`;return Wb(Q,X,Y)}function Wb(Q,X,Y={}){let{gen:W,it:$}=Q,J=[$b($,Y),Jb(Q,Y)];return Gb(Q,X,J),W.object(...J)}function $b({errorPath:Q},{instancePath:X}){let Y=X?Q0.str`${Q}${(0,XX.getErrorPath)(X,XX.Type.Str)}`:Q;return[p0.default.instancePath,(0,Q0.strConcat)(p0.default.instancePath,Y)]}function Jb({keyword:Q,it:{errSchemaPath:X}},{schemaPath:Y,parentSchema:W}){let $=W?X:Q0.str`${X}/${Q}`;if(Y)$=Q0.str`${$}${(0,XX.getErrorPath)(Y,XX.Type.Str)}`;return[s6.schemaPath,$]}function Gb(Q,{params:X,message:Y},W){let{keyword:$,data:J,schemaValue:G,it:H}=Q,{opts:B,propertyName:z,topSchemaRef:K,schemaPath:F}=H;if(W.push([s6.keyword,$],[s6.params,typeof X=="function"?X(Q):X||Q0._`{}`]),B.messages)W.push([s6.message,typeof Y=="function"?Y(Q):Y]);if(B.verbose)W.push([s6.schema,G],[s6.parentSchema,Q0._`${K}${F}`],[p0.default.data,J]);if(z)W.push([s6.propertyName,z])}});var yB=w((_B)=>{Object.defineProperty(_B,"__esModule",{value:!0});_B.boolOrEmptySchema=_B.topBoolOrEmptySchema=void 0;var Fb=a4(),Vb=o(),qb=Q6(),Ab={message:"boolean schema is false"};function Db(Q){let{gen:X,schema:Y,validateName:W}=Q;if(Y===!1)vB(Q,!1);else if(typeof Y=="object"&&Y.$async===!0)X.return(qb.default.data);else X.assign(Vb._`${W}.errors`,null),X.return(!0)}_B.topBoolOrEmptySchema=Db;function Lb(Q,X){let{gen:Y,schema:W}=Q;if(W===!1)Y.var(X,!1),vB(Q);else Y.var(X,!0)}_B.boolOrEmptySchema=Lb;function vB(Q,X){let{gen:Y,data:W}=Q,$={gen:Y,keyword:"false schema",data:W,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:Q};(0,Fb.reportError)($,Ab,void 0,X)}});var x5=w((gB)=>{Object.defineProperty(gB,"__esModule",{value:!0});gB.getRules=gB.isJSONType=void 0;var Ub=["string","number","integer","boolean","null","object","array"],jb=new Set(Ub);function wb(Q){return typeof Q=="string"&&jb.has(Q)}gB.isJSONType=wb;function Mb(){let Q={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...Q,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},Q.number,Q.string,Q.array,Q.object],post:{rules:[]},all:{},keywords:{}}}gB.getRules=Mb});var y5=w((lB)=>{Object.defineProperty(lB,"__esModule",{value:!0});lB.shouldUseRule=lB.shouldUseGroup=lB.schemaHasRulesForType=void 0;function bb({schema:Q,self:X},Y){let W=X.RULES.types[Y];return W&&W!==!0&&hB(Q,W)}lB.schemaHasRulesForType=bb;function hB(Q,X){return X.rules.some((Y)=>uB(Q,Y))}lB.shouldUseGroup=hB;function uB(Q,X){var Y;return Q[X.keyword]!==void 0||((Y=X.definition.implements)===null||Y===void 0?void 0:Y.some((W)=>Q[W]!==void 0))}lB.shouldUseRule=uB});var s4=w((iB)=>{Object.defineProperty(iB,"__esModule",{value:!0});iB.reportTypeError=iB.checkDataTypes=iB.checkDataType=iB.coerceAndCheckDataType=iB.getJSONTypes=iB.getSchemaTypes=iB.DataType=void 0;var Rb=x5(),Eb=y5(),Sb=a4(),p=o(),cB=Y0(),u9;(function(Q){Q[Q.Correct=0]="Correct",Q[Q.Wrong=1]="Wrong"})(u9||(iB.DataType=u9={}));function Ib(Q){let X=pB(Q.type);if(X.includes("null")){if(Q.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!X.length&&Q.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(Q.nullable===!0)X.push("null")}return X}iB.getSchemaTypes=Ib;function pB(Q){let X=Array.isArray(Q)?Q:Q?[Q]:[];if(X.every(Rb.isJSONType))return X;throw Error("type must be JSONType or JSONType[]: "+X.join(","))}iB.getJSONTypes=pB;function Tb(Q,X){let{gen:Y,data:W,opts:$}=Q,J=Cb(X,$.coerceTypes),G=X.length>0&&!(J.length===0&&X.length===1&&(0,Eb.schemaHasRulesForType)(Q,X[0]));if(G){let H=f5(X,W,$.strictNumbers,u9.Wrong);Y.if(H,()=>{if(J.length)kb(Q,X,J);else h5(Q)})}return G}iB.coerceAndCheckDataType=Tb;var dB=new Set(["string","number","integer","boolean","null"]);function Cb(Q,X){return X?Q.filter((Y)=>dB.has(Y)||X==="array"&&Y==="array"):[]}function kb(Q,X,Y){let{gen:W,data:$,opts:J}=Q,G=W.let("dataType",p._`typeof ${$}`),H=W.let("coerced",p._`undefined`);if(J.coerceTypes==="array")W.if(p._`${G} == 'object' && Array.isArray(${$}) && ${$}.length == 1`,()=>W.assign($,p._`${$}[0]`).assign(G,p._`typeof ${$}`).if(f5(X,$,J.strictNumbers),()=>W.assign(H,$)));W.if(p._`${H} !== undefined`);for(let z of Y)if(dB.has(z)||z==="array"&&J.coerceTypes==="array")B(z);W.else(),h5(Q),W.endIf(),W.if(p._`${H} !== undefined`,()=>{W.assign($,H),vb(Q,H)});function B(z){switch(z){case"string":W.elseIf(p._`${G} == "number" || ${G} == "boolean"`).assign(H,p._`"" + ${$}`).elseIf(p._`${$} === null`).assign(H,p._`""`);return;case"number":W.elseIf(p._`${G} == "boolean" || ${$} === null
4
- || (${G} == "string" && ${$} && ${$} == +${$})`).assign(H,p._`+${$}`);return;case"integer":W.elseIf(p._`${G} === "boolean" || ${$} === null
5
- || (${G} === "string" && ${$} && ${$} == +${$} && !(${$} % 1))`).assign(H,p._`+${$}`);return;case"boolean":W.elseIf(p._`${$} === "false" || ${$} === 0 || ${$} === null`).assign(H,!1).elseIf(p._`${$} === "true" || ${$} === 1`).assign(H,!0);return;case"null":W.elseIf(p._`${$} === "" || ${$} === 0 || ${$} === false`),W.assign(H,null);return;case"array":W.elseIf(p._`${G} === "string" || ${G} === "number"
6
- || ${G} === "boolean" || ${$} === null`).assign(H,p._`[${$}]`)}}}function vb({gen:Q,parentData:X,parentDataProperty:Y},W){Q.if(p._`${X} !== undefined`,()=>Q.assign(p._`${X}[${Y}]`,W))}function g5(Q,X,Y,W=u9.Correct){let $=W===u9.Correct?p.operators.EQ:p.operators.NEQ,J;switch(Q){case"null":return p._`${X} ${$} null`;case"array":J=p._`Array.isArray(${X})`;break;case"object":J=p._`${X} && typeof ${X} == "object" && !Array.isArray(${X})`;break;case"integer":J=G(p._`!(${X} % 1) && !isNaN(${X})`);break;case"number":J=G();break;default:return p._`typeof ${X} ${$} ${Q}`}return W===u9.Correct?J:(0,p.not)(J);function G(H=p.nil){return(0,p.and)(p._`typeof ${X} == "number"`,H,Y?p._`isFinite(${X})`:p.nil)}}iB.checkDataType=g5;function f5(Q,X,Y,W){if(Q.length===1)return g5(Q[0],X,Y,W);let $,J=(0,cB.toHash)(Q);if(J.array&&J.object){let G=p._`typeof ${X} != "object"`;$=J.null?G:p._`!${X} || ${G}`,delete J.null,delete J.array,delete J.object}else $=p.nil;if(J.number)delete J.integer;for(let G in J)$=(0,p.and)($,g5(G,X,Y,W));return $}iB.checkDataTypes=f5;var _b={message:({schema:Q})=>`must be ${Q}`,params:({schema:Q,schemaValue:X})=>typeof Q=="string"?p._`{type: ${Q}}`:p._`{type: ${X}}`};function h5(Q){let X=xb(Q);(0,Sb.reportError)(X,_b)}iB.reportTypeError=h5;function xb(Q){let{gen:X,data:Y,schema:W}=Q,$=(0,cB.schemaRefOrVal)(Q,W,"type");return{gen:X,keyword:"type",data:Y,schema:W.type,schemaCode:$,schemaValue:$,parentSchema:W,params:{},it:Q}}});var aB=w((rB)=>{Object.defineProperty(rB,"__esModule",{value:!0});rB.assignDefaults=void 0;var l9=o(),mb=Y0();function cb(Q,X){let{properties:Y,items:W}=Q.schema;if(X==="object"&&Y)for(let $ in Y)oB(Q,$,Y[$].default);else if(X==="array"&&Array.isArray(W))W.forEach(($,J)=>oB(Q,J,$.default))}rB.assignDefaults=cb;function oB(Q,X,Y){let{gen:W,compositeRule:$,data:J,opts:G}=Q;if(Y===void 0)return;let H=l9._`${J}${(0,l9.getProperty)(X)}`;if($){(0,mb.checkStrictMode)(Q,`default is ignored for: ${H}`);return}let B=l9._`${H} === undefined`;if(G.useDefaults==="empty")B=l9._`${B} || ${H} === null || ${H} === ""`;W.if(B,l9._`${H} = ${(0,l9.stringify)(Y)}`)}});var V1=w((Qz)=>{Object.defineProperty(Qz,"__esModule",{value:!0});Qz.validateUnion=Qz.validateArray=Qz.usePattern=Qz.callValidateCode=Qz.schemaProperties=Qz.allSchemaProperties=Qz.noPropertyInData=Qz.propertyInData=Qz.isOwnProperty=Qz.hasPropFunc=Qz.reportMissingProp=Qz.checkMissingProp=Qz.checkReportMissingProp=void 0;var D0=o(),u5=Y0(),P6=Q6(),pb=Y0();function db(Q,X){let{gen:Y,data:W,it:$}=Q;Y.if(m5(Y,W,X,$.opts.ownProperties),()=>{Q.setParams({missingProperty:D0._`${X}`},!0),Q.error()})}Qz.checkReportMissingProp=db;function ib({gen:Q,data:X,it:{opts:Y}},W,$){return(0,D0.or)(...W.map((J)=>(0,D0.and)(m5(Q,X,J,Y.ownProperties),D0._`${$} = ${J}`)))}Qz.checkMissingProp=ib;function nb(Q,X){Q.setParams({missingProperty:X},!0),Q.error()}Qz.reportMissingProp=nb;function sB(Q){return Q.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:D0._`Object.prototype.hasOwnProperty`})}Qz.hasPropFunc=sB;function l5(Q,X,Y){return D0._`${sB(Q)}.call(${X}, ${Y})`}Qz.isOwnProperty=l5;function ob(Q,X,Y,W){let $=D0._`${X}${(0,D0.getProperty)(Y)} !== undefined`;return W?D0._`${$} && ${l5(Q,X,Y)}`:$}Qz.propertyInData=ob;function m5(Q,X,Y,W){let $=D0._`${X}${(0,D0.getProperty)(Y)} === undefined`;return W?(0,D0.or)($,(0,D0.not)(l5(Q,X,Y))):$}Qz.noPropertyInData=m5;function eB(Q){return Q?Object.keys(Q).filter((X)=>X!=="__proto__"):[]}Qz.allSchemaProperties=eB;function rb(Q,X){return eB(X).filter((Y)=>!(0,u5.alwaysValidSchema)(Q,X[Y]))}Qz.schemaProperties=rb;function tb({schemaCode:Q,data:X,it:{gen:Y,topSchemaRef:W,schemaPath:$,errorPath:J},it:G},H,B,z){let K=z?D0._`${Q}, ${X}, ${W}${$}`:X,F=[[P6.default.instancePath,(0,D0.strConcat)(P6.default.instancePath,J)],[P6.default.parentData,G.parentData],[P6.default.parentDataProperty,G.parentDataProperty],[P6.default.rootData,P6.default.rootData]];if(G.opts.dynamicRef)F.push([P6.default.dynamicAnchors,P6.default.dynamicAnchors]);let D=D0._`${K}, ${Y.object(...F)}`;return B!==D0.nil?D0._`${H}.call(${B}, ${D})`:D0._`${H}(${D})`}Qz.callValidateCode=tb;var ab=D0._`new RegExp`;function sb({gen:Q,it:{opts:X}},Y){let W=X.unicodeRegExp?"u":"",{regExp:$}=X.code,J=$(Y,W);return Q.scopeValue("pattern",{key:J.toString(),ref:J,code:D0._`${$.code==="new RegExp"?ab:(0,pb.useFunc)(Q,$)}(${Y}, ${W})`})}Qz.usePattern=sb;function eb(Q){let{gen:X,data:Y,keyword:W,it:$}=Q,J=X.name("valid");if($.allErrors){let H=X.let("valid",!0);return G(()=>X.assign(H,!1)),H}return X.var(J,!0),G(()=>X.break()),J;function G(H){let B=X.const("len",D0._`${Y}.length`);X.forRange("i",0,B,(z)=>{Q.subschema({keyword:W,dataProp:z,dataPropType:u5.Type.Num},J),X.if((0,D0.not)(J),H)})}}Qz.validateArray=eb;function QP(Q){let{gen:X,schema:Y,keyword:W,it:$}=Q;if(!Array.isArray(Y))throw Error("ajv implementation error");if(Y.some((B)=>(0,u5.alwaysValidSchema)($,B))&&!$.opts.unevaluated)return;let G=X.let("valid",!1),H=X.name("_valid");X.block(()=>Y.forEach((B,z)=>{let K=Q.subschema({keyword:W,schemaProp:z,compositeRule:!0},H);if(X.assign(G,D0._`${G} || ${H}`),!Q.mergeValidEvaluated(K,H))X.if((0,D0.not)(G))})),Q.result(G,()=>Q.reset(),()=>Q.error(!0))}Qz.validateUnion=QP});var Gz=w(($z)=>{Object.defineProperty($z,"__esModule",{value:!0});$z.validateKeywordUsage=$z.validSchemaType=$z.funcKeywordCode=$z.macroKeywordCode=void 0;var d0=o(),e6=Q6(),qP=V1(),AP=a4();function DP(Q,X){let{gen:Y,keyword:W,schema:$,parentSchema:J,it:G}=Q,H=X.macro.call(G.self,$,J,G),B=Wz(Y,W,H);if(G.opts.validateSchema!==!1)G.self.validateSchema(H,!0);let z=Y.name("valid");Q.subschema({schema:H,schemaPath:d0.nil,errSchemaPath:`${G.errSchemaPath}/${W}`,topSchemaRef:B,compositeRule:!0},z),Q.pass(z,()=>Q.error(!0))}$z.macroKeywordCode=DP;function LP(Q,X){var Y;let{gen:W,keyword:$,schema:J,parentSchema:G,$data:H,it:B}=Q;UP(B,X);let z=!H&&X.compile?X.compile.call(B.self,J,G,B):X.validate,K=Wz(W,$,z),F=W.let("valid");Q.block$data(F,D),Q.ok((Y=X.valid)!==null&&Y!==void 0?Y:F);function D(){if(X.errors===!1){if(q(),X.modifying)Yz(Q);L(()=>Q.error())}else{let O=X.async?V():A();if(X.modifying)Yz(Q);L(()=>OP(Q,O))}}function V(){let O=W.let("ruleErrs",null);return W.try(()=>q(d0._`await `),(M)=>W.assign(F,!1).if(d0._`${M} instanceof ${B.ValidationError}`,()=>W.assign(O,d0._`${M}.errors`),()=>W.throw(M))),O}function A(){let O=d0._`${K}.errors`;return W.assign(O,null),q(d0.nil),O}function q(O=X.async?d0._`await `:d0.nil){let M=B.opts.passContext?e6.default.this:e6.default.self,N=!(("compile"in X)&&!H||X.schema===!1);W.assign(F,d0._`${O}${(0,qP.callValidateCode)(Q,K,M,N)}`,X.modifying)}function L(O){var M;W.if((0,d0.not)((M=X.valid)!==null&&M!==void 0?M:F),O)}}$z.funcKeywordCode=LP;function Yz(Q){let{gen:X,data:Y,it:W}=Q;X.if(W.parentData,()=>X.assign(Y,d0._`${W.parentData}[${W.parentDataProperty}]`))}function OP(Q,X){let{gen:Y}=Q;Y.if(d0._`Array.isArray(${X})`,()=>{Y.assign(e6.default.vErrors,d0._`${e6.default.vErrors} === null ? ${X} : ${e6.default.vErrors}.concat(${X})`).assign(e6.default.errors,d0._`${e6.default.vErrors}.length`),(0,AP.extendErrors)(Q)},()=>Q.error())}function UP({schemaEnv:Q},X){if(X.async&&!Q.$async)throw Error("async keyword in sync schema")}function Wz(Q,X,Y){if(Y===void 0)throw Error(`keyword "${X}" failed to compile`);return Q.scopeValue("keyword",typeof Y=="function"?{ref:Y}:{ref:Y,code:(0,d0.stringify)(Y)})}function jP(Q,X,Y=!1){return!X.length||X.some((W)=>W==="array"?Array.isArray(Q):W==="object"?Q&&typeof Q=="object"&&!Array.isArray(Q):typeof Q==W||Y&&typeof Q>"u")}$z.validSchemaType=jP;function wP({schema:Q,opts:X,self:Y,errSchemaPath:W},$,J){if(Array.isArray($.keyword)?!$.keyword.includes(J):$.keyword!==J)throw Error("ajv implementation error");let G=$.dependencies;if(G===null||G===void 0?void 0:G.some((H)=>!Object.prototype.hasOwnProperty.call(Q,H)))throw Error(`parent schema must have dependencies of ${J}: ${G.join(",")}`);if($.validateSchema){if(!$.validateSchema(Q[J])){let B=`keyword "${J}" value is invalid at path "${W}": `+Y.errorsText($.validateSchema.errors);if(X.validateSchema==="log")Y.logger.error(B);else throw Error(B)}}}$z.validateKeywordUsage=wP});var Kz=w((Bz)=>{Object.defineProperty(Bz,"__esModule",{value:!0});Bz.extendSubschemaMode=Bz.extendSubschemaData=Bz.getSubschema=void 0;var m1=o(),Hz=Y0();function PP(Q,{keyword:X,schemaProp:Y,schema:W,schemaPath:$,errSchemaPath:J,topSchemaRef:G}){if(X!==void 0&&W!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(X!==void 0){let H=Q.schema[X];return Y===void 0?{schema:H,schemaPath:m1._`${Q.schemaPath}${(0,m1.getProperty)(X)}`,errSchemaPath:`${Q.errSchemaPath}/${X}`}:{schema:H[Y],schemaPath:m1._`${Q.schemaPath}${(0,m1.getProperty)(X)}${(0,m1.getProperty)(Y)}`,errSchemaPath:`${Q.errSchemaPath}/${X}/${(0,Hz.escapeFragment)(Y)}`}}if(W!==void 0){if($===void 0||J===void 0||G===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:W,schemaPath:$,topSchemaRef:G,errSchemaPath:J}}throw Error('either "keyword" or "schema" must be passed')}Bz.getSubschema=PP;function ZP(Q,X,{dataProp:Y,dataPropType:W,data:$,dataTypes:J,propertyName:G}){if($!==void 0&&Y!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:H}=X;if(Y!==void 0){let{errorPath:z,dataPathArr:K,opts:F}=X,D=H.let("data",m1._`${X.data}${(0,m1.getProperty)(Y)}`,!0);B(D),Q.errorPath=m1.str`${z}${(0,Hz.getErrorPath)(Y,W,F.jsPropertySyntax)}`,Q.parentDataProperty=m1._`${Y}`,Q.dataPathArr=[...K,Q.parentDataProperty]}if($!==void 0){let z=$ instanceof m1.Name?$:H.let("data",$,!0);if(B(z),G!==void 0)Q.propertyName=G}if(J)Q.dataTypes=J;function B(z){Q.data=z,Q.dataLevel=X.dataLevel+1,Q.dataTypes=[],X.definedProperties=new Set,Q.parentData=X.data,Q.dataNames=[...X.dataNames,z]}}Bz.extendSubschemaData=ZP;function RP(Q,{jtdDiscriminator:X,jtdMetadata:Y,compositeRule:W,createErrors:$,allErrors:J}){if(W!==void 0)Q.compositeRule=W;if($!==void 0)Q.createErrors=$;if(J!==void 0)Q.allErrors=J;Q.jtdDiscriminator=X,Q.jtdMetadata=Y}Bz.extendSubschemaMode=RP});var e4=w((lm,Fz)=>{Fz.exports=function Q(X,Y){if(X===Y)return!0;if(X&&Y&&typeof X=="object"&&typeof Y=="object"){if(X.constructor!==Y.constructor)return!1;var W,$,J;if(Array.isArray(X)){if(W=X.length,W!=Y.length)return!1;for($=W;$--!==0;)if(!Q(X[$],Y[$]))return!1;return!0}if(X.constructor===RegExp)return X.source===Y.source&&X.flags===Y.flags;if(X.valueOf!==Object.prototype.valueOf)return X.valueOf()===Y.valueOf();if(X.toString!==Object.prototype.toString)return X.toString()===Y.toString();if(J=Object.keys(X),W=J.length,W!==Object.keys(Y).length)return!1;for($=W;$--!==0;)if(!Object.prototype.hasOwnProperty.call(Y,J[$]))return!1;for($=W;$--!==0;){var G=J[$];if(!Q(X[G],Y[G]))return!1}return!0}return X!==X&&Y!==Y}});var qz=w((mm,Vz)=>{var Z6=Vz.exports=function(Q,X,Y){if(typeof X=="function")Y=X,X={};Y=X.cb||Y;var W=typeof Y=="function"?Y:Y.pre||function(){},$=Y.post||function(){};YX(X,W,$,Q,"",Q)};Z6.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Z6.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Z6.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Z6.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 YX(Q,X,Y,W,$,J,G,H,B,z){if(W&&typeof W=="object"&&!Array.isArray(W)){X(W,$,J,G,H,B,z);for(var K in W){var F=W[K];if(Array.isArray(F)){if(K in Z6.arrayKeywords)for(var D=0;D<F.length;D++)YX(Q,X,Y,F[D],$+"/"+K+"/"+D,J,$,K,W,D)}else if(K in Z6.propsKeywords){if(F&&typeof F=="object")for(var V in F)YX(Q,X,Y,F[V],$+"/"+K+"/"+IP(V),J,$,K,W,V)}else if(K in Z6.keywords||Q.allKeys&&!(K in Z6.skipKeywords))YX(Q,X,Y,F,$+"/"+K,J,$,K,W)}Y(W,$,J,G,H,B,z)}}function IP(Q){return Q.replace(/~/g,"~0").replace(/\//g,"~1")}});var Q8=w((Oz)=>{Object.defineProperty(Oz,"__esModule",{value:!0});Oz.getSchemaRefs=Oz.resolveUrl=Oz.normalizeId=Oz._getFullPath=Oz.getFullPath=Oz.inlineRef=void 0;var TP=Y0(),CP=e4(),kP=qz(),vP=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function _P(Q,X=!0){if(typeof Q=="boolean")return!0;if(X===!0)return!c5(Q);if(!X)return!1;return Az(Q)<=X}Oz.inlineRef=_P;var xP=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function c5(Q){for(let X in Q){if(xP.has(X))return!0;let Y=Q[X];if(Array.isArray(Y)&&Y.some(c5))return!0;if(typeof Y=="object"&&c5(Y))return!0}return!1}function Az(Q){let X=0;for(let Y in Q){if(Y==="$ref")return 1/0;if(X++,vP.has(Y))continue;if(typeof Q[Y]=="object")(0,TP.eachItem)(Q[Y],(W)=>X+=Az(W));if(X===1/0)return 1/0}return X}function Dz(Q,X="",Y){if(Y!==!1)X=m9(X);let W=Q.parse(X);return Lz(Q,W)}Oz.getFullPath=Dz;function Lz(Q,X){return Q.serialize(X).split("#")[0]+"#"}Oz._getFullPath=Lz;var yP=/#\/?$/;function m9(Q){return Q?Q.replace(yP,""):""}Oz.normalizeId=m9;function gP(Q,X,Y){return Y=m9(Y),Q.resolve(X,Y)}Oz.resolveUrl=gP;var fP=/^[a-z_][-a-z0-9._]*$/i;function hP(Q,X){if(typeof Q=="boolean")return{};let{schemaId:Y,uriResolver:W}=this.opts,$=m9(Q[Y]||X),J={"":$},G=Dz(W,$,!1),H={},B=new Set;return kP(Q,{allKeys:!0},(F,D,V,A)=>{if(A===void 0)return;let q=G+D,L=J[A];if(typeof F[Y]=="string")L=O.call(this,F[Y]);M.call(this,F.$anchor),M.call(this,F.$dynamicAnchor),J[D]=L;function O(N){let C=this.opts.uriResolver.resolve;if(N=m9(L?C(L,N):N),B.has(N))throw K(N);B.add(N);let Z=this.refs[N];if(typeof Z=="string")Z=this.refs[Z];if(typeof Z=="object")z(F,Z.schema,N);else if(N!==m9(q))if(N[0]==="#")z(F,H[N],N),H[N]=F;else this.refs[N]=q;return N}function M(N){if(typeof N=="string"){if(!fP.test(N))throw Error(`invalid anchor "${N}"`);O.call(this,`#${N}`)}}}),H;function z(F,D,V){if(D!==void 0&&!CP(F,D))throw K(V)}function K(F){return Error(`reference "${F}" resolves to more than one schema`)}}Oz.getSchemaRefs=hP});var W8=w((vz)=>{Object.defineProperty(vz,"__esModule",{value:!0});vz.getData=vz.KeywordCxt=vz.validateFunctionCode=void 0;var bz=yB(),jz=s4(),d5=y5(),WX=s4(),dP=aB(),Y8=Gz(),p5=Kz(),x=o(),u=Q6(),iP=Q8(),X6=Y0(),X8=a4();function nP(Q){if(Rz(Q)){if(Ez(Q),Zz(Q)){tP(Q);return}}Pz(Q,()=>(0,bz.topBoolOrEmptySchema)(Q))}vz.validateFunctionCode=nP;function Pz({gen:Q,validateName:X,schema:Y,schemaEnv:W,opts:$},J){if($.code.es5)Q.func(X,x._`${u.default.data}, ${u.default.valCxt}`,W.$async,()=>{Q.code(x._`"use strict"; ${wz(Y,$)}`),rP(Q,$),Q.code(J)});else Q.func(X,x._`${u.default.data}, ${oP($)}`,W.$async,()=>Q.code(wz(Y,$)).code(J))}function oP(Q){return x._`{${u.default.instancePath}="", ${u.default.parentData}, ${u.default.parentDataProperty}, ${u.default.rootData}=${u.default.data}${Q.dynamicRef?x._`, ${u.default.dynamicAnchors}={}`:x.nil}}={}`}function rP(Q,X){Q.if(u.default.valCxt,()=>{if(Q.var(u.default.instancePath,x._`${u.default.valCxt}.${u.default.instancePath}`),Q.var(u.default.parentData,x._`${u.default.valCxt}.${u.default.parentData}`),Q.var(u.default.parentDataProperty,x._`${u.default.valCxt}.${u.default.parentDataProperty}`),Q.var(u.default.rootData,x._`${u.default.valCxt}.${u.default.rootData}`),X.dynamicRef)Q.var(u.default.dynamicAnchors,x._`${u.default.valCxt}.${u.default.dynamicAnchors}`)},()=>{if(Q.var(u.default.instancePath,x._`""`),Q.var(u.default.parentData,x._`undefined`),Q.var(u.default.parentDataProperty,x._`undefined`),Q.var(u.default.rootData,u.default.data),X.dynamicRef)Q.var(u.default.dynamicAnchors,x._`{}`)})}function tP(Q){let{schema:X,opts:Y,gen:W}=Q;Pz(Q,()=>{if(Y.$comment&&X.$comment)Iz(Q);if(XZ(Q),W.let(u.default.vErrors,null),W.let(u.default.errors,0),Y.unevaluated)aP(Q);Sz(Q),$Z(Q)});return}function aP(Q){let{gen:X,validateName:Y}=Q;Q.evaluated=X.const("evaluated",x._`${Y}.evaluated`),X.if(x._`${Q.evaluated}.dynamicProps`,()=>X.assign(x._`${Q.evaluated}.props`,x._`undefined`)),X.if(x._`${Q.evaluated}.dynamicItems`,()=>X.assign(x._`${Q.evaluated}.items`,x._`undefined`))}function wz(Q,X){let Y=typeof Q=="object"&&Q[X.schemaId];return Y&&(X.code.source||X.code.process)?x._`/*# sourceURL=${Y} */`:x.nil}function sP(Q,X){if(Rz(Q)){if(Ez(Q),Zz(Q)){eP(Q,X);return}}(0,bz.boolOrEmptySchema)(Q,X)}function Zz({schema:Q,self:X}){if(typeof Q=="boolean")return!Q;for(let Y in Q)if(X.RULES.all[Y])return!0;return!1}function Rz(Q){return typeof Q.schema!="boolean"}function eP(Q,X){let{schema:Y,gen:W,opts:$}=Q;if($.$comment&&Y.$comment)Iz(Q);YZ(Q),WZ(Q);let J=W.const("_errs",u.default.errors);Sz(Q,J),W.var(X,x._`${J} === ${u.default.errors}`)}function Ez(Q){(0,X6.checkUnknownRules)(Q),QZ(Q)}function Sz(Q,X){if(Q.opts.jtd)return Mz(Q,[],!1,X);let Y=(0,jz.getSchemaTypes)(Q.schema),W=(0,jz.coerceAndCheckDataType)(Q,Y);Mz(Q,Y,!W,X)}function QZ(Q){let{schema:X,errSchemaPath:Y,opts:W,self:$}=Q;if(X.$ref&&W.ignoreKeywordsWithRef&&(0,X6.schemaHasRulesButRef)(X,$.RULES))$.logger.warn(`$ref: keywords ignored in schema at path "${Y}"`)}function XZ(Q){let{schema:X,opts:Y}=Q;if(X.default!==void 0&&Y.useDefaults&&Y.strictSchema)(0,X6.checkStrictMode)(Q,"default is ignored in the schema root")}function YZ(Q){let X=Q.schema[Q.opts.schemaId];if(X)Q.baseId=(0,iP.resolveUrl)(Q.opts.uriResolver,Q.baseId,X)}function WZ(Q){if(Q.schema.$async&&!Q.schemaEnv.$async)throw Error("async schema in sync schema")}function Iz({gen:Q,schemaEnv:X,schema:Y,errSchemaPath:W,opts:$}){let J=Y.$comment;if($.$comment===!0)Q.code(x._`${u.default.self}.logger.log(${J})`);else if(typeof $.$comment=="function"){let G=x.str`${W}/$comment`,H=Q.scopeValue("root",{ref:X.root});Q.code(x._`${u.default.self}.opts.$comment(${J}, ${G}, ${H}.schema)`)}}function $Z(Q){let{gen:X,schemaEnv:Y,validateName:W,ValidationError:$,opts:J}=Q;if(Y.$async)X.if(x._`${u.default.errors} === 0`,()=>X.return(u.default.data),()=>X.throw(x._`new ${$}(${u.default.vErrors})`));else{if(X.assign(x._`${W}.errors`,u.default.vErrors),J.unevaluated)JZ(Q);X.return(x._`${u.default.errors} === 0`)}}function JZ({gen:Q,evaluated:X,props:Y,items:W}){if(Y instanceof x.Name)Q.assign(x._`${X}.props`,Y);if(W instanceof x.Name)Q.assign(x._`${X}.items`,W)}function Mz(Q,X,Y,W){let{gen:$,schema:J,data:G,allErrors:H,opts:B,self:z}=Q,{RULES:K}=z;if(J.$ref&&(B.ignoreKeywordsWithRef||!(0,X6.schemaHasRulesButRef)(J,K))){$.block(()=>Cz(Q,"$ref",K.all.$ref.definition));return}if(!B.jtd)GZ(Q,X);$.block(()=>{for(let D of K.rules)F(D);F(K.post)});function F(D){if(!(0,d5.shouldUseGroup)(J,D))return;if(D.type){if($.if((0,WX.checkDataType)(D.type,G,B.strictNumbers)),Nz(Q,D),X.length===1&&X[0]===D.type&&Y)$.else(),(0,WX.reportTypeError)(Q);$.endIf()}else Nz(Q,D);if(!H)$.if(x._`${u.default.errors} === ${W||0}`)}}function Nz(Q,X){let{gen:Y,schema:W,opts:{useDefaults:$}}=Q;if($)(0,dP.assignDefaults)(Q,X.type);Y.block(()=>{for(let J of X.rules)if((0,d5.shouldUseRule)(W,J))Cz(Q,J.keyword,J.definition,X.type)})}function GZ(Q,X){if(Q.schemaEnv.meta||!Q.opts.strictTypes)return;if(HZ(Q,X),!Q.opts.allowUnionTypes)BZ(Q,X);zZ(Q,Q.dataTypes)}function HZ(Q,X){if(!X.length)return;if(!Q.dataTypes.length){Q.dataTypes=X;return}X.forEach((Y)=>{if(!Tz(Q.dataTypes,Y))i5(Q,`type "${Y}" not allowed by context "${Q.dataTypes.join(",")}"`)}),FZ(Q,X)}function BZ(Q,X){if(X.length>1&&!(X.length===2&&X.includes("null")))i5(Q,"use allowUnionTypes to allow union type keyword")}function zZ(Q,X){let Y=Q.self.RULES.all;for(let W in Y){let $=Y[W];if(typeof $=="object"&&(0,d5.shouldUseRule)(Q.schema,$)){let{type:J}=$.definition;if(J.length&&!J.some((G)=>KZ(X,G)))i5(Q,`missing type "${J.join(",")}" for keyword "${W}"`)}}}function KZ(Q,X){return Q.includes(X)||X==="number"&&Q.includes("integer")}function Tz(Q,X){return Q.includes(X)||X==="integer"&&Q.includes("number")}function FZ(Q,X){let Y=[];for(let W of Q.dataTypes)if(Tz(X,W))Y.push(W);else if(X.includes("integer")&&W==="number")Y.push("integer");Q.dataTypes=Y}function i5(Q,X){let Y=Q.schemaEnv.baseId+Q.errSchemaPath;X+=` at "${Y}" (strictTypes)`,(0,X6.checkStrictMode)(Q,X,Q.opts.strictTypes)}class n5{constructor(Q,X,Y){if((0,Y8.validateKeywordUsage)(Q,X,Y),this.gen=Q.gen,this.allErrors=Q.allErrors,this.keyword=Y,this.data=Q.data,this.schema=Q.schema[Y],this.$data=X.$data&&Q.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,X6.schemaRefOrVal)(Q,this.schema,Y,this.$data),this.schemaType=X.schemaType,this.parentSchema=Q.schema,this.params={},this.it=Q,this.def=X,this.$data)this.schemaCode=Q.gen.const("vSchema",kz(this.$data,Q));else if(this.schemaCode=this.schemaValue,!(0,Y8.validSchemaType)(this.schema,X.schemaType,X.allowUndefined))throw Error(`${Y} value must be ${JSON.stringify(X.schemaType)}`);if("code"in X?X.trackErrors:X.errors!==!1)this.errsCount=Q.gen.const("_errs",u.default.errors)}result(Q,X,Y){this.failResult((0,x.not)(Q),X,Y)}failResult(Q,X,Y){if(this.gen.if(Q),Y)Y();else this.error();if(X){if(this.gen.else(),X(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(Q,X){this.failResult((0,x.not)(Q),void 0,X)}fail(Q){if(Q===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(Q),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(Q){if(!this.$data)return this.fail(Q);let{schemaCode:X}=this;this.fail(x._`${X} !== undefined && (${(0,x.or)(this.invalid$data(),Q)})`)}error(Q,X,Y){if(X){this.setParams(X),this._error(Q,Y),this.setParams({});return}this._error(Q,Y)}_error(Q,X){(Q?X8.reportExtraError:X8.reportError)(this,this.def.error,X)}$dataError(){(0,X8.reportError)(this,this.def.$dataError||X8.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');(0,X8.resetErrorsCount)(this.gen,this.errsCount)}ok(Q){if(!this.allErrors)this.gen.if(Q)}setParams(Q,X){if(X)Object.assign(this.params,Q);else this.params=Q}block$data(Q,X,Y=x.nil){this.gen.block(()=>{this.check$data(Q,Y),X()})}check$data(Q=x.nil,X=x.nil){if(!this.$data)return;let{gen:Y,schemaCode:W,schemaType:$,def:J}=this;if(Y.if((0,x.or)(x._`${W} === undefined`,X)),Q!==x.nil)Y.assign(Q,!0);if($.length||J.validateSchema){if(Y.elseIf(this.invalid$data()),this.$dataError(),Q!==x.nil)Y.assign(Q,!1)}Y.else()}invalid$data(){let{gen:Q,schemaCode:X,schemaType:Y,def:W,it:$}=this;return(0,x.or)(J(),G());function J(){if(Y.length){if(!(X instanceof x.Name))throw Error("ajv implementation error");let H=Array.isArray(Y)?Y:[Y];return x._`${(0,WX.checkDataTypes)(H,X,$.opts.strictNumbers,WX.DataType.Wrong)}`}return x.nil}function G(){if(W.validateSchema){let H=Q.scopeValue("validate$data",{ref:W.validateSchema});return x._`!${H}(${X})`}return x.nil}}subschema(Q,X){let Y=(0,p5.getSubschema)(this.it,Q);(0,p5.extendSubschemaData)(Y,this.it,Q),(0,p5.extendSubschemaMode)(Y,Q);let W={...this.it,...Y,items:void 0,props:void 0};return sP(W,X),W}mergeEvaluated(Q,X){let{it:Y,gen:W}=this;if(!Y.opts.unevaluated)return;if(Y.props!==!0&&Q.props!==void 0)Y.props=X6.mergeEvaluated.props(W,Q.props,Y.props,X);if(Y.items!==!0&&Q.items!==void 0)Y.items=X6.mergeEvaluated.items(W,Q.items,Y.items,X)}mergeValidEvaluated(Q,X){let{it:Y,gen:W}=this;if(Y.opts.unevaluated&&(Y.props!==!0||Y.items!==!0))return W.if(X,()=>this.mergeEvaluated(Q,x.Name)),!0}}vz.KeywordCxt=n5;function Cz(Q,X,Y,W){let $=new n5(Q,Y,X);if("code"in Y)Y.code($,W);else if($.$data&&Y.validate)(0,Y8.funcKeywordCode)($,Y);else if("macro"in Y)(0,Y8.macroKeywordCode)($,Y);else if(Y.compile||Y.validate)(0,Y8.funcKeywordCode)($,Y)}var VZ=/^\/(?:[^~]|~0|~1)*$/,qZ=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function kz(Q,{dataLevel:X,dataNames:Y,dataPathArr:W}){let $,J;if(Q==="")return u.default.rootData;if(Q[0]==="/"){if(!VZ.test(Q))throw Error(`Invalid JSON-pointer: ${Q}`);$=Q,J=u.default.rootData}else{let z=qZ.exec(Q);if(!z)throw Error(`Invalid JSON-pointer: ${Q}`);let K=+z[1];if($=z[2],$==="#"){if(K>=X)throw Error(B("property/index",K));return W[X-K]}if(K>X)throw Error(B("data",K));if(J=Y[X-K],!$)return J}let G=J,H=$.split("/");for(let z of H)if(z)J=x._`${J}${(0,x.getProperty)((0,X6.unescapeJsonPointer)(z))}`,G=x._`${G} && ${J}`;return G;function B(z,K){return`Cannot access ${z} ${K} levels up, current level is ${X}`}}vz.getData=kz});var $X=w((yz)=>{Object.defineProperty(yz,"__esModule",{value:!0});class xz extends Error{constructor(Q){super("validation failed");this.errors=Q,this.ajv=this.validation=!0}}yz.default=xz});var $8=w((fz)=>{Object.defineProperty(fz,"__esModule",{value:!0});var o5=Q8();class gz extends Error{constructor(Q,X,Y,W){super(W||`can't resolve reference ${Y} from id ${X}`);this.missingRef=(0,o5.resolveUrl)(Q,X,Y),this.missingSchema=(0,o5.normalizeId)((0,o5.getFullPath)(Q,this.missingRef))}}fz.default=gz});var GX=w((lz)=>{Object.defineProperty(lz,"__esModule",{value:!0});lz.resolveSchema=lz.getCompilingSchema=lz.resolveRef=lz.compileSchema=lz.SchemaEnv=void 0;var E1=o(),UZ=$X(),Q9=Q6(),S1=Q8(),hz=Y0(),jZ=W8();class J8{constructor(Q){var X;this.refs={},this.dynamicAnchors={};let Y;if(typeof Q.schema=="object")Y=Q.schema;this.schema=Q.schema,this.schemaId=Q.schemaId,this.root=Q.root||this,this.baseId=(X=Q.baseId)!==null&&X!==void 0?X:(0,S1.normalizeId)(Y===null||Y===void 0?void 0:Y[Q.schemaId||"$id"]),this.schemaPath=Q.schemaPath,this.localRefs=Q.localRefs,this.meta=Q.meta,this.$async=Y===null||Y===void 0?void 0:Y.$async,this.refs={}}}lz.SchemaEnv=J8;function t5(Q){let X=uz.call(this,Q);if(X)return X;let Y=(0,S1.getFullPath)(this.opts.uriResolver,Q.root.baseId),{es5:W,lines:$}=this.opts.code,{ownProperties:J}=this.opts,G=new E1.CodeGen(this.scope,{es5:W,lines:$,ownProperties:J}),H;if(Q.$async)H=G.scopeValue("Error",{ref:UZ.default,code:E1._`require("ajv/dist/runtime/validation_error").default`});let B=G.scopeName("validate");Q.validateName=B;let z={gen:G,allErrors:this.opts.allErrors,data:Q9.default.data,parentData:Q9.default.parentData,parentDataProperty:Q9.default.parentDataProperty,dataNames:[Q9.default.data],dataPathArr:[E1.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:G.scopeValue("schema",this.opts.code.source===!0?{ref:Q.schema,code:(0,E1.stringify)(Q.schema)}:{ref:Q.schema}),validateName:B,ValidationError:H,schema:Q.schema,schemaEnv:Q,rootId:Y,baseId:Q.baseId||Y,schemaPath:E1.nil,errSchemaPath:Q.schemaPath||(this.opts.jtd?"":"#"),errorPath:E1._`""`,opts:this.opts,self:this},K;try{this._compilations.add(Q),(0,jZ.validateFunctionCode)(z),G.optimize(this.opts.code.optimize);let F=G.toString();if(K=`${G.scopeRefs(Q9.default.scope)}return ${F}`,this.opts.code.process)K=this.opts.code.process(K,Q);let V=Function(`${Q9.default.self}`,`${Q9.default.scope}`,K)(this,this.scope.get());if(this.scope.value(B,{ref:V}),V.errors=null,V.schema=Q.schema,V.schemaEnv=Q,Q.$async)V.$async=!0;if(this.opts.code.source===!0)V.source={validateName:B,validateCode:F,scopeValues:G._values};if(this.opts.unevaluated){let{props:A,items:q}=z;if(V.evaluated={props:A instanceof E1.Name?void 0:A,items:q instanceof E1.Name?void 0:q,dynamicProps:A instanceof E1.Name,dynamicItems:q instanceof E1.Name},V.source)V.source.evaluated=(0,E1.stringify)(V.evaluated)}return Q.validate=V,Q}catch(F){if(delete Q.validate,delete Q.validateName,K)this.logger.error("Error compiling schema, function code:",K);throw F}finally{this._compilations.delete(Q)}}lz.compileSchema=t5;function wZ(Q,X,Y){var W;Y=(0,S1.resolveUrl)(this.opts.uriResolver,X,Y);let $=Q.refs[Y];if($)return $;let J=bZ.call(this,Q,Y);if(J===void 0){let G=(W=Q.localRefs)===null||W===void 0?void 0:W[Y],{schemaId:H}=this.opts;if(G)J=new J8({schema:G,schemaId:H,root:Q,baseId:X})}if(J===void 0)return;return Q.refs[Y]=MZ.call(this,J)}lz.resolveRef=wZ;function MZ(Q){if((0,S1.inlineRef)(Q.schema,this.opts.inlineRefs))return Q.schema;return Q.validate?Q:t5.call(this,Q)}function uz(Q){for(let X of this._compilations)if(NZ(X,Q))return X}lz.getCompilingSchema=uz;function NZ(Q,X){return Q.schema===X.schema&&Q.root===X.root&&Q.baseId===X.baseId}function bZ(Q,X){let Y;while(typeof(Y=this.refs[X])=="string")X=Y;return Y||this.schemas[X]||JX.call(this,Q,X)}function JX(Q,X){let Y=this.opts.uriResolver.parse(X),W=(0,S1._getFullPath)(this.opts.uriResolver,Y),$=(0,S1.getFullPath)(this.opts.uriResolver,Q.baseId,void 0);if(Object.keys(Q.schema).length>0&&W===$)return r5.call(this,Y,Q);let J=(0,S1.normalizeId)(W),G=this.refs[J]||this.schemas[J];if(typeof G=="string"){let H=JX.call(this,Q,G);if(typeof(H===null||H===void 0?void 0:H.schema)!=="object")return;return r5.call(this,Y,H)}if(typeof(G===null||G===void 0?void 0:G.schema)!=="object")return;if(!G.validate)t5.call(this,G);if(J===(0,S1.normalizeId)(X)){let{schema:H}=G,{schemaId:B}=this.opts,z=H[B];if(z)$=(0,S1.resolveUrl)(this.opts.uriResolver,$,z);return new J8({schema:H,schemaId:B,root:Q,baseId:$})}return r5.call(this,Y,G)}lz.resolveSchema=JX;var PZ=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function r5(Q,{baseId:X,schema:Y,root:W}){var $;if((($=Q.fragment)===null||$===void 0?void 0:$[0])!=="/")return;for(let H of Q.fragment.slice(1).split("/")){if(typeof Y==="boolean")return;let B=Y[(0,hz.unescapeFragment)(H)];if(B===void 0)return;Y=B;let z=typeof Y==="object"&&Y[this.opts.schemaId];if(!PZ.has(H)&&z)X=(0,S1.resolveUrl)(this.opts.uriResolver,X,z)}let J;if(typeof Y!="boolean"&&Y.$ref&&!(0,hz.schemaHasRulesButRef)(Y,this.RULES)){let H=(0,S1.resolveUrl)(this.opts.uriResolver,X,Y.$ref);J=JX.call(this,W,H)}let{schemaId:G}=this.opts;if(J=J||new J8({schema:Y,schemaId:G,root:W,baseId:X}),J.schema!==J.root.schema)return J;return}});var cz=w((om,IZ)=>{IZ.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 s5=w((rm,nz)=>{var TZ=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),dz=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 a5(Q){let X="",Y=0,W=0;for(W=0;W<Q.length;W++){if(Y=Q[W].charCodeAt(0),Y===48)continue;if(!(Y>=48&&Y<=57||Y>=65&&Y<=70||Y>=97&&Y<=102))return"";X+=Q[W];break}for(W+=1;W<Q.length;W++){if(Y=Q[W].charCodeAt(0),!(Y>=48&&Y<=57||Y>=65&&Y<=70||Y>=97&&Y<=102))return"";X+=Q[W]}return X}var CZ=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function pz(Q){return Q.length=0,!0}function kZ(Q,X,Y){if(Q.length){let W=a5(Q);if(W!=="")X.push(W);else return Y.error=!0,!1;Q.length=0}return!0}function vZ(Q){let X=0,Y={error:!1,address:"",zone:""},W=[],$=[],J=!1,G=!1,H=kZ;for(let B=0;B<Q.length;B++){let z=Q[B];if(z==="["||z==="]")continue;if(z===":"){if(J===!0)G=!0;if(!H($,W,Y))break;if(++X>7){Y.error=!0;break}if(B>0&&Q[B-1]===":")J=!0;W.push(":");continue}else if(z==="%"){if(!H($,W,Y))break;H=pz}else{$.push(z);continue}}if($.length)if(H===pz)Y.zone=$.join("");else if(G)W.push($.join(""));else W.push(a5($));return Y.address=W.join(""),Y}function iz(Q){if(_Z(Q,":")<2)return{host:Q,isIPV6:!1};let X=vZ(Q);if(!X.error){let{address:Y,address:W}=X;if(X.zone)Y+="%"+X.zone,W+="%25"+X.zone;return{host:Y,isIPV6:!0,escapedHost:W}}else return{host:Q,isIPV6:!1}}function _Z(Q,X){let Y=0;for(let W=0;W<Q.length;W++)if(Q[W]===X)Y++;return Y}function xZ(Q){let X=Q,Y=[],W=-1,$=0;while($=X.length){if($===1)if(X===".")break;else if(X==="/"){Y.push("/");break}else{Y.push(X);break}else if($===2){if(X[0]==="."){if(X[1]===".")break;else if(X[1]==="/"){X=X.slice(2);continue}}else if(X[0]==="/"){if(X[1]==="."||X[1]==="/"){Y.push("/");break}}}else if($===3){if(X==="/.."){if(Y.length!==0)Y.pop();Y.push("/");break}}if(X[0]==="."){if(X[1]==="."){if(X[2]==="/"){X=X.slice(3);continue}}else if(X[1]==="/"){X=X.slice(2);continue}}else if(X[0]==="/"){if(X[1]==="."){if(X[2]==="/"){X=X.slice(2);continue}else if(X[2]==="."){if(X[3]==="/"){if(X=X.slice(3),Y.length!==0)Y.pop();continue}}}}if((W=X.indexOf("/",1))===-1){Y.push(X);break}else Y.push(X.slice(0,W)),X=X.slice(W)}return Y.join("")}function yZ(Q,X){let Y=X!==!0?escape:unescape;if(Q.scheme!==void 0)Q.scheme=Y(Q.scheme);if(Q.userinfo!==void 0)Q.userinfo=Y(Q.userinfo);if(Q.host!==void 0)Q.host=Y(Q.host);if(Q.path!==void 0)Q.path=Y(Q.path);if(Q.query!==void 0)Q.query=Y(Q.query);if(Q.fragment!==void 0)Q.fragment=Y(Q.fragment);return Q}function gZ(Q){let X=[];if(Q.userinfo!==void 0)X.push(Q.userinfo),X.push("@");if(Q.host!==void 0){let Y=unescape(Q.host);if(!dz(Y)){let W=iz(Y);if(W.isIPV6===!0)Y=`[${W.escapedHost}]`;else Y=Q.host}X.push(Y)}if(typeof Q.port==="number"||typeof Q.port==="string")X.push(":"),X.push(String(Q.port));return X.length?X.join(""):void 0}nz.exports={nonSimpleDomain:CZ,recomposeAuthority:gZ,normalizeComponentEncoding:yZ,removeDotSegments:xZ,isIPv4:dz,isUUID:TZ,normalizeIPv6:iz,stringArrayToHexStripped:a5}});var sz=w((tm,az)=>{var{isUUID:fZ}=s5(),hZ=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,uZ=["http","https","ws","wss","urn","urn:uuid"];function lZ(Q){return uZ.indexOf(Q)!==-1}function e5(Q){if(Q.secure===!0)return!0;else if(Q.secure===!1)return!1;else if(Q.scheme)return Q.scheme.length===3&&(Q.scheme[0]==="w"||Q.scheme[0]==="W")&&(Q.scheme[1]==="s"||Q.scheme[1]==="S")&&(Q.scheme[2]==="s"||Q.scheme[2]==="S");else return!1}function oz(Q){if(!Q.host)Q.error=Q.error||"HTTP URIs must have a host.";return Q}function rz(Q){let X=String(Q.scheme).toLowerCase()==="https";if(Q.port===(X?443:80)||Q.port==="")Q.port=void 0;if(!Q.path)Q.path="/";return Q}function mZ(Q){return Q.secure=e5(Q),Q.resourceName=(Q.path||"/")+(Q.query?"?"+Q.query:""),Q.path=void 0,Q.query=void 0,Q}function cZ(Q){if(Q.port===(e5(Q)?443:80)||Q.port==="")Q.port=void 0;if(typeof Q.secure==="boolean")Q.scheme=Q.secure?"wss":"ws",Q.secure=void 0;if(Q.resourceName){let[X,Y]=Q.resourceName.split("?");Q.path=X&&X!=="/"?X:void 0,Q.query=Y,Q.resourceName=void 0}return Q.fragment=void 0,Q}function pZ(Q,X){if(!Q.path)return Q.error="URN can not be parsed",Q;let Y=Q.path.match(hZ);if(Y){let W=X.scheme||Q.scheme||"urn";Q.nid=Y[1].toLowerCase(),Q.nss=Y[2];let $=`${W}:${X.nid||Q.nid}`,J=Q$($);if(Q.path=void 0,J)Q=J.parse(Q,X)}else Q.error=Q.error||"URN can not be parsed.";return Q}function dZ(Q,X){if(Q.nid===void 0)throw Error("URN without nid cannot be serialized");let Y=X.scheme||Q.scheme||"urn",W=Q.nid.toLowerCase(),$=`${Y}:${X.nid||W}`,J=Q$($);if(J)Q=J.serialize(Q,X);let G=Q,H=Q.nss;return G.path=`${W||X.nid}:${H}`,X.skipEscape=!0,G}function iZ(Q,X){let Y=Q;if(Y.uuid=Y.nss,Y.nss=void 0,!X.tolerant&&(!Y.uuid||!fZ(Y.uuid)))Y.error=Y.error||"UUID is not valid.";return Y}function nZ(Q){let X=Q;return X.nss=(Q.uuid||"").toLowerCase(),X}var tz={scheme:"http",domainHost:!0,parse:oz,serialize:rz},oZ={scheme:"https",domainHost:tz.domainHost,parse:oz,serialize:rz},HX={scheme:"ws",domainHost:!0,parse:mZ,serialize:cZ},rZ={scheme:"wss",domainHost:HX.domainHost,parse:HX.parse,serialize:HX.serialize},tZ={scheme:"urn",parse:pZ,serialize:dZ,skipNormalize:!0},aZ={scheme:"urn:uuid",parse:iZ,serialize:nZ,skipNormalize:!0},BX={http:tz,https:oZ,ws:HX,wss:rZ,urn:tZ,"urn:uuid":aZ};Object.setPrototypeOf(BX,null);function Q$(Q){return Q&&(BX[Q]||BX[Q.toLowerCase()])||void 0}az.exports={wsIsSecure:e5,SCHEMES:BX,isValidSchemeName:lZ,getSchemeHandler:Q$}});var Y$=w((am,KX)=>{var{normalizeIPv6:sZ,removeDotSegments:G8,recomposeAuthority:eZ,normalizeComponentEncoding:zX,isIPv4:QR,nonSimpleDomain:XR}=s5(),{SCHEMES:YR,getSchemeHandler:ez}=sz();function WR(Q,X){if(typeof Q==="string")Q=c1(Y6(Q,X),X);else if(typeof Q==="object")Q=Y6(c1(Q,X),X);return Q}function $R(Q,X,Y){let W=Y?Object.assign({scheme:"null"},Y):{scheme:"null"},$=QK(Y6(Q,W),Y6(X,W),W,!0);return W.skipEscape=!0,c1($,W)}function QK(Q,X,Y,W){let $={};if(!W)Q=Y6(c1(Q,Y),Y),X=Y6(c1(X,Y),Y);if(Y=Y||{},!Y.tolerant&&X.scheme)$.scheme=X.scheme,$.userinfo=X.userinfo,$.host=X.host,$.port=X.port,$.path=G8(X.path||""),$.query=X.query;else{if(X.userinfo!==void 0||X.host!==void 0||X.port!==void 0)$.userinfo=X.userinfo,$.host=X.host,$.port=X.port,$.path=G8(X.path||""),$.query=X.query;else{if(!X.path)if($.path=Q.path,X.query!==void 0)$.query=X.query;else $.query=Q.query;else{if(X.path[0]==="/")$.path=G8(X.path);else{if((Q.userinfo!==void 0||Q.host!==void 0||Q.port!==void 0)&&!Q.path)$.path="/"+X.path;else if(!Q.path)$.path=X.path;else $.path=Q.path.slice(0,Q.path.lastIndexOf("/")+1)+X.path;$.path=G8($.path)}$.query=X.query}$.userinfo=Q.userinfo,$.host=Q.host,$.port=Q.port}$.scheme=Q.scheme}return $.fragment=X.fragment,$}function JR(Q,X,Y){if(typeof Q==="string")Q=unescape(Q),Q=c1(zX(Y6(Q,Y),!0),{...Y,skipEscape:!0});else if(typeof Q==="object")Q=c1(zX(Q,!0),{...Y,skipEscape:!0});if(typeof X==="string")X=unescape(X),X=c1(zX(Y6(X,Y),!0),{...Y,skipEscape:!0});else if(typeof X==="object")X=c1(zX(X,!0),{...Y,skipEscape:!0});return Q.toLowerCase()===X.toLowerCase()}function c1(Q,X){let Y={host:Q.host,scheme:Q.scheme,userinfo:Q.userinfo,port:Q.port,path:Q.path,query:Q.query,nid:Q.nid,nss:Q.nss,uuid:Q.uuid,fragment:Q.fragment,reference:Q.reference,resourceName:Q.resourceName,secure:Q.secure,error:""},W=Object.assign({},X),$=[],J=ez(W.scheme||Y.scheme);if(J&&J.serialize)J.serialize(Y,W);if(Y.path!==void 0)if(!W.skipEscape){if(Y.path=escape(Y.path),Y.scheme!==void 0)Y.path=Y.path.split("%3A").join(":")}else Y.path=unescape(Y.path);if(W.reference!=="suffix"&&Y.scheme)$.push(Y.scheme,":");let G=eZ(Y);if(G!==void 0){if(W.reference!=="suffix")$.push("//");if($.push(G),Y.path&&Y.path[0]!=="/")$.push("/")}if(Y.path!==void 0){let H=Y.path;if(!W.absolutePath&&(!J||!J.absolutePath))H=G8(H);if(G===void 0&&H[0]==="/"&&H[1]==="/")H="/%2F"+H.slice(2);$.push(H)}if(Y.query!==void 0)$.push("?",Y.query);if(Y.fragment!==void 0)$.push("#",Y.fragment);return $.join("")}var GR=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Y6(Q,X){let Y=Object.assign({},X),W={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},$=!1;if(Y.reference==="suffix")if(Y.scheme)Q=Y.scheme+":"+Q;else Q="//"+Q;let J=Q.match(GR);if(J){if(W.scheme=J[1],W.userinfo=J[3],W.host=J[4],W.port=parseInt(J[5],10),W.path=J[6]||"",W.query=J[7],W.fragment=J[8],isNaN(W.port))W.port=J[5];if(W.host)if(QR(W.host)===!1){let B=sZ(W.host);W.host=B.host.toLowerCase(),$=B.isIPV6}else $=!0;if(W.scheme===void 0&&W.userinfo===void 0&&W.host===void 0&&W.port===void 0&&W.query===void 0&&!W.path)W.reference="same-document";else if(W.scheme===void 0)W.reference="relative";else if(W.fragment===void 0)W.reference="absolute";else W.reference="uri";if(Y.reference&&Y.reference!=="suffix"&&Y.reference!==W.reference)W.error=W.error||"URI is not a "+Y.reference+" reference.";let G=ez(Y.scheme||W.scheme);if(!Y.unicodeSupport&&(!G||!G.unicodeSupport)){if(W.host&&(Y.domainHost||G&&G.domainHost)&&$===!1&&XR(W.host))try{W.host=URL.domainToASCII(W.host.toLowerCase())}catch(H){W.error=W.error||"Host's domain name can not be converted to ASCII: "+H}}if(!G||G&&!G.skipNormalize){if(Q.indexOf("%")!==-1){if(W.scheme!==void 0)W.scheme=unescape(W.scheme);if(W.host!==void 0)W.host=unescape(W.host)}if(W.path)W.path=escape(unescape(W.path));if(W.fragment)W.fragment=encodeURI(decodeURIComponent(W.fragment))}if(G&&G.parse)G.parse(W,Y)}else W.error=W.error||"URI can not be parsed.";return W}var X$={SCHEMES:YR,normalize:WR,resolve:$R,resolveComponent:QK,equal:JR,serialize:c1,parse:Y6};KX.exports=X$;KX.exports.default=X$;KX.exports.fastUri=X$});var WK=w((YK)=>{Object.defineProperty(YK,"__esModule",{value:!0});var XK=Y$();XK.code='require("ajv/dist/runtime/uri").default';YK.default=XK});var FK=w((W6)=>{Object.defineProperty(W6,"__esModule",{value:!0});W6.CodeGen=W6.Name=W6.nil=W6.stringify=W6.str=W6._=W6.KeywordCxt=void 0;var BR=W8();Object.defineProperty(W6,"KeywordCxt",{enumerable:!0,get:function(){return BR.KeywordCxt}});var c9=o();Object.defineProperty(W6,"_",{enumerable:!0,get:function(){return c9._}});Object.defineProperty(W6,"str",{enumerable:!0,get:function(){return c9.str}});Object.defineProperty(W6,"stringify",{enumerable:!0,get:function(){return c9.stringify}});Object.defineProperty(W6,"nil",{enumerable:!0,get:function(){return c9.nil}});Object.defineProperty(W6,"Name",{enumerable:!0,get:function(){return c9.Name}});Object.defineProperty(W6,"CodeGen",{enumerable:!0,get:function(){return c9.CodeGen}});var zR=$X(),BK=$8(),KR=x5(),H8=GX(),FR=o(),B8=Q8(),FX=s4(),$$=Y0(),$K=cz(),VR=WK(),zK=(Q,X)=>new RegExp(Q,X);zK.code="new RegExp";var qR=["removeAdditional","useDefaults","coerceTypes"],AR=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),DR={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."},LR={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},JK=200;function OR(Q){var X,Y,W,$,J,G,H,B,z,K,F,D,V,A,q,L,O,M,N,C,Z,K0,b0,y1,g6;let L1=Q.strict,f6=(X=Q.code)===null||X===void 0?void 0:X.optimize,z4=f6===!0||f6===void 0?1:f6||0,K4=(W=(Y=Q.code)===null||Y===void 0?void 0:Y.regExp)!==null&&W!==void 0?W:zK,EY=($=Q.uriResolver)!==null&&$!==void 0?$:VR.default;return{strictSchema:(G=(J=Q.strictSchema)!==null&&J!==void 0?J:L1)!==null&&G!==void 0?G:!0,strictNumbers:(B=(H=Q.strictNumbers)!==null&&H!==void 0?H:L1)!==null&&B!==void 0?B:!0,strictTypes:(K=(z=Q.strictTypes)!==null&&z!==void 0?z:L1)!==null&&K!==void 0?K:"log",strictTuples:(D=(F=Q.strictTuples)!==null&&F!==void 0?F:L1)!==null&&D!==void 0?D:"log",strictRequired:(A=(V=Q.strictRequired)!==null&&V!==void 0?V:L1)!==null&&A!==void 0?A:!1,code:Q.code?{...Q.code,optimize:z4,regExp:K4}:{optimize:z4,regExp:K4},loopRequired:(q=Q.loopRequired)!==null&&q!==void 0?q:JK,loopEnum:(L=Q.loopEnum)!==null&&L!==void 0?L:JK,meta:(O=Q.meta)!==null&&O!==void 0?O:!0,messages:(M=Q.messages)!==null&&M!==void 0?M:!0,inlineRefs:(N=Q.inlineRefs)!==null&&N!==void 0?N:!0,schemaId:(C=Q.schemaId)!==null&&C!==void 0?C:"$id",addUsedSchema:(Z=Q.addUsedSchema)!==null&&Z!==void 0?Z:!0,validateSchema:(K0=Q.validateSchema)!==null&&K0!==void 0?K0:!0,validateFormats:(b0=Q.validateFormats)!==null&&b0!==void 0?b0:!0,unicodeRegExp:(y1=Q.unicodeRegExp)!==null&&y1!==void 0?y1:!0,int32range:(g6=Q.int32range)!==null&&g6!==void 0?g6:!0,uriResolver:EY}}class VX{constructor(Q={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,Q=this.opts={...Q,...OR(Q)};let{es5:X,lines:Y}=this.opts.code;this.scope=new FR.ValueScope({scope:{},prefixes:AR,es5:X,lines:Y}),this.logger=bR(Q.logger);let W=Q.validateFormats;if(Q.validateFormats=!1,this.RULES=(0,KR.getRules)(),GK.call(this,DR,Q,"NOT SUPPORTED"),GK.call(this,LR,Q,"DEPRECATED","warn"),this._metaOpts=MR.call(this),Q.formats)jR.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),Q.keywords)wR.call(this,Q.keywords);if(typeof Q.meta=="object")this.addMetaSchema(Q.meta);UR.call(this),Q.validateFormats=W}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:Q,meta:X,schemaId:Y}=this.opts,W=$K;if(Y==="id")W={...$K},W.id=W.$id,delete W.$id;if(X&&Q)this.addMetaSchema(W,W[Y],!1)}defaultMeta(){let{meta:Q,schemaId:X}=this.opts;return this.opts.defaultMeta=typeof Q=="object"?Q[X]||Q:void 0}validate(Q,X){let Y;if(typeof Q=="string"){if(Y=this.getSchema(Q),!Y)throw Error(`no schema with key or ref "${Q}"`)}else Y=this.compile(Q);let W=Y(X);if(!("$async"in Y))this.errors=Y.errors;return W}compile(Q,X){let Y=this._addSchema(Q,X);return Y.validate||this._compileSchemaEnv(Y)}compileAsync(Q,X){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:Y}=this.opts;return W.call(this,Q,X);async function W(z,K){await $.call(this,z.$schema);let F=this._addSchema(z,K);return F.validate||J.call(this,F)}async function $(z){if(z&&!this.getSchema(z))await W.call(this,{$ref:z},!0)}async function J(z){try{return this._compileSchemaEnv(z)}catch(K){if(!(K instanceof BK.default))throw K;return G.call(this,K),await H.call(this,K.missingSchema),J.call(this,z)}}function G({missingSchema:z,missingRef:K}){if(this.refs[z])throw Error(`AnySchema ${z} is loaded but ${K} cannot be resolved`)}async function H(z){let K=await B.call(this,z);if(!this.refs[z])await $.call(this,K.$schema);if(!this.refs[z])this.addSchema(K,z,X)}async function B(z){let K=this._loading[z];if(K)return K;try{return await(this._loading[z]=Y(z))}finally{delete this._loading[z]}}}addSchema(Q,X,Y,W=this.opts.validateSchema){if(Array.isArray(Q)){for(let J of Q)this.addSchema(J,void 0,Y,W);return this}let $;if(typeof Q==="object"){let{schemaId:J}=this.opts;if($=Q[J],$!==void 0&&typeof $!="string")throw Error(`schema ${J} must be string`)}return X=(0,B8.normalizeId)(X||$),this._checkUnique(X),this.schemas[X]=this._addSchema(Q,Y,X,W,!0),this}addMetaSchema(Q,X,Y=this.opts.validateSchema){return this.addSchema(Q,X,!0,Y),this}validateSchema(Q,X){if(typeof Q=="boolean")return!0;let Y;if(Y=Q.$schema,Y!==void 0&&typeof Y!="string")throw Error("$schema must be a string");if(Y=Y||this.opts.defaultMeta||this.defaultMeta(),!Y)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let W=this.validate(Y,Q);if(!W&&X){let $="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error($);else throw Error($)}return W}getSchema(Q){let X;while(typeof(X=HK.call(this,Q))=="string")Q=X;if(X===void 0){let{schemaId:Y}=this.opts,W=new H8.SchemaEnv({schema:{},schemaId:Y});if(X=H8.resolveSchema.call(this,W,Q),!X)return;this.refs[Q]=X}return X.validate||this._compileSchemaEnv(X)}removeSchema(Q){if(Q instanceof RegExp)return this._removeAllSchemas(this.schemas,Q),this._removeAllSchemas(this.refs,Q),this;switch(typeof Q){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let X=HK.call(this,Q);if(typeof X=="object")this._cache.delete(X.schema);return delete this.schemas[Q],delete this.refs[Q],this}case"object":{let X=Q;this._cache.delete(X);let Y=Q[this.opts.schemaId];if(Y)Y=(0,B8.normalizeId)(Y),delete this.schemas[Y],delete this.refs[Y];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(Q){for(let X of Q)this.addKeyword(X);return this}addKeyword(Q,X){let Y;if(typeof Q=="string"){if(Y=Q,typeof X=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),X.keyword=Y}else if(typeof Q=="object"&&X===void 0){if(X=Q,Y=X.keyword,Array.isArray(Y)&&!Y.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(ZR.call(this,Y,X),!X)return(0,$$.eachItem)(Y,($)=>W$.call(this,$)),this;ER.call(this,X);let W={...X,type:(0,FX.getJSONTypes)(X.type),schemaType:(0,FX.getJSONTypes)(X.schemaType)};return(0,$$.eachItem)(Y,W.type.length===0?($)=>W$.call(this,$,W):($)=>W.type.forEach((J)=>W$.call(this,$,W,J))),this}getKeyword(Q){let X=this.RULES.all[Q];return typeof X=="object"?X.definition:!!X}removeKeyword(Q){let{RULES:X}=this;delete X.keywords[Q],delete X.all[Q];for(let Y of X.rules){let W=Y.rules.findIndex(($)=>$.keyword===Q);if(W>=0)Y.rules.splice(W,1)}return this}addFormat(Q,X){if(typeof X=="string")X=new RegExp(X);return this.formats[Q]=X,this}errorsText(Q=this.errors,{separator:X=", ",dataVar:Y="data"}={}){if(!Q||Q.length===0)return"No errors";return Q.map((W)=>`${Y}${W.instancePath} ${W.message}`).reduce((W,$)=>W+X+$)}$dataMetaSchema(Q,X){let Y=this.RULES.all;Q=JSON.parse(JSON.stringify(Q));for(let W of X){let $=W.split("/").slice(1),J=Q;for(let G of $)J=J[G];for(let G in Y){let H=Y[G];if(typeof H!="object")continue;let{$data:B}=H.definition,z=J[G];if(B&&z)J[G]=KK(z)}}return Q}_removeAllSchemas(Q,X){for(let Y in Q){let W=Q[Y];if(!X||X.test(Y)){if(typeof W=="string")delete Q[Y];else if(W&&!W.meta)this._cache.delete(W.schema),delete Q[Y]}}}_addSchema(Q,X,Y,W=this.opts.validateSchema,$=this.opts.addUsedSchema){let J,{schemaId:G}=this.opts;if(typeof Q=="object")J=Q[G];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof Q!="boolean")throw Error("schema must be object or boolean");let H=this._cache.get(Q);if(H!==void 0)return H;Y=(0,B8.normalizeId)(J||Y);let B=B8.getSchemaRefs.call(this,Q,Y);if(H=new H8.SchemaEnv({schema:Q,schemaId:G,meta:X,baseId:Y,localRefs:B}),this._cache.set(H.schema,H),$&&!Y.startsWith("#")){if(Y)this._checkUnique(Y);this.refs[Y]=H}if(W)this.validateSchema(Q,!0);return H}_checkUnique(Q){if(this.schemas[Q]||this.refs[Q])throw Error(`schema with key or id "${Q}" already exists`)}_compileSchemaEnv(Q){if(Q.meta)this._compileMetaSchema(Q);else H8.compileSchema.call(this,Q);if(!Q.validate)throw Error("ajv implementation error");return Q.validate}_compileMetaSchema(Q){let X=this.opts;this.opts=this._metaOpts;try{H8.compileSchema.call(this,Q)}finally{this.opts=X}}}VX.ValidationError=zR.default;VX.MissingRefError=BK.default;W6.default=VX;function GK(Q,X,Y,W="error"){for(let $ in Q){let J=$;if(J in X)this.logger[W](`${Y}: option ${$}. ${Q[J]}`)}}function HK(Q){return Q=(0,B8.normalizeId)(Q),this.schemas[Q]||this.refs[Q]}function UR(){let Q=this.opts.schemas;if(!Q)return;if(Array.isArray(Q))this.addSchema(Q);else for(let X in Q)this.addSchema(Q[X],X)}function jR(){for(let Q in this.opts.formats){let X=this.opts.formats[Q];if(X)this.addFormat(Q,X)}}function wR(Q){if(Array.isArray(Q)){this.addVocabulary(Q);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let X in Q){let Y=Q[X];if(!Y.keyword)Y.keyword=X;this.addKeyword(Y)}}function MR(){let Q={...this.opts};for(let X of qR)delete Q[X];return Q}var NR={log(){},warn(){},error(){}};function bR(Q){if(Q===!1)return NR;if(Q===void 0)return console;if(Q.log&&Q.warn&&Q.error)return Q;throw Error("logger must implement log, warn and error methods")}var PR=/^[a-z_$][a-z0-9_$:-]*$/i;function ZR(Q,X){let{RULES:Y}=this;if((0,$$.eachItem)(Q,(W)=>{if(Y.keywords[W])throw Error(`Keyword ${W} is already defined`);if(!PR.test(W))throw Error(`Keyword ${W} has invalid name`)}),!X)return;if(X.$data&&!(("code"in X)||("validate"in X)))throw Error('$data keyword must have "code" or "validate" function')}function W$(Q,X,Y){var W;let $=X===null||X===void 0?void 0:X.post;if(Y&&$)throw Error('keyword with "post" flag cannot have "type"');let{RULES:J}=this,G=$?J.post:J.rules.find(({type:B})=>B===Y);if(!G)G={type:Y,rules:[]},J.rules.push(G);if(J.keywords[Q]=!0,!X)return;let H={keyword:Q,definition:{...X,type:(0,FX.getJSONTypes)(X.type),schemaType:(0,FX.getJSONTypes)(X.schemaType)}};if(X.before)RR.call(this,G,H,X.before);else G.rules.push(H);J.all[Q]=H,(W=X.implements)===null||W===void 0||W.forEach((B)=>this.addKeyword(B))}function RR(Q,X,Y){let W=Q.rules.findIndex(($)=>$.keyword===Y);if(W>=0)Q.rules.splice(W,0,X);else Q.rules.push(X),this.logger.warn(`rule ${Y} is not defined`)}function ER(Q){let{metaSchema:X}=Q;if(X===void 0)return;if(Q.$data&&this.opts.$data)X=KK(X);Q.validateSchema=this.compile(X,!0)}var SR={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function KK(Q){return{anyOf:[Q,SR]}}});var qK=w((VK)=>{Object.defineProperty(VK,"__esModule",{value:!0});var CR={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};VK.default=CR});var jK=w((OK)=>{Object.defineProperty(OK,"__esModule",{value:!0});OK.callRef=OK.getValidate=void 0;var vR=$8(),AK=V1(),Y1=o(),p9=Q6(),DK=GX(),qX=Y0(),_R={keyword:"$ref",schemaType:"string",code(Q){let{gen:X,schema:Y,it:W}=Q,{baseId:$,schemaEnv:J,validateName:G,opts:H,self:B}=W,{root:z}=J;if((Y==="#"||Y==="#/")&&$===z.baseId)return F();let K=DK.resolveRef.call(B,z,$,Y);if(K===void 0)throw new vR.default(W.opts.uriResolver,$,Y);if(K instanceof DK.SchemaEnv)return D(K);return V(K);function F(){if(J===z)return AX(Q,G,J,J.$async);let A=X.scopeValue("root",{ref:z});return AX(Q,Y1._`${A}.validate`,z,z.$async)}function D(A){let q=LK(Q,A);AX(Q,q,A,A.$async)}function V(A){let q=X.scopeValue("schema",H.code.source===!0?{ref:A,code:(0,Y1.stringify)(A)}:{ref:A}),L=X.name("valid"),O=Q.subschema({schema:A,dataTypes:[],schemaPath:Y1.nil,topSchemaRef:q,errSchemaPath:Y},L);Q.mergeEvaluated(O),Q.ok(L)}}};function LK(Q,X){let{gen:Y}=Q;return X.validate?Y.scopeValue("validate",{ref:X.validate}):Y1._`${Y.scopeValue("wrapper",{ref:X})}.validate`}OK.getValidate=LK;function AX(Q,X,Y,W){let{gen:$,it:J}=Q,{allErrors:G,schemaEnv:H,opts:B}=J,z=B.passContext?p9.default.this:Y1.nil;if(W)K();else F();function K(){if(!H.$async)throw Error("async schema referenced by sync schema");let A=$.let("valid");$.try(()=>{if($.code(Y1._`await ${(0,AK.callValidateCode)(Q,X,z)}`),V(X),!G)$.assign(A,!0)},(q)=>{if($.if(Y1._`!(${q} instanceof ${J.ValidationError})`,()=>$.throw(q)),D(q),!G)$.assign(A,!1)}),Q.ok(A)}function F(){Q.result((0,AK.callValidateCode)(Q,X,z),()=>V(X),()=>D(X))}function D(A){let q=Y1._`${A}.errors`;$.assign(p9.default.vErrors,Y1._`${p9.default.vErrors} === null ? ${q} : ${p9.default.vErrors}.concat(${q})`),$.assign(p9.default.errors,Y1._`${p9.default.vErrors}.length`)}function V(A){var q;if(!J.opts.unevaluated)return;let L=(q=Y===null||Y===void 0?void 0:Y.validate)===null||q===void 0?void 0:q.evaluated;if(J.props!==!0)if(L&&!L.dynamicProps){if(L.props!==void 0)J.props=qX.mergeEvaluated.props($,L.props,J.props)}else{let O=$.var("props",Y1._`${A}.evaluated.props`);J.props=qX.mergeEvaluated.props($,O,J.props,Y1.Name)}if(J.items!==!0)if(L&&!L.dynamicItems){if(L.items!==void 0)J.items=qX.mergeEvaluated.items($,L.items,J.items)}else{let O=$.var("items",Y1._`${A}.evaluated.items`);J.items=qX.mergeEvaluated.items($,O,J.items,Y1.Name)}}}OK.callRef=AX;OK.default=_R});var MK=w((wK)=>{Object.defineProperty(wK,"__esModule",{value:!0});var gR=qK(),fR=jK(),hR=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",gR.default,fR.default];wK.default=hR});var bK=w((NK)=>{Object.defineProperty(NK,"__esModule",{value:!0});var DX=o(),R6=DX.operators,LX={maximum:{okStr:"<=",ok:R6.LTE,fail:R6.GT},minimum:{okStr:">=",ok:R6.GTE,fail:R6.LT},exclusiveMaximum:{okStr:"<",ok:R6.LT,fail:R6.GTE},exclusiveMinimum:{okStr:">",ok:R6.GT,fail:R6.LTE}},lR={message:({keyword:Q,schemaCode:X})=>DX.str`must be ${LX[Q].okStr} ${X}`,params:({keyword:Q,schemaCode:X})=>DX._`{comparison: ${LX[Q].okStr}, limit: ${X}}`},mR={keyword:Object.keys(LX),type:"number",schemaType:"number",$data:!0,error:lR,code(Q){let{keyword:X,data:Y,schemaCode:W}=Q;Q.fail$data(DX._`${Y} ${LX[X].fail} ${W} || isNaN(${Y})`)}};NK.default=mR});var ZK=w((PK)=>{Object.defineProperty(PK,"__esModule",{value:!0});var z8=o(),pR={message:({schemaCode:Q})=>z8.str`must be multiple of ${Q}`,params:({schemaCode:Q})=>z8._`{multipleOf: ${Q}}`},dR={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:pR,code(Q){let{gen:X,data:Y,schemaCode:W,it:$}=Q,J=$.opts.multipleOfPrecision,G=X.let("res"),H=J?z8._`Math.abs(Math.round(${G}) - ${G}) > 1e-${J}`:z8._`${G} !== parseInt(${G})`;Q.fail$data(z8._`(${W} === 0 || (${G} = ${Y}/${W}, ${H}))`)}};PK.default=dR});var SK=w((EK)=>{Object.defineProperty(EK,"__esModule",{value:!0});function RK(Q){let X=Q.length,Y=0,W=0,$;while(W<X)if(Y++,$=Q.charCodeAt(W++),$>=55296&&$<=56319&&W<X){if($=Q.charCodeAt(W),($&64512)===56320)W++}return Y}EK.default=RK;RK.code='require("ajv/dist/runtime/ucs2length").default'});var TK=w((IK)=>{Object.defineProperty(IK,"__esModule",{value:!0});var X9=o(),oR=Y0(),rR=SK(),tR={message({keyword:Q,schemaCode:X}){let Y=Q==="maxLength"?"more":"fewer";return X9.str`must NOT have ${Y} than ${X} characters`},params:({schemaCode:Q})=>X9._`{limit: ${Q}}`},aR={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:tR,code(Q){let{keyword:X,data:Y,schemaCode:W,it:$}=Q,J=X==="maxLength"?X9.operators.GT:X9.operators.LT,G=$.opts.unicode===!1?X9._`${Y}.length`:X9._`${(0,oR.useFunc)(Q.gen,rR.default)}(${Y})`;Q.fail$data(X9._`${G} ${J} ${W}`)}};IK.default=aR});var kK=w((CK)=>{Object.defineProperty(CK,"__esModule",{value:!0});var eR=V1(),OX=o(),QE={message:({schemaCode:Q})=>OX.str`must match pattern "${Q}"`,params:({schemaCode:Q})=>OX._`{pattern: ${Q}}`},XE={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:QE,code(Q){let{data:X,$data:Y,schema:W,schemaCode:$,it:J}=Q,G=J.opts.unicodeRegExp?"u":"",H=Y?OX._`(new RegExp(${$}, ${G}))`:(0,eR.usePattern)(Q,W);Q.fail$data(OX._`!${H}.test(${X})`)}};CK.default=XE});var _K=w((vK)=>{Object.defineProperty(vK,"__esModule",{value:!0});var K8=o(),WE={message({keyword:Q,schemaCode:X}){let Y=Q==="maxProperties"?"more":"fewer";return K8.str`must NOT have ${Y} than ${X} properties`},params:({schemaCode:Q})=>K8._`{limit: ${Q}}`},$E={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:WE,code(Q){let{keyword:X,data:Y,schemaCode:W}=Q,$=X==="maxProperties"?K8.operators.GT:K8.operators.LT;Q.fail$data(K8._`Object.keys(${Y}).length ${$} ${W}`)}};vK.default=$E});var yK=w((xK)=>{Object.defineProperty(xK,"__esModule",{value:!0});var F8=V1(),V8=o(),GE=Y0(),HE={message:({params:{missingProperty:Q}})=>V8.str`must have required property '${Q}'`,params:({params:{missingProperty:Q}})=>V8._`{missingProperty: ${Q}}`},BE={keyword:"required",type:"object",schemaType:"array",$data:!0,error:HE,code(Q){let{gen:X,schema:Y,schemaCode:W,data:$,$data:J,it:G}=Q,{opts:H}=G;if(!J&&Y.length===0)return;let B=Y.length>=H.loopRequired;if(G.allErrors)z();else K();if(H.strictRequired){let V=Q.parentSchema.properties,{definedProperties:A}=Q.it;for(let q of Y)if((V===null||V===void 0?void 0:V[q])===void 0&&!A.has(q)){let L=G.schemaEnv.baseId+G.errSchemaPath,O=`required property "${q}" is not defined at "${L}" (strictRequired)`;(0,GE.checkStrictMode)(G,O,G.opts.strictRequired)}}function z(){if(B||J)Q.block$data(V8.nil,F);else for(let V of Y)(0,F8.checkReportMissingProp)(Q,V)}function K(){let V=X.let("missing");if(B||J){let A=X.let("valid",!0);Q.block$data(A,()=>D(V,A)),Q.ok(A)}else X.if((0,F8.checkMissingProp)(Q,Y,V)),(0,F8.reportMissingProp)(Q,V),X.else()}function F(){X.forOf("prop",W,(V)=>{Q.setParams({missingProperty:V}),X.if((0,F8.noPropertyInData)(X,$,V,H.ownProperties),()=>Q.error())})}function D(V,A){Q.setParams({missingProperty:V}),X.forOf(V,W,()=>{X.assign(A,(0,F8.propertyInData)(X,$,V,H.ownProperties)),X.if((0,V8.not)(A),()=>{Q.error(),X.break()})},V8.nil)}}};xK.default=BE});var fK=w((gK)=>{Object.defineProperty(gK,"__esModule",{value:!0});var q8=o(),KE={message({keyword:Q,schemaCode:X}){let Y=Q==="maxItems"?"more":"fewer";return q8.str`must NOT have ${Y} than ${X} items`},params:({schemaCode:Q})=>q8._`{limit: ${Q}}`},FE={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:KE,code(Q){let{keyword:X,data:Y,schemaCode:W}=Q,$=X==="maxItems"?q8.operators.GT:q8.operators.LT;Q.fail$data(q8._`${Y}.length ${$} ${W}`)}};gK.default=FE});var UX=w((uK)=>{Object.defineProperty(uK,"__esModule",{value:!0});var hK=e4();hK.code='require("ajv/dist/runtime/equal").default';uK.default=hK});var mK=w((lK)=>{Object.defineProperty(lK,"__esModule",{value:!0});var J$=s4(),x0=o(),AE=Y0(),DE=UX(),LE={message:({params:{i:Q,j:X}})=>x0.str`must NOT have duplicate items (items ## ${X} and ${Q} are identical)`,params:({params:{i:Q,j:X}})=>x0._`{i: ${Q}, j: ${X}}`},OE={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:LE,code(Q){let{gen:X,data:Y,$data:W,schema:$,parentSchema:J,schemaCode:G,it:H}=Q;if(!W&&!$)return;let B=X.let("valid"),z=J.items?(0,J$.getSchemaTypes)(J.items):[];Q.block$data(B,K,x0._`${G} === false`),Q.ok(B);function K(){let A=X.let("i",x0._`${Y}.length`),q=X.let("j");Q.setParams({i:A,j:q}),X.assign(B,!0),X.if(x0._`${A} > 1`,()=>(F()?D:V)(A,q))}function F(){return z.length>0&&!z.some((A)=>A==="object"||A==="array")}function D(A,q){let L=X.name("item"),O=(0,J$.checkDataTypes)(z,L,H.opts.strictNumbers,J$.DataType.Wrong),M=X.const("indices",x0._`{}`);X.for(x0._`;${A}--;`,()=>{if(X.let(L,x0._`${Y}[${A}]`),X.if(O,x0._`continue`),z.length>1)X.if(x0._`typeof ${L} == "string"`,x0._`${L} += "_"`);X.if(x0._`typeof ${M}[${L}] == "number"`,()=>{X.assign(q,x0._`${M}[${L}]`),Q.error(),X.assign(B,!1).break()}).code(x0._`${M}[${L}] = ${A}`)})}function V(A,q){let L=(0,AE.useFunc)(X,DE.default),O=X.name("outer");X.label(O).for(x0._`;${A}--;`,()=>X.for(x0._`${q} = ${A}; ${q}--;`,()=>X.if(x0._`${L}(${Y}[${A}], ${Y}[${q}])`,()=>{Q.error(),X.assign(B,!1).break(O)})))}}};lK.default=OE});var pK=w((cK)=>{Object.defineProperty(cK,"__esModule",{value:!0});var G$=o(),jE=Y0(),wE=UX(),ME={message:"must be equal to constant",params:({schemaCode:Q})=>G$._`{allowedValue: ${Q}}`},NE={keyword:"const",$data:!0,error:ME,code(Q){let{gen:X,data:Y,$data:W,schemaCode:$,schema:J}=Q;if(W||J&&typeof J=="object")Q.fail$data(G$._`!${(0,jE.useFunc)(X,wE.default)}(${Y}, ${$})`);else Q.fail(G$._`${J} !== ${Y}`)}};cK.default=NE});var iK=w((dK)=>{Object.defineProperty(dK,"__esModule",{value:!0});var A8=o(),PE=Y0(),ZE=UX(),RE={message:"must be equal to one of the allowed values",params:({schemaCode:Q})=>A8._`{allowedValues: ${Q}}`},EE={keyword:"enum",schemaType:"array",$data:!0,error:RE,code(Q){let{gen:X,data:Y,$data:W,schema:$,schemaCode:J,it:G}=Q;if(!W&&$.length===0)throw Error("enum must have non-empty array");let H=$.length>=G.opts.loopEnum,B,z=()=>B!==null&&B!==void 0?B:B=(0,PE.useFunc)(X,ZE.default),K;if(H||W)K=X.let("valid"),Q.block$data(K,F);else{if(!Array.isArray($))throw Error("ajv implementation error");let V=X.const("vSchema",J);K=(0,A8.or)(...$.map((A,q)=>D(V,q)))}Q.pass(K);function F(){X.assign(K,!1),X.forOf("v",J,(V)=>X.if(A8._`${z()}(${Y}, ${V})`,()=>X.assign(K,!0).break()))}function D(V,A){let q=$[A];return typeof q==="object"&&q!==null?A8._`${z()}(${Y}, ${V}[${A}])`:A8._`${Y} === ${q}`}}};dK.default=EE});var oK=w((nK)=>{Object.defineProperty(nK,"__esModule",{value:!0});var IE=bK(),TE=ZK(),CE=TK(),kE=kK(),vE=_K(),_E=yK(),xE=fK(),yE=mK(),gE=pK(),fE=iK(),hE=[IE.default,TE.default,CE.default,kE.default,vE.default,_E.default,xE.default,yE.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},gE.default,fE.default];nK.default=hE});var B$=w((tK)=>{Object.defineProperty(tK,"__esModule",{value:!0});tK.validateAdditionalItems=void 0;var Y9=o(),H$=Y0(),lE={message:({params:{len:Q}})=>Y9.str`must NOT have more than ${Q} items`,params:({params:{len:Q}})=>Y9._`{limit: ${Q}}`},mE={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:lE,code(Q){let{parentSchema:X,it:Y}=Q,{items:W}=X;if(!Array.isArray(W)){(0,H$.checkStrictMode)(Y,'"additionalItems" is ignored when "items" is not an array of schemas');return}rK(Q,W)}};function rK(Q,X){let{gen:Y,schema:W,data:$,keyword:J,it:G}=Q;G.items=!0;let H=Y.const("len",Y9._`${$}.length`);if(W===!1)Q.setParams({len:X.length}),Q.pass(Y9._`${H} <= ${X.length}`);else if(typeof W=="object"&&!(0,H$.alwaysValidSchema)(G,W)){let z=Y.var("valid",Y9._`${H} <= ${X.length}`);Y.if((0,Y9.not)(z),()=>B(z)),Q.ok(z)}function B(z){Y.forRange("i",X.length,H,(K)=>{if(Q.subschema({keyword:J,dataProp:K,dataPropType:H$.Type.Num},z),!G.allErrors)Y.if((0,Y9.not)(z),()=>Y.break())})}}tK.validateAdditionalItems=rK;tK.default=mE});var z$=w((QF)=>{Object.defineProperty(QF,"__esModule",{value:!0});QF.validateTuple=void 0;var sK=o(),jX=Y0(),pE=V1(),dE={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(Q){let{schema:X,it:Y}=Q;if(Array.isArray(X))return eK(Q,"additionalItems",X);if(Y.items=!0,(0,jX.alwaysValidSchema)(Y,X))return;Q.ok((0,pE.validateArray)(Q))}};function eK(Q,X,Y=Q.schema){let{gen:W,parentSchema:$,data:J,keyword:G,it:H}=Q;if(K($),H.opts.unevaluated&&Y.length&&H.items!==!0)H.items=jX.mergeEvaluated.items(W,Y.length,H.items);let B=W.name("valid"),z=W.const("len",sK._`${J}.length`);Y.forEach((F,D)=>{if((0,jX.alwaysValidSchema)(H,F))return;W.if(sK._`${z} > ${D}`,()=>Q.subschema({keyword:G,schemaProp:D,dataProp:D},B)),Q.ok(B)});function K(F){let{opts:D,errSchemaPath:V}=H,A=Y.length,q=A===F.minItems&&(A===F.maxItems||F[X]===!1);if(D.strictTuples&&!q){let L=`"${G}" is ${A}-tuple, but minItems or maxItems/${X} are not specified or different at path "${V}"`;(0,jX.checkStrictMode)(H,L,D.strictTuples)}}}QF.validateTuple=eK;QF.default=dE});var WF=w((YF)=>{Object.defineProperty(YF,"__esModule",{value:!0});var nE=z$(),oE={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(Q)=>(0,nE.validateTuple)(Q,"items")};YF.default=oE});var GF=w((JF)=>{Object.defineProperty(JF,"__esModule",{value:!0});var $F=o(),tE=Y0(),aE=V1(),sE=B$(),eE={message:({params:{len:Q}})=>$F.str`must NOT have more than ${Q} items`,params:({params:{len:Q}})=>$F._`{limit: ${Q}}`},QS={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:eE,code(Q){let{schema:X,parentSchema:Y,it:W}=Q,{prefixItems:$}=Y;if(W.items=!0,(0,tE.alwaysValidSchema)(W,X))return;if($)(0,sE.validateAdditionalItems)(Q,$);else Q.ok((0,aE.validateArray)(Q))}};JF.default=QS});var BF=w((HF)=>{Object.defineProperty(HF,"__esModule",{value:!0});var q1=o(),wX=Y0(),YS={message:({params:{min:Q,max:X}})=>X===void 0?q1.str`must contain at least ${Q} valid item(s)`:q1.str`must contain at least ${Q} and no more than ${X} valid item(s)`,params:({params:{min:Q,max:X}})=>X===void 0?q1._`{minContains: ${Q}}`:q1._`{minContains: ${Q}, maxContains: ${X}}`},WS={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:YS,code(Q){let{gen:X,schema:Y,parentSchema:W,data:$,it:J}=Q,G,H,{minContains:B,maxContains:z}=W;if(J.opts.next)G=B===void 0?1:B,H=z;else G=1;let K=X.const("len",q1._`${$}.length`);if(Q.setParams({min:G,max:H}),H===void 0&&G===0){(0,wX.checkStrictMode)(J,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(H!==void 0&&G>H){(0,wX.checkStrictMode)(J,'"minContains" > "maxContains" is always invalid'),Q.fail();return}if((0,wX.alwaysValidSchema)(J,Y)){let q=q1._`${K} >= ${G}`;if(H!==void 0)q=q1._`${q} && ${K} <= ${H}`;Q.pass(q);return}J.items=!0;let F=X.name("valid");if(H===void 0&&G===1)V(F,()=>X.if(F,()=>X.break()));else if(G===0){if(X.let(F,!0),H!==void 0)X.if(q1._`${$}.length > 0`,D)}else X.let(F,!1),D();Q.result(F,()=>Q.reset());function D(){let q=X.name("_valid"),L=X.let("count",0);V(q,()=>X.if(q,()=>A(L)))}function V(q,L){X.forRange("i",0,K,(O)=>{Q.subschema({keyword:"contains",dataProp:O,dataPropType:wX.Type.Num,compositeRule:!0},q),L()})}function A(q){if(X.code(q1._`${q}++`),H===void 0)X.if(q1._`${q} >= ${G}`,()=>X.assign(F,!0).break());else if(X.if(q1._`${q} > ${H}`,()=>X.assign(F,!1).break()),G===1)X.assign(F,!0);else X.if(q1._`${q} >= ${G}`,()=>X.assign(F,!0))}}};HF.default=WS});var AF=w((FF)=>{Object.defineProperty(FF,"__esModule",{value:!0});FF.validateSchemaDeps=FF.validatePropertyDeps=FF.error=void 0;var K$=o(),JS=Y0(),D8=V1();FF.error={message:({params:{property:Q,depsCount:X,deps:Y}})=>{let W=X===1?"property":"properties";return K$.str`must have ${W} ${Y} when property ${Q} is present`},params:({params:{property:Q,depsCount:X,deps:Y,missingProperty:W}})=>K$._`{property: ${Q},
7
- missingProperty: ${W},
8
- depsCount: ${X},
9
- deps: ${Y}}`};var GS={keyword:"dependencies",type:"object",schemaType:"object",error:FF.error,code(Q){let[X,Y]=HS(Q);zF(Q,X),KF(Q,Y)}};function HS({schema:Q}){let X={},Y={};for(let W in Q){if(W==="__proto__")continue;let $=Array.isArray(Q[W])?X:Y;$[W]=Q[W]}return[X,Y]}function zF(Q,X=Q.schema){let{gen:Y,data:W,it:$}=Q;if(Object.keys(X).length===0)return;let J=Y.let("missing");for(let G in X){let H=X[G];if(H.length===0)continue;let B=(0,D8.propertyInData)(Y,W,G,$.opts.ownProperties);if(Q.setParams({property:G,depsCount:H.length,deps:H.join(", ")}),$.allErrors)Y.if(B,()=>{for(let z of H)(0,D8.checkReportMissingProp)(Q,z)});else Y.if(K$._`${B} && (${(0,D8.checkMissingProp)(Q,H,J)})`),(0,D8.reportMissingProp)(Q,J),Y.else()}}FF.validatePropertyDeps=zF;function KF(Q,X=Q.schema){let{gen:Y,data:W,keyword:$,it:J}=Q,G=Y.name("valid");for(let H in X){if((0,JS.alwaysValidSchema)(J,X[H]))continue;Y.if((0,D8.propertyInData)(Y,W,H,J.opts.ownProperties),()=>{let B=Q.subschema({keyword:$,schemaProp:H},G);Q.mergeValidEvaluated(B,G)},()=>Y.var(G,!0)),Q.ok(G)}}FF.validateSchemaDeps=KF;FF.default=GS});var OF=w((LF)=>{Object.defineProperty(LF,"__esModule",{value:!0});var DF=o(),KS=Y0(),FS={message:"property name must be valid",params:({params:Q})=>DF._`{propertyName: ${Q.propertyName}}`},VS={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:FS,code(Q){let{gen:X,schema:Y,data:W,it:$}=Q;if((0,KS.alwaysValidSchema)($,Y))return;let J=X.name("valid");X.forIn("key",W,(G)=>{Q.setParams({propertyName:G}),Q.subschema({keyword:"propertyNames",data:G,dataTypes:["string"],propertyName:G,compositeRule:!0},J),X.if((0,DF.not)(J),()=>{if(Q.error(!0),!$.allErrors)X.break()})}),Q.ok(J)}};LF.default=VS});var F$=w((UF)=>{Object.defineProperty(UF,"__esModule",{value:!0});var MX=V1(),I1=o(),AS=Q6(),NX=Y0(),DS={message:"must NOT have additional properties",params:({params:Q})=>I1._`{additionalProperty: ${Q.additionalProperty}}`},LS={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:DS,code(Q){let{gen:X,schema:Y,parentSchema:W,data:$,errsCount:J,it:G}=Q;if(!J)throw Error("ajv implementation error");let{allErrors:H,opts:B}=G;if(G.props=!0,B.removeAdditional!=="all"&&(0,NX.alwaysValidSchema)(G,Y))return;let z=(0,MX.allSchemaProperties)(W.properties),K=(0,MX.allSchemaProperties)(W.patternProperties);F(),Q.ok(I1._`${J} === ${AS.default.errors}`);function F(){X.forIn("key",$,(L)=>{if(!z.length&&!K.length)A(L);else X.if(D(L),()=>A(L))})}function D(L){let O;if(z.length>8){let M=(0,NX.schemaRefOrVal)(G,W.properties,"properties");O=(0,MX.isOwnProperty)(X,M,L)}else if(z.length)O=(0,I1.or)(...z.map((M)=>I1._`${L} === ${M}`));else O=I1.nil;if(K.length)O=(0,I1.or)(O,...K.map((M)=>I1._`${(0,MX.usePattern)(Q,M)}.test(${L})`));return(0,I1.not)(O)}function V(L){X.code(I1._`delete ${$}[${L}]`)}function A(L){if(B.removeAdditional==="all"||B.removeAdditional&&Y===!1){V(L);return}if(Y===!1){if(Q.setParams({additionalProperty:L}),Q.error(),!H)X.break();return}if(typeof Y=="object"&&!(0,NX.alwaysValidSchema)(G,Y)){let O=X.name("valid");if(B.removeAdditional==="failing")q(L,O,!1),X.if((0,I1.not)(O),()=>{Q.reset(),V(L)});else if(q(L,O),!H)X.if((0,I1.not)(O),()=>X.break())}}function q(L,O,M){let N={keyword:"additionalProperties",dataProp:L,dataPropType:NX.Type.Str};if(M===!1)Object.assign(N,{compositeRule:!0,createErrors:!1,allErrors:!1});Q.subschema(N,O)}}};UF.default=LS});var NF=w((MF)=>{Object.defineProperty(MF,"__esModule",{value:!0});var US=W8(),jF=V1(),V$=Y0(),wF=F$(),jS={keyword:"properties",type:"object",schemaType:"object",code(Q){let{gen:X,schema:Y,parentSchema:W,data:$,it:J}=Q;if(J.opts.removeAdditional==="all"&&W.additionalProperties===void 0)wF.default.code(new US.KeywordCxt(J,wF.default,"additionalProperties"));let G=(0,jF.allSchemaProperties)(Y);for(let F of G)J.definedProperties.add(F);if(J.opts.unevaluated&&G.length&&J.props!==!0)J.props=V$.mergeEvaluated.props(X,(0,V$.toHash)(G),J.props);let H=G.filter((F)=>!(0,V$.alwaysValidSchema)(J,Y[F]));if(H.length===0)return;let B=X.name("valid");for(let F of H){if(z(F))K(F);else{if(X.if((0,jF.propertyInData)(X,$,F,J.opts.ownProperties)),K(F),!J.allErrors)X.else().var(B,!0);X.endIf()}Q.it.definedProperties.add(F),Q.ok(B)}function z(F){return J.opts.useDefaults&&!J.compositeRule&&Y[F].default!==void 0}function K(F){Q.subschema({keyword:"properties",schemaProp:F,dataProp:F},B)}}};MF.default=jS});var EF=w((RF)=>{Object.defineProperty(RF,"__esModule",{value:!0});var bF=V1(),bX=o(),PF=Y0(),ZF=Y0(),MS={keyword:"patternProperties",type:"object",schemaType:"object",code(Q){let{gen:X,schema:Y,data:W,parentSchema:$,it:J}=Q,{opts:G}=J,H=(0,bF.allSchemaProperties)(Y),B=H.filter((q)=>(0,PF.alwaysValidSchema)(J,Y[q]));if(H.length===0||B.length===H.length&&(!J.opts.unevaluated||J.props===!0))return;let z=G.strictSchema&&!G.allowMatchingProperties&&$.properties,K=X.name("valid");if(J.props!==!0&&!(J.props instanceof bX.Name))J.props=(0,ZF.evaluatedPropsToName)(X,J.props);let{props:F}=J;D();function D(){for(let q of H){if(z)V(q);if(J.allErrors)A(q);else X.var(K,!0),A(q),X.if(K)}}function V(q){for(let L in z)if(new RegExp(q).test(L))(0,PF.checkStrictMode)(J,`property ${L} matches pattern ${q} (use allowMatchingProperties)`)}function A(q){X.forIn("key",W,(L)=>{X.if(bX._`${(0,bF.usePattern)(Q,q)}.test(${L})`,()=>{let O=B.includes(q);if(!O)Q.subschema({keyword:"patternProperties",schemaProp:q,dataProp:L,dataPropType:ZF.Type.Str},K);if(J.opts.unevaluated&&F!==!0)X.assign(bX._`${F}[${L}]`,!0);else if(!O&&!J.allErrors)X.if((0,bX.not)(K),()=>X.break())})})}}};RF.default=MS});var IF=w((SF)=>{Object.defineProperty(SF,"__esModule",{value:!0});var bS=Y0(),PS={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(Q){let{gen:X,schema:Y,it:W}=Q;if((0,bS.alwaysValidSchema)(W,Y)){Q.fail();return}let $=X.name("valid");Q.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},$),Q.failResult($,()=>Q.reset(),()=>Q.error())},error:{message:"must NOT be valid"}};SF.default=PS});var CF=w((TF)=>{Object.defineProperty(TF,"__esModule",{value:!0});var RS=V1(),ES={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:RS.validateUnion,error:{message:"must match a schema in anyOf"}};TF.default=ES});var vF=w((kF)=>{Object.defineProperty(kF,"__esModule",{value:!0});var PX=o(),IS=Y0(),TS={message:"must match exactly one schema in oneOf",params:({params:Q})=>PX._`{passingSchemas: ${Q.passing}}`},CS={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:TS,code(Q){let{gen:X,schema:Y,parentSchema:W,it:$}=Q;if(!Array.isArray(Y))throw Error("ajv implementation error");if($.opts.discriminator&&W.discriminator)return;let J=Y,G=X.let("valid",!1),H=X.let("passing",null),B=X.name("_valid");Q.setParams({passing:H}),X.block(z),Q.result(G,()=>Q.reset(),()=>Q.error(!0));function z(){J.forEach((K,F)=>{let D;if((0,IS.alwaysValidSchema)($,K))X.var(B,!0);else D=Q.subschema({keyword:"oneOf",schemaProp:F,compositeRule:!0},B);if(F>0)X.if(PX._`${B} && ${G}`).assign(G,!1).assign(H,PX._`[${H}, ${F}]`).else();X.if(B,()=>{if(X.assign(G,!0),X.assign(H,F),D)Q.mergeEvaluated(D,PX.Name)})})}}};kF.default=CS});var xF=w((_F)=>{Object.defineProperty(_F,"__esModule",{value:!0});var vS=Y0(),_S={keyword:"allOf",schemaType:"array",code(Q){let{gen:X,schema:Y,it:W}=Q;if(!Array.isArray(Y))throw Error("ajv implementation error");let $=X.name("valid");Y.forEach((J,G)=>{if((0,vS.alwaysValidSchema)(W,J))return;let H=Q.subschema({keyword:"allOf",schemaProp:G},$);Q.ok($),Q.mergeEvaluated(H)})}};_F.default=_S});var hF=w((fF)=>{Object.defineProperty(fF,"__esModule",{value:!0});var ZX=o(),gF=Y0(),yS={message:({params:Q})=>ZX.str`must match "${Q.ifClause}" schema`,params:({params:Q})=>ZX._`{failingKeyword: ${Q.ifClause}}`},gS={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:yS,code(Q){let{gen:X,parentSchema:Y,it:W}=Q;if(Y.then===void 0&&Y.else===void 0)(0,gF.checkStrictMode)(W,'"if" without "then" and "else" is ignored');let $=yF(W,"then"),J=yF(W,"else");if(!$&&!J)return;let G=X.let("valid",!0),H=X.name("_valid");if(B(),Q.reset(),$&&J){let K=X.let("ifClause");Q.setParams({ifClause:K}),X.if(H,z("then",K),z("else",K))}else if($)X.if(H,z("then"));else X.if((0,ZX.not)(H),z("else"));Q.pass(G,()=>Q.error(!0));function B(){let K=Q.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},H);Q.mergeEvaluated(K)}function z(K,F){return()=>{let D=Q.subschema({keyword:K},H);if(X.assign(G,H),Q.mergeValidEvaluated(D,G),F)X.assign(F,ZX._`${K}`);else Q.setParams({ifClause:K})}}}};function yF(Q,X){let Y=Q.schema[X];return Y!==void 0&&!(0,gF.alwaysValidSchema)(Q,Y)}fF.default=gS});var lF=w((uF)=>{Object.defineProperty(uF,"__esModule",{value:!0});var hS=Y0(),uS={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:Q,parentSchema:X,it:Y}){if(X.if===void 0)(0,hS.checkStrictMode)(Y,`"${Q}" without "if" is ignored`)}};uF.default=uS});var cF=w((mF)=>{Object.defineProperty(mF,"__esModule",{value:!0});var mS=B$(),cS=WF(),pS=z$(),dS=GF(),iS=BF(),nS=AF(),oS=OF(),rS=F$(),tS=NF(),aS=EF(),sS=IF(),eS=CF(),QI=vF(),XI=xF(),YI=hF(),WI=lF();function $I(Q=!1){let X=[sS.default,eS.default,QI.default,XI.default,YI.default,WI.default,oS.default,rS.default,nS.default,tS.default,aS.default];if(Q)X.push(cS.default,dS.default);else X.push(mS.default,pS.default);return X.push(iS.default),X}mF.default=$I});var dF=w((pF)=>{Object.defineProperty(pF,"__esModule",{value:!0});var P0=o(),GI={message:({schemaCode:Q})=>P0.str`must match format "${Q}"`,params:({schemaCode:Q})=>P0._`{format: ${Q}}`},HI={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:GI,code(Q,X){let{gen:Y,data:W,$data:$,schema:J,schemaCode:G,it:H}=Q,{opts:B,errSchemaPath:z,schemaEnv:K,self:F}=H;if(!B.validateFormats)return;if($)D();else V();function D(){let A=Y.scopeValue("formats",{ref:F.formats,code:B.code.formats}),q=Y.const("fDef",P0._`${A}[${G}]`),L=Y.let("fType"),O=Y.let("format");Y.if(P0._`typeof ${q} == "object" && !(${q} instanceof RegExp)`,()=>Y.assign(L,P0._`${q}.type || "string"`).assign(O,P0._`${q}.validate`),()=>Y.assign(L,P0._`"string"`).assign(O,q)),Q.fail$data((0,P0.or)(M(),N()));function M(){if(B.strictSchema===!1)return P0.nil;return P0._`${G} && !${O}`}function N(){let C=K.$async?P0._`(${q}.async ? await ${O}(${W}) : ${O}(${W}))`:P0._`${O}(${W})`,Z=P0._`(typeof ${O} == "function" ? ${C} : ${O}.test(${W}))`;return P0._`${O} && ${O} !== true && ${L} === ${X} && !${Z}`}}function V(){let A=F.formats[J];if(!A){M();return}if(A===!0)return;let[q,L,O]=N(A);if(q===X)Q.pass(C());function M(){if(B.strictSchema===!1){F.logger.warn(Z());return}throw Error(Z());function Z(){return`unknown format "${J}" ignored in schema at path "${z}"`}}function N(Z){let K0=Z instanceof RegExp?(0,P0.regexpCode)(Z):B.code.formats?P0._`${B.code.formats}${(0,P0.getProperty)(J)}`:void 0,b0=Y.scopeValue("formats",{key:J,ref:Z,code:K0});if(typeof Z=="object"&&!(Z instanceof RegExp))return[Z.type||"string",Z.validate,P0._`${b0}.validate`];return["string",Z,b0]}function C(){if(typeof A=="object"&&!(A instanceof RegExp)&&A.async){if(!K.$async)throw Error("async format in sync schema");return P0._`await ${O}(${W})`}return typeof L=="function"?P0._`${O}(${W})`:P0._`${O}.test(${W})`}}}};pF.default=HI});var nF=w((iF)=>{Object.defineProperty(iF,"__esModule",{value:!0});var zI=dF(),KI=[zI.default];iF.default=KI});var tF=w((oF)=>{Object.defineProperty(oF,"__esModule",{value:!0});oF.contentVocabulary=oF.metadataVocabulary=void 0;oF.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];oF.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var eF=w((sF)=>{Object.defineProperty(sF,"__esModule",{value:!0});var qI=MK(),AI=oK(),DI=cF(),LI=nF(),aF=tF(),OI=[qI.default,AI.default,(0,DI.default)(),LI.default,aF.metadataVocabulary,aF.contentVocabulary];sF.default=OI});var WV=w((XV)=>{Object.defineProperty(XV,"__esModule",{value:!0});XV.DiscrError=void 0;var QV;(function(Q){Q.Tag="tag",Q.Mapping="mapping"})(QV||(XV.DiscrError=QV={}))});var GV=w((JV)=>{Object.defineProperty(JV,"__esModule",{value:!0});var d9=o(),q$=WV(),$V=GX(),jI=$8(),wI=Y0(),MI={message:({params:{discrError:Q,tagName:X}})=>Q===q$.DiscrError.Tag?`tag "${X}" must be string`:`value of tag "${X}" must be in oneOf`,params:({params:{discrError:Q,tag:X,tagName:Y}})=>d9._`{error: ${Q}, tag: ${Y}, tagValue: ${X}}`},NI={keyword:"discriminator",type:"object",schemaType:"object",error:MI,code(Q){let{gen:X,data:Y,schema:W,parentSchema:$,it:J}=Q,{oneOf:G}=$;if(!J.opts.discriminator)throw Error("discriminator: requires discriminator option");let H=W.propertyName;if(typeof H!="string")throw Error("discriminator: requires propertyName");if(W.mapping)throw Error("discriminator: mapping is not supported");if(!G)throw Error("discriminator: requires oneOf keyword");let B=X.let("valid",!1),z=X.const("tag",d9._`${Y}${(0,d9.getProperty)(H)}`);X.if(d9._`typeof ${z} == "string"`,()=>K(),()=>Q.error(!1,{discrError:q$.DiscrError.Tag,tag:z,tagName:H})),Q.ok(B);function K(){let V=D();X.if(!1);for(let A in V)X.elseIf(d9._`${z} === ${A}`),X.assign(B,F(V[A]));X.else(),Q.error(!1,{discrError:q$.DiscrError.Mapping,tag:z,tagName:H}),X.endIf()}function F(V){let A=X.name("valid"),q=Q.subschema({keyword:"oneOf",schemaProp:V},A);return Q.mergeEvaluated(q,d9.Name),A}function D(){var V;let A={},q=O($),L=!0;for(let C=0;C<G.length;C++){let Z=G[C];if((Z===null||Z===void 0?void 0:Z.$ref)&&!(0,wI.schemaHasRulesButRef)(Z,J.self.RULES)){let b0=Z.$ref;if(Z=$V.resolveRef.call(J.self,J.schemaEnv.root,J.baseId,b0),Z instanceof $V.SchemaEnv)Z=Z.schema;if(Z===void 0)throw new jI.default(J.opts.uriResolver,J.baseId,b0)}let K0=(V=Z===null||Z===void 0?void 0:Z.properties)===null||V===void 0?void 0:V[H];if(typeof K0!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${H}"`);L=L&&(q||O(Z)),M(K0,C)}if(!L)throw Error(`discriminator: "${H}" must be required`);return A;function O({required:C}){return Array.isArray(C)&&C.includes(H)}function M(C,Z){if(C.const)N(C.const,Z);else if(C.enum)for(let K0 of C.enum)N(K0,Z);else throw Error(`discriminator: "properties/${H}" must have "const" or "enum"`)}function N(C,Z){if(typeof C!="string"||C in A)throw Error(`discriminator: "${H}" values must be unique strings`);A[C]=Z}}}};JV.default=NI});var HV=w((dc,PI)=>{PI.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 zV=w((W1,A$)=>{Object.defineProperty(W1,"__esModule",{value:!0});W1.MissingRefError=W1.ValidationError=W1.CodeGen=W1.Name=W1.nil=W1.stringify=W1.str=W1._=W1.KeywordCxt=W1.Ajv=void 0;var ZI=FK(),RI=eF(),EI=GV(),BV=HV(),SI=["/properties"],RX="http://json-schema.org/draft-07/schema";class L8 extends ZI.default{_addVocabularies(){if(super._addVocabularies(),RI.default.forEach((Q)=>this.addVocabulary(Q)),this.opts.discriminator)this.addKeyword(EI.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let Q=this.opts.$data?this.$dataMetaSchema(BV,SI):BV;this.addMetaSchema(Q,RX,!1),this.refs["http://json-schema.org/schema"]=RX}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(RX)?RX:void 0)}}W1.Ajv=L8;A$.exports=W1=L8;A$.exports.Ajv=L8;Object.defineProperty(W1,"__esModule",{value:!0});W1.default=L8;var II=W8();Object.defineProperty(W1,"KeywordCxt",{enumerable:!0,get:function(){return II.KeywordCxt}});var i9=o();Object.defineProperty(W1,"_",{enumerable:!0,get:function(){return i9._}});Object.defineProperty(W1,"str",{enumerable:!0,get:function(){return i9.str}});Object.defineProperty(W1,"stringify",{enumerable:!0,get:function(){return i9.stringify}});Object.defineProperty(W1,"nil",{enumerable:!0,get:function(){return i9.nil}});Object.defineProperty(W1,"Name",{enumerable:!0,get:function(){return i9.Name}});Object.defineProperty(W1,"CodeGen",{enumerable:!0,get:function(){return i9.CodeGen}});var TI=$X();Object.defineProperty(W1,"ValidationError",{enumerable:!0,get:function(){return TI.default}});var CI=$8();Object.defineProperty(W1,"MissingRefError",{enumerable:!0,get:function(){return CI.default}})});var jV=w((OV)=>{Object.defineProperty(OV,"__esModule",{value:!0});OV.formatNames=OV.fastFormats=OV.fullFormats=void 0;function p1(Q,X){return{validate:Q,compare:X}}OV.fullFormats={date:p1(qV,U$),time:p1(L$(!0),j$),"date-time":p1(KV(!0),DV),"iso-time":p1(L$(),AV),"iso-date-time":p1(KV(),LV),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:hI,"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:iI,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:uI,int32:{type:"number",validate:cI},int64:{type:"number",validate:pI},float:{type:"number",validate:VV},double:{type:"number",validate:VV},password:!0,binary:!0};OV.fastFormats={...OV.fullFormats,date:p1(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,U$),time:p1(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,j$),"date-time":p1(/^\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,DV),"iso-time":p1(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,AV),"iso-date-time":p1(/^\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,LV),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};OV.formatNames=Object.keys(OV.fullFormats);function _I(Q){return Q%4===0&&(Q%100!==0||Q%400===0)}var xI=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,yI=[0,31,28,31,30,31,30,31,31,30,31,30,31];function qV(Q){let X=xI.exec(Q);if(!X)return!1;let Y=+X[1],W=+X[2],$=+X[3];return W>=1&&W<=12&&$>=1&&$<=(W===2&&_I(Y)?29:yI[W])}function U$(Q,X){if(!(Q&&X))return;if(Q>X)return 1;if(Q<X)return-1;return 0}var D$=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function L$(Q){return function(Y){let W=D$.exec(Y);if(!W)return!1;let $=+W[1],J=+W[2],G=+W[3],H=W[4],B=W[5]==="-"?-1:1,z=+(W[6]||0),K=+(W[7]||0);if(z>23||K>59||Q&&!H)return!1;if($<=23&&J<=59&&G<60)return!0;let F=J-K*B,D=$-z*B-(F<0?1:0);return(D===23||D===-1)&&(F===59||F===-1)&&G<61}}function j$(Q,X){if(!(Q&&X))return;let Y=new Date("2020-01-01T"+Q).valueOf(),W=new Date("2020-01-01T"+X).valueOf();if(!(Y&&W))return;return Y-W}function AV(Q,X){if(!(Q&&X))return;let Y=D$.exec(Q),W=D$.exec(X);if(!(Y&&W))return;if(Q=Y[1]+Y[2]+Y[3],X=W[1]+W[2]+W[3],Q>X)return 1;if(Q<X)return-1;return 0}var O$=/t|\s/i;function KV(Q){let X=L$(Q);return function(W){let $=W.split(O$);return $.length===2&&qV($[0])&&X($[1])}}function DV(Q,X){if(!(Q&&X))return;let Y=new Date(Q).valueOf(),W=new Date(X).valueOf();if(!(Y&&W))return;return Y-W}function LV(Q,X){if(!(Q&&X))return;let[Y,W]=Q.split(O$),[$,J]=X.split(O$),G=U$(Y,$);if(G===void 0)return;return G||j$(W,J)}var gI=/\/|:/,fI=/^(?:[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 hI(Q){return gI.test(Q)&&fI.test(Q)}var FV=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function uI(Q){return FV.lastIndex=0,FV.test(Q)}var lI=-2147483648,mI=2147483647;function cI(Q){return Number.isInteger(Q)&&Q<=mI&&Q>=lI}function pI(Q){return Number.isInteger(Q)}function VV(){return!0}var dI=/[^\\]\\Z/;function iI(Q){if(dI.test(Q))return!1;try{return new RegExp(Q),!0}catch(X){return!1}}});var U8=w((NV)=>{Object.defineProperty(NV,"__esModule",{value:!0});NV.regexpCode=NV.getEsmExportName=NV.getProperty=NV.safeStringify=NV.stringify=NV.strConcat=NV.addCodeArg=NV.str=NV._=NV.nil=NV._Code=NV.Name=NV.IDENTIFIER=NV._CodeOrName=void 0;class EX{}NV._CodeOrName=EX;NV.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;class n9 extends EX{constructor(Q){super();if(!NV.IDENTIFIER.test(Q))throw Error("CodeGen: name must be a valid identifier");this.str=Q}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}}NV.Name=n9;class T1 extends EX{constructor(Q){super();this._items=typeof Q==="string"?[Q]:Q}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let Q=this._items[0];return Q===""||Q==='""'}get str(){var Q;return(Q=this._str)!==null&&Q!==void 0?Q:this._str=this._items.reduce((X,Y)=>`${X}${Y}`,"")}get names(){var Q;return(Q=this._names)!==null&&Q!==void 0?Q:this._names=this._items.reduce((X,Y)=>{if(Y instanceof n9)X[Y.str]=(X[Y.str]||0)+1;return X},{})}}NV._Code=T1;NV.nil=new T1("");function wV(Q,...X){let Y=[Q[0]],W=0;while(W<X.length)N$(Y,X[W]),Y.push(Q[++W]);return new T1(Y)}NV._=wV;var M$=new T1("+");function MV(Q,...X){let Y=[O8(Q[0])],W=0;while(W<X.length)Y.push(M$),N$(Y,X[W]),Y.push(M$,O8(Q[++W]));return oI(Y),new T1(Y)}NV.str=MV;function N$(Q,X){if(X instanceof T1)Q.push(...X._items);else if(X instanceof n9)Q.push(X);else Q.push(aI(X))}NV.addCodeArg=N$;function oI(Q){let X=1;while(X<Q.length-1){if(Q[X]===M$){let Y=rI(Q[X-1],Q[X+1]);if(Y!==void 0){Q.splice(X-1,3,Y);continue}Q[X++]="+"}X++}}function rI(Q,X){if(X==='""')return Q;if(Q==='""')return X;if(typeof Q=="string"){if(X instanceof n9||Q[Q.length-1]!=='"')return;if(typeof X!="string")return`${Q.slice(0,-1)}${X}"`;if(X[0]==='"')return Q.slice(0,-1)+X.slice(1);return}if(typeof X=="string"&&X[0]==='"'&&!(Q instanceof n9))return`"${Q}${X.slice(1)}`;return}function tI(Q,X){return X.emptyStr()?Q:Q.emptyStr()?X:MV`${Q}${X}`}NV.strConcat=tI;function aI(Q){return typeof Q=="number"||typeof Q=="boolean"||Q===null?Q:O8(Array.isArray(Q)?Q.join(","):Q)}function sI(Q){return new T1(O8(Q))}NV.stringify=sI;function O8(Q){return JSON.stringify(Q).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}NV.safeStringify=O8;function eI(Q){return typeof Q=="string"&&NV.IDENTIFIER.test(Q)?new T1(`.${Q}`):wV`[${Q}]`}NV.getProperty=eI;function QT(Q){if(typeof Q=="string"&&NV.IDENTIFIER.test(Q))return new T1(`${Q}`);throw Error(`CodeGen: invalid export name: ${Q}, use explicit $id name mapping`)}NV.getEsmExportName=QT;function XT(Q){return new T1(Q.toString())}NV.regexpCode=XT});var R$=w((RV)=>{Object.defineProperty(RV,"__esModule",{value:!0});RV.ValueScope=RV.ValueScopeName=RV.Scope=RV.varKinds=RV.UsedValueState=void 0;var $1=U8();class PV extends Error{constructor(Q){super(`CodeGen: "code" for ${Q} not defined`);this.value=Q.value}}var IX;(function(Q){Q[Q.Started=0]="Started",Q[Q.Completed=1]="Completed"})(IX||(RV.UsedValueState=IX={}));RV.varKinds={const:new $1.Name("const"),let:new $1.Name("let"),var:new $1.Name("var")};class P${constructor({prefixes:Q,parent:X}={}){this._names={},this._prefixes=Q,this._parent=X}toName(Q){return Q instanceof $1.Name?Q:this.name(Q)}name(Q){return new $1.Name(this._newName(Q))}_newName(Q){let X=this._names[Q]||this._nameGroup(Q);return`${Q}${X.index++}`}_nameGroup(Q){var X,Y;if(((Y=(X=this._parent)===null||X===void 0?void 0:X._prefixes)===null||Y===void 0?void 0:Y.has(Q))||this._prefixes&&!this._prefixes.has(Q))throw Error(`CodeGen: prefix "${Q}" is not allowed in this scope`);return this._names[Q]={prefix:Q,index:0}}}RV.Scope=P$;class Z$ extends $1.Name{constructor(Q,X){super(X);this.prefix=Q}setValue(Q,{property:X,itemIndex:Y}){this.value=Q,this.scopePath=$1._`.${new $1.Name(X)}[${Y}]`}}RV.ValueScopeName=Z$;var AT=$1._`\n`;class ZV extends P${constructor(Q){super(Q);this._values={},this._scope=Q.scope,this.opts={...Q,_n:Q.lines?AT:$1.nil}}get(){return this._scope}name(Q){return new Z$(Q,this._newName(Q))}value(Q,X){var Y;if(X.ref===void 0)throw Error("CodeGen: ref must be passed in value");let W=this.toName(Q),{prefix:$}=W,J=(Y=X.key)!==null&&Y!==void 0?Y:X.ref,G=this._values[$];if(G){let z=G.get(J);if(z)return z}else G=this._values[$]=new Map;G.set(J,W);let H=this._scope[$]||(this._scope[$]=[]),B=H.length;return H[B]=X.ref,W.setValue(X,{property:$,itemIndex:B}),W}getValue(Q,X){let Y=this._values[Q];if(!Y)return;return Y.get(X)}scopeRefs(Q,X=this._values){return this._reduceValues(X,(Y)=>{if(Y.scopePath===void 0)throw Error(`CodeGen: name "${Y}" has no value`);return $1._`${Q}${Y.scopePath}`})}scopeCode(Q=this._values,X,Y){return this._reduceValues(Q,(W)=>{if(W.value===void 0)throw Error(`CodeGen: name "${W}" has no value`);return W.value.code},X,Y)}_reduceValues(Q,X,Y={},W){let $=$1.nil;for(let J in Q){let G=Q[J];if(!G)continue;let H=Y[J]=Y[J]||new Map;G.forEach((B)=>{if(H.has(B))return;H.set(B,IX.Started);let z=X(B);if(z){let K=this.opts.es5?RV.varKinds.var:RV.varKinds.const;$=$1._`${$}${K} ${B} = ${z};${this.opts._n}`}else if(z=W===null||W===void 0?void 0:W(B))$=$1._`${$}${z}${this.opts._n}`;else throw new PV(B);H.set(B,IX.Completed)})}return $}}RV.ValueScope=ZV});var i=w((J1)=>{Object.defineProperty(J1,"__esModule",{value:!0});J1.or=J1.and=J1.not=J1.CodeGen=J1.operators=J1.varKinds=J1.ValueScopeName=J1.ValueScope=J1.Scope=J1.Name=J1.regexpCode=J1.stringify=J1.getProperty=J1.nil=J1.strConcat=J1.str=J1._=void 0;var e=U8(),C1=R$(),E6=U8();Object.defineProperty(J1,"_",{enumerable:!0,get:function(){return E6._}});Object.defineProperty(J1,"str",{enumerable:!0,get:function(){return E6.str}});Object.defineProperty(J1,"strConcat",{enumerable:!0,get:function(){return E6.strConcat}});Object.defineProperty(J1,"nil",{enumerable:!0,get:function(){return E6.nil}});Object.defineProperty(J1,"getProperty",{enumerable:!0,get:function(){return E6.getProperty}});Object.defineProperty(J1,"stringify",{enumerable:!0,get:function(){return E6.stringify}});Object.defineProperty(J1,"regexpCode",{enumerable:!0,get:function(){return E6.regexpCode}});Object.defineProperty(J1,"Name",{enumerable:!0,get:function(){return E6.Name}});var xX=R$();Object.defineProperty(J1,"Scope",{enumerable:!0,get:function(){return xX.Scope}});Object.defineProperty(J1,"ValueScope",{enumerable:!0,get:function(){return xX.ValueScope}});Object.defineProperty(J1,"ValueScopeName",{enumerable:!0,get:function(){return xX.ValueScopeName}});Object.defineProperty(J1,"varKinds",{enumerable:!0,get:function(){return xX.varKinds}});J1.operators={GT:new e._Code(">"),GTE:new e._Code(">="),LT:new e._Code("<"),LTE:new e._Code("<="),EQ:new e._Code("==="),NEQ:new e._Code("!=="),NOT:new e._Code("!"),OR:new e._Code("||"),AND:new e._Code("&&"),ADD:new e._Code("+")};class S6{optimizeNodes(){return this}optimizeNames(Q,X){return this}}class SV extends S6{constructor(Q,X,Y){super();this.varKind=Q,this.name=X,this.rhs=Y}render({es5:Q,_n:X}){let Y=Q?C1.varKinds.var:this.varKind,W=this.rhs===void 0?"":` = ${this.rhs}`;return`${Y} ${this.name}${W};`+X}optimizeNames(Q,X){if(!Q[this.name.str])return;if(this.rhs)this.rhs=r9(this.rhs,Q,X);return this}get names(){return this.rhs instanceof e._CodeOrName?this.rhs.names:{}}}class I$ extends S6{constructor(Q,X,Y){super();this.lhs=Q,this.rhs=X,this.sideEffects=Y}render({_n:Q}){return`${this.lhs} = ${this.rhs};`+Q}optimizeNames(Q,X){if(this.lhs instanceof e.Name&&!Q[this.lhs.str]&&!this.sideEffects)return;return this.rhs=r9(this.rhs,Q,X),this}get names(){let Q=this.lhs instanceof e.Name?{}:{...this.lhs.names};return _X(Q,this.rhs)}}class IV extends I${constructor(Q,X,Y,W){super(Q,Y,W);this.op=X}render({_n:Q}){return`${this.lhs} ${this.op}= ${this.rhs};`+Q}}class TV extends S6{constructor(Q){super();this.label=Q,this.names={}}render({_n:Q}){return`${this.label}:`+Q}}class CV extends S6{constructor(Q){super();this.label=Q,this.names={}}render({_n:Q}){return`break${this.label?` ${this.label}`:""};`+Q}}class kV extends S6{constructor(Q){super();this.error=Q}render({_n:Q}){return`throw ${this.error};`+Q}get names(){return this.error.names}}class vV extends S6{constructor(Q){super();this.code=Q}render({_n:Q}){return`${this.code};`+Q}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(Q,X){return this.code=r9(this.code,Q,X),this}get names(){return this.code instanceof e._CodeOrName?this.code.names:{}}}class yX extends S6{constructor(Q=[]){super();this.nodes=Q}render(Q){return this.nodes.reduce((X,Y)=>X+Y.render(Q),"")}optimizeNodes(){let{nodes:Q}=this,X=Q.length;while(X--){let Y=Q[X].optimizeNodes();if(Array.isArray(Y))Q.splice(X,1,...Y);else if(Y)Q[X]=Y;else Q.splice(X,1)}return Q.length>0?this:void 0}optimizeNames(Q,X){let{nodes:Y}=this,W=Y.length;while(W--){let $=Y[W];if($.optimizeNames(Q,X))continue;UT(Q,$.names),Y.splice(W,1)}return Y.length>0?this:void 0}get names(){return this.nodes.reduce((Q,X)=>W9(Q,X.names),{})}}class I6 extends yX{render(Q){return"{"+Q._n+super.render(Q)+"}"+Q._n}}class _V extends yX{}class j8 extends I6{}j8.kind="else";class $6 extends I6{constructor(Q,X){super(X);this.condition=Q}render(Q){let X=`if(${this.condition})`+super.render(Q);if(this.else)X+="else "+this.else.render(Q);return X}optimizeNodes(){super.optimizeNodes();let Q=this.condition;if(Q===!0)return this.nodes;let X=this.else;if(X){let Y=X.optimizeNodes();X=this.else=Array.isArray(Y)?new j8(Y):Y}if(X){if(Q===!1)return X instanceof $6?X:X.nodes;if(this.nodes.length)return this;return new $6(hV(Q),X instanceof $6?[X]:X.nodes)}if(Q===!1||!this.nodes.length)return;return this}optimizeNames(Q,X){var Y;if(this.else=(Y=this.else)===null||Y===void 0?void 0:Y.optimizeNames(Q,X),!(super.optimizeNames(Q,X)||this.else))return;return this.condition=r9(this.condition,Q,X),this}get names(){let Q=super.names;if(_X(Q,this.condition),this.else)W9(Q,this.else.names);return Q}}$6.kind="if";class o9 extends I6{}o9.kind="for";class xV extends o9{constructor(Q){super();this.iteration=Q}render(Q){return`for(${this.iteration})`+super.render(Q)}optimizeNames(Q,X){if(!super.optimizeNames(Q,X))return;return this.iteration=r9(this.iteration,Q,X),this}get names(){return W9(super.names,this.iteration.names)}}class yV extends o9{constructor(Q,X,Y,W){super();this.varKind=Q,this.name=X,this.from=Y,this.to=W}render(Q){let X=Q.es5?C1.varKinds.var:this.varKind,{name:Y,from:W,to:$}=this;return`for(${X} ${Y}=${W}; ${Y}<${$}; ${Y}++)`+super.render(Q)}get names(){let Q=_X(super.names,this.from);return _X(Q,this.to)}}class E$ extends o9{constructor(Q,X,Y,W){super();this.loop=Q,this.varKind=X,this.name=Y,this.iterable=W}render(Q){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(Q)}optimizeNames(Q,X){if(!super.optimizeNames(Q,X))return;return this.iterable=r9(this.iterable,Q,X),this}get names(){return W9(super.names,this.iterable.names)}}class TX extends I6{constructor(Q,X,Y){super();this.name=Q,this.args=X,this.async=Y}render(Q){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(Q)}}TX.kind="func";class CX extends yX{render(Q){return"return "+super.render(Q)}}CX.kind="return";class gV extends I6{render(Q){let X="try"+super.render(Q);if(this.catch)X+=this.catch.render(Q);if(this.finally)X+=this.finally.render(Q);return X}optimizeNodes(){var Q,X;return super.optimizeNodes(),(Q=this.catch)===null||Q===void 0||Q.optimizeNodes(),(X=this.finally)===null||X===void 0||X.optimizeNodes(),this}optimizeNames(Q,X){var Y,W;return super.optimizeNames(Q,X),(Y=this.catch)===null||Y===void 0||Y.optimizeNames(Q,X),(W=this.finally)===null||W===void 0||W.optimizeNames(Q,X),this}get names(){let Q=super.names;if(this.catch)W9(Q,this.catch.names);if(this.finally)W9(Q,this.finally.names);return Q}}class kX extends I6{constructor(Q){super();this.error=Q}render(Q){return`catch(${this.error})`+super.render(Q)}}kX.kind="catch";class vX extends I6{render(Q){return"finally"+super.render(Q)}}vX.kind="finally";class fV{constructor(Q,X={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...X,_n:X.lines?`
10
- `:""},this._extScope=Q,this._scope=new C1.Scope({parent:Q}),this._nodes=[new _V]}toString(){return this._root.render(this.opts)}name(Q){return this._scope.name(Q)}scopeName(Q){return this._extScope.name(Q)}scopeValue(Q,X){let Y=this._extScope.value(Q,X);return(this._values[Y.prefix]||(this._values[Y.prefix]=new Set)).add(Y),Y}getScopeValue(Q,X){return this._extScope.getValue(Q,X)}scopeRefs(Q){return this._extScope.scopeRefs(Q,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(Q,X,Y,W){let $=this._scope.toName(X);if(Y!==void 0&&W)this._constants[$.str]=Y;return this._leafNode(new SV(Q,$,Y)),$}const(Q,X,Y){return this._def(C1.varKinds.const,Q,X,Y)}let(Q,X,Y){return this._def(C1.varKinds.let,Q,X,Y)}var(Q,X,Y){return this._def(C1.varKinds.var,Q,X,Y)}assign(Q,X,Y){return this._leafNode(new I$(Q,X,Y))}add(Q,X){return this._leafNode(new IV(Q,J1.operators.ADD,X))}code(Q){if(typeof Q=="function")Q();else if(Q!==e.nil)this._leafNode(new vV(Q));return this}object(...Q){let X=["{"];for(let[Y,W]of Q){if(X.length>1)X.push(",");if(X.push(Y),Y!==W||this.opts.es5)X.push(":"),(0,e.addCodeArg)(X,W)}return X.push("}"),new e._Code(X)}if(Q,X,Y){if(this._blockNode(new $6(Q)),X&&Y)this.code(X).else().code(Y).endIf();else if(X)this.code(X).endIf();else if(Y)throw Error('CodeGen: "else" body without "then" body');return this}elseIf(Q){return this._elseNode(new $6(Q))}else(){return this._elseNode(new j8)}endIf(){return this._endBlockNode($6,j8)}_for(Q,X){if(this._blockNode(Q),X)this.code(X).endFor();return this}for(Q,X){return this._for(new xV(Q),X)}forRange(Q,X,Y,W,$=this.opts.es5?C1.varKinds.var:C1.varKinds.let){let J=this._scope.toName(Q);return this._for(new yV($,J,X,Y),()=>W(J))}forOf(Q,X,Y,W=C1.varKinds.const){let $=this._scope.toName(Q);if(this.opts.es5){let J=X instanceof e.Name?X:this.var("_arr",X);return this.forRange("_i",0,e._`${J}.length`,(G)=>{this.var($,e._`${J}[${G}]`),Y($)})}return this._for(new E$("of",W,$,X),()=>Y($))}forIn(Q,X,Y,W=this.opts.es5?C1.varKinds.var:C1.varKinds.const){if(this.opts.ownProperties)return this.forOf(Q,e._`Object.keys(${X})`,Y);let $=this._scope.toName(Q);return this._for(new E$("in",W,$,X),()=>Y($))}endFor(){return this._endBlockNode(o9)}label(Q){return this._leafNode(new TV(Q))}break(Q){return this._leafNode(new CV(Q))}return(Q){let X=new CX;if(this._blockNode(X),this.code(Q),X.nodes.length!==1)throw Error('CodeGen: "return" should have one node');return this._endBlockNode(CX)}try(Q,X,Y){if(!X&&!Y)throw Error('CodeGen: "try" without "catch" and "finally"');let W=new gV;if(this._blockNode(W),this.code(Q),X){let $=this.name("e");this._currNode=W.catch=new kX($),X($)}if(Y)this._currNode=W.finally=new vX,this.code(Y);return this._endBlockNode(kX,vX)}throw(Q){return this._leafNode(new kV(Q))}block(Q,X){if(this._blockStarts.push(this._nodes.length),Q)this.code(Q).endBlock(X);return this}endBlock(Q){let X=this._blockStarts.pop();if(X===void 0)throw Error("CodeGen: not in self-balancing block");let Y=this._nodes.length-X;if(Y<0||Q!==void 0&&Y!==Q)throw Error(`CodeGen: wrong number of nodes: ${Y} vs ${Q} expected`);return this._nodes.length=X,this}func(Q,X=e.nil,Y,W){if(this._blockNode(new TX(Q,X,Y)),W)this.code(W).endFunc();return this}endFunc(){return this._endBlockNode(TX)}optimize(Q=1){while(Q-- >0)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(Q){return this._currNode.nodes.push(Q),this}_blockNode(Q){this._currNode.nodes.push(Q),this._nodes.push(Q)}_endBlockNode(Q,X){let Y=this._currNode;if(Y instanceof Q||X&&Y instanceof X)return this._nodes.pop(),this;throw Error(`CodeGen: not in block "${X?`${Q.kind}/${X.kind}`:Q.kind}"`)}_elseNode(Q){let X=this._currNode;if(!(X instanceof $6))throw Error('CodeGen: "else" without "if"');return this._currNode=X.else=Q,this}get _root(){return this._nodes[0]}get _currNode(){let Q=this._nodes;return Q[Q.length-1]}set _currNode(Q){let X=this._nodes;X[X.length-1]=Q}}J1.CodeGen=fV;function W9(Q,X){for(let Y in X)Q[Y]=(Q[Y]||0)+(X[Y]||0);return Q}function _X(Q,X){return X instanceof e._CodeOrName?W9(Q,X.names):Q}function r9(Q,X,Y){if(Q instanceof e.Name)return W(Q);if(!$(Q))return Q;return new e._Code(Q._items.reduce((J,G)=>{if(G instanceof e.Name)G=W(G);if(G instanceof e._Code)J.push(...G._items);else J.push(G);return J},[]));function W(J){let G=Y[J.str];if(G===void 0||X[J.str]!==1)return J;return delete X[J.str],G}function $(J){return J instanceof e._Code&&J._items.some((G)=>G instanceof e.Name&&X[G.str]===1&&Y[G.str]!==void 0)}}function UT(Q,X){for(let Y in X)Q[Y]=(Q[Y]||0)-(X[Y]||0)}function hV(Q){return typeof Q=="boolean"||typeof Q=="number"||Q===null?!Q:e._`!${S$(Q)}`}J1.not=hV;var jT=uV(J1.operators.AND);function wT(...Q){return Q.reduce(jT)}J1.and=wT;var MT=uV(J1.operators.OR);function NT(...Q){return Q.reduce(MT)}J1.or=NT;function uV(Q){return(X,Y)=>X===e.nil?Y:Y===e.nil?X:e._`${S$(X)} ${Q} ${S$(Y)}`}function S$(Q){return Q instanceof e.Name?Q:e._`(${Q})`}});var W0=w((rV)=>{Object.defineProperty(rV,"__esModule",{value:!0});rV.checkStrictMode=rV.getErrorPath=rV.Type=rV.useFunc=rV.setEvaluated=rV.evaluatedPropsToName=rV.mergeEvaluated=rV.eachItem=rV.unescapeJsonPointer=rV.escapeJsonPointer=rV.escapeFragment=rV.unescapeFragment=rV.schemaRefOrVal=rV.schemaHasRulesButRef=rV.schemaHasRules=rV.checkUnknownRules=rV.alwaysValidSchema=rV.toHash=void 0;var z0=i(),RT=U8();function ET(Q){let X={};for(let Y of Q)X[Y]=!0;return X}rV.toHash=ET;function ST(Q,X){if(typeof X=="boolean")return X;if(Object.keys(X).length===0)return!0;return pV(Q,X),!dV(X,Q.self.RULES.all)}rV.alwaysValidSchema=ST;function pV(Q,X=Q.schema){let{opts:Y,self:W}=Q;if(!Y.strictSchema)return;if(typeof X==="boolean")return;let $=W.RULES.keywords;for(let J in X)if(!$[J])oV(Q,`unknown keyword: "${J}"`)}rV.checkUnknownRules=pV;function dV(Q,X){if(typeof Q=="boolean")return!Q;for(let Y in Q)if(X[Y])return!0;return!1}rV.schemaHasRules=dV;function IT(Q,X){if(typeof Q=="boolean")return!Q;for(let Y in Q)if(Y!=="$ref"&&X.all[Y])return!0;return!1}rV.schemaHasRulesButRef=IT;function TT({topSchemaRef:Q,schemaPath:X},Y,W,$){if(!$){if(typeof Y=="number"||typeof Y=="boolean")return Y;if(typeof Y=="string")return z0._`${Y}`}return z0._`${Q}${X}${(0,z0.getProperty)(W)}`}rV.schemaRefOrVal=TT;function CT(Q){return iV(decodeURIComponent(Q))}rV.unescapeFragment=CT;function kT(Q){return encodeURIComponent(C$(Q))}rV.escapeFragment=kT;function C$(Q){if(typeof Q=="number")return`${Q}`;return Q.replace(/~/g,"~0").replace(/\//g,"~1")}rV.escapeJsonPointer=C$;function iV(Q){return Q.replace(/~1/g,"/").replace(/~0/g,"~")}rV.unescapeJsonPointer=iV;function vT(Q,X){if(Array.isArray(Q))for(let Y of Q)X(Y);else X(Q)}rV.eachItem=vT;function mV({mergeNames:Q,mergeToName:X,mergeValues:Y,resultToName:W}){return($,J,G,H)=>{let B=G===void 0?J:G instanceof z0.Name?(J instanceof z0.Name?Q($,J,G):X($,J,G),G):J instanceof z0.Name?(X($,G,J),J):Y(J,G);return H===z0.Name&&!(B instanceof z0.Name)?W($,B):B}}rV.mergeEvaluated={props:mV({mergeNames:(Q,X,Y)=>Q.if(z0._`${Y} !== true && ${X} !== undefined`,()=>{Q.if(z0._`${X} === true`,()=>Q.assign(Y,!0),()=>Q.assign(Y,z0._`${Y} || {}`).code(z0._`Object.assign(${Y}, ${X})`))}),mergeToName:(Q,X,Y)=>Q.if(z0._`${Y} !== true`,()=>{if(X===!0)Q.assign(Y,!0);else Q.assign(Y,z0._`${Y} || {}`),k$(Q,Y,X)}),mergeValues:(Q,X)=>Q===!0?!0:{...Q,...X},resultToName:nV}),items:mV({mergeNames:(Q,X,Y)=>Q.if(z0._`${Y} !== true && ${X} !== undefined`,()=>Q.assign(Y,z0._`${X} === true ? true : ${Y} > ${X} ? ${Y} : ${X}`)),mergeToName:(Q,X,Y)=>Q.if(z0._`${Y} !== true`,()=>Q.assign(Y,X===!0?!0:z0._`${Y} > ${X} ? ${Y} : ${X}`)),mergeValues:(Q,X)=>Q===!0?!0:Math.max(Q,X),resultToName:(Q,X)=>Q.var("items",X)})};function nV(Q,X){if(X===!0)return Q.var("props",!0);let Y=Q.var("props",z0._`{}`);if(X!==void 0)k$(Q,Y,X);return Y}rV.evaluatedPropsToName=nV;function k$(Q,X,Y){Object.keys(Y).forEach((W)=>Q.assign(z0._`${X}${(0,z0.getProperty)(W)}`,!0))}rV.setEvaluated=k$;var cV={};function _T(Q,X){return Q.scopeValue("func",{ref:X,code:cV[X.code]||(cV[X.code]=new RT._Code(X.code))})}rV.useFunc=_T;var T$;(function(Q){Q[Q.Num=0]="Num",Q[Q.Str=1]="Str"})(T$||(rV.Type=T$={}));function xT(Q,X,Y){if(Q instanceof z0.Name){let W=X===T$.Num;return Y?W?z0._`"[" + ${Q} + "]"`:z0._`"['" + ${Q} + "']"`:W?z0._`"/" + ${Q}`:z0._`"/" + ${Q}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return Y?(0,z0.getProperty)(Q).toString():"/"+C$(Q)}rV.getErrorPath=xT;function oV(Q,X,Y=Q.opts.strictSchema){if(!Y)return;if(X=`strict mode: ${X}`,Y===!0)throw Error(X);Q.self.logger.warn(X)}rV.checkStrictMode=oV});var J6=w((aV)=>{Object.defineProperty(aV,"__esModule",{value:!0});var u0=i(),eT={data:new u0.Name("data"),valCxt:new u0.Name("valCxt"),instancePath:new u0.Name("instancePath"),parentData:new u0.Name("parentData"),parentDataProperty:new u0.Name("parentDataProperty"),rootData:new u0.Name("rootData"),dynamicAnchors:new u0.Name("dynamicAnchors"),vErrors:new u0.Name("vErrors"),errors:new u0.Name("errors"),this:new u0.Name("this"),self:new u0.Name("self"),scope:new u0.Name("scope"),json:new u0.Name("json"),jsonPos:new u0.Name("jsonPos"),jsonLen:new u0.Name("jsonLen"),jsonPart:new u0.Name("jsonPart")};aV.default=eT});var w8=w((Xq)=>{Object.defineProperty(Xq,"__esModule",{value:!0});Xq.extendErrors=Xq.resetErrorsCount=Xq.reportExtraError=Xq.reportError=Xq.keyword$DataError=Xq.keywordError=void 0;var X0=i(),fX=W0(),i0=J6();Xq.keywordError={message:({keyword:Q})=>X0.str`must pass "${Q}" keyword validation`};Xq.keyword$DataError={message:({keyword:Q,schemaType:X})=>X?X0.str`"${Q}" keyword must be ${X} ($data)`:X0.str`"${Q}" keyword is invalid ($data)`};function XC(Q,X=Xq.keywordError,Y,W){let{it:$}=Q,{gen:J,compositeRule:G,allErrors:H}=$,B=Qq(Q,X,Y);if(W!==null&&W!==void 0?W:G||H)sV(J,B);else eV($,X0._`[${B}]`)}Xq.reportError=XC;function YC(Q,X=Xq.keywordError,Y){let{it:W}=Q,{gen:$,compositeRule:J,allErrors:G}=W,H=Qq(Q,X,Y);if(sV($,H),!(J||G))eV(W,i0.default.vErrors)}Xq.reportExtraError=YC;function WC(Q,X){Q.assign(i0.default.errors,X),Q.if(X0._`${i0.default.vErrors} !== null`,()=>Q.if(X,()=>Q.assign(X0._`${i0.default.vErrors}.length`,X),()=>Q.assign(i0.default.vErrors,null)))}Xq.resetErrorsCount=WC;function $C({gen:Q,keyword:X,schemaValue:Y,data:W,errsCount:$,it:J}){if($===void 0)throw Error("ajv implementation error");let G=Q.name("err");Q.forRange("i",$,i0.default.errors,(H)=>{if(Q.const(G,X0._`${i0.default.vErrors}[${H}]`),Q.if(X0._`${G}.instancePath === undefined`,()=>Q.assign(X0._`${G}.instancePath`,(0,X0.strConcat)(i0.default.instancePath,J.errorPath))),Q.assign(X0._`${G}.schemaPath`,X0.str`${J.errSchemaPath}/${X}`),J.opts.verbose)Q.assign(X0._`${G}.schema`,Y),Q.assign(X0._`${G}.data`,W)})}Xq.extendErrors=$C;function sV(Q,X){let Y=Q.const("err",X);Q.if(X0._`${i0.default.vErrors} === null`,()=>Q.assign(i0.default.vErrors,X0._`[${Y}]`),X0._`${i0.default.vErrors}.push(${Y})`),Q.code(X0._`${i0.default.errors}++`)}function eV(Q,X){let{gen:Y,validateName:W,schemaEnv:$}=Q;if($.$async)Y.throw(X0._`new ${Q.ValidationError}(${X})`);else Y.assign(X0._`${W}.errors`,X),Y.return(!1)}var $9={keyword:new X0.Name("keyword"),schemaPath:new X0.Name("schemaPath"),params:new X0.Name("params"),propertyName:new X0.Name("propertyName"),message:new X0.Name("message"),schema:new X0.Name("schema"),parentSchema:new X0.Name("parentSchema")};function Qq(Q,X,Y){let{createErrors:W}=Q.it;if(W===!1)return X0._`{}`;return JC(Q,X,Y)}function JC(Q,X,Y={}){let{gen:W,it:$}=Q,J=[GC($,Y),HC(Q,Y)];return BC(Q,X,J),W.object(...J)}function GC({errorPath:Q},{instancePath:X}){let Y=X?X0.str`${Q}${(0,fX.getErrorPath)(X,fX.Type.Str)}`:Q;return[i0.default.instancePath,(0,X0.strConcat)(i0.default.instancePath,Y)]}function HC({keyword:Q,it:{errSchemaPath:X}},{schemaPath:Y,parentSchema:W}){let $=W?X:X0.str`${X}/${Q}`;if(Y)$=X0.str`${$}${(0,fX.getErrorPath)(Y,fX.Type.Str)}`;return[$9.schemaPath,$]}function BC(Q,{params:X,message:Y},W){let{keyword:$,data:J,schemaValue:G,it:H}=Q,{opts:B,propertyName:z,topSchemaRef:K,schemaPath:F}=H;if(W.push([$9.keyword,$],[$9.params,typeof X=="function"?X(Q):X||X0._`{}`]),B.messages)W.push([$9.message,typeof Y=="function"?Y(Q):Y]);if(B.verbose)W.push([$9.schema,G],[$9.parentSchema,X0._`${K}${F}`],[i0.default.data,J]);if(z)W.push([$9.propertyName,z])}});var Gq=w(($q)=>{Object.defineProperty($q,"__esModule",{value:!0});$q.boolOrEmptySchema=$q.topBoolOrEmptySchema=void 0;var qC=w8(),AC=i(),DC=J6(),LC={message:"boolean schema is false"};function OC(Q){let{gen:X,schema:Y,validateName:W}=Q;if(Y===!1)Wq(Q,!1);else if(typeof Y=="object"&&Y.$async===!0)X.return(DC.default.data);else X.assign(AC._`${W}.errors`,null),X.return(!0)}$q.topBoolOrEmptySchema=OC;function UC(Q,X){let{gen:Y,schema:W}=Q;if(W===!1)Y.var(X,!1),Wq(Q);else Y.var(X,!0)}$q.boolOrEmptySchema=UC;function Wq(Q,X){let{gen:Y,data:W}=Q,$={gen:Y,keyword:"false schema",data:W,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:Q};(0,qC.reportError)($,LC,void 0,X)}});var _$=w((Hq)=>{Object.defineProperty(Hq,"__esModule",{value:!0});Hq.getRules=Hq.isJSONType=void 0;var wC=["string","number","integer","boolean","null","object","array"],MC=new Set(wC);function NC(Q){return typeof Q=="string"&&MC.has(Q)}Hq.isJSONType=NC;function bC(){let Q={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...Q,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},Q.number,Q.string,Q.array,Q.object],post:{rules:[]},all:{},keywords:{}}}Hq.getRules=bC});var x$=w((Fq)=>{Object.defineProperty(Fq,"__esModule",{value:!0});Fq.shouldUseRule=Fq.shouldUseGroup=Fq.schemaHasRulesForType=void 0;function ZC({schema:Q,self:X},Y){let W=X.RULES.types[Y];return W&&W!==!0&&zq(Q,W)}Fq.schemaHasRulesForType=ZC;function zq(Q,X){return X.rules.some((Y)=>Kq(Q,Y))}Fq.shouldUseGroup=zq;function Kq(Q,X){var Y;return Q[X.keyword]!==void 0||((Y=X.definition.implements)===null||Y===void 0?void 0:Y.some((W)=>Q[W]!==void 0))}Fq.shouldUseRule=Kq});var M8=w((Lq)=>{Object.defineProperty(Lq,"__esModule",{value:!0});Lq.reportTypeError=Lq.checkDataTypes=Lq.checkDataType=Lq.coerceAndCheckDataType=Lq.getJSONTypes=Lq.getSchemaTypes=Lq.DataType=void 0;var SC=_$(),IC=x$(),TC=w8(),d=i(),qq=W0(),t9;(function(Q){Q[Q.Correct=0]="Correct",Q[Q.Wrong=1]="Wrong"})(t9||(Lq.DataType=t9={}));function CC(Q){let X=Aq(Q.type);if(X.includes("null")){if(Q.nullable===!1)throw Error("type: null contradicts nullable: false")}else{if(!X.length&&Q.nullable!==void 0)throw Error('"nullable" cannot be used without "type"');if(Q.nullable===!0)X.push("null")}return X}Lq.getSchemaTypes=CC;function Aq(Q){let X=Array.isArray(Q)?Q:Q?[Q]:[];if(X.every(SC.isJSONType))return X;throw Error("type must be JSONType or JSONType[]: "+X.join(","))}Lq.getJSONTypes=Aq;function kC(Q,X){let{gen:Y,data:W,opts:$}=Q,J=vC(X,$.coerceTypes),G=X.length>0&&!(J.length===0&&X.length===1&&(0,IC.schemaHasRulesForType)(Q,X[0]));if(G){let H=g$(X,W,$.strictNumbers,t9.Wrong);Y.if(H,()=>{if(J.length)_C(Q,X,J);else f$(Q)})}return G}Lq.coerceAndCheckDataType=kC;var Dq=new Set(["string","number","integer","boolean","null"]);function vC(Q,X){return X?Q.filter((Y)=>Dq.has(Y)||X==="array"&&Y==="array"):[]}function _C(Q,X,Y){let{gen:W,data:$,opts:J}=Q,G=W.let("dataType",d._`typeof ${$}`),H=W.let("coerced",d._`undefined`);if(J.coerceTypes==="array")W.if(d._`${G} == 'object' && Array.isArray(${$}) && ${$}.length == 1`,()=>W.assign($,d._`${$}[0]`).assign(G,d._`typeof ${$}`).if(g$(X,$,J.strictNumbers),()=>W.assign(H,$)));W.if(d._`${H} !== undefined`);for(let z of Y)if(Dq.has(z)||z==="array"&&J.coerceTypes==="array")B(z);W.else(),f$(Q),W.endIf(),W.if(d._`${H} !== undefined`,()=>{W.assign($,H),xC(Q,H)});function B(z){switch(z){case"string":W.elseIf(d._`${G} == "number" || ${G} == "boolean"`).assign(H,d._`"" + ${$}`).elseIf(d._`${$} === null`).assign(H,d._`""`);return;case"number":W.elseIf(d._`${G} == "boolean" || ${$} === null
11
- || (${G} == "string" && ${$} && ${$} == +${$})`).assign(H,d._`+${$}`);return;case"integer":W.elseIf(d._`${G} === "boolean" || ${$} === null
12
- || (${G} === "string" && ${$} && ${$} == +${$} && !(${$} % 1))`).assign(H,d._`+${$}`);return;case"boolean":W.elseIf(d._`${$} === "false" || ${$} === 0 || ${$} === null`).assign(H,!1).elseIf(d._`${$} === "true" || ${$} === 1`).assign(H,!0);return;case"null":W.elseIf(d._`${$} === "" || ${$} === 0 || ${$} === false`),W.assign(H,null);return;case"array":W.elseIf(d._`${G} === "string" || ${G} === "number"
13
- || ${G} === "boolean" || ${$} === null`).assign(H,d._`[${$}]`)}}}function xC({gen:Q,parentData:X,parentDataProperty:Y},W){Q.if(d._`${X} !== undefined`,()=>Q.assign(d._`${X}[${Y}]`,W))}function y$(Q,X,Y,W=t9.Correct){let $=W===t9.Correct?d.operators.EQ:d.operators.NEQ,J;switch(Q){case"null":return d._`${X} ${$} null`;case"array":J=d._`Array.isArray(${X})`;break;case"object":J=d._`${X} && typeof ${X} == "object" && !Array.isArray(${X})`;break;case"integer":J=G(d._`!(${X} % 1) && !isNaN(${X})`);break;case"number":J=G();break;default:return d._`typeof ${X} ${$} ${Q}`}return W===t9.Correct?J:(0,d.not)(J);function G(H=d.nil){return(0,d.and)(d._`typeof ${X} == "number"`,H,Y?d._`isFinite(${X})`:d.nil)}}Lq.checkDataType=y$;function g$(Q,X,Y,W){if(Q.length===1)return y$(Q[0],X,Y,W);let $,J=(0,qq.toHash)(Q);if(J.array&&J.object){let G=d._`typeof ${X} != "object"`;$=J.null?G:d._`!${X} || ${G}`,delete J.null,delete J.array,delete J.object}else $=d.nil;if(J.number)delete J.integer;for(let G in J)$=(0,d.and)($,y$(G,X,Y,W));return $}Lq.checkDataTypes=g$;var yC={message:({schema:Q})=>`must be ${Q}`,params:({schema:Q,schemaValue:X})=>typeof Q=="string"?d._`{type: ${Q}}`:d._`{type: ${X}}`};function f$(Q){let X=gC(Q);(0,TC.reportError)(X,yC)}Lq.reportTypeError=f$;function gC(Q){let{gen:X,data:Y,schema:W}=Q,$=(0,qq.schemaRefOrVal)(Q,W,"type");return{gen:X,keyword:"type",data:Y,schema:W.type,schemaCode:$,schemaValue:$,parentSchema:W,params:{},it:Q}}});var Mq=w((jq)=>{Object.defineProperty(jq,"__esModule",{value:!0});jq.assignDefaults=void 0;var a9=i(),pC=W0();function dC(Q,X){let{properties:Y,items:W}=Q.schema;if(X==="object"&&Y)for(let $ in Y)Uq(Q,$,Y[$].default);else if(X==="array"&&Array.isArray(W))W.forEach(($,J)=>Uq(Q,J,$.default))}jq.assignDefaults=dC;function Uq(Q,X,Y){let{gen:W,compositeRule:$,data:J,opts:G}=Q;if(Y===void 0)return;let H=a9._`${J}${(0,a9.getProperty)(X)}`;if($){(0,pC.checkStrictMode)(Q,`default is ignored for: ${H}`);return}let B=a9._`${H} === undefined`;if(G.useDefaults==="empty")B=a9._`${B} || ${H} === null || ${H} === ""`;W.if(B,a9._`${H} = ${(0,a9.stringify)(Y)}`)}});var A1=w((Pq)=>{Object.defineProperty(Pq,"__esModule",{value:!0});Pq.validateUnion=Pq.validateArray=Pq.usePattern=Pq.callValidateCode=Pq.schemaProperties=Pq.allSchemaProperties=Pq.noPropertyInData=Pq.propertyInData=Pq.isOwnProperty=Pq.hasPropFunc=Pq.reportMissingProp=Pq.checkMissingProp=Pq.checkReportMissingProp=void 0;var L0=i(),h$=W0(),T6=J6(),iC=W0();function nC(Q,X){let{gen:Y,data:W,it:$}=Q;Y.if(l$(Y,W,X,$.opts.ownProperties),()=>{Q.setParams({missingProperty:L0._`${X}`},!0),Q.error()})}Pq.checkReportMissingProp=nC;function oC({gen:Q,data:X,it:{opts:Y}},W,$){return(0,L0.or)(...W.map((J)=>(0,L0.and)(l$(Q,X,J,Y.ownProperties),L0._`${$} = ${J}`)))}Pq.checkMissingProp=oC;function rC(Q,X){Q.setParams({missingProperty:X},!0),Q.error()}Pq.reportMissingProp=rC;function Nq(Q){return Q.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:L0._`Object.prototype.hasOwnProperty`})}Pq.hasPropFunc=Nq;function u$(Q,X,Y){return L0._`${Nq(Q)}.call(${X}, ${Y})`}Pq.isOwnProperty=u$;function tC(Q,X,Y,W){let $=L0._`${X}${(0,L0.getProperty)(Y)} !== undefined`;return W?L0._`${$} && ${u$(Q,X,Y)}`:$}Pq.propertyInData=tC;function l$(Q,X,Y,W){let $=L0._`${X}${(0,L0.getProperty)(Y)} === undefined`;return W?(0,L0.or)($,(0,L0.not)(u$(Q,X,Y))):$}Pq.noPropertyInData=l$;function bq(Q){return Q?Object.keys(Q).filter((X)=>X!=="__proto__"):[]}Pq.allSchemaProperties=bq;function aC(Q,X){return bq(X).filter((Y)=>!(0,h$.alwaysValidSchema)(Q,X[Y]))}Pq.schemaProperties=aC;function sC({schemaCode:Q,data:X,it:{gen:Y,topSchemaRef:W,schemaPath:$,errorPath:J},it:G},H,B,z){let K=z?L0._`${Q}, ${X}, ${W}${$}`:X,F=[[T6.default.instancePath,(0,L0.strConcat)(T6.default.instancePath,J)],[T6.default.parentData,G.parentData],[T6.default.parentDataProperty,G.parentDataProperty],[T6.default.rootData,T6.default.rootData]];if(G.opts.dynamicRef)F.push([T6.default.dynamicAnchors,T6.default.dynamicAnchors]);let D=L0._`${K}, ${Y.object(...F)}`;return B!==L0.nil?L0._`${H}.call(${B}, ${D})`:L0._`${H}(${D})`}Pq.callValidateCode=sC;var eC=L0._`new RegExp`;function Q2({gen:Q,it:{opts:X}},Y){let W=X.unicodeRegExp?"u":"",{regExp:$}=X.code,J=$(Y,W);return Q.scopeValue("pattern",{key:J.toString(),ref:J,code:L0._`${$.code==="new RegExp"?eC:(0,iC.useFunc)(Q,$)}(${Y}, ${W})`})}Pq.usePattern=Q2;function X2(Q){let{gen:X,data:Y,keyword:W,it:$}=Q,J=X.name("valid");if($.allErrors){let H=X.let("valid",!0);return G(()=>X.assign(H,!1)),H}return X.var(J,!0),G(()=>X.break()),J;function G(H){let B=X.const("len",L0._`${Y}.length`);X.forRange("i",0,B,(z)=>{Q.subschema({keyword:W,dataProp:z,dataPropType:h$.Type.Num},J),X.if((0,L0.not)(J),H)})}}Pq.validateArray=X2;function Y2(Q){let{gen:X,schema:Y,keyword:W,it:$}=Q;if(!Array.isArray(Y))throw Error("ajv implementation error");if(Y.some((B)=>(0,h$.alwaysValidSchema)($,B))&&!$.opts.unevaluated)return;let G=X.let("valid",!1),H=X.name("_valid");X.block(()=>Y.forEach((B,z)=>{let K=Q.subschema({keyword:W,schemaProp:z,compositeRule:!0},H);if(X.assign(G,L0._`${G} || ${H}`),!Q.mergeValidEvaluated(K,H))X.if((0,L0.not)(G))})),Q.result(G,()=>Q.reset(),()=>Q.error(!0))}Pq.validateUnion=Y2});var Tq=w((Sq)=>{Object.defineProperty(Sq,"__esModule",{value:!0});Sq.validateKeywordUsage=Sq.validSchemaType=Sq.funcKeywordCode=Sq.macroKeywordCode=void 0;var n0=i(),J9=J6(),D2=A1(),L2=w8();function O2(Q,X){let{gen:Y,keyword:W,schema:$,parentSchema:J,it:G}=Q,H=X.macro.call(G.self,$,J,G),B=Eq(Y,W,H);if(G.opts.validateSchema!==!1)G.self.validateSchema(H,!0);let z=Y.name("valid");Q.subschema({schema:H,schemaPath:n0.nil,errSchemaPath:`${G.errSchemaPath}/${W}`,topSchemaRef:B,compositeRule:!0},z),Q.pass(z,()=>Q.error(!0))}Sq.macroKeywordCode=O2;function U2(Q,X){var Y;let{gen:W,keyword:$,schema:J,parentSchema:G,$data:H,it:B}=Q;w2(B,X);let z=!H&&X.compile?X.compile.call(B.self,J,G,B):X.validate,K=Eq(W,$,z),F=W.let("valid");Q.block$data(F,D),Q.ok((Y=X.valid)!==null&&Y!==void 0?Y:F);function D(){if(X.errors===!1){if(q(),X.modifying)Rq(Q);L(()=>Q.error())}else{let O=X.async?V():A();if(X.modifying)Rq(Q);L(()=>j2(Q,O))}}function V(){let O=W.let("ruleErrs",null);return W.try(()=>q(n0._`await `),(M)=>W.assign(F,!1).if(n0._`${M} instanceof ${B.ValidationError}`,()=>W.assign(O,n0._`${M}.errors`),()=>W.throw(M))),O}function A(){let O=n0._`${K}.errors`;return W.assign(O,null),q(n0.nil),O}function q(O=X.async?n0._`await `:n0.nil){let M=B.opts.passContext?J9.default.this:J9.default.self,N=!(("compile"in X)&&!H||X.schema===!1);W.assign(F,n0._`${O}${(0,D2.callValidateCode)(Q,K,M,N)}`,X.modifying)}function L(O){var M;W.if((0,n0.not)((M=X.valid)!==null&&M!==void 0?M:F),O)}}Sq.funcKeywordCode=U2;function Rq(Q){let{gen:X,data:Y,it:W}=Q;X.if(W.parentData,()=>X.assign(Y,n0._`${W.parentData}[${W.parentDataProperty}]`))}function j2(Q,X){let{gen:Y}=Q;Y.if(n0._`Array.isArray(${X})`,()=>{Y.assign(J9.default.vErrors,n0._`${J9.default.vErrors} === null ? ${X} : ${J9.default.vErrors}.concat(${X})`).assign(J9.default.errors,n0._`${J9.default.vErrors}.length`),(0,L2.extendErrors)(Q)},()=>Q.error())}function w2({schemaEnv:Q},X){if(X.async&&!Q.$async)throw Error("async keyword in sync schema")}function Eq(Q,X,Y){if(Y===void 0)throw Error(`keyword "${X}" failed to compile`);return Q.scopeValue("keyword",typeof Y=="function"?{ref:Y}:{ref:Y,code:(0,n0.stringify)(Y)})}function M2(Q,X,Y=!1){return!X.length||X.some((W)=>W==="array"?Array.isArray(Q):W==="object"?Q&&typeof Q=="object"&&!Array.isArray(Q):typeof Q==W||Y&&typeof Q>"u")}Sq.validSchemaType=M2;function N2({schema:Q,opts:X,self:Y,errSchemaPath:W},$,J){if(Array.isArray($.keyword)?!$.keyword.includes(J):$.keyword!==J)throw Error("ajv implementation error");let G=$.dependencies;if(G===null||G===void 0?void 0:G.some((H)=>!Object.prototype.hasOwnProperty.call(Q,H)))throw Error(`parent schema must have dependencies of ${J}: ${G.join(",")}`);if($.validateSchema){if(!$.validateSchema(Q[J])){let B=`keyword "${J}" value is invalid at path "${W}": `+Y.errorsText($.validateSchema.errors);if(X.validateSchema==="log")Y.logger.error(B);else throw Error(B)}}}Sq.validateKeywordUsage=N2});var _q=w((kq)=>{Object.defineProperty(kq,"__esModule",{value:!0});kq.extendSubschemaMode=kq.extendSubschemaData=kq.getSubschema=void 0;var d1=i(),Cq=W0();function R2(Q,{keyword:X,schemaProp:Y,schema:W,schemaPath:$,errSchemaPath:J,topSchemaRef:G}){if(X!==void 0&&W!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(X!==void 0){let H=Q.schema[X];return Y===void 0?{schema:H,schemaPath:d1._`${Q.schemaPath}${(0,d1.getProperty)(X)}`,errSchemaPath:`${Q.errSchemaPath}/${X}`}:{schema:H[Y],schemaPath:d1._`${Q.schemaPath}${(0,d1.getProperty)(X)}${(0,d1.getProperty)(Y)}`,errSchemaPath:`${Q.errSchemaPath}/${X}/${(0,Cq.escapeFragment)(Y)}`}}if(W!==void 0){if($===void 0||J===void 0||G===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:W,schemaPath:$,topSchemaRef:G,errSchemaPath:J}}throw Error('either "keyword" or "schema" must be passed')}kq.getSubschema=R2;function E2(Q,X,{dataProp:Y,dataPropType:W,data:$,dataTypes:J,propertyName:G}){if($!==void 0&&Y!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:H}=X;if(Y!==void 0){let{errorPath:z,dataPathArr:K,opts:F}=X,D=H.let("data",d1._`${X.data}${(0,d1.getProperty)(Y)}`,!0);B(D),Q.errorPath=d1.str`${z}${(0,Cq.getErrorPath)(Y,W,F.jsPropertySyntax)}`,Q.parentDataProperty=d1._`${Y}`,Q.dataPathArr=[...K,Q.parentDataProperty]}if($!==void 0){let z=$ instanceof d1.Name?$:H.let("data",$,!0);if(B(z),G!==void 0)Q.propertyName=G}if(J)Q.dataTypes=J;function B(z){Q.data=z,Q.dataLevel=X.dataLevel+1,Q.dataTypes=[],X.definedProperties=new Set,Q.parentData=X.data,Q.dataNames=[...X.dataNames,z]}}kq.extendSubschemaData=E2;function S2(Q,{jtdDiscriminator:X,jtdMetadata:Y,compositeRule:W,createErrors:$,allErrors:J}){if(W!==void 0)Q.compositeRule=W;if($!==void 0)Q.createErrors=$;if(J!==void 0)Q.allErrors=J;Q.jtdDiscriminator=X,Q.jtdMetadata=Y}kq.extendSubschemaMode=S2});var yq=w((Ep,xq)=>{var C6=xq.exports=function(Q,X,Y){if(typeof X=="function")Y=X,X={};Y=X.cb||Y;var W=typeof Y=="function"?Y:Y.pre||function(){},$=Y.post||function(){};hX(X,W,$,Q,"",Q)};C6.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};C6.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};C6.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};C6.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 hX(Q,X,Y,W,$,J,G,H,B,z){if(W&&typeof W=="object"&&!Array.isArray(W)){X(W,$,J,G,H,B,z);for(var K in W){var F=W[K];if(Array.isArray(F)){if(K in C6.arrayKeywords)for(var D=0;D<F.length;D++)hX(Q,X,Y,F[D],$+"/"+K+"/"+D,J,$,K,W,D)}else if(K in C6.propsKeywords){if(F&&typeof F=="object")for(var V in F)hX(Q,X,Y,F[V],$+"/"+K+"/"+C2(V),J,$,K,W,V)}else if(K in C6.keywords||Q.allKeys&&!(K in C6.skipKeywords))hX(Q,X,Y,F,$+"/"+K,J,$,K,W)}Y(W,$,J,G,H,B,z)}}function C2(Q){return Q.replace(/~/g,"~0").replace(/\//g,"~1")}});var N8=w((uq)=>{Object.defineProperty(uq,"__esModule",{value:!0});uq.getSchemaRefs=uq.resolveUrl=uq.normalizeId=uq._getFullPath=uq.getFullPath=uq.inlineRef=void 0;var k2=W0(),v2=e4(),_2=yq(),x2=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function y2(Q,X=!0){if(typeof Q=="boolean")return!0;if(X===!0)return!m$(Q);if(!X)return!1;return gq(Q)<=X}uq.inlineRef=y2;var g2=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function m$(Q){for(let X in Q){if(g2.has(X))return!0;let Y=Q[X];if(Array.isArray(Y)&&Y.some(m$))return!0;if(typeof Y=="object"&&m$(Y))return!0}return!1}function gq(Q){let X=0;for(let Y in Q){if(Y==="$ref")return 1/0;if(X++,x2.has(Y))continue;if(typeof Q[Y]=="object")(0,k2.eachItem)(Q[Y],(W)=>X+=gq(W));if(X===1/0)return 1/0}return X}function fq(Q,X="",Y){if(Y!==!1)X=s9(X);let W=Q.parse(X);return hq(Q,W)}uq.getFullPath=fq;function hq(Q,X){return Q.serialize(X).split("#")[0]+"#"}uq._getFullPath=hq;var f2=/#\/?$/;function s9(Q){return Q?Q.replace(f2,""):""}uq.normalizeId=s9;function h2(Q,X,Y){return Y=s9(Y),Q.resolve(X,Y)}uq.resolveUrl=h2;var u2=/^[a-z_][-a-z0-9._]*$/i;function l2(Q,X){if(typeof Q=="boolean")return{};let{schemaId:Y,uriResolver:W}=this.opts,$=s9(Q[Y]||X),J={"":$},G=fq(W,$,!1),H={},B=new Set;return _2(Q,{allKeys:!0},(F,D,V,A)=>{if(A===void 0)return;let q=G+D,L=J[A];if(typeof F[Y]=="string")L=O.call(this,F[Y]);M.call(this,F.$anchor),M.call(this,F.$dynamicAnchor),J[D]=L;function O(N){let C=this.opts.uriResolver.resolve;if(N=s9(L?C(L,N):N),B.has(N))throw K(N);B.add(N);let Z=this.refs[N];if(typeof Z=="string")Z=this.refs[Z];if(typeof Z=="object")z(F,Z.schema,N);else if(N!==s9(q))if(N[0]==="#")z(F,H[N],N),H[N]=F;else this.refs[N]=q;return N}function M(N){if(typeof N=="string"){if(!u2.test(N))throw Error(`invalid anchor "${N}"`);O.call(this,`#${N}`)}}}),H;function z(F,D,V){if(D!==void 0&&!v2(F,D))throw K(V)}function K(F){return Error(`reference "${F}" resolves to more than one schema`)}}uq.getSchemaRefs=l2});var Z8=w((YA)=>{Object.defineProperty(YA,"__esModule",{value:!0});YA.getData=YA.KeywordCxt=YA.validateFunctionCode=void 0;var iq=Gq(),mq=M8(),p$=x$(),uX=M8(),n2=Mq(),P8=Tq(),c$=_q(),y=i(),l=J6(),o2=N8(),G6=W0(),b8=w8();function r2(Q){if(rq(Q)){if(tq(Q),oq(Q)){s2(Q);return}}nq(Q,()=>(0,iq.topBoolOrEmptySchema)(Q))}YA.validateFunctionCode=r2;function nq({gen:Q,validateName:X,schema:Y,schemaEnv:W,opts:$},J){if($.code.es5)Q.func(X,y._`${l.default.data}, ${l.default.valCxt}`,W.$async,()=>{Q.code(y._`"use strict"; ${cq(Y,$)}`),a2(Q,$),Q.code(J)});else Q.func(X,y._`${l.default.data}, ${t2($)}`,W.$async,()=>Q.code(cq(Y,$)).code(J))}function t2(Q){return y._`{${l.default.instancePath}="", ${l.default.parentData}, ${l.default.parentDataProperty}, ${l.default.rootData}=${l.default.data}${Q.dynamicRef?y._`, ${l.default.dynamicAnchors}={}`:y.nil}}={}`}function a2(Q,X){Q.if(l.default.valCxt,()=>{if(Q.var(l.default.instancePath,y._`${l.default.valCxt}.${l.default.instancePath}`),Q.var(l.default.parentData,y._`${l.default.valCxt}.${l.default.parentData}`),Q.var(l.default.parentDataProperty,y._`${l.default.valCxt}.${l.default.parentDataProperty}`),Q.var(l.default.rootData,y._`${l.default.valCxt}.${l.default.rootData}`),X.dynamicRef)Q.var(l.default.dynamicAnchors,y._`${l.default.valCxt}.${l.default.dynamicAnchors}`)},()=>{if(Q.var(l.default.instancePath,y._`""`),Q.var(l.default.parentData,y._`undefined`),Q.var(l.default.parentDataProperty,y._`undefined`),Q.var(l.default.rootData,l.default.data),X.dynamicRef)Q.var(l.default.dynamicAnchors,y._`{}`)})}function s2(Q){let{schema:X,opts:Y,gen:W}=Q;nq(Q,()=>{if(Y.$comment&&X.$comment)sq(Q);if(Wk(Q),W.let(l.default.vErrors,null),W.let(l.default.errors,0),Y.unevaluated)e2(Q);aq(Q),Gk(Q)});return}function e2(Q){let{gen:X,validateName:Y}=Q;Q.evaluated=X.const("evaluated",y._`${Y}.evaluated`),X.if(y._`${Q.evaluated}.dynamicProps`,()=>X.assign(y._`${Q.evaluated}.props`,y._`undefined`)),X.if(y._`${Q.evaluated}.dynamicItems`,()=>X.assign(y._`${Q.evaluated}.items`,y._`undefined`))}function cq(Q,X){let Y=typeof Q=="object"&&Q[X.schemaId];return Y&&(X.code.source||X.code.process)?y._`/*# sourceURL=${Y} */`:y.nil}function Qk(Q,X){if(rq(Q)){if(tq(Q),oq(Q)){Xk(Q,X);return}}(0,iq.boolOrEmptySchema)(Q,X)}function oq({schema:Q,self:X}){if(typeof Q=="boolean")return!Q;for(let Y in Q)if(X.RULES.all[Y])return!0;return!1}function rq(Q){return typeof Q.schema!="boolean"}function Xk(Q,X){let{schema:Y,gen:W,opts:$}=Q;if($.$comment&&Y.$comment)sq(Q);$k(Q),Jk(Q);let J=W.const("_errs",l.default.errors);aq(Q,J),W.var(X,y._`${J} === ${l.default.errors}`)}function tq(Q){(0,G6.checkUnknownRules)(Q),Yk(Q)}function aq(Q,X){if(Q.opts.jtd)return pq(Q,[],!1,X);let Y=(0,mq.getSchemaTypes)(Q.schema),W=(0,mq.coerceAndCheckDataType)(Q,Y);pq(Q,Y,!W,X)}function Yk(Q){let{schema:X,errSchemaPath:Y,opts:W,self:$}=Q;if(X.$ref&&W.ignoreKeywordsWithRef&&(0,G6.schemaHasRulesButRef)(X,$.RULES))$.logger.warn(`$ref: keywords ignored in schema at path "${Y}"`)}function Wk(Q){let{schema:X,opts:Y}=Q;if(X.default!==void 0&&Y.useDefaults&&Y.strictSchema)(0,G6.checkStrictMode)(Q,"default is ignored in the schema root")}function $k(Q){let X=Q.schema[Q.opts.schemaId];if(X)Q.baseId=(0,o2.resolveUrl)(Q.opts.uriResolver,Q.baseId,X)}function Jk(Q){if(Q.schema.$async&&!Q.schemaEnv.$async)throw Error("async schema in sync schema")}function sq({gen:Q,schemaEnv:X,schema:Y,errSchemaPath:W,opts:$}){let J=Y.$comment;if($.$comment===!0)Q.code(y._`${l.default.self}.logger.log(${J})`);else if(typeof $.$comment=="function"){let G=y.str`${W}/$comment`,H=Q.scopeValue("root",{ref:X.root});Q.code(y._`${l.default.self}.opts.$comment(${J}, ${G}, ${H}.schema)`)}}function Gk(Q){let{gen:X,schemaEnv:Y,validateName:W,ValidationError:$,opts:J}=Q;if(Y.$async)X.if(y._`${l.default.errors} === 0`,()=>X.return(l.default.data),()=>X.throw(y._`new ${$}(${l.default.vErrors})`));else{if(X.assign(y._`${W}.errors`,l.default.vErrors),J.unevaluated)Hk(Q);X.return(y._`${l.default.errors} === 0`)}}function Hk({gen:Q,evaluated:X,props:Y,items:W}){if(Y instanceof y.Name)Q.assign(y._`${X}.props`,Y);if(W instanceof y.Name)Q.assign(y._`${X}.items`,W)}function pq(Q,X,Y,W){let{gen:$,schema:J,data:G,allErrors:H,opts:B,self:z}=Q,{RULES:K}=z;if(J.$ref&&(B.ignoreKeywordsWithRef||!(0,G6.schemaHasRulesButRef)(J,K))){$.block(()=>QA(Q,"$ref",K.all.$ref.definition));return}if(!B.jtd)Bk(Q,X);$.block(()=>{for(let D of K.rules)F(D);F(K.post)});function F(D){if(!(0,p$.shouldUseGroup)(J,D))return;if(D.type){if($.if((0,uX.checkDataType)(D.type,G,B.strictNumbers)),dq(Q,D),X.length===1&&X[0]===D.type&&Y)$.else(),(0,uX.reportTypeError)(Q);$.endIf()}else dq(Q,D);if(!H)$.if(y._`${l.default.errors} === ${W||0}`)}}function dq(Q,X){let{gen:Y,schema:W,opts:{useDefaults:$}}=Q;if($)(0,n2.assignDefaults)(Q,X.type);Y.block(()=>{for(let J of X.rules)if((0,p$.shouldUseRule)(W,J))QA(Q,J.keyword,J.definition,X.type)})}function Bk(Q,X){if(Q.schemaEnv.meta||!Q.opts.strictTypes)return;if(zk(Q,X),!Q.opts.allowUnionTypes)Kk(Q,X);Fk(Q,Q.dataTypes)}function zk(Q,X){if(!X.length)return;if(!Q.dataTypes.length){Q.dataTypes=X;return}X.forEach((Y)=>{if(!eq(Q.dataTypes,Y))d$(Q,`type "${Y}" not allowed by context "${Q.dataTypes.join(",")}"`)}),qk(Q,X)}function Kk(Q,X){if(X.length>1&&!(X.length===2&&X.includes("null")))d$(Q,"use allowUnionTypes to allow union type keyword")}function Fk(Q,X){let Y=Q.self.RULES.all;for(let W in Y){let $=Y[W];if(typeof $=="object"&&(0,p$.shouldUseRule)(Q.schema,$)){let{type:J}=$.definition;if(J.length&&!J.some((G)=>Vk(X,G)))d$(Q,`missing type "${J.join(",")}" for keyword "${W}"`)}}}function Vk(Q,X){return Q.includes(X)||X==="number"&&Q.includes("integer")}function eq(Q,X){return Q.includes(X)||X==="integer"&&Q.includes("number")}function qk(Q,X){let Y=[];for(let W of Q.dataTypes)if(eq(X,W))Y.push(W);else if(X.includes("integer")&&W==="number")Y.push("integer");Q.dataTypes=Y}function d$(Q,X){let Y=Q.schemaEnv.baseId+Q.errSchemaPath;X+=` at "${Y}" (strictTypes)`,(0,G6.checkStrictMode)(Q,X,Q.opts.strictTypes)}class i${constructor(Q,X,Y){if((0,P8.validateKeywordUsage)(Q,X,Y),this.gen=Q.gen,this.allErrors=Q.allErrors,this.keyword=Y,this.data=Q.data,this.schema=Q.schema[Y],this.$data=X.$data&&Q.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,G6.schemaRefOrVal)(Q,this.schema,Y,this.$data),this.schemaType=X.schemaType,this.parentSchema=Q.schema,this.params={},this.it=Q,this.def=X,this.$data)this.schemaCode=Q.gen.const("vSchema",XA(this.$data,Q));else if(this.schemaCode=this.schemaValue,!(0,P8.validSchemaType)(this.schema,X.schemaType,X.allowUndefined))throw Error(`${Y} value must be ${JSON.stringify(X.schemaType)}`);if("code"in X?X.trackErrors:X.errors!==!1)this.errsCount=Q.gen.const("_errs",l.default.errors)}result(Q,X,Y){this.failResult((0,y.not)(Q),X,Y)}failResult(Q,X,Y){if(this.gen.if(Q),Y)Y();else this.error();if(X){if(this.gen.else(),X(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(Q,X){this.failResult((0,y.not)(Q),void 0,X)}fail(Q){if(Q===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(Q),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(Q){if(!this.$data)return this.fail(Q);let{schemaCode:X}=this;this.fail(y._`${X} !== undefined && (${(0,y.or)(this.invalid$data(),Q)})`)}error(Q,X,Y){if(X){this.setParams(X),this._error(Q,Y),this.setParams({});return}this._error(Q,Y)}_error(Q,X){(Q?b8.reportExtraError:b8.reportError)(this,this.def.error,X)}$dataError(){(0,b8.reportError)(this,this.def.$dataError||b8.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');(0,b8.resetErrorsCount)(this.gen,this.errsCount)}ok(Q){if(!this.allErrors)this.gen.if(Q)}setParams(Q,X){if(X)Object.assign(this.params,Q);else this.params=Q}block$data(Q,X,Y=y.nil){this.gen.block(()=>{this.check$data(Q,Y),X()})}check$data(Q=y.nil,X=y.nil){if(!this.$data)return;let{gen:Y,schemaCode:W,schemaType:$,def:J}=this;if(Y.if((0,y.or)(y._`${W} === undefined`,X)),Q!==y.nil)Y.assign(Q,!0);if($.length||J.validateSchema){if(Y.elseIf(this.invalid$data()),this.$dataError(),Q!==y.nil)Y.assign(Q,!1)}Y.else()}invalid$data(){let{gen:Q,schemaCode:X,schemaType:Y,def:W,it:$}=this;return(0,y.or)(J(),G());function J(){if(Y.length){if(!(X instanceof y.Name))throw Error("ajv implementation error");let H=Array.isArray(Y)?Y:[Y];return y._`${(0,uX.checkDataTypes)(H,X,$.opts.strictNumbers,uX.DataType.Wrong)}`}return y.nil}function G(){if(W.validateSchema){let H=Q.scopeValue("validate$data",{ref:W.validateSchema});return y._`!${H}(${X})`}return y.nil}}subschema(Q,X){let Y=(0,c$.getSubschema)(this.it,Q);(0,c$.extendSubschemaData)(Y,this.it,Q),(0,c$.extendSubschemaMode)(Y,Q);let W={...this.it,...Y,items:void 0,props:void 0};return Qk(W,X),W}mergeEvaluated(Q,X){let{it:Y,gen:W}=this;if(!Y.opts.unevaluated)return;if(Y.props!==!0&&Q.props!==void 0)Y.props=G6.mergeEvaluated.props(W,Q.props,Y.props,X);if(Y.items!==!0&&Q.items!==void 0)Y.items=G6.mergeEvaluated.items(W,Q.items,Y.items,X)}mergeValidEvaluated(Q,X){let{it:Y,gen:W}=this;if(Y.opts.unevaluated&&(Y.props!==!0||Y.items!==!0))return W.if(X,()=>this.mergeEvaluated(Q,y.Name)),!0}}YA.KeywordCxt=i$;function QA(Q,X,Y,W){let $=new i$(Q,Y,X);if("code"in Y)Y.code($,W);else if($.$data&&Y.validate)(0,P8.funcKeywordCode)($,Y);else if("macro"in Y)(0,P8.macroKeywordCode)($,Y);else if(Y.compile||Y.validate)(0,P8.funcKeywordCode)($,Y)}var Ak=/^\/(?:[^~]|~0|~1)*$/,Dk=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function XA(Q,{dataLevel:X,dataNames:Y,dataPathArr:W}){let $,J;if(Q==="")return l.default.rootData;if(Q[0]==="/"){if(!Ak.test(Q))throw Error(`Invalid JSON-pointer: ${Q}`);$=Q,J=l.default.rootData}else{let z=Dk.exec(Q);if(!z)throw Error(`Invalid JSON-pointer: ${Q}`);let K=+z[1];if($=z[2],$==="#"){if(K>=X)throw Error(B("property/index",K));return W[X-K]}if(K>X)throw Error(B("data",K));if(J=Y[X-K],!$)return J}let G=J,H=$.split("/");for(let z of H)if(z)J=y._`${J}${(0,y.getProperty)((0,G6.unescapeJsonPointer)(z))}`,G=y._`${G} && ${J}`;return G;function B(z,K){return`Cannot access ${z} ${K} levels up, current level is ${X}`}}YA.getData=XA});var lX=w((JA)=>{Object.defineProperty(JA,"__esModule",{value:!0});class $A extends Error{constructor(Q){super("validation failed");this.errors=Q,this.ajv=this.validation=!0}}JA.default=$A});var R8=w((HA)=>{Object.defineProperty(HA,"__esModule",{value:!0});var n$=N8();class GA extends Error{constructor(Q,X,Y,W){super(W||`can't resolve reference ${Y} from id ${X}`);this.missingRef=(0,n$.resolveUrl)(Q,X,Y),this.missingSchema=(0,n$.normalizeId)((0,n$.getFullPath)(Q,this.missingRef))}}HA.default=GA});var cX=w((KA)=>{Object.defineProperty(KA,"__esModule",{value:!0});KA.resolveSchema=KA.getCompilingSchema=KA.resolveRef=KA.compileSchema=KA.SchemaEnv=void 0;var k1=i(),wk=lX(),G9=J6(),v1=N8(),BA=W0(),Mk=Z8();class E8{constructor(Q){var X;this.refs={},this.dynamicAnchors={};let Y;if(typeof Q.schema=="object")Y=Q.schema;this.schema=Q.schema,this.schemaId=Q.schemaId,this.root=Q.root||this,this.baseId=(X=Q.baseId)!==null&&X!==void 0?X:(0,v1.normalizeId)(Y===null||Y===void 0?void 0:Y[Q.schemaId||"$id"]),this.schemaPath=Q.schemaPath,this.localRefs=Q.localRefs,this.meta=Q.meta,this.$async=Y===null||Y===void 0?void 0:Y.$async,this.refs={}}}KA.SchemaEnv=E8;function r$(Q){let X=zA.call(this,Q);if(X)return X;let Y=(0,v1.getFullPath)(this.opts.uriResolver,Q.root.baseId),{es5:W,lines:$}=this.opts.code,{ownProperties:J}=this.opts,G=new k1.CodeGen(this.scope,{es5:W,lines:$,ownProperties:J}),H;if(Q.$async)H=G.scopeValue("Error",{ref:wk.default,code:k1._`require("ajv/dist/runtime/validation_error").default`});let B=G.scopeName("validate");Q.validateName=B;let z={gen:G,allErrors:this.opts.allErrors,data:G9.default.data,parentData:G9.default.parentData,parentDataProperty:G9.default.parentDataProperty,dataNames:[G9.default.data],dataPathArr:[k1.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:G.scopeValue("schema",this.opts.code.source===!0?{ref:Q.schema,code:(0,k1.stringify)(Q.schema)}:{ref:Q.schema}),validateName:B,ValidationError:H,schema:Q.schema,schemaEnv:Q,rootId:Y,baseId:Q.baseId||Y,schemaPath:k1.nil,errSchemaPath:Q.schemaPath||(this.opts.jtd?"":"#"),errorPath:k1._`""`,opts:this.opts,self:this},K;try{this._compilations.add(Q),(0,Mk.validateFunctionCode)(z),G.optimize(this.opts.code.optimize);let F=G.toString();if(K=`${G.scopeRefs(G9.default.scope)}return ${F}`,this.opts.code.process)K=this.opts.code.process(K,Q);let V=Function(`${G9.default.self}`,`${G9.default.scope}`,K)(this,this.scope.get());if(this.scope.value(B,{ref:V}),V.errors=null,V.schema=Q.schema,V.schemaEnv=Q,Q.$async)V.$async=!0;if(this.opts.code.source===!0)V.source={validateName:B,validateCode:F,scopeValues:G._values};if(this.opts.unevaluated){let{props:A,items:q}=z;if(V.evaluated={props:A instanceof k1.Name?void 0:A,items:q instanceof k1.Name?void 0:q,dynamicProps:A instanceof k1.Name,dynamicItems:q instanceof k1.Name},V.source)V.source.evaluated=(0,k1.stringify)(V.evaluated)}return Q.validate=V,Q}catch(F){if(delete Q.validate,delete Q.validateName,K)this.logger.error("Error compiling schema, function code:",K);throw F}finally{this._compilations.delete(Q)}}KA.compileSchema=r$;function Nk(Q,X,Y){var W;Y=(0,v1.resolveUrl)(this.opts.uriResolver,X,Y);let $=Q.refs[Y];if($)return $;let J=Zk.call(this,Q,Y);if(J===void 0){let G=(W=Q.localRefs)===null||W===void 0?void 0:W[Y],{schemaId:H}=this.opts;if(G)J=new E8({schema:G,schemaId:H,root:Q,baseId:X})}if(J===void 0)return;return Q.refs[Y]=bk.call(this,J)}KA.resolveRef=Nk;function bk(Q){if((0,v1.inlineRef)(Q.schema,this.opts.inlineRefs))return Q.schema;return Q.validate?Q:r$.call(this,Q)}function zA(Q){for(let X of this._compilations)if(Pk(X,Q))return X}KA.getCompilingSchema=zA;function Pk(Q,X){return Q.schema===X.schema&&Q.root===X.root&&Q.baseId===X.baseId}function Zk(Q,X){let Y;while(typeof(Y=this.refs[X])=="string")X=Y;return Y||this.schemas[X]||mX.call(this,Q,X)}function mX(Q,X){let Y=this.opts.uriResolver.parse(X),W=(0,v1._getFullPath)(this.opts.uriResolver,Y),$=(0,v1.getFullPath)(this.opts.uriResolver,Q.baseId,void 0);if(Object.keys(Q.schema).length>0&&W===$)return o$.call(this,Y,Q);let J=(0,v1.normalizeId)(W),G=this.refs[J]||this.schemas[J];if(typeof G=="string"){let H=mX.call(this,Q,G);if(typeof(H===null||H===void 0?void 0:H.schema)!=="object")return;return o$.call(this,Y,H)}if(typeof(G===null||G===void 0?void 0:G.schema)!=="object")return;if(!G.validate)r$.call(this,G);if(J===(0,v1.normalizeId)(X)){let{schema:H}=G,{schemaId:B}=this.opts,z=H[B];if(z)$=(0,v1.resolveUrl)(this.opts.uriResolver,$,z);return new E8({schema:H,schemaId:B,root:Q,baseId:$})}return o$.call(this,Y,G)}KA.resolveSchema=mX;var Rk=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function o$(Q,{baseId:X,schema:Y,root:W}){var $;if((($=Q.fragment)===null||$===void 0?void 0:$[0])!=="/")return;for(let H of Q.fragment.slice(1).split("/")){if(typeof Y==="boolean")return;let B=Y[(0,BA.unescapeFragment)(H)];if(B===void 0)return;Y=B;let z=typeof Y==="object"&&Y[this.opts.schemaId];if(!Rk.has(H)&&z)X=(0,v1.resolveUrl)(this.opts.uriResolver,X,z)}let J;if(typeof Y!="boolean"&&Y.$ref&&!(0,BA.schemaHasRulesButRef)(Y,this.RULES)){let H=(0,v1.resolveUrl)(this.opts.uriResolver,X,Y.$ref);J=mX.call(this,W,H)}let{schemaId:G}=this.opts;if(J=J||new E8({schema:Y,schemaId:G,root:W,baseId:X}),J.schema!==J.root.schema)return J;return}});var VA=w((vp,Ck)=>{Ck.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 DA=w((AA)=>{Object.defineProperty(AA,"__esModule",{value:!0});var qA=Y$();qA.code='require("ajv/dist/runtime/uri").default';AA.default=qA});var bA=w((H6)=>{Object.defineProperty(H6,"__esModule",{value:!0});H6.CodeGen=H6.Name=H6.nil=H6.stringify=H6.str=H6._=H6.KeywordCxt=void 0;var vk=Z8();Object.defineProperty(H6,"KeywordCxt",{enumerable:!0,get:function(){return vk.KeywordCxt}});var e9=i();Object.defineProperty(H6,"_",{enumerable:!0,get:function(){return e9._}});Object.defineProperty(H6,"str",{enumerable:!0,get:function(){return e9.str}});Object.defineProperty(H6,"stringify",{enumerable:!0,get:function(){return e9.stringify}});Object.defineProperty(H6,"nil",{enumerable:!0,get:function(){return e9.nil}});Object.defineProperty(H6,"Name",{enumerable:!0,get:function(){return e9.Name}});Object.defineProperty(H6,"CodeGen",{enumerable:!0,get:function(){return e9.CodeGen}});var _k=lX(),wA=R8(),xk=_$(),S8=cX(),yk=i(),I8=N8(),pX=M8(),a$=W0(),LA=VA(),gk=DA(),MA=(Q,X)=>new RegExp(Q,X);MA.code="new RegExp";var fk=["removeAdditional","useDefaults","coerceTypes"],hk=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),uk={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."},lk={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},OA=200;function mk(Q){var X,Y,W,$,J,G,H,B,z,K,F,D,V,A,q,L,O,M,N,C,Z,K0,b0,y1,g6;let L1=Q.strict,f6=(X=Q.code)===null||X===void 0?void 0:X.optimize,z4=f6===!0||f6===void 0?1:f6||0,K4=(W=(Y=Q.code)===null||Y===void 0?void 0:Y.regExp)!==null&&W!==void 0?W:MA,EY=($=Q.uriResolver)!==null&&$!==void 0?$:gk.default;return{strictSchema:(G=(J=Q.strictSchema)!==null&&J!==void 0?J:L1)!==null&&G!==void 0?G:!0,strictNumbers:(B=(H=Q.strictNumbers)!==null&&H!==void 0?H:L1)!==null&&B!==void 0?B:!0,strictTypes:(K=(z=Q.strictTypes)!==null&&z!==void 0?z:L1)!==null&&K!==void 0?K:"log",strictTuples:(D=(F=Q.strictTuples)!==null&&F!==void 0?F:L1)!==null&&D!==void 0?D:"log",strictRequired:(A=(V=Q.strictRequired)!==null&&V!==void 0?V:L1)!==null&&A!==void 0?A:!1,code:Q.code?{...Q.code,optimize:z4,regExp:K4}:{optimize:z4,regExp:K4},loopRequired:(q=Q.loopRequired)!==null&&q!==void 0?q:OA,loopEnum:(L=Q.loopEnum)!==null&&L!==void 0?L:OA,meta:(O=Q.meta)!==null&&O!==void 0?O:!0,messages:(M=Q.messages)!==null&&M!==void 0?M:!0,inlineRefs:(N=Q.inlineRefs)!==null&&N!==void 0?N:!0,schemaId:(C=Q.schemaId)!==null&&C!==void 0?C:"$id",addUsedSchema:(Z=Q.addUsedSchema)!==null&&Z!==void 0?Z:!0,validateSchema:(K0=Q.validateSchema)!==null&&K0!==void 0?K0:!0,validateFormats:(b0=Q.validateFormats)!==null&&b0!==void 0?b0:!0,unicodeRegExp:(y1=Q.unicodeRegExp)!==null&&y1!==void 0?y1:!0,int32range:(g6=Q.int32range)!==null&&g6!==void 0?g6:!0,uriResolver:EY}}class dX{constructor(Q={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,Q=this.opts={...Q,...mk(Q)};let{es5:X,lines:Y}=this.opts.code;this.scope=new yk.ValueScope({scope:{},prefixes:hk,es5:X,lines:Y}),this.logger=ok(Q.logger);let W=Q.validateFormats;if(Q.validateFormats=!1,this.RULES=(0,xk.getRules)(),UA.call(this,uk,Q,"NOT SUPPORTED"),UA.call(this,lk,Q,"DEPRECATED","warn"),this._metaOpts=ik.call(this),Q.formats)pk.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),Q.keywords)dk.call(this,Q.keywords);if(typeof Q.meta=="object")this.addMetaSchema(Q.meta);ck.call(this),Q.validateFormats=W}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:Q,meta:X,schemaId:Y}=this.opts,W=LA;if(Y==="id")W={...LA},W.id=W.$id,delete W.$id;if(X&&Q)this.addMetaSchema(W,W[Y],!1)}defaultMeta(){let{meta:Q,schemaId:X}=this.opts;return this.opts.defaultMeta=typeof Q=="object"?Q[X]||Q:void 0}validate(Q,X){let Y;if(typeof Q=="string"){if(Y=this.getSchema(Q),!Y)throw Error(`no schema with key or ref "${Q}"`)}else Y=this.compile(Q);let W=Y(X);if(!("$async"in Y))this.errors=Y.errors;return W}compile(Q,X){let Y=this._addSchema(Q,X);return Y.validate||this._compileSchemaEnv(Y)}compileAsync(Q,X){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:Y}=this.opts;return W.call(this,Q,X);async function W(z,K){await $.call(this,z.$schema);let F=this._addSchema(z,K);return F.validate||J.call(this,F)}async function $(z){if(z&&!this.getSchema(z))await W.call(this,{$ref:z},!0)}async function J(z){try{return this._compileSchemaEnv(z)}catch(K){if(!(K instanceof wA.default))throw K;return G.call(this,K),await H.call(this,K.missingSchema),J.call(this,z)}}function G({missingSchema:z,missingRef:K}){if(this.refs[z])throw Error(`AnySchema ${z} is loaded but ${K} cannot be resolved`)}async function H(z){let K=await B.call(this,z);if(!this.refs[z])await $.call(this,K.$schema);if(!this.refs[z])this.addSchema(K,z,X)}async function B(z){let K=this._loading[z];if(K)return K;try{return await(this._loading[z]=Y(z))}finally{delete this._loading[z]}}}addSchema(Q,X,Y,W=this.opts.validateSchema){if(Array.isArray(Q)){for(let J of Q)this.addSchema(J,void 0,Y,W);return this}let $;if(typeof Q==="object"){let{schemaId:J}=this.opts;if($=Q[J],$!==void 0&&typeof $!="string")throw Error(`schema ${J} must be string`)}return X=(0,I8.normalizeId)(X||$),this._checkUnique(X),this.schemas[X]=this._addSchema(Q,Y,X,W,!0),this}addMetaSchema(Q,X,Y=this.opts.validateSchema){return this.addSchema(Q,X,!0,Y),this}validateSchema(Q,X){if(typeof Q=="boolean")return!0;let Y;if(Y=Q.$schema,Y!==void 0&&typeof Y!="string")throw Error("$schema must be a string");if(Y=Y||this.opts.defaultMeta||this.defaultMeta(),!Y)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let W=this.validate(Y,Q);if(!W&&X){let $="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error($);else throw Error($)}return W}getSchema(Q){let X;while(typeof(X=jA.call(this,Q))=="string")Q=X;if(X===void 0){let{schemaId:Y}=this.opts,W=new S8.SchemaEnv({schema:{},schemaId:Y});if(X=S8.resolveSchema.call(this,W,Q),!X)return;this.refs[Q]=X}return X.validate||this._compileSchemaEnv(X)}removeSchema(Q){if(Q instanceof RegExp)return this._removeAllSchemas(this.schemas,Q),this._removeAllSchemas(this.refs,Q),this;switch(typeof Q){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let X=jA.call(this,Q);if(typeof X=="object")this._cache.delete(X.schema);return delete this.schemas[Q],delete this.refs[Q],this}case"object":{let X=Q;this._cache.delete(X);let Y=Q[this.opts.schemaId];if(Y)Y=(0,I8.normalizeId)(Y),delete this.schemas[Y],delete this.refs[Y];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(Q){for(let X of Q)this.addKeyword(X);return this}addKeyword(Q,X){let Y;if(typeof Q=="string"){if(Y=Q,typeof X=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),X.keyword=Y}else if(typeof Q=="object"&&X===void 0){if(X=Q,Y=X.keyword,Array.isArray(Y)&&!Y.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(tk.call(this,Y,X),!X)return(0,a$.eachItem)(Y,($)=>t$.call(this,$)),this;sk.call(this,X);let W={...X,type:(0,pX.getJSONTypes)(X.type),schemaType:(0,pX.getJSONTypes)(X.schemaType)};return(0,a$.eachItem)(Y,W.type.length===0?($)=>t$.call(this,$,W):($)=>W.type.forEach((J)=>t$.call(this,$,W,J))),this}getKeyword(Q){let X=this.RULES.all[Q];return typeof X=="object"?X.definition:!!X}removeKeyword(Q){let{RULES:X}=this;delete X.keywords[Q],delete X.all[Q];for(let Y of X.rules){let W=Y.rules.findIndex(($)=>$.keyword===Q);if(W>=0)Y.rules.splice(W,1)}return this}addFormat(Q,X){if(typeof X=="string")X=new RegExp(X);return this.formats[Q]=X,this}errorsText(Q=this.errors,{separator:X=", ",dataVar:Y="data"}={}){if(!Q||Q.length===0)return"No errors";return Q.map((W)=>`${Y}${W.instancePath} ${W.message}`).reduce((W,$)=>W+X+$)}$dataMetaSchema(Q,X){let Y=this.RULES.all;Q=JSON.parse(JSON.stringify(Q));for(let W of X){let $=W.split("/").slice(1),J=Q;for(let G of $)J=J[G];for(let G in Y){let H=Y[G];if(typeof H!="object")continue;let{$data:B}=H.definition,z=J[G];if(B&&z)J[G]=NA(z)}}return Q}_removeAllSchemas(Q,X){for(let Y in Q){let W=Q[Y];if(!X||X.test(Y)){if(typeof W=="string")delete Q[Y];else if(W&&!W.meta)this._cache.delete(W.schema),delete Q[Y]}}}_addSchema(Q,X,Y,W=this.opts.validateSchema,$=this.opts.addUsedSchema){let J,{schemaId:G}=this.opts;if(typeof Q=="object")J=Q[G];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof Q!="boolean")throw Error("schema must be object or boolean");let H=this._cache.get(Q);if(H!==void 0)return H;Y=(0,I8.normalizeId)(J||Y);let B=I8.getSchemaRefs.call(this,Q,Y);if(H=new S8.SchemaEnv({schema:Q,schemaId:G,meta:X,baseId:Y,localRefs:B}),this._cache.set(H.schema,H),$&&!Y.startsWith("#")){if(Y)this._checkUnique(Y);this.refs[Y]=H}if(W)this.validateSchema(Q,!0);return H}_checkUnique(Q){if(this.schemas[Q]||this.refs[Q])throw Error(`schema with key or id "${Q}" already exists`)}_compileSchemaEnv(Q){if(Q.meta)this._compileMetaSchema(Q);else S8.compileSchema.call(this,Q);if(!Q.validate)throw Error("ajv implementation error");return Q.validate}_compileMetaSchema(Q){let X=this.opts;this.opts=this._metaOpts;try{S8.compileSchema.call(this,Q)}finally{this.opts=X}}}dX.ValidationError=_k.default;dX.MissingRefError=wA.default;H6.default=dX;function UA(Q,X,Y,W="error"){for(let $ in Q){let J=$;if(J in X)this.logger[W](`${Y}: option ${$}. ${Q[J]}`)}}function jA(Q){return Q=(0,I8.normalizeId)(Q),this.schemas[Q]||this.refs[Q]}function ck(){let Q=this.opts.schemas;if(!Q)return;if(Array.isArray(Q))this.addSchema(Q);else for(let X in Q)this.addSchema(Q[X],X)}function pk(){for(let Q in this.opts.formats){let X=this.opts.formats[Q];if(X)this.addFormat(Q,X)}}function dk(Q){if(Array.isArray(Q)){this.addVocabulary(Q);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let X in Q){let Y=Q[X];if(!Y.keyword)Y.keyword=X;this.addKeyword(Y)}}function ik(){let Q={...this.opts};for(let X of fk)delete Q[X];return Q}var nk={log(){},warn(){},error(){}};function ok(Q){if(Q===!1)return nk;if(Q===void 0)return console;if(Q.log&&Q.warn&&Q.error)return Q;throw Error("logger must implement log, warn and error methods")}var rk=/^[a-z_$][a-z0-9_$:-]*$/i;function tk(Q,X){let{RULES:Y}=this;if((0,a$.eachItem)(Q,(W)=>{if(Y.keywords[W])throw Error(`Keyword ${W} is already defined`);if(!rk.test(W))throw Error(`Keyword ${W} has invalid name`)}),!X)return;if(X.$data&&!(("code"in X)||("validate"in X)))throw Error('$data keyword must have "code" or "validate" function')}function t$(Q,X,Y){var W;let $=X===null||X===void 0?void 0:X.post;if(Y&&$)throw Error('keyword with "post" flag cannot have "type"');let{RULES:J}=this,G=$?J.post:J.rules.find(({type:B})=>B===Y);if(!G)G={type:Y,rules:[]},J.rules.push(G);if(J.keywords[Q]=!0,!X)return;let H={keyword:Q,definition:{...X,type:(0,pX.getJSONTypes)(X.type),schemaType:(0,pX.getJSONTypes)(X.schemaType)}};if(X.before)ak.call(this,G,H,X.before);else G.rules.push(H);J.all[Q]=H,(W=X.implements)===null||W===void 0||W.forEach((B)=>this.addKeyword(B))}function ak(Q,X,Y){let W=Q.rules.findIndex(($)=>$.keyword===Y);if(W>=0)Q.rules.splice(W,0,X);else Q.rules.push(X),this.logger.warn(`rule ${Y} is not defined`)}function sk(Q){let{metaSchema:X}=Q;if(X===void 0)return;if(Q.$data&&this.opts.$data)X=NA(X);Q.validateSchema=this.compile(X,!0)}var ek={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function NA(Q){return{anyOf:[Q,ek]}}});var ZA=w((PA)=>{Object.defineProperty(PA,"__esModule",{value:!0});var Yv={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};PA.default=Yv});var CA=w((IA)=>{Object.defineProperty(IA,"__esModule",{value:!0});IA.callRef=IA.getValidate=void 0;var $v=R8(),RA=A1(),G1=i(),Q4=J6(),EA=cX(),iX=W0(),Jv={keyword:"$ref",schemaType:"string",code(Q){let{gen:X,schema:Y,it:W}=Q,{baseId:$,schemaEnv:J,validateName:G,opts:H,self:B}=W,{root:z}=J;if((Y==="#"||Y==="#/")&&$===z.baseId)return F();let K=EA.resolveRef.call(B,z,$,Y);if(K===void 0)throw new $v.default(W.opts.uriResolver,$,Y);if(K instanceof EA.SchemaEnv)return D(K);return V(K);function F(){if(J===z)return nX(Q,G,J,J.$async);let A=X.scopeValue("root",{ref:z});return nX(Q,G1._`${A}.validate`,z,z.$async)}function D(A){let q=SA(Q,A);nX(Q,q,A,A.$async)}function V(A){let q=X.scopeValue("schema",H.code.source===!0?{ref:A,code:(0,G1.stringify)(A)}:{ref:A}),L=X.name("valid"),O=Q.subschema({schema:A,dataTypes:[],schemaPath:G1.nil,topSchemaRef:q,errSchemaPath:Y},L);Q.mergeEvaluated(O),Q.ok(L)}}};function SA(Q,X){let{gen:Y}=Q;return X.validate?Y.scopeValue("validate",{ref:X.validate}):G1._`${Y.scopeValue("wrapper",{ref:X})}.validate`}IA.getValidate=SA;function nX(Q,X,Y,W){let{gen:$,it:J}=Q,{allErrors:G,schemaEnv:H,opts:B}=J,z=B.passContext?Q4.default.this:G1.nil;if(W)K();else F();function K(){if(!H.$async)throw Error("async schema referenced by sync schema");let A=$.let("valid");$.try(()=>{if($.code(G1._`await ${(0,RA.callValidateCode)(Q,X,z)}`),V(X),!G)$.assign(A,!0)},(q)=>{if($.if(G1._`!(${q} instanceof ${J.ValidationError})`,()=>$.throw(q)),D(q),!G)$.assign(A,!1)}),Q.ok(A)}function F(){Q.result((0,RA.callValidateCode)(Q,X,z),()=>V(X),()=>D(X))}function D(A){let q=G1._`${A}.errors`;$.assign(Q4.default.vErrors,G1._`${Q4.default.vErrors} === null ? ${q} : ${Q4.default.vErrors}.concat(${q})`),$.assign(Q4.default.errors,G1._`${Q4.default.vErrors}.length`)}function V(A){var q;if(!J.opts.unevaluated)return;let L=(q=Y===null||Y===void 0?void 0:Y.validate)===null||q===void 0?void 0:q.evaluated;if(J.props!==!0)if(L&&!L.dynamicProps){if(L.props!==void 0)J.props=iX.mergeEvaluated.props($,L.props,J.props)}else{let O=$.var("props",G1._`${A}.evaluated.props`);J.props=iX.mergeEvaluated.props($,O,J.props,G1.Name)}if(J.items!==!0)if(L&&!L.dynamicItems){if(L.items!==void 0)J.items=iX.mergeEvaluated.items($,L.items,J.items)}else{let O=$.var("items",G1._`${A}.evaluated.items`);J.items=iX.mergeEvaluated.items($,O,J.items,G1.Name)}}}IA.callRef=nX;IA.default=Jv});var vA=w((kA)=>{Object.defineProperty(kA,"__esModule",{value:!0});var Bv=ZA(),zv=CA(),Kv=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Bv.default,zv.default];kA.default=Kv});var xA=w((_A)=>{Object.defineProperty(_A,"__esModule",{value:!0});var oX=i(),k6=oX.operators,rX={maximum:{okStr:"<=",ok:k6.LTE,fail:k6.GT},minimum:{okStr:">=",ok:k6.GTE,fail:k6.LT},exclusiveMaximum:{okStr:"<",ok:k6.LT,fail:k6.GTE},exclusiveMinimum:{okStr:">",ok:k6.GT,fail:k6.LTE}},Vv={message:({keyword:Q,schemaCode:X})=>oX.str`must be ${rX[Q].okStr} ${X}`,params:({keyword:Q,schemaCode:X})=>oX._`{comparison: ${rX[Q].okStr}, limit: ${X}}`},qv={keyword:Object.keys(rX),type:"number",schemaType:"number",$data:!0,error:Vv,code(Q){let{keyword:X,data:Y,schemaCode:W}=Q;Q.fail$data(oX._`${Y} ${rX[X].fail} ${W} || isNaN(${Y})`)}};_A.default=qv});var gA=w((yA)=>{Object.defineProperty(yA,"__esModule",{value:!0});var T8=i(),Dv={message:({schemaCode:Q})=>T8.str`must be multiple of ${Q}`,params:({schemaCode:Q})=>T8._`{multipleOf: ${Q}}`},Lv={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:Dv,code(Q){let{gen:X,data:Y,schemaCode:W,it:$}=Q,J=$.opts.multipleOfPrecision,G=X.let("res"),H=J?T8._`Math.abs(Math.round(${G}) - ${G}) > 1e-${J}`:T8._`${G} !== parseInt(${G})`;Q.fail$data(T8._`(${W} === 0 || (${G} = ${Y}/${W}, ${H}))`)}};yA.default=Lv});var uA=w((hA)=>{Object.defineProperty(hA,"__esModule",{value:!0});function fA(Q){let X=Q.length,Y=0,W=0,$;while(W<X)if(Y++,$=Q.charCodeAt(W++),$>=55296&&$<=56319&&W<X){if($=Q.charCodeAt(W),($&64512)===56320)W++}return Y}hA.default=fA;fA.code='require("ajv/dist/runtime/ucs2length").default'});var mA=w((lA)=>{Object.defineProperty(lA,"__esModule",{value:!0});var H9=i(),jv=W0(),wv=uA(),Mv={message({keyword:Q,schemaCode:X}){let Y=Q==="maxLength"?"more":"fewer";return H9.str`must NOT have ${Y} than ${X} characters`},params:({schemaCode:Q})=>H9._`{limit: ${Q}}`},Nv={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:Mv,code(Q){let{keyword:X,data:Y,schemaCode:W,it:$}=Q,J=X==="maxLength"?H9.operators.GT:H9.operators.LT,G=$.opts.unicode===!1?H9._`${Y}.length`:H9._`${(0,jv.useFunc)(Q.gen,wv.default)}(${Y})`;Q.fail$data(H9._`${G} ${J} ${W}`)}};lA.default=Nv});var pA=w((cA)=>{Object.defineProperty(cA,"__esModule",{value:!0});var Pv=A1(),tX=i(),Zv={message:({schemaCode:Q})=>tX.str`must match pattern "${Q}"`,params:({schemaCode:Q})=>tX._`{pattern: ${Q}}`},Rv={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:Zv,code(Q){let{data:X,$data:Y,schema:W,schemaCode:$,it:J}=Q,G=J.opts.unicodeRegExp?"u":"",H=Y?tX._`(new RegExp(${$}, ${G}))`:(0,Pv.usePattern)(Q,W);Q.fail$data(tX._`!${H}.test(${X})`)}};cA.default=Rv});var iA=w((dA)=>{Object.defineProperty(dA,"__esModule",{value:!0});var C8=i(),Sv={message({keyword:Q,schemaCode:X}){let Y=Q==="maxProperties"?"more":"fewer";return C8.str`must NOT have ${Y} than ${X} properties`},params:({schemaCode:Q})=>C8._`{limit: ${Q}}`},Iv={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:Sv,code(Q){let{keyword:X,data:Y,schemaCode:W}=Q,$=X==="maxProperties"?C8.operators.GT:C8.operators.LT;Q.fail$data(C8._`Object.keys(${Y}).length ${$} ${W}`)}};dA.default=Iv});var oA=w((nA)=>{Object.defineProperty(nA,"__esModule",{value:!0});var k8=A1(),v8=i(),Cv=W0(),kv={message:({params:{missingProperty:Q}})=>v8.str`must have required property '${Q}'`,params:({params:{missingProperty:Q}})=>v8._`{missingProperty: ${Q}}`},vv={keyword:"required",type:"object",schemaType:"array",$data:!0,error:kv,code(Q){let{gen:X,schema:Y,schemaCode:W,data:$,$data:J,it:G}=Q,{opts:H}=G;if(!J&&Y.length===0)return;let B=Y.length>=H.loopRequired;if(G.allErrors)z();else K();if(H.strictRequired){let V=Q.parentSchema.properties,{definedProperties:A}=Q.it;for(let q of Y)if((V===null||V===void 0?void 0:V[q])===void 0&&!A.has(q)){let L=G.schemaEnv.baseId+G.errSchemaPath,O=`required property "${q}" is not defined at "${L}" (strictRequired)`;(0,Cv.checkStrictMode)(G,O,G.opts.strictRequired)}}function z(){if(B||J)Q.block$data(v8.nil,F);else for(let V of Y)(0,k8.checkReportMissingProp)(Q,V)}function K(){let V=X.let("missing");if(B||J){let A=X.let("valid",!0);Q.block$data(A,()=>D(V,A)),Q.ok(A)}else X.if((0,k8.checkMissingProp)(Q,Y,V)),(0,k8.reportMissingProp)(Q,V),X.else()}function F(){X.forOf("prop",W,(V)=>{Q.setParams({missingProperty:V}),X.if((0,k8.noPropertyInData)(X,$,V,H.ownProperties),()=>Q.error())})}function D(V,A){Q.setParams({missingProperty:V}),X.forOf(V,W,()=>{X.assign(A,(0,k8.propertyInData)(X,$,V,H.ownProperties)),X.if((0,v8.not)(A),()=>{Q.error(),X.break()})},v8.nil)}}};nA.default=vv});var tA=w((rA)=>{Object.defineProperty(rA,"__esModule",{value:!0});var _8=i(),xv={message({keyword:Q,schemaCode:X}){let Y=Q==="maxItems"?"more":"fewer";return _8.str`must NOT have ${Y} than ${X} items`},params:({schemaCode:Q})=>_8._`{limit: ${Q}}`},yv={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:xv,code(Q){let{keyword:X,data:Y,schemaCode:W}=Q,$=X==="maxItems"?_8.operators.GT:_8.operators.LT;Q.fail$data(_8._`${Y}.length ${$} ${W}`)}};rA.default=yv});var aX=w((sA)=>{Object.defineProperty(sA,"__esModule",{value:!0});var aA=e4();aA.code='require("ajv/dist/runtime/equal").default';sA.default=aA});var QD=w((eA)=>{Object.defineProperty(eA,"__esModule",{value:!0});var s$=M8(),y0=i(),hv=W0(),uv=aX(),lv={message:({params:{i:Q,j:X}})=>y0.str`must NOT have duplicate items (items ## ${X} and ${Q} are identical)`,params:({params:{i:Q,j:X}})=>y0._`{i: ${Q}, j: ${X}}`},mv={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:lv,code(Q){let{gen:X,data:Y,$data:W,schema:$,parentSchema:J,schemaCode:G,it:H}=Q;if(!W&&!$)return;let B=X.let("valid"),z=J.items?(0,s$.getSchemaTypes)(J.items):[];Q.block$data(B,K,y0._`${G} === false`),Q.ok(B);function K(){let A=X.let("i",y0._`${Y}.length`),q=X.let("j");Q.setParams({i:A,j:q}),X.assign(B,!0),X.if(y0._`${A} > 1`,()=>(F()?D:V)(A,q))}function F(){return z.length>0&&!z.some((A)=>A==="object"||A==="array")}function D(A,q){let L=X.name("item"),O=(0,s$.checkDataTypes)(z,L,H.opts.strictNumbers,s$.DataType.Wrong),M=X.const("indices",y0._`{}`);X.for(y0._`;${A}--;`,()=>{if(X.let(L,y0._`${Y}[${A}]`),X.if(O,y0._`continue`),z.length>1)X.if(y0._`typeof ${L} == "string"`,y0._`${L} += "_"`);X.if(y0._`typeof ${M}[${L}] == "number"`,()=>{X.assign(q,y0._`${M}[${L}]`),Q.error(),X.assign(B,!1).break()}).code(y0._`${M}[${L}] = ${A}`)})}function V(A,q){let L=(0,hv.useFunc)(X,uv.default),O=X.name("outer");X.label(O).for(y0._`;${A}--;`,()=>X.for(y0._`${q} = ${A}; ${q}--;`,()=>X.if(y0._`${L}(${Y}[${A}], ${Y}[${q}])`,()=>{Q.error(),X.assign(B,!1).break(O)})))}}};eA.default=mv});var YD=w((XD)=>{Object.defineProperty(XD,"__esModule",{value:!0});var e$=i(),pv=W0(),dv=aX(),iv={message:"must be equal to constant",params:({schemaCode:Q})=>e$._`{allowedValue: ${Q}}`},nv={keyword:"const",$data:!0,error:iv,code(Q){let{gen:X,data:Y,$data:W,schemaCode:$,schema:J}=Q;if(W||J&&typeof J=="object")Q.fail$data(e$._`!${(0,pv.useFunc)(X,dv.default)}(${Y}, ${$})`);else Q.fail(e$._`${J} !== ${Y}`)}};XD.default=nv});var $D=w((WD)=>{Object.defineProperty(WD,"__esModule",{value:!0});var x8=i(),rv=W0(),tv=aX(),av={message:"must be equal to one of the allowed values",params:({schemaCode:Q})=>x8._`{allowedValues: ${Q}}`},sv={keyword:"enum",schemaType:"array",$data:!0,error:av,code(Q){let{gen:X,data:Y,$data:W,schema:$,schemaCode:J,it:G}=Q;if(!W&&$.length===0)throw Error("enum must have non-empty array");let H=$.length>=G.opts.loopEnum,B,z=()=>B!==null&&B!==void 0?B:B=(0,rv.useFunc)(X,tv.default),K;if(H||W)K=X.let("valid"),Q.block$data(K,F);else{if(!Array.isArray($))throw Error("ajv implementation error");let V=X.const("vSchema",J);K=(0,x8.or)(...$.map((A,q)=>D(V,q)))}Q.pass(K);function F(){X.assign(K,!1),X.forOf("v",J,(V)=>X.if(x8._`${z()}(${Y}, ${V})`,()=>X.assign(K,!0).break()))}function D(V,A){let q=$[A];return typeof q==="object"&&q!==null?x8._`${z()}(${Y}, ${V}[${A}])`:x8._`${Y} === ${q}`}}};WD.default=sv});var GD=w((JD)=>{Object.defineProperty(JD,"__esModule",{value:!0});var Q_=xA(),X_=gA(),Y_=mA(),W_=pA(),$_=iA(),J_=oA(),G_=tA(),H_=QD(),B_=YD(),z_=$D(),K_=[Q_.default,X_.default,Y_.default,W_.default,$_.default,J_.default,G_.default,H_.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},B_.default,z_.default];JD.default=K_});var XJ=w((BD)=>{Object.defineProperty(BD,"__esModule",{value:!0});BD.validateAdditionalItems=void 0;var B9=i(),QJ=W0(),V_={message:({params:{len:Q}})=>B9.str`must NOT have more than ${Q} items`,params:({params:{len:Q}})=>B9._`{limit: ${Q}}`},q_={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:V_,code(Q){let{parentSchema:X,it:Y}=Q,{items:W}=X;if(!Array.isArray(W)){(0,QJ.checkStrictMode)(Y,'"additionalItems" is ignored when "items" is not an array of schemas');return}HD(Q,W)}};function HD(Q,X){let{gen:Y,schema:W,data:$,keyword:J,it:G}=Q;G.items=!0;let H=Y.const("len",B9._`${$}.length`);if(W===!1)Q.setParams({len:X.length}),Q.pass(B9._`${H} <= ${X.length}`);else if(typeof W=="object"&&!(0,QJ.alwaysValidSchema)(G,W)){let z=Y.var("valid",B9._`${H} <= ${X.length}`);Y.if((0,B9.not)(z),()=>B(z)),Q.ok(z)}function B(z){Y.forRange("i",X.length,H,(K)=>{if(Q.subschema({keyword:J,dataProp:K,dataPropType:QJ.Type.Num},z),!G.allErrors)Y.if((0,B9.not)(z),()=>Y.break())})}}BD.validateAdditionalItems=HD;BD.default=q_});var YJ=w((VD)=>{Object.defineProperty(VD,"__esModule",{value:!0});VD.validateTuple=void 0;var KD=i(),sX=W0(),D_=A1(),L_={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(Q){let{schema:X,it:Y}=Q;if(Array.isArray(X))return FD(Q,"additionalItems",X);if(Y.items=!0,(0,sX.alwaysValidSchema)(Y,X))return;Q.ok((0,D_.validateArray)(Q))}};function FD(Q,X,Y=Q.schema){let{gen:W,parentSchema:$,data:J,keyword:G,it:H}=Q;if(K($),H.opts.unevaluated&&Y.length&&H.items!==!0)H.items=sX.mergeEvaluated.items(W,Y.length,H.items);let B=W.name("valid"),z=W.const("len",KD._`${J}.length`);Y.forEach((F,D)=>{if((0,sX.alwaysValidSchema)(H,F))return;W.if(KD._`${z} > ${D}`,()=>Q.subschema({keyword:G,schemaProp:D,dataProp:D},B)),Q.ok(B)});function K(F){let{opts:D,errSchemaPath:V}=H,A=Y.length,q=A===F.minItems&&(A===F.maxItems||F[X]===!1);if(D.strictTuples&&!q){let L=`"${G}" is ${A}-tuple, but minItems or maxItems/${X} are not specified or different at path "${V}"`;(0,sX.checkStrictMode)(H,L,D.strictTuples)}}}VD.validateTuple=FD;VD.default=L_});var DD=w((AD)=>{Object.defineProperty(AD,"__esModule",{value:!0});var U_=YJ(),j_={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(Q)=>(0,U_.validateTuple)(Q,"items")};AD.default=j_});var UD=w((OD)=>{Object.defineProperty(OD,"__esModule",{value:!0});var LD=i(),M_=W0(),N_=A1(),b_=XJ(),P_={message:({params:{len:Q}})=>LD.str`must NOT have more than ${Q} items`,params:({params:{len:Q}})=>LD._`{limit: ${Q}}`},Z_={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:P_,code(Q){let{schema:X,parentSchema:Y,it:W}=Q,{prefixItems:$}=Y;if(W.items=!0,(0,M_.alwaysValidSchema)(W,X))return;if($)(0,b_.validateAdditionalItems)(Q,$);else Q.ok((0,N_.validateArray)(Q))}};OD.default=Z_});var wD=w((jD)=>{Object.defineProperty(jD,"__esModule",{value:!0});var D1=i(),eX=W0(),E_={message:({params:{min:Q,max:X}})=>X===void 0?D1.str`must contain at least ${Q} valid item(s)`:D1.str`must contain at least ${Q} and no more than ${X} valid item(s)`,params:({params:{min:Q,max:X}})=>X===void 0?D1._`{minContains: ${Q}}`:D1._`{minContains: ${Q}, maxContains: ${X}}`},S_={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:E_,code(Q){let{gen:X,schema:Y,parentSchema:W,data:$,it:J}=Q,G,H,{minContains:B,maxContains:z}=W;if(J.opts.next)G=B===void 0?1:B,H=z;else G=1;let K=X.const("len",D1._`${$}.length`);if(Q.setParams({min:G,max:H}),H===void 0&&G===0){(0,eX.checkStrictMode)(J,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(H!==void 0&&G>H){(0,eX.checkStrictMode)(J,'"minContains" > "maxContains" is always invalid'),Q.fail();return}if((0,eX.alwaysValidSchema)(J,Y)){let q=D1._`${K} >= ${G}`;if(H!==void 0)q=D1._`${q} && ${K} <= ${H}`;Q.pass(q);return}J.items=!0;let F=X.name("valid");if(H===void 0&&G===1)V(F,()=>X.if(F,()=>X.break()));else if(G===0){if(X.let(F,!0),H!==void 0)X.if(D1._`${$}.length > 0`,D)}else X.let(F,!1),D();Q.result(F,()=>Q.reset());function D(){let q=X.name("_valid"),L=X.let("count",0);V(q,()=>X.if(q,()=>A(L)))}function V(q,L){X.forRange("i",0,K,(O)=>{Q.subschema({keyword:"contains",dataProp:O,dataPropType:eX.Type.Num,compositeRule:!0},q),L()})}function A(q){if(X.code(D1._`${q}++`),H===void 0)X.if(D1._`${q} >= ${G}`,()=>X.assign(F,!0).break());else if(X.if(D1._`${q} > ${H}`,()=>X.assign(F,!1).break()),G===1)X.assign(F,!0);else X.if(D1._`${q} >= ${G}`,()=>X.assign(F,!0))}}};jD.default=S_});var RD=w((bD)=>{Object.defineProperty(bD,"__esModule",{value:!0});bD.validateSchemaDeps=bD.validatePropertyDeps=bD.error=void 0;var WJ=i(),T_=W0(),y8=A1();bD.error={message:({params:{property:Q,depsCount:X,deps:Y}})=>{let W=X===1?"property":"properties";return WJ.str`must have ${W} ${Y} when property ${Q} is present`},params:({params:{property:Q,depsCount:X,deps:Y,missingProperty:W}})=>WJ._`{property: ${Q},
14
- missingProperty: ${W},
15
- depsCount: ${X},
16
- deps: ${Y}}`};var C_={keyword:"dependencies",type:"object",schemaType:"object",error:bD.error,code(Q){let[X,Y]=k_(Q);MD(Q,X),ND(Q,Y)}};function k_({schema:Q}){let X={},Y={};for(let W in Q){if(W==="__proto__")continue;let $=Array.isArray(Q[W])?X:Y;$[W]=Q[W]}return[X,Y]}function MD(Q,X=Q.schema){let{gen:Y,data:W,it:$}=Q;if(Object.keys(X).length===0)return;let J=Y.let("missing");for(let G in X){let H=X[G];if(H.length===0)continue;let B=(0,y8.propertyInData)(Y,W,G,$.opts.ownProperties);if(Q.setParams({property:G,depsCount:H.length,deps:H.join(", ")}),$.allErrors)Y.if(B,()=>{for(let z of H)(0,y8.checkReportMissingProp)(Q,z)});else Y.if(WJ._`${B} && (${(0,y8.checkMissingProp)(Q,H,J)})`),(0,y8.reportMissingProp)(Q,J),Y.else()}}bD.validatePropertyDeps=MD;function ND(Q,X=Q.schema){let{gen:Y,data:W,keyword:$,it:J}=Q,G=Y.name("valid");for(let H in X){if((0,T_.alwaysValidSchema)(J,X[H]))continue;Y.if((0,y8.propertyInData)(Y,W,H,J.opts.ownProperties),()=>{let B=Q.subschema({keyword:$,schemaProp:H},G);Q.mergeValidEvaluated(B,G)},()=>Y.var(G,!0)),Q.ok(G)}}bD.validateSchemaDeps=ND;bD.default=C_});var ID=w((SD)=>{Object.defineProperty(SD,"__esModule",{value:!0});var ED=i(),x_=W0(),y_={message:"property name must be valid",params:({params:Q})=>ED._`{propertyName: ${Q.propertyName}}`},g_={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:y_,code(Q){let{gen:X,schema:Y,data:W,it:$}=Q;if((0,x_.alwaysValidSchema)($,Y))return;let J=X.name("valid");X.forIn("key",W,(G)=>{Q.setParams({propertyName:G}),Q.subschema({keyword:"propertyNames",data:G,dataTypes:["string"],propertyName:G,compositeRule:!0},J),X.if((0,ED.not)(J),()=>{if(Q.error(!0),!$.allErrors)X.break()})}),Q.ok(J)}};SD.default=g_});var $J=w((TD)=>{Object.defineProperty(TD,"__esModule",{value:!0});var QY=A1(),_1=i(),h_=J6(),XY=W0(),u_={message:"must NOT have additional properties",params:({params:Q})=>_1._`{additionalProperty: ${Q.additionalProperty}}`},l_={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:u_,code(Q){let{gen:X,schema:Y,parentSchema:W,data:$,errsCount:J,it:G}=Q;if(!J)throw Error("ajv implementation error");let{allErrors:H,opts:B}=G;if(G.props=!0,B.removeAdditional!=="all"&&(0,XY.alwaysValidSchema)(G,Y))return;let z=(0,QY.allSchemaProperties)(W.properties),K=(0,QY.allSchemaProperties)(W.patternProperties);F(),Q.ok(_1._`${J} === ${h_.default.errors}`);function F(){X.forIn("key",$,(L)=>{if(!z.length&&!K.length)A(L);else X.if(D(L),()=>A(L))})}function D(L){let O;if(z.length>8){let M=(0,XY.schemaRefOrVal)(G,W.properties,"properties");O=(0,QY.isOwnProperty)(X,M,L)}else if(z.length)O=(0,_1.or)(...z.map((M)=>_1._`${L} === ${M}`));else O=_1.nil;if(K.length)O=(0,_1.or)(O,...K.map((M)=>_1._`${(0,QY.usePattern)(Q,M)}.test(${L})`));return(0,_1.not)(O)}function V(L){X.code(_1._`delete ${$}[${L}]`)}function A(L){if(B.removeAdditional==="all"||B.removeAdditional&&Y===!1){V(L);return}if(Y===!1){if(Q.setParams({additionalProperty:L}),Q.error(),!H)X.break();return}if(typeof Y=="object"&&!(0,XY.alwaysValidSchema)(G,Y)){let O=X.name("valid");if(B.removeAdditional==="failing")q(L,O,!1),X.if((0,_1.not)(O),()=>{Q.reset(),V(L)});else if(q(L,O),!H)X.if((0,_1.not)(O),()=>X.break())}}function q(L,O,M){let N={keyword:"additionalProperties",dataProp:L,dataPropType:XY.Type.Str};if(M===!1)Object.assign(N,{compositeRule:!0,createErrors:!1,allErrors:!1});Q.subschema(N,O)}}};TD.default=l_});var _D=w((vD)=>{Object.defineProperty(vD,"__esModule",{value:!0});var c_=Z8(),CD=A1(),JJ=W0(),kD=$J(),p_={keyword:"properties",type:"object",schemaType:"object",code(Q){let{gen:X,schema:Y,parentSchema:W,data:$,it:J}=Q;if(J.opts.removeAdditional==="all"&&W.additionalProperties===void 0)kD.default.code(new c_.KeywordCxt(J,kD.default,"additionalProperties"));let G=(0,CD.allSchemaProperties)(Y);for(let F of G)J.definedProperties.add(F);if(J.opts.unevaluated&&G.length&&J.props!==!0)J.props=JJ.mergeEvaluated.props(X,(0,JJ.toHash)(G),J.props);let H=G.filter((F)=>!(0,JJ.alwaysValidSchema)(J,Y[F]));if(H.length===0)return;let B=X.name("valid");for(let F of H){if(z(F))K(F);else{if(X.if((0,CD.propertyInData)(X,$,F,J.opts.ownProperties)),K(F),!J.allErrors)X.else().var(B,!0);X.endIf()}Q.it.definedProperties.add(F),Q.ok(B)}function z(F){return J.opts.useDefaults&&!J.compositeRule&&Y[F].default!==void 0}function K(F){Q.subschema({keyword:"properties",schemaProp:F,dataProp:F},B)}}};vD.default=p_});var hD=w((fD)=>{Object.defineProperty(fD,"__esModule",{value:!0});var xD=A1(),YY=i(),yD=W0(),gD=W0(),i_={keyword:"patternProperties",type:"object",schemaType:"object",code(Q){let{gen:X,schema:Y,data:W,parentSchema:$,it:J}=Q,{opts:G}=J,H=(0,xD.allSchemaProperties)(Y),B=H.filter((q)=>(0,yD.alwaysValidSchema)(J,Y[q]));if(H.length===0||B.length===H.length&&(!J.opts.unevaluated||J.props===!0))return;let z=G.strictSchema&&!G.allowMatchingProperties&&$.properties,K=X.name("valid");if(J.props!==!0&&!(J.props instanceof YY.Name))J.props=(0,gD.evaluatedPropsToName)(X,J.props);let{props:F}=J;D();function D(){for(let q of H){if(z)V(q);if(J.allErrors)A(q);else X.var(K,!0),A(q),X.if(K)}}function V(q){for(let L in z)if(new RegExp(q).test(L))(0,yD.checkStrictMode)(J,`property ${L} matches pattern ${q} (use allowMatchingProperties)`)}function A(q){X.forIn("key",W,(L)=>{X.if(YY._`${(0,xD.usePattern)(Q,q)}.test(${L})`,()=>{let O=B.includes(q);if(!O)Q.subschema({keyword:"patternProperties",schemaProp:q,dataProp:L,dataPropType:gD.Type.Str},K);if(J.opts.unevaluated&&F!==!0)X.assign(YY._`${F}[${L}]`,!0);else if(!O&&!J.allErrors)X.if((0,YY.not)(K),()=>X.break())})})}}};fD.default=i_});var lD=w((uD)=>{Object.defineProperty(uD,"__esModule",{value:!0});var o_=W0(),r_={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(Q){let{gen:X,schema:Y,it:W}=Q;if((0,o_.alwaysValidSchema)(W,Y)){Q.fail();return}let $=X.name("valid");Q.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},$),Q.failResult($,()=>Q.reset(),()=>Q.error())},error:{message:"must NOT be valid"}};uD.default=r_});var cD=w((mD)=>{Object.defineProperty(mD,"__esModule",{value:!0});var a_=A1(),s_={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:a_.validateUnion,error:{message:"must match a schema in anyOf"}};mD.default=s_});var dD=w((pD)=>{Object.defineProperty(pD,"__esModule",{value:!0});var WY=i(),Qx=W0(),Xx={message:"must match exactly one schema in oneOf",params:({params:Q})=>WY._`{passingSchemas: ${Q.passing}}`},Yx={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:Xx,code(Q){let{gen:X,schema:Y,parentSchema:W,it:$}=Q;if(!Array.isArray(Y))throw Error("ajv implementation error");if($.opts.discriminator&&W.discriminator)return;let J=Y,G=X.let("valid",!1),H=X.let("passing",null),B=X.name("_valid");Q.setParams({passing:H}),X.block(z),Q.result(G,()=>Q.reset(),()=>Q.error(!0));function z(){J.forEach((K,F)=>{let D;if((0,Qx.alwaysValidSchema)($,K))X.var(B,!0);else D=Q.subschema({keyword:"oneOf",schemaProp:F,compositeRule:!0},B);if(F>0)X.if(WY._`${B} && ${G}`).assign(G,!1).assign(H,WY._`[${H}, ${F}]`).else();X.if(B,()=>{if(X.assign(G,!0),X.assign(H,F),D)Q.mergeEvaluated(D,WY.Name)})})}}};pD.default=Yx});var nD=w((iD)=>{Object.defineProperty(iD,"__esModule",{value:!0});var $x=W0(),Jx={keyword:"allOf",schemaType:"array",code(Q){let{gen:X,schema:Y,it:W}=Q;if(!Array.isArray(Y))throw Error("ajv implementation error");let $=X.name("valid");Y.forEach((J,G)=>{if((0,$x.alwaysValidSchema)(W,J))return;let H=Q.subschema({keyword:"allOf",schemaProp:G},$);Q.ok($),Q.mergeEvaluated(H)})}};iD.default=Jx});var aD=w((tD)=>{Object.defineProperty(tD,"__esModule",{value:!0});var $Y=i(),rD=W0(),Hx={message:({params:Q})=>$Y.str`must match "${Q.ifClause}" schema`,params:({params:Q})=>$Y._`{failingKeyword: ${Q.ifClause}}`},Bx={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:Hx,code(Q){let{gen:X,parentSchema:Y,it:W}=Q;if(Y.then===void 0&&Y.else===void 0)(0,rD.checkStrictMode)(W,'"if" without "then" and "else" is ignored');let $=oD(W,"then"),J=oD(W,"else");if(!$&&!J)return;let G=X.let("valid",!0),H=X.name("_valid");if(B(),Q.reset(),$&&J){let K=X.let("ifClause");Q.setParams({ifClause:K}),X.if(H,z("then",K),z("else",K))}else if($)X.if(H,z("then"));else X.if((0,$Y.not)(H),z("else"));Q.pass(G,()=>Q.error(!0));function B(){let K=Q.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},H);Q.mergeEvaluated(K)}function z(K,F){return()=>{let D=Q.subschema({keyword:K},H);if(X.assign(G,H),Q.mergeValidEvaluated(D,G),F)X.assign(F,$Y._`${K}`);else Q.setParams({ifClause:K})}}}};function oD(Q,X){let Y=Q.schema[X];return Y!==void 0&&!(0,rD.alwaysValidSchema)(Q,Y)}tD.default=Bx});var eD=w((sD)=>{Object.defineProperty(sD,"__esModule",{value:!0});var Kx=W0(),Fx={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:Q,parentSchema:X,it:Y}){if(X.if===void 0)(0,Kx.checkStrictMode)(Y,`"${Q}" without "if" is ignored`)}};sD.default=Fx});var XL=w((QL)=>{Object.defineProperty(QL,"__esModule",{value:!0});var qx=XJ(),Ax=DD(),Dx=YJ(),Lx=UD(),Ox=wD(),Ux=RD(),jx=ID(),wx=$J(),Mx=_D(),Nx=hD(),bx=lD(),Px=cD(),Zx=dD(),Rx=nD(),Ex=aD(),Sx=eD();function Ix(Q=!1){let X=[bx.default,Px.default,Zx.default,Rx.default,Ex.default,Sx.default,jx.default,wx.default,Ux.default,Mx.default,Nx.default];if(Q)X.push(Ax.default,Lx.default);else X.push(qx.default,Dx.default);return X.push(Ox.default),X}QL.default=Ix});var WL=w((YL)=>{Object.defineProperty(YL,"__esModule",{value:!0});var Z0=i(),Cx={message:({schemaCode:Q})=>Z0.str`must match format "${Q}"`,params:({schemaCode:Q})=>Z0._`{format: ${Q}}`},kx={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:Cx,code(Q,X){let{gen:Y,data:W,$data:$,schema:J,schemaCode:G,it:H}=Q,{opts:B,errSchemaPath:z,schemaEnv:K,self:F}=H;if(!B.validateFormats)return;if($)D();else V();function D(){let A=Y.scopeValue("formats",{ref:F.formats,code:B.code.formats}),q=Y.const("fDef",Z0._`${A}[${G}]`),L=Y.let("fType"),O=Y.let("format");Y.if(Z0._`typeof ${q} == "object" && !(${q} instanceof RegExp)`,()=>Y.assign(L,Z0._`${q}.type || "string"`).assign(O,Z0._`${q}.validate`),()=>Y.assign(L,Z0._`"string"`).assign(O,q)),Q.fail$data((0,Z0.or)(M(),N()));function M(){if(B.strictSchema===!1)return Z0.nil;return Z0._`${G} && !${O}`}function N(){let C=K.$async?Z0._`(${q}.async ? await ${O}(${W}) : ${O}(${W}))`:Z0._`${O}(${W})`,Z=Z0._`(typeof ${O} == "function" ? ${C} : ${O}.test(${W}))`;return Z0._`${O} && ${O} !== true && ${L} === ${X} && !${Z}`}}function V(){let A=F.formats[J];if(!A){M();return}if(A===!0)return;let[q,L,O]=N(A);if(q===X)Q.pass(C());function M(){if(B.strictSchema===!1){F.logger.warn(Z());return}throw Error(Z());function Z(){return`unknown format "${J}" ignored in schema at path "${z}"`}}function N(Z){let K0=Z instanceof RegExp?(0,Z0.regexpCode)(Z):B.code.formats?Z0._`${B.code.formats}${(0,Z0.getProperty)(J)}`:void 0,b0=Y.scopeValue("formats",{key:J,ref:Z,code:K0});if(typeof Z=="object"&&!(Z instanceof RegExp))return[Z.type||"string",Z.validate,Z0._`${b0}.validate`];return["string",Z,b0]}function C(){if(typeof A=="object"&&!(A instanceof RegExp)&&A.async){if(!K.$async)throw Error("async format in sync schema");return Z0._`await ${O}(${W})`}return typeof L=="function"?Z0._`${O}(${W})`:Z0._`${O}.test(${W})`}}}};YL.default=kx});var JL=w(($L)=>{Object.defineProperty($L,"__esModule",{value:!0});var _x=WL(),xx=[_x.default];$L.default=xx});var BL=w((GL)=>{Object.defineProperty(GL,"__esModule",{value:!0});GL.contentVocabulary=GL.metadataVocabulary=void 0;GL.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];GL.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var FL=w((KL)=>{Object.defineProperty(KL,"__esModule",{value:!0});var fx=vA(),hx=GD(),ux=XL(),lx=JL(),zL=BL(),mx=[fx.default,hx.default,(0,ux.default)(),lx.default,zL.metadataVocabulary,zL.contentVocabulary];KL.default=mx});var DL=w((qL)=>{Object.defineProperty(qL,"__esModule",{value:!0});qL.DiscrError=void 0;var VL;(function(Q){Q.Tag="tag",Q.Mapping="mapping"})(VL||(qL.DiscrError=VL={}))});var UL=w((OL)=>{Object.defineProperty(OL,"__esModule",{value:!0});var X4=i(),GJ=DL(),LL=cX(),px=R8(),dx=W0(),ix={message:({params:{discrError:Q,tagName:X}})=>Q===GJ.DiscrError.Tag?`tag "${X}" must be string`:`value of tag "${X}" must be in oneOf`,params:({params:{discrError:Q,tag:X,tagName:Y}})=>X4._`{error: ${Q}, tag: ${Y}, tagValue: ${X}}`},nx={keyword:"discriminator",type:"object",schemaType:"object",error:ix,code(Q){let{gen:X,data:Y,schema:W,parentSchema:$,it:J}=Q,{oneOf:G}=$;if(!J.opts.discriminator)throw Error("discriminator: requires discriminator option");let H=W.propertyName;if(typeof H!="string")throw Error("discriminator: requires propertyName");if(W.mapping)throw Error("discriminator: mapping is not supported");if(!G)throw Error("discriminator: requires oneOf keyword");let B=X.let("valid",!1),z=X.const("tag",X4._`${Y}${(0,X4.getProperty)(H)}`);X.if(X4._`typeof ${z} == "string"`,()=>K(),()=>Q.error(!1,{discrError:GJ.DiscrError.Tag,tag:z,tagName:H})),Q.ok(B);function K(){let V=D();X.if(!1);for(let A in V)X.elseIf(X4._`${z} === ${A}`),X.assign(B,F(V[A]));X.else(),Q.error(!1,{discrError:GJ.DiscrError.Mapping,tag:z,tagName:H}),X.endIf()}function F(V){let A=X.name("valid"),q=Q.subschema({keyword:"oneOf",schemaProp:V},A);return Q.mergeEvaluated(q,X4.Name),A}function D(){var V;let A={},q=O($),L=!0;for(let C=0;C<G.length;C++){let Z=G[C];if((Z===null||Z===void 0?void 0:Z.$ref)&&!(0,dx.schemaHasRulesButRef)(Z,J.self.RULES)){let b0=Z.$ref;if(Z=LL.resolveRef.call(J.self,J.schemaEnv.root,J.baseId,b0),Z instanceof LL.SchemaEnv)Z=Z.schema;if(Z===void 0)throw new px.default(J.opts.uriResolver,J.baseId,b0)}let K0=(V=Z===null||Z===void 0?void 0:Z.properties)===null||V===void 0?void 0:V[H];if(typeof K0!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${H}"`);L=L&&(q||O(Z)),M(K0,C)}if(!L)throw Error(`discriminator: "${H}" must be required`);return A;function O({required:C}){return Array.isArray(C)&&C.includes(H)}function M(C,Z){if(C.const)N(C.const,Z);else if(C.enum)for(let K0 of C.enum)N(K0,Z);else throw Error(`discriminator: "properties/${H}" must have "const" or "enum"`)}function N(C,Z){if(typeof C!="string"||C in A)throw Error(`discriminator: "${H}" values must be unique strings`);A[C]=Z}}}};OL.default=nx});var jL=w((Ed,rx)=>{rx.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 ML=w((H1,HJ)=>{Object.defineProperty(H1,"__esModule",{value:!0});H1.MissingRefError=H1.ValidationError=H1.CodeGen=H1.Name=H1.nil=H1.stringify=H1.str=H1._=H1.KeywordCxt=H1.Ajv=void 0;var tx=bA(),ax=FL(),sx=UL(),wL=jL(),ex=["/properties"],JY="http://json-schema.org/draft-07/schema";class g8 extends tx.default{_addVocabularies(){if(super._addVocabularies(),ax.default.forEach((Q)=>this.addVocabulary(Q)),this.opts.discriminator)this.addKeyword(sx.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let Q=this.opts.$data?this.$dataMetaSchema(wL,ex):wL;this.addMetaSchema(Q,JY,!1),this.refs["http://json-schema.org/schema"]=JY}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(JY)?JY:void 0)}}H1.Ajv=g8;HJ.exports=H1=g8;HJ.exports.Ajv=g8;Object.defineProperty(H1,"__esModule",{value:!0});H1.default=g8;var Qy=Z8();Object.defineProperty(H1,"KeywordCxt",{enumerable:!0,get:function(){return Qy.KeywordCxt}});var Y4=i();Object.defineProperty(H1,"_",{enumerable:!0,get:function(){return Y4._}});Object.defineProperty(H1,"str",{enumerable:!0,get:function(){return Y4.str}});Object.defineProperty(H1,"stringify",{enumerable:!0,get:function(){return Y4.stringify}});Object.defineProperty(H1,"nil",{enumerable:!0,get:function(){return Y4.nil}});Object.defineProperty(H1,"Name",{enumerable:!0,get:function(){return Y4.Name}});Object.defineProperty(H1,"CodeGen",{enumerable:!0,get:function(){return Y4.CodeGen}});var Xy=lX();Object.defineProperty(H1,"ValidationError",{enumerable:!0,get:function(){return Xy.default}});var Yy=R8();Object.defineProperty(H1,"MissingRefError",{enumerable:!0,get:function(){return Yy.default}})});var bL=w((NL)=>{Object.defineProperty(NL,"__esModule",{value:!0});NL.formatLimitDefinition=void 0;var Jy=ML(),x1=i(),v6=x1.operators,GY={formatMaximum:{okStr:"<=",ok:v6.LTE,fail:v6.GT},formatMinimum:{okStr:">=",ok:v6.GTE,fail:v6.LT},formatExclusiveMaximum:{okStr:"<",ok:v6.LT,fail:v6.GTE},formatExclusiveMinimum:{okStr:">",ok:v6.GT,fail:v6.LTE}},Gy={message:({keyword:Q,schemaCode:X})=>x1.str`should be ${GY[Q].okStr} ${X}`,params:({keyword:Q,schemaCode:X})=>x1._`{comparison: ${GY[Q].okStr}, limit: ${X}}`};NL.formatLimitDefinition={keyword:Object.keys(GY),type:"string",schemaType:"string",$data:!0,error:Gy,code(Q){let{gen:X,data:Y,schemaCode:W,keyword:$,it:J}=Q,{opts:G,self:H}=J;if(!G.validateFormats)return;let B=new Jy.KeywordCxt(J,H.RULES.all.format.definition,"format");if(B.$data)z();else K();function z(){let D=X.scopeValue("formats",{ref:H.formats,code:G.code.formats}),V=X.const("fmt",x1._`${D}[${B.schemaCode}]`);Q.fail$data((0,x1.or)(x1._`typeof ${V} != "object"`,x1._`${V} instanceof RegExp`,x1._`typeof ${V}.compare != "function"`,F(V)))}function K(){let D=B.schema,V=H.formats[D];if(!V||V===!0)return;if(typeof V!="object"||V instanceof RegExp||typeof V.compare!="function")throw Error(`"${$}": format "${D}" does not define "compare" function`);let A=X.scopeValue("formats",{key:D,ref:V,code:G.code.formats?x1._`${G.code.formats}${(0,x1.getProperty)(D)}`:void 0});Q.fail$data(F(A))}function F(D){return x1._`${D}.compare(${Y}, ${W}) ${GY[$].fail} 0`}},dependencies:["format"]};var Hy=(Q)=>{return Q.addKeyword(NL.formatLimitDefinition),Q};NL.default=Hy});var EL=w((f8,RL)=>{Object.defineProperty(f8,"__esModule",{value:!0});var W4=jV(),zy=bL(),zJ=i(),PL=new zJ.Name("fullFormats"),Ky=new zJ.Name("fastFormats"),KJ=(Q,X={keywords:!0})=>{if(Array.isArray(X))return ZL(Q,X,W4.fullFormats,PL),Q;let[Y,W]=X.mode==="fast"?[W4.fastFormats,Ky]:[W4.fullFormats,PL],$=X.formats||W4.formatNames;if(ZL(Q,$,Y,W),X.keywords)(0,zy.default)(Q);return Q};KJ.get=(Q,X="full")=>{let W=(X==="fast"?W4.fastFormats:W4.fullFormats)[Q];if(!W)throw Error(`Unknown format "${Q}"`);return W};function ZL(Q,X,Y,W){var $,J;($=(J=Q.opts.code).formats)!==null&&$!==void 0||(J.formats=zJ._`require("ajv-formats/dist/formats").${W}`);for(let G of X)Q.addFormat(G,Y[G])}RL.exports=f8=KJ;Object.defineProperty(f8,"__esModule",{value:!0});f8.default=KJ});var c={};m8(c,{void:()=>nO,util:()=>r,unknown:()=>dO,union:()=>tO,undefined:()=>mO,tuple:()=>eO,transformer:()=>zU,symbol:()=>lO,string:()=>tJ,strictObject:()=>rO,setErrorMap:()=>VO,set:()=>YU,record:()=>QU,quotelessJson:()=>KO,promise:()=>BU,preprocess:()=>VU,pipeline:()=>qU,ostring:()=>AU,optional:()=>KU,onumber:()=>DU,oboolean:()=>LU,objectUtil:()=>TY,object:()=>vY,number:()=>aJ,nullable:()=>FU,null:()=>cO,never:()=>iO,nativeEnum:()=>HU,nan:()=>fO,map:()=>XU,makeIssue:()=>F4,literal:()=>JU,lazy:()=>$U,late:()=>yO,isValid:()=>z6,isDirty:()=>p8,isAsync:()=>V9,isAborted:()=>c8,intersection:()=>sO,instanceof:()=>gO,getParsedType:()=>g1,getErrorMap:()=>F9,function:()=>WU,enum:()=>GU,effect:()=>zU,discriminatedUnion:()=>aO,defaultErrorMap:()=>i1,datetimeRegex:()=>nJ,date:()=>uO,custom:()=>rJ,coerce:()=>OU,boolean:()=>sJ,bigint:()=>hO,array:()=>oO,any:()=>pO,addIssueToContext:()=>T,ZodVoid:()=>q4,ZodUnknown:()=>K6,ZodUnion:()=>U9,ZodUndefined:()=>L9,ZodType:()=>n,ZodTuple:()=>h1,ZodTransformer:()=>w1,ZodSymbol:()=>V4,ZodString:()=>O1,ZodSet:()=>m6,ZodSchema:()=>n,ZodRecord:()=>A4,ZodReadonly:()=>Z9,ZodPromise:()=>c6,ZodPipeline:()=>O4,ZodParsedType:()=>R,ZodOptional:()=>B1,ZodObject:()=>M0,ZodNumber:()=>F6,ZodNullable:()=>o1,ZodNull:()=>O9,ZodNever:()=>f1,ZodNativeEnum:()=>N9,ZodNaN:()=>L4,ZodMap:()=>D4,ZodLiteral:()=>M9,ZodLazy:()=>w9,ZodIssueCode:()=>b,ZodIntersection:()=>j9,ZodFunction:()=>A9,ZodFirstPartyTypeKind:()=>P,ZodError:()=>r0,ZodEnum:()=>q6,ZodEffects:()=>w1,ZodDiscriminatedUnion:()=>d8,ZodDefault:()=>b9,ZodDate:()=>u6,ZodCatch:()=>P9,ZodBranded:()=>i8,ZodBoolean:()=>D9,ZodBigInt:()=>V6,ZodArray:()=>U1,ZodAny:()=>l6,Schema:()=>n,ParseStatus:()=>T0,OK:()=>f0,NEVER:()=>UU,INVALID:()=>f,EMPTY_PATH:()=>qO,DIRTY:()=>h6,BRAND:()=>xO});var r;(function(Q){Q.assertEqual=($)=>{};function X($){}Q.assertIs=X;function Y($){throw Error()}Q.assertNever=Y,Q.arrayToEnum=($)=>{let J={};for(let G of $)J[G]=G;return J},Q.getValidEnumValues=($)=>{let J=Q.objectKeys($).filter((H)=>typeof $[$[H]]!=="number"),G={};for(let H of J)G[H]=$[H];return Q.objectValues(G)},Q.objectValues=($)=>{return Q.objectKeys($).map(function(J){return $[J]})},Q.objectKeys=typeof Object.keys==="function"?($)=>Object.keys($):($)=>{let J=[];for(let G in $)if(Object.prototype.hasOwnProperty.call($,G))J.push(G);return J},Q.find=($,J)=>{for(let G of $)if(J(G))return G;return},Q.isInteger=typeof Number.isInteger==="function"?($)=>Number.isInteger($):($)=>typeof $==="number"&&Number.isFinite($)&&Math.floor($)===$;function W($,J=" | "){return $.map((G)=>typeof G==="string"?`'${G}'`:G).join(J)}Q.joinValues=W,Q.jsonStringifyReplacer=($,J)=>{if(typeof J==="bigint")return J.toString();return J}})(r||(r={}));var TY;(function(Q){Q.mergeShapes=(X,Y)=>{return{...X,...Y}}})(TY||(TY={}));var R=r.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),g1=(Q)=>{switch(typeof Q){case"undefined":return R.undefined;case"string":return R.string;case"number":return Number.isNaN(Q)?R.nan:R.number;case"boolean":return R.boolean;case"function":return R.function;case"bigint":return R.bigint;case"symbol":return R.symbol;case"object":if(Array.isArray(Q))return R.array;if(Q===null)return R.null;if(Q.then&&typeof Q.then==="function"&&Q.catch&&typeof Q.catch==="function")return R.promise;if(typeof Map<"u"&&Q instanceof Map)return R.map;if(typeof Set<"u"&&Q instanceof Set)return R.set;if(typeof Date<"u"&&Q instanceof Date)return R.date;return R.object;default:return R.unknown}};var b=r.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"]),KO=(Q)=>{return JSON.stringify(Q,null,2).replace(/"([^"]+)":/g,"$1:")};class r0 extends Error{get errors(){return this.issues}constructor(Q){super();this.issues=[],this.addIssue=(Y)=>{this.issues=[...this.issues,Y]},this.addIssues=(Y=[])=>{this.issues=[...this.issues,...Y]};let X=new.target.prototype;if(Object.setPrototypeOf)Object.setPrototypeOf(this,X);else this.__proto__=X;this.name="ZodError",this.issues=Q}format(Q){let X=Q||function($){return $.message},Y={_errors:[]},W=($)=>{for(let J of $.issues)if(J.code==="invalid_union")J.unionErrors.map(W);else if(J.code==="invalid_return_type")W(J.returnTypeError);else if(J.code==="invalid_arguments")W(J.argumentsError);else if(J.path.length===0)Y._errors.push(X(J));else{let G=Y,H=0;while(H<J.path.length){let B=J.path[H];if(H!==J.path.length-1)G[B]=G[B]||{_errors:[]};else G[B]=G[B]||{_errors:[]},G[B]._errors.push(X(J));G=G[B],H++}}};return W(this),Y}static assert(Q){if(!(Q instanceof r0))throw Error(`Not a ZodError: ${Q}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,r.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(Q=(X)=>X.message){let X={},Y=[];for(let W of this.issues)if(W.path.length>0){let $=W.path[0];X[$]=X[$]||[],X[$].push(Q(W))}else Y.push(Q(W));return{formErrors:Y,fieldErrors:X}}get formErrors(){return this.flatten()}}r0.create=(Q)=>{return new r0(Q)};var FO=(Q,X)=>{let Y;switch(Q.code){case b.invalid_type:if(Q.received===R.undefined)Y="Required";else Y=`Expected ${Q.expected}, received ${Q.received}`;break;case b.invalid_literal:Y=`Invalid literal value, expected ${JSON.stringify(Q.expected,r.jsonStringifyReplacer)}`;break;case b.unrecognized_keys:Y=`Unrecognized key(s) in object: ${r.joinValues(Q.keys,", ")}`;break;case b.invalid_union:Y="Invalid input";break;case b.invalid_union_discriminator:Y=`Invalid discriminator value. Expected ${r.joinValues(Q.options)}`;break;case b.invalid_enum_value:Y=`Invalid enum value. Expected ${r.joinValues(Q.options)}, received '${Q.received}'`;break;case b.invalid_arguments:Y="Invalid function arguments";break;case b.invalid_return_type:Y="Invalid function return type";break;case b.invalid_date:Y="Invalid date";break;case b.invalid_string:if(typeof Q.validation==="object")if("includes"in Q.validation){if(Y=`Invalid input: must include "${Q.validation.includes}"`,typeof Q.validation.position==="number")Y=`${Y} at one or more positions greater than or equal to ${Q.validation.position}`}else if("startsWith"in Q.validation)Y=`Invalid input: must start with "${Q.validation.startsWith}"`;else if("endsWith"in Q.validation)Y=`Invalid input: must end with "${Q.validation.endsWith}"`;else r.assertNever(Q.validation);else if(Q.validation!=="regex")Y=`Invalid ${Q.validation}`;else Y="Invalid";break;case b.too_small:if(Q.type==="array")Y=`Array must contain ${Q.exact?"exactly":Q.inclusive?"at least":"more than"} ${Q.minimum} element(s)`;else if(Q.type==="string")Y=`String must contain ${Q.exact?"exactly":Q.inclusive?"at least":"over"} ${Q.minimum} character(s)`;else if(Q.type==="number")Y=`Number must be ${Q.exact?"exactly equal to ":Q.inclusive?"greater than or equal to ":"greater than "}${Q.minimum}`;else if(Q.type==="bigint")Y=`Number must be ${Q.exact?"exactly equal to ":Q.inclusive?"greater than or equal to ":"greater than "}${Q.minimum}`;else if(Q.type==="date")Y=`Date must be ${Q.exact?"exactly equal to ":Q.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(Q.minimum))}`;else Y="Invalid input";break;case b.too_big:if(Q.type==="array")Y=`Array must contain ${Q.exact?"exactly":Q.inclusive?"at most":"less than"} ${Q.maximum} element(s)`;else if(Q.type==="string")Y=`String must contain ${Q.exact?"exactly":Q.inclusive?"at most":"under"} ${Q.maximum} character(s)`;else if(Q.type==="number")Y=`Number must be ${Q.exact?"exactly":Q.inclusive?"less than or equal to":"less than"} ${Q.maximum}`;else if(Q.type==="bigint")Y=`BigInt must be ${Q.exact?"exactly":Q.inclusive?"less than or equal to":"less than"} ${Q.maximum}`;else if(Q.type==="date")Y=`Date must be ${Q.exact?"exactly":Q.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(Q.maximum))}`;else Y="Invalid input";break;case b.custom:Y="Invalid input";break;case b.invalid_intersection_types:Y="Intersection results could not be merged";break;case b.not_multiple_of:Y=`Number must be a multiple of ${Q.multipleOf}`;break;case b.not_finite:Y="Number must be finite";break;default:Y=X.defaultError,r.assertNever(Q)}return{message:Y}},i1=FO;var mJ=i1;function VO(Q){mJ=Q}function F9(){return mJ}var F4=(Q)=>{let{data:X,path:Y,errorMaps:W,issueData:$}=Q,J=[...Y,...$.path||[]],G={...$,path:J};if($.message!==void 0)return{...$,path:J,message:$.message};let H="",B=W.filter((z)=>!!z).slice().reverse();for(let z of B)H=z(G,{data:X,defaultError:H}).message;return{...$,path:J,message:H}},qO=[];function T(Q,X){let Y=F9(),W=F4({issueData:X,data:Q.data,path:Q.path,errorMaps:[Q.common.contextualErrorMap,Q.schemaErrorMap,Y,Y===i1?void 0:i1].filter(($)=>!!$)});Q.common.issues.push(W)}class T0{constructor(){this.value="valid"}dirty(){if(this.value==="valid")this.value="dirty"}abort(){if(this.value!=="aborted")this.value="aborted"}static mergeArray(Q,X){let Y=[];for(let W of X){if(W.status==="aborted")return f;if(W.status==="dirty")Q.dirty();Y.push(W.value)}return{status:Q.value,value:Y}}static async mergeObjectAsync(Q,X){let Y=[];for(let W of X){let $=await W.key,J=await W.value;Y.push({key:$,value:J})}return T0.mergeObjectSync(Q,Y)}static mergeObjectSync(Q,X){let Y={};for(let W of X){let{key:$,value:J}=W;if($.status==="aborted")return f;if(J.status==="aborted")return f;if($.status==="dirty")Q.dirty();if(J.status==="dirty")Q.dirty();if($.value!=="__proto__"&&(typeof J.value<"u"||W.alwaysSet))Y[$.value]=J.value}return{status:Q.value,value:Y}}}var f=Object.freeze({status:"aborted"}),h6=(Q)=>({status:"dirty",value:Q}),f0=(Q)=>({status:"valid",value:Q}),c8=(Q)=>Q.status==="aborted",p8=(Q)=>Q.status==="dirty",z6=(Q)=>Q.status==="valid",V9=(Q)=>typeof Promise<"u"&&Q instanceof Promise;var v;(function(Q){Q.errToObj=(X)=>typeof X==="string"?{message:X}:X||{},Q.toString=(X)=>typeof X==="string"?X:X?.message})(v||(v={}));class j1{constructor(Q,X,Y,W){this._cachedPath=[],this.parent=Q,this.data=X,this._path=Y,this._key=W}get path(){if(!this._cachedPath.length)if(Array.isArray(this._key))this._cachedPath.push(...this._path,...this._key);else this._cachedPath.push(...this._path,this._key);return this._cachedPath}}var cJ=(Q,X)=>{if(z6(X))return{success:!0,data:X.value};else{if(!Q.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let Y=new r0(Q.common.issues);return this._error=Y,this._error}}}};function m(Q){if(!Q)return{};let{errorMap:X,invalid_type_error:Y,required_error:W,description:$}=Q;if(X&&(Y||W))throw Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);if(X)return{errorMap:X,description:$};return{errorMap:(G,H)=>{let{message:B}=Q;if(G.code==="invalid_enum_value")return{message:B??H.defaultError};if(typeof H.data>"u")return{message:B??W??H.defaultError};if(G.code!=="invalid_type")return{message:H.defaultError};return{message:B??Y??H.defaultError}},description:$}}class n{get description(){return this._def.description}_getType(Q){return g1(Q.data)}_getOrReturnCtx(Q,X){return X||{common:Q.parent.common,data:Q.data,parsedType:g1(Q.data),schemaErrorMap:this._def.errorMap,path:Q.path,parent:Q.parent}}_processInputParams(Q){return{status:new T0,ctx:{common:Q.parent.common,data:Q.data,parsedType:g1(Q.data),schemaErrorMap:this._def.errorMap,path:Q.path,parent:Q.parent}}}_parseSync(Q){let X=this._parse(Q);if(V9(X))throw Error("Synchronous parse encountered promise.");return X}_parseAsync(Q){let X=this._parse(Q);return Promise.resolve(X)}parse(Q,X){let Y=this.safeParse(Q,X);if(Y.success)return Y.data;throw Y.error}safeParse(Q,X){let Y={common:{issues:[],async:X?.async??!1,contextualErrorMap:X?.errorMap},path:X?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:Q,parsedType:g1(Q)},W=this._parseSync({data:Q,path:Y.path,parent:Y});return cJ(Y,W)}"~validate"(Q){let X={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:Q,parsedType:g1(Q)};if(!this["~standard"].async)try{let Y=this._parseSync({data:Q,path:[],parent:X});return z6(Y)?{value:Y.value}:{issues:X.common.issues}}catch(Y){if(Y?.message?.toLowerCase()?.includes("encountered"))this["~standard"].async=!0;X.common={issues:[],async:!0}}return this._parseAsync({data:Q,path:[],parent:X}).then((Y)=>z6(Y)?{value:Y.value}:{issues:X.common.issues})}async parseAsync(Q,X){let Y=await this.safeParseAsync(Q,X);if(Y.success)return Y.data;throw Y.error}async safeParseAsync(Q,X){let Y={common:{issues:[],contextualErrorMap:X?.errorMap,async:!0},path:X?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:Q,parsedType:g1(Q)},W=this._parse({data:Q,path:Y.path,parent:Y}),$=await(V9(W)?W:Promise.resolve(W));return cJ(Y,$)}refine(Q,X){let Y=(W)=>{if(typeof X==="string"||typeof X>"u")return{message:X};else if(typeof X==="function")return X(W);else return X};return this._refinement((W,$)=>{let J=Q(W),G=()=>$.addIssue({code:b.custom,...Y(W)});if(typeof Promise<"u"&&J instanceof Promise)return J.then((H)=>{if(!H)return G(),!1;else return!0});if(!J)return G(),!1;else return!0})}refinement(Q,X){return this._refinement((Y,W)=>{if(!Q(Y))return W.addIssue(typeof X==="function"?X(Y,W):X),!1;else return!0})}_refinement(Q){return new w1({schema:this,typeName:P.ZodEffects,effect:{type:"refinement",refinement:Q}})}superRefine(Q){return this._refinement(Q)}constructor(Q){this.spa=this.safeParseAsync,this._def=Q,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:(X)=>this["~validate"](X)}}optional(){return B1.create(this,this._def)}nullable(){return o1.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return U1.create(this)}promise(){return c6.create(this,this._def)}or(Q){return U9.create([this,Q],this._def)}and(Q){return j9.create(this,Q,this._def)}transform(Q){return new w1({...m(this._def),schema:this,typeName:P.ZodEffects,effect:{type:"transform",transform:Q}})}default(Q){let X=typeof Q==="function"?Q:()=>Q;return new b9({...m(this._def),innerType:this,defaultValue:X,typeName:P.ZodDefault})}brand(){return new i8({typeName:P.ZodBranded,type:this,...m(this._def)})}catch(Q){let X=typeof Q==="function"?Q:()=>Q;return new P9({...m(this._def),innerType:this,catchValue:X,typeName:P.ZodCatch})}describe(Q){return new this.constructor({...this._def,description:Q})}pipe(Q){return O4.create(this,Q)}readonly(){return Z9.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}var AO=/^c[^\s-]{8,}$/i,DO=/^[0-9a-z]+$/,LO=/^[0-9A-HJKMNP-TV-Z]{26}$/i,OO=/^[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,UO=/^[a-z0-9_-]{21}$/i,jO=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,wO=/^[-+]?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)?)??$/,MO=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,NO="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",CY,bO=/^(?:(?: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])$/,PO=/^(?:(?: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])$/,ZO=/^(([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]))$/,RO=/^(([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])$/,EO=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,SO=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,dJ="((\\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])))",IO=new RegExp(`^${dJ}$`);function iJ(Q){let X="[0-5]\\d";if(Q.precision)X=`${X}\\.\\d{${Q.precision}}`;else if(Q.precision==null)X=`${X}(\\.\\d+)?`;let Y=Q.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${X})${Y}`}function TO(Q){return new RegExp(`^${iJ(Q)}$`)}function nJ(Q){let X=`${dJ}T${iJ(Q)}`,Y=[];if(Y.push(Q.local?"Z?":"Z"),Q.offset)Y.push("([+-]\\d{2}:?\\d{2})");return X=`${X}(${Y.join("|")})`,new RegExp(`^${X}$`)}function CO(Q,X){if((X==="v4"||!X)&&bO.test(Q))return!0;if((X==="v6"||!X)&&ZO.test(Q))return!0;return!1}function kO(Q,X){if(!jO.test(Q))return!1;try{let[Y]=Q.split(".");if(!Y)return!1;let W=Y.replace(/-/g,"+").replace(/_/g,"/").padEnd(Y.length+(4-Y.length%4)%4,"="),$=JSON.parse(atob(W));if(typeof $!=="object"||$===null)return!1;if("typ"in $&&$?.typ!=="JWT")return!1;if(!$.alg)return!1;if(X&&$.alg!==X)return!1;return!0}catch{return!1}}function vO(Q,X){if((X==="v4"||!X)&&PO.test(Q))return!0;if((X==="v6"||!X)&&RO.test(Q))return!0;return!1}class O1 extends n{_parse(Q){if(this._def.coerce)Q.data=String(Q.data);if(this._getType(Q)!==R.string){let $=this._getOrReturnCtx(Q);return T($,{code:b.invalid_type,expected:R.string,received:$.parsedType}),f}let Y=new T0,W=void 0;for(let $ of this._def.checks)if($.kind==="min"){if(Q.data.length<$.value)W=this._getOrReturnCtx(Q,W),T(W,{code:b.too_small,minimum:$.value,type:"string",inclusive:!0,exact:!1,message:$.message}),Y.dirty()}else if($.kind==="max"){if(Q.data.length>$.value)W=this._getOrReturnCtx(Q,W),T(W,{code:b.too_big,maximum:$.value,type:"string",inclusive:!0,exact:!1,message:$.message}),Y.dirty()}else if($.kind==="length"){let J=Q.data.length>$.value,G=Q.data.length<$.value;if(J||G){if(W=this._getOrReturnCtx(Q,W),J)T(W,{code:b.too_big,maximum:$.value,type:"string",inclusive:!0,exact:!0,message:$.message});else if(G)T(W,{code:b.too_small,minimum:$.value,type:"string",inclusive:!0,exact:!0,message:$.message});Y.dirty()}}else if($.kind==="email"){if(!MO.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{validation:"email",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="emoji"){if(!CY)CY=new RegExp(NO,"u");if(!CY.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{validation:"emoji",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="uuid"){if(!OO.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{validation:"uuid",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="nanoid"){if(!UO.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{validation:"nanoid",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="cuid"){if(!AO.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{validation:"cuid",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="cuid2"){if(!DO.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{validation:"cuid2",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="ulid"){if(!LO.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{validation:"ulid",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="url")try{new URL(Q.data)}catch{W=this._getOrReturnCtx(Q,W),T(W,{validation:"url",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="regex"){if($.regex.lastIndex=0,!$.regex.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{validation:"regex",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="trim")Q.data=Q.data.trim();else if($.kind==="includes"){if(!Q.data.includes($.value,$.position))W=this._getOrReturnCtx(Q,W),T(W,{code:b.invalid_string,validation:{includes:$.value,position:$.position},message:$.message}),Y.dirty()}else if($.kind==="toLowerCase")Q.data=Q.data.toLowerCase();else if($.kind==="toUpperCase")Q.data=Q.data.toUpperCase();else if($.kind==="startsWith"){if(!Q.data.startsWith($.value))W=this._getOrReturnCtx(Q,W),T(W,{code:b.invalid_string,validation:{startsWith:$.value},message:$.message}),Y.dirty()}else if($.kind==="endsWith"){if(!Q.data.endsWith($.value))W=this._getOrReturnCtx(Q,W),T(W,{code:b.invalid_string,validation:{endsWith:$.value},message:$.message}),Y.dirty()}else if($.kind==="datetime"){if(!nJ($).test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{code:b.invalid_string,validation:"datetime",message:$.message}),Y.dirty()}else if($.kind==="date"){if(!IO.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{code:b.invalid_string,validation:"date",message:$.message}),Y.dirty()}else if($.kind==="time"){if(!TO($).test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{code:b.invalid_string,validation:"time",message:$.message}),Y.dirty()}else if($.kind==="duration"){if(!wO.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{validation:"duration",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="ip"){if(!CO(Q.data,$.version))W=this._getOrReturnCtx(Q,W),T(W,{validation:"ip",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="jwt"){if(!kO(Q.data,$.alg))W=this._getOrReturnCtx(Q,W),T(W,{validation:"jwt",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="cidr"){if(!vO(Q.data,$.version))W=this._getOrReturnCtx(Q,W),T(W,{validation:"cidr",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="base64"){if(!EO.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{validation:"base64",code:b.invalid_string,message:$.message}),Y.dirty()}else if($.kind==="base64url"){if(!SO.test(Q.data))W=this._getOrReturnCtx(Q,W),T(W,{validation:"base64url",code:b.invalid_string,message:$.message}),Y.dirty()}else r.assertNever($);return{status:Y.value,value:Q.data}}_regex(Q,X,Y){return this.refinement((W)=>Q.test(W),{validation:X,code:b.invalid_string,...v.errToObj(Y)})}_addCheck(Q){return new O1({...this._def,checks:[...this._def.checks,Q]})}email(Q){return this._addCheck({kind:"email",...v.errToObj(Q)})}url(Q){return this._addCheck({kind:"url",...v.errToObj(Q)})}emoji(Q){return this._addCheck({kind:"emoji",...v.errToObj(Q)})}uuid(Q){return this._addCheck({kind:"uuid",...v.errToObj(Q)})}nanoid(Q){return this._addCheck({kind:"nanoid",...v.errToObj(Q)})}cuid(Q){return this._addCheck({kind:"cuid",...v.errToObj(Q)})}cuid2(Q){return this._addCheck({kind:"cuid2",...v.errToObj(Q)})}ulid(Q){return this._addCheck({kind:"ulid",...v.errToObj(Q)})}base64(Q){return this._addCheck({kind:"base64",...v.errToObj(Q)})}base64url(Q){return this._addCheck({kind:"base64url",...v.errToObj(Q)})}jwt(Q){return this._addCheck({kind:"jwt",...v.errToObj(Q)})}ip(Q){return this._addCheck({kind:"ip",...v.errToObj(Q)})}cidr(Q){return this._addCheck({kind:"cidr",...v.errToObj(Q)})}datetime(Q){if(typeof Q==="string")return this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:Q});return this._addCheck({kind:"datetime",precision:typeof Q?.precision>"u"?null:Q?.precision,offset:Q?.offset??!1,local:Q?.local??!1,...v.errToObj(Q?.message)})}date(Q){return this._addCheck({kind:"date",message:Q})}time(Q){if(typeof Q==="string")return this._addCheck({kind:"time",precision:null,message:Q});return this._addCheck({kind:"time",precision:typeof Q?.precision>"u"?null:Q?.precision,...v.errToObj(Q?.message)})}duration(Q){return this._addCheck({kind:"duration",...v.errToObj(Q)})}regex(Q,X){return this._addCheck({kind:"regex",regex:Q,...v.errToObj(X)})}includes(Q,X){return this._addCheck({kind:"includes",value:Q,position:X?.position,...v.errToObj(X?.message)})}startsWith(Q,X){return this._addCheck({kind:"startsWith",value:Q,...v.errToObj(X)})}endsWith(Q,X){return this._addCheck({kind:"endsWith",value:Q,...v.errToObj(X)})}min(Q,X){return this._addCheck({kind:"min",value:Q,...v.errToObj(X)})}max(Q,X){return this._addCheck({kind:"max",value:Q,...v.errToObj(X)})}length(Q,X){return this._addCheck({kind:"length",value:Q,...v.errToObj(X)})}nonempty(Q){return this.min(1,v.errToObj(Q))}trim(){return new O1({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new O1({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new O1({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find((Q)=>Q.kind==="datetime")}get isDate(){return!!this._def.checks.find((Q)=>Q.kind==="date")}get isTime(){return!!this._def.checks.find((Q)=>Q.kind==="time")}get isDuration(){return!!this._def.checks.find((Q)=>Q.kind==="duration")}get isEmail(){return!!this._def.checks.find((Q)=>Q.kind==="email")}get isURL(){return!!this._def.checks.find((Q)=>Q.kind==="url")}get isEmoji(){return!!this._def.checks.find((Q)=>Q.kind==="emoji")}get isUUID(){return!!this._def.checks.find((Q)=>Q.kind==="uuid")}get isNANOID(){return!!this._def.checks.find((Q)=>Q.kind==="nanoid")}get isCUID(){return!!this._def.checks.find((Q)=>Q.kind==="cuid")}get isCUID2(){return!!this._def.checks.find((Q)=>Q.kind==="cuid2")}get isULID(){return!!this._def.checks.find((Q)=>Q.kind==="ulid")}get isIP(){return!!this._def.checks.find((Q)=>Q.kind==="ip")}get isCIDR(){return!!this._def.checks.find((Q)=>Q.kind==="cidr")}get isBase64(){return!!this._def.checks.find((Q)=>Q.kind==="base64")}get isBase64url(){return!!this._def.checks.find((Q)=>Q.kind==="base64url")}get minLength(){let Q=null;for(let X of this._def.checks)if(X.kind==="min"){if(Q===null||X.value>Q)Q=X.value}return Q}get maxLength(){let Q=null;for(let X of this._def.checks)if(X.kind==="max"){if(Q===null||X.value<Q)Q=X.value}return Q}}O1.create=(Q)=>{return new O1({checks:[],typeName:P.ZodString,coerce:Q?.coerce??!1,...m(Q)})};function _O(Q,X){let Y=(Q.toString().split(".")[1]||"").length,W=(X.toString().split(".")[1]||"").length,$=Y>W?Y:W,J=Number.parseInt(Q.toFixed($).replace(".","")),G=Number.parseInt(X.toFixed($).replace(".",""));return J%G/10**$}class F6 extends n{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(Q){if(this._def.coerce)Q.data=Number(Q.data);if(this._getType(Q)!==R.number){let $=this._getOrReturnCtx(Q);return T($,{code:b.invalid_type,expected:R.number,received:$.parsedType}),f}let Y=void 0,W=new T0;for(let $ of this._def.checks)if($.kind==="int"){if(!r.isInteger(Q.data))Y=this._getOrReturnCtx(Q,Y),T(Y,{code:b.invalid_type,expected:"integer",received:"float",message:$.message}),W.dirty()}else if($.kind==="min"){if($.inclusive?Q.data<$.value:Q.data<=$.value)Y=this._getOrReturnCtx(Q,Y),T(Y,{code:b.too_small,minimum:$.value,type:"number",inclusive:$.inclusive,exact:!1,message:$.message}),W.dirty()}else if($.kind==="max"){if($.inclusive?Q.data>$.value:Q.data>=$.value)Y=this._getOrReturnCtx(Q,Y),T(Y,{code:b.too_big,maximum:$.value,type:"number",inclusive:$.inclusive,exact:!1,message:$.message}),W.dirty()}else if($.kind==="multipleOf"){if(_O(Q.data,$.value)!==0)Y=this._getOrReturnCtx(Q,Y),T(Y,{code:b.not_multiple_of,multipleOf:$.value,message:$.message}),W.dirty()}else if($.kind==="finite"){if(!Number.isFinite(Q.data))Y=this._getOrReturnCtx(Q,Y),T(Y,{code:b.not_finite,message:$.message}),W.dirty()}else r.assertNever($);return{status:W.value,value:Q.data}}gte(Q,X){return this.setLimit("min",Q,!0,v.toString(X))}gt(Q,X){return this.setLimit("min",Q,!1,v.toString(X))}lte(Q,X){return this.setLimit("max",Q,!0,v.toString(X))}lt(Q,X){return this.setLimit("max",Q,!1,v.toString(X))}setLimit(Q,X,Y,W){return new F6({...this._def,checks:[...this._def.checks,{kind:Q,value:X,inclusive:Y,message:v.toString(W)}]})}_addCheck(Q){return new F6({...this._def,checks:[...this._def.checks,Q]})}int(Q){return this._addCheck({kind:"int",message:v.toString(Q)})}positive(Q){return this._addCheck({kind:"min",value:0,inclusive:!1,message:v.toString(Q)})}negative(Q){return this._addCheck({kind:"max",value:0,inclusive:!1,message:v.toString(Q)})}nonpositive(Q){return this._addCheck({kind:"max",value:0,inclusive:!0,message:v.toString(Q)})}nonnegative(Q){return this._addCheck({kind:"min",value:0,inclusive:!0,message:v.toString(Q)})}multipleOf(Q,X){return this._addCheck({kind:"multipleOf",value:Q,message:v.toString(X)})}finite(Q){return this._addCheck({kind:"finite",message:v.toString(Q)})}safe(Q){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:v.toString(Q)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:v.toString(Q)})}get minValue(){let Q=null;for(let X of this._def.checks)if(X.kind==="min"){if(Q===null||X.value>Q)Q=X.value}return Q}get maxValue(){let Q=null;for(let X of this._def.checks)if(X.kind==="max"){if(Q===null||X.value<Q)Q=X.value}return Q}get isInt(){return!!this._def.checks.find((Q)=>Q.kind==="int"||Q.kind==="multipleOf"&&r.isInteger(Q.value))}get isFinite(){let Q=null,X=null;for(let Y of this._def.checks)if(Y.kind==="finite"||Y.kind==="int"||Y.kind==="multipleOf")return!0;else if(Y.kind==="min"){if(X===null||Y.value>X)X=Y.value}else if(Y.kind==="max"){if(Q===null||Y.value<Q)Q=Y.value}return Number.isFinite(X)&&Number.isFinite(Q)}}F6.create=(Q)=>{return new F6({checks:[],typeName:P.ZodNumber,coerce:Q?.coerce||!1,...m(Q)})};class V6 extends n{constructor(){super(...arguments);this.min=this.gte,this.max=this.lte}_parse(Q){if(this._def.coerce)try{Q.data=BigInt(Q.data)}catch{return this._getInvalidInput(Q)}if(this._getType(Q)!==R.bigint)return this._getInvalidInput(Q);let Y=void 0,W=new T0;for(let $ of this._def.checks)if($.kind==="min"){if($.inclusive?Q.data<$.value:Q.data<=$.value)Y=this._getOrReturnCtx(Q,Y),T(Y,{code:b.too_small,type:"bigint",minimum:$.value,inclusive:$.inclusive,message:$.message}),W.dirty()}else if($.kind==="max"){if($.inclusive?Q.data>$.value:Q.data>=$.value)Y=this._getOrReturnCtx(Q,Y),T(Y,{code:b.too_big,type:"bigint",maximum:$.value,inclusive:$.inclusive,message:$.message}),W.dirty()}else if($.kind==="multipleOf"){if(Q.data%$.value!==BigInt(0))Y=this._getOrReturnCtx(Q,Y),T(Y,{code:b.not_multiple_of,multipleOf:$.value,message:$.message}),W.dirty()}else r.assertNever($);return{status:W.value,value:Q.data}}_getInvalidInput(Q){let X=this._getOrReturnCtx(Q);return T(X,{code:b.invalid_type,expected:R.bigint,received:X.parsedType}),f}gte(Q,X){return this.setLimit("min",Q,!0,v.toString(X))}gt(Q,X){return this.setLimit("min",Q,!1,v.toString(X))}lte(Q,X){return this.setLimit("max",Q,!0,v.toString(X))}lt(Q,X){return this.setLimit("max",Q,!1,v.toString(X))}setLimit(Q,X,Y,W){return new V6({...this._def,checks:[...this._def.checks,{kind:Q,value:X,inclusive:Y,message:v.toString(W)}]})}_addCheck(Q){return new V6({...this._def,checks:[...this._def.checks,Q]})}positive(Q){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:v.toString(Q)})}negative(Q){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:v.toString(Q)})}nonpositive(Q){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:v.toString(Q)})}nonnegative(Q){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:v.toString(Q)})}multipleOf(Q,X){return this._addCheck({kind:"multipleOf",value:Q,message:v.toString(X)})}get minValue(){let Q=null;for(let X of this._def.checks)if(X.kind==="min"){if(Q===null||X.value>Q)Q=X.value}return Q}get maxValue(){let Q=null;for(let X of this._def.checks)if(X.kind==="max"){if(Q===null||X.value<Q)Q=X.value}return Q}}V6.create=(Q)=>{return new V6({checks:[],typeName:P.ZodBigInt,coerce:Q?.coerce??!1,...m(Q)})};class D9 extends n{_parse(Q){if(this._def.coerce)Q.data=Boolean(Q.data);if(this._getType(Q)!==R.boolean){let Y=this._getOrReturnCtx(Q);return T(Y,{code:b.invalid_type,expected:R.boolean,received:Y.parsedType}),f}return f0(Q.data)}}D9.create=(Q)=>{return new D9({typeName:P.ZodBoolean,coerce:Q?.coerce||!1,...m(Q)})};class u6 extends n{_parse(Q){if(this._def.coerce)Q.data=new Date(Q.data);if(this._getType(Q)!==R.date){let $=this._getOrReturnCtx(Q);return T($,{code:b.invalid_type,expected:R.date,received:$.parsedType}),f}if(Number.isNaN(Q.data.getTime())){let $=this._getOrReturnCtx(Q);return T($,{code:b.invalid_date}),f}let Y=new T0,W=void 0;for(let $ of this._def.checks)if($.kind==="min"){if(Q.data.getTime()<$.value)W=this._getOrReturnCtx(Q,W),T(W,{code:b.too_small,message:$.message,inclusive:!0,exact:!1,minimum:$.value,type:"date"}),Y.dirty()}else if($.kind==="max"){if(Q.data.getTime()>$.value)W=this._getOrReturnCtx(Q,W),T(W,{code:b.too_big,message:$.message,inclusive:!0,exact:!1,maximum:$.value,type:"date"}),Y.dirty()}else r.assertNever($);return{status:Y.value,value:new Date(Q.data.getTime())}}_addCheck(Q){return new u6({...this._def,checks:[...this._def.checks,Q]})}min(Q,X){return this._addCheck({kind:"min",value:Q.getTime(),message:v.toString(X)})}max(Q,X){return this._addCheck({kind:"max",value:Q.getTime(),message:v.toString(X)})}get minDate(){let Q=null;for(let X of this._def.checks)if(X.kind==="min"){if(Q===null||X.value>Q)Q=X.value}return Q!=null?new Date(Q):null}get maxDate(){let Q=null;for(let X of this._def.checks)if(X.kind==="max"){if(Q===null||X.value<Q)Q=X.value}return Q!=null?new Date(Q):null}}u6.create=(Q)=>{return new u6({checks:[],coerce:Q?.coerce||!1,typeName:P.ZodDate,...m(Q)})};class V4 extends n{_parse(Q){if(this._getType(Q)!==R.symbol){let Y=this._getOrReturnCtx(Q);return T(Y,{code:b.invalid_type,expected:R.symbol,received:Y.parsedType}),f}return f0(Q.data)}}V4.create=(Q)=>{return new V4({typeName:P.ZodSymbol,...m(Q)})};class L9 extends n{_parse(Q){if(this._getType(Q)!==R.undefined){let Y=this._getOrReturnCtx(Q);return T(Y,{code:b.invalid_type,expected:R.undefined,received:Y.parsedType}),f}return f0(Q.data)}}L9.create=(Q)=>{return new L9({typeName:P.ZodUndefined,...m(Q)})};class O9 extends n{_parse(Q){if(this._getType(Q)!==R.null){let Y=this._getOrReturnCtx(Q);return T(Y,{code:b.invalid_type,expected:R.null,received:Y.parsedType}),f}return f0(Q.data)}}O9.create=(Q)=>{return new O9({typeName:P.ZodNull,...m(Q)})};class l6 extends n{constructor(){super(...arguments);this._any=!0}_parse(Q){return f0(Q.data)}}l6.create=(Q)=>{return new l6({typeName:P.ZodAny,...m(Q)})};class K6 extends n{constructor(){super(...arguments);this._unknown=!0}_parse(Q){return f0(Q.data)}}K6.create=(Q)=>{return new K6({typeName:P.ZodUnknown,...m(Q)})};class f1 extends n{_parse(Q){let X=this._getOrReturnCtx(Q);return T(X,{code:b.invalid_type,expected:R.never,received:X.parsedType}),f}}f1.create=(Q)=>{return new f1({typeName:P.ZodNever,...m(Q)})};class q4 extends n{_parse(Q){if(this._getType(Q)!==R.undefined){let Y=this._getOrReturnCtx(Q);return T(Y,{code:b.invalid_type,expected:R.void,received:Y.parsedType}),f}return f0(Q.data)}}q4.create=(Q)=>{return new q4({typeName:P.ZodVoid,...m(Q)})};class U1 extends n{_parse(Q){let{ctx:X,status:Y}=this._processInputParams(Q),W=this._def;if(X.parsedType!==R.array)return T(X,{code:b.invalid_type,expected:R.array,received:X.parsedType}),f;if(W.exactLength!==null){let J=X.data.length>W.exactLength.value,G=X.data.length<W.exactLength.value;if(J||G)T(X,{code:J?b.too_big:b.too_small,minimum:G?W.exactLength.value:void 0,maximum:J?W.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:W.exactLength.message}),Y.dirty()}if(W.minLength!==null){if(X.data.length<W.minLength.value)T(X,{code:b.too_small,minimum:W.minLength.value,type:"array",inclusive:!0,exact:!1,message:W.minLength.message}),Y.dirty()}if(W.maxLength!==null){if(X.data.length>W.maxLength.value)T(X,{code:b.too_big,maximum:W.maxLength.value,type:"array",inclusive:!0,exact:!1,message:W.maxLength.message}),Y.dirty()}if(X.common.async)return Promise.all([...X.data].map((J,G)=>{return W.type._parseAsync(new j1(X,J,X.path,G))})).then((J)=>{return T0.mergeArray(Y,J)});let $=[...X.data].map((J,G)=>{return W.type._parseSync(new j1(X,J,X.path,G))});return T0.mergeArray(Y,$)}get element(){return this._def.type}min(Q,X){return new U1({...this._def,minLength:{value:Q,message:v.toString(X)}})}max(Q,X){return new U1({...this._def,maxLength:{value:Q,message:v.toString(X)}})}length(Q,X){return new U1({...this._def,exactLength:{value:Q,message:v.toString(X)}})}nonempty(Q){return this.min(1,Q)}}U1.create=(Q,X)=>{return new U1({type:Q,minLength:null,maxLength:null,exactLength:null,typeName:P.ZodArray,...m(X)})};function q9(Q){if(Q instanceof M0){let X={};for(let Y in Q.shape){let W=Q.shape[Y];X[Y]=B1.create(q9(W))}return new M0({...Q._def,shape:()=>X})}else if(Q instanceof U1)return new U1({...Q._def,type:q9(Q.element)});else if(Q instanceof B1)return B1.create(q9(Q.unwrap()));else if(Q instanceof o1)return o1.create(q9(Q.unwrap()));else if(Q instanceof h1)return h1.create(Q.items.map((X)=>q9(X)));else return Q}class M0 extends n{constructor(){super(...arguments);this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let Q=this._def.shape(),X=r.objectKeys(Q);return this._cached={shape:Q,keys:X},this._cached}_parse(Q){if(this._getType(Q)!==R.object){let B=this._getOrReturnCtx(Q);return T(B,{code:b.invalid_type,expected:R.object,received:B.parsedType}),f}let{status:Y,ctx:W}=this._processInputParams(Q),{shape:$,keys:J}=this._getCached(),G=[];if(!(this._def.catchall instanceof f1&&this._def.unknownKeys==="strip")){for(let B in W.data)if(!J.includes(B))G.push(B)}let H=[];for(let B of J){let z=$[B],K=W.data[B];H.push({key:{status:"valid",value:B},value:z._parse(new j1(W,K,W.path,B)),alwaysSet:B in W.data})}if(this._def.catchall instanceof f1){let B=this._def.unknownKeys;if(B==="passthrough")for(let z of G)H.push({key:{status:"valid",value:z},value:{status:"valid",value:W.data[z]}});else if(B==="strict"){if(G.length>0)T(W,{code:b.unrecognized_keys,keys:G}),Y.dirty()}else if(B==="strip");else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let B=this._def.catchall;for(let z of G){let K=W.data[z];H.push({key:{status:"valid",value:z},value:B._parse(new j1(W,K,W.path,z)),alwaysSet:z in W.data})}}if(W.common.async)return Promise.resolve().then(async()=>{let B=[];for(let z of H){let K=await z.key,F=await z.value;B.push({key:K,value:F,alwaysSet:z.alwaysSet})}return B}).then((B)=>{return T0.mergeObjectSync(Y,B)});else return T0.mergeObjectSync(Y,H)}get shape(){return this._def.shape()}strict(Q){return v.errToObj,new M0({...this._def,unknownKeys:"strict",...Q!==void 0?{errorMap:(X,Y)=>{let W=this._def.errorMap?.(X,Y).message??Y.defaultError;if(X.code==="unrecognized_keys")return{message:v.errToObj(Q).message??W};return{message:W}}}:{}})}strip(){return new M0({...this._def,unknownKeys:"strip"})}passthrough(){return new M0({...this._def,unknownKeys:"passthrough"})}extend(Q){return new M0({...this._def,shape:()=>({...this._def.shape(),...Q})})}merge(Q){return new M0({unknownKeys:Q._def.unknownKeys,catchall:Q._def.catchall,shape:()=>({...this._def.shape(),...Q._def.shape()}),typeName:P.ZodObject})}setKey(Q,X){return this.augment({[Q]:X})}catchall(Q){return new M0({...this._def,catchall:Q})}pick(Q){let X={};for(let Y of r.objectKeys(Q))if(Q[Y]&&this.shape[Y])X[Y]=this.shape[Y];return new M0({...this._def,shape:()=>X})}omit(Q){let X={};for(let Y of r.objectKeys(this.shape))if(!Q[Y])X[Y]=this.shape[Y];return new M0({...this._def,shape:()=>X})}deepPartial(){return q9(this)}partial(Q){let X={};for(let Y of r.objectKeys(this.shape)){let W=this.shape[Y];if(Q&&!Q[Y])X[Y]=W;else X[Y]=W.optional()}return new M0({...this._def,shape:()=>X})}required(Q){let X={};for(let Y of r.objectKeys(this.shape))if(Q&&!Q[Y])X[Y]=this.shape[Y];else{let $=this.shape[Y];while($ instanceof B1)$=$._def.innerType;X[Y]=$}return new M0({...this._def,shape:()=>X})}keyof(){return oJ(r.objectKeys(this.shape))}}M0.create=(Q,X)=>{return new M0({shape:()=>Q,unknownKeys:"strip",catchall:f1.create(),typeName:P.ZodObject,...m(X)})};M0.strictCreate=(Q,X)=>{return new M0({shape:()=>Q,unknownKeys:"strict",catchall:f1.create(),typeName:P.ZodObject,...m(X)})};M0.lazycreate=(Q,X)=>{return new M0({shape:Q,unknownKeys:"strip",catchall:f1.create(),typeName:P.ZodObject,...m(X)})};class U9 extends n{_parse(Q){let{ctx:X}=this._processInputParams(Q),Y=this._def.options;function W($){for(let G of $)if(G.result.status==="valid")return G.result;for(let G of $)if(G.result.status==="dirty")return X.common.issues.push(...G.ctx.common.issues),G.result;let J=$.map((G)=>new r0(G.ctx.common.issues));return T(X,{code:b.invalid_union,unionErrors:J}),f}if(X.common.async)return Promise.all(Y.map(async($)=>{let J={...X,common:{...X.common,issues:[]},parent:null};return{result:await $._parseAsync({data:X.data,path:X.path,parent:J}),ctx:J}})).then(W);else{let $=void 0,J=[];for(let H of Y){let B={...X,common:{...X.common,issues:[]},parent:null},z=H._parseSync({data:X.data,path:X.path,parent:B});if(z.status==="valid")return z;else if(z.status==="dirty"&&!$)$={result:z,ctx:B};if(B.common.issues.length)J.push(B.common.issues)}if($)return X.common.issues.push(...$.ctx.common.issues),$.result;let G=J.map((H)=>new r0(H));return T(X,{code:b.invalid_union,unionErrors:G}),f}}get options(){return this._def.options}}U9.create=(Q,X)=>{return new U9({options:Q,typeName:P.ZodUnion,...m(X)})};var n1=(Q)=>{if(Q instanceof w9)return n1(Q.schema);else if(Q instanceof w1)return n1(Q.innerType());else if(Q instanceof M9)return[Q.value];else if(Q instanceof q6)return Q.options;else if(Q instanceof N9)return r.objectValues(Q.enum);else if(Q instanceof b9)return n1(Q._def.innerType);else if(Q instanceof L9)return[void 0];else if(Q instanceof O9)return[null];else if(Q instanceof B1)return[void 0,...n1(Q.unwrap())];else if(Q instanceof o1)return[null,...n1(Q.unwrap())];else if(Q instanceof i8)return n1(Q.unwrap());else if(Q instanceof Z9)return n1(Q.unwrap());else if(Q instanceof P9)return n1(Q._def.innerType);else return[]};class d8 extends n{_parse(Q){let{ctx:X}=this._processInputParams(Q);if(X.parsedType!==R.object)return T(X,{code:b.invalid_type,expected:R.object,received:X.parsedType}),f;let Y=this.discriminator,W=X.data[Y],$=this.optionsMap.get(W);if(!$)return T(X,{code:b.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[Y]}),f;if(X.common.async)return $._parseAsync({data:X.data,path:X.path,parent:X});else return $._parseSync({data:X.data,path:X.path,parent:X})}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(Q,X,Y){let W=new Map;for(let $ of X){let J=n1($.shape[Q]);if(!J.length)throw Error(`A discriminator value for key \`${Q}\` could not be extracted from all schema options`);for(let G of J){if(W.has(G))throw Error(`Discriminator property ${String(Q)} has duplicate value ${String(G)}`);W.set(G,$)}}return new d8({typeName:P.ZodDiscriminatedUnion,discriminator:Q,options:X,optionsMap:W,...m(Y)})}}function kY(Q,X){let Y=g1(Q),W=g1(X);if(Q===X)return{valid:!0,data:Q};else if(Y===R.object&&W===R.object){let $=r.objectKeys(X),J=r.objectKeys(Q).filter((H)=>$.indexOf(H)!==-1),G={...Q,...X};for(let H of J){let B=kY(Q[H],X[H]);if(!B.valid)return{valid:!1};G[H]=B.data}return{valid:!0,data:G}}else if(Y===R.array&&W===R.array){if(Q.length!==X.length)return{valid:!1};let $=[];for(let J=0;J<Q.length;J++){let G=Q[J],H=X[J],B=kY(G,H);if(!B.valid)return{valid:!1};$.push(B.data)}return{valid:!0,data:$}}else if(Y===R.date&&W===R.date&&+Q===+X)return{valid:!0,data:Q};else return{valid:!1}}class j9 extends n{_parse(Q){let{status:X,ctx:Y}=this._processInputParams(Q),W=($,J)=>{if(c8($)||c8(J))return f;let G=kY($.value,J.value);if(!G.valid)return T(Y,{code:b.invalid_intersection_types}),f;if(p8($)||p8(J))X.dirty();return{status:X.value,value:G.data}};if(Y.common.async)return Promise.all([this._def.left._parseAsync({data:Y.data,path:Y.path,parent:Y}),this._def.right._parseAsync({data:Y.data,path:Y.path,parent:Y})]).then(([$,J])=>W($,J));else return W(this._def.left._parseSync({data:Y.data,path:Y.path,parent:Y}),this._def.right._parseSync({data:Y.data,path:Y.path,parent:Y}))}}j9.create=(Q,X,Y)=>{return new j9({left:Q,right:X,typeName:P.ZodIntersection,...m(Y)})};class h1 extends n{_parse(Q){let{status:X,ctx:Y}=this._processInputParams(Q);if(Y.parsedType!==R.array)return T(Y,{code:b.invalid_type,expected:R.array,received:Y.parsedType}),f;if(Y.data.length<this._def.items.length)return T(Y,{code:b.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),f;if(!this._def.rest&&Y.data.length>this._def.items.length)T(Y,{code:b.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),X.dirty();let $=[...Y.data].map((J,G)=>{let H=this._def.items[G]||this._def.rest;if(!H)return null;return H._parse(new j1(Y,J,Y.path,G))}).filter((J)=>!!J);if(Y.common.async)return Promise.all($).then((J)=>{return T0.mergeArray(X,J)});else return T0.mergeArray(X,$)}get items(){return this._def.items}rest(Q){return new h1({...this._def,rest:Q})}}h1.create=(Q,X)=>{if(!Array.isArray(Q))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new h1({items:Q,typeName:P.ZodTuple,rest:null,...m(X)})};class A4 extends n{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(Q){let{status:X,ctx:Y}=this._processInputParams(Q);if(Y.parsedType!==R.object)return T(Y,{code:b.invalid_type,expected:R.object,received:Y.parsedType}),f;let W=[],$=this._def.keyType,J=this._def.valueType;for(let G in Y.data)W.push({key:$._parse(new j1(Y,G,Y.path,G)),value:J._parse(new j1(Y,Y.data[G],Y.path,G)),alwaysSet:G in Y.data});if(Y.common.async)return T0.mergeObjectAsync(X,W);else return T0.mergeObjectSync(X,W)}get element(){return this._def.valueType}static create(Q,X,Y){if(X instanceof n)return new A4({keyType:Q,valueType:X,typeName:P.ZodRecord,...m(Y)});return new A4({keyType:O1.create(),valueType:Q,typeName:P.ZodRecord,...m(X)})}}class D4 extends n{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(Q){let{status:X,ctx:Y}=this._processInputParams(Q);if(Y.parsedType!==R.map)return T(Y,{code:b.invalid_type,expected:R.map,received:Y.parsedType}),f;let W=this._def.keyType,$=this._def.valueType,J=[...Y.data.entries()].map(([G,H],B)=>{return{key:W._parse(new j1(Y,G,Y.path,[B,"key"])),value:$._parse(new j1(Y,H,Y.path,[B,"value"]))}});if(Y.common.async){let G=new Map;return Promise.resolve().then(async()=>{for(let H of J){let B=await H.key,z=await H.value;if(B.status==="aborted"||z.status==="aborted")return f;if(B.status==="dirty"||z.status==="dirty")X.dirty();G.set(B.value,z.value)}return{status:X.value,value:G}})}else{let G=new Map;for(let H of J){let{key:B,value:z}=H;if(B.status==="aborted"||z.status==="aborted")return f;if(B.status==="dirty"||z.status==="dirty")X.dirty();G.set(B.value,z.value)}return{status:X.value,value:G}}}}D4.create=(Q,X,Y)=>{return new D4({valueType:X,keyType:Q,typeName:P.ZodMap,...m(Y)})};class m6 extends n{_parse(Q){let{status:X,ctx:Y}=this._processInputParams(Q);if(Y.parsedType!==R.set)return T(Y,{code:b.invalid_type,expected:R.set,received:Y.parsedType}),f;let W=this._def;if(W.minSize!==null){if(Y.data.size<W.minSize.value)T(Y,{code:b.too_small,minimum:W.minSize.value,type:"set",inclusive:!0,exact:!1,message:W.minSize.message}),X.dirty()}if(W.maxSize!==null){if(Y.data.size>W.maxSize.value)T(Y,{code:b.too_big,maximum:W.maxSize.value,type:"set",inclusive:!0,exact:!1,message:W.maxSize.message}),X.dirty()}let $=this._def.valueType;function J(H){let B=new Set;for(let z of H){if(z.status==="aborted")return f;if(z.status==="dirty")X.dirty();B.add(z.value)}return{status:X.value,value:B}}let G=[...Y.data.values()].map((H,B)=>$._parse(new j1(Y,H,Y.path,B)));if(Y.common.async)return Promise.all(G).then((H)=>J(H));else return J(G)}min(Q,X){return new m6({...this._def,minSize:{value:Q,message:v.toString(X)}})}max(Q,X){return new m6({...this._def,maxSize:{value:Q,message:v.toString(X)}})}size(Q,X){return this.min(Q,X).max(Q,X)}nonempty(Q){return this.min(1,Q)}}m6.create=(Q,X)=>{return new m6({valueType:Q,minSize:null,maxSize:null,typeName:P.ZodSet,...m(X)})};class A9 extends n{constructor(){super(...arguments);this.validate=this.implement}_parse(Q){let{ctx:X}=this._processInputParams(Q);if(X.parsedType!==R.function)return T(X,{code:b.invalid_type,expected:R.function,received:X.parsedType}),f;function Y(G,H){return F4({data:G,path:X.path,errorMaps:[X.common.contextualErrorMap,X.schemaErrorMap,F9(),i1].filter((B)=>!!B),issueData:{code:b.invalid_arguments,argumentsError:H}})}function W(G,H){return F4({data:G,path:X.path,errorMaps:[X.common.contextualErrorMap,X.schemaErrorMap,F9(),i1].filter((B)=>!!B),issueData:{code:b.invalid_return_type,returnTypeError:H}})}let $={errorMap:X.common.contextualErrorMap},J=X.data;if(this._def.returns instanceof c6){let G=this;return f0(async function(...H){let B=new r0([]),z=await G._def.args.parseAsync(H,$).catch((D)=>{throw B.addIssue(Y(H,D)),B}),K=await Reflect.apply(J,this,z);return await G._def.returns._def.type.parseAsync(K,$).catch((D)=>{throw B.addIssue(W(K,D)),B})})}else{let G=this;return f0(function(...H){let B=G._def.args.safeParse(H,$);if(!B.success)throw new r0([Y(H,B.error)]);let z=Reflect.apply(J,this,B.data),K=G._def.returns.safeParse(z,$);if(!K.success)throw new r0([W(z,K.error)]);return K.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...Q){return new A9({...this._def,args:h1.create(Q).rest(K6.create())})}returns(Q){return new A9({...this._def,returns:Q})}implement(Q){return this.parse(Q)}strictImplement(Q){return this.parse(Q)}static create(Q,X,Y){return new A9({args:Q?Q:h1.create([]).rest(K6.create()),returns:X||K6.create(),typeName:P.ZodFunction,...m(Y)})}}class w9 extends n{get schema(){return this._def.getter()}_parse(Q){let{ctx:X}=this._processInputParams(Q);return this._def.getter()._parse({data:X.data,path:X.path,parent:X})}}w9.create=(Q,X)=>{return new w9({getter:Q,typeName:P.ZodLazy,...m(X)})};class M9 extends n{_parse(Q){if(Q.data!==this._def.value){let X=this._getOrReturnCtx(Q);return T(X,{received:X.data,code:b.invalid_literal,expected:this._def.value}),f}return{status:"valid",value:Q.data}}get value(){return this._def.value}}M9.create=(Q,X)=>{return new M9({value:Q,typeName:P.ZodLiteral,...m(X)})};function oJ(Q,X){return new q6({values:Q,typeName:P.ZodEnum,...m(X)})}class q6 extends n{_parse(Q){if(typeof Q.data!=="string"){let X=this._getOrReturnCtx(Q),Y=this._def.values;return T(X,{expected:r.joinValues(Y),received:X.parsedType,code:b.invalid_type}),f}if(!this._cache)this._cache=new Set(this._def.values);if(!this._cache.has(Q.data)){let X=this._getOrReturnCtx(Q),Y=this._def.values;return T(X,{received:X.data,code:b.invalid_enum_value,options:Y}),f}return f0(Q.data)}get options(){return this._def.values}get enum(){let Q={};for(let X of this._def.values)Q[X]=X;return Q}get Values(){let Q={};for(let X of this._def.values)Q[X]=X;return Q}get Enum(){let Q={};for(let X of this._def.values)Q[X]=X;return Q}extract(Q,X=this._def){return q6.create(Q,{...this._def,...X})}exclude(Q,X=this._def){return q6.create(this.options.filter((Y)=>!Q.includes(Y)),{...this._def,...X})}}q6.create=oJ;class N9 extends n{_parse(Q){let X=r.getValidEnumValues(this._def.values),Y=this._getOrReturnCtx(Q);if(Y.parsedType!==R.string&&Y.parsedType!==R.number){let W=r.objectValues(X);return T(Y,{expected:r.joinValues(W),received:Y.parsedType,code:b.invalid_type}),f}if(!this._cache)this._cache=new Set(r.getValidEnumValues(this._def.values));if(!this._cache.has(Q.data)){let W=r.objectValues(X);return T(Y,{received:Y.data,code:b.invalid_enum_value,options:W}),f}return f0(Q.data)}get enum(){return this._def.values}}N9.create=(Q,X)=>{return new N9({values:Q,typeName:P.ZodNativeEnum,...m(X)})};class c6 extends n{unwrap(){return this._def.type}_parse(Q){let{ctx:X}=this._processInputParams(Q);if(X.parsedType!==R.promise&&X.common.async===!1)return T(X,{code:b.invalid_type,expected:R.promise,received:X.parsedType}),f;let Y=X.parsedType===R.promise?X.data:Promise.resolve(X.data);return f0(Y.then((W)=>{return this._def.type.parseAsync(W,{path:X.path,errorMap:X.common.contextualErrorMap})}))}}c6.create=(Q,X)=>{return new c6({type:Q,typeName:P.ZodPromise,...m(X)})};class w1 extends n{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===P.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(Q){let{status:X,ctx:Y}=this._processInputParams(Q),W=this._def.effect||null,$={addIssue:(J)=>{if(T(Y,J),J.fatal)X.abort();else X.dirty()},get path(){return Y.path}};if($.addIssue=$.addIssue.bind($),W.type==="preprocess"){let J=W.transform(Y.data,$);if(Y.common.async)return Promise.resolve(J).then(async(G)=>{if(X.value==="aborted")return f;let H=await this._def.schema._parseAsync({data:G,path:Y.path,parent:Y});if(H.status==="aborted")return f;if(H.status==="dirty")return h6(H.value);if(X.value==="dirty")return h6(H.value);return H});else{if(X.value==="aborted")return f;let G=this._def.schema._parseSync({data:J,path:Y.path,parent:Y});if(G.status==="aborted")return f;if(G.status==="dirty")return h6(G.value);if(X.value==="dirty")return h6(G.value);return G}}if(W.type==="refinement"){let J=(G)=>{let H=W.refinement(G,$);if(Y.common.async)return Promise.resolve(H);if(H instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return G};if(Y.common.async===!1){let G=this._def.schema._parseSync({data:Y.data,path:Y.path,parent:Y});if(G.status==="aborted")return f;if(G.status==="dirty")X.dirty();return J(G.value),{status:X.value,value:G.value}}else return this._def.schema._parseAsync({data:Y.data,path:Y.path,parent:Y}).then((G)=>{if(G.status==="aborted")return f;if(G.status==="dirty")X.dirty();return J(G.value).then(()=>{return{status:X.value,value:G.value}})})}if(W.type==="transform")if(Y.common.async===!1){let J=this._def.schema._parseSync({data:Y.data,path:Y.path,parent:Y});if(!z6(J))return f;let G=W.transform(J.value,$);if(G instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:X.value,value:G}}else return this._def.schema._parseAsync({data:Y.data,path:Y.path,parent:Y}).then((J)=>{if(!z6(J))return f;return Promise.resolve(W.transform(J.value,$)).then((G)=>({status:X.value,value:G}))});r.assertNever(W)}}w1.create=(Q,X,Y)=>{return new w1({schema:Q,typeName:P.ZodEffects,effect:X,...m(Y)})};w1.createWithPreprocess=(Q,X,Y)=>{return new w1({schema:X,effect:{type:"preprocess",transform:Q},typeName:P.ZodEffects,...m(Y)})};class B1 extends n{_parse(Q){if(this._getType(Q)===R.undefined)return f0(void 0);return this._def.innerType._parse(Q)}unwrap(){return this._def.innerType}}B1.create=(Q,X)=>{return new B1({innerType:Q,typeName:P.ZodOptional,...m(X)})};class o1 extends n{_parse(Q){if(this._getType(Q)===R.null)return f0(null);return this._def.innerType._parse(Q)}unwrap(){return this._def.innerType}}o1.create=(Q,X)=>{return new o1({innerType:Q,typeName:P.ZodNullable,...m(X)})};class b9 extends n{_parse(Q){let{ctx:X}=this._processInputParams(Q),Y=X.data;if(X.parsedType===R.undefined)Y=this._def.defaultValue();return this._def.innerType._parse({data:Y,path:X.path,parent:X})}removeDefault(){return this._def.innerType}}b9.create=(Q,X)=>{return new b9({innerType:Q,typeName:P.ZodDefault,defaultValue:typeof X.default==="function"?X.default:()=>X.default,...m(X)})};class P9 extends n{_parse(Q){let{ctx:X}=this._processInputParams(Q),Y={...X,common:{...X.common,issues:[]}},W=this._def.innerType._parse({data:Y.data,path:Y.path,parent:{...Y}});if(V9(W))return W.then(($)=>{return{status:"valid",value:$.status==="valid"?$.value:this._def.catchValue({get error(){return new r0(Y.common.issues)},input:Y.data})}});else return{status:"valid",value:W.status==="valid"?W.value:this._def.catchValue({get error(){return new r0(Y.common.issues)},input:Y.data})}}removeCatch(){return this._def.innerType}}P9.create=(Q,X)=>{return new P9({innerType:Q,typeName:P.ZodCatch,catchValue:typeof X.catch==="function"?X.catch:()=>X.catch,...m(X)})};class L4 extends n{_parse(Q){if(this._getType(Q)!==R.nan){let Y=this._getOrReturnCtx(Q);return T(Y,{code:b.invalid_type,expected:R.nan,received:Y.parsedType}),f}return{status:"valid",value:Q.data}}}L4.create=(Q)=>{return new L4({typeName:P.ZodNaN,...m(Q)})};var xO=Symbol("zod_brand");class i8 extends n{_parse(Q){let{ctx:X}=this._processInputParams(Q),Y=X.data;return this._def.type._parse({data:Y,path:X.path,parent:X})}unwrap(){return this._def.type}}class O4 extends n{_parse(Q){let{status:X,ctx:Y}=this._processInputParams(Q);if(Y.common.async)return(async()=>{let $=await this._def.in._parseAsync({data:Y.data,path:Y.path,parent:Y});if($.status==="aborted")return f;if($.status==="dirty")return X.dirty(),h6($.value);else return this._def.out._parseAsync({data:$.value,path:Y.path,parent:Y})})();else{let W=this._def.in._parseSync({data:Y.data,path:Y.path,parent:Y});if(W.status==="aborted")return f;if(W.status==="dirty")return X.dirty(),{status:"dirty",value:W.value};else return this._def.out._parseSync({data:W.value,path:Y.path,parent:Y})}}static create(Q,X){return new O4({in:Q,out:X,typeName:P.ZodPipeline})}}class Z9 extends n{_parse(Q){let X=this._def.innerType._parse(Q),Y=(W)=>{if(z6(W))W.value=Object.freeze(W.value);return W};return V9(X)?X.then((W)=>Y(W)):Y(X)}unwrap(){return this._def.innerType}}Z9.create=(Q,X)=>{return new Z9({innerType:Q,typeName:P.ZodReadonly,...m(X)})};function pJ(Q,X){let Y=typeof Q==="function"?Q(X):typeof Q==="string"?{message:Q}:Q;return typeof Y==="string"?{message:Y}:Y}function rJ(Q,X={},Y){if(Q)return l6.create().superRefine((W,$)=>{let J=Q(W);if(J instanceof Promise)return J.then((G)=>{if(!G){let H=pJ(X,W),B=H.fatal??Y??!0;$.addIssue({code:"custom",...H,fatal:B})}});if(!J){let G=pJ(X,W),H=G.fatal??Y??!0;$.addIssue({code:"custom",...G,fatal:H})}return});return l6.create()}var yO={object:M0.lazycreate},P;(function(Q){Q.ZodString="ZodString",Q.ZodNumber="ZodNumber",Q.ZodNaN="ZodNaN",Q.ZodBigInt="ZodBigInt",Q.ZodBoolean="ZodBoolean",Q.ZodDate="ZodDate",Q.ZodSymbol="ZodSymbol",Q.ZodUndefined="ZodUndefined",Q.ZodNull="ZodNull",Q.ZodAny="ZodAny",Q.ZodUnknown="ZodUnknown",Q.ZodNever="ZodNever",Q.ZodVoid="ZodVoid",Q.ZodArray="ZodArray",Q.ZodObject="ZodObject",Q.ZodUnion="ZodUnion",Q.ZodDiscriminatedUnion="ZodDiscriminatedUnion",Q.ZodIntersection="ZodIntersection",Q.ZodTuple="ZodTuple",Q.ZodRecord="ZodRecord",Q.ZodMap="ZodMap",Q.ZodSet="ZodSet",Q.ZodFunction="ZodFunction",Q.ZodLazy="ZodLazy",Q.ZodLiteral="ZodLiteral",Q.ZodEnum="ZodEnum",Q.ZodEffects="ZodEffects",Q.ZodNativeEnum="ZodNativeEnum",Q.ZodOptional="ZodOptional",Q.ZodNullable="ZodNullable",Q.ZodDefault="ZodDefault",Q.ZodCatch="ZodCatch",Q.ZodPromise="ZodPromise",Q.ZodBranded="ZodBranded",Q.ZodPipeline="ZodPipeline",Q.ZodReadonly="ZodReadonly"})(P||(P={}));var gO=(Q,X={message:`Input not instance of ${Q.name}`})=>rJ((Y)=>Y instanceof Q,X),tJ=O1.create,aJ=F6.create,fO=L4.create,hO=V6.create,sJ=D9.create,uO=u6.create,lO=V4.create,mO=L9.create,cO=O9.create,pO=l6.create,dO=K6.create,iO=f1.create,nO=q4.create,oO=U1.create,vY=M0.create,rO=M0.strictCreate,tO=U9.create,aO=d8.create,sO=j9.create,eO=h1.create,QU=A4.create,XU=D4.create,YU=m6.create,WU=A9.create,$U=w9.create,JU=M9.create,GU=q6.create,HU=N9.create,BU=c6.create,zU=w1.create,KU=B1.create,FU=o1.create,VU=w1.createWithPreprocess,qU=O4.create,AU=()=>tJ().optional(),DU=()=>aJ().optional(),LU=()=>sJ().optional(),OU={string:(Q)=>O1.create({...Q,coerce:!0}),number:(Q)=>F6.create({...Q,coerce:!0}),boolean:(Q)=>D9.create({...Q,coerce:!0}),bigint:(Q)=>V6.create({...Q,coerce:!0}),date:(Q)=>u6.create({...Q,coerce:!0})};var UU=f;var o8=Object.freeze({status:"aborted"});function j(Q,X,Y){function W(H,B){var z;Object.defineProperty(H,"_zod",{value:H._zod??{},enumerable:!1}),(z=H._zod).traits??(z.traits=new Set),H._zod.traits.add(Q),X(H,B);for(let K in G.prototype)if(!(K in H))Object.defineProperty(H,K,{value:G.prototype[K].bind(H)});H._zod.constr=G,H._zod.def=B}let $=Y?.Parent??Object;class J extends ${}Object.defineProperty(J,"name",{value:Q});function G(H){var B;let z=Y?.Parent?new J:this;W(z,H),(B=z._zod).deferred??(B.deferred=[]);for(let K of z._zod.deferred)K();return z}return Object.defineProperty(G,"init",{value:W}),Object.defineProperty(G,Symbol.hasInstance,{value:(H)=>{if(Y?.Parent&&H instanceof Y.Parent)return!0;return H?._zod?.traits?.has(Q)}}),Object.defineProperty(G,"name",{value:Q}),G}var eJ=Symbol("zod_brand");class A6 extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}}var n8={};function t0(Q){if(Q)Object.assign(n8,Q);return n8}var t={};m8(t,{unwrapMessage:()=>U4,stringifyPrimitive:()=>a8,required:()=>xU,randomString:()=>RU,propertyKeyTypes:()=>hY,promiseAllObject:()=>ZU,primitiveTypes:()=>QG,prefixIssues:()=>u1,pick:()=>TU,partial:()=>_U,optionalKeys:()=>uY,omit:()=>CU,numKeys:()=>EU,nullish:()=>M4,normalizeParams:()=>g,merge:()=>vU,jsonStringifyReplacer:()=>xY,joinValues:()=>r8,issue:()=>mY,isPlainObject:()=>E9,isObject:()=>R9,getSizableOrigin:()=>YG,getParsedType:()=>SU,getLengthableOrigin:()=>b4,getEnumValues:()=>j4,getElementAtPath:()=>PU,floatSafeRemainder:()=>yY,finalizeIssue:()=>M1,extend:()=>kU,escapeRegex:()=>D6,esc:()=>p6,defineLazy:()=>F0,createTransparentProxy:()=>IU,clone:()=>a0,cleanRegex:()=>N4,cleanEnum:()=>yU,captureStackTrace:()=>t8,cached:()=>w4,assignProp:()=>gY,assertNotEqual:()=>wU,assertNever:()=>NU,assertIs:()=>MU,assertEqual:()=>jU,assert:()=>bU,allowsEval:()=>fY,aborted:()=>d6,NUMBER_FORMAT_RANGES:()=>lY,Class:()=>WG,BIGINT_FORMAT_RANGES:()=>XG});function jU(Q){return Q}function wU(Q){return Q}function MU(Q){}function NU(Q){throw Error()}function bU(Q){}function j4(Q){let X=Object.values(Q).filter((W)=>typeof W==="number");return Object.entries(Q).filter(([W,$])=>X.indexOf(+W)===-1).map(([W,$])=>$)}function r8(Q,X="|"){return Q.map((Y)=>a8(Y)).join(X)}function xY(Q,X){if(typeof X==="bigint")return X.toString();return X}function w4(Q){return{get value(){{let Y=Q();return Object.defineProperty(this,"value",{value:Y}),Y}throw Error("cached value already set")}}}function M4(Q){return Q===null||Q===void 0}function N4(Q){let X=Q.startsWith("^")?1:0,Y=Q.endsWith("$")?Q.length-1:Q.length;return Q.slice(X,Y)}function yY(Q,X){let Y=(Q.toString().split(".")[1]||"").length,W=(X.toString().split(".")[1]||"").length,$=Y>W?Y:W,J=Number.parseInt(Q.toFixed($).replace(".","")),G=Number.parseInt(X.toFixed($).replace(".",""));return J%G/10**$}function F0(Q,X,Y){Object.defineProperty(Q,X,{get(){{let $=Y();return Q[X]=$,$}throw Error("cached value already set")},set($){Object.defineProperty(Q,X,{value:$})},configurable:!0})}function gY(Q,X,Y){Object.defineProperty(Q,X,{value:Y,writable:!0,enumerable:!0,configurable:!0})}function PU(Q,X){if(!X)return Q;return X.reduce((Y,W)=>Y?.[W],Q)}function ZU(Q){let X=Object.keys(Q),Y=X.map((W)=>Q[W]);return Promise.all(Y).then((W)=>{let $={};for(let J=0;J<X.length;J++)$[X[J]]=W[J];return $})}function RU(Q=10){let Y="";for(let W=0;W<Q;W++)Y+="abcdefghijklmnopqrstuvwxyz"[Math.floor(Math.random()*26)];return Y}function p6(Q){return JSON.stringify(Q)}var t8=Error.captureStackTrace?Error.captureStackTrace:(...Q)=>{};function R9(Q){return typeof Q==="object"&&Q!==null&&!Array.isArray(Q)}var fY=w4(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{return new Function(""),!0}catch(Q){return!1}});function E9(Q){if(R9(Q)===!1)return!1;let X=Q.constructor;if(X===void 0)return!0;let Y=X.prototype;if(R9(Y)===!1)return!1;if(Object.prototype.hasOwnProperty.call(Y,"isPrototypeOf")===!1)return!1;return!0}function EU(Q){let X=0;for(let Y in Q)if(Object.prototype.hasOwnProperty.call(Q,Y))X++;return X}var SU=(Q)=>{let X=typeof Q;switch(X){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(Q)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":if(Array.isArray(Q))return"array";if(Q===null)return"null";if(Q.then&&typeof Q.then==="function"&&Q.catch&&typeof Q.catch==="function")return"promise";if(typeof Map<"u"&&Q instanceof Map)return"map";if(typeof Set<"u"&&Q instanceof Set)return"set";if(typeof Date<"u"&&Q instanceof Date)return"date";if(typeof File<"u"&&Q instanceof File)return"file";return"object";default:throw Error(`Unknown data type: ${X}`)}},hY=new Set(["string","number","symbol"]),QG=new Set(["string","number","bigint","boolean","symbol","undefined"]);function D6(Q){return Q.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function a0(Q,X,Y){let W=new Q._zod.constr(X??Q._zod.def);if(!X||Y?.parent)W._zod.parent=Q;return W}function g(Q){let X=Q;if(!X)return{};if(typeof X==="string")return{error:()=>X};if(X?.message!==void 0){if(X?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");X.error=X.message}if(delete X.message,typeof X.error==="string")return{...X,error:()=>X.error};return X}function IU(Q){let X;return new Proxy({},{get(Y,W,$){return X??(X=Q()),Reflect.get(X,W,$)},set(Y,W,$,J){return X??(X=Q()),Reflect.set(X,W,$,J)},has(Y,W){return X??(X=Q()),Reflect.has(X,W)},deleteProperty(Y,W){return X??(X=Q()),Reflect.deleteProperty(X,W)},ownKeys(Y){return X??(X=Q()),Reflect.ownKeys(X)},getOwnPropertyDescriptor(Y,W){return X??(X=Q()),Reflect.getOwnPropertyDescriptor(X,W)},defineProperty(Y,W,$){return X??(X=Q()),Reflect.defineProperty(X,W,$)}})}function a8(Q){if(typeof Q==="bigint")return Q.toString()+"n";if(typeof Q==="string")return`"${Q}"`;return`${Q}`}function uY(Q){return Object.keys(Q).filter((X)=>{return Q[X]._zod.optin==="optional"&&Q[X]._zod.optout==="optional"})}var lY={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-340282346638528860000000000000000000000,340282346638528860000000000000000000000],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},XG={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function TU(Q,X){let Y={},W=Q._zod.def;for(let $ in X){if(!($ in W.shape))throw Error(`Unrecognized key: "${$}"`);if(!X[$])continue;Y[$]=W.shape[$]}return a0(Q,{...Q._zod.def,shape:Y,checks:[]})}function CU(Q,X){let Y={...Q._zod.def.shape},W=Q._zod.def;for(let $ in X){if(!($ in W.shape))throw Error(`Unrecognized key: "${$}"`);if(!X[$])continue;delete Y[$]}return a0(Q,{...Q._zod.def,shape:Y,checks:[]})}function kU(Q,X){if(!E9(X))throw Error("Invalid input to extend: expected a plain object");let Y={...Q._zod.def,get shape(){let W={...Q._zod.def.shape,...X};return gY(this,"shape",W),W},checks:[]};return a0(Q,Y)}function vU(Q,X){return a0(Q,{...Q._zod.def,get shape(){let Y={...Q._zod.def.shape,...X._zod.def.shape};return gY(this,"shape",Y),Y},catchall:X._zod.def.catchall,checks:[]})}function _U(Q,X,Y){let W=X._zod.def.shape,$={...W};if(Y)for(let J in Y){if(!(J in W))throw Error(`Unrecognized key: "${J}"`);if(!Y[J])continue;$[J]=Q?new Q({type:"optional",innerType:W[J]}):W[J]}else for(let J in W)$[J]=Q?new Q({type:"optional",innerType:W[J]}):W[J];return a0(X,{...X._zod.def,shape:$,checks:[]})}function xU(Q,X,Y){let W=X._zod.def.shape,$={...W};if(Y)for(let J in Y){if(!(J in $))throw Error(`Unrecognized key: "${J}"`);if(!Y[J])continue;$[J]=new Q({type:"nonoptional",innerType:W[J]})}else for(let J in W)$[J]=new Q({type:"nonoptional",innerType:W[J]});return a0(X,{...X._zod.def,shape:$,checks:[]})}function d6(Q,X=0){for(let Y=X;Y<Q.issues.length;Y++)if(Q.issues[Y]?.continue!==!0)return!0;return!1}function u1(Q,X){return X.map((Y)=>{var W;return(W=Y).path??(W.path=[]),Y.path.unshift(Q),Y})}function U4(Q){return typeof Q==="string"?Q:Q?.message}function M1(Q,X,Y){let W={...Q,path:Q.path??[]};if(!Q.message){let $=U4(Q.inst?._zod.def?.error?.(Q))??U4(X?.error?.(Q))??U4(Y.customError?.(Q))??U4(Y.localeError?.(Q))??"Invalid input";W.message=$}if(delete W.inst,delete W.continue,!X?.reportInput)delete W.input;return W}function YG(Q){if(Q instanceof Set)return"set";if(Q instanceof Map)return"map";if(Q instanceof File)return"file";return"unknown"}function b4(Q){if(Array.isArray(Q))return"array";if(typeof Q==="string")return"string";return"unknown"}function mY(...Q){let[X,Y,W]=Q;if(typeof X==="string")return{message:X,code:"custom",input:Y,inst:W};return{...X}}function yU(Q){return Object.entries(Q).filter(([X,Y])=>{return Number.isNaN(Number.parseInt(X,10))}).map((X)=>X[1])}class WG{constructor(...Q){}}var $G=(Q,X)=>{Q.name="$ZodError",Object.defineProperty(Q,"_zod",{value:Q._zod,enumerable:!1}),Object.defineProperty(Q,"issues",{value:X,enumerable:!1}),Object.defineProperty(Q,"message",{get(){return JSON.stringify(X,xY,2)},enumerable:!0}),Object.defineProperty(Q,"toString",{value:()=>Q.message,enumerable:!1})},s8=j("$ZodError",$G),P4=j("$ZodError",$G,{Parent:Error});function e8(Q,X=(Y)=>Y.message){let Y={},W=[];for(let $ of Q.issues)if($.path.length>0)Y[$.path[0]]=Y[$.path[0]]||[],Y[$.path[0]].push(X($));else W.push(X($));return{formErrors:W,fieldErrors:Y}}function QQ(Q,X){let Y=X||function(J){return J.message},W={_errors:[]},$=(J)=>{for(let G of J.issues)if(G.code==="invalid_union"&&G.errors.length)G.errors.map((H)=>$({issues:H}));else if(G.code==="invalid_key")$({issues:G.issues});else if(G.code==="invalid_element")$({issues:G.issues});else if(G.path.length===0)W._errors.push(Y(G));else{let H=W,B=0;while(B<G.path.length){let z=G.path[B];if(B!==G.path.length-1)H[z]=H[z]||{_errors:[]};else H[z]=H[z]||{_errors:[]},H[z]._errors.push(Y(G));H=H[z],B++}}};return $(Q),W}var cY=(Q)=>(X,Y,W,$)=>{let J=W?Object.assign(W,{async:!1}):{async:!1},G=X._zod.run({value:Y,issues:[]},J);if(G instanceof Promise)throw new A6;if(G.issues.length){let H=new($?.Err??Q)(G.issues.map((B)=>M1(B,J,t0())));throw t8(H,$?.callee),H}return G.value},pY=cY(P4),dY=(Q)=>async(X,Y,W,$)=>{let J=W?Object.assign(W,{async:!0}):{async:!0},G=X._zod.run({value:Y,issues:[]},J);if(G instanceof Promise)G=await G;if(G.issues.length){let H=new($?.Err??Q)(G.issues.map((B)=>M1(B,J,t0())));throw t8(H,$?.callee),H}return G.value},iY=dY(P4),nY=(Q)=>(X,Y,W)=>{let $=W?{...W,async:!1}:{async:!1},J=X._zod.run({value:Y,issues:[]},$);if(J instanceof Promise)throw new A6;return J.issues.length?{success:!1,error:new(Q??s8)(J.issues.map((G)=>M1(G,$,t0())))}:{success:!0,data:J.value}},i6=nY(P4),oY=(Q)=>async(X,Y,W)=>{let $=W?Object.assign(W,{async:!0}):{async:!0},J=X._zod.run({value:Y,issues:[]},$);if(J instanceof Promise)J=await J;return J.issues.length?{success:!1,error:new Q(J.issues.map((G)=>M1(G,$,t0())))}:{success:!0,data:J.value}},n6=oY(P4);var JG=/^[cC][^\s-]{8,}$/,GG=/^[0-9a-z]+$/,HG=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,BG=/^[0-9a-vA-V]{20}$/,zG=/^[A-Za-z0-9]{27}$/,KG=/^[a-zA-Z0-9_-]{21}$/,FG=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var VG=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,rY=(Q)=>{if(!Q)return/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;return new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${Q}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`)};var qG=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;function AG(){return new RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")}var DG=/^(?:(?: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])$/,LG=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,OG=/^((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])\/([0-9]|[1-2][0-9]|3[0-2])$/,UG=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,jG=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,tY=/^[A-Za-z0-9_-]*$/,wG=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var MG=/^\+(?:[0-9]){6,14}[0-9]$/,NG="(?:(?:\\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])))",bG=new RegExp(`^${NG}$`);function PG(Q){return typeof Q.precision==="number"?Q.precision===-1?"(?:[01]\\d|2[0-3]):[0-5]\\d":Q.precision===0?"(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d":`(?:[01]\\d|2[0-3]):[0-5]\\d:[0-5]\\d\\.\\d{${Q.precision}}`:"(?:[01]\\d|2[0-3]):[0-5]\\d(?::[0-5]\\d(?:\\.\\d+)?)?"}function ZG(Q){return new RegExp(`^${PG(Q)}$`)}function RG(Q){let X=PG({precision:Q.precision}),Y=["Z"];if(Q.local)Y.push("");if(Q.offset)Y.push("([+-]\\d{2}:\\d{2})");let W=`${X}(?:${Y.join("|")})`;return new RegExp(`^${NG}T(?:${W})$`)}var EG=(Q)=>{let X=Q?`[\\s\\S]{${Q?.minimum??0},${Q?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${X}$`)},SG=/^\d+n?$/,IG=/^\d+$/,TG=/^-?\d+(?:\.\d+)?/i,CG=/true|false/i,kG=/null/i;var vG=/^[^A-Z]*$/,_G=/^[^a-z]*$/;var C0=j("$ZodCheck",(Q,X)=>{var Y;Q._zod??(Q._zod={}),Q._zod.def=X,(Y=Q._zod).onattach??(Y.onattach=[])}),xG={number:"number",bigint:"bigint",object:"date"},aY=j("$ZodCheckLessThan",(Q,X)=>{C0.init(Q,X);let Y=xG[typeof X.value];Q._zod.onattach.push((W)=>{let $=W._zod.bag,J=(X.inclusive?$.maximum:$.exclusiveMaximum)??Number.POSITIVE_INFINITY;if(X.value<J)if(X.inclusive)$.maximum=X.value;else $.exclusiveMaximum=X.value}),Q._zod.check=(W)=>{if(X.inclusive?W.value<=X.value:W.value<X.value)return;W.issues.push({origin:Y,code:"too_big",maximum:X.value,input:W.value,inclusive:X.inclusive,inst:Q,continue:!X.abort})}}),sY=j("$ZodCheckGreaterThan",(Q,X)=>{C0.init(Q,X);let Y=xG[typeof X.value];Q._zod.onattach.push((W)=>{let $=W._zod.bag,J=(X.inclusive?$.minimum:$.exclusiveMinimum)??Number.NEGATIVE_INFINITY;if(X.value>J)if(X.inclusive)$.minimum=X.value;else $.exclusiveMinimum=X.value}),Q._zod.check=(W)=>{if(X.inclusive?W.value>=X.value:W.value>X.value)return;W.issues.push({origin:Y,code:"too_small",minimum:X.value,input:W.value,inclusive:X.inclusive,inst:Q,continue:!X.abort})}}),yG=j("$ZodCheckMultipleOf",(Q,X)=>{C0.init(Q,X),Q._zod.onattach.push((Y)=>{var W;(W=Y._zod.bag).multipleOf??(W.multipleOf=X.value)}),Q._zod.check=(Y)=>{if(typeof Y.value!==typeof X.value)throw Error("Cannot mix number and bigint in multiple_of check.");if(typeof Y.value==="bigint"?Y.value%X.value===BigInt(0):yY(Y.value,X.value)===0)return;Y.issues.push({origin:typeof Y.value,code:"not_multiple_of",divisor:X.value,input:Y.value,inst:Q,continue:!X.abort})}}),gG=j("$ZodCheckNumberFormat",(Q,X)=>{C0.init(Q,X),X.format=X.format||"float64";let Y=X.format?.includes("int"),W=Y?"int":"number",[$,J]=lY[X.format];Q._zod.onattach.push((G)=>{let H=G._zod.bag;if(H.format=X.format,H.minimum=$,H.maximum=J,Y)H.pattern=IG}),Q._zod.check=(G)=>{let H=G.value;if(Y){if(!Number.isInteger(H)){G.issues.push({expected:W,format:X.format,code:"invalid_type",input:H,inst:Q});return}if(!Number.isSafeInteger(H)){if(H>0)G.issues.push({input:H,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:Q,origin:W,continue:!X.abort});else G.issues.push({input:H,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:Q,origin:W,continue:!X.abort});return}}if(H<$)G.issues.push({origin:"number",input:H,code:"too_small",minimum:$,inclusive:!0,inst:Q,continue:!X.abort});if(H>J)G.issues.push({origin:"number",input:H,code:"too_big",maximum:J,inst:Q})}});var fG=j("$ZodCheckMaxLength",(Q,X)=>{var Y;C0.init(Q,X),(Y=Q._zod.def).when??(Y.when=(W)=>{let $=W.value;return!M4($)&&$.length!==void 0}),Q._zod.onattach.push((W)=>{let $=W._zod.bag.maximum??Number.POSITIVE_INFINITY;if(X.maximum<$)W._zod.bag.maximum=X.maximum}),Q._zod.check=(W)=>{let $=W.value;if($.length<=X.maximum)return;let G=b4($);W.issues.push({origin:G,code:"too_big",maximum:X.maximum,inclusive:!0,input:$,inst:Q,continue:!X.abort})}}),hG=j("$ZodCheckMinLength",(Q,X)=>{var Y;C0.init(Q,X),(Y=Q._zod.def).when??(Y.when=(W)=>{let $=W.value;return!M4($)&&$.length!==void 0}),Q._zod.onattach.push((W)=>{let $=W._zod.bag.minimum??Number.NEGATIVE_INFINITY;if(X.minimum>$)W._zod.bag.minimum=X.minimum}),Q._zod.check=(W)=>{let $=W.value;if($.length>=X.minimum)return;let G=b4($);W.issues.push({origin:G,code:"too_small",minimum:X.minimum,inclusive:!0,input:$,inst:Q,continue:!X.abort})}}),uG=j("$ZodCheckLengthEquals",(Q,X)=>{var Y;C0.init(Q,X),(Y=Q._zod.def).when??(Y.when=(W)=>{let $=W.value;return!M4($)&&$.length!==void 0}),Q._zod.onattach.push((W)=>{let $=W._zod.bag;$.minimum=X.length,$.maximum=X.length,$.length=X.length}),Q._zod.check=(W)=>{let $=W.value,J=$.length;if(J===X.length)return;let G=b4($),H=J>X.length;W.issues.push({origin:G,...H?{code:"too_big",maximum:X.length}:{code:"too_small",minimum:X.length},inclusive:!0,exact:!0,input:W.value,inst:Q,continue:!X.abort})}}),R4=j("$ZodCheckStringFormat",(Q,X)=>{var Y,W;if(C0.init(Q,X),Q._zod.onattach.push(($)=>{let J=$._zod.bag;if(J.format=X.format,X.pattern)J.patterns??(J.patterns=new Set),J.patterns.add(X.pattern)}),X.pattern)(Y=Q._zod).check??(Y.check=($)=>{if(X.pattern.lastIndex=0,X.pattern.test($.value))return;$.issues.push({origin:"string",code:"invalid_format",format:X.format,input:$.value,...X.pattern?{pattern:X.pattern.toString()}:{},inst:Q,continue:!X.abort})});else(W=Q._zod).check??(W.check=()=>{})}),lG=j("$ZodCheckRegex",(Q,X)=>{R4.init(Q,X),Q._zod.check=(Y)=>{if(X.pattern.lastIndex=0,X.pattern.test(Y.value))return;Y.issues.push({origin:"string",code:"invalid_format",format:"regex",input:Y.value,pattern:X.pattern.toString(),inst:Q,continue:!X.abort})}}),mG=j("$ZodCheckLowerCase",(Q,X)=>{X.pattern??(X.pattern=vG),R4.init(Q,X)}),cG=j("$ZodCheckUpperCase",(Q,X)=>{X.pattern??(X.pattern=_G),R4.init(Q,X)}),pG=j("$ZodCheckIncludes",(Q,X)=>{C0.init(Q,X);let Y=D6(X.includes),W=new RegExp(typeof X.position==="number"?`^.{${X.position}}${Y}`:Y);X.pattern=W,Q._zod.onattach.push(($)=>{let J=$._zod.bag;J.patterns??(J.patterns=new Set),J.patterns.add(W)}),Q._zod.check=($)=>{if($.value.includes(X.includes,X.position))return;$.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:X.includes,input:$.value,inst:Q,continue:!X.abort})}}),dG=j("$ZodCheckStartsWith",(Q,X)=>{C0.init(Q,X);let Y=new RegExp(`^${D6(X.prefix)}.*`);X.pattern??(X.pattern=Y),Q._zod.onattach.push((W)=>{let $=W._zod.bag;$.patterns??($.patterns=new Set),$.patterns.add(Y)}),Q._zod.check=(W)=>{if(W.value.startsWith(X.prefix))return;W.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:X.prefix,input:W.value,inst:Q,continue:!X.abort})}}),iG=j("$ZodCheckEndsWith",(Q,X)=>{C0.init(Q,X);let Y=new RegExp(`.*${D6(X.suffix)}$`);X.pattern??(X.pattern=Y),Q._zod.onattach.push((W)=>{let $=W._zod.bag;$.patterns??($.patterns=new Set),$.patterns.add(Y)}),Q._zod.check=(W)=>{if(W.value.endsWith(X.suffix))return;W.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:X.suffix,input:W.value,inst:Q,continue:!X.abort})}});var nG=j("$ZodCheckOverwrite",(Q,X)=>{C0.init(Q,X),Q._zod.check=(Y)=>{Y.value=X.tx(Y.value)}});class eY{constructor(Q=[]){if(this.content=[],this.indent=0,this)this.args=Q}indented(Q){this.indent+=1,Q(this),this.indent-=1}write(Q){if(typeof Q==="function"){Q(this,{execution:"sync"}),Q(this,{execution:"async"});return}let Y=Q.split(`
17
- `).filter((J)=>J),W=Math.min(...Y.map((J)=>J.length-J.trimStart().length)),$=Y.map((J)=>J.slice(W)).map((J)=>" ".repeat(this.indent*2)+J);for(let J of $)this.content.push(J)}compile(){let Q=Function,X=this?.args,W=[...(this?.content??[""]).map(($)=>` ${$}`)];return new Q(...X,W.join(`
18
- `))}}var rG={major:4,minor:0,patch:0};var G0=j("$ZodType",(Q,X)=>{var Y;Q??(Q={}),Q._zod.def=X,Q._zod.bag=Q._zod.bag||{},Q._zod.version=rG;let W=[...Q._zod.def.checks??[]];if(Q._zod.traits.has("$ZodCheck"))W.unshift(Q);for(let $ of W)for(let J of $._zod.onattach)J(Q);if(W.length===0)(Y=Q._zod).deferred??(Y.deferred=[]),Q._zod.deferred?.push(()=>{Q._zod.run=Q._zod.parse});else{let $=(J,G,H)=>{let B=d6(J),z;for(let K of G){if(K._zod.def.when){if(!K._zod.def.when(J))continue}else if(B)continue;let F=J.issues.length,D=K._zod.check(J);if(D instanceof Promise&&H?.async===!1)throw new A6;if(z||D instanceof Promise)z=(z??Promise.resolve()).then(async()=>{if(await D,J.issues.length===F)return;if(!B)B=d6(J,F)});else{if(J.issues.length===F)continue;if(!B)B=d6(J,F)}}if(z)return z.then(()=>{return J});return J};Q._zod.run=(J,G)=>{let H=Q._zod.parse(J,G);if(H instanceof Promise){if(G.async===!1)throw new A6;return H.then((B)=>$(B,W,G))}return $(H,W,G)}}Q["~standard"]={validate:($)=>{try{let J=i6(Q,$);return J.success?{value:J.data}:{issues:J.error?.issues}}catch(J){return n6(Q,$).then((G)=>G.success?{value:G.data}:{issues:G.error?.issues})}},vendor:"zod",version:1}}),E4=j("$ZodString",(Q,X)=>{G0.init(Q,X),Q._zod.pattern=[...Q?._zod.bag?.patterns??[]].pop()??EG(Q._zod.bag),Q._zod.parse=(Y,W)=>{if(X.coerce)try{Y.value=String(Y.value)}catch($){}if(typeof Y.value==="string")return Y;return Y.issues.push({expected:"string",code:"invalid_type",input:Y.value,inst:Q}),Y}}),V0=j("$ZodStringFormat",(Q,X)=>{R4.init(Q,X),E4.init(Q,X)}),XW=j("$ZodGUID",(Q,X)=>{X.pattern??(X.pattern=VG),V0.init(Q,X)}),YW=j("$ZodUUID",(Q,X)=>{if(X.version){let W={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[X.version];if(W===void 0)throw Error(`Invalid UUID version: "${X.version}"`);X.pattern??(X.pattern=rY(W))}else X.pattern??(X.pattern=rY());V0.init(Q,X)}),WW=j("$ZodEmail",(Q,X)=>{X.pattern??(X.pattern=qG),V0.init(Q,X)}),$W=j("$ZodURL",(Q,X)=>{V0.init(Q,X),Q._zod.check=(Y)=>{try{let W=Y.value,$=new URL(W),J=$.href;if(X.hostname){if(X.hostname.lastIndex=0,!X.hostname.test($.hostname))Y.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:wG.source,input:Y.value,inst:Q,continue:!X.abort})}if(X.protocol){if(X.protocol.lastIndex=0,!X.protocol.test($.protocol.endsWith(":")?$.protocol.slice(0,-1):$.protocol))Y.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:X.protocol.source,input:Y.value,inst:Q,continue:!X.abort})}if(!W.endsWith("/")&&J.endsWith("/"))Y.value=J.slice(0,-1);else Y.value=J;return}catch(W){Y.issues.push({code:"invalid_format",format:"url",input:Y.value,inst:Q,continue:!X.abort})}}}),JW=j("$ZodEmoji",(Q,X)=>{X.pattern??(X.pattern=AG()),V0.init(Q,X)}),GW=j("$ZodNanoID",(Q,X)=>{X.pattern??(X.pattern=KG),V0.init(Q,X)}),HW=j("$ZodCUID",(Q,X)=>{X.pattern??(X.pattern=JG),V0.init(Q,X)}),BW=j("$ZodCUID2",(Q,X)=>{X.pattern??(X.pattern=GG),V0.init(Q,X)}),zW=j("$ZodULID",(Q,X)=>{X.pattern??(X.pattern=HG),V0.init(Q,X)}),KW=j("$ZodXID",(Q,X)=>{X.pattern??(X.pattern=BG),V0.init(Q,X)}),FW=j("$ZodKSUID",(Q,X)=>{X.pattern??(X.pattern=zG),V0.init(Q,X)}),JH=j("$ZodISODateTime",(Q,X)=>{X.pattern??(X.pattern=RG(X)),V0.init(Q,X)}),GH=j("$ZodISODate",(Q,X)=>{X.pattern??(X.pattern=bG),V0.init(Q,X)}),HH=j("$ZodISOTime",(Q,X)=>{X.pattern??(X.pattern=ZG(X)),V0.init(Q,X)}),BH=j("$ZodISODuration",(Q,X)=>{X.pattern??(X.pattern=FG),V0.init(Q,X)}),VW=j("$ZodIPv4",(Q,X)=>{X.pattern??(X.pattern=DG),V0.init(Q,X),Q._zod.onattach.push((Y)=>{let W=Y._zod.bag;W.format="ipv4"})}),qW=j("$ZodIPv6",(Q,X)=>{X.pattern??(X.pattern=LG),V0.init(Q,X),Q._zod.onattach.push((Y)=>{let W=Y._zod.bag;W.format="ipv6"}),Q._zod.check=(Y)=>{try{new URL(`http://[${Y.value}]`)}catch{Y.issues.push({code:"invalid_format",format:"ipv6",input:Y.value,inst:Q,continue:!X.abort})}}}),AW=j("$ZodCIDRv4",(Q,X)=>{X.pattern??(X.pattern=OG),V0.init(Q,X)}),DW=j("$ZodCIDRv6",(Q,X)=>{X.pattern??(X.pattern=UG),V0.init(Q,X),Q._zod.check=(Y)=>{let[W,$]=Y.value.split("/");try{if(!$)throw Error();let J=Number($);if(`${J}`!==$)throw Error();if(J<0||J>128)throw Error();new URL(`http://[${W}]`)}catch{Y.issues.push({code:"invalid_format",format:"cidrv6",input:Y.value,inst:Q,continue:!X.abort})}}});function zH(Q){if(Q==="")return!0;if(Q.length%4!==0)return!1;try{return atob(Q),!0}catch{return!1}}var LW=j("$ZodBase64",(Q,X)=>{X.pattern??(X.pattern=jG),V0.init(Q,X),Q._zod.onattach.push((Y)=>{Y._zod.bag.contentEncoding="base64"}),Q._zod.check=(Y)=>{if(zH(Y.value))return;Y.issues.push({code:"invalid_format",format:"base64",input:Y.value,inst:Q,continue:!X.abort})}});function fU(Q){if(!tY.test(Q))return!1;let X=Q.replace(/[-_]/g,(W)=>W==="-"?"+":"/"),Y=X.padEnd(Math.ceil(X.length/4)*4,"=");return zH(Y)}var OW=j("$ZodBase64URL",(Q,X)=>{X.pattern??(X.pattern=tY),V0.init(Q,X),Q._zod.onattach.push((Y)=>{Y._zod.bag.contentEncoding="base64url"}),Q._zod.check=(Y)=>{if(fU(Y.value))return;Y.issues.push({code:"invalid_format",format:"base64url",input:Y.value,inst:Q,continue:!X.abort})}}),UW=j("$ZodE164",(Q,X)=>{X.pattern??(X.pattern=MG),V0.init(Q,X)});function hU(Q,X=null){try{let Y=Q.split(".");if(Y.length!==3)return!1;let[W]=Y;if(!W)return!1;let $=JSON.parse(atob(W));if("typ"in $&&$?.typ!=="JWT")return!1;if(!$.alg)return!1;if(X&&(!("alg"in $)||$.alg!==X))return!1;return!0}catch{return!1}}var jW=j("$ZodJWT",(Q,X)=>{V0.init(Q,X),Q._zod.check=(Y)=>{if(hU(Y.value,X.alg))return;Y.issues.push({code:"invalid_format",format:"jwt",input:Y.value,inst:Q,continue:!X.abort})}});var YQ=j("$ZodNumber",(Q,X)=>{G0.init(Q,X),Q._zod.pattern=Q._zod.bag.pattern??TG,Q._zod.parse=(Y,W)=>{if(X.coerce)try{Y.value=Number(Y.value)}catch(G){}let $=Y.value;if(typeof $==="number"&&!Number.isNaN($)&&Number.isFinite($))return Y;let J=typeof $==="number"?Number.isNaN($)?"NaN":!Number.isFinite($)?"Infinity":void 0:void 0;return Y.issues.push({expected:"number",code:"invalid_type",input:$,inst:Q,...J?{received:J}:{}}),Y}}),wW=j("$ZodNumber",(Q,X)=>{gG.init(Q,X),YQ.init(Q,X)}),MW=j("$ZodBoolean",(Q,X)=>{G0.init(Q,X),Q._zod.pattern=CG,Q._zod.parse=(Y,W)=>{if(X.coerce)try{Y.value=Boolean(Y.value)}catch(J){}let $=Y.value;if(typeof $==="boolean")return Y;return Y.issues.push({expected:"boolean",code:"invalid_type",input:$,inst:Q}),Y}}),NW=j("$ZodBigInt",(Q,X)=>{G0.init(Q,X),Q._zod.pattern=SG,Q._zod.parse=(Y,W)=>{if(X.coerce)try{Y.value=BigInt(Y.value)}catch($){}if(typeof Y.value==="bigint")return Y;return Y.issues.push({expected:"bigint",code:"invalid_type",input:Y.value,inst:Q}),Y}});var bW=j("$ZodNull",(Q,X)=>{G0.init(Q,X),Q._zod.pattern=kG,Q._zod.values=new Set([null]),Q._zod.parse=(Y,W)=>{let $=Y.value;if($===null)return Y;return Y.issues.push({expected:"null",code:"invalid_type",input:$,inst:Q}),Y}}),PW=j("$ZodAny",(Q,X)=>{G0.init(Q,X),Q._zod.parse=(Y)=>Y}),ZW=j("$ZodUnknown",(Q,X)=>{G0.init(Q,X),Q._zod.parse=(Y)=>Y}),RW=j("$ZodNever",(Q,X)=>{G0.init(Q,X),Q._zod.parse=(Y,W)=>{return Y.issues.push({expected:"never",code:"invalid_type",input:Y.value,inst:Q}),Y}});var EW=j("$ZodDate",(Q,X)=>{G0.init(Q,X),Q._zod.parse=(Y,W)=>{if(X.coerce)try{Y.value=new Date(Y.value)}catch(H){}let $=Y.value,J=$ instanceof Date;if(J&&!Number.isNaN($.getTime()))return Y;return Y.issues.push({expected:"date",code:"invalid_type",input:$,...J?{received:"Invalid Date"}:{},inst:Q}),Y}});function tG(Q,X,Y){if(Q.issues.length)X.issues.push(...u1(Y,Q.issues));X.value[Y]=Q.value}var SW=j("$ZodArray",(Q,X)=>{G0.init(Q,X),Q._zod.parse=(Y,W)=>{let $=Y.value;if(!Array.isArray($))return Y.issues.push({expected:"array",code:"invalid_type",input:$,inst:Q}),Y;Y.value=Array($.length);let J=[];for(let G=0;G<$.length;G++){let H=$[G],B=X.element._zod.run({value:H,issues:[]},W);if(B instanceof Promise)J.push(B.then((z)=>tG(z,Y,G)));else tG(B,Y,G)}if(J.length)return Promise.all(J).then(()=>Y);return Y}});function XQ(Q,X,Y){if(Q.issues.length)X.issues.push(...u1(Y,Q.issues));X.value[Y]=Q.value}function aG(Q,X,Y,W){if(Q.issues.length)if(W[Y]===void 0)if(Y in W)X.value[Y]=void 0;else X.value[Y]=Q.value;else X.issues.push(...u1(Y,Q.issues));else if(Q.value===void 0){if(Y in W)X.value[Y]=void 0}else X.value[Y]=Q.value}var WQ=j("$ZodObject",(Q,X)=>{G0.init(Q,X);let Y=w4(()=>{let F=Object.keys(X.shape);for(let V of F)if(!(X.shape[V]instanceof G0))throw Error(`Invalid element at key "${V}": expected a Zod schema`);let D=uY(X.shape);return{shape:X.shape,keys:F,keySet:new Set(F),numKeys:F.length,optionalKeys:new Set(D)}});F0(Q._zod,"propValues",()=>{let F=X.shape,D={};for(let V in F){let A=F[V]._zod;if(A.values){D[V]??(D[V]=new Set);for(let q of A.values)D[V].add(q)}}return D});let W=(F)=>{let D=new eY(["shape","payload","ctx"]),V=Y.value,A=(M)=>{let N=p6(M);return`shape[${N}]._zod.run({ value: input[${N}], issues: [] }, ctx)`};D.write("const input = payload.value;");let q=Object.create(null),L=0;for(let M of V.keys)q[M]=`key_${L++}`;D.write("const newResult = {}");for(let M of V.keys)if(V.optionalKeys.has(M)){let N=q[M];D.write(`const ${N} = ${A(M)};`);let C=p6(M);D.write(`
19
- if (${N}.issues.length) {
20
- if (input[${C}] === undefined) {
21
- if (${C} in input) {
22
- newResult[${C}] = undefined;
23
- }
24
- } else {
25
- payload.issues = payload.issues.concat(
26
- ${N}.issues.map((iss) => ({
27
- ...iss,
28
- path: iss.path ? [${C}, ...iss.path] : [${C}],
29
- }))
30
- );
31
- }
32
- } else if (${N}.value === undefined) {
33
- if (${C} in input) newResult[${C}] = undefined;
34
- } else {
35
- newResult[${C}] = ${N}.value;
36
- }
37
- `)}else{let N=q[M];D.write(`const ${N} = ${A(M)};`),D.write(`
38
- if (${N}.issues.length) payload.issues = payload.issues.concat(${N}.issues.map(iss => ({
39
- ...iss,
40
- path: iss.path ? [${p6(M)}, ...iss.path] : [${p6(M)}]
41
- })));`),D.write(`newResult[${p6(M)}] = ${N}.value`)}D.write("payload.value = newResult;"),D.write("return payload;");let O=D.compile();return(M,N)=>O(F,M,N)},$,J=R9,G=!n8.jitless,B=G&&fY.value,z=X.catchall,K;Q._zod.parse=(F,D)=>{K??(K=Y.value);let V=F.value;if(!J(V))return F.issues.push({expected:"object",code:"invalid_type",input:V,inst:Q}),F;let A=[];if(G&&B&&D?.async===!1&&D.jitless!==!0){if(!$)$=W(X.shape);F=$(F,D)}else{F.value={};let N=K.shape;for(let C of K.keys){let Z=N[C],K0=Z._zod.run({value:V[C],issues:[]},D),b0=Z._zod.optin==="optional"&&Z._zod.optout==="optional";if(K0 instanceof Promise)A.push(K0.then((y1)=>b0?aG(y1,F,C,V):XQ(y1,F,C)));else if(b0)aG(K0,F,C,V);else XQ(K0,F,C)}}if(!z)return A.length?Promise.all(A).then(()=>F):F;let q=[],L=K.keySet,O=z._zod,M=O.def.type;for(let N of Object.keys(V)){if(L.has(N))continue;if(M==="never"){q.push(N);continue}let C=O.run({value:V[N],issues:[]},D);if(C instanceof Promise)A.push(C.then((Z)=>XQ(Z,F,N)));else XQ(C,F,N)}if(q.length)F.issues.push({code:"unrecognized_keys",keys:q,input:V,inst:Q});if(!A.length)return F;return Promise.all(A).then(()=>{return F})}});function sG(Q,X,Y,W){for(let $ of Q)if($.issues.length===0)return X.value=$.value,X;return X.issues.push({code:"invalid_union",input:X.value,inst:Y,errors:Q.map(($)=>$.issues.map((J)=>M1(J,W,t0())))}),X}var $Q=j("$ZodUnion",(Q,X)=>{G0.init(Q,X),F0(Q._zod,"optin",()=>X.options.some((Y)=>Y._zod.optin==="optional")?"optional":void 0),F0(Q._zod,"optout",()=>X.options.some((Y)=>Y._zod.optout==="optional")?"optional":void 0),F0(Q._zod,"values",()=>{if(X.options.every((Y)=>Y._zod.values))return new Set(X.options.flatMap((Y)=>Array.from(Y._zod.values)));return}),F0(Q._zod,"pattern",()=>{if(X.options.every((Y)=>Y._zod.pattern)){let Y=X.options.map((W)=>W._zod.pattern);return new RegExp(`^(${Y.map((W)=>N4(W.source)).join("|")})$`)}return}),Q._zod.parse=(Y,W)=>{let $=!1,J=[];for(let G of X.options){let H=G._zod.run({value:Y.value,issues:[]},W);if(H instanceof Promise)J.push(H),$=!0;else{if(H.issues.length===0)return H;J.push(H)}}if(!$)return sG(J,Y,Q,W);return Promise.all(J).then((G)=>{return sG(G,Y,Q,W)})}}),IW=j("$ZodDiscriminatedUnion",(Q,X)=>{$Q.init(Q,X);let Y=Q._zod.parse;F0(Q._zod,"propValues",()=>{let $={};for(let J of X.options){let G=J._zod.propValues;if(!G||Object.keys(G).length===0)throw Error(`Invalid discriminated union option at index "${X.options.indexOf(J)}"`);for(let[H,B]of Object.entries(G)){if(!$[H])$[H]=new Set;for(let z of B)$[H].add(z)}}return $});let W=w4(()=>{let $=X.options,J=new Map;for(let G of $){let H=G._zod.propValues[X.discriminator];if(!H||H.size===0)throw Error(`Invalid discriminated union option at index "${X.options.indexOf(G)}"`);for(let B of H){if(J.has(B))throw Error(`Duplicate discriminator value "${String(B)}"`);J.set(B,G)}}return J});Q._zod.parse=($,J)=>{let G=$.value;if(!R9(G))return $.issues.push({code:"invalid_type",expected:"object",input:G,inst:Q}),$;let H=W.value.get(G?.[X.discriminator]);if(H)return H._zod.run($,J);if(X.unionFallback)return Y($,J);return $.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:G,path:[X.discriminator],inst:Q}),$}}),TW=j("$ZodIntersection",(Q,X)=>{G0.init(Q,X),Q._zod.parse=(Y,W)=>{let $=Y.value,J=X.left._zod.run({value:$,issues:[]},W),G=X.right._zod.run({value:$,issues:[]},W);if(J instanceof Promise||G instanceof Promise)return Promise.all([J,G]).then(([B,z])=>{return eG(Y,B,z)});return eG(Y,J,G)}});function QW(Q,X){if(Q===X)return{valid:!0,data:Q};if(Q instanceof Date&&X instanceof Date&&+Q===+X)return{valid:!0,data:Q};if(E9(Q)&&E9(X)){let Y=Object.keys(X),W=Object.keys(Q).filter((J)=>Y.indexOf(J)!==-1),$={...Q,...X};for(let J of W){let G=QW(Q[J],X[J]);if(!G.valid)return{valid:!1,mergeErrorPath:[J,...G.mergeErrorPath]};$[J]=G.data}return{valid:!0,data:$}}if(Array.isArray(Q)&&Array.isArray(X)){if(Q.length!==X.length)return{valid:!1,mergeErrorPath:[]};let Y=[];for(let W=0;W<Q.length;W++){let $=Q[W],J=X[W],G=QW($,J);if(!G.valid)return{valid:!1,mergeErrorPath:[W,...G.mergeErrorPath]};Y.push(G.data)}return{valid:!0,data:Y}}return{valid:!1,mergeErrorPath:[]}}function eG(Q,X,Y){if(X.issues.length)Q.issues.push(...X.issues);if(Y.issues.length)Q.issues.push(...Y.issues);if(d6(Q))return Q;let W=QW(X.value,Y.value);if(!W.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(W.mergeErrorPath)}`);return Q.value=W.data,Q}var CW=j("$ZodRecord",(Q,X)=>{G0.init(Q,X),Q._zod.parse=(Y,W)=>{let $=Y.value;if(!E9($))return Y.issues.push({expected:"record",code:"invalid_type",input:$,inst:Q}),Y;let J=[];if(X.keyType._zod.values){let G=X.keyType._zod.values;Y.value={};for(let B of G)if(typeof B==="string"||typeof B==="number"||typeof B==="symbol"){let z=X.valueType._zod.run({value:$[B],issues:[]},W);if(z instanceof Promise)J.push(z.then((K)=>{if(K.issues.length)Y.issues.push(...u1(B,K.issues));Y.value[B]=K.value}));else{if(z.issues.length)Y.issues.push(...u1(B,z.issues));Y.value[B]=z.value}}let H;for(let B in $)if(!G.has(B))H=H??[],H.push(B);if(H&&H.length>0)Y.issues.push({code:"unrecognized_keys",input:$,inst:Q,keys:H})}else{Y.value={};for(let G of Reflect.ownKeys($)){if(G==="__proto__")continue;let H=X.keyType._zod.run({value:G,issues:[]},W);if(H instanceof Promise)throw Error("Async schemas not supported in object keys currently");if(H.issues.length){Y.issues.push({origin:"record",code:"invalid_key",issues:H.issues.map((z)=>M1(z,W,t0())),input:G,path:[G],inst:Q}),Y.value[H.value]=H.value;continue}let B=X.valueType._zod.run({value:$[G],issues:[]},W);if(B instanceof Promise)J.push(B.then((z)=>{if(z.issues.length)Y.issues.push(...u1(G,z.issues));Y.value[H.value]=z.value}));else{if(B.issues.length)Y.issues.push(...u1(G,B.issues));Y.value[H.value]=B.value}}}if(J.length)return Promise.all(J).then(()=>Y);return Y}});var kW=j("$ZodEnum",(Q,X)=>{G0.init(Q,X);let Y=j4(X.entries);Q._zod.values=new Set(Y),Q._zod.pattern=new RegExp(`^(${Y.filter((W)=>hY.has(typeof W)).map((W)=>typeof W==="string"?D6(W):W.toString()).join("|")})$`),Q._zod.parse=(W,$)=>{let J=W.value;if(Q._zod.values.has(J))return W;return W.issues.push({code:"invalid_value",values:Y,input:J,inst:Q}),W}}),vW=j("$ZodLiteral",(Q,X)=>{G0.init(Q,X),Q._zod.values=new Set(X.values),Q._zod.pattern=new RegExp(`^(${X.values.map((Y)=>typeof Y==="string"?D6(Y):Y?Y.toString():String(Y)).join("|")})$`),Q._zod.parse=(Y,W)=>{let $=Y.value;if(Q._zod.values.has($))return Y;return Y.issues.push({code:"invalid_value",values:X.values,input:$,inst:Q}),Y}});var _W=j("$ZodTransform",(Q,X)=>{G0.init(Q,X),Q._zod.parse=(Y,W)=>{let $=X.transform(Y.value,Y);if(W.async)return($ instanceof Promise?$:Promise.resolve($)).then((G)=>{return Y.value=G,Y});if($ instanceof Promise)throw new A6;return Y.value=$,Y}}),xW=j("$ZodOptional",(Q,X)=>{G0.init(Q,X),Q._zod.optin="optional",Q._zod.optout="optional",F0(Q._zod,"values",()=>{return X.innerType._zod.values?new Set([...X.innerType._zod.values,void 0]):void 0}),F0(Q._zod,"pattern",()=>{let Y=X.innerType._zod.pattern;return Y?new RegExp(`^(${N4(Y.source)})?$`):void 0}),Q._zod.parse=(Y,W)=>{if(X.innerType._zod.optin==="optional")return X.innerType._zod.run(Y,W);if(Y.value===void 0)return Y;return X.innerType._zod.run(Y,W)}}),yW=j("$ZodNullable",(Q,X)=>{G0.init(Q,X),F0(Q._zod,"optin",()=>X.innerType._zod.optin),F0(Q._zod,"optout",()=>X.innerType._zod.optout),F0(Q._zod,"pattern",()=>{let Y=X.innerType._zod.pattern;return Y?new RegExp(`^(${N4(Y.source)}|null)$`):void 0}),F0(Q._zod,"values",()=>{return X.innerType._zod.values?new Set([...X.innerType._zod.values,null]):void 0}),Q._zod.parse=(Y,W)=>{if(Y.value===null)return Y;return X.innerType._zod.run(Y,W)}}),gW=j("$ZodDefault",(Q,X)=>{G0.init(Q,X),Q._zod.optin="optional",F0(Q._zod,"values",()=>X.innerType._zod.values),Q._zod.parse=(Y,W)=>{if(Y.value===void 0)return Y.value=X.defaultValue,Y;let $=X.innerType._zod.run(Y,W);if($ instanceof Promise)return $.then((J)=>QH(J,X));return QH($,X)}});function QH(Q,X){if(Q.value===void 0)Q.value=X.defaultValue;return Q}var fW=j("$ZodPrefault",(Q,X)=>{G0.init(Q,X),Q._zod.optin="optional",F0(Q._zod,"values",()=>X.innerType._zod.values),Q._zod.parse=(Y,W)=>{if(Y.value===void 0)Y.value=X.defaultValue;return X.innerType._zod.run(Y,W)}}),hW=j("$ZodNonOptional",(Q,X)=>{G0.init(Q,X),F0(Q._zod,"values",()=>{let Y=X.innerType._zod.values;return Y?new Set([...Y].filter((W)=>W!==void 0)):void 0}),Q._zod.parse=(Y,W)=>{let $=X.innerType._zod.run(Y,W);if($ instanceof Promise)return $.then((J)=>XH(J,Q));return XH($,Q)}});function XH(Q,X){if(!Q.issues.length&&Q.value===void 0)Q.issues.push({code:"invalid_type",expected:"nonoptional",input:Q.value,inst:X});return Q}var uW=j("$ZodCatch",(Q,X)=>{G0.init(Q,X),Q._zod.optin="optional",F0(Q._zod,"optout",()=>X.innerType._zod.optout),F0(Q._zod,"values",()=>X.innerType._zod.values),Q._zod.parse=(Y,W)=>{let $=X.innerType._zod.run(Y,W);if($ instanceof Promise)return $.then((J)=>{if(Y.value=J.value,J.issues.length)Y.value=X.catchValue({...Y,error:{issues:J.issues.map((G)=>M1(G,W,t0()))},input:Y.value}),Y.issues=[];return Y});if(Y.value=$.value,$.issues.length)Y.value=X.catchValue({...Y,error:{issues:$.issues.map((J)=>M1(J,W,t0()))},input:Y.value}),Y.issues=[];return Y}});var lW=j("$ZodPipe",(Q,X)=>{G0.init(Q,X),F0(Q._zod,"values",()=>X.in._zod.values),F0(Q._zod,"optin",()=>X.in._zod.optin),F0(Q._zod,"optout",()=>X.out._zod.optout),Q._zod.parse=(Y,W)=>{let $=X.in._zod.run(Y,W);if($ instanceof Promise)return $.then((J)=>YH(J,X,W));return YH($,X,W)}});function YH(Q,X,Y){if(d6(Q))return Q;return X.out._zod.run({value:Q.value,issues:Q.issues},Y)}var mW=j("$ZodReadonly",(Q,X)=>{G0.init(Q,X),F0(Q._zod,"propValues",()=>X.innerType._zod.propValues),F0(Q._zod,"values",()=>X.innerType._zod.values),F0(Q._zod,"optin",()=>X.innerType._zod.optin),F0(Q._zod,"optout",()=>X.innerType._zod.optout),Q._zod.parse=(Y,W)=>{let $=X.innerType._zod.run(Y,W);if($ instanceof Promise)return $.then(WH);return WH($)}});function WH(Q){return Q.value=Object.freeze(Q.value),Q}var cW=j("$ZodCustom",(Q,X)=>{C0.init(Q,X),G0.init(Q,X),Q._zod.parse=(Y,W)=>{return Y},Q._zod.check=(Y)=>{let W=Y.value,$=X.fn(W);if($ instanceof Promise)return $.then((J)=>$H(J,Y,W,Q));$H($,Y,W,Q);return}});function $H(Q,X,Y,W){if(!Q){let $={code:"custom",input:Y,inst:W,path:[...W._zod.def.path??[]],continue:!W._zod.def.abort};if(W._zod.def.params)$.params=W._zod.def.params;X.issues.push(mY($))}}var uU=(Q)=>{let X=typeof Q;switch(X){case"number":return Number.isNaN(Q)?"NaN":"number";case"object":{if(Array.isArray(Q))return"array";if(Q===null)return"null";if(Object.getPrototypeOf(Q)!==Object.prototype&&Q.constructor)return Q.constructor.name}}return X},lU=()=>{let Q={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function X(W){return Q[W]??null}let Y={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return(W)=>{switch(W.code){case"invalid_type":return`Invalid input: expected ${W.expected}, received ${uU(W.input)}`;case"invalid_value":if(W.values.length===1)return`Invalid input: expected ${a8(W.values[0])}`;return`Invalid option: expected one of ${r8(W.values,"|")}`;case"too_big":{let $=W.inclusive?"<=":"<",J=X(W.origin);if(J)return`Too big: expected ${W.origin??"value"} to have ${$}${W.maximum.toString()} ${J.unit??"elements"}`;return`Too big: expected ${W.origin??"value"} to be ${$}${W.maximum.toString()}`}case"too_small":{let $=W.inclusive?">=":">",J=X(W.origin);if(J)return`Too small: expected ${W.origin} to have ${$}${W.minimum.toString()} ${J.unit}`;return`Too small: expected ${W.origin} to be ${$}${W.minimum.toString()}`}case"invalid_format":{let $=W;if($.format==="starts_with")return`Invalid string: must start with "${$.prefix}"`;if($.format==="ends_with")return`Invalid string: must end with "${$.suffix}"`;if($.format==="includes")return`Invalid string: must include "${$.includes}"`;if($.format==="regex")return`Invalid string: must match pattern ${$.pattern}`;return`Invalid ${Y[$.format]??W.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${W.divisor}`;case"unrecognized_keys":return`Unrecognized key${W.keys.length>1?"s":""}: ${r8(W.keys,", ")}`;case"invalid_key":return`Invalid key in ${W.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${W.origin}`;default:return"Invalid input"}}};function pW(){return{localeError:lU()}}var KH=Symbol("ZodOutput"),FH=Symbol("ZodInput");class JQ{constructor(){this._map=new Map,this._idmap=new Map}add(Q,...X){let Y=X[0];if(this._map.set(Q,Y),Y&&typeof Y==="object"&&"id"in Y){if(this._idmap.has(Y.id))throw Error(`ID ${Y.id} already exists in the registry`);this._idmap.set(Y.id,Q)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(Q){let X=this._map.get(Q);if(X&&typeof X==="object"&&"id"in X)this._idmap.delete(X.id);return this._map.delete(Q),this}get(Q){let X=Q._zod.parent;if(X){let Y={...this.get(X)??{}};return delete Y.id,{...Y,...this._map.get(Q)}}return this._map.get(Q)}has(Q){return this._map.has(Q)}}function dW(){return new JQ}var r1=dW();function iW(Q,X){return new Q({type:"string",...g(X)})}function VH(Q,X){return new Q({type:"string",coerce:!0,...g(X)})}function nW(Q,X){return new Q({type:"string",format:"email",check:"string_format",abort:!1,...g(X)})}function GQ(Q,X){return new Q({type:"string",format:"guid",check:"string_format",abort:!1,...g(X)})}function oW(Q,X){return new Q({type:"string",format:"uuid",check:"string_format",abort:!1,...g(X)})}function rW(Q,X){return new Q({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...g(X)})}function tW(Q,X){return new Q({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...g(X)})}function aW(Q,X){return new Q({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...g(X)})}function HQ(Q,X){return new Q({type:"string",format:"url",check:"string_format",abort:!1,...g(X)})}function sW(Q,X){return new Q({type:"string",format:"emoji",check:"string_format",abort:!1,...g(X)})}function eW(Q,X){return new Q({type:"string",format:"nanoid",check:"string_format",abort:!1,...g(X)})}function Q7(Q,X){return new Q({type:"string",format:"cuid",check:"string_format",abort:!1,...g(X)})}function X7(Q,X){return new Q({type:"string",format:"cuid2",check:"string_format",abort:!1,...g(X)})}function Y7(Q,X){return new Q({type:"string",format:"ulid",check:"string_format",abort:!1,...g(X)})}function W7(Q,X){return new Q({type:"string",format:"xid",check:"string_format",abort:!1,...g(X)})}function $7(Q,X){return new Q({type:"string",format:"ksuid",check:"string_format",abort:!1,...g(X)})}function J7(Q,X){return new Q({type:"string",format:"ipv4",check:"string_format",abort:!1,...g(X)})}function G7(Q,X){return new Q({type:"string",format:"ipv6",check:"string_format",abort:!1,...g(X)})}function H7(Q,X){return new Q({type:"string",format:"cidrv4",check:"string_format",abort:!1,...g(X)})}function B7(Q,X){return new Q({type:"string",format:"cidrv6",check:"string_format",abort:!1,...g(X)})}function z7(Q,X){return new Q({type:"string",format:"base64",check:"string_format",abort:!1,...g(X)})}function K7(Q,X){return new Q({type:"string",format:"base64url",check:"string_format",abort:!1,...g(X)})}function F7(Q,X){return new Q({type:"string",format:"e164",check:"string_format",abort:!1,...g(X)})}function V7(Q,X){return new Q({type:"string",format:"jwt",check:"string_format",abort:!1,...g(X)})}function qH(Q,X){return new Q({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...g(X)})}function AH(Q,X){return new Q({type:"string",format:"date",check:"string_format",...g(X)})}function DH(Q,X){return new Q({type:"string",format:"time",check:"string_format",precision:null,...g(X)})}function LH(Q,X){return new Q({type:"string",format:"duration",check:"string_format",...g(X)})}function q7(Q,X){return new Q({type:"number",checks:[],...g(X)})}function OH(Q,X){return new Q({type:"number",coerce:!0,checks:[],...g(X)})}function A7(Q,X){return new Q({type:"number",check:"number_format",abort:!1,format:"safeint",...g(X)})}function D7(Q,X){return new Q({type:"boolean",...g(X)})}function UH(Q,X){return new Q({type:"boolean",coerce:!0,...g(X)})}function jH(Q,X){return new Q({type:"bigint",coerce:!0,...g(X)})}function L7(Q,X){return new Q({type:"null",...g(X)})}function O7(Q){return new Q({type:"any"})}function U7(Q){return new Q({type:"unknown"})}function j7(Q,X){return new Q({type:"never",...g(X)})}function wH(Q,X){return new Q({type:"date",coerce:!0,...g(X)})}function S9(Q,X){return new aY({check:"less_than",...g(X),value:Q,inclusive:!1})}function t1(Q,X){return new aY({check:"less_than",...g(X),value:Q,inclusive:!0})}function I9(Q,X){return new sY({check:"greater_than",...g(X),value:Q,inclusive:!1})}function N1(Q,X){return new sY({check:"greater_than",...g(X),value:Q,inclusive:!0})}function S4(Q,X){return new yG({check:"multiple_of",...g(X),value:Q})}function BQ(Q,X){return new fG({check:"max_length",...g(X),maximum:Q})}function T9(Q,X){return new hG({check:"min_length",...g(X),minimum:Q})}function zQ(Q,X){return new uG({check:"length_equals",...g(X),length:Q})}function w7(Q,X){return new lG({check:"string_format",format:"regex",...g(X),pattern:Q})}function M7(Q){return new mG({check:"string_format",format:"lowercase",...g(Q)})}function N7(Q){return new cG({check:"string_format",format:"uppercase",...g(Q)})}function b7(Q,X){return new pG({check:"string_format",format:"includes",...g(X),includes:Q})}function P7(Q,X){return new dG({check:"string_format",format:"starts_with",...g(X),prefix:Q})}function Z7(Q,X){return new iG({check:"string_format",format:"ends_with",...g(X),suffix:Q})}function o6(Q){return new nG({check:"overwrite",tx:Q})}function R7(Q){return o6((X)=>X.normalize(Q))}function E7(){return o6((Q)=>Q.trim())}function S7(){return o6((Q)=>Q.toLowerCase())}function I7(){return o6((Q)=>Q.toUpperCase())}function MH(Q,X,Y){return new Q({type:"array",element:X,...g(Y)})}function T7(Q,X,Y){let W=g(Y);return W.abort??(W.abort=!0),new Q({type:"custom",check:"custom",fn:X,...W})}function C7(Q,X,Y){return new Q({type:"custom",check:"custom",fn:X,...g(Y)})}class k7{constructor(Q){this.counter=0,this.metadataRegistry=Q?.metadata??r1,this.target=Q?.target??"draft-2020-12",this.unrepresentable=Q?.unrepresentable??"throw",this.override=Q?.override??(()=>{}),this.io=Q?.io??"output",this.seen=new Map}process(Q,X={path:[],schemaPath:[]}){var Y;let W=Q._zod.def,$={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},J=this.seen.get(Q);if(J){if(J.count++,X.schemaPath.includes(Q))J.cycle=X.path;return J.schema}let G={schema:{},count:1,cycle:void 0,path:X.path};this.seen.set(Q,G);let H=Q._zod.toJSONSchema?.();if(H)G.schema=H;else{let K={...X,schemaPath:[...X.schemaPath,Q],path:X.path},F=Q._zod.parent;if(F)G.ref=F,this.process(F,K),this.seen.get(F).isParent=!0;else{let D=G.schema;switch(W.type){case"string":{let V=D;V.type="string";let{minimum:A,maximum:q,format:L,patterns:O,contentEncoding:M}=Q._zod.bag;if(typeof A==="number")V.minLength=A;if(typeof q==="number")V.maxLength=q;if(L){if(V.format=$[L]??L,V.format==="")delete V.format}if(M)V.contentEncoding=M;if(O&&O.size>0){let N=[...O];if(N.length===1)V.pattern=N[0].source;else if(N.length>1)G.schema.allOf=[...N.map((C)=>({...this.target==="draft-7"?{type:"string"}:{},pattern:C.source}))]}break}case"number":{let V=D,{minimum:A,maximum:q,format:L,multipleOf:O,exclusiveMaximum:M,exclusiveMinimum:N}=Q._zod.bag;if(typeof L==="string"&&L.includes("int"))V.type="integer";else V.type="number";if(typeof N==="number")V.exclusiveMinimum=N;if(typeof A==="number"){if(V.minimum=A,typeof N==="number")if(N>=A)delete V.minimum;else delete V.exclusiveMinimum}if(typeof M==="number")V.exclusiveMaximum=M;if(typeof q==="number"){if(V.maximum=q,typeof M==="number")if(M<=q)delete V.maximum;else delete V.exclusiveMaximum}if(typeof O==="number")V.multipleOf=O;break}case"boolean":{let V=D;V.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw Error("Symbols cannot be represented in JSON Schema");break}case"null":{D.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw Error("Void cannot be represented in JSON Schema");break}case"never":{D.not={};break}case"date":{if(this.unrepresentable==="throw")throw Error("Date cannot be represented in JSON Schema");break}case"array":{let V=D,{minimum:A,maximum:q}=Q._zod.bag;if(typeof A==="number")V.minItems=A;if(typeof q==="number")V.maxItems=q;V.type="array",V.items=this.process(W.element,{...K,path:[...K.path,"items"]});break}case"object":{let V=D;V.type="object",V.properties={};let A=W.shape;for(let O in A)V.properties[O]=this.process(A[O],{...K,path:[...K.path,"properties",O]});let q=new Set(Object.keys(A)),L=new Set([...q].filter((O)=>{let M=W.shape[O]._zod;if(this.io==="input")return M.optin===void 0;else return M.optout===void 0}));if(L.size>0)V.required=Array.from(L);if(W.catchall?._zod.def.type==="never")V.additionalProperties=!1;else if(!W.catchall){if(this.io==="output")V.additionalProperties=!1}else if(W.catchall)V.additionalProperties=this.process(W.catchall,{...K,path:[...K.path,"additionalProperties"]});break}case"union":{let V=D;V.anyOf=W.options.map((A,q)=>this.process(A,{...K,path:[...K.path,"anyOf",q]}));break}case"intersection":{let V=D,A=this.process(W.left,{...K,path:[...K.path,"allOf",0]}),q=this.process(W.right,{...K,path:[...K.path,"allOf",1]}),L=(M)=>("allOf"in M)&&Object.keys(M).length===1,O=[...L(A)?A.allOf:[A],...L(q)?q.allOf:[q]];V.allOf=O;break}case"tuple":{let V=D;V.type="array";let A=W.items.map((O,M)=>this.process(O,{...K,path:[...K.path,"prefixItems",M]}));if(this.target==="draft-2020-12")V.prefixItems=A;else V.items=A;if(W.rest){let O=this.process(W.rest,{...K,path:[...K.path,"items"]});if(this.target==="draft-2020-12")V.items=O;else V.additionalItems=O}if(W.rest)V.items=this.process(W.rest,{...K,path:[...K.path,"items"]});let{minimum:q,maximum:L}=Q._zod.bag;if(typeof q==="number")V.minItems=q;if(typeof L==="number")V.maxItems=L;break}case"record":{let V=D;V.type="object",V.propertyNames=this.process(W.keyType,{...K,path:[...K.path,"propertyNames"]}),V.additionalProperties=this.process(W.valueType,{...K,path:[...K.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw Error("Set cannot be represented in JSON Schema");break}case"enum":{let V=D,A=j4(W.entries);if(A.every((q)=>typeof q==="number"))V.type="number";if(A.every((q)=>typeof q==="string"))V.type="string";V.enum=A;break}case"literal":{let V=D,A=[];for(let q of W.values)if(q===void 0){if(this.unrepresentable==="throw")throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof q==="bigint")if(this.unrepresentable==="throw")throw Error("BigInt literals cannot be represented in JSON Schema");else A.push(Number(q));else A.push(q);if(A.length===0);else if(A.length===1){let q=A[0];V.type=q===null?"null":typeof q,V.const=q}else{if(A.every((q)=>typeof q==="number"))V.type="number";if(A.every((q)=>typeof q==="string"))V.type="string";if(A.every((q)=>typeof q==="boolean"))V.type="string";if(A.every((q)=>q===null))V.type="null";V.enum=A}break}case"file":{let V=D,A={type:"string",format:"binary",contentEncoding:"binary"},{minimum:q,maximum:L,mime:O}=Q._zod.bag;if(q!==void 0)A.minLength=q;if(L!==void 0)A.maxLength=L;if(O)if(O.length===1)A.contentMediaType=O[0],Object.assign(V,A);else V.anyOf=O.map((M)=>{return{...A,contentMediaType:M}});else Object.assign(V,A);break}case"transform":{if(this.unrepresentable==="throw")throw Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let V=this.process(W.innerType,K);D.anyOf=[V,{type:"null"}];break}case"nonoptional":{this.process(W.innerType,K),G.ref=W.innerType;break}case"success":{let V=D;V.type="boolean";break}case"default":{this.process(W.innerType,K),G.ref=W.innerType,D.default=JSON.parse(JSON.stringify(W.defaultValue));break}case"prefault":{if(this.process(W.innerType,K),G.ref=W.innerType,this.io==="input")D._prefault=JSON.parse(JSON.stringify(W.defaultValue));break}case"catch":{this.process(W.innerType,K),G.ref=W.innerType;let V;try{V=W.catchValue(void 0)}catch{throw Error("Dynamic catch values are not supported in JSON Schema")}D.default=V;break}case"nan":{if(this.unrepresentable==="throw")throw Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let V=D,A=Q._zod.pattern;if(!A)throw Error("Pattern not found in template literal");V.type="string",V.pattern=A.source;break}case"pipe":{let V=this.io==="input"?W.in._zod.def.type==="transform"?W.out:W.in:W.out;this.process(V,K),G.ref=V;break}case"readonly":{this.process(W.innerType,K),G.ref=W.innerType,D.readOnly=!0;break}case"promise":{this.process(W.innerType,K),G.ref=W.innerType;break}case"optional":{this.process(W.innerType,K),G.ref=W.innerType;break}case"lazy":{let V=Q._zod.innerType;this.process(V,K),G.ref=V;break}case"custom":{if(this.unrepresentable==="throw")throw Error("Custom types cannot be represented in JSON Schema");break}default:}}}let B=this.metadataRegistry.get(Q);if(B)Object.assign(G.schema,B);if(this.io==="input"&&S0(Q))delete G.schema.examples,delete G.schema.default;if(this.io==="input"&&G.schema._prefault)(Y=G.schema).default??(Y.default=G.schema._prefault);return delete G.schema._prefault,this.seen.get(Q).schema}emit(Q,X){let Y={cycles:X?.cycles??"ref",reused:X?.reused??"inline",external:X?.external??void 0},W=this.seen.get(Q);if(!W)throw Error("Unprocessed schema. This is a bug in Zod.");let $=(z)=>{let K=this.target==="draft-2020-12"?"$defs":"definitions";if(Y.external){let A=Y.external.registry.get(z[0])?.id,q=Y.external.uri??((O)=>O);if(A)return{ref:q(A)};let L=z[1].defId??z[1].schema.id??`schema${this.counter++}`;return z[1].defId=L,{defId:L,ref:`${q("__shared")}#/${K}/${L}`}}if(z[1]===W)return{ref:"#"};let D=`${"#"}/${K}/`,V=z[1].schema.id??`__schema${this.counter++}`;return{defId:V,ref:D+V}},J=(z)=>{if(z[1].schema.$ref)return;let K=z[1],{ref:F,defId:D}=$(z);if(K.def={...K.schema},D)K.defId=D;let V=K.schema;for(let A in V)delete V[A];V.$ref=F};if(Y.cycles==="throw")for(let z of this.seen.entries()){let K=z[1];if(K.cycle)throw Error(`Cycle detected: #/${K.cycle?.join("/")}/<root>
42
-
43
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let z of this.seen.entries()){let K=z[1];if(Q===z[0]){J(z);continue}if(Y.external){let D=Y.external.registry.get(z[0])?.id;if(Q!==z[0]&&D){J(z);continue}}if(this.metadataRegistry.get(z[0])?.id){J(z);continue}if(K.cycle){J(z);continue}if(K.count>1){if(Y.reused==="ref"){J(z);continue}}}let G=(z,K)=>{let F=this.seen.get(z),D=F.def??F.schema,V={...D};if(F.ref===null)return;let A=F.ref;if(F.ref=null,A){G(A,K);let q=this.seen.get(A).schema;if(q.$ref&&K.target==="draft-7")D.allOf=D.allOf??[],D.allOf.push(q);else Object.assign(D,q),Object.assign(D,V)}if(!F.isParent)this.override({zodSchema:z,jsonSchema:D,path:F.path??[]})};for(let z of[...this.seen.entries()].reverse())G(z[0],{target:this.target});let H={};if(this.target==="draft-2020-12")H.$schema="https://json-schema.org/draft/2020-12/schema";else if(this.target==="draft-7")H.$schema="http://json-schema.org/draft-07/schema#";else console.warn(`Invalid target: ${this.target}`);if(Y.external?.uri){let z=Y.external.registry.get(Q)?.id;if(!z)throw Error("Schema is missing an `id` property");H.$id=Y.external.uri(z)}Object.assign(H,W.def);let B=Y.external?.defs??{};for(let z of this.seen.entries()){let K=z[1];if(K.def&&K.defId)B[K.defId]=K.def}if(Y.external);else if(Object.keys(B).length>0)if(this.target==="draft-2020-12")H.$defs=B;else H.definitions=B;try{return JSON.parse(JSON.stringify(H))}catch(z){throw Error("Error converting schema to JSON.")}}}function KQ(Q,X){if(Q instanceof JQ){let W=new k7(X),$={};for(let H of Q._idmap.entries()){let[B,z]=H;W.process(z)}let J={},G={registry:Q,uri:X?.uri,defs:$};for(let H of Q._idmap.entries()){let[B,z]=H;J[B]=W.emit(z,{...X,external:G})}if(Object.keys($).length>0){let H=W.target==="draft-2020-12"?"$defs":"definitions";J.__shared={[H]:$}}return{schemas:J}}let Y=new k7(X);return Y.process(Q),Y.emit(Q,X)}function S0(Q,X){let Y=X??{seen:new Set};if(Y.seen.has(Q))return!1;Y.seen.add(Q);let $=Q._zod.def;switch($.type){case"string":case"number":case"bigint":case"boolean":case"date":case"symbol":case"undefined":case"null":case"any":case"unknown":case"never":case"void":case"literal":case"enum":case"nan":case"file":case"template_literal":return!1;case"array":return S0($.element,Y);case"object":{for(let J in $.shape)if(S0($.shape[J],Y))return!0;return!1}case"union":{for(let J of $.options)if(S0(J,Y))return!0;return!1}case"intersection":return S0($.left,Y)||S0($.right,Y);case"tuple":{for(let J of $.items)if(S0(J,Y))return!0;if($.rest&&S0($.rest,Y))return!0;return!1}case"record":return S0($.keyType,Y)||S0($.valueType,Y);case"map":return S0($.keyType,Y)||S0($.valueType,Y);case"set":return S0($.valueType,Y);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return S0($.innerType,Y);case"lazy":return S0($.getter(),Y);case"default":return S0($.innerType,Y);case"prefault":return S0($.innerType,Y);case"custom":return!1;case"transform":return!0;case"pipe":return S0($.in,Y)||S0($.out,Y);case"success":return!1;case"catch":return!1;default:}throw Error(`Unknown schema type: ${$.type}`)}var Uj=j("ZodMiniType",(Q,X)=>{if(!Q._zod)throw Error("Uninitialized schema in ZodMiniType.");G0.init(Q,X),Q.def=X,Q.parse=(Y,W)=>pY(Q,Y,W,{callee:Q.parse}),Q.safeParse=(Y,W)=>i6(Q,Y,W),Q.parseAsync=async(Y,W)=>iY(Q,Y,W,{callee:Q.parseAsync}),Q.safeParseAsync=async(Y,W)=>n6(Q,Y,W),Q.check=(...Y)=>{return Q.clone({...X,checks:[...X.checks??[],...Y.map((W)=>typeof W==="function"?{_zod:{check:W,def:{check:"custom"},onattach:[]}}:W)]})},Q.clone=(Y,W)=>a0(Q,Y,W),Q.brand=()=>Q,Q.register=(Y,W)=>{return Y.add(Q,W),Q}});var jj=j("ZodMiniObject",(Q,X)=>{WQ.init(Q,X),Uj.init(Q,X),t.defineLazy(Q,"shape",()=>X.shape)});function v7(Q,X){let Y={type:"object",get shape(){return t.assignProp(this,"shape",{...Q}),this.shape},...t.normalizeParams(X)};return new jj(Y)}function s0(Q){return!!Q._zod}function r6(Q){let X=Object.values(Q);if(X.length===0)return v7({});let Y=X.every(s0),W=X.every(($)=>!s0($));if(Y)return v7(Q);if(W)return vY(Q);throw Error("Mixed Zod versions detected in object shape.")}function m0(Q,X){if(s0(Q))return i6(Q,X);return Q.safeParse(X)}async function FQ(Q,X){if(s0(Q))return await n6(Q,X);return await Q.safeParseAsync(X)}function l1(Q){if(!Q)return;let X;if(s0(Q))X=Q._zod?.def?.shape;else X=Q.shape;if(!X)return;if(typeof X==="function")try{return X()}catch{return}return X}function C9(Q){if(!Q)return;if(typeof Q==="object"){let X=Q,Y=Q;if(!X._def&&!Y._zod){let W=Object.values(Q);if(W.length>0&&W.every(($)=>typeof $==="object"&&$!==null&&($._def!==void 0||$._zod!==void 0||typeof $.parse==="function")))return r6(Q)}}if(s0(Q)){let Y=Q._zod?.def;if(Y&&(Y.type==="object"||Y.shape!==void 0))return Q}else if(Q.shape!==void 0)return Q;return}function VQ(Q){if(Q&&typeof Q==="object"){if("message"in Q&&typeof Q.message==="string")return Q.message;if("issues"in Q&&Array.isArray(Q.issues)&&Q.issues.length>0){let X=Q.issues[0];if(X&&typeof X==="object"&&"message"in X)return String(X.message)}try{return JSON.stringify(Q)}catch{return String(Q)}}return String(Q)}function bH(Q){return Q.description}function PH(Q){if(s0(Q))return Q._zod?.def?.type==="optional";let X=Q;if(typeof Q.isOptional==="function")return Q.isOptional();return X._def?.typeName==="ZodOptional"}function qQ(Q){if(s0(Q)){let J=Q._zod?.def;if(J){if(J.value!==void 0)return J.value;if(Array.isArray(J.values)&&J.values.length>0)return J.values[0]}}let Y=Q._def;if(Y){if(Y.value!==void 0)return Y.value;if(Array.isArray(Y.values)&&Y.values.length>0)return Y.values[0]}let W=Q.value;if(W!==void 0)return W;return}var I4={};m8(I4,{time:()=>y7,duration:()=>g7,datetime:()=>_7,date:()=>x7,ZodISOTime:()=>EH,ZodISODuration:()=>SH,ZodISODateTime:()=>ZH,ZodISODate:()=>RH});var ZH=j("ZodISODateTime",(Q,X)=>{JH.init(Q,X),O0.init(Q,X)});function _7(Q){return qH(ZH,Q)}var RH=j("ZodISODate",(Q,X)=>{GH.init(Q,X),O0.init(Q,X)});function x7(Q){return AH(RH,Q)}var EH=j("ZodISOTime",(Q,X)=>{HH.init(Q,X),O0.init(Q,X)});function y7(Q){return DH(EH,Q)}var SH=j("ZodISODuration",(Q,X)=>{BH.init(Q,X),O0.init(Q,X)});function g7(Q){return LH(SH,Q)}var TH=(Q,X)=>{s8.init(Q,X),Q.name="ZodError",Object.defineProperties(Q,{format:{value:(Y)=>QQ(Q,Y)},flatten:{value:(Y)=>e8(Q,Y)},addIssue:{value:(Y)=>Q.issues.push(Y)},addIssues:{value:(Y)=>Q.issues.push(...Y)},isEmpty:{get(){return Q.issues.length===0}}})},cf=j("ZodError",TH),T4=j("ZodError",TH,{Parent:Error});var CH=cY(T4),kH=dY(T4),vH=nY(T4),_H=oY(T4);var q0=j("ZodType",(Q,X)=>{return G0.init(Q,X),Q.def=X,Object.defineProperty(Q,"_def",{value:X}),Q.check=(...Y)=>{return Q.clone({...X,checks:[...X.checks??[],...Y.map((W)=>typeof W==="function"?{_zod:{check:W,def:{check:"custom"},onattach:[]}}:W)]})},Q.clone=(Y,W)=>a0(Q,Y,W),Q.brand=()=>Q,Q.register=(Y,W)=>{return Y.add(Q,W),Q},Q.parse=(Y,W)=>CH(Q,Y,W,{callee:Q.parse}),Q.safeParse=(Y,W)=>vH(Q,Y,W),Q.parseAsync=async(Y,W)=>kH(Q,Y,W,{callee:Q.parseAsync}),Q.safeParseAsync=async(Y,W)=>_H(Q,Y,W),Q.spa=Q.safeParseAsync,Q.refine=(Y,W)=>Q.check(Ow(Y,W)),Q.superRefine=(Y)=>Q.check(Uw(Y)),Q.overwrite=(Y)=>Q.check(o6(Y)),Q.optional=()=>N0(Q),Q.nullable=()=>gH(Q),Q.nullish=()=>N0(gH(Q)),Q.nonoptional=(Y)=>Kw(Q,Y),Q.array=()=>E(Q),Q.or=(Y)=>A0([Q,Y]),Q.and=(Y)=>LQ(Q,Y),Q.transform=(Y)=>h7(Q,iH(Y)),Q.default=(Y)=>Hw(Q,Y),Q.prefault=(Y)=>zw(Q,Y),Q.catch=(Y)=>Vw(Q,Y),Q.pipe=(Y)=>h7(Q,Y),Q.readonly=()=>Dw(Q),Q.describe=(Y)=>{let W=Q.clone();return r1.add(W,{description:Y}),W},Object.defineProperty(Q,"description",{get(){return r1.get(Q)?.description},configurable:!0}),Q.meta=(...Y)=>{if(Y.length===0)return r1.get(Q);let W=Q.clone();return r1.add(W,Y[0]),W},Q.isOptional=()=>Q.safeParse(void 0).success,Q.isNullable=()=>Q.safeParse(null).success,Q}),fH=j("_ZodString",(Q,X)=>{E4.init(Q,X),q0.init(Q,X);let Y=Q._zod.bag;Q.format=Y.format??null,Q.minLength=Y.minimum??null,Q.maxLength=Y.maximum??null,Q.regex=(...W)=>Q.check(w7(...W)),Q.includes=(...W)=>Q.check(b7(...W)),Q.startsWith=(...W)=>Q.check(P7(...W)),Q.endsWith=(...W)=>Q.check(Z7(...W)),Q.min=(...W)=>Q.check(T9(...W)),Q.max=(...W)=>Q.check(BQ(...W)),Q.length=(...W)=>Q.check(zQ(...W)),Q.nonempty=(...W)=>Q.check(T9(1,...W)),Q.lowercase=(W)=>Q.check(M7(W)),Q.uppercase=(W)=>Q.check(N7(W)),Q.trim=()=>Q.check(E7()),Q.normalize=(...W)=>Q.check(R7(...W)),Q.toLowerCase=()=>Q.check(S7()),Q.toUpperCase=()=>Q.check(I7())}),u7=j("ZodString",(Q,X)=>{E4.init(Q,X),fH.init(Q,X),Q.email=(Y)=>Q.check(nW(Cj,Y)),Q.url=(Y)=>Q.check(HQ(hH,Y)),Q.jwt=(Y)=>Q.check(V7(ij,Y)),Q.emoji=(Y)=>Q.check(sW(kj,Y)),Q.guid=(Y)=>Q.check(GQ(xH,Y)),Q.uuid=(Y)=>Q.check(oW(AQ,Y)),Q.uuidv4=(Y)=>Q.check(rW(AQ,Y)),Q.uuidv6=(Y)=>Q.check(tW(AQ,Y)),Q.uuidv7=(Y)=>Q.check(aW(AQ,Y)),Q.nanoid=(Y)=>Q.check(eW(vj,Y)),Q.guid=(Y)=>Q.check(GQ(xH,Y)),Q.cuid=(Y)=>Q.check(Q7(_j,Y)),Q.cuid2=(Y)=>Q.check(X7(xj,Y)),Q.ulid=(Y)=>Q.check(Y7(yj,Y)),Q.base64=(Y)=>Q.check(z7(cj,Y)),Q.base64url=(Y)=>Q.check(K7(pj,Y)),Q.xid=(Y)=>Q.check(W7(gj,Y)),Q.ksuid=(Y)=>Q.check($7(fj,Y)),Q.ipv4=(Y)=>Q.check(J7(hj,Y)),Q.ipv6=(Y)=>Q.check(G7(uj,Y)),Q.cidrv4=(Y)=>Q.check(H7(lj,Y)),Q.cidrv6=(Y)=>Q.check(B7(mj,Y)),Q.e164=(Y)=>Q.check(F7(dj,Y)),Q.datetime=(Y)=>Q.check(_7(Y)),Q.date=(Y)=>Q.check(x7(Y)),Q.time=(Y)=>Q.check(y7(Y)),Q.duration=(Y)=>Q.check(g7(Y))});function U(Q){return iW(u7,Q)}var O0=j("ZodStringFormat",(Q,X)=>{V0.init(Q,X),fH.init(Q,X)}),Cj=j("ZodEmail",(Q,X)=>{WW.init(Q,X),O0.init(Q,X)});var xH=j("ZodGUID",(Q,X)=>{XW.init(Q,X),O0.init(Q,X)});var AQ=j("ZodUUID",(Q,X)=>{YW.init(Q,X),O0.init(Q,X)});var hH=j("ZodURL",(Q,X)=>{$W.init(Q,X),O0.init(Q,X)});function uH(Q){return HQ(hH,Q)}var kj=j("ZodEmoji",(Q,X)=>{JW.init(Q,X),O0.init(Q,X)});var vj=j("ZodNanoID",(Q,X)=>{GW.init(Q,X),O0.init(Q,X)});var _j=j("ZodCUID",(Q,X)=>{HW.init(Q,X),O0.init(Q,X)});var xj=j("ZodCUID2",(Q,X)=>{BW.init(Q,X),O0.init(Q,X)});var yj=j("ZodULID",(Q,X)=>{zW.init(Q,X),O0.init(Q,X)});var gj=j("ZodXID",(Q,X)=>{KW.init(Q,X),O0.init(Q,X)});var fj=j("ZodKSUID",(Q,X)=>{FW.init(Q,X),O0.init(Q,X)});var hj=j("ZodIPv4",(Q,X)=>{VW.init(Q,X),O0.init(Q,X)});var uj=j("ZodIPv6",(Q,X)=>{qW.init(Q,X),O0.init(Q,X)});var lj=j("ZodCIDRv4",(Q,X)=>{AW.init(Q,X),O0.init(Q,X)});var mj=j("ZodCIDRv6",(Q,X)=>{DW.init(Q,X),O0.init(Q,X)});var cj=j("ZodBase64",(Q,X)=>{LW.init(Q,X),O0.init(Q,X)});var pj=j("ZodBase64URL",(Q,X)=>{OW.init(Q,X),O0.init(Q,X)});var dj=j("ZodE164",(Q,X)=>{UW.init(Q,X),O0.init(Q,X)});var ij=j("ZodJWT",(Q,X)=>{jW.init(Q,X),O0.init(Q,X)});var DQ=j("ZodNumber",(Q,X)=>{YQ.init(Q,X),q0.init(Q,X),Q.gt=(W,$)=>Q.check(I9(W,$)),Q.gte=(W,$)=>Q.check(N1(W,$)),Q.min=(W,$)=>Q.check(N1(W,$)),Q.lt=(W,$)=>Q.check(S9(W,$)),Q.lte=(W,$)=>Q.check(t1(W,$)),Q.max=(W,$)=>Q.check(t1(W,$)),Q.int=(W)=>Q.check(yH(W)),Q.safe=(W)=>Q.check(yH(W)),Q.positive=(W)=>Q.check(I9(0,W)),Q.nonnegative=(W)=>Q.check(N1(0,W)),Q.negative=(W)=>Q.check(S9(0,W)),Q.nonpositive=(W)=>Q.check(t1(0,W)),Q.multipleOf=(W,$)=>Q.check(S4(W,$)),Q.step=(W,$)=>Q.check(S4(W,$)),Q.finite=()=>Q;let Y=Q._zod.bag;Q.minValue=Math.max(Y.minimum??Number.NEGATIVE_INFINITY,Y.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,Q.maxValue=Math.min(Y.maximum??Number.POSITIVE_INFINITY,Y.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,Q.isInt=(Y.format??"").includes("int")||Number.isSafeInteger(Y.multipleOf??0.5),Q.isFinite=!0,Q.format=Y.format??null});function J0(Q){return q7(DQ,Q)}var nj=j("ZodNumberFormat",(Q,X)=>{wW.init(Q,X),DQ.init(Q,X)});function yH(Q){return A7(nj,Q)}var l7=j("ZodBoolean",(Q,X)=>{MW.init(Q,X),q0.init(Q,X)});function H0(Q){return D7(l7,Q)}var lH=j("ZodBigInt",(Q,X)=>{NW.init(Q,X),q0.init(Q,X),Q.gte=(W,$)=>Q.check(N1(W,$)),Q.min=(W,$)=>Q.check(N1(W,$)),Q.gt=(W,$)=>Q.check(I9(W,$)),Q.gte=(W,$)=>Q.check(N1(W,$)),Q.min=(W,$)=>Q.check(N1(W,$)),Q.lt=(W,$)=>Q.check(S9(W,$)),Q.lte=(W,$)=>Q.check(t1(W,$)),Q.max=(W,$)=>Q.check(t1(W,$)),Q.positive=(W)=>Q.check(I9(BigInt(0),W)),Q.negative=(W)=>Q.check(S9(BigInt(0),W)),Q.nonpositive=(W)=>Q.check(t1(BigInt(0),W)),Q.nonnegative=(W)=>Q.check(N1(BigInt(0),W)),Q.multipleOf=(W,$)=>Q.check(S4(W,$));let Y=Q._zod.bag;Q.minValue=Y.minimum??null,Q.maxValue=Y.maximum??null,Q.format=Y.format??null});var oj=j("ZodNull",(Q,X)=>{bW.init(Q,X),q0.init(Q,X)});function m7(Q){return L7(oj,Q)}var rj=j("ZodAny",(Q,X)=>{PW.init(Q,X),q0.init(Q,X)});function mH(){return O7(rj)}var tj=j("ZodUnknown",(Q,X)=>{ZW.init(Q,X),q0.init(Q,X)});function U0(){return U7(tj)}var aj=j("ZodNever",(Q,X)=>{RW.init(Q,X),q0.init(Q,X)});function sj(Q){return j7(aj,Q)}var cH=j("ZodDate",(Q,X)=>{EW.init(Q,X),q0.init(Q,X),Q.min=(W,$)=>Q.check(N1(W,$)),Q.max=(W,$)=>Q.check(t1(W,$));let Y=Q._zod.bag;Q.minDate=Y.minimum?new Date(Y.minimum):null,Q.maxDate=Y.maximum?new Date(Y.maximum):null});var ej=j("ZodArray",(Q,X)=>{SW.init(Q,X),q0.init(Q,X),Q.element=X.element,Q.min=(Y,W)=>Q.check(T9(Y,W)),Q.nonempty=(Y)=>Q.check(T9(1,Y)),Q.max=(Y,W)=>Q.check(BQ(Y,W)),Q.length=(Y,W)=>Q.check(zQ(Y,W)),Q.unwrap=()=>Q.element});function E(Q,X){return MH(ej,Q,X)}var pH=j("ZodObject",(Q,X)=>{WQ.init(Q,X),q0.init(Q,X),t.defineLazy(Q,"shape",()=>X.shape),Q.keyof=()=>e0(Object.keys(Q._zod.def.shape)),Q.catchall=(Y)=>Q.clone({...Q._zod.def,catchall:Y}),Q.passthrough=()=>Q.clone({...Q._zod.def,catchall:U0()}),Q.loose=()=>Q.clone({...Q._zod.def,catchall:U0()}),Q.strict=()=>Q.clone({...Q._zod.def,catchall:sj()}),Q.strip=()=>Q.clone({...Q._zod.def,catchall:void 0}),Q.extend=(Y)=>{return t.extend(Q,Y)},Q.merge=(Y)=>t.merge(Q,Y),Q.pick=(Y)=>t.pick(Q,Y),Q.omit=(Y)=>t.omit(Q,Y),Q.partial=(...Y)=>t.partial(nH,Q,Y[0]),Q.required=(...Y)=>t.required(oH,Q,Y[0])});function I(Q,X){let Y={type:"object",get shape(){return t.assignProp(this,"shape",{...Q}),this.shape},...t.normalizeParams(X)};return new pH(Y)}function I0(Q,X){return new pH({type:"object",get shape(){return t.assignProp(this,"shape",{...Q}),this.shape},catchall:U0(),...t.normalizeParams(X)})}var dH=j("ZodUnion",(Q,X)=>{$Q.init(Q,X),q0.init(Q,X),Q.options=X.options});function A0(Q,X){return new dH({type:"union",options:Q,...t.normalizeParams(X)})}var Qw=j("ZodDiscriminatedUnion",(Q,X)=>{dH.init(Q,X),IW.init(Q,X)});function c7(Q,X,Y){return new Qw({type:"union",options:X,discriminator:Q,...t.normalizeParams(Y)})}var Xw=j("ZodIntersection",(Q,X)=>{TW.init(Q,X),q0.init(Q,X)});function LQ(Q,X){return new Xw({type:"intersection",left:Q,right:X})}var Yw=j("ZodRecord",(Q,X)=>{CW.init(Q,X),q0.init(Q,X),Q.keyType=X.keyType,Q.valueType=X.valueType});function j0(Q,X,Y){return new Yw({type:"record",keyType:Q,valueType:X,...t.normalizeParams(Y)})}var f7=j("ZodEnum",(Q,X)=>{kW.init(Q,X),q0.init(Q,X),Q.enum=X.entries,Q.options=Object.values(X.entries);let Y=new Set(Object.keys(X.entries));Q.extract=(W,$)=>{let J={};for(let G of W)if(Y.has(G))J[G]=X.entries[G];else throw Error(`Key ${G} not found in enum`);return new f7({...X,checks:[],...t.normalizeParams($),entries:J})},Q.exclude=(W,$)=>{let J={...X.entries};for(let G of W)if(Y.has(G))delete J[G];else throw Error(`Key ${G} not found in enum`);return new f7({...X,checks:[],...t.normalizeParams($),entries:J})}});function e0(Q,X){let Y=Array.isArray(Q)?Object.fromEntries(Q.map((W)=>[W,W])):Q;return new f7({type:"enum",entries:Y,...t.normalizeParams(X)})}var Ww=j("ZodLiteral",(Q,X)=>{vW.init(Q,X),q0.init(Q,X),Q.values=new Set(X.values),Object.defineProperty(Q,"value",{get(){if(X.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return X.values[0]}})});function _(Q,X){return new Ww({type:"literal",values:Array.isArray(Q)?Q:[Q],...t.normalizeParams(X)})}var $w=j("ZodTransform",(Q,X)=>{_W.init(Q,X),q0.init(Q,X),Q._zod.parse=(Y,W)=>{Y.addIssue=(J)=>{if(typeof J==="string")Y.issues.push(t.issue(J,Y.value,X));else{let G=J;if(G.fatal)G.continue=!1;G.code??(G.code="custom"),G.input??(G.input=Y.value),G.inst??(G.inst=Q),G.continue??(G.continue=!0),Y.issues.push(t.issue(G))}};let $=X.transform(Y.value,Y);if($ instanceof Promise)return $.then((J)=>{return Y.value=J,Y});return Y.value=$,Y}});function iH(Q){return new $w({type:"transform",transform:Q})}var nH=j("ZodOptional",(Q,X)=>{xW.init(Q,X),q0.init(Q,X),Q.unwrap=()=>Q._zod.def.innerType});function N0(Q){return new nH({type:"optional",innerType:Q})}var Jw=j("ZodNullable",(Q,X)=>{yW.init(Q,X),q0.init(Q,X),Q.unwrap=()=>Q._zod.def.innerType});function gH(Q){return new Jw({type:"nullable",innerType:Q})}var Gw=j("ZodDefault",(Q,X)=>{gW.init(Q,X),q0.init(Q,X),Q.unwrap=()=>Q._zod.def.innerType,Q.removeDefault=Q.unwrap});function Hw(Q,X){return new Gw({type:"default",innerType:Q,get defaultValue(){return typeof X==="function"?X():X}})}var Bw=j("ZodPrefault",(Q,X)=>{fW.init(Q,X),q0.init(Q,X),Q.unwrap=()=>Q._zod.def.innerType});function zw(Q,X){return new Bw({type:"prefault",innerType:Q,get defaultValue(){return typeof X==="function"?X():X}})}var oH=j("ZodNonOptional",(Q,X)=>{hW.init(Q,X),q0.init(Q,X),Q.unwrap=()=>Q._zod.def.innerType});function Kw(Q,X){return new oH({type:"nonoptional",innerType:Q,...t.normalizeParams(X)})}var Fw=j("ZodCatch",(Q,X)=>{uW.init(Q,X),q0.init(Q,X),Q.unwrap=()=>Q._zod.def.innerType,Q.removeCatch=Q.unwrap});function Vw(Q,X){return new Fw({type:"catch",innerType:Q,catchValue:typeof X==="function"?X:()=>X})}var qw=j("ZodPipe",(Q,X)=>{lW.init(Q,X),q0.init(Q,X),Q.in=X.in,Q.out=X.out});function h7(Q,X){return new qw({type:"pipe",in:Q,out:X})}var Aw=j("ZodReadonly",(Q,X)=>{mW.init(Q,X),q0.init(Q,X)});function Dw(Q){return new Aw({type:"readonly",innerType:Q})}var rH=j("ZodCustom",(Q,X)=>{cW.init(Q,X),q0.init(Q,X)});function Lw(Q){let X=new C0({check:"custom"});return X._zod.check=Q,X}function tH(Q,X){return T7(rH,Q??(()=>!0),X)}function Ow(Q,X={}){return C7(rH,Q,X)}function Uw(Q){let X=Lw((Y)=>{return Y.addIssue=(W)=>{if(typeof W==="string")Y.issues.push(t.issue(W,Y.value,X._zod.def));else{let $=W;if($.fatal)$.continue=!1;$.code??($.code="custom"),$.input??($.input=Y.value),$.inst??($.inst=X),$.continue??($.continue=!X._zod.def.abort),Y.issues.push(t.issue($))}},Q(Y.value,Y)});return X}function p7(Q,X){return h7(iH(Q),X)}var aH={invalid_type:"invalid_type",too_big:"too_big",too_small:"too_small",invalid_format:"invalid_format",not_multiple_of:"not_multiple_of",unrecognized_keys:"unrecognized_keys",invalid_union:"invalid_union",invalid_key:"invalid_key",invalid_element:"invalid_element",invalid_value:"invalid_value",custom:"custom"};var OQ={};m8(OQ,{string:()=>jw,number:()=>ww,date:()=>bw,boolean:()=>Mw,bigint:()=>Nw});function jw(Q){return VH(u7,Q)}function ww(Q){return OH(DQ,Q)}function Mw(Q){return UH(l7,Q)}function Nw(Q){return jH(lH,Q)}function bw(Q){return wH(cH,Q)}t0(pW());var O6="2025-11-25";var jQ=[O6,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],U6="io.modelcontextprotocol/related-task",wQ="2.0",k0=tH((Q)=>Q!==null&&(typeof Q==="object"||typeof Q==="function")),sH=A0([U(),J0().int()]),eH=U(),$h=I0({ttl:A0([J0(),m7()]).optional(),pollInterval:J0().optional()}),Zw=I({ttl:J0().optional()}),Rw=I({taskId:U()}),d7=I0({progressToken:sH.optional(),[U6]:Rw.optional()}),z1=I({_meta:d7.optional()}),C4=z1.extend({task:Zw.optional()}),Q3=(Q)=>C4.safeParse(Q).success,v0=I({method:U(),params:z1.loose().optional()}),K1=I({_meta:d7.optional()}),F1=I({method:U(),params:K1.loose().optional()}),_0=I0({_meta:d7.optional()}),MQ=A0([U(),J0().int()]),X3=I({jsonrpc:_(wQ),id:MQ,...v0.shape}).strict(),k4=(Q)=>X3.safeParse(Q).success,Y3=I({jsonrpc:_(wQ),...F1.shape}).strict(),W3=(Q)=>Y3.safeParse(Q).success,i7=I({jsonrpc:_(wQ),id:MQ,result:_0}).strict(),t6=(Q)=>i7.safeParse(Q).success;var k;(function(Q){Q[Q.ConnectionClosed=-32000]="ConnectionClosed",Q[Q.RequestTimeout=-32001]="RequestTimeout",Q[Q.ParseError=-32700]="ParseError",Q[Q.InvalidRequest=-32600]="InvalidRequest",Q[Q.MethodNotFound=-32601]="MethodNotFound",Q[Q.InvalidParams=-32602]="InvalidParams",Q[Q.InternalError=-32603]="InternalError",Q[Q.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(k||(k={}));var n7=I({jsonrpc:_(wQ),id:MQ.optional(),error:I({code:J0().int(),message:U(),data:U0().optional()})}).strict();var $3=(Q)=>n7.safeParse(Q).success;var v9=A0([X3,Y3,i7,n7]),Jh=A0([i7,n7]),a1=_0.strict(),Ew=K1.extend({requestId:MQ.optional(),reason:U().optional()}),NQ=F1.extend({method:_("notifications/cancelled"),params:Ew}),Sw=I({src:U(),mimeType:U().optional(),sizes:E(U()).optional(),theme:e0(["light","dark"]).optional()}),v4=I({icons:E(Sw).optional()}),k9=I({name:U(),title:U().optional()}),J3=k9.extend({...k9.shape,...v4.shape,version:U(),websiteUrl:U().optional(),description:U().optional()}),Iw=LQ(I({applyDefaults:H0().optional()}),j0(U(),U0())),Tw=p7((Q)=>{if(Q&&typeof Q==="object"&&!Array.isArray(Q)){if(Object.keys(Q).length===0)return{form:{}}}return Q},LQ(I({form:Iw.optional(),url:k0.optional()}),j0(U(),U0()).optional())),Cw=I0({list:k0.optional(),cancel:k0.optional(),requests:I0({sampling:I0({createMessage:k0.optional()}).optional(),elicitation:I0({create:k0.optional()}).optional()}).optional()}),kw=I0({list:k0.optional(),cancel:k0.optional(),requests:I0({tools:I0({call:k0.optional()}).optional()}).optional()}),vw=I({experimental:j0(U(),k0).optional(),sampling:I({context:k0.optional(),tools:k0.optional()}).optional(),elicitation:Tw.optional(),roots:I({listChanged:H0().optional()}).optional(),tasks:Cw.optional()}),_w=z1.extend({protocolVersion:U(),capabilities:vw,clientInfo:J3}),o7=v0.extend({method:_("initialize"),params:_w});var xw=I({experimental:j0(U(),k0).optional(),logging:k0.optional(),completions:k0.optional(),prompts:I({listChanged:H0().optional()}).optional(),resources:I({subscribe:H0().optional(),listChanged:H0().optional()}).optional(),tools:I({listChanged:H0().optional()}).optional(),tasks:kw.optional()}),r7=_0.extend({protocolVersion:U(),capabilities:xw,serverInfo:J3,instructions:U().optional()}),bQ=F1.extend({method:_("notifications/initialized"),params:K1.optional()}),G3=(Q)=>bQ.safeParse(Q).success,PQ=v0.extend({method:_("ping"),params:z1.optional()}),yw=I({progress:J0(),total:N0(J0()),message:N0(U())}),gw=I({...K1.shape,...yw.shape,progressToken:sH}),ZQ=F1.extend({method:_("notifications/progress"),params:gw}),fw=z1.extend({cursor:eH.optional()}),_4=v0.extend({params:fw.optional()}),x4=_0.extend({nextCursor:eH.optional()}),hw=e0(["working","input_required","completed","failed","cancelled"]),y4=I({taskId:U(),status:hw,ttl:A0([J0(),m7()]),createdAt:U(),lastUpdatedAt:U(),pollInterval:N0(J0()),statusMessage:N0(U())}),s1=_0.extend({task:y4}),uw=K1.merge(y4),g4=F1.extend({method:_("notifications/tasks/status"),params:uw}),RQ=v0.extend({method:_("tasks/get"),params:z1.extend({taskId:U()})}),EQ=_0.merge(y4),SQ=v0.extend({method:_("tasks/result"),params:z1.extend({taskId:U()})}),Gh=_0.loose(),IQ=_4.extend({method:_("tasks/list")}),TQ=x4.extend({tasks:E(y4)}),CQ=v0.extend({method:_("tasks/cancel"),params:z1.extend({taskId:U()})}),H3=_0.merge(y4),B3=I({uri:U(),mimeType:N0(U()),_meta:j0(U(),U0()).optional()}),z3=B3.extend({text:U()}),t7=U().refine((Q)=>{try{return atob(Q),!0}catch{return!1}},{message:"Invalid Base64 string"}),K3=B3.extend({blob:t7}),f4=e0(["user","assistant"]),_9=I({audience:E(f4).optional(),priority:J0().min(0).max(1).optional(),lastModified:I4.datetime({offset:!0}).optional()}),F3=I({...k9.shape,...v4.shape,uri:U(),description:N0(U()),mimeType:N0(U()),annotations:_9.optional(),_meta:N0(I0({}))}),lw=I({...k9.shape,...v4.shape,uriTemplate:U(),description:N0(U()),mimeType:N0(U()),annotations:_9.optional(),_meta:N0(I0({}))}),kQ=_4.extend({method:_("resources/list")}),a7=x4.extend({resources:E(F3)}),vQ=_4.extend({method:_("resources/templates/list")}),s7=x4.extend({resourceTemplates:E(lw)}),e7=z1.extend({uri:U()}),mw=e7,_Q=v0.extend({method:_("resources/read"),params:mw}),Q5=_0.extend({contents:E(A0([z3,K3]))}),h4=F1.extend({method:_("notifications/resources/list_changed"),params:K1.optional()}),cw=e7,pw=v0.extend({method:_("resources/subscribe"),params:cw}),dw=e7,iw=v0.extend({method:_("resources/unsubscribe"),params:dw}),nw=K1.extend({uri:U()}),X5=F1.extend({method:_("notifications/resources/updated"),params:nw}),ow=I({name:U(),description:N0(U()),required:N0(H0())}),rw=I({...k9.shape,...v4.shape,description:N0(U()),arguments:N0(E(ow)),_meta:N0(I0({}))}),xQ=_4.extend({method:_("prompts/list")}),Y5=x4.extend({prompts:E(rw)}),tw=z1.extend({name:U(),arguments:j0(U(),U()).optional()}),yQ=v0.extend({method:_("prompts/get"),params:tw}),W5=I({type:_("text"),text:U(),annotations:_9.optional(),_meta:j0(U(),U0()).optional()}),$5=I({type:_("image"),data:t7,mimeType:U(),annotations:_9.optional(),_meta:j0(U(),U0()).optional()}),J5=I({type:_("audio"),data:t7,mimeType:U(),annotations:_9.optional(),_meta:j0(U(),U0()).optional()}),aw=I({type:_("tool_use"),name:U(),id:U(),input:j0(U(),U0()),_meta:j0(U(),U0()).optional()}),sw=I({type:_("resource"),resource:A0([z3,K3]),annotations:_9.optional(),_meta:j0(U(),U0()).optional()}),ew=F3.extend({type:_("resource_link")}),G5=A0([W5,$5,J5,ew,sw]),QM=I({role:f4,content:G5}),H5=_0.extend({description:U().optional(),messages:E(QM)}),u4=F1.extend({method:_("notifications/prompts/list_changed"),params:K1.optional()}),XM=I({title:U().optional(),readOnlyHint:H0().optional(),destructiveHint:H0().optional(),idempotentHint:H0().optional(),openWorldHint:H0().optional()}),YM=I({taskSupport:e0(["required","optional","forbidden"]).optional()}),V3=I({...k9.shape,...v4.shape,description:U().optional(),inputSchema:I({type:_("object"),properties:j0(U(),k0).optional(),required:E(U()).optional()}).catchall(U0()),outputSchema:I({type:_("object"),properties:j0(U(),k0).optional(),required:E(U()).optional()}).catchall(U0()).optional(),annotations:XM.optional(),execution:YM.optional(),_meta:j0(U(),U0()).optional()}),gQ=_4.extend({method:_("tools/list")}),B5=x4.extend({tools:E(V3)}),j6=_0.extend({content:E(G5).default([]),structuredContent:j0(U(),U0()).optional(),isError:H0().optional()}),Hh=j6.or(_0.extend({toolResult:U0()})),WM=C4.extend({name:U(),arguments:j0(U(),U0()).optional()}),x9=v0.extend({method:_("tools/call"),params:WM}),l4=F1.extend({method:_("notifications/tools/list_changed"),params:K1.optional()}),q3=I({autoRefresh:H0().default(!0),debounceMs:J0().int().nonnegative().default(300)}),m4=e0(["debug","info","notice","warning","error","critical","alert","emergency"]),$M=z1.extend({level:m4}),z5=v0.extend({method:_("logging/setLevel"),params:$M}),JM=K1.extend({level:m4,logger:U().optional(),data:U0()}),K5=F1.extend({method:_("notifications/message"),params:JM}),GM=I({name:U().optional()}),HM=I({hints:E(GM).optional(),costPriority:J0().min(0).max(1).optional(),speedPriority:J0().min(0).max(1).optional(),intelligencePriority:J0().min(0).max(1).optional()}),BM=I({mode:e0(["auto","required","none"]).optional()}),zM=I({type:_("tool_result"),toolUseId:U().describe("The unique identifier for the corresponding tool call."),content:E(G5).default([]),structuredContent:I({}).loose().optional(),isError:H0().optional(),_meta:j0(U(),U0()).optional()}),KM=c7("type",[W5,$5,J5]),UQ=c7("type",[W5,$5,J5,aw,zM]),FM=I({role:f4,content:A0([UQ,E(UQ)]),_meta:j0(U(),U0()).optional()}),VM=C4.extend({messages:E(FM),modelPreferences:HM.optional(),systemPrompt:U().optional(),includeContext:e0(["none","thisServer","allServers"]).optional(),temperature:J0().optional(),maxTokens:J0().int(),stopSequences:E(U()).optional(),metadata:k0.optional(),tools:E(V3).optional(),toolChoice:BM.optional()}),c4=v0.extend({method:_("sampling/createMessage"),params:VM}),p4=_0.extend({model:U(),stopReason:N0(e0(["endTurn","stopSequence","maxTokens"]).or(U())),role:f4,content:KM}),F5=_0.extend({model:U(),stopReason:N0(e0(["endTurn","stopSequence","maxTokens","toolUse"]).or(U())),role:f4,content:A0([UQ,E(UQ)])}),qM=I({type:_("boolean"),title:U().optional(),description:U().optional(),default:H0().optional()}),AM=I({type:_("string"),title:U().optional(),description:U().optional(),minLength:J0().optional(),maxLength:J0().optional(),format:e0(["email","uri","date","date-time"]).optional(),default:U().optional()}),DM=I({type:e0(["number","integer"]),title:U().optional(),description:U().optional(),minimum:J0().optional(),maximum:J0().optional(),default:J0().optional()}),LM=I({type:_("string"),title:U().optional(),description:U().optional(),enum:E(U()),default:U().optional()}),OM=I({type:_("string"),title:U().optional(),description:U().optional(),oneOf:E(I({const:U(),title:U()})),default:U().optional()}),UM=I({type:_("string"),title:U().optional(),description:U().optional(),enum:E(U()),enumNames:E(U()).optional(),default:U().optional()}),jM=A0([LM,OM]),wM=I({type:_("array"),title:U().optional(),description:U().optional(),minItems:J0().optional(),maxItems:J0().optional(),items:I({type:_("string"),enum:E(U())}),default:E(U()).optional()}),MM=I({type:_("array"),title:U().optional(),description:U().optional(),minItems:J0().optional(),maxItems:J0().optional(),items:I({anyOf:E(I({const:U(),title:U()}))}),default:E(U()).optional()}),NM=A0([wM,MM]),bM=A0([UM,jM,NM]),PM=A0([bM,qM,AM,DM]),ZM=C4.extend({mode:_("form").optional(),message:U(),requestedSchema:I({type:_("object"),properties:j0(U(),PM),required:E(U()).optional()})}),RM=C4.extend({mode:_("url"),message:U(),elicitationId:U(),url:U().url()}),EM=A0([ZM,RM]),d4=v0.extend({method:_("elicitation/create"),params:EM}),SM=K1.extend({elicitationId:U()}),IM=F1.extend({method:_("notifications/elicitation/complete"),params:SM}),y9=_0.extend({action:e0(["accept","decline","cancel"]),content:p7((Q)=>Q===null?void 0:Q,j0(U(),A0([U(),J0(),H0(),E(U())])).optional())}),TM=I({type:_("ref/resource"),uri:U()});var CM=I({type:_("ref/prompt"),name:U()}),kM=z1.extend({ref:A0([CM,TM]),argument:I({name:U(),value:U()}),context:I({arguments:j0(U(),U()).optional()}).optional()}),fQ=v0.extend({method:_("completion/complete"),params:kM});function A3(Q){if(Q.params.ref.type!=="ref/prompt")throw TypeError(`Expected CompleteRequestPrompt, but got ${Q.params.ref.type}`)}function D3(Q){if(Q.params.ref.type!=="ref/resource")throw TypeError(`Expected CompleteRequestResourceTemplate, but got ${Q.params.ref.type}`)}var V5=_0.extend({completion:I0({values:E(U()).max(100),total:N0(J0().int()),hasMore:N0(H0())})}),vM=I({uri:U().startsWith("file://"),name:U().optional(),_meta:j0(U(),U0()).optional()}),_M=v0.extend({method:_("roots/list"),params:z1.optional()}),q5=_0.extend({roots:E(vM)}),xM=F1.extend({method:_("notifications/roots/list_changed"),params:K1.optional()}),Bh=A0([PQ,o7,fQ,z5,yQ,xQ,kQ,vQ,_Q,pw,iw,x9,gQ,RQ,SQ,IQ,CQ]),zh=A0([NQ,ZQ,bQ,xM,g4]),Kh=A0([a1,p4,F5,y9,q5,EQ,TQ,s1]),Fh=A0([PQ,c4,d4,_M,RQ,SQ,IQ,CQ]),Vh=A0([NQ,ZQ,K5,X5,h4,l4,u4,g4,IM]),qh=A0([a1,r7,V5,H5,Y5,a7,s7,Q5,j6,B5,EQ,TQ,s1]);class S extends Error{constructor(Q,X,Y){super(`MCP error ${Q}: ${X}`);this.code=Q,this.data=Y,this.name="McpError"}static fromError(Q,X,Y){if(Q===k.UrlElicitationRequired&&Y){let W=Y;if(W.elicitations)return new L3(W.elicitations,X)}return new S(Q,X,Y)}}class L3 extends S{constructor(Q,X=`URL elicitation${Q.length>1?"s":""} required`){super(k.UrlElicitationRequired,X,{elicitations:Q})}get elicitations(){return this.data?.elicitations??[]}}function w6(Q){return Q==="completed"||Q==="failed"||Q==="cancelled"}var U3=Symbol("Let zodToJsonSchema decide on which parser to use");var O3={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},j3=(Q)=>typeof Q==="string"?{...O3,name:Q}:{...O3,...Q};var w3=(Q)=>{let X=j3(Q),Y=X.name!==void 0?[...X.basePath,X.definitionPath,X.name]:X.basePath;return{...X,flags:{hasReferencedOpenAiAnyType:!1},currentPath:Y,propertyPath:void 0,seen:new Map(Object.entries(X.definitions).map(([W,$])=>[$._def,{def:$._def,path:[...X.basePath,X.definitionPath,W],jsonSchema:void 0}]))}};function A5(Q,X,Y,W){if(!W?.errorMessages)return;if(Y)Q.errorMessage={...Q.errorMessage,[X]:Y}}function a(Q,X,Y,W,$){Q[X]=Y,A5(Q,X,W,$)}var hQ=(Q,X)=>{let Y=0;for(;Y<Q.length&&Y<X.length;Y++)if(Q[Y]!==X[Y])break;return[(Q.length-Y).toString(),...X.slice(Y)].join("/")};function w0(Q){if(Q.target!=="openAi")return{};let X=[...Q.basePath,Q.definitionPath,Q.openAiAnyTypeName];return Q.flags.hasReferencedOpenAiAnyType=!0,{$ref:Q.$refStrategy==="relative"?hQ(X,Q.currentPath):X.join("/")}}function M3(Q,X){let Y={type:"array"};if(Q.type?._def&&Q.type?._def?.typeName!==P.ZodAny)Y.items=h(Q.type._def,{...X,currentPath:[...X.currentPath,"items"]});if(Q.minLength)a(Y,"minItems",Q.minLength.value,Q.minLength.message,X);if(Q.maxLength)a(Y,"maxItems",Q.maxLength.value,Q.maxLength.message,X);if(Q.exactLength)a(Y,"minItems",Q.exactLength.value,Q.exactLength.message,X),a(Y,"maxItems",Q.exactLength.value,Q.exactLength.message,X);return Y}function N3(Q,X){let Y={type:"integer",format:"int64"};if(!Q.checks)return Y;for(let W of Q.checks)switch(W.kind){case"min":if(X.target==="jsonSchema7")if(W.inclusive)a(Y,"minimum",W.value,W.message,X);else a(Y,"exclusiveMinimum",W.value,W.message,X);else{if(!W.inclusive)Y.exclusiveMinimum=!0;a(Y,"minimum",W.value,W.message,X)}break;case"max":if(X.target==="jsonSchema7")if(W.inclusive)a(Y,"maximum",W.value,W.message,X);else a(Y,"exclusiveMaximum",W.value,W.message,X);else{if(!W.inclusive)Y.exclusiveMaximum=!0;a(Y,"maximum",W.value,W.message,X)}break;case"multipleOf":a(Y,"multipleOf",W.value,W.message,X);break}return Y}function b3(){return{type:"boolean"}}function uQ(Q,X){return h(Q.type._def,X)}var P3=(Q,X)=>{return h(Q.innerType._def,X)};function D5(Q,X,Y){let W=Y??X.dateStrategy;if(Array.isArray(W))return{anyOf:W.map(($,J)=>D5(Q,X,$))};switch(W){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return yM(Q,X)}}var yM=(Q,X)=>{let Y={type:"integer",format:"unix-time"};if(X.target==="openApi3")return Y;for(let W of Q.checks)switch(W.kind){case"min":a(Y,"minimum",W.value,W.message,X);break;case"max":a(Y,"maximum",W.value,W.message,X);break}return Y};function Z3(Q,X){return{...h(Q.innerType._def,X),default:Q.defaultValue()}}function R3(Q,X){return X.effectStrategy==="input"?h(Q.schema._def,X):w0(X)}function E3(Q){return{type:"string",enum:Array.from(Q.values)}}var gM=(Q)=>{if("type"in Q&&Q.type==="string")return!1;return"allOf"in Q};function S3(Q,X){let Y=[h(Q.left._def,{...X,currentPath:[...X.currentPath,"allOf","0"]}),h(Q.right._def,{...X,currentPath:[...X.currentPath,"allOf","1"]})].filter((J)=>!!J),W=X.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,$=[];return Y.forEach((J)=>{if(gM(J)){if($.push(...J.allOf),J.unevaluatedProperties===void 0)W=void 0}else{let G=J;if("additionalProperties"in J&&J.additionalProperties===!1){let{additionalProperties:H,...B}=J;G=B}else W=void 0;$.push(G)}}),$.length?{allOf:$,...W}:void 0}function I3(Q,X){let Y=typeof Q.value;if(Y!=="bigint"&&Y!=="number"&&Y!=="boolean"&&Y!=="string")return{type:Array.isArray(Q.value)?"array":"object"};if(X.target==="openApi3")return{type:Y==="bigint"?"integer":Y,enum:[Q.value]};return{type:Y==="bigint"?"integer":Y,const:Q.value}}var L5=void 0,b1={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>{if(L5===void 0)L5=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u");return L5},uuid:/^[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}$/,ipv4:/^(?:(?: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])$/,ipv4Cidr:/^(?:(?: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])$/,ipv6:/^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/,ipv6Cidr:/^(([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])$/,base64:/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,base64url:/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,nanoid:/^[a-zA-Z0-9_-]{21}$/,jwt:/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/};function lQ(Q,X){let Y={type:"string"};if(Q.checks)for(let W of Q.checks)switch(W.kind){case"min":a(Y,"minLength",typeof Y.minLength==="number"?Math.max(Y.minLength,W.value):W.value,W.message,X);break;case"max":a(Y,"maxLength",typeof Y.maxLength==="number"?Math.min(Y.maxLength,W.value):W.value,W.message,X);break;case"email":switch(X.emailStrategy){case"format:email":P1(Y,"email",W.message,X);break;case"format:idn-email":P1(Y,"idn-email",W.message,X);break;case"pattern:zod":c0(Y,b1.email,W.message,X);break}break;case"url":P1(Y,"uri",W.message,X);break;case"uuid":P1(Y,"uuid",W.message,X);break;case"regex":c0(Y,W.regex,W.message,X);break;case"cuid":c0(Y,b1.cuid,W.message,X);break;case"cuid2":c0(Y,b1.cuid2,W.message,X);break;case"startsWith":c0(Y,RegExp(`^${O5(W.value,X)}`),W.message,X);break;case"endsWith":c0(Y,RegExp(`${O5(W.value,X)}$`),W.message,X);break;case"datetime":P1(Y,"date-time",W.message,X);break;case"date":P1(Y,"date",W.message,X);break;case"time":P1(Y,"time",W.message,X);break;case"duration":P1(Y,"duration",W.message,X);break;case"length":a(Y,"minLength",typeof Y.minLength==="number"?Math.max(Y.minLength,W.value):W.value,W.message,X),a(Y,"maxLength",typeof Y.maxLength==="number"?Math.min(Y.maxLength,W.value):W.value,W.message,X);break;case"includes":{c0(Y,RegExp(O5(W.value,X)),W.message,X);break}case"ip":{if(W.version!=="v6")P1(Y,"ipv4",W.message,X);if(W.version!=="v4")P1(Y,"ipv6",W.message,X);break}case"base64url":c0(Y,b1.base64url,W.message,X);break;case"jwt":c0(Y,b1.jwt,W.message,X);break;case"cidr":{if(W.version!=="v6")c0(Y,b1.ipv4Cidr,W.message,X);if(W.version!=="v4")c0(Y,b1.ipv6Cidr,W.message,X);break}case"emoji":c0(Y,b1.emoji(),W.message,X);break;case"ulid":{c0(Y,b1.ulid,W.message,X);break}case"base64":{switch(X.base64Strategy){case"format:binary":{P1(Y,"binary",W.message,X);break}case"contentEncoding:base64":{a(Y,"contentEncoding","base64",W.message,X);break}case"pattern:zod":{c0(Y,b1.base64,W.message,X);break}}break}case"nanoid":c0(Y,b1.nanoid,W.message,X);case"toLowerCase":case"toUpperCase":case"trim":break;default:(($)=>{})(W)}return Y}function O5(Q,X){return X.patternStrategy==="escape"?hM(Q):Q}var fM=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function hM(Q){let X="";for(let Y=0;Y<Q.length;Y++){if(!fM.has(Q[Y]))X+="\\";X+=Q[Y]}return X}function P1(Q,X,Y,W){if(Q.format||Q.anyOf?.some(($)=>$.format)){if(!Q.anyOf)Q.anyOf=[];if(Q.format){if(Q.anyOf.push({format:Q.format,...Q.errorMessage&&W.errorMessages&&{errorMessage:{format:Q.errorMessage.format}}}),delete Q.format,Q.errorMessage){if(delete Q.errorMessage.format,Object.keys(Q.errorMessage).length===0)delete Q.errorMessage}}Q.anyOf.push({format:X,...Y&&W.errorMessages&&{errorMessage:{format:Y}}})}else a(Q,"format",X,Y,W)}function c0(Q,X,Y,W){if(Q.pattern||Q.allOf?.some(($)=>$.pattern)){if(!Q.allOf)Q.allOf=[];if(Q.pattern){if(Q.allOf.push({pattern:Q.pattern,...Q.errorMessage&&W.errorMessages&&{errorMessage:{pattern:Q.errorMessage.pattern}}}),delete Q.pattern,Q.errorMessage){if(delete Q.errorMessage.pattern,Object.keys(Q.errorMessage).length===0)delete Q.errorMessage}}Q.allOf.push({pattern:T3(X,W),...Y&&W.errorMessages&&{errorMessage:{pattern:Y}}})}else a(Q,"pattern",T3(X,W),Y,W)}function T3(Q,X){if(!X.applyRegexFlags||!Q.flags)return Q.source;let Y={i:Q.flags.includes("i"),m:Q.flags.includes("m"),s:Q.flags.includes("s")},W=Y.i?Q.source.toLowerCase():Q.source,$="",J=!1,G=!1,H=!1;for(let B=0;B<W.length;B++){if(J){$+=W[B],J=!1;continue}if(Y.i){if(G){if(W[B].match(/[a-z]/)){if(H)$+=W[B],$+=`${W[B-2]}-${W[B]}`.toUpperCase(),H=!1;else if(W[B+1]==="-"&&W[B+2]?.match(/[a-z]/))$+=W[B],H=!0;else $+=`${W[B]}${W[B].toUpperCase()}`;continue}}else if(W[B].match(/[a-z]/)){$+=`[${W[B]}${W[B].toUpperCase()}]`;continue}}if(Y.m){if(W[B]==="^"){$+=`(^|(?<=[\r
44
- ]))`;continue}else if(W[B]==="$"){$+=`($|(?=[\r
45
- ]))`;continue}}if(Y.s&&W[B]==="."){$+=G?`${W[B]}\r
46
- `:`[${W[B]}\r
47
- ]`;continue}if($+=W[B],W[B]==="\\")J=!0;else if(G&&W[B]==="]")G=!1;else if(!G&&W[B]==="[")G=!0}try{new RegExp($)}catch{return console.warn(`Could not convert regex pattern at ${X.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),Q.source}return $}function mQ(Q,X){if(X.target==="openAi")console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead.");if(X.target==="openApi3"&&Q.keyType?._def.typeName===P.ZodEnum)return{type:"object",required:Q.keyType._def.values,properties:Q.keyType._def.values.reduce((W,$)=>({...W,[$]:h(Q.valueType._def,{...X,currentPath:[...X.currentPath,"properties",$]})??w0(X)}),{}),additionalProperties:X.rejectedAdditionalProperties};let Y={type:"object",additionalProperties:h(Q.valueType._def,{...X,currentPath:[...X.currentPath,"additionalProperties"]})??X.allowedAdditionalProperties};if(X.target==="openApi3")return Y;if(Q.keyType?._def.typeName===P.ZodString&&Q.keyType._def.checks?.length){let{type:W,...$}=lQ(Q.keyType._def,X);return{...Y,propertyNames:$}}else if(Q.keyType?._def.typeName===P.ZodEnum)return{...Y,propertyNames:{enum:Q.keyType._def.values}};else if(Q.keyType?._def.typeName===P.ZodBranded&&Q.keyType._def.type._def.typeName===P.ZodString&&Q.keyType._def.type._def.checks?.length){let{type:W,...$}=uQ(Q.keyType._def,X);return{...Y,propertyNames:$}}return Y}function C3(Q,X){if(X.mapStrategy==="record")return mQ(Q,X);let Y=h(Q.keyType._def,{...X,currentPath:[...X.currentPath,"items","items","0"]})||w0(X),W=h(Q.valueType._def,{...X,currentPath:[...X.currentPath,"items","items","1"]})||w0(X);return{type:"array",maxItems:125,items:{type:"array",items:[Y,W],minItems:2,maxItems:2}}}function k3(Q){let X=Q.values,W=Object.keys(Q.values).filter((J)=>{return typeof X[X[J]]!=="number"}).map((J)=>X[J]),$=Array.from(new Set(W.map((J)=>typeof J)));return{type:$.length===1?$[0]==="string"?"string":"number":["string","number"],enum:W}}function v3(Q){return Q.target==="openAi"?void 0:{not:w0({...Q,currentPath:[...Q.currentPath,"not"]})}}function _3(Q){return Q.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var i4={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function y3(Q,X){if(X.target==="openApi3")return x3(Q,X);let Y=Q.options instanceof Map?Array.from(Q.options.values()):Q.options;if(Y.every((W)=>(W._def.typeName in i4)&&(!W._def.checks||!W._def.checks.length))){let W=Y.reduce(($,J)=>{let G=i4[J._def.typeName];return G&&!$.includes(G)?[...$,G]:$},[]);return{type:W.length>1?W:W[0]}}else if(Y.every((W)=>W._def.typeName==="ZodLiteral"&&!W.description)){let W=Y.reduce(($,J)=>{let G=typeof J._def.value;switch(G){case"string":case"number":case"boolean":return[...$,G];case"bigint":return[...$,"integer"];case"object":if(J._def.value===null)return[...$,"null"];case"symbol":case"undefined":case"function":default:return $}},[]);if(W.length===Y.length){let $=W.filter((J,G,H)=>H.indexOf(J)===G);return{type:$.length>1?$:$[0],enum:Y.reduce((J,G)=>{return J.includes(G._def.value)?J:[...J,G._def.value]},[])}}}else if(Y.every((W)=>W._def.typeName==="ZodEnum"))return{type:"string",enum:Y.reduce((W,$)=>[...W,...$._def.values.filter((J)=>!W.includes(J))],[])};return x3(Q,X)}var x3=(Q,X)=>{let Y=(Q.options instanceof Map?Array.from(Q.options.values()):Q.options).map((W,$)=>h(W._def,{...X,currentPath:[...X.currentPath,"anyOf",`${$}`]})).filter((W)=>!!W&&(!X.strictUnions||typeof W==="object"&&Object.keys(W).length>0));return Y.length?{anyOf:Y}:void 0};function g3(Q,X){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(Q.innerType._def.typeName)&&(!Q.innerType._def.checks||!Q.innerType._def.checks.length)){if(X.target==="openApi3")return{type:i4[Q.innerType._def.typeName],nullable:!0};return{type:[i4[Q.innerType._def.typeName],"null"]}}if(X.target==="openApi3"){let W=h(Q.innerType._def,{...X,currentPath:[...X.currentPath]});if(W&&"$ref"in W)return{allOf:[W],nullable:!0};return W&&{...W,nullable:!0}}let Y=h(Q.innerType._def,{...X,currentPath:[...X.currentPath,"anyOf","0"]});return Y&&{anyOf:[Y,{type:"null"}]}}function f3(Q,X){let Y={type:"number"};if(!Q.checks)return Y;for(let W of Q.checks)switch(W.kind){case"int":Y.type="integer",A5(Y,"type",W.message,X);break;case"min":if(X.target==="jsonSchema7")if(W.inclusive)a(Y,"minimum",W.value,W.message,X);else a(Y,"exclusiveMinimum",W.value,W.message,X);else{if(!W.inclusive)Y.exclusiveMinimum=!0;a(Y,"minimum",W.value,W.message,X)}break;case"max":if(X.target==="jsonSchema7")if(W.inclusive)a(Y,"maximum",W.value,W.message,X);else a(Y,"exclusiveMaximum",W.value,W.message,X);else{if(!W.inclusive)Y.exclusiveMaximum=!0;a(Y,"maximum",W.value,W.message,X)}break;case"multipleOf":a(Y,"multipleOf",W.value,W.message,X);break}return Y}function h3(Q,X){let Y=X.target==="openAi",W={type:"object",properties:{}},$=[],J=Q.shape();for(let H in J){let B=J[H];if(B===void 0||B._def===void 0)continue;let z=lM(B);if(z&&Y){if(B._def.typeName==="ZodOptional")B=B._def.innerType;if(!B.isNullable())B=B.nullable();z=!1}let K=h(B._def,{...X,currentPath:[...X.currentPath,"properties",H],propertyPath:[...X.currentPath,"properties",H]});if(K===void 0)continue;if(W.properties[H]=K,!z)$.push(H)}if($.length)W.required=$;let G=uM(Q,X);if(G!==void 0)W.additionalProperties=G;return W}function uM(Q,X){if(Q.catchall._def.typeName!=="ZodNever")return h(Q.catchall._def,{...X,currentPath:[...X.currentPath,"additionalProperties"]});switch(Q.unknownKeys){case"passthrough":return X.allowedAdditionalProperties;case"strict":return X.rejectedAdditionalProperties;case"strip":return X.removeAdditionalStrategy==="strict"?X.allowedAdditionalProperties:X.rejectedAdditionalProperties}}function lM(Q){try{return Q.isOptional()}catch{return!0}}var u3=(Q,X)=>{if(X.currentPath.toString()===X.propertyPath?.toString())return h(Q.innerType._def,X);let Y=h(Q.innerType._def,{...X,currentPath:[...X.currentPath,"anyOf","1"]});return Y?{anyOf:[{not:w0(X)},Y]}:w0(X)};var l3=(Q,X)=>{if(X.pipeStrategy==="input")return h(Q.in._def,X);else if(X.pipeStrategy==="output")return h(Q.out._def,X);let Y=h(Q.in._def,{...X,currentPath:[...X.currentPath,"allOf","0"]}),W=h(Q.out._def,{...X,currentPath:[...X.currentPath,"allOf",Y?"1":"0"]});return{allOf:[Y,W].filter(($)=>$!==void 0)}};function m3(Q,X){return h(Q.type._def,X)}function c3(Q,X){let W={type:"array",uniqueItems:!0,items:h(Q.valueType._def,{...X,currentPath:[...X.currentPath,"items"]})};if(Q.minSize)a(W,"minItems",Q.minSize.value,Q.minSize.message,X);if(Q.maxSize)a(W,"maxItems",Q.maxSize.value,Q.maxSize.message,X);return W}function p3(Q,X){if(Q.rest)return{type:"array",minItems:Q.items.length,items:Q.items.map((Y,W)=>h(Y._def,{...X,currentPath:[...X.currentPath,"items",`${W}`]})).reduce((Y,W)=>W===void 0?Y:[...Y,W],[]),additionalItems:h(Q.rest._def,{...X,currentPath:[...X.currentPath,"additionalItems"]})};else return{type:"array",minItems:Q.items.length,maxItems:Q.items.length,items:Q.items.map((Y,W)=>h(Y._def,{...X,currentPath:[...X.currentPath,"items",`${W}`]})).reduce((Y,W)=>W===void 0?Y:[...Y,W],[])}}function d3(Q){return{not:w0(Q)}}function i3(Q){return w0(Q)}var n3=(Q,X)=>{return h(Q.innerType._def,X)};var o3=(Q,X,Y)=>{switch(X){case P.ZodString:return lQ(Q,Y);case P.ZodNumber:return f3(Q,Y);case P.ZodObject:return h3(Q,Y);case P.ZodBigInt:return N3(Q,Y);case P.ZodBoolean:return b3();case P.ZodDate:return D5(Q,Y);case P.ZodUndefined:return d3(Y);case P.ZodNull:return _3(Y);case P.ZodArray:return M3(Q,Y);case P.ZodUnion:case P.ZodDiscriminatedUnion:return y3(Q,Y);case P.ZodIntersection:return S3(Q,Y);case P.ZodTuple:return p3(Q,Y);case P.ZodRecord:return mQ(Q,Y);case P.ZodLiteral:return I3(Q,Y);case P.ZodEnum:return E3(Q);case P.ZodNativeEnum:return k3(Q);case P.ZodNullable:return g3(Q,Y);case P.ZodOptional:return u3(Q,Y);case P.ZodMap:return C3(Q,Y);case P.ZodSet:return c3(Q,Y);case P.ZodLazy:return()=>Q.getter()._def;case P.ZodPromise:return m3(Q,Y);case P.ZodNaN:case P.ZodNever:return v3(Y);case P.ZodEffects:return R3(Q,Y);case P.ZodAny:return w0(Y);case P.ZodUnknown:return i3(Y);case P.ZodDefault:return Z3(Q,Y);case P.ZodBranded:return uQ(Q,Y);case P.ZodReadonly:return n3(Q,Y);case P.ZodCatch:return P3(Q,Y);case P.ZodPipeline:return l3(Q,Y);case P.ZodFunction:case P.ZodVoid:case P.ZodSymbol:return;default:return((W)=>{return})(X)}};function h(Q,X,Y=!1){let W=X.seen.get(Q);if(X.override){let H=X.override?.(Q,X,W,Y);if(H!==U3)return H}if(W&&!Y){let H=mM(W,X);if(H!==void 0)return H}let $={def:Q,path:X.currentPath,jsonSchema:void 0};X.seen.set(Q,$);let J=o3(Q,Q.typeName,X),G=typeof J==="function"?h(J(),X):J;if(G)cM(Q,X,G);if(X.postProcess){let H=X.postProcess(G,Q,X);return $.jsonSchema=G,H}return $.jsonSchema=G,G}var mM=(Q,X)=>{switch(X.$refStrategy){case"root":return{$ref:Q.path.join("/")};case"relative":return{$ref:hQ(X.currentPath,Q.path)};case"none":case"seen":{if(Q.path.length<X.currentPath.length&&Q.path.every((Y,W)=>X.currentPath[W]===Y))return console.warn(`Recursive reference detected at ${X.currentPath.join("/")}! Defaulting to any`),w0(X);return X.$refStrategy==="seen"?w0(X):void 0}}},cM=(Q,X,Y)=>{if(Q.description){if(Y.description=Q.description,X.markdownDescription)Y.markdownDescription=Q.description}return Y};var U5=(Q,X)=>{let Y=w3(X),W=typeof X==="object"&&X.definitions?Object.entries(X.definitions).reduce((B,[z,K])=>({...B,[z]:h(K._def,{...Y,currentPath:[...Y.basePath,Y.definitionPath,z]},!0)??w0(Y)}),{}):void 0,$=typeof X==="string"?X:X?.nameStrategy==="title"?void 0:X?.name,J=h(Q._def,$===void 0?Y:{...Y,currentPath:[...Y.basePath,Y.definitionPath,$]},!1)??w0(Y),G=typeof X==="object"&&X.name!==void 0&&X.nameStrategy==="title"?X.name:void 0;if(G!==void 0)J.title=G;if(Y.flags.hasReferencedOpenAiAnyType){if(!W)W={};if(!W[Y.openAiAnyTypeName])W[Y.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:Y.$refStrategy==="relative"?"1":[...Y.basePath,Y.definitionPath,Y.openAiAnyTypeName].join("/")}}}let H=$===void 0?W?{...J,[Y.definitionPath]:W}:J:{$ref:[...Y.$refStrategy==="relative"?[]:Y.basePath,Y.definitionPath,$].join("/"),[Y.definitionPath]:{...W,[$]:J}};if(Y.target==="jsonSchema7")H.$schema="http://json-schema.org/draft-07/schema#";else if(Y.target==="jsonSchema2019-09"||Y.target==="openAi")H.$schema="https://json-schema.org/draft/2019-09/schema#";if(Y.target==="openAi"&&(("anyOf"in H)||("oneOf"in H)||("allOf"in H)||("type"in H)&&Array.isArray(H.type)))console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property.");return H};function pM(Q){if(!Q)return"draft-7";if(Q==="jsonSchema7"||Q==="draft-7")return"draft-7";if(Q==="jsonSchema2019-09"||Q==="draft-2020-12")return"draft-2020-12";return"draft-7"}function j5(Q,X){if(s0(Q))return KQ(Q,{target:pM(X?.target),io:X?.pipeStrategy??"input"});return U5(Q,{strictUnions:X?.strictUnions??!0,pipeStrategy:X?.pipeStrategy??"input"})}function w5(Q){let Y=l1(Q)?.method;if(!Y)throw Error("Schema is missing a method literal");let W=qQ(Y);if(typeof W!=="string")throw Error("Schema method literal must be a string");return W}function M5(Q,X){let Y=m0(Q,X);if(!Y.success)throw Y.error;return Y.data}var dM=60000;class n4{constructor(Q){if(this._options=Q,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(NQ,(X)=>{this._oncancel(X)}),this.setNotificationHandler(ZQ,(X)=>{this._onprogress(X)}),this.setRequestHandler(PQ,(X)=>({})),this._taskStore=Q?.taskStore,this._taskMessageQueue=Q?.taskMessageQueue,this._taskStore)this.setRequestHandler(RQ,async(X,Y)=>{let W=await this._taskStore.getTask(X.params.taskId,Y.sessionId);if(!W)throw new S(k.InvalidParams,"Failed to retrieve task: Task not found");return{...W}}),this.setRequestHandler(SQ,async(X,Y)=>{let W=async()=>{let $=X.params.taskId;if(this._taskMessageQueue){let G;while(G=await this._taskMessageQueue.dequeue($,Y.sessionId)){if(G.type==="response"||G.type==="error"){let H=G.message,B=H.id,z=this._requestResolvers.get(B);if(z)if(this._requestResolvers.delete(B),G.type==="response")z(H);else{let K=H,F=new S(K.error.code,K.error.message,K.error.data);z(F)}else{let K=G.type==="response"?"Response":"Error";this._onerror(Error(`${K} handler missing for request ${B}`))}continue}await this._transport?.send(G.message,{relatedRequestId:Y.requestId})}}let J=await this._taskStore.getTask($,Y.sessionId);if(!J)throw new S(k.InvalidParams,`Task not found: ${$}`);if(!w6(J.status))return await this._waitForTaskUpdate($,Y.signal),await W();if(w6(J.status)){let G=await this._taskStore.getTaskResult($,Y.sessionId);return this._clearTaskQueue($),{...G,_meta:{...G._meta,[U6]:{taskId:$}}}}return await W()};return await W()}),this.setRequestHandler(IQ,async(X,Y)=>{try{let{tasks:W,nextCursor:$}=await this._taskStore.listTasks(X.params?.cursor,Y.sessionId);return{tasks:W,nextCursor:$,_meta:{}}}catch(W){throw new S(k.InvalidParams,`Failed to list tasks: ${W instanceof Error?W.message:String(W)}`)}}),this.setRequestHandler(CQ,async(X,Y)=>{try{let W=await this._taskStore.getTask(X.params.taskId,Y.sessionId);if(!W)throw new S(k.InvalidParams,`Task not found: ${X.params.taskId}`);if(w6(W.status))throw new S(k.InvalidParams,`Cannot cancel task in terminal status: ${W.status}`);await this._taskStore.updateTaskStatus(X.params.taskId,"cancelled","Client cancelled task execution.",Y.sessionId),this._clearTaskQueue(X.params.taskId);let $=await this._taskStore.getTask(X.params.taskId,Y.sessionId);if(!$)throw new S(k.InvalidParams,`Task not found after cancellation: ${X.params.taskId}`);return{_meta:{},...$}}catch(W){if(W instanceof S)throw W;throw new S(k.InvalidRequest,`Failed to cancel task: ${W instanceof Error?W.message:String(W)}`)}})}async _oncancel(Q){if(!Q.params.requestId)return;this._requestHandlerAbortControllers.get(Q.params.requestId)?.abort(Q.params.reason)}_setupTimeout(Q,X,Y,W,$=!1){this._timeoutInfo.set(Q,{timeoutId:setTimeout(W,X),startTime:Date.now(),timeout:X,maxTotalTimeout:Y,resetTimeoutOnProgress:$,onTimeout:W})}_resetTimeout(Q){let X=this._timeoutInfo.get(Q);if(!X)return!1;let Y=Date.now()-X.startTime;if(X.maxTotalTimeout&&Y>=X.maxTotalTimeout)throw this._timeoutInfo.delete(Q),S.fromError(k.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:X.maxTotalTimeout,totalElapsed:Y});return clearTimeout(X.timeoutId),X.timeoutId=setTimeout(X.onTimeout,X.timeout),!0}_cleanupTimeout(Q){let X=this._timeoutInfo.get(Q);if(X)clearTimeout(X.timeoutId),this._timeoutInfo.delete(Q)}async connect(Q){this._transport=Q;let X=this.transport?.onclose;this._transport.onclose=()=>{X?.(),this._onclose()};let Y=this.transport?.onerror;this._transport.onerror=($)=>{Y?.($),this._onerror($)};let W=this._transport?.onmessage;this._transport.onmessage=($,J)=>{if(W?.($,J),t6($)||$3($))this._onresponse($);else if(k4($))this._onrequest($,J);else if(W3($))this._onnotification($);else this._onerror(Error(`Unknown message type: ${JSON.stringify($)}`))},await this._transport.start()}_onclose(){let Q=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();let X=S.fromError(k.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let Y of Q.values())Y(X)}_onerror(Q){this.onerror?.(Q)}_onnotification(Q){let X=this._notificationHandlers.get(Q.method)??this.fallbackNotificationHandler;if(X===void 0)return;Promise.resolve().then(()=>X(Q)).catch((Y)=>this._onerror(Error(`Uncaught error in notification handler: ${Y}`)))}_onrequest(Q,X){let Y=this._requestHandlers.get(Q.method)??this.fallbackRequestHandler,W=this._transport,$=Q.params?._meta?.[U6]?.taskId;if(Y===void 0){let z={jsonrpc:"2.0",id:Q.id,error:{code:k.MethodNotFound,message:"Method not found"}};if($&&this._taskMessageQueue)this._enqueueTaskMessage($,{type:"error",message:z,timestamp:Date.now()},W?.sessionId).catch((K)=>this._onerror(Error(`Failed to enqueue error response: ${K}`)));else W?.send(z).catch((K)=>this._onerror(Error(`Failed to send an error response: ${K}`)));return}let J=new AbortController;this._requestHandlerAbortControllers.set(Q.id,J);let G=Q3(Q.params)?Q.params.task:void 0,H=this._taskStore?this.requestTaskStore(Q,W?.sessionId):void 0,B={signal:J.signal,sessionId:W?.sessionId,_meta:Q.params?._meta,sendNotification:async(z)=>{let K={relatedRequestId:Q.id};if($)K.relatedTask={taskId:$};await this.notification(z,K)},sendRequest:async(z,K,F)=>{let D={...F,relatedRequestId:Q.id};if($&&!D.relatedTask)D.relatedTask={taskId:$};let V=D.relatedTask?.taskId??$;if(V&&H)await H.updateTaskStatus(V,"input_required");return await this.request(z,K,D)},authInfo:X?.authInfo,requestId:Q.id,requestInfo:X?.requestInfo,taskId:$,taskStore:H,taskRequestedTtl:G?.ttl,closeSSEStream:X?.closeSSEStream,closeStandaloneSSEStream:X?.closeStandaloneSSEStream};Promise.resolve().then(()=>{if(G)this.assertTaskHandlerCapability(Q.method)}).then(()=>Y(Q,B)).then(async(z)=>{if(J.signal.aborted)return;let K={result:z,jsonrpc:"2.0",id:Q.id};if($&&this._taskMessageQueue)await this._enqueueTaskMessage($,{type:"response",message:K,timestamp:Date.now()},W?.sessionId);else await W?.send(K)},async(z)=>{if(J.signal.aborted)return;let K={jsonrpc:"2.0",id:Q.id,error:{code:Number.isSafeInteger(z.code)?z.code:k.InternalError,message:z.message??"Internal error",...z.data!==void 0&&{data:z.data}}};if($&&this._taskMessageQueue)await this._enqueueTaskMessage($,{type:"error",message:K,timestamp:Date.now()},W?.sessionId);else await W?.send(K)}).catch((z)=>this._onerror(Error(`Failed to send response: ${z}`))).finally(()=>{this._requestHandlerAbortControllers.delete(Q.id)})}_onprogress(Q){let{progressToken:X,...Y}=Q.params,W=Number(X),$=this._progressHandlers.get(W);if(!$){this._onerror(Error(`Received a progress notification for an unknown token: ${JSON.stringify(Q)}`));return}let J=this._responseHandlers.get(W),G=this._timeoutInfo.get(W);if(G&&J&&G.resetTimeoutOnProgress)try{this._resetTimeout(W)}catch(H){this._responseHandlers.delete(W),this._progressHandlers.delete(W),this._cleanupTimeout(W),J(H);return}$(Y)}_onresponse(Q){let X=Number(Q.id),Y=this._requestResolvers.get(X);if(Y){if(this._requestResolvers.delete(X),t6(Q))Y(Q);else{let J=new S(Q.error.code,Q.error.message,Q.error.data);Y(J)}return}let W=this._responseHandlers.get(X);if(W===void 0){this._onerror(Error(`Received a response for an unknown message ID: ${JSON.stringify(Q)}`));return}this._responseHandlers.delete(X),this._cleanupTimeout(X);let $=!1;if(t6(Q)&&Q.result&&typeof Q.result==="object"){let J=Q.result;if(J.task&&typeof J.task==="object"){let G=J.task;if(typeof G.taskId==="string")$=!0,this._taskProgressTokens.set(G.taskId,X)}}if(!$)this._progressHandlers.delete(X);if(t6(Q))W(Q);else{let J=S.fromError(Q.error.code,Q.error.message,Q.error.data);W(J)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(Q,X,Y){let{task:W}=Y??{};if(!W){try{yield{type:"result",result:await this.request(Q,X,Y)}}catch(J){yield{type:"error",error:J instanceof S?J:new S(k.InternalError,String(J))}}return}let $;try{let J=await this.request(Q,s1,Y);if(J.task)$=J.task.taskId,yield{type:"taskCreated",task:J.task};else throw new S(k.InternalError,"Task creation did not return a task");while(!0){let G=await this.getTask({taskId:$},Y);if(yield{type:"taskStatus",task:G},w6(G.status)){if(G.status==="completed")yield{type:"result",result:await this.getTaskResult({taskId:$},X,Y)};else if(G.status==="failed")yield{type:"error",error:new S(k.InternalError,`Task ${$} failed`)};else if(G.status==="cancelled")yield{type:"error",error:new S(k.InternalError,`Task ${$} was cancelled`)};return}if(G.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:$},X,Y)};return}let H=G.pollInterval??this._options?.defaultTaskPollInterval??1000;await new Promise((B)=>setTimeout(B,H)),Y?.signal?.throwIfAborted()}}catch(J){yield{type:"error",error:J instanceof S?J:new S(k.InternalError,String(J))}}}request(Q,X,Y){let{relatedRequestId:W,resumptionToken:$,onresumptiontoken:J,task:G,relatedTask:H}=Y??{};return new Promise((B,z)=>{let K=(O)=>{z(O)};if(!this._transport){K(Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{if(this.assertCapabilityForMethod(Q.method),G)this.assertTaskCapability(Q.method)}catch(O){K(O);return}Y?.signal?.throwIfAborted();let F=this._requestMessageId++,D={...Q,jsonrpc:"2.0",id:F};if(Y?.onprogress)this._progressHandlers.set(F,Y.onprogress),D.params={...Q.params,_meta:{...Q.params?._meta||{},progressToken:F}};if(G)D.params={...D.params,task:G};if(H)D.params={...D.params,_meta:{...D.params?._meta||{},[U6]:H}};let V=(O)=>{this._responseHandlers.delete(F),this._progressHandlers.delete(F),this._cleanupTimeout(F),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:F,reason:String(O)}},{relatedRequestId:W,resumptionToken:$,onresumptiontoken:J}).catch((N)=>this._onerror(Error(`Failed to send cancellation: ${N}`)));let M=O instanceof S?O:new S(k.RequestTimeout,String(O));z(M)};this._responseHandlers.set(F,(O)=>{if(Y?.signal?.aborted)return;if(O instanceof Error)return z(O);try{let M=m0(X,O.result);if(!M.success)z(M.error);else B(M.data)}catch(M){z(M)}}),Y?.signal?.addEventListener("abort",()=>{V(Y?.signal?.reason)});let A=Y?.timeout??dM,q=()=>V(S.fromError(k.RequestTimeout,"Request timed out",{timeout:A}));this._setupTimeout(F,A,Y?.maxTotalTimeout,q,Y?.resetTimeoutOnProgress??!1);let L=H?.taskId;if(L){let O=(M)=>{let N=this._responseHandlers.get(F);if(N)N(M);else this._onerror(Error(`Response handler missing for side-channeled request ${F}`))};this._requestResolvers.set(F,O),this._enqueueTaskMessage(L,{type:"request",message:D,timestamp:Date.now()}).catch((M)=>{this._cleanupTimeout(F),z(M)})}else this._transport.send(D,{relatedRequestId:W,resumptionToken:$,onresumptiontoken:J}).catch((O)=>{this._cleanupTimeout(F),z(O)})})}async getTask(Q,X){return this.request({method:"tasks/get",params:Q},EQ,X)}async getTaskResult(Q,X,Y){return this.request({method:"tasks/result",params:Q},X,Y)}async listTasks(Q,X){return this.request({method:"tasks/list",params:Q},TQ,X)}async cancelTask(Q,X){return this.request({method:"tasks/cancel",params:Q},H3,X)}async notification(Q,X){if(!this._transport)throw Error("Not connected");this.assertNotificationCapability(Q.method);let Y=X?.relatedTask?.taskId;if(Y){let G={...Q,jsonrpc:"2.0",params:{...Q.params,_meta:{...Q.params?._meta||{},[U6]:X.relatedTask}}};await this._enqueueTaskMessage(Y,{type:"notification",message:G,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(Q.method)&&!Q.params&&!X?.relatedRequestId&&!X?.relatedTask){if(this._pendingDebouncedNotifications.has(Q.method))return;this._pendingDebouncedNotifications.add(Q.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(Q.method),!this._transport)return;let G={...Q,jsonrpc:"2.0"};if(X?.relatedTask)G={...G,params:{...G.params,_meta:{...G.params?._meta||{},[U6]:X.relatedTask}}};this._transport?.send(G,X).catch((H)=>this._onerror(H))});return}let J={...Q,jsonrpc:"2.0"};if(X?.relatedTask)J={...J,params:{...J.params,_meta:{...J.params?._meta||{},[U6]:X.relatedTask}}};await this._transport.send(J,X)}setRequestHandler(Q,X){let Y=w5(Q);this.assertRequestHandlerCapability(Y),this._requestHandlers.set(Y,(W,$)=>{let J=M5(Q,W);return Promise.resolve(X(J,$))})}removeRequestHandler(Q){this._requestHandlers.delete(Q)}assertCanSetRequestHandler(Q){if(this._requestHandlers.has(Q))throw Error(`A request handler for ${Q} already exists, which would be overridden`)}setNotificationHandler(Q,X){let Y=w5(Q);this._notificationHandlers.set(Y,(W)=>{let $=M5(Q,W);return Promise.resolve(X($))})}removeNotificationHandler(Q){this._notificationHandlers.delete(Q)}_cleanupTaskProgressHandler(Q){let X=this._taskProgressTokens.get(Q);if(X!==void 0)this._progressHandlers.delete(X),this._taskProgressTokens.delete(Q)}async _enqueueTaskMessage(Q,X,Y){if(!this._taskStore||!this._taskMessageQueue)throw Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let W=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(Q,X,Y,W)}async _clearTaskQueue(Q,X){if(this._taskMessageQueue){let Y=await this._taskMessageQueue.dequeueAll(Q,X);for(let W of Y)if(W.type==="request"&&k4(W.message)){let $=W.message.id,J=this._requestResolvers.get($);if(J)J(new S(k.InternalError,"Task cancelled or completed")),this._requestResolvers.delete($);else this._onerror(Error(`Resolver missing for request ${$} during task ${Q} cleanup`))}}}async _waitForTaskUpdate(Q,X){let Y=this._options?.defaultTaskPollInterval??1000;try{let W=await this._taskStore?.getTask(Q);if(W?.pollInterval)Y=W.pollInterval}catch{}return new Promise((W,$)=>{if(X.aborted){$(new S(k.InvalidRequest,"Request cancelled"));return}let J=setTimeout(W,Y);X.addEventListener("abort",()=>{clearTimeout(J),$(new S(k.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(Q,X){let Y=this._taskStore;if(!Y)throw Error("No task store configured");return{createTask:async(W)=>{if(!Q)throw Error("No request provided");return await Y.createTask(W,Q.id,{method:Q.method,params:Q.params},X)},getTask:async(W)=>{let $=await Y.getTask(W,X);if(!$)throw new S(k.InvalidParams,"Failed to retrieve task: Task not found");return $},storeTaskResult:async(W,$,J)=>{await Y.storeTaskResult(W,$,J,X);let G=await Y.getTask(W,X);if(G){let H=g4.parse({method:"notifications/tasks/status",params:G});if(await this.notification(H),w6(G.status))this._cleanupTaskProgressHandler(W)}},getTaskResult:(W)=>{return Y.getTaskResult(W,X)},updateTaskStatus:async(W,$,J)=>{let G=await Y.getTask(W,X);if(!G)throw new S(k.InvalidParams,`Task "${W}" not found - it may have been cleaned up`);if(w6(G.status))throw new S(k.InvalidParams,`Cannot update task "${W}" from terminal status "${G.status}" to "${$}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await Y.updateTaskStatus(W,$,J,X);let H=await Y.getTask(W,X);if(H){let B=g4.parse({method:"notifications/tasks/status",params:H});if(await this.notification(B),w6(H.status))this._cleanupTaskProgressHandler(W)}},listTasks:(W)=>{return Y.listTasks(W,X)}}}}function r3(Q){return Q!==null&&typeof Q==="object"&&!Array.isArray(Q)}function cQ(Q,X){let Y={...Q};for(let W in X){let $=W,J=X[$];if(J===void 0)continue;let G=Y[$];if(r3(G)&&r3(J))Y[$]={...G,...J};else Y[$]=J}return Y}var SL=IY(zV(),1),IL=IY(EL(),1);function Fy(){let Q=new SL.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return IL.default(Q),Q}class h8{constructor(Q){this._ajv=Q??Fy()}getValidator(Q){let X="$id"in Q&&typeof Q.$id==="string"?this._ajv.getSchema(Q.$id)??this._ajv.compile(Q):this._ajv.compile(Q);return(Y)=>{if(X(Y))return{valid:!0,data:Y,errorMessage:void 0};else return{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(X.errors)}}}}class FJ{constructor(Q){this._server=Q}requestStream(Q,X,Y){return this._server.requestStream(Q,X,Y)}async getTask(Q,X){return this._server.getTask({taskId:Q},X)}async getTaskResult(Q,X,Y){return this._server.getTaskResult({taskId:Q},X,Y)}async listTasks(Q,X){return this._server.listTasks(Q?{cursor:Q}:void 0,X)}async cancelTask(Q,X){return this._server.cancelTask({taskId:Q},X)}}function HY(Q,X,Y){if(!Q)throw Error(`${Y} does not support task creation (required for ${X})`);switch(X){case"tools/call":if(!Q.tools?.call)throw Error(`${Y} does not support task creation for tools/call (required for ${X})`);break;default:break}}function BY(Q,X,Y){if(!Q)throw Error(`${Y} does not support task creation (required for ${X})`);switch(X){case"sampling/createMessage":if(!Q.sampling?.createMessage)throw Error(`${Y} does not support task creation for sampling/createMessage (required for ${X})`);break;case"elicitation/create":if(!Q.elicitation?.create)throw Error(`${Y} does not support task creation for elicitation/create (required for ${X})`);break;default:break}}class VJ extends n4{constructor(Q,X){super(X);if(this._serverInfo=Q,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(m4.options.map((Y,W)=>[Y,W])),this.isMessageIgnored=(Y,W)=>{let $=this._loggingLevels.get(W);return $?this.LOG_LEVEL_SEVERITY.get(Y)<this.LOG_LEVEL_SEVERITY.get($):!1},this._capabilities=X?.capabilities??{},this._instructions=X?.instructions,this._jsonSchemaValidator=X?.jsonSchemaValidator??new h8,this.setRequestHandler(o7,(Y)=>this._oninitialize(Y)),this.setNotificationHandler(bQ,()=>this.oninitialized?.()),this._capabilities.logging)this.setRequestHandler(z5,async(Y,W)=>{let $=W.sessionId||W.requestInfo?.headers["mcp-session-id"]||void 0,{level:J}=Y.params,G=m4.safeParse(J);if(G.success)this._loggingLevels.set($,G.data);return{}})}get experimental(){if(!this._experimental)this._experimental={tasks:new FJ(this)};return this._experimental}registerCapabilities(Q){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=cQ(this._capabilities,Q)}setRequestHandler(Q,X){let W=l1(Q)?.method;if(!W)throw Error("Schema is missing a method literal");let $;if(s0(W)){let G=W;$=G._zod?.def?.value??G.value}else{let G=W;$=G._def?.value??G.value}if(typeof $!=="string")throw Error("Schema method literal must be a string");if($==="tools/call"){let G=async(H,B)=>{let z=m0(x9,H);if(!z.success){let V=z.error instanceof Error?z.error.message:String(z.error);throw new S(k.InvalidParams,`Invalid tools/call request: ${V}`)}let{params:K}=z.data,F=await Promise.resolve(X(H,B));if(K.task){let V=m0(s1,F);if(!V.success){let A=V.error instanceof Error?V.error.message:String(V.error);throw new S(k.InvalidParams,`Invalid task creation result: ${A}`)}return V.data}let D=m0(j6,F);if(!D.success){let V=D.error instanceof Error?D.error.message:String(D.error);throw new S(k.InvalidParams,`Invalid tools/call result: ${V}`)}return D.data};return super.setRequestHandler(Q,G)}return super.setRequestHandler(Q,X)}assertCapabilityForMethod(Q){switch(Q){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw Error(`Client does not support sampling (required for ${Q})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw Error(`Client does not support elicitation (required for ${Q})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw Error(`Client does not support listing roots (required for ${Q})`);break;case"ping":break}}assertNotificationCapability(Q){switch(Q){case"notifications/message":if(!this._capabilities.logging)throw Error(`Server does not support logging (required for ${Q})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw Error(`Server does not support notifying about resources (required for ${Q})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw Error(`Server does not support notifying of tool list changes (required for ${Q})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw Error(`Server does not support notifying of prompt list changes (required for ${Q})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw Error(`Client does not support URL elicitation (required for ${Q})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(Q){if(!this._capabilities)return;switch(Q){case"completion/complete":if(!this._capabilities.completions)throw Error(`Server does not support completions (required for ${Q})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw Error(`Server does not support logging (required for ${Q})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw Error(`Server does not support prompts (required for ${Q})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw Error(`Server does not support resources (required for ${Q})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw Error(`Server does not support tools (required for ${Q})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw Error(`Server does not support tasks capability (required for ${Q})`);break;case"ping":case"initialize":break}}assertTaskCapability(Q){BY(this._clientCapabilities?.tasks?.requests,Q,"Client")}assertTaskHandlerCapability(Q){if(!this._capabilities)return;HY(this._capabilities.tasks?.requests,Q,"Server")}async _oninitialize(Q){let X=Q.params.protocolVersion;return this._clientCapabilities=Q.params.capabilities,this._clientVersion=Q.params.clientInfo,{protocolVersion:jQ.includes(X)?X:O6,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},a1)}async createMessage(Q,X){if(Q.tools||Q.toolChoice){if(!this._clientCapabilities?.sampling?.tools)throw Error("Client does not support sampling tools capability.")}if(Q.messages.length>0){let Y=Q.messages[Q.messages.length-1],W=Array.isArray(Y.content)?Y.content:[Y.content],$=W.some((B)=>B.type==="tool_result"),J=Q.messages.length>1?Q.messages[Q.messages.length-2]:void 0,G=J?Array.isArray(J.content)?J.content:[J.content]:[],H=G.some((B)=>B.type==="tool_use");if($){if(W.some((B)=>B.type!=="tool_result"))throw Error("The last message must contain only tool_result content if any is present");if(!H)throw Error("tool_result blocks are not matching any tool_use from the previous message")}if(H){let B=new Set(G.filter((K)=>K.type==="tool_use").map((K)=>K.id)),z=new Set(W.filter((K)=>K.type==="tool_result").map((K)=>K.toolUseId));if(B.size!==z.size||![...B].every((K)=>z.has(K)))throw Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}if(Q.tools)return this.request({method:"sampling/createMessage",params:Q},F5,X);return this.request({method:"sampling/createMessage",params:Q},p4,X)}async elicitInput(Q,X){switch(Q.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw Error("Client does not support url elicitation.");let W=Q;return this.request({method:"elicitation/create",params:W},y9,X)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw Error("Client does not support form elicitation.");let W=Q.mode==="form"?Q:{...Q,mode:"form"},$=await this.request({method:"elicitation/create",params:W},y9,X);if($.action==="accept"&&$.content&&W.requestedSchema)try{let G=this._jsonSchemaValidator.getValidator(W.requestedSchema)($.content);if(!G.valid)throw new S(k.InvalidParams,`Elicitation response content does not match requested schema: ${G.errorMessage}`)}catch(J){if(J instanceof S)throw J;throw new S(k.InternalError,`Error validating elicitation response: ${J instanceof Error?J.message:String(J)}`)}return $}}}createElicitationCompletionNotifier(Q,X){if(!this._clientCapabilities?.elicitation?.url)throw Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:Q}},X)}async listRoots(Q,X){return this.request({method:"roots/list",params:Q},q5,X)}async sendLoggingMessage(Q,X){if(this._capabilities.logging){if(!this.isMessageIgnored(Q.level,X))return this.notification({method:"notifications/message",params:Q})}}async sendResourceUpdated(Q){return this.notification({method:"notifications/resources/updated",params:Q})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}}var CL=Symbol.for("mcp.completable");function qJ(Q){return!!Q&&typeof Q==="object"&&CL in Q}function kL(Q){return Q[CL]?.complete}var TL;(function(Q){Q.Completable="McpCompletable"})(TL||(TL={}));var Vy=/^[A-Za-z0-9._-]{1,128}$/;function qy(Q){let X=[];if(Q.length===0)return{isValid:!1,warnings:["Tool name cannot be empty"]};if(Q.length>128)return{isValid:!1,warnings:[`Tool name exceeds maximum length of 128 characters (current: ${Q.length})`]};if(Q.includes(" "))X.push("Tool name contains spaces, which may cause parsing issues");if(Q.includes(","))X.push("Tool name contains commas, which may cause parsing issues");if(Q.startsWith("-")||Q.endsWith("-"))X.push("Tool name starts or ends with a dash, which may cause parsing issues in some contexts");if(Q.startsWith(".")||Q.endsWith("."))X.push("Tool name starts or ends with a dot, which may cause parsing issues in some contexts");if(!Vy.test(Q)){let Y=Q.split("").filter((W)=>!/[A-Za-z0-9._-]/.test(W)).filter((W,$,J)=>J.indexOf(W)===$);return X.push(`Tool name contains invalid characters: ${Y.map((W)=>`"${W}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:X}}return{isValid:!0,warnings:X}}function Ay(Q,X){if(X.length>0){console.warn(`Tool name validation warning for "${Q}":`);for(let Y of X)console.warn(` - ${Y}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function AJ(Q){let X=qy(Q);return Ay(Q,X.warnings),X.isValid}class DJ{constructor(Q){this._mcpServer=Q}registerToolTask(Q,X,Y){let W={taskSupport:"required",...X.execution};if(W.taskSupport==="forbidden")throw Error(`Cannot register task-based tool '${Q}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(Q,X.title,X.description,X.inputSchema,X.outputSchema,X.annotations,W,X._meta,Y)}}class OJ{constructor(Q,X){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new VJ(Q,X)}get experimental(){if(!this._experimental)this._experimental={tasks:new DJ(this)};return this._experimental}async connect(Q){return await this.server.connect(Q)}async close(){await this.server.close()}setToolRequestHandlers(){if(this._toolHandlersInitialized)return;this.server.assertCanSetRequestHandler(_6(gQ)),this.server.assertCanSetRequestHandler(_6(x9)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(gQ,()=>({tools:Object.entries(this._registeredTools).filter(([,Q])=>Q.enabled).map(([Q,X])=>{let Y={name:Q,title:X.title,description:X.description,inputSchema:(()=>{let W=C9(X.inputSchema);return W?j5(W,{strictUnions:!0,pipeStrategy:"input"}):Dy})(),annotations:X.annotations,execution:X.execution,_meta:X._meta};if(X.outputSchema){let W=C9(X.outputSchema);if(W)Y.outputSchema=j5(W,{strictUnions:!0,pipeStrategy:"output"})}return Y})})),this.server.setRequestHandler(x9,async(Q,X)=>{try{let Y=this._registeredTools[Q.params.name];if(!Y)throw new S(k.InvalidParams,`Tool ${Q.params.name} not found`);if(!Y.enabled)throw new S(k.InvalidParams,`Tool ${Q.params.name} disabled`);let W=!!Q.params.task,$=Y.execution?.taskSupport,J="createTask"in Y.handler;if(($==="required"||$==="optional")&&!J)throw new S(k.InternalError,`Tool ${Q.params.name} has taskSupport '${$}' but was not registered with registerToolTask`);if($==="required"&&!W)throw new S(k.MethodNotFound,`Tool ${Q.params.name} requires task augmentation (taskSupport: 'required')`);if($==="optional"&&!W&&J)return await this.handleAutomaticTaskPolling(Y,Q,X);let G=await this.validateToolInput(Y,Q.params.arguments,Q.params.name),H=await this.executeToolHandler(Y,G,X);if(W)return H;return await this.validateToolOutput(Y,H,Q.params.name),H}catch(Y){if(Y instanceof S){if(Y.code===k.UrlElicitationRequired)throw Y}return this.createToolError(Y instanceof Error?Y.message:String(Y))}}),this._toolHandlersInitialized=!0}createToolError(Q){return{content:[{type:"text",text:Q}],isError:!0}}async validateToolInput(Q,X,Y){if(!Q.inputSchema)return;let $=C9(Q.inputSchema)??Q.inputSchema,J=await FQ($,X);if(!J.success){let G="error"in J?J.error:"Unknown error",H=VQ(G);throw new S(k.InvalidParams,`Input validation error: Invalid arguments for tool ${Y}: ${H}`)}return J.data}async validateToolOutput(Q,X,Y){if(!Q.outputSchema)return;if(!("content"in X))return;if(X.isError)return;if(!X.structuredContent)throw new S(k.InvalidParams,`Output validation error: Tool ${Y} has an output schema but no structured content was provided`);let W=C9(Q.outputSchema),$=await FQ(W,X.structuredContent);if(!$.success){let J="error"in $?$.error:"Unknown error",G=VQ(J);throw new S(k.InvalidParams,`Output validation error: Invalid structured content for tool ${Y}: ${G}`)}}async executeToolHandler(Q,X,Y){let W=Q.handler;if("createTask"in W){if(!Y.taskStore)throw Error("No task store provided.");let J={...Y,taskStore:Y.taskStore};if(Q.inputSchema)return await Promise.resolve(W.createTask(X,J));else return await Promise.resolve(W.createTask(J))}if(Q.inputSchema)return await Promise.resolve(W(X,Y));else return await Promise.resolve(W(Y))}async handleAutomaticTaskPolling(Q,X,Y){if(!Y.taskStore)throw Error("No task store provided for task-capable tool.");let W=await this.validateToolInput(Q,X.params.arguments,X.params.name),$=Q.handler,J={...Y,taskStore:Y.taskStore},G=W?await Promise.resolve($.createTask(W,J)):await Promise.resolve($.createTask(J)),H=G.task.taskId,B=G.task,z=B.pollInterval??5000;while(B.status!=="completed"&&B.status!=="failed"&&B.status!=="cancelled"){await new Promise((F)=>setTimeout(F,z));let K=await Y.taskStore.getTask(H);if(!K)throw new S(k.InternalError,`Task ${H} not found during polling`);B=K}return await Y.taskStore.getTaskResult(H)}setCompletionRequestHandler(){if(this._completionHandlerInitialized)return;this.server.assertCanSetRequestHandler(_6(fQ)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(fQ,async(Q)=>{switch(Q.params.ref.type){case"ref/prompt":return A3(Q),this.handlePromptCompletion(Q,Q.params.ref);case"ref/resource":return D3(Q),this.handleResourceCompletion(Q,Q.params.ref);default:throw new S(k.InvalidParams,`Invalid completion reference: ${Q.params.ref}`)}}),this._completionHandlerInitialized=!0}async handlePromptCompletion(Q,X){let Y=this._registeredPrompts[X.name];if(!Y)throw new S(k.InvalidParams,`Prompt ${X.name} not found`);if(!Y.enabled)throw new S(k.InvalidParams,`Prompt ${X.name} disabled`);if(!Y.argsSchema)return u8;let $=l1(Y.argsSchema)?.[Q.params.argument.name];if(!qJ($))return u8;let J=kL($);if(!J)return u8;let G=await J(Q.params.argument.value,Q.params.context);return _L(G)}async handleResourceCompletion(Q,X){let Y=Object.values(this._registeredResourceTemplates).find((J)=>J.resourceTemplate.uriTemplate.toString()===X.uri);if(!Y){if(this._registeredResources[X.uri])return u8;throw new S(k.InvalidParams,`Resource template ${Q.params.ref.uri} not found`)}let W=Y.resourceTemplate.completeCallback(Q.params.argument.name);if(!W)return u8;let $=await W(Q.params.argument.value,Q.params.context);return _L($)}setResourceRequestHandlers(){if(this._resourceHandlersInitialized)return;this.server.assertCanSetRequestHandler(_6(kQ)),this.server.assertCanSetRequestHandler(_6(vQ)),this.server.assertCanSetRequestHandler(_6(_Q)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(kQ,async(Q,X)=>{let Y=Object.entries(this._registeredResources).filter(([$,J])=>J.enabled).map(([$,J])=>({uri:$,name:J.name,...J.metadata})),W=[];for(let $ of Object.values(this._registeredResourceTemplates)){if(!$.resourceTemplate.listCallback)continue;let J=await $.resourceTemplate.listCallback(X);for(let G of J.resources)W.push({...$.metadata,...G})}return{resources:[...Y,...W]}}),this.server.setRequestHandler(vQ,async()=>{return{resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([X,Y])=>({name:X,uriTemplate:Y.resourceTemplate.uriTemplate.toString(),...Y.metadata}))}}),this.server.setRequestHandler(_Q,async(Q,X)=>{let Y=new URL(Q.params.uri),W=this._registeredResources[Y.toString()];if(W){if(!W.enabled)throw new S(k.InvalidParams,`Resource ${Y} disabled`);return W.readCallback(Y,X)}for(let $ of Object.values(this._registeredResourceTemplates)){let J=$.resourceTemplate.uriTemplate.match(Y.toString());if(J)return $.readCallback(Y,J,X)}throw new S(k.InvalidParams,`Resource ${Y} not found`)}),this._resourceHandlersInitialized=!0}setPromptRequestHandlers(){if(this._promptHandlersInitialized)return;this.server.assertCanSetRequestHandler(_6(xQ)),this.server.assertCanSetRequestHandler(_6(yQ)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(xQ,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,Q])=>Q.enabled).map(([Q,X])=>{return{name:Q,title:X.title,description:X.description,arguments:X.argsSchema?Oy(X.argsSchema):void 0}})})),this.server.setRequestHandler(yQ,async(Q,X)=>{let Y=this._registeredPrompts[Q.params.name];if(!Y)throw new S(k.InvalidParams,`Prompt ${Q.params.name} not found`);if(!Y.enabled)throw new S(k.InvalidParams,`Prompt ${Q.params.name} disabled`);if(Y.argsSchema){let W=C9(Y.argsSchema),$=await FQ(W,Q.params.arguments);if(!$.success){let H="error"in $?$.error:"Unknown error",B=VQ(H);throw new S(k.InvalidParams,`Invalid arguments for prompt ${Q.params.name}: ${B}`)}let J=$.data,G=Y.callback;return await Promise.resolve(G(J,X))}else{let W=Y.callback;return await Promise.resolve(W(X))}}),this._promptHandlersInitialized=!0}resource(Q,X,...Y){let W;if(typeof Y[0]==="object")W=Y.shift();let $=Y[0];if(typeof X==="string"){if(this._registeredResources[X])throw Error(`Resource ${X} is already registered`);let J=this._createRegisteredResource(Q,void 0,X,W,$);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),J}else{if(this._registeredResourceTemplates[Q])throw Error(`Resource template ${Q} is already registered`);let J=this._createRegisteredResourceTemplate(Q,void 0,X,W,$);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),J}}registerResource(Q,X,Y,W){if(typeof X==="string"){if(this._registeredResources[X])throw Error(`Resource ${X} is already registered`);let $=this._createRegisteredResource(Q,Y.title,X,Y,W);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),$}else{if(this._registeredResourceTemplates[Q])throw Error(`Resource template ${Q} is already registered`);let $=this._createRegisteredResourceTemplate(Q,Y.title,X,Y,W);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),$}}_createRegisteredResource(Q,X,Y,W,$){let J={name:Q,title:X,metadata:W,readCallback:$,enabled:!0,disable:()=>J.update({enabled:!1}),enable:()=>J.update({enabled:!0}),remove:()=>J.update({uri:null}),update:(G)=>{if(typeof G.uri<"u"&&G.uri!==Y){if(delete this._registeredResources[Y],G.uri)this._registeredResources[G.uri]=J}if(typeof G.name<"u")J.name=G.name;if(typeof G.title<"u")J.title=G.title;if(typeof G.metadata<"u")J.metadata=G.metadata;if(typeof G.callback<"u")J.readCallback=G.callback;if(typeof G.enabled<"u")J.enabled=G.enabled;this.sendResourceListChanged()}};return this._registeredResources[Y]=J,J}_createRegisteredResourceTemplate(Q,X,Y,W,$){let J={resourceTemplate:Y,title:X,metadata:W,readCallback:$,enabled:!0,disable:()=>J.update({enabled:!1}),enable:()=>J.update({enabled:!0}),remove:()=>J.update({name:null}),update:(B)=>{if(typeof B.name<"u"&&B.name!==Q){if(delete this._registeredResourceTemplates[Q],B.name)this._registeredResourceTemplates[B.name]=J}if(typeof B.title<"u")J.title=B.title;if(typeof B.template<"u")J.resourceTemplate=B.template;if(typeof B.metadata<"u")J.metadata=B.metadata;if(typeof B.callback<"u")J.readCallback=B.callback;if(typeof B.enabled<"u")J.enabled=B.enabled;this.sendResourceListChanged()}};this._registeredResourceTemplates[Q]=J;let G=Y.uriTemplate.variableNames;if(Array.isArray(G)&&G.some((B)=>!!Y.completeCallback(B)))this.setCompletionRequestHandler();return J}_createRegisteredPrompt(Q,X,Y,W,$){let J={title:X,description:Y,argsSchema:W===void 0?void 0:r6(W),callback:$,enabled:!0,disable:()=>J.update({enabled:!1}),enable:()=>J.update({enabled:!0}),remove:()=>J.update({name:null}),update:(G)=>{if(typeof G.name<"u"&&G.name!==Q){if(delete this._registeredPrompts[Q],G.name)this._registeredPrompts[G.name]=J}if(typeof G.title<"u")J.title=G.title;if(typeof G.description<"u")J.description=G.description;if(typeof G.argsSchema<"u")J.argsSchema=r6(G.argsSchema);if(typeof G.callback<"u")J.callback=G.callback;if(typeof G.enabled<"u")J.enabled=G.enabled;this.sendPromptListChanged()}};if(this._registeredPrompts[Q]=J,W){if(Object.values(W).some((H)=>{let B=H instanceof B1?H._def?.innerType:H;return qJ(B)}))this.setCompletionRequestHandler()}return J}_createRegisteredTool(Q,X,Y,W,$,J,G,H,B){AJ(Q);let z={title:X,description:Y,inputSchema:vL(W),outputSchema:vL($),annotations:J,execution:G,_meta:H,handler:B,enabled:!0,disable:()=>z.update({enabled:!1}),enable:()=>z.update({enabled:!0}),remove:()=>z.update({name:null}),update:(K)=>{if(typeof K.name<"u"&&K.name!==Q){if(typeof K.name==="string")AJ(K.name);if(delete this._registeredTools[Q],K.name)this._registeredTools[K.name]=z}if(typeof K.title<"u")z.title=K.title;if(typeof K.description<"u")z.description=K.description;if(typeof K.paramsSchema<"u")z.inputSchema=r6(K.paramsSchema);if(typeof K.outputSchema<"u")z.outputSchema=r6(K.outputSchema);if(typeof K.callback<"u")z.handler=K.callback;if(typeof K.annotations<"u")z.annotations=K.annotations;if(typeof K._meta<"u")z._meta=K._meta;if(typeof K.enabled<"u")z.enabled=K.enabled;this.sendToolListChanged()}};return this._registeredTools[Q]=z,this.setToolRequestHandlers(),this.sendToolListChanged(),z}tool(Q,...X){if(this._registeredTools[Q])throw Error(`Tool ${Q} is already registered`);let Y,W,$,J;if(typeof X[0]==="string")Y=X.shift();if(X.length>1){let H=X[0];if(LJ(H)){if(W=X.shift(),X.length>1&&typeof X[0]==="object"&&X[0]!==null&&!LJ(X[0]))J=X.shift()}else if(typeof H==="object"&&H!==null)J=X.shift()}let G=X[0];return this._createRegisteredTool(Q,void 0,Y,W,$,J,{taskSupport:"forbidden"},void 0,G)}registerTool(Q,X,Y){if(this._registeredTools[Q])throw Error(`Tool ${Q} is already registered`);let{title:W,description:$,inputSchema:J,outputSchema:G,annotations:H,_meta:B}=X;return this._createRegisteredTool(Q,W,$,J,G,H,{taskSupport:"forbidden"},B,Y)}prompt(Q,...X){if(this._registeredPrompts[Q])throw Error(`Prompt ${Q} is already registered`);let Y;if(typeof X[0]==="string")Y=X.shift();let W;if(X.length>1)W=X.shift();let $=X[0],J=this._createRegisteredPrompt(Q,void 0,Y,W,$);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),J}registerPrompt(Q,X,Y){if(this._registeredPrompts[Q])throw Error(`Prompt ${Q} is already registered`);let{title:W,description:$,argsSchema:J}=X,G=this._createRegisteredPrompt(Q,W,$,J,Y);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),G}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(Q,X){return this.server.sendLoggingMessage(Q,X)}sendResourceListChanged(){if(this.isConnected())this.server.sendResourceListChanged()}sendToolListChanged(){if(this.isConnected())this.server.sendToolListChanged()}sendPromptListChanged(){if(this.isConnected())this.server.sendPromptListChanged()}}var Dy={type:"object",properties:{}};function xL(Q){return Q!==null&&typeof Q==="object"&&"parse"in Q&&typeof Q.parse==="function"&&"safeParse"in Q&&typeof Q.safeParse==="function"}function Ly(Q){return"_def"in Q||"_zod"in Q||xL(Q)}function LJ(Q){if(typeof Q!=="object"||Q===null)return!1;if(Ly(Q))return!1;if(Object.keys(Q).length===0)return!0;return Object.values(Q).some(xL)}function vL(Q){if(!Q)return;if(LJ(Q))return r6(Q);return Q}function Oy(Q){let X=l1(Q);if(!X)return[];return Object.entries(X).map(([Y,W])=>{let $=bH(W),J=PH(W);return{name:Y,description:$,required:!J}})}function _6(Q){let Y=l1(Q)?.method;if(!Y)throw Error("Schema is missing a method literal");let W=qQ(Y);if(typeof W==="string")return W;throw Error("Schema method literal must be a string")}function _L(Q){return{completion:{values:Q.slice(0,100),total:Q.length,hasMore:Q.length>100}}}var u8={completion:{values:[],hasMore:!1}};import gL from"node:process";class UJ{append(Q){this._buffer=this._buffer?Buffer.concat([this._buffer,Q]):Q}readMessage(){if(!this._buffer)return null;let Q=this._buffer.indexOf(`
48
- `);if(Q===-1)return null;let X=this._buffer.toString("utf8",0,Q).replace(/\r$/,"");return this._buffer=this._buffer.subarray(Q+1),Uy(X)}clear(){this._buffer=void 0}}function Uy(Q){return v9.parse(JSON.parse(Q))}function yL(Q){return JSON.stringify(Q)+`
49
- `}class jJ{constructor(Q=gL.stdin,X=gL.stdout){this._stdin=Q,this._stdout=X,this._readBuffer=new UJ,this._started=!1,this._ondata=(Y)=>{this._readBuffer.append(Y),this.processReadBuffer()},this._onerror=(Y)=>{this.onerror?.(Y)}}async start(){if(this._started)throw Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){while(!0)try{let Q=this._readBuffer.readMessage();if(Q===null)break;this.onmessage?.(Q)}catch(Q){this.onerror?.(Q)}}async close(){if(this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0)this._stdin.pause();this._readBuffer.clear(),this.onclose?.()}send(Q){return new Promise((X)=>{let Y=yL(Q);if(this._stdout.write(Y))X();else this._stdout.once("drain",X)})}}import{readFileSync as qg}from"fs";import zY from"node:crypto";var hL="0123456789ABCDEFGHJKMNPQRSTVWXYZ",KY=32;var jy=16,uL=10,fL=281474976710655;var z9;(function(Q){Q.Base32IncorrectEncoding="B32_ENC_INVALID",Q.DecodeTimeInvalidCharacter="DEC_TIME_CHAR",Q.DecodeTimeValueMalformed="DEC_TIME_MALFORMED",Q.EncodeTimeNegative="ENC_TIME_NEG",Q.EncodeTimeSizeExceeded="ENC_TIME_SIZE_EXCEED",Q.EncodeTimeValueMalformed="ENC_TIME_MALFORMED",Q.PRNGDetectFailure="PRNG_DETECT",Q.ULIDInvalid="ULID_INVALID",Q.Unexpected="UNEXPECTED",Q.UUIDInvalid="UUID_INVALID"})(z9||(z9={}));class $4 extends Error{constructor(Q,X){super(`${X} (${Q})`);this.name="ULIDError",this.code=Q}}function wy(Q){let X=Math.floor(Q()*KY)%KY;return hL.charAt(X)}function My(Q){let X=Ny(),Y=X&&(X.crypto||X.msCrypto)||(typeof zY<"u"?zY:null);if(typeof Y?.getRandomValues==="function")return()=>{let W=new Uint8Array(1);return Y.getRandomValues(W),W[0]/256};else if(typeof Y?.randomBytes==="function")return()=>Y.randomBytes(1).readUInt8()/256;else if(zY?.randomBytes)return()=>zY.randomBytes(1).readUInt8()/256;throw new $4(z9.PRNGDetectFailure,"Failed to find a reliable PRNG")}function Ny(){if(Zy())return self;if(typeof window<"u")return window;if(typeof global<"u")return global;if(typeof globalThis<"u")return globalThis;return null}function by(Q,X){let Y="";for(;Q>0;Q--)Y=wy(X)+Y;return Y}function Py(Q,X=uL){if(isNaN(Q))throw new $4(z9.EncodeTimeValueMalformed,`Time must be a number: ${Q}`);else if(Q>fL)throw new $4(z9.EncodeTimeSizeExceeded,`Cannot encode a time larger than ${fL}: ${Q}`);else if(Q<0)throw new $4(z9.EncodeTimeNegative,`Time must be positive: ${Q}`);else if(Number.isInteger(Q)===!1)throw new $4(z9.EncodeTimeValueMalformed,`Time must be an integer: ${Q}`);let Y,W="";for(let $=X;$>0;$--)Y=Q%KY,W=hL.charAt(Y)+W,Q=(Q-Y)/KY;return W}function Zy(){return typeof WorkerGlobalScope<"u"&&self instanceof WorkerGlobalScope}function B6(Q,X){let Y=X||My(),W=!Q||isNaN(Q)?Date.now():Q;return Py(W,uL)+by(jy,Y)}class wJ{configs=new Map;logger;constructor(Q={}){this.logger=Q.logger}addConfig(Q,X,Y){let W=this.configs.has(Q);return this.configs.set(Q,{name:Q,url:X,addedAt:new Date,addedBy:Y}),this.logger?.info(W?"server_config_updated":"server_config_added",{server:Q,url:X,addedBy:Y}),!W}getConfig(Q){return this.configs.get(Q)}listConfigs(){return Array.from(this.configs.values())}removeConfig(Q){let X=this.configs.delete(Q);if(X)this.logger?.info("server_config_removed",{server:Q});return X}hasConfig(Q){return this.configs.has(Q)}get size(){return this.configs.size}clear(){this.configs.clear(),this.logger?.info("server_configs_cleared",{})}}var Ry={maxEvents:1000,retentionMs:1800000,cleanupIntervalMs:300000};class MJ{events=[];config;logger;lastDeliveredId=null;waiters=[];cleanupIntervalHandle=null;constructor(Q={},X){this.config={...Ry,...Q},this.logger=X,this.startCleanupInterval()}addEvent(Q,X,Y){let W=B6(),$={id:W,type:Q,server:X,data:Y,createdAt:new Date,sentViaSSE:!1};this.events.push($);while(this.events.length>this.config.maxEvents)this.events.shift();return this.logger?.debug("event_added",{id:W,type:Q,server:X}),this.wakeWaiters($),W}hasNewEvents(){if(this.lastDeliveredId===null)return this.events.length>0;let Q=this.events.findIndex((X)=>X.id===this.lastDeliveredId);if(Q===-1)return this.events.length>0;return Q<this.events.length-1}getNewEvents(){if(this.events.length===0)return[];let Q=0;if(this.lastDeliveredId!==null){let Y=this.events.findIndex((W)=>W.id===this.lastDeliveredId);if(Y!==-1)Q=Y+1}let X=this.events.slice(Q);if(X.length>0){let Y=X[X.length-1];if(Y)this.lastDeliveredId=Y.id}return X}getEventsAfter(Q){if(Q===null)return[...this.events];let X=this.events.findIndex((Y)=>Y.id===Q);if(X===-1)return[...this.events];return this.events.slice(X+1)}markSent(Q){let X=this.events.find((Y)=>Y.id===Q);if(X)X.sentViaSSE=!0}waitForActivity(Q){return new Promise((X)=>{let Y=setTimeout(()=>{let W=this.waiters.findIndex(($)=>$.timeoutHandle===Y);if(W!==-1)this.waiters.splice(W,1);X(null)},Q);this.waiters.push({resolve:X,timeoutHandle:Y})})}wakeWaiters(Q){let X=this.waiters;this.waiters=[];for(let Y of X)clearTimeout(Y.timeoutHandle),Y.resolve(Q)}startCleanupInterval(){this.cleanupIntervalHandle=setInterval(()=>{this.runCleanup()},this.config.cleanupIntervalMs)}runCleanup(){let Q=Date.now()-this.config.retentionMs,X=0;while(this.events.length>0){let Y=this.events[0];if(Y&&Y.createdAt.getTime()<Q)this.events.shift(),X++;else break}if(X>0)this.logger?.debug("events_cleaned",{removed:X,remaining:this.events.length})}shutdown(){if(this.cleanupIntervalHandle)clearInterval(this.cleanupIntervalHandle),this.cleanupIntervalHandle=null;for(let Q of this.waiters)clearTimeout(Q.timeoutHandle),Q.resolve(null);this.waiters=[]}}var Ey={defaultTtlMs:600000,completedRetentionMs:300000,cleanupIntervalMs:60000};class NJ{tasks=new Map;eventSystem;config;cleanupIntervalHandle=null;constructor(Q,X={}){this.eventSystem=Q,this.config={...Ey,...X},this.startCleanupInterval()}createTask(Q,X,Y,W){let $=B6(),J=new Date,G={taskId:$,server:Q,toolName:X,args:Y,status:"working",createdAt:J,lastUpdatedAt:J,ttl:W??this.config.defaultTtlMs};return this.tasks.set($,G),this.eventSystem.addEvent("task_created",Q,{taskId:$,toolName:X,args:Y}),G}completeTask(Q,X){let Y=this.tasks.get(Q);if(Y?.status!=="working")return;Y.status="completed",Y.result=X,Y.lastUpdatedAt=new Date,this.scheduleTaskCleanup(Y),this.eventSystem.addEvent("task_completed",Y.server,{taskId:Q,toolName:Y.toolName,result:X})}failTask(Q,X){let Y=this.tasks.get(Q);if(Y?.status!=="working")return;Y.status="failed",Y.error=X,Y.lastUpdatedAt=new Date,this.scheduleTaskCleanup(Y),this.eventSystem.addEvent("task_failed",Y.server,{taskId:Q,toolName:Y.toolName,error:X})}cancelTask(Q){let X=this.tasks.get(Q);if(X?.status!=="working")return!1;return X.status="cancelled",X.lastUpdatedAt=new Date,this.scheduleTaskCleanup(X),this.eventSystem.addEvent("task_cancelled",X.server,{taskId:Q,toolName:X.toolName}),!0}getTask(Q){let X=this.tasks.get(Q);if(!X)return;let{_cleanupTimeoutHandle:Y,...W}=X;return W}getTasksForServer(Q){return Array.from(this.tasks.values()).filter((X)=>X.server===Q).map((X)=>({taskId:X.taskId,server:X.server,toolName:X.toolName,args:X.args,status:X.status,result:X.result,error:X.error,createdAt:X.createdAt,lastUpdatedAt:X.lastUpdatedAt,ttl:X.ttl}))}getAllTasks(Q=!1){let X=["completed","failed","cancelled","expired"];return Array.from(this.tasks.values()).filter((Y)=>Q||!X.includes(Y.status)).map((Y)=>({taskId:Y.taskId,server:Y.server,toolName:Y.toolName,args:Y.args,status:Y.status,result:Y.result,error:Y.error,createdAt:Y.createdAt,lastUpdatedAt:Y.lastUpdatedAt,ttl:Y.ttl}))}getWorkingTasksForServer(Q){return Array.from(this.tasks.values()).filter((X)=>X.server===Q&&X.status==="working").map((X)=>({taskId:X.taskId,toolName:X.toolName,status:X.status}))}scheduleTaskCleanup(Q){if(Q._cleanupTimeoutHandle)clearTimeout(Q._cleanupTimeoutHandle);Q._cleanupTimeoutHandle=setTimeout(()=>{this.tasks.delete(Q.taskId)},this.config.completedRetentionMs)}startCleanupInterval(){this.cleanupIntervalHandle=setInterval(()=>{this.runCleanup()},this.config.cleanupIntervalMs)}runCleanup(){let Q=Date.now();for(let X of this.tasks.values()){if(X.status!=="working")continue;if(Q-X.createdAt.getTime()>=X.ttl)X.status="expired",X.error=`Task expired after ${String(X.ttl)}ms TTL`,X.lastUpdatedAt=new Date,this.eventSystem.addEvent("task_expired",X.server,{taskId:X.taskId,toolName:X.toolName,ttl:X.ttl}),this.scheduleTaskCleanup(X)}}shutdown(){if(this.cleanupIntervalHandle)clearInterval(this.cleanupIntervalHandle),this.cleanupIntervalHandle=null;for(let Q of this.tasks.values())if(Q._cleanupTimeoutHandle)clearTimeout(Q._cleanupTimeoutHandle)}}var Sy={maxNotificationsPerServer:100,maxLogsPerServer:500};class bJ{buffers=new Map;eventSystem;config;constructor(Q,X={}){this.eventSystem=Q,this.config={...Sy,...X}}addNotification(Q){let X=this.getOrCreateBuffers(Q.server);if(X.notifications.length>=this.config.maxNotificationsPerServer)X.notifications.shift();X.notifications.push(Q),this.eventSystem.addEvent("notification",Q.server,{method:Q.method,params:Q.params,timestamp:Q.timestamp.toISOString()})}addLog(Q){let X=this.getOrCreateBuffers(Q.server);if(X.logs.length>=this.config.maxLogsPerServer)X.logs.shift();X.logs.push(Q)}getAndClearNotifications(){let Q=[];for(let X of this.buffers.values())Q.push(...X.notifications),X.notifications=[];return Q}getAndClearLogs(){let Q=[];for(let X of this.buffers.values())Q.push(...X.logs),X.logs=[];return Q}getNotificationsForServer(Q){let X=this.buffers.get(Q);return X?[...X.notifications]:[]}getLogsForServer(Q){let X=this.buffers.get(Q);return X?[...X.logs]:[]}getNotificationCount(){let Q=0;for(let X of this.buffers.values())Q+=X.notifications.length;return Q}getLogCount(){let Q=0;for(let X of this.buffers.values())Q+=X.logs.length;return Q}clearServer(Q){this.buffers.delete(Q)}getOrCreateBuffers(Q){let X=this.buffers.get(Q);if(!X)X={notifications:[],logs:[]},this.buffers.set(Q,X);return X}}var Iy={defaultTimeoutMs:600000};class PJ{samplingRequests=new Map;elicitationRequests=new Map;eventSystem;config;constructor(Q,X={}){this.eventSystem=Q,this.config={...Iy,...X}}addSamplingRequest(Q,X,Y,W){let $=B6(),J=setTimeout(()=>{let H=this.samplingRequests.get($);if(H)this.samplingRequests.delete($),this.eventSystem.addEvent("sampling_expired",Q,{requestId:$,reason:`Timed out after ${String(this.config.defaultTimeoutMs)}ms`}),H.reject(Error(`Sampling request timed out after ${String(this.config.defaultTimeoutMs)}ms`))},this.config.defaultTimeoutMs),G={requestId:$,server:Q,timestamp:new Date,params:X,resolve:Y,reject:W,timeoutHandle:J};return this.samplingRequests.set($,G),this.eventSystem.addEvent("sampling_request",Q,{requestId:$,params:X}),$}addElicitationRequest(Q,X,Y,W){let $=B6(),J=setTimeout(()=>{let H=this.elicitationRequests.get($);if(H)this.elicitationRequests.delete($),this.eventSystem.addEvent("elicitation_expired",Q,{requestId:$,reason:`Timed out after ${String(this.config.defaultTimeoutMs)}ms`}),H.reject(Error(`Elicitation request timed out after ${String(this.config.defaultTimeoutMs)}ms`))},this.config.defaultTimeoutMs),G={requestId:$,server:Q,timestamp:new Date,params:X,resolve:Y,reject:W,timeoutHandle:J};return this.elicitationRequests.set($,G),this.eventSystem.addEvent("elicitation_request",Q,{requestId:$,params:X}),$}respondToSampling(Q,X){let Y=this.samplingRequests.get(Q);if(!Y)throw Error(`Sampling request '${Q}' not found or already completed`);clearTimeout(Y.timeoutHandle),this.samplingRequests.delete(Q),Y.resolve(X)}respondToElicitation(Q,X){let Y=this.elicitationRequests.get(Q);if(!Y)throw Error(`Elicitation request '${Q}' not found or already completed`);clearTimeout(Y.timeoutHandle),this.elicitationRequests.delete(Q),Y.resolve(X)}getPendingSamplingRequests(){return Array.from(this.samplingRequests.values()).map((Q)=>({requestId:Q.requestId,server:Q.server,timestamp:Q.timestamp,params:Q.params}))}getPendingElicitationRequests(){return Array.from(this.elicitationRequests.values()).map((Q)=>({requestId:Q.requestId,server:Q.server,timestamp:Q.timestamp,params:Q.params}))}getRequestsForServer(Q){return{sampling:this.getPendingSamplingRequests().filter((X)=>X.server===Q),elicitation:this.getPendingElicitationRequests().filter((X)=>X.server===Q)}}hasPendingRequests(){return this.samplingRequests.size>0||this.elicitationRequests.size>0}rejectRequestsForServer(Q,X){for(let[Y,W]of this.samplingRequests)if(W.server===Q)clearTimeout(W.timeoutHandle),this.samplingRequests.delete(Y),this.eventSystem.addEvent("sampling_expired",Q,{requestId:Y,reason:X}),W.reject(Error(X));for(let[Y,W]of this.elicitationRequests)if(W.server===Q)clearTimeout(W.timeoutHandle),this.elicitationRequests.delete(Y),this.eventSystem.addEvent("elicitation_expired",Q,{requestId:Y,reason:X}),W.reject(Error(X))}shutdown(){for(let Q of this.samplingRequests.values())clearTimeout(Q.timeoutHandle),Q.reject(Error("PendingRequestsManager shutting down"));this.samplingRequests.clear();for(let Q of this.elicitationRequests.values())clearTimeout(Q.timeoutHandle),Q.reject(Error("PendingRequestsManager shutting down"));this.elicitationRequests.clear()}}class ZJ{sessionId;createdAt;lastActivityAt;backendConnections=new Map;eventSystem;taskManager;pendingRequests;bufferManager;logger;constructor(Q,X={},Y){this.sessionId=Q,this.createdAt=new Date,this.lastActivityAt=new Date,this.logger=Y,this.eventSystem=new MJ(X.eventSystemConfig,Y),this.taskManager=new NJ(this.eventSystem,X.taskConfig),this.pendingRequests=new PJ(this.eventSystem,X.requestConfig),this.bufferManager=new bJ(this.eventSystem,X.bufferConfig)}touch(){this.lastActivityAt=new Date}getConnection(Q){return this.backendConnections.get(Q)}isConnectedTo(Q){return this.backendConnections.get(Q)?.status==="connected"}listConnectedServers(){return Array.from(this.backendConnections.entries()).filter(([,Q])=>Q.status==="connected").map(([Q])=>Q)}listConnections(){return Array.from(this.backendConnections.entries()).map(([Q,X])=>({name:Q,status:X.status,connectedAt:X.connectedAt,lastError:X.lastError}))}setConnectionStatus(Q,X,Y){let W=this.backendConnections.get(Q);if(W){if(W.status=X,X==="connected")W.connectedAt=new Date,W.lastError=void 0;else if(X==="error"&&Y)W.lastError=Y}}addConnection(Q,X){this.backendConnections.set(Q,{client:X,status:"connecting"})}removeConnection(Q){return this.backendConnections.delete(Q)}async cleanup(){this.logger?.info("session_cleanup_start",{sessionId:this.sessionId}),this.pendingRequests.shutdown(),this.taskManager.shutdown(),this.eventSystem.shutdown();for(let[Q,X]of this.backendConnections)try{await X.client.disconnect(),this.logger?.debug("session_backend_disconnected",{sessionId:this.sessionId,server:Q})}catch(Y){this.logger?.debug("session_backend_disconnect_error",{sessionId:this.sessionId,server:Q,error:Y instanceof Error?Y.message:String(Y)})}this.backendConnections.clear(),this.logger?.info("session_cleanup_complete",{sessionId:this.sessionId})}}class RJ{constructor(Q){this._client=Q}async*callToolStream(Q,X=j6,Y){let W=this._client,$={...Y,task:Y?.task??(W.isToolTask(Q.name)?{}:void 0)},J=W.requestStream({method:"tools/call",params:Q},X,$),G=W.getToolOutputValidator(Q.name);for await(let H of J){if(H.type==="result"&&G){let B=H.result;if(!B.structuredContent&&!B.isError){yield{type:"error",error:new S(k.InvalidRequest,`Tool ${Q.name} has an output schema but did not return structured content`)};return}if(B.structuredContent)try{let z=G(B.structuredContent);if(!z.valid){yield{type:"error",error:new S(k.InvalidParams,`Structured content does not match the tool's output schema: ${z.errorMessage}`)};return}}catch(z){if(z instanceof S){yield{type:"error",error:z};return}yield{type:"error",error:new S(k.InvalidParams,`Failed to validate structured content: ${z instanceof Error?z.message:String(z)}`)};return}}yield H}}async getTask(Q,X){return this._client.getTask({taskId:Q},X)}async getTaskResult(Q,X,Y){return this._client.getTaskResult({taskId:Q},X,Y)}async listTasks(Q,X){return this._client.listTasks(Q?{cursor:Q}:void 0,X)}async cancelTask(Q,X){return this._client.cancelTask({taskId:Q},X)}requestStream(Q,X,Y){return this._client.requestStream(Q,X,Y)}}function FY(Q,X){if(!Q||X===null||typeof X!=="object")return;if(Q.type==="object"&&Q.properties&&typeof Q.properties==="object"){let Y=X,W=Q.properties;for(let $ of Object.keys(W)){let J=W[$];if(Y[$]===void 0&&Object.prototype.hasOwnProperty.call(J,"default"))Y[$]=J.default;if(Y[$]!==void 0)FY(J,Y[$])}}if(Array.isArray(Q.anyOf)){for(let Y of Q.anyOf)if(typeof Y!=="boolean")FY(Y,X)}if(Array.isArray(Q.oneOf)){for(let Y of Q.oneOf)if(typeof Y!=="boolean")FY(Y,X)}}function Ty(Q){if(!Q)return{supportsFormMode:!1,supportsUrlMode:!1};let X=Q.form!==void 0,Y=Q.url!==void 0;return{supportsFormMode:X||!X&&!Y,supportsUrlMode:Y}}class VY extends n4{constructor(Q,X){super(X);if(this._clientInfo=Q,this._cachedToolOutputValidators=new Map,this._cachedKnownTaskTools=new Set,this._cachedRequiredTaskTools=new Set,this._listChangedDebounceTimers=new Map,this._capabilities=X?.capabilities??{},this._jsonSchemaValidator=X?.jsonSchemaValidator??new h8,X?.listChanged)this._pendingListChangedConfig=X.listChanged}_setupListChangedHandlers(Q){if(Q.tools&&this._serverCapabilities?.tools?.listChanged)this._setupListChangedHandler("tools",l4,Q.tools,async()=>{return(await this.listTools()).tools});if(Q.prompts&&this._serverCapabilities?.prompts?.listChanged)this._setupListChangedHandler("prompts",u4,Q.prompts,async()=>{return(await this.listPrompts()).prompts});if(Q.resources&&this._serverCapabilities?.resources?.listChanged)this._setupListChangedHandler("resources",h4,Q.resources,async()=>{return(await this.listResources()).resources})}get experimental(){if(!this._experimental)this._experimental={tasks:new RJ(this)};return this._experimental}registerCapabilities(Q){if(this.transport)throw Error("Cannot register capabilities after connecting to transport");this._capabilities=cQ(this._capabilities,Q)}setRequestHandler(Q,X){let W=l1(Q)?.method;if(!W)throw Error("Schema is missing a method literal");let $;if(s0(W)){let G=W;$=G._zod?.def?.value??G.value}else{let G=W;$=G._def?.value??G.value}if(typeof $!=="string")throw Error("Schema method literal must be a string");let J=$;if(J==="elicitation/create"){let G=async(H,B)=>{let z=m0(d4,H);if(!z.success){let O=z.error instanceof Error?z.error.message:String(z.error);throw new S(k.InvalidParams,`Invalid elicitation request: ${O}`)}let{params:K}=z.data;K.mode=K.mode??"form";let{supportsFormMode:F,supportsUrlMode:D}=Ty(this._capabilities.elicitation);if(K.mode==="form"&&!F)throw new S(k.InvalidParams,"Client does not support form-mode elicitation requests");if(K.mode==="url"&&!D)throw new S(k.InvalidParams,"Client does not support URL-mode elicitation requests");let V=await Promise.resolve(X(H,B));if(K.task){let O=m0(s1,V);if(!O.success){let M=O.error instanceof Error?O.error.message:String(O.error);throw new S(k.InvalidParams,`Invalid task creation result: ${M}`)}return O.data}let A=m0(y9,V);if(!A.success){let O=A.error instanceof Error?A.error.message:String(A.error);throw new S(k.InvalidParams,`Invalid elicitation result: ${O}`)}let q=A.data,L=K.mode==="form"?K.requestedSchema:void 0;if(K.mode==="form"&&q.action==="accept"&&q.content&&L){if(this._capabilities.elicitation?.form?.applyDefaults)try{FY(L,q.content)}catch{}}return q};return super.setRequestHandler(Q,G)}if(J==="sampling/createMessage"){let G=async(H,B)=>{let z=m0(c4,H);if(!z.success){let V=z.error instanceof Error?z.error.message:String(z.error);throw new S(k.InvalidParams,`Invalid sampling request: ${V}`)}let{params:K}=z.data,F=await Promise.resolve(X(H,B));if(K.task){let V=m0(s1,F);if(!V.success){let A=V.error instanceof Error?V.error.message:String(V.error);throw new S(k.InvalidParams,`Invalid task creation result: ${A}`)}return V.data}let D=m0(p4,F);if(!D.success){let V=D.error instanceof Error?D.error.message:String(D.error);throw new S(k.InvalidParams,`Invalid sampling result: ${V}`)}return D.data};return super.setRequestHandler(Q,G)}return super.setRequestHandler(Q,X)}assertCapability(Q,X){if(!this._serverCapabilities?.[Q])throw Error(`Server does not support ${Q} (required for ${X})`)}async connect(Q,X){if(await super.connect(Q),Q.sessionId!==void 0)return;try{let Y=await this.request({method:"initialize",params:{protocolVersion:O6,capabilities:this._capabilities,clientInfo:this._clientInfo}},r7,X);if(Y===void 0)throw Error(`Server sent invalid initialize result: ${Y}`);if(!jQ.includes(Y.protocolVersion))throw Error(`Server's protocol version is not supported: ${Y.protocolVersion}`);if(this._serverCapabilities=Y.capabilities,this._serverVersion=Y.serverInfo,Q.setProtocolVersion)Q.setProtocolVersion(Y.protocolVersion);if(this._instructions=Y.instructions,await this.notification({method:"notifications/initialized"}),this._pendingListChangedConfig)this._setupListChangedHandlers(this._pendingListChangedConfig),this._pendingListChangedConfig=void 0}catch(Y){throw this.close(),Y}}getServerCapabilities(){return this._serverCapabilities}getServerVersion(){return this._serverVersion}getInstructions(){return this._instructions}assertCapabilityForMethod(Q){switch(Q){case"logging/setLevel":if(!this._serverCapabilities?.logging)throw Error(`Server does not support logging (required for ${Q})`);break;case"prompts/get":case"prompts/list":if(!this._serverCapabilities?.prompts)throw Error(`Server does not support prompts (required for ${Q})`);break;case"resources/list":case"resources/templates/list":case"resources/read":case"resources/subscribe":case"resources/unsubscribe":if(!this._serverCapabilities?.resources)throw Error(`Server does not support resources (required for ${Q})`);if(Q==="resources/subscribe"&&!this._serverCapabilities.resources.subscribe)throw Error(`Server does not support resource subscriptions (required for ${Q})`);break;case"tools/call":case"tools/list":if(!this._serverCapabilities?.tools)throw Error(`Server does not support tools (required for ${Q})`);break;case"completion/complete":if(!this._serverCapabilities?.completions)throw Error(`Server does not support completions (required for ${Q})`);break;case"initialize":break;case"ping":break}}assertNotificationCapability(Q){switch(Q){case"notifications/roots/list_changed":if(!this._capabilities.roots?.listChanged)throw Error(`Client does not support roots list changed notifications (required for ${Q})`);break;case"notifications/initialized":break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(Q){if(!this._capabilities)return;switch(Q){case"sampling/createMessage":if(!this._capabilities.sampling)throw Error(`Client does not support sampling capability (required for ${Q})`);break;case"elicitation/create":if(!this._capabilities.elicitation)throw Error(`Client does not support elicitation capability (required for ${Q})`);break;case"roots/list":if(!this._capabilities.roots)throw Error(`Client does not support roots capability (required for ${Q})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw Error(`Client does not support tasks capability (required for ${Q})`);break;case"ping":break}}assertTaskCapability(Q){HY(this._serverCapabilities?.tasks?.requests,Q,"Server")}assertTaskHandlerCapability(Q){if(!this._capabilities)return;BY(this._capabilities.tasks?.requests,Q,"Client")}async ping(Q){return this.request({method:"ping"},a1,Q)}async complete(Q,X){return this.request({method:"completion/complete",params:Q},V5,X)}async setLoggingLevel(Q,X){return this.request({method:"logging/setLevel",params:{level:Q}},a1,X)}async getPrompt(Q,X){return this.request({method:"prompts/get",params:Q},H5,X)}async listPrompts(Q,X){return this.request({method:"prompts/list",params:Q},Y5,X)}async listResources(Q,X){return this.request({method:"resources/list",params:Q},a7,X)}async listResourceTemplates(Q,X){return this.request({method:"resources/templates/list",params:Q},s7,X)}async readResource(Q,X){return this.request({method:"resources/read",params:Q},Q5,X)}async subscribeResource(Q,X){return this.request({method:"resources/subscribe",params:Q},a1,X)}async unsubscribeResource(Q,X){return this.request({method:"resources/unsubscribe",params:Q},a1,X)}async callTool(Q,X=j6,Y){if(this.isToolTaskRequired(Q.name))throw new S(k.InvalidRequest,`Tool "${Q.name}" requires task-based execution. Use client.experimental.tasks.callToolStream() instead.`);let W=await this.request({method:"tools/call",params:Q},X,Y),$=this.getToolOutputValidator(Q.name);if($){if(!W.structuredContent&&!W.isError)throw new S(k.InvalidRequest,`Tool ${Q.name} has an output schema but did not return structured content`);if(W.structuredContent)try{let J=$(W.structuredContent);if(!J.valid)throw new S(k.InvalidParams,`Structured content does not match the tool's output schema: ${J.errorMessage}`)}catch(J){if(J instanceof S)throw J;throw new S(k.InvalidParams,`Failed to validate structured content: ${J instanceof Error?J.message:String(J)}`)}}return W}isToolTask(Q){if(!this._serverCapabilities?.tasks?.requests?.tools?.call)return!1;return this._cachedKnownTaskTools.has(Q)}isToolTaskRequired(Q){return this._cachedRequiredTaskTools.has(Q)}cacheToolMetadata(Q){this._cachedToolOutputValidators.clear(),this._cachedKnownTaskTools.clear(),this._cachedRequiredTaskTools.clear();for(let X of Q){if(X.outputSchema){let W=this._jsonSchemaValidator.getValidator(X.outputSchema);this._cachedToolOutputValidators.set(X.name,W)}let Y=X.execution?.taskSupport;if(Y==="required"||Y==="optional")this._cachedKnownTaskTools.add(X.name);if(Y==="required")this._cachedRequiredTaskTools.add(X.name)}}getToolOutputValidator(Q){return this._cachedToolOutputValidators.get(Q)}async listTools(Q,X){let Y=await this.request({method:"tools/list",params:Q},B5,X);return this.cacheToolMetadata(Y.tools),Y}_setupListChangedHandler(Q,X,Y,W){let $=q3.safeParse(Y);if(!$.success)throw Error(`Invalid ${Q} listChanged options: ${$.error.message}`);if(typeof Y.onChanged!=="function")throw Error(`Invalid ${Q} listChanged options: onChanged must be a function`);let{autoRefresh:J,debounceMs:G}=$.data,{onChanged:H}=Y,B=async()=>{if(!J){H(null,null);return}try{let K=await W();H(null,K)}catch(K){let F=K instanceof Error?K:Error(String(K));H(F,null)}},z=()=>{if(G){let K=this._listChangedDebounceTimers.get(Q);if(K)clearTimeout(K);let F=setTimeout(B,G);this._listChangedDebounceTimers.set(Q,F)}else B()};this.setNotificationHandler(X,z)}async sendRootsListChanged(){return this.notification({method:"notifications/roots/list_changed"})}}function qY(Q){if(!Q)return{};if(Q instanceof Headers)return Object.fromEntries(Q.entries());if(Array.isArray(Q))return Object.fromEntries(Q);return{...Q}}function lL(Q=fetch,X){if(!X)return Q;return async(Y,W)=>{let $={...X,...W,headers:W?.headers?{...qY(X.headers),...qY(W.headers)}:X.headers};return Q(Y,$)}}var EJ;EJ=globalThis.crypto?.webcrypto??globalThis.crypto??import("node:crypto").then((Q)=>Q.webcrypto);async function Cy(Q){return(await EJ).getRandomValues(new Uint8Array(Q))}async function ky(Q){let Y=Math.pow(2,8)-Math.pow(2,8)%66,W="";while(W.length<Q){let $=await Cy(Q-W.length);for(let J of $)if(J<Y)W+="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._~"[J%66]}return W}async function vy(Q){return await ky(Q)}async function _y(Q){let X=await(await EJ).subtle.digest("SHA-256",new TextEncoder().encode(Q));return btoa(String.fromCharCode(...new Uint8Array(X))).replace(/\//g,"_").replace(/\+/g,"-").replace(/=/g,"")}async function SJ(Q){if(!Q)Q=43;if(Q<43||Q>128)throw`Expected a length between 43 and 128. Received ${Q}.`;let X=await vy(Q),Y=await _y(X);return{code_verifier:X,code_challenge:Y}}var g0=uH().superRefine((Q,X)=>{if(!URL.canParse(Q))return X.addIssue({code:aH.custom,message:"URL must be parseable",fatal:!0}),o8}).refine((Q)=>{let X=new URL(Q);return X.protocol!=="javascript:"&&X.protocol!=="data:"&&X.protocol!=="vbscript:"},{message:"URL cannot use javascript:, data:, or vbscript: scheme"}),cL=I0({resource:U().url(),authorization_servers:E(g0).optional(),jwks_uri:U().url().optional(),scopes_supported:E(U()).optional(),bearer_methods_supported:E(U()).optional(),resource_signing_alg_values_supported:E(U()).optional(),resource_name:U().optional(),resource_documentation:U().optional(),resource_policy_uri:U().url().optional(),resource_tos_uri:U().url().optional(),tls_client_certificate_bound_access_tokens:H0().optional(),authorization_details_types_supported:E(U()).optional(),dpop_signing_alg_values_supported:E(U()).optional(),dpop_bound_access_tokens_required:H0().optional()}),IJ=I0({issuer:U(),authorization_endpoint:g0,token_endpoint:g0,registration_endpoint:g0.optional(),scopes_supported:E(U()).optional(),response_types_supported:E(U()),response_modes_supported:E(U()).optional(),grant_types_supported:E(U()).optional(),token_endpoint_auth_methods_supported:E(U()).optional(),token_endpoint_auth_signing_alg_values_supported:E(U()).optional(),service_documentation:g0.optional(),revocation_endpoint:g0.optional(),revocation_endpoint_auth_methods_supported:E(U()).optional(),revocation_endpoint_auth_signing_alg_values_supported:E(U()).optional(),introspection_endpoint:U().optional(),introspection_endpoint_auth_methods_supported:E(U()).optional(),introspection_endpoint_auth_signing_alg_values_supported:E(U()).optional(),code_challenge_methods_supported:E(U()).optional(),client_id_metadata_document_supported:H0().optional()}),xy=I0({issuer:U(),authorization_endpoint:g0,token_endpoint:g0,userinfo_endpoint:g0.optional(),jwks_uri:g0,registration_endpoint:g0.optional(),scopes_supported:E(U()).optional(),response_types_supported:E(U()),response_modes_supported:E(U()).optional(),grant_types_supported:E(U()).optional(),acr_values_supported:E(U()).optional(),subject_types_supported:E(U()),id_token_signing_alg_values_supported:E(U()),id_token_encryption_alg_values_supported:E(U()).optional(),id_token_encryption_enc_values_supported:E(U()).optional(),userinfo_signing_alg_values_supported:E(U()).optional(),userinfo_encryption_alg_values_supported:E(U()).optional(),userinfo_encryption_enc_values_supported:E(U()).optional(),request_object_signing_alg_values_supported:E(U()).optional(),request_object_encryption_alg_values_supported:E(U()).optional(),request_object_encryption_enc_values_supported:E(U()).optional(),token_endpoint_auth_methods_supported:E(U()).optional(),token_endpoint_auth_signing_alg_values_supported:E(U()).optional(),display_values_supported:E(U()).optional(),claim_types_supported:E(U()).optional(),claims_supported:E(U()).optional(),service_documentation:U().optional(),claims_locales_supported:E(U()).optional(),ui_locales_supported:E(U()).optional(),claims_parameter_supported:H0().optional(),request_parameter_supported:H0().optional(),request_uri_parameter_supported:H0().optional(),require_request_uri_registration:H0().optional(),op_policy_uri:g0.optional(),op_tos_uri:g0.optional(),client_id_metadata_document_supported:H0().optional()}),pL=I({...xy.shape,...IJ.pick({code_challenge_methods_supported:!0}).shape}),dL=I({access_token:U(),id_token:U().optional(),token_type:U(),expires_in:OQ.number().optional(),scope:U().optional(),refresh_token:U().optional()}).strip(),iL=I({error:U(),error_description:U().optional(),error_uri:U().optional()}),mL=g0.optional().or(_("").transform(()=>{return})),yy=I({redirect_uris:E(g0),token_endpoint_auth_method:U().optional(),grant_types:E(U()).optional(),response_types:E(U()).optional(),client_name:U().optional(),client_uri:g0.optional(),logo_uri:mL,scope:U().optional(),contacts:E(U()).optional(),tos_uri:mL,policy_uri:U().optional(),jwks_uri:g0.optional(),jwks:mH().optional(),software_id:U().optional(),software_version:U().optional(),software_statement:U().optional()}).strip(),gy=I({client_id:U(),client_secret:U().optional(),client_id_issued_at:J0().optional(),client_secret_expires_at:J0().optional()}).strip(),nL=yy.merge(gy),li=I({error:U(),error_description:U().optional()}).strip(),mi=I({token:U(),token_type_hint:U().optional()}).strip();function oL(Q){let X=typeof Q==="string"?new URL(Q):new URL(Q.href);return X.hash="",X}function rL({requestedResource:Q,configuredResource:X}){let Y=typeof Q==="string"?new URL(Q):new URL(Q.href),W=typeof X==="string"?new URL(X):new URL(X.href);if(Y.origin!==W.origin)return!1;if(Y.pathname.length<W.pathname.length)return!1;let $=Y.pathname.endsWith("/")?Y.pathname:Y.pathname+"/",J=W.pathname.endsWith("/")?W.pathname:W.pathname+"/";return $.startsWith(J)}class R0 extends Error{constructor(Q,X){super(Q);this.errorUri=X,this.name=this.constructor.name}toResponseObject(){let Q={error:this.errorCode,error_description:this.message};if(this.errorUri)Q.error_uri=this.errorUri;return Q}get errorCode(){return this.constructor.errorCode}}class AY extends R0{}AY.errorCode="invalid_request";class J4 extends R0{}J4.errorCode="invalid_client";class G4 extends R0{}G4.errorCode="invalid_grant";class H4 extends R0{}H4.errorCode="unauthorized_client";class DY extends R0{}DY.errorCode="unsupported_grant_type";class LY extends R0{}LY.errorCode="invalid_scope";class OY extends R0{}OY.errorCode="access_denied";class x6 extends R0{}x6.errorCode="server_error";class UY extends R0{}UY.errorCode="temporarily_unavailable";class jY extends R0{}jY.errorCode="unsupported_response_type";class wY extends R0{}wY.errorCode="unsupported_token_type";class MY extends R0{}MY.errorCode="invalid_token";class NY extends R0{}NY.errorCode="method_not_allowed";class bY extends R0{}bY.errorCode="too_many_requests";class B4 extends R0{}B4.errorCode="invalid_client_metadata";class PY extends R0{}PY.errorCode="insufficient_scope";class ZY extends R0{}ZY.errorCode="invalid_target";var tL={[AY.errorCode]:AY,[J4.errorCode]:J4,[G4.errorCode]:G4,[H4.errorCode]:H4,[DY.errorCode]:DY,[LY.errorCode]:LY,[OY.errorCode]:OY,[x6.errorCode]:x6,[UY.errorCode]:UY,[jY.errorCode]:jY,[wY.errorCode]:wY,[MY.errorCode]:MY,[NY.errorCode]:NY,[bY.errorCode]:bY,[B4.errorCode]:B4,[PY.errorCode]:PY,[ZY.errorCode]:ZY};class y6 extends Error{constructor(Q){super(Q??"Unauthorized")}}function fy(Q){return["client_secret_basic","client_secret_post","none"].includes(Q)}var TJ="code",CJ="S256";function hy(Q,X){let Y=Q.client_secret!==void 0;if(X.length===0)return Y?"client_secret_post":"none";if("token_endpoint_auth_method"in Q&&Q.token_endpoint_auth_method&&fy(Q.token_endpoint_auth_method)&&X.includes(Q.token_endpoint_auth_method))return Q.token_endpoint_auth_method;if(Y&&X.includes("client_secret_basic"))return"client_secret_basic";if(Y&&X.includes("client_secret_post"))return"client_secret_post";if(X.includes("none"))return"none";return Y?"client_secret_post":"none"}function uy(Q,X,Y,W){let{client_id:$,client_secret:J}=X;switch(Q){case"client_secret_basic":ly($,J,Y);return;case"client_secret_post":my($,J,W);return;case"none":cy($,W);return;default:throw Error(`Unsupported client authentication method: ${Q}`)}}function ly(Q,X,Y){if(!X)throw Error("client_secret_basic authentication requires a client_secret");let W=btoa(`${Q}:${X}`);Y.set("Authorization",`Basic ${W}`)}function my(Q,X,Y){if(Y.set("client_id",Q),X)Y.set("client_secret",X)}function cy(Q,X){X.set("client_id",Q)}async function sL(Q){let X=Q instanceof Response?Q.status:void 0,Y=Q instanceof Response?await Q.text():Q;try{let W=iL.parse(JSON.parse(Y)),{error:$,error_description:J,error_uri:G}=W;return new(tL[$]||x6)(J||"",G)}catch(W){let $=`${X?`HTTP ${X}: `:""}Invalid OAuth error response: ${W}. Raw body: ${Y}`;return new x6($)}}async function l8(Q,X){try{return await kJ(Q,X)}catch(Y){if(Y instanceof J4||Y instanceof H4)return await Q.invalidateCredentials?.("all"),await kJ(Q,X);else if(Y instanceof G4)return await Q.invalidateCredentials?.("tokens"),await kJ(Q,X);throw Y}}async function kJ(Q,{serverUrl:X,authorizationCode:Y,scope:W,resourceMetadataUrl:$,fetchFn:J}){let G,H;try{if(G=await iy(X,{resourceMetadataUrl:$},J),G.authorization_servers&&G.authorization_servers.length>0)H=G.authorization_servers[0]}catch{}if(!H)H=new URL("/",X);let B=await dy(X,Q,G),z=await ay(H,{fetchFn:J}),K=await Promise.resolve(Q.clientInformation());if(!K){if(Y!==void 0)throw Error("Existing OAuth client information is required when exchanging an authorization code");let L=z?.client_id_metadata_document_supported===!0,O=Q.clientMetadataUrl;if(O&&!py(O))throw new B4(`clientMetadataUrl must be a valid HTTPS URL with a non-root pathname, got: ${O}`);if(L&&O)K={client_id:O},await Q.saveClientInformation?.(K);else{if(!Q.saveClientInformation)throw Error("OAuth client information must be saveable for dynamic registration");let N=await Yg(H,{metadata:z,clientMetadata:Q.clientMetadata,fetchFn:J});await Q.saveClientInformation(N),K=N}}let F=!Q.redirectUrl;if(Y!==void 0||F){let L=await Xg(Q,H,{metadata:z,resource:B,authorizationCode:Y,fetchFn:J});return await Q.saveTokens(L),"AUTHORIZED"}let D=await Q.tokens();if(D?.refresh_token)try{let L=await Qg(H,{metadata:z,clientInformation:K,refreshToken:D.refresh_token,resource:B,addClientAuthentication:Q.addClientAuthentication,fetchFn:J});return await Q.saveTokens(L),"AUTHORIZED"}catch(L){if(!(L instanceof R0)||L instanceof x6);else throw L}let V=Q.state?await Q.state():void 0,{authorizationUrl:A,codeVerifier:q}=await sy(H,{metadata:z,clientInformation:K,state:V,redirectUrl:Q.redirectUrl,scope:W||G?.scopes_supported?.join(" ")||Q.clientMetadata.scope,resource:B});return await Q.saveCodeVerifier(q),await Q.redirectToAuthorization(A),"REDIRECT"}function py(Q){if(!Q)return!1;try{let X=new URL(Q);return X.protocol==="https:"&&X.pathname!=="/"}catch{return!1}}async function dy(Q,X,Y){let W=oL(Q);if(X.validateResourceURL)return await X.validateResourceURL(W,Y?.resource);if(!Y)return;if(!rL({requestedResource:W,configuredResource:Y.resource}))throw Error(`Protected resource ${Y.resource} does not match expected ${W} (or origin)`);return new URL(Y.resource)}function _J(Q){let X=Q.headers.get("WWW-Authenticate");if(!X)return{};let[Y,W]=X.split(" ");if(Y.toLowerCase()!=="bearer"||!W)return{};let $=vJ(Q,"resource_metadata")||void 0,J;if($)try{J=new URL($)}catch{}let G=vJ(Q,"scope")||void 0,H=vJ(Q,"error")||void 0;return{resourceMetadataUrl:J,scope:G,error:H}}function vJ(Q,X){let Y=Q.headers.get("WWW-Authenticate");if(!Y)return null;let W=new RegExp(`${X}=(?:"([^"]+)"|([^\\s,]+))`),$=Y.match(W);if($)return $[1]||$[2];return null}async function iy(Q,X,Y=fetch){let W=await ry(Q,"oauth-protected-resource",Y,{protocolVersion:X?.protocolVersion,metadataUrl:X?.resourceMetadataUrl});if(!W||W.status===404)throw await W?.body?.cancel(),Error("Resource server does not implement OAuth 2.0 Protected Resource Metadata.");if(!W.ok)throw await W.body?.cancel(),Error(`HTTP ${W.status} trying to load well-known OAuth protected resource metadata.`);return cL.parse(await W.json())}async function xJ(Q,X,Y=fetch){try{return await Y(Q,{headers:X})}catch(W){if(W instanceof TypeError)if(X)return xJ(Q,void 0,Y);else return;throw W}}function ny(Q,X="",Y={}){if(X.endsWith("/"))X=X.slice(0,-1);return Y.prependPathname?`${X}/.well-known/${Q}`:`/.well-known/${Q}${X}`}async function aL(Q,X,Y=fetch){return await xJ(Q,{"MCP-Protocol-Version":X},Y)}function oy(Q,X){return!Q||Q.status>=400&&Q.status<500&&X!=="/"}async function ry(Q,X,Y,W){let $=new URL(Q),J=W?.protocolVersion??O6,G;if(W?.metadataUrl)G=new URL(W.metadataUrl);else{let B=ny(X,$.pathname);G=new URL(B,W?.metadataServerUrl??$),G.search=$.search}let H=await aL(G,J,Y);if(!W?.metadataUrl&&oy(H,$.pathname)){let B=new URL(`/.well-known/${X}`,$);H=await aL(B,J,Y)}return H}function ty(Q){let X=typeof Q==="string"?new URL(Q):Q,Y=X.pathname!=="/",W=[];if(!Y)return W.push({url:new URL("/.well-known/oauth-authorization-server",X.origin),type:"oauth"}),W.push({url:new URL("/.well-known/openid-configuration",X.origin),type:"oidc"}),W;let $=X.pathname;if($.endsWith("/"))$=$.slice(0,-1);return W.push({url:new URL(`/.well-known/oauth-authorization-server${$}`,X.origin),type:"oauth"}),W.push({url:new URL(`/.well-known/openid-configuration${$}`,X.origin),type:"oidc"}),W.push({url:new URL(`${$}/.well-known/openid-configuration`,X.origin),type:"oidc"}),W}async function ay(Q,{fetchFn:X=fetch,protocolVersion:Y=O6}={}){let W={"MCP-Protocol-Version":Y,Accept:"application/json"},$=ty(Q);for(let{url:J,type:G}of $){let H=await xJ(J,W,X);if(!H)continue;if(!H.ok){if(await H.body?.cancel(),H.status>=400&&H.status<500)continue;throw Error(`HTTP ${H.status} trying to load ${G==="oauth"?"OAuth":"OpenID provider"} metadata from ${J}`)}if(G==="oauth")return IJ.parse(await H.json());else return pL.parse(await H.json())}return}async function sy(Q,{metadata:X,clientInformation:Y,redirectUrl:W,scope:$,state:J,resource:G}){let H;if(X){if(H=new URL(X.authorization_endpoint),!X.response_types_supported.includes(TJ))throw Error(`Incompatible auth server: does not support response type ${TJ}`);if(X.code_challenge_methods_supported&&!X.code_challenge_methods_supported.includes(CJ))throw Error(`Incompatible auth server: does not support code challenge method ${CJ}`)}else H=new URL("/authorize",Q);let B=await SJ(),z=B.code_verifier,K=B.code_challenge;if(H.searchParams.set("response_type",TJ),H.searchParams.set("client_id",Y.client_id),H.searchParams.set("code_challenge",K),H.searchParams.set("code_challenge_method",CJ),H.searchParams.set("redirect_uri",String(W)),J)H.searchParams.set("state",J);if($)H.searchParams.set("scope",$);if($?.includes("offline_access"))H.searchParams.append("prompt","consent");if(G)H.searchParams.set("resource",G.href);return{authorizationUrl:H,codeVerifier:z}}function ey(Q,X,Y){return new URLSearchParams({grant_type:"authorization_code",code:Q,code_verifier:X,redirect_uri:String(Y)})}async function eL(Q,{metadata:X,tokenRequestParams:Y,clientInformation:W,addClientAuthentication:$,resource:J,fetchFn:G}){let H=X?.token_endpoint?new URL(X.token_endpoint):new URL("/token",Q),B=new Headers({"Content-Type":"application/x-www-form-urlencoded",Accept:"application/json"});if(J)Y.set("resource",J.href);if($)await $(B,Y,H,X);else if(W){let K=X?.token_endpoint_auth_methods_supported??[],F=hy(W,K);uy(F,W,B,Y)}let z=await(G??fetch)(H,{method:"POST",headers:B,body:Y});if(!z.ok)throw await sL(z);return dL.parse(await z.json())}async function Qg(Q,{metadata:X,clientInformation:Y,refreshToken:W,resource:$,addClientAuthentication:J,fetchFn:G}){let H=new URLSearchParams({grant_type:"refresh_token",refresh_token:W}),B=await eL(Q,{metadata:X,tokenRequestParams:H,clientInformation:Y,addClientAuthentication:J,resource:$,fetchFn:G});return{refresh_token:W,...B}}async function Xg(Q,X,{metadata:Y,resource:W,authorizationCode:$,fetchFn:J}={}){let G=Q.clientMetadata.scope,H;if(Q.prepareTokenRequest)H=await Q.prepareTokenRequest(G);if(!H){if(!$)throw Error("Either provider.prepareTokenRequest() or authorizationCode is required");if(!Q.redirectUrl)throw Error("redirectUrl is required for authorization_code flow");let z=await Q.codeVerifier();H=ey($,z,Q.redirectUrl)}let B=await Q.clientInformation();return eL(X,{metadata:Y,tokenRequestParams:H,clientInformation:B??void 0,addClientAuthentication:Q.addClientAuthentication,resource:W,fetchFn:J})}async function Yg(Q,{metadata:X,clientMetadata:Y,fetchFn:W}){let $;if(X){if(!X.registration_endpoint)throw Error("Incompatible auth server: does not support dynamic client registration");$=new URL(X.registration_endpoint)}else $=new URL("/register",Q);let J=await(W??fetch)($,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(Y)});if(!J.ok)throw await sL(J);return nL.parse(await J.json())}class gJ extends Error{constructor(Q,X){super(Q),this.name="ParseError",this.type=X.type,this.field=X.field,this.value=X.value,this.line=X.line}}function yJ(Q){}function QO(Q){if(typeof Q=="function")throw TypeError("`callbacks` must be an object, got a function instead. Did you mean `{onEvent: fn}`?");let{onEvent:X=yJ,onError:Y=yJ,onRetry:W=yJ,onComment:$}=Q,J="",G=!0,H,B="",z="";function K(q){let L=G?q.replace(/^\xEF\xBB\xBF/,""):q,[O,M]=Wg(`${J}${L}`);for(let N of O)F(N);J=M,G=!1}function F(q){if(q===""){V();return}if(q.startsWith(":")){$&&$(q.slice(q.startsWith(": ")?2:1));return}let L=q.indexOf(":");if(L!==-1){let O=q.slice(0,L),M=q[L+1]===" "?2:1,N=q.slice(L+M);D(O,N,q);return}D(q,"",q)}function D(q,L,O){switch(q){case"event":z=L;break;case"data":B=`${B}${L}
50
- `;break;case"id":H=L.includes("\x00")?void 0:L;break;case"retry":/^\d+$/.test(L)?W(parseInt(L,10)):Y(new gJ(`Invalid \`retry\` value: "${L}"`,{type:"invalid-retry",value:L,line:O}));break;default:Y(new gJ(`Unknown field "${q.length>20?`${q.slice(0,20)}…`:q}"`,{type:"unknown-field",field:q,value:L,line:O}));break}}function V(){B.length>0&&X({id:H,event:z||void 0,data:B.endsWith(`
51
- `)?B.slice(0,-1):B}),H=void 0,B="",z=""}function A(q={}){J&&q.consume&&F(J),G=!0,H=void 0,B="",z="",J=""}return{feed:K,reset:A}}function Wg(Q){let X=[],Y="",W=0;for(;W<Q.length;){let $=Q.indexOf("\r",W),J=Q.indexOf(`
52
- `,W),G=-1;if($!==-1&&J!==-1?G=Math.min($,J):$!==-1?$===Q.length-1?G=-1:G=$:J!==-1&&(G=J),G===-1){Y=Q.slice(W);break}else{let H=Q.slice(W,G);X.push(H),W=G+1,Q[W-1]==="\r"&&Q[W]===`
53
- `&&W++}}return[X,Y]}class fJ extends TransformStream{constructor({onError:Q,onRetry:X,onComment:Y}={}){let W;super({start($){W=QO({onEvent:(J)=>{$.enqueue(J)},onError(J){Q==="terminate"?$.error(J):typeof Q=="function"&&Q(J)},onRetry:X,onComment:Y})},transform($){W.feed($)}})}}var $g={initialReconnectionDelay:1000,maxReconnectionDelay:30000,reconnectionDelayGrowFactor:1.5,maxRetries:2};class K9 extends Error{constructor(Q,X){super(`Streamable HTTP error: ${X}`);this.code=Q}}class RY{constructor(Q,X){this._hasCompletedAuthFlow=!1,this._url=Q,this._resourceMetadataUrl=void 0,this._scope=void 0,this._requestInit=X?.requestInit,this._authProvider=X?.authProvider,this._fetch=X?.fetch,this._fetchWithInit=lL(X?.fetch,X?.requestInit),this._sessionId=X?.sessionId,this._reconnectionOptions=X?.reconnectionOptions??$g}async _authThenStart(){if(!this._authProvider)throw new y6("No auth provider");let Q;try{Q=await l8(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})}catch(X){throw this.onerror?.(X),X}if(Q!=="AUTHORIZED")throw new y6;return await this._startOrAuthSse({resumptionToken:void 0})}async _commonHeaders(){let Q={};if(this._authProvider){let Y=await this._authProvider.tokens();if(Y)Q.Authorization=`Bearer ${Y.access_token}`}if(this._sessionId)Q["mcp-session-id"]=this._sessionId;if(this._protocolVersion)Q["mcp-protocol-version"]=this._protocolVersion;let X=qY(this._requestInit?.headers);return new Headers({...Q,...X})}async _startOrAuthSse(Q){let{resumptionToken:X}=Q;try{let Y=await this._commonHeaders();if(Y.set("Accept","text/event-stream"),X)Y.set("last-event-id",X);let W=await(this._fetch??fetch)(this._url,{method:"GET",headers:Y,signal:this._abortController?.signal});if(!W.ok){if(await W.body?.cancel(),W.status===401&&this._authProvider)return await this._authThenStart();if(W.status===405)return;throw new K9(W.status,`Failed to open SSE stream: ${W.statusText}`)}this._handleSseStream(W.body,Q,!0)}catch(Y){throw this.onerror?.(Y),Y}}_getNextReconnectionDelay(Q){if(this._serverRetryMs!==void 0)return this._serverRetryMs;let X=this._reconnectionOptions.initialReconnectionDelay,Y=this._reconnectionOptions.reconnectionDelayGrowFactor,W=this._reconnectionOptions.maxReconnectionDelay;return Math.min(X*Math.pow(Y,Q),W)}_scheduleReconnection(Q,X=0){let Y=this._reconnectionOptions.maxRetries;if(X>=Y){this.onerror?.(Error(`Maximum reconnection attempts (${Y}) exceeded.`));return}let W=this._getNextReconnectionDelay(X);this._reconnectionTimeout=setTimeout(()=>{this._startOrAuthSse(Q).catch(($)=>{this.onerror?.(Error(`Failed to reconnect SSE stream: ${$ instanceof Error?$.message:String($)}`)),this._scheduleReconnection(Q,X+1)})},W)}_handleSseStream(Q,X,Y){if(!Q)return;let{onresumptiontoken:W,replayMessageId:$}=X,J,G=!1,H=!1;(async()=>{try{let z=Q.pipeThrough(new TextDecoderStream).pipeThrough(new fJ({onRetry:(D)=>{this._serverRetryMs=D}})).getReader();while(!0){let{value:D,done:V}=await z.read();if(V)break;if(D.id)J=D.id,G=!0,W?.(D.id);if(!D.data)continue;if(!D.event||D.event==="message")try{let A=v9.parse(JSON.parse(D.data));if(t6(A)){if(H=!0,$!==void 0)A.id=$}this.onmessage?.(A)}catch(A){this.onerror?.(A)}}if((Y||G)&&!H&&this._abortController&&!this._abortController.signal.aborted)this._scheduleReconnection({resumptionToken:J,onresumptiontoken:W,replayMessageId:$},0)}catch(z){if(this.onerror?.(Error(`SSE stream disconnected: ${z}`)),(Y||G)&&!H&&this._abortController&&!this._abortController.signal.aborted)try{this._scheduleReconnection({resumptionToken:J,onresumptiontoken:W,replayMessageId:$},0)}catch(D){this.onerror?.(Error(`Failed to reconnect: ${D instanceof Error?D.message:String(D)}`))}}})()}async start(){if(this._abortController)throw Error("StreamableHTTPClientTransport already started! If using Client class, note that connect() calls start() automatically.");this._abortController=new AbortController}async finishAuth(Q){if(!this._authProvider)throw new y6("No auth provider");if(await l8(this._authProvider,{serverUrl:this._url,authorizationCode:Q,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new y6("Failed to authorize")}async close(){if(this._reconnectionTimeout)clearTimeout(this._reconnectionTimeout),this._reconnectionTimeout=void 0;this._abortController?.abort(),this.onclose?.()}async send(Q,X){try{let{resumptionToken:Y,onresumptiontoken:W}=X||{};if(Y){this._startOrAuthSse({resumptionToken:Y,replayMessageId:k4(Q)?Q.id:void 0}).catch((F)=>this.onerror?.(F));return}let $=await this._commonHeaders();$.set("content-type","application/json"),$.set("accept","application/json, text/event-stream");let J={...this._requestInit,method:"POST",headers:$,body:JSON.stringify(Q),signal:this._abortController?.signal},G=await(this._fetch??fetch)(this._url,J),H=G.headers.get("mcp-session-id");if(H)this._sessionId=H;if(!G.ok){let F=await G.text().catch(()=>null);if(G.status===401&&this._authProvider){if(this._hasCompletedAuthFlow)throw new K9(401,"Server returned 401 after successful authentication");let{resourceMetadataUrl:D,scope:V}=_J(G);if(this._resourceMetadataUrl=D,this._scope=V,await l8(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetchWithInit})!=="AUTHORIZED")throw new y6;return this._hasCompletedAuthFlow=!0,this.send(Q)}if(G.status===403&&this._authProvider){let{resourceMetadataUrl:D,scope:V,error:A}=_J(G);if(A==="insufficient_scope"){let q=G.headers.get("WWW-Authenticate");if(this._lastUpscopingHeader===q)throw new K9(403,"Server returned 403 after trying upscoping");if(V)this._scope=V;if(D)this._resourceMetadataUrl=D;if(this._lastUpscopingHeader=q??void 0,await l8(this._authProvider,{serverUrl:this._url,resourceMetadataUrl:this._resourceMetadataUrl,scope:this._scope,fetchFn:this._fetch})!=="AUTHORIZED")throw new y6;return this.send(Q)}}throw new K9(G.status,`Error POSTing to endpoint: ${F}`)}if(this._hasCompletedAuthFlow=!1,this._lastUpscopingHeader=void 0,G.status===202){if(await G.body?.cancel(),G3(Q))this._startOrAuthSse({resumptionToken:void 0}).catch((F)=>this.onerror?.(F));return}let z=(Array.isArray(Q)?Q:[Q]).filter((F)=>("method"in F)&&("id"in F)&&F.id!==void 0).length>0,K=G.headers.get("content-type");if(z)if(K?.includes("text/event-stream"))this._handleSseStream(G.body,{onresumptiontoken:W},!1);else if(K?.includes("application/json")){let F=await G.json(),D=Array.isArray(F)?F.map((V)=>v9.parse(V)):[v9.parse(F)];for(let V of D)this.onmessage?.(V)}else throw await G.body?.cancel(),new K9(-1,`Unexpected content type: ${K}`);else await G.body?.cancel()}catch(Y){throw this.onerror?.(Y),Y}}get sessionId(){return this._sessionId}async terminateSession(){if(!this._sessionId)return;try{let Q=await this._commonHeaders(),X={...this._requestInit,method:"DELETE",headers:Q,signal:this._abortController?.signal},Y=await(this._fetch??fetch)(this._url,X);if(await Y.body?.cancel(),!Y.ok&&Y.status!==405)throw new K9(Y.status,`Failed to terminate session: ${Y.statusText}`);this._sessionId=void 0}catch(Q){throw this.onerror?.(Q),Q}}setProtocolVersion(Q){this._protocolVersion=Q}get protocolVersion(){return this._protocolVersion}async resumeStream(Q,X){await this._startOrAuthSse({resumptionToken:Q,onresumptiontoken:X?.onresumptiontoken})}}var Jg=1000,Gg=180000,Hg=2,Bg=0.1,XO=120000,zg=0.1,Kg=60000,Fg=3;class hJ{name;url;onStatusChange;onNotification;onLog;onSamplingRequest;onElicitationRequest;onReconnecting;onReconnected;onHealthDegraded;onHealthRestored;client=null;transport=null;status="disconnected";errorMessage;capabilities;isClosing=!1;reconnectAttempt=0;reconnectTimeoutHandle=null;nextRetryMs=0;isReconnecting=!1;healthCheckIntervalHandle=null;consecutiveHealthFailures=0;healthStatus="healthy";constructor(Q){this.name=Q.name,this.url=Q.url,this.onStatusChange=Q.onStatusChange,this.onNotification=Q.onNotification,this.onLog=Q.onLog,this.onSamplingRequest=Q.onSamplingRequest,this.onElicitationRequest=Q.onElicitationRequest,this.onReconnecting=Q.onReconnecting,this.onReconnected=Q.onReconnected,this.onHealthDegraded=Q.onHealthDegraded,this.onHealthRestored=Q.onHealthRestored}getInfo(){let Q={name:this.name,url:this.url,status:this.status};if(this.errorMessage!==void 0)Q.error=this.errorMessage;if(this.capabilities!==void 0)Q.capabilities=this.capabilities;return Q}getName(){return this.name}getStatus(){return this.status}isConnected(){return this.status==="connected"}getReconnectionState(){if(this.status!=="reconnecting")return null;return{attempt:this.reconnectAttempt,nextRetryMs:this.nextRetryMs}}getHealthStatus(){return this.healthStatus}getConsecutiveHealthFailures(){return this.consecutiveHealthFailures}async connect(){if(this.status==="connected"||this.status==="connecting")return;this.setStatus("connecting");try{this.transport=new RY(new URL(this.url)),this.client=new VY({name:"emceepee",version:"0.1.0"},{capabilities:{sampling:{},elicitation:{form:{}}}}),this.setupNotificationHandler(),this.transport.onclose=()=>{if(!this.isClosing)this.handleUnexpectedDisconnect()},this.transport.onerror=(X)=>{if((X.name==="AbortError"||X.message.includes("AbortError"))&&(this.isClosing||this.status==="disconnected"))return;this.errorMessage=X.message,this.handleUnexpectedDisconnect()},await this.client.connect(this.transport);let Q=this.client.getServerCapabilities();this.capabilities={tools:Q?.tools!==void 0,resources:Q?.resources!==void 0,prompts:Q?.prompts!==void 0,resourceTemplates:Q?.resources!==void 0},this.setStatus("connected"),this.startHealthChecks()}catch(Q){let X=Q instanceof Error?Q.message:String(Q);throw this.setStatus("error",X),Q}}async disconnect(){if(this.isClosing=!0,this.stopHealthChecks(),this.cancelReconnection(),this.transport)try{await this.transport.close()}catch{}this.client=null,this.transport=null,this.isClosing=!1,this.setStatus("disconnected")}async forceReconnect(){if(this.stopHealthChecks(),this.cancelReconnection(),this.transport){this.isClosing=!0;try{await this.transport.close()}catch{}this.isClosing=!1}this.client=null,this.transport=null,this.reconnectAttempt=0,this.nextRetryMs=0,this.consecutiveHealthFailures=0,this.healthStatus="healthy",await this.connect()}cancelReconnection(){if(this.reconnectTimeoutHandle)clearTimeout(this.reconnectTimeoutHandle),this.reconnectTimeoutHandle=null;this.isReconnecting=!1}async listTools(){let Q=this.getConnectedClient();if(!this.capabilities?.tools)return[];return(await Q.listTools()).tools}async callTool(Q,X={}){return await this.getConnectedClient().callTool({name:Q,arguments:X})}async listResources(){let Q=this.getConnectedClient();if(!this.capabilities?.resources)return[];return(await Q.listResources()).resources}async listResourceTemplates(){let Q=this.getConnectedClient();if(!this.capabilities?.resourceTemplates)return[];return(await Q.listResourceTemplates()).resourceTemplates}async readResource(Q){return await this.getConnectedClient().readResource({uri:Q})}async listPrompts(){let Q=this.getConnectedClient();if(!this.capabilities?.prompts)return[];return(await Q.listPrompts()).prompts}async getPrompt(Q,X={}){return await this.getConnectedClient().getPrompt({name:Q,arguments:X})}setupNotificationHandler(){if(!this.client)return;this.client.setNotificationHandler(l4,()=>{this.emitNotification("notifications/tools/list_changed")}),this.client.setNotificationHandler(h4,()=>{this.emitNotification("notifications/resources/list_changed")}),this.client.setNotificationHandler(X5,(Q)=>{this.emitNotification("notifications/resources/updated",Q.params)}),this.client.setNotificationHandler(u4,()=>{this.emitNotification("notifications/prompts/list_changed")}),this.client.setNotificationHandler(K5,(Q)=>{if(this.onLog)this.onLog({server:this.name,timestamp:new Date,level:Q.params.level,logger:Q.params.logger,data:Q.params.data})}),this.client.setRequestHandler(c4,(Q)=>{return new Promise((X,Y)=>{if(this.onSamplingRequest)this.onSamplingRequest({id:crypto.randomUUID(),server:this.name,timestamp:new Date,params:Q.params,resolve:X,reject:Y});else Y(Error("Sampling not supported: no handler registered"))})}),this.client.setRequestHandler(d4,(Q)=>{return new Promise((X,Y)=>{if(this.onElicitationRequest)this.onElicitationRequest({id:crypto.randomUUID(),server:this.name,timestamp:new Date,params:Q.params,resolve:X,reject:Y});else Y(Error("Elicitation not supported: no handler registered"))})})}emitNotification(Q,X){if(this.onNotification!==void 0)this.onNotification({server:this.name,timestamp:new Date,method:Q,params:X})}handleUnexpectedDisconnect(){if(this.isReconnecting||this.isClosing)return;this.stopHealthChecks(),this.client=null,this.transport=null,this.isReconnecting=!0,this.reconnectAttempt=0,this.setStatus("reconnecting",this.errorMessage),this.scheduleReconnection()}scheduleReconnection(){if(this.isClosing)return;this.reconnectAttempt++;let Q=this.calculateBackoff(this.reconnectAttempt);if(this.nextRetryMs=Q,this.onReconnecting)this.onReconnecting(this.reconnectAttempt,Q);this.reconnectTimeoutHandle=setTimeout(()=>{this.attemptReconnection()},Q)}async attemptReconnection(){if(this.isClosing)return;try{this.transport=new RY(new URL(this.url)),this.client=new VY({name:"emceepee",version:"0.1.0"},{capabilities:{sampling:{},elicitation:{form:{}}}}),this.setupNotificationHandler(),this.transport.onclose=()=>{if(!this.isClosing)this.handleUnexpectedDisconnect()},this.transport.onerror=(Y)=>{if((Y.name==="AbortError"||Y.message.includes("AbortError"))&&(this.isClosing||this.status==="disconnected"))return;this.errorMessage=Y.message,this.handleUnexpectedDisconnect()},await this.client.connect(this.transport);let Q=this.client.getServerCapabilities();this.capabilities={tools:Q?.tools!==void 0,resources:Q?.resources!==void 0,prompts:Q?.prompts!==void 0,resourceTemplates:Q?.resources!==void 0};let X=this.reconnectAttempt;if(this.reconnectAttempt=0,this.nextRetryMs=0,this.isReconnecting=!1,this.consecutiveHealthFailures=0,this.healthStatus="healthy",this.setStatus("connected"),this.onReconnected)this.onReconnected(X);this.startHealthChecks()}catch(Q){this.client=null,this.transport=null,this.errorMessage=Q instanceof Error?Q.message:String(Q),this.scheduleReconnection()}}calculateBackoff(Q){let X=Jg*Math.pow(Hg,Q-1),Y=Math.min(X,Gg),W=Y*Bg*(Math.random()*2-1);return Math.round(Y+W)}startHealthChecks(){this.stopHealthChecks();let Q=()=>{let X=XO*zg*(Math.random()*2-1),Y=Math.round(XO+X);this.healthCheckIntervalHandle=setTimeout(()=>{this.performHealthCheck(),Q()},Y)};Q()}stopHealthChecks(){if(this.healthCheckIntervalHandle)clearTimeout(this.healthCheckIntervalHandle),this.healthCheckIntervalHandle=null}async performHealthCheck(){if(!this.client||!this.isConnected())return;try{let Q=new AbortController,X=setTimeout(()=>{Q.abort()},Kg);try{if(await this.client.listTools(),clearTimeout(X),this.consecutiveHealthFailures>0){let Y=this.healthStatus==="degraded";if(this.consecutiveHealthFailures=0,this.healthStatus="healthy",Y&&this.onHealthRestored)this.onHealthRestored()}}catch(Y){throw clearTimeout(X),Y}}catch(Q){this.consecutiveHealthFailures++;let X=Q instanceof Error?Q.message:String(Q);if(this.consecutiveHealthFailures>=Fg&&this.healthStatus!=="degraded"){if(this.healthStatus="degraded",this.onHealthDegraded)this.onHealthDegraded(this.consecutiveHealthFailures,X)}}}setStatus(Q,X){if(this.status=Q,Q==="error"&&X!==void 0)this.errorMessage=X;else this.errorMessage=void 0;if(this.onStatusChange!==void 0)this.onStatusChange(Q,X)}getConnectedClient(){if(!this.isConnected()||!this.client)throw Error(`Client '${this.name}' is not connected`);return this.client}}var Vg={sessionTimeoutMs:1800000,cleanupIntervalMs:300000};class uJ{sessions=new Map;serverConfigs;config;logger;cleanupIntervalHandle=null;constructor(Q={}){this.config={...Vg,...Q},this.logger=Q.logger;let X={logger:Q.logger};this.serverConfigs=new wJ(X),this.startCleanupInterval()}async createSession(){let Q=B6(),X=new ZJ(Q,this.config.sessionStateConfig,this.logger);this.sessions.set(Q,X),this.logger?.info("session_created",{sessionId:Q});let Y=this.serverConfigs.listConfigs();for(let W of Y)try{await this.connectSessionToServer(X,W)}catch($){this.logger?.warn("session_auto_connect_failed",{sessionId:Q,server:W.name,error:$ instanceof Error?$.message:String($)})}return X}getSession(Q){return this.sessions.get(Q)}touchSession(Q){this.sessions.get(Q)?.touch()}async destroySession(Q){let X=this.sessions.get(Q);if(!X)return;this.logger?.info("session_destroying",{sessionId:Q}),await X.cleanup(),this.sessions.delete(Q),this.logger?.info("session_destroyed",{sessionId:Q})}async addServer(Q,X,Y){let W=this.sessions.get(Q);if(!W)throw Error(`Session '${Q}' not found`);let $=this.serverConfigs.addConfig(X,Y,Q),J=this.serverConfigs.getConfig(X);if(!J)throw Error(`Failed to add server config for '${X}'`);let G=await this.connectSessionToServer(W,J);if($){for(let[H,B]of this.sessions)if(H!==Q)B.eventSystem.addEvent("server_added",X,{name:X,url:Y,addedBy:Q})}return G}async removeServer(Q,X){if(this.logger?.debug("removeServer_start",{sessionId:Q,serverName:X}),!this.serverConfigs.removeConfig(X))throw this.logger?.debug("removeServer_not_found",{sessionId:Q,serverName:X}),Error(`Server '${X}' not found`);for(let[W,$]of this.sessions)this.logger?.debug("removeServer_disconnecting_session",{sessionId:W,serverName:X,hasConnection:$.getConnection(X)!==void 0}),await this.disconnectSessionFromServer($,X),$.eventSystem.addEvent("server_removed",X,{name:X,removedBy:Q});this.logger?.debug("removeServer_complete",{sessionId:Q,serverName:X})}listServers(Q){let X=this.sessions.get(Q);return this.serverConfigs.listConfigs().map((W)=>{let $=X?.getConnection(W.name),J={name:W.name,url:W.url,connected:$?.status==="connected",status:$?.status??"not_connected",connectedAt:$?.connectedAt,lastError:$?.lastError};if($?.status==="reconnecting"){let G=$.client.getReconnectionState();if(G)J.reconnectAttempt=G.attempt,J.nextRetryMs=G.nextRetryMs}if($?.status==="connected"){J.healthStatus=$.client.getHealthStatus();let G=$.client.getConsecutiveHealthFailures();if(G>0)J.consecutiveHealthFailures=G}return J})}async reconnectServer(Q,X){let Y=this.sessions.get(Q);if(!Y)throw Error(`Session '${Q}' not found`);let W=this.serverConfigs.getConfig(X);if(!W)throw Error(`Server '${X}' not found`);let $=Y.getConnection(X);if(!$){await this.connectSessionToServer(Y,W);return}this.handleBackendDisconnect(Y,X),await $.client.forceReconnect(),Y.setConnectionStatus(X,"connected"),Y.eventSystem.addEvent("server_reconnected",X,{name:X,attemptsTaken:0,forced:!0}),this.logger?.info("session_server_force_reconnected",{sessionId:Y.sessionId,server:X})}async getOrCreateConnection(Q,X){let Y=this.sessions.get(Q);if(!Y)throw Error(`Session '${Q}' not found`);let W=Y.getConnection(X);if(W?.status==="connected")return W.client;let $=this.serverConfigs.getConfig(X);if(!$)throw Error(`Server '${X}' not found`);return(await this.connectSessionToServer(Y,$)).client}getConnectedClient(Q,X){let Y=this.sessions.get(Q);if(!Y)return;let W=Y.getConnection(X);if(W?.status==="connected")return W.client;return}async connectSessionToServer(Q,X){let Y=Q.backendConnections.get(X.name);if(Y?.status==="connected")return Y;if(Y?.status==="connecting")throw Error(`Already connecting to '${X.name}'`);let W=new hJ({name:X.name,url:X.url,onStatusChange:($,J)=>{Q.setConnectionStatus(X.name,$,J)},onNotification:($)=>{Q.bufferManager.addNotification($)},onLog:($)=>{Q.bufferManager.addLog($)},onSamplingRequest:($)=>{Q.pendingRequests.addSamplingRequest($.server,$.params,$.resolve,$.reject)},onElicitationRequest:($)=>{Q.pendingRequests.addElicitationRequest($.server,$.params,$.resolve,$.reject)},onReconnecting:($,J)=>{if($===1)this.handleBackendDisconnect(Q,X.name);Q.eventSystem.addEvent("server_reconnecting",X.name,{name:X.name,attempt:$,nextRetryMs:J}),this.logger?.debug("session_server_reconnecting",{sessionId:Q.sessionId,server:X.name,attempt:$,nextRetryMs:J})},onReconnected:($)=>{Q.setConnectionStatus(X.name,"connected"),Q.eventSystem.addEvent("server_reconnected",X.name,{name:X.name,attemptsTaken:$}),this.logger?.info("session_server_reconnected",{sessionId:Q.sessionId,server:X.name,attemptsTaken:$})},onHealthDegraded:($,J)=>{Q.eventSystem.addEvent("server_health_degraded",X.name,{name:X.name,consecutiveFailures:$,lastError:J}),this.logger?.warn("session_server_health_degraded",{sessionId:Q.sessionId,server:X.name,consecutiveFailures:$,lastError:J})},onHealthRestored:()=>{Q.eventSystem.addEvent("server_health_restored",X.name,{name:X.name}),this.logger?.info("session_server_health_restored",{sessionId:Q.sessionId,server:X.name})}});Q.addConnection(X.name,W);try{await W.connect(),Q.setConnectionStatus(X.name,"connected"),Q.eventSystem.addEvent("server_connected",X.name,{name:X.name,capabilities:W.getInfo().capabilities}),this.logger?.info("session_server_connected",{sessionId:Q.sessionId,server:X.name});let $=Q.getConnection(X.name);if(!$)throw Error("Connection not found after connect");return $}catch($){let J=$ instanceof Error?$.message:String($);throw Q.setConnectionStatus(X.name,"error",J),this.logger?.warn("session_server_connect_failed",{sessionId:Q.sessionId,server:X.name,error:J}),$}}async disconnectSessionFromServer(Q,X){let Y=Q.getConnection(X);if(!Y){this.logger?.debug("disconnectSessionFromServer_no_connection",{sessionId:Q.sessionId,serverName:X});return}this.logger?.debug("disconnectSessionFromServer_start",{sessionId:Q.sessionId,serverName:X,connectionStatus:Y.status});let W=Q.taskManager.getTasksForServer(X);for(let $ of W)if($.status==="working")Q.taskManager.failTask($.taskId,"Server removed");Q.pendingRequests.rejectRequestsForServer(X,"Server removed");try{this.logger?.debug("disconnectSessionFromServer_calling_disconnect",{sessionId:Q.sessionId,serverName:X}),await Y.client.disconnect(),this.logger?.debug("disconnectSessionFromServer_disconnect_complete",{sessionId:Q.sessionId,serverName:X})}catch($){this.logger?.debug("disconnectSessionFromServer_disconnect_error",{sessionId:Q.sessionId,serverName:X,error:$ instanceof Error?$.message:String($)})}Q.removeConnection(X),this.logger?.debug("disconnectSessionFromServer_complete",{sessionId:Q.sessionId,serverName:X})}handleBackendDisconnect(Q,X){let Y=Q.taskManager.getTasksForServer(X);for(let W of Y)if(W.status==="working")Q.taskManager.failTask(W.taskId,"Server disconnected");Q.pendingRequests.rejectRequestsForServer(X,"Server disconnected"),Q.eventSystem.addEvent("server_disconnected",X,{name:X}),this.logger?.info("session_server_disconnected",{sessionId:Q.sessionId,server:X})}startCleanupInterval(){this.cleanupIntervalHandle=setInterval(()=>{this.runSessionCleanup()},this.config.cleanupIntervalMs)}runSessionCleanup(){let Q=Date.now(),X=[];for(let[Y,W]of this.sessions)if(Q-W.lastActivityAt.getTime()>=this.config.sessionTimeoutMs)X.push(Y);for(let Y of X)this.logger?.info("session_timeout_cleanup",{sessionId:Y}),this.destroySession(Y)}async shutdown(){if(this.logger?.info("session_manager_shutdown_start",{sessionCount:this.sessions.size}),this.cleanupIntervalHandle)clearInterval(this.cleanupIntervalHandle),this.cleanupIntervalHandle=null;for(let Q of Array.from(this.sessions.keys()))await this.destroySession(Q);this.logger?.info("session_manager_shutdown_complete",{})}getServerConfigs(){return this.serverConfigs}listSessionIds(){return Array.from(this.sessions.keys())}get sessionCount(){return this.sessions.size}}var YO={debug:0,info:1,warn:2,error:3};function WO(){let Q=()=>{};return{debug:Q,info:Q,warn:Q,error:Q}}function $O(Q="info",X){let Y=YO[Q],W=lJ("fs"),$=(J,G,H)=>{if(YO[J]<Y)return;let B=new Date().toISOString(),z=H?` ${JSON.stringify(H)}`:"",K=`[${B}] ${J.toUpperCase()} ${G}${z}
54
- `;try{W.appendFileSync(X,K)}catch(F){process.stderr.write(`Failed to write to log file: ${String(F)}
55
- `),process.stderr.write(K)}};return{debug:(J,G)=>{$("debug",J,G)},info:(J,G)=>{$("info",J,G)},warn:(J,G)=>{$("warn",J,G)},error:(J,G)=>{$("error",J,G)}}}function Ag(){let Q=process.argv.slice(2),X,Y="info",W;for(let $=0;$<Q.length;$++){let J=Q[$];if(J==="--config"&&Q[$+1])X=Q[$+1],$++;else if(J?.startsWith("--config="))X=J.slice(9);else if(J==="--log-level"&&Q[$+1])Y=Q[$+1],$++;else if(J?.startsWith("--log-level="))Y=J.slice(12);else if(J==="--log-file"&&Q[$+1])W=Q[$+1],$++;else if(J?.startsWith("--log-file="))W=J.slice(11)}return{configPath:X,logLevel:Y,logFile:W}}function Dg(Q){let X=qg(Q,"utf-8");return JSON.parse(X)}function E0(Q){return Q}function $0(Q){return{content:[{type:"text",text:Q}],isError:!0}}function o0(Q){return{content:[{type:"text",text:Q}]}}function l0(Q){return{content:[{type:"text",text:JSON.stringify(Q,null,2)}]}}function Lg(Q,X,Y){Q.registerTool("add_server",{description:"Connect to a backend MCP server. The server will be added to the shared configuration and this session will connect to it.",inputSchema:{name:c.string().describe("Unique name for this server"),url:c.string().url().describe("HTTP URL of the MCP server endpoint")}},async({name:W,url:$})=>{let J=E0(Y());if(!J)return $0("Session not initialized");try{let H=(await X.addServer(J.sessionId,W,$)).client.getInfo().capabilities;return o0(`Connected to server '${W}' at ${$}
56
- Capabilities: ${JSON.stringify(H)}`)}catch(G){let H=G instanceof Error?G.message:String(G);return $0(`Failed to add server: ${H}`)}}),Q.registerTool("remove_server",{description:"Disconnect from a backend MCP server and remove it from the configuration. This disconnects ALL sessions from the server.",inputSchema:{name:c.string().describe("Name of the server to remove")}},async({name:W})=>{let $=E0(Y());if(!$)return $0("Session not initialized");try{return await X.removeServer($.sessionId,W),o0(`Disconnected from server '${W}'`)}catch(J){let G=J instanceof Error?J.message:String(J);return $0(`Failed to remove server: ${G}`)}}),Q.registerTool("list_servers",{description:"List all configured backend MCP servers with their connection status for this session",inputSchema:{}},()=>{let W=E0(Y());if(!W)return $0("Session not initialized");let $=X.listServers(W.sessionId);if($.length===0)return o0("No servers configured");let J=$.map((G)=>({name:G.name,url:G.url,status:G.status,connected:G.connected,connectedAt:G.connectedAt?.toISOString(),lastError:G.lastError}));return l0(J)}),Q.registerTool("list_tools",{description:"List tools available from backend servers",inputSchema:{server:c.string().default(".*").describe("Regex pattern to match server names (default: .*)"),tool:c.string().default(".*").describe("Regex pattern to match tool names (default: .*)")}},async({server:W,tool:$})=>{let J=E0(Y());if(!J)return $0("Session not initialized");try{let G=new RegExp(W),H=new RegExp($),B=[];for(let z of J.listConnectedServers()){if(!G.test(z))continue;let K=J.getConnection(z);if(K?.status!=="connected")continue;try{let F=await K.client.listTools();for(let D of F)if(H.test(D.name))B.push({server:z,name:D.name,description:D.description,inputSchema:D.inputSchema})}catch{}}if(B.length===0)return o0("No tools available");return l0(B)}catch(G){let H=G instanceof Error?G.message:String(G);return $0(`Failed to list tools: ${H}`)}}),Q.registerTool("execute_tool",{description:"Execute a tool on a specific backend server",inputSchema:{server:c.string().describe("Name of the backend server"),tool:c.string().describe("Name of the tool to execute"),args:c.record(c.unknown()).optional().describe("Arguments to pass to the tool")}},async({server:W,tool:$,args:J})=>{let G=E0(Y());if(!G)return $0("Session not initialized");try{let B=await(await X.getOrCreateConnection(G.sessionId,W)).callTool($,J??{});return{content:B.content,isError:B.isError}}catch(H){let B=H instanceof Error?H.message:String(H);return $0(`Failed to execute tool: ${B}`)}}),Q.registerTool("list_resources",{description:"List resources available from backend servers",inputSchema:{server:c.string().optional().describe("Server name to filter by (omit for all servers)")}},async({server:W})=>{let $=E0(Y());if(!$)return $0("Session not initialized");try{let J=[],G=W?[W]:$.listConnectedServers();for(let H of G){let B=$.getConnection(H);if(B?.status!=="connected")continue;try{let z=await B.client.listResources();for(let K of z)J.push({server:H,uri:K.uri,name:K.name,description:K.description,mimeType:K.mimeType})}catch{}}if(J.length===0)return o0("No resources available");return l0(J)}catch(J){let G=J instanceof Error?J.message:String(J);return $0(`Failed to list resources: ${G}`)}}),Q.registerTool("list_resource_templates",{description:"List resource templates available from backend servers. Templates define parameterized resources that can be read with specific arguments.",inputSchema:{server:c.string().optional().describe("Server name to filter by (omit for all servers)")}},async({server:W})=>{let $=E0(Y());if(!$)return $0("Session not initialized");try{let J=[],G=W?[W]:$.listConnectedServers();for(let H of G){let B=$.getConnection(H);if(B?.status!=="connected")continue;try{let z=await B.client.listResourceTemplates();for(let K of z)J.push({server:H,uriTemplate:K.uriTemplate,name:K.name,description:K.description,mimeType:K.mimeType})}catch{}}if(J.length===0)return o0("No resource templates available");return l0(J)}catch(J){let G=J instanceof Error?J.message:String(J);return $0(`Failed to list resource templates: ${G}`)}}),Q.registerTool("read_resource",{description:"Read a specific resource from a backend server",inputSchema:{server:c.string().describe("Name of the backend server"),uri:c.string().describe("URI of the resource to read")}},async({server:W,uri:$})=>{let J=E0(Y());if(!J)return $0("Session not initialized");try{let B=(await(await X.getOrCreateConnection(J.sessionId,W)).readResource($)).contents.map((z)=>{if("text"in z&&typeof z.text==="string")return{uri:z.uri,mimeType:z.mimeType,text:z.text};else if("blob"in z&&typeof z.blob==="string")return{uri:z.uri,mimeType:z.mimeType,blob:`[base64 data, ${String(z.blob.length)} chars]`};return z});return l0({contents:B})}catch(G){let H=G instanceof Error?G.message:String(G);return $0(`Failed to read resource: ${H}`)}}),Q.registerTool("list_prompts",{description:"List prompts available from backend servers",inputSchema:{server:c.string().optional().describe("Server name to filter by (omit for all servers)")}},async({server:W})=>{let $=E0(Y());if(!$)return $0("Session not initialized");try{let J=[],G=W?[W]:$.listConnectedServers();for(let H of G){let B=$.getConnection(H);if(B?.status!=="connected")continue;try{let z=await B.client.listPrompts();for(let K of z)J.push({server:H,name:K.name,description:K.description,arguments:K.arguments})}catch{}}if(J.length===0)return o0("No prompts available");return l0(J)}catch(J){let G=J instanceof Error?J.message:String(J);return $0(`Failed to list prompts: ${G}`)}}),Q.registerTool("get_prompt",{description:"Get a specific prompt from a backend server",inputSchema:{server:c.string().describe("Name of the backend server"),name:c.string().describe("Name of the prompt to get"),arguments:c.record(c.string()).optional().describe("Arguments to pass to the prompt")}},async({server:W,name:$,arguments:J})=>{let G=E0(Y());if(!G)return $0("Session not initialized");try{let B=await(await X.getOrCreateConnection(G.sessionId,W)).getPrompt($,J??{});return l0(B)}catch(H){let B=H instanceof Error?H.message:String(H);return $0(`Failed to get prompt: ${B}`)}}),Q.registerTool("get_notifications",{description:"Get and clear buffered notifications from backend servers for this session",inputSchema:{}},()=>{let W=E0(Y());if(!W)return $0("Session not initialized");let $=W.bufferManager.getAndClearNotifications();if($.length===0)return o0("No notifications");let J=$.map((G)=>({server:G.server,method:G.method,timestamp:G.timestamp.toISOString(),params:G.params}));return l0(J)}),Q.registerTool("get_logs",{description:"Get and clear buffered log messages from backend servers for this session",inputSchema:{}},()=>{let W=E0(Y());if(!W)return $0("Session not initialized");let $=W.bufferManager.getAndClearLogs();if($.length===0)return o0("No log messages");let J=$.map((G)=>({server:G.server,level:G.level,logger:G.logger,timestamp:G.timestamp.toISOString(),data:G.data}));return l0(J)}),Q.registerTool("get_sampling_requests",{description:"Get pending sampling requests from backend servers that need LLM responses. These are requests from MCP servers asking for LLM completions.",inputSchema:{}},()=>{let W=E0(Y());if(!W)return $0("Session not initialized");let $=W.pendingRequests.getPendingSamplingRequests();if($.length===0)return o0("No pending sampling requests");let J=$.map((G)=>({requestId:G.requestId,server:G.server,timestamp:G.timestamp.toISOString(),maxTokens:G.params.maxTokens,systemPrompt:G.params.systemPrompt,temperature:G.params.temperature,messages:G.params.messages,modelPreferences:G.params.modelPreferences,tools:G.params.tools?.map((H)=>({name:H.name,description:H.description}))}));return l0(J)}),Q.registerTool("respond_to_sampling",{description:"Respond to a pending sampling request with an LLM result",inputSchema:{request_id:c.string().describe("The ID of the sampling request to respond to"),role:c.enum(["user","assistant"]).describe("The role of the message"),content:c.string().describe("The text content of the response"),model:c.string().describe("The model that generated the response"),stop_reason:c.enum(["endTurn","maxTokens","stopSequence","toolUse"]).optional().describe("Why the model stopped generating")}},({request_id:W,role:$,content:J,model:G,stop_reason:H})=>{let B=E0(Y());if(!B)return $0("Session not initialized");try{return B.pendingRequests.respondToSampling(W,{role:$,content:{type:"text",text:J},model:G,stopReason:H}),o0(`Responded to sampling request '${W}'`)}catch(z){let K=z instanceof Error?z.message:String(z);return $0(`Failed to respond: ${K}`)}}),Q.registerTool("get_elicitations",{description:"Get pending elicitation requests from backend servers that need user input. These are requests from MCP servers asking for form data or user confirmation.",inputSchema:{}},()=>{let W=E0(Y());if(!W)return $0("Session not initialized");let $=W.pendingRequests.getPendingElicitationRequests();if($.length===0)return o0("No pending elicitation requests");let J=$.map((G)=>({requestId:G.requestId,server:G.server,timestamp:G.timestamp.toISOString(),mode:"mode"in G.params?G.params.mode:"form",message:G.params.message,requestedSchema:"requestedSchema"in G.params?G.params.requestedSchema:void 0,elicitationId:"elicitationId"in G.params?G.params.elicitationId:void 0,url:"url"in G.params?G.params.url:void 0}));return l0(J)}),Q.registerTool("respond_to_elicitation",{description:"Respond to a pending elicitation request with user input",inputSchema:{request_id:c.string().describe("The ID of the elicitation request to respond to"),action:c.enum(["accept","decline","cancel"]).describe("The user's action: accept (with content), decline, or cancel"),content:c.record(c.union([c.string(),c.number(),c.boolean(),c.array(c.string())])).optional().describe("The form field values (required if action is 'accept' for form mode)")}},({request_id:W,action:$,content:J})=>{let G=E0(Y());if(!G)return $0("Session not initialized");try{return G.pendingRequests.respondToElicitation(W,{action:$,content:J}),o0(`Responded to elicitation request '${W}' with action '${$}'`)}catch(H){let B=H instanceof Error?H.message:String(H);return $0(`Failed to respond: ${B}`)}}),Q.registerTool("await_activity",{description:"Wait for activity (events, pending requests) or timeout. Use this to poll for changes efficiently instead of repeatedly calling get_* tools.",inputSchema:{timeout_ms:c.number().min(100).max(60000).default(30000).describe("Maximum time to wait in milliseconds (100-60000, default: 30000)"),last_event_id:c.string().optional().describe("Only return events after this ID (for pagination/continuation)")}},async({timeout_ms:W,last_event_id:$})=>{let J=E0(Y());if(!J)return $0("Session not initialized");let G=$?J.eventSystem.getEventsAfter($):J.eventSystem.getNewEvents();if(G.length>0)return l0({triggered_by:"existing_events",events:G.map((B)=>({id:B.id,type:B.type,server:B.server,createdAt:B.createdAt.toISOString(),data:B.data})),pending_server:{tasks:J.taskManager.getAllTasks().map((B)=>({taskId:B.taskId,server:B.server,toolName:B.toolName,status:B.status}))},pending_client:{sampling:J.pendingRequests.getPendingSamplingRequests().length,elicitation:J.pendingRequests.getPendingElicitationRequests().length}});let H=await J.eventSystem.waitForActivity(W);if(H){let B=J.eventSystem.getNewEvents();return l0({triggered_by:H.type,events:B.map((z)=>({id:z.id,type:z.type,server:z.server,createdAt:z.createdAt.toISOString(),data:z.data})),pending_server:{tasks:J.taskManager.getAllTasks().map((z)=>({taskId:z.taskId,server:z.server,toolName:z.toolName,status:z.status}))},pending_client:{sampling:J.pendingRequests.getPendingSamplingRequests().length,elicitation:J.pendingRequests.getPendingElicitationRequests().length}})}return l0({triggered_by:"timeout",events:[],pending_server:{tasks:J.taskManager.getAllTasks().map((B)=>({taskId:B.taskId,server:B.server,toolName:B.toolName,status:B.status}))},pending_client:{sampling:J.pendingRequests.getPendingSamplingRequests().length,elicitation:J.pendingRequests.getPendingElicitationRequests().length}})}),Q.registerTool("list_tasks",{description:"List proxy tasks (background tool executions that exceeded timeout)",inputSchema:{include_completed:c.boolean().default(!1).describe("Include completed/failed/cancelled tasks (default: false, only working tasks)"),server:c.string().optional().describe("Filter by server name")}},({include_completed:W,server:$})=>{let J=E0(Y());if(!J)return $0("Session not initialized");let G=J.taskManager.getAllTasks(W);if($)G=G.filter((B)=>B.server===$);if(G.length===0)return o0("No tasks");let H=G.map((B)=>({taskId:B.taskId,server:B.server,toolName:B.toolName,status:B.status,createdAt:B.createdAt.toISOString(),lastUpdatedAt:B.lastUpdatedAt.toISOString(),error:B.error,hasResult:B.result!==void 0}));return l0(H)}),Q.registerTool("get_task",{description:"Get details of a specific task including its result if completed",inputSchema:{task_id:c.string().describe("The task ID to retrieve")}},({task_id:W})=>{let $=E0(Y());if(!$)return $0("Session not initialized");let J=$.taskManager.getTask(W);if(!J)return $0(`Task '${W}' not found`);return l0({taskId:J.taskId,server:J.server,toolName:J.toolName,args:J.args,status:J.status,createdAt:J.createdAt.toISOString(),lastUpdatedAt:J.lastUpdatedAt.toISOString(),ttl:J.ttl,error:J.error,result:J.result})}),Q.registerTool("cancel_task",{description:"Cancel a working task",inputSchema:{task_id:c.string().describe("The task ID to cancel")}},({task_id:W})=>{let $=E0(Y());if(!$)return $0("Session not initialized");if($.taskManager.cancelTask(W))return o0(`Task '${W}' cancelled`);else return $0(`Task '${W}' not found or not in working state`)})}async function Og(){let{configPath:Q,logLevel:X,logFile:Y}=Ag(),W;if(Y)W=$O(X,Y);else W=WO();W.info("Starting MCP Proxy Server (stdio mode)",{configPath:Q});let $=new uJ({logger:W,sessionTimeoutMs:1800000,cleanupIntervalMs:300000});if(Q)try{let z=Dg(Q);W.info("Loading servers from config",{count:z.servers.length,path:Q});for(let K of z.servers)W.info("Adding server config",{name:K.name,url:K.url}),$.getServerConfigs().addConfig(K.name,K.url)}catch(z){W.error("Failed to load config",{error:z instanceof Error?z.message:String(z)}),process.exit(1)}let J=new OJ({name:"emceepee",version:"0.2.0"}),G=await $.createSession();W.info("Session created",{sessionId:G.sessionId}),Lg(J,$,()=>G);let H=new jJ,B=async()=>{W.info("Shutting down...",{}),await H.close(),await $.shutdown(),process.exit(0)};process.on("SIGINT",()=>void B()),process.on("SIGTERM",()=>void B()),await J.connect(H),W.info("Server started (stdio mode)",{})}Og().catch((Q)=>{console.error("Fatal error:",Q),process.exit(1)});