@ours.network/mcp 0.1.3 → 0.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module'; const require = createRequire(import.meta.url);
|
|
3
|
-
var mv=Object.create;var ma=Object.defineProperty;var hv=Object.getOwnPropertyDescriptor;var gv=Object.getOwnPropertyNames;var yv=Object.getPrototypeOf,_v=Object.prototype.hasOwnProperty;var z=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ha=(t,e)=>{for(var r in e)ma(t,r,{get:e[r],enumerable:!0})},vv=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of gv(e))!_v.call(t,o)&&o!==r&&ma(t,o,{get:()=>e[o],enumerable:!(n=hv(e,o))||n.enumerable});return t};var _p=(t,e,r)=>(r=t!=null?mv(yv(t)):{},vv(e||!t||!t.__esModule?ma(r,"default",{value:t,enumerable:!0}):r,t));var $o=z(se=>{"use strict";Object.defineProperty(se,"__esModule",{value:!0});se.regexpCode=se.getEsmExportName=se.getProperty=se.safeStringify=se.stringify=se.strConcat=se.addCodeArg=se.str=se._=se.nil=se._Code=se.Name=se.IDENTIFIER=se._CodeOrName=void 0;var bo=class{};se._CodeOrName=bo;se.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var jr=class extends bo{constructor(e){if(super(),!se.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};se.Name=jr;var ut=class extends bo{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof jr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};se._Code=ut;se.nil=new ut("");function fh(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Ku(r,e[n]),r.push(t[++n]);return new ut(r)}se._=fh;var Gu=new ut("+");function mh(t,...e){let r=[wo(t[0])],n=0;for(;n<e.length;)r.push(Gu),Ku(r,e[n]),r.push(Gu,wo(t[++n]));return v0(r),new ut(r)}se.str=mh;function Ku(t,e){e instanceof ut?t.push(...e._items):e instanceof jr?t.push(e):t.push($0(e))}se.addCodeArg=Ku;function v0(t){let e=1;for(;e<t.length-1;){if(t[e]===Gu){let r=b0(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function b0(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof jr||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof jr))return`"${t}${e.slice(1)}`}function w0(t,e){return e.emptyStr()?t:t.emptyStr()?e:mh`${t}${e}`}se.strConcat=w0;function $0(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:wo(Array.isArray(t)?t.join(","):t)}function x0(t){return new ut(wo(t))}se.stringify=x0;function wo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}se.safeStringify=wo;function k0(t){return typeof t=="string"&&se.IDENTIFIER.test(t)?new ut(`.${t}`):fh`[${t}]`}se.getProperty=k0;function S0(t){if(typeof t=="string"&&se.IDENTIFIER.test(t))return new ut(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}se.getEsmExportName=S0;function z0(t){return new ut(t.toString())}se.regexpCode=z0});var Qu=z(Ke=>{"use strict";Object.defineProperty(Ke,"__esModule",{value:!0});Ke.ValueScope=Ke.ValueScopeName=Ke.Scope=Ke.varKinds=Ke.UsedValueState=void 0;var Ge=$o(),Wu=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},ui;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(ui||(Ke.UsedValueState=ui={}));Ke.varKinds={const:new Ge.Name("const"),let:new Ge.Name("let"),var:new Ge.Name("var")};var li=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ge.Name?e:this.name(e)}name(e){return new Ge.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ke.Scope=li;var di=class extends Ge.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ge._)`.${new Ge.Name(r)}[${n}]`}};Ke.ValueScopeName=di;var R0=(0,Ge._)`\n`,Yu=class extends li{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?R0:Ge.nil}}get(){return this._scope}name(e){return new di(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ge._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=Ge.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,ui.Started);let l=r(u);if(l){let d=this.opts.es5?Ke.varKinds.var:Ke.varKinds.const;s=(0,Ge._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ge._)`${s}${l}${this.opts._n}`;else throw new Wu(u);c.set(u,ui.Completed)})}return s}};Ke.ValueScope=Yu});var J=z(G=>{"use strict";Object.defineProperty(G,"__esModule",{value:!0});G.or=G.and=G.not=G.CodeGen=G.operators=G.varKinds=G.ValueScopeName=G.ValueScope=G.Scope=G.Name=G.regexpCode=G.stringify=G.getProperty=G.nil=G.strConcat=G.str=G._=void 0;var re=$o(),_t=Qu(),rr=$o();Object.defineProperty(G,"_",{enumerable:!0,get:function(){return rr._}});Object.defineProperty(G,"str",{enumerable:!0,get:function(){return rr.str}});Object.defineProperty(G,"strConcat",{enumerable:!0,get:function(){return rr.strConcat}});Object.defineProperty(G,"nil",{enumerable:!0,get:function(){return rr.nil}});Object.defineProperty(G,"getProperty",{enumerable:!0,get:function(){return rr.getProperty}});Object.defineProperty(G,"stringify",{enumerable:!0,get:function(){return rr.stringify}});Object.defineProperty(G,"regexpCode",{enumerable:!0,get:function(){return rr.regexpCode}});Object.defineProperty(G,"Name",{enumerable:!0,get:function(){return rr.Name}});var hi=Qu();Object.defineProperty(G,"Scope",{enumerable:!0,get:function(){return hi.Scope}});Object.defineProperty(G,"ValueScope",{enumerable:!0,get:function(){return hi.ValueScope}});Object.defineProperty(G,"ValueScopeName",{enumerable:!0,get:function(){return hi.ValueScopeName}});Object.defineProperty(G,"varKinds",{enumerable:!0,get:function(){return hi.varKinds}});G.operators={GT:new re._Code(">"),GTE:new re._Code(">="),LT:new re._Code("<"),LTE:new re._Code("<="),EQ:new re._Code("==="),NEQ:new re._Code("!=="),NOT:new re._Code("!"),OR:new re._Code("||"),AND:new re._Code("&&"),ADD:new re._Code("+")};var Dt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Xu=class extends Dt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?_t.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=bn(this.rhs,e,r)),this}get names(){return this.rhs instanceof re._CodeOrName?this.rhs.names:{}}},pi=class extends Dt{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof re.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=bn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof re.Name?{}:{...this.lhs.names};return mi(e,this.rhs)}},el=class extends pi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},tl=class extends Dt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},rl=class extends Dt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},nl=class extends Dt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},ol=class extends Dt{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=bn(this.code,e,r),this}get names(){return this.code instanceof re._CodeOrName?this.code.names:{}}},xo=class extends Dt{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(T0(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>qr(e,r.names),{})}},Lt=class extends xo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},sl=class extends xo{},vn=class extends Lt{};vn.kind="else";var Zr=class t extends Lt{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new vn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(hh(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=bn(this.condition,e,r),this}get names(){let e=super.names;return mi(e,this.condition),this.else&&qr(e,this.else.names),e}};Zr.kind="if";var Mr=class extends Lt{};Mr.kind="for";var il=class extends Mr{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=bn(this.iteration,e,r),this}get names(){return qr(super.names,this.iteration.names)}},al=class extends Mr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?_t.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=mi(super.names,this.from);return mi(e,this.to)}},fi=class extends Mr{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=bn(this.iterable,e,r),this}get names(){return qr(super.names,this.iterable.names)}},ko=class extends Lt{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};ko.kind="func";var So=class extends xo{render(e){return"return "+super.render(e)}};So.kind="return";var cl=class extends Lt{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&qr(e,this.catch.names),this.finally&&qr(e,this.finally.names),e}},zo=class extends Lt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};zo.kind="catch";var Ro=class extends Lt{render(e){return"finally"+super.render(e)}};Ro.kind="finally";var ul=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
4
|
-
`:""},this._extScope=e,this._scope=new _t.Scope({parent:e}),this._nodes=[new sl]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,o){let s=this._scope.toName(r);return n!==void 0&&o&&(this._constants[s.str]=n),this._leafNode(new Xu(e,s,n)),s}const(e,r,n){return this._def(_t.varKinds.const,e,r,n)}let(e,r,n){return this._def(_t.varKinds.let,e,r,n)}var(e,r,n){return this._def(_t.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new pi(e,r,n))}add(e,r){return this._leafNode(new el(e,G.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==re.nil&&this._leafNode(new ol(e)),this}object(...e){let r=["{"];for(let[n,o]of e)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,re.addCodeArg)(r,o));return r.push("}"),new re._Code(r)}if(e,r,n){if(this._blockNode(new Zr(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Zr(e))}else(){return this._elseNode(new vn)}endIf(){return this._endBlockNode(Zr,vn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new il(e),r)}forRange(e,r,n,o,s=this.opts.es5?_t.varKinds.var:_t.varKinds.let){let i=this._scope.toName(e);return this._for(new al(s,i,r,n),()=>o(i))}forOf(e,r,n,o=_t.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof re.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,re._)`${i}.length`,a=>{this.var(s,(0,re._)`${i}[${a}]`),n(s)})}return this._for(new fi("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?_t.varKinds.var:_t.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,re._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new fi("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Mr)}label(e){return this._leafNode(new tl(e))}break(e){return this._leafNode(new rl(e))}return(e){let r=new So;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(So)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new cl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new zo(s),r(s)}return n&&(this._currNode=o.finally=new Ro,this.code(n)),this._endBlockNode(zo,Ro)}throw(e){return this._leafNode(new nl(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=re.nil,n,o){return this._blockNode(new ko(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(ko)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Zr))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};G.CodeGen=ul;function qr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function mi(t,e){return e instanceof re._CodeOrName?qr(t,e.names):t}function bn(t,e,r){if(t instanceof re.Name)return n(t);if(!o(t))return t;return new re._Code(t._items.reduce((s,i)=>(i instanceof re.Name&&(i=n(i)),i instanceof re._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof re._Code&&s._items.some(i=>i instanceof re.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function T0(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function hh(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,re._)`!${ll(t)}`}G.not=hh;var P0=gh(G.operators.AND);function E0(...t){return t.reduce(P0)}G.and=E0;var I0=gh(G.operators.OR);function O0(...t){return t.reduce(I0)}G.or=O0;function gh(t){return(e,r)=>e===re.nil?r:r===re.nil?e:(0,re._)`${ll(e)} ${t} ${ll(r)}`}function ll(t){return t instanceof re.Name?t:(0,re._)`(${t})`}});var ne=z(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});W.checkStrictMode=W.getErrorPath=W.Type=W.useFunc=W.setEvaluated=W.evaluatedPropsToName=W.mergeEvaluated=W.eachItem=W.unescapeJsonPointer=W.escapeJsonPointer=W.escapeFragment=W.unescapeFragment=W.schemaRefOrVal=W.schemaHasRulesButRef=W.schemaHasRules=W.checkUnknownRules=W.alwaysValidSchema=W.toHash=void 0;var ue=J(),N0=$o();function C0(t){let e={};for(let r of t)e[r]=!0;return e}W.toHash=C0;function A0(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(vh(t,e),!bh(e,t.self.RULES.all))}W.alwaysValidSchema=A0;function vh(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let o=n.RULES.keywords;for(let s in e)o[s]||xh(t,`unknown keyword: "${s}"`)}W.checkUnknownRules=vh;function bh(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}W.schemaHasRules=bh;function j0(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}W.schemaHasRulesButRef=j0;function Z0({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ue._)`${r}`}return(0,ue._)`${t}${e}${(0,ue.getProperty)(n)}`}W.schemaRefOrVal=Z0;function M0(t){return wh(decodeURIComponent(t))}W.unescapeFragment=M0;function q0(t){return encodeURIComponent(pl(t))}W.escapeFragment=q0;function pl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}W.escapeJsonPointer=pl;function wh(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}W.unescapeJsonPointer=wh;function D0(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}W.eachItem=D0;function yh({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof ue.Name?(s instanceof ue.Name?t(o,s,i):e(o,s,i),i):s instanceof ue.Name?(e(o,i,s),s):r(s,i);return a===ue.Name&&!(c instanceof ue.Name)?n(o,c):c}}W.mergeEvaluated={props:yh({mergeNames:(t,e,r)=>t.if((0,ue._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ue._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ue._)`${r} || {}`).code((0,ue._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ue._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ue._)`${r} || {}`),fl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:$h}),items:yh({mergeNames:(t,e,r)=>t.if((0,ue._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ue._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ue._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ue._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function $h(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ue._)`{}`);return e!==void 0&&fl(t,r,e),r}W.evaluatedPropsToName=$h;function fl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ue._)`${e}${(0,ue.getProperty)(n)}`,!0))}W.setEvaluated=fl;var _h={};function L0(t,e){return t.scopeValue("func",{ref:e,code:_h[e.code]||(_h[e.code]=new N0._Code(e.code))})}W.useFunc=L0;var dl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(dl||(W.Type=dl={}));function V0(t,e,r){if(t instanceof ue.Name){let n=e===dl.Num;return r?n?(0,ue._)`"[" + ${t} + "]"`:(0,ue._)`"['" + ${t} + "']"`:n?(0,ue._)`"/" + ${t}`:(0,ue._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ue.getProperty)(t).toString():"/"+pl(t)}W.getErrorPath=V0;function xh(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}W.checkStrictMode=xh});var Vt=z(ml=>{"use strict";Object.defineProperty(ml,"__esModule",{value:!0});var Ae=J(),U0={data:new Ae.Name("data"),valCxt:new Ae.Name("valCxt"),instancePath:new Ae.Name("instancePath"),parentData:new Ae.Name("parentData"),parentDataProperty:new Ae.Name("parentDataProperty"),rootData:new Ae.Name("rootData"),dynamicAnchors:new Ae.Name("dynamicAnchors"),vErrors:new Ae.Name("vErrors"),errors:new Ae.Name("errors"),this:new Ae.Name("this"),self:new Ae.Name("self"),scope:new Ae.Name("scope"),json:new Ae.Name("json"),jsonPos:new Ae.Name("jsonPos"),jsonLen:new Ae.Name("jsonLen"),jsonPart:new Ae.Name("jsonPart")};ml.default=U0});var To=z(je=>{"use strict";Object.defineProperty(je,"__esModule",{value:!0});je.extendErrors=je.resetErrorsCount=je.reportExtraError=je.reportError=je.keyword$DataError=je.keywordError=void 0;var oe=J(),gi=ne(),Ve=Vt();je.keywordError={message:({keyword:t})=>(0,oe.str)`must pass "${t}" keyword validation`};je.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,oe.str)`"${t}" keyword must be ${e} ($data)`:(0,oe.str)`"${t}" keyword is invalid ($data)`};function F0(t,e=je.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=zh(t,e,r);n??(i||a)?kh(s,c):Sh(o,(0,oe._)`[${c}]`)}je.reportError=F0;function B0(t,e=je.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=zh(t,e,r);kh(o,a),s||i||Sh(n,Ve.default.vErrors)}je.reportExtraError=B0;function H0(t,e){t.assign(Ve.default.errors,e),t.if((0,oe._)`${Ve.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,oe._)`${Ve.default.vErrors}.length`,e),()=>t.assign(Ve.default.vErrors,null)))}je.resetErrorsCount=H0;function J0({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,Ve.default.errors,a=>{t.const(i,(0,oe._)`${Ve.default.vErrors}[${a}]`),t.if((0,oe._)`${i}.instancePath === undefined`,()=>t.assign((0,oe._)`${i}.instancePath`,(0,oe.strConcat)(Ve.default.instancePath,s.errorPath))),t.assign((0,oe._)`${i}.schemaPath`,(0,oe.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,oe._)`${i}.schema`,r),t.assign((0,oe._)`${i}.data`,n))})}je.extendErrors=J0;function kh(t,e){let r=t.const("err",e);t.if((0,oe._)`${Ve.default.vErrors} === null`,()=>t.assign(Ve.default.vErrors,(0,oe._)`[${r}]`),(0,oe._)`${Ve.default.vErrors}.push(${r})`),t.code((0,oe._)`${Ve.default.errors}++`)}function Sh(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,oe._)`new ${t.ValidationError}(${e})`):(r.assign((0,oe._)`${n}.errors`,e),r.return(!1))}var Dr={keyword:new oe.Name("keyword"),schemaPath:new oe.Name("schemaPath"),params:new oe.Name("params"),propertyName:new oe.Name("propertyName"),message:new oe.Name("message"),schema:new oe.Name("schema"),parentSchema:new oe.Name("parentSchema")};function zh(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,oe._)`{}`:G0(t,e,r)}function G0(t,e,r={}){let{gen:n,it:o}=t,s=[K0(o,r),W0(t,r)];return Y0(t,e,s),n.object(...s)}function K0({errorPath:t},{instancePath:e}){let r=e?(0,oe.str)`${t}${(0,gi.getErrorPath)(e,gi.Type.Str)}`:t;return[Ve.default.instancePath,(0,oe.strConcat)(Ve.default.instancePath,r)]}function W0({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,oe.str)`${e}/${t}`;return r&&(o=(0,oe.str)`${o}${(0,gi.getErrorPath)(r,gi.Type.Str)}`),[Dr.schemaPath,o]}function Y0(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([Dr.keyword,o],[Dr.params,typeof e=="function"?e(t):e||(0,oe._)`{}`]),c.messages&&n.push([Dr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Dr.schema,i],[Dr.parentSchema,(0,oe._)`${l}${d}`],[Ve.default.data,s]),u&&n.push([Dr.propertyName,u])}});var Th=z(wn=>{"use strict";Object.defineProperty(wn,"__esModule",{value:!0});wn.boolOrEmptySchema=wn.topBoolOrEmptySchema=void 0;var Q0=To(),X0=J(),ek=Vt(),tk={message:"boolean schema is false"};function rk(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Rh(t,!1):typeof r=="object"&&r.$async===!0?e.return(ek.default.data):(e.assign((0,X0._)`${n}.errors`,null),e.return(!0))}wn.topBoolOrEmptySchema=rk;function nk(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Rh(t)):r.var(e,!0)}wn.boolOrEmptySchema=nk;function Rh(t,e){let{gen:r,data:n}=t,o={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,Q0.reportError)(o,tk,void 0,e)}});var hl=z($n=>{"use strict";Object.defineProperty($n,"__esModule",{value:!0});$n.getRules=$n.isJSONType=void 0;var ok=["string","number","integer","boolean","null","object","array"],sk=new Set(ok);function ik(t){return typeof t=="string"&&sk.has(t)}$n.isJSONType=ik;function ak(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}$n.getRules=ak});var gl=z(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.shouldUseRule=nr.shouldUseGroup=nr.schemaHasRulesForType=void 0;function ck({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Ph(t,n)}nr.schemaHasRulesForType=ck;function Ph(t,e){return e.rules.some(r=>Eh(t,r))}nr.shouldUseGroup=Ph;function Eh(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}nr.shouldUseRule=Eh});var Po=z(Ze=>{"use strict";Object.defineProperty(Ze,"__esModule",{value:!0});Ze.reportTypeError=Ze.checkDataTypes=Ze.checkDataType=Ze.coerceAndCheckDataType=Ze.getJSONTypes=Ze.getSchemaTypes=Ze.DataType=void 0;var uk=hl(),lk=gl(),dk=To(),B=J(),Ih=ne(),xn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(xn||(Ze.DataType=xn={}));function pk(t){let e=Oh(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Ze.getSchemaTypes=pk;function Oh(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(uk.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Ze.getJSONTypes=Oh;function fk(t,e){let{gen:r,data:n,opts:o}=t,s=mk(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,lk.schemaHasRulesForType)(t,e[0]));if(i){let a=_l(e,n,o.strictNumbers,xn.Wrong);r.if(a,()=>{s.length?hk(t,e,s):vl(t)})}return i}Ze.coerceAndCheckDataType=fk;var Nh=new Set(["string","number","integer","boolean","null"]);function mk(t,e){return e?t.filter(r=>Nh.has(r)||e==="array"&&r==="array"):[]}function hk(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,B._)`typeof ${o}`),a=n.let("coerced",(0,B._)`undefined`);s.coerceTypes==="array"&&n.if((0,B._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,B._)`${o}[0]`).assign(i,(0,B._)`typeof ${o}`).if(_l(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,B._)`${a} !== undefined`);for(let u of r)(Nh.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),vl(t),n.endIf(),n.if((0,B._)`${a} !== undefined`,()=>{n.assign(o,a),gk(t,a)});function c(u){switch(u){case"string":n.elseIf((0,B._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,B._)`"" + ${o}`).elseIf((0,B._)`${o} === null`).assign(a,(0,B._)`""`);return;case"number":n.elseIf((0,B._)`${i} == "boolean" || ${o} === null
|
|
3
|
+
var Sv=Object.create;var ha=Object.defineProperty;var zv=Object.getOwnPropertyDescriptor;var Rv=Object.getOwnPropertyNames;var Tv=Object.getPrototypeOf,Pv=Object.prototype.hasOwnProperty;var z=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ga=(t,e)=>{for(var r in e)ha(t,r,{get:e[r],enumerable:!0})},Ev=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Rv(e))!Pv.call(t,o)&&o!==r&&ha(t,o,{get:()=>e[o],enumerable:!(n=zv(e,o))||n.enumerable});return t};var Sp=(t,e,r)=>(r=t!=null?Sv(Tv(t)):{},Ev(e||!t||!t.__esModule?ha(r,"default",{value:t,enumerable:!0}):r,t));var ko=z(se=>{"use strict";Object.defineProperty(se,"__esModule",{value:!0});se.regexpCode=se.getEsmExportName=se.getProperty=se.safeStringify=se.stringify=se.strConcat=se.addCodeArg=se.str=se._=se.nil=se._Code=se.Name=se.IDENTIFIER=se._CodeOrName=void 0;var $o=class{};se._CodeOrName=$o;se.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Zr=class extends $o{constructor(e){if(super(),!se.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};se.Name=Zr;var lt=class extends $o{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Zr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};se._Code=lt;se.nil=new lt("");function bh(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Wu(r,e[n]),r.push(t[++n]);return new lt(r)}se._=bh;var Ku=new lt("+");function wh(t,...e){let r=[xo(t[0])],n=0;for(;n<e.length;)r.push(Ku),Wu(r,e[n]),r.push(Ku,xo(t[++n]));return E0(r),new lt(r)}se.str=wh;function Wu(t,e){e instanceof lt?t.push(...e._items):e instanceof Zr?t.push(e):t.push(N0(e))}se.addCodeArg=Wu;function E0(t){let e=1;for(;e<t.length-1;){if(t[e]===Ku){let r=I0(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function I0(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Zr||t[t.length-1]!=='"'?void 0:typeof e!="string"?`${t.slice(0,-1)}${e}"`:e[0]==='"'?t.slice(0,-1)+e.slice(1):void 0;if(typeof e=="string"&&e[0]==='"'&&!(t instanceof Zr))return`"${t}${e.slice(1)}`}function O0(t,e){return e.emptyStr()?t:t.emptyStr()?e:wh`${t}${e}`}se.strConcat=O0;function N0(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:xo(Array.isArray(t)?t.join(","):t)}function C0(t){return new lt(xo(t))}se.stringify=C0;function xo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}se.safeStringify=xo;function A0(t){return typeof t=="string"&&se.IDENTIFIER.test(t)?new lt(`.${t}`):bh`[${t}]`}se.getProperty=A0;function j0(t){if(typeof t=="string"&&se.IDENTIFIER.test(t))return new lt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}se.getEsmExportName=j0;function Z0(t){return new lt(t.toString())}se.regexpCode=Z0});var Xu=z(Ke=>{"use strict";Object.defineProperty(Ke,"__esModule",{value:!0});Ke.ValueScope=Ke.ValueScopeName=Ke.Scope=Ke.varKinds=Ke.UsedValueState=void 0;var Ge=ko(),Yu=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},li;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(li||(Ke.UsedValueState=li={}));Ke.varKinds={const:new Ge.Name("const"),let:new Ge.Name("let"),var:new Ge.Name("var")};var di=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ge.Name?e:this.name(e)}name(e){return new Ge.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ke.Scope=di;var pi=class extends Ge.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ge._)`.${new Ge.Name(r)}[${n}]`}};Ke.ValueScopeName=pi;var M0=(0,Ge._)`\n`,Qu=class extends di{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?M0:Ge.nil}}get(){return this._scope}name(e){return new pi(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ge._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=Ge.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,li.Started);let l=r(u);if(l){let d=this.opts.es5?Ke.varKinds.var:Ke.varKinds.const;s=(0,Ge._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ge._)`${s}${l}${this.opts._n}`;else throw new Yu(u);c.set(u,li.Completed)})}return s}};Ke.ValueScope=Qu});var J=z(K=>{"use strict";Object.defineProperty(K,"__esModule",{value:!0});K.or=K.and=K.not=K.CodeGen=K.operators=K.varKinds=K.ValueScopeName=K.ValueScope=K.Scope=K.Name=K.regexpCode=K.stringify=K.getProperty=K.nil=K.strConcat=K.str=K._=void 0;var re=ko(),vt=Xu(),rr=ko();Object.defineProperty(K,"_",{enumerable:!0,get:function(){return rr._}});Object.defineProperty(K,"str",{enumerable:!0,get:function(){return rr.str}});Object.defineProperty(K,"strConcat",{enumerable:!0,get:function(){return rr.strConcat}});Object.defineProperty(K,"nil",{enumerable:!0,get:function(){return rr.nil}});Object.defineProperty(K,"getProperty",{enumerable:!0,get:function(){return rr.getProperty}});Object.defineProperty(K,"stringify",{enumerable:!0,get:function(){return rr.stringify}});Object.defineProperty(K,"regexpCode",{enumerable:!0,get:function(){return rr.regexpCode}});Object.defineProperty(K,"Name",{enumerable:!0,get:function(){return rr.Name}});var gi=Xu();Object.defineProperty(K,"Scope",{enumerable:!0,get:function(){return gi.Scope}});Object.defineProperty(K,"ValueScope",{enumerable:!0,get:function(){return gi.ValueScope}});Object.defineProperty(K,"ValueScopeName",{enumerable:!0,get:function(){return gi.ValueScopeName}});Object.defineProperty(K,"varKinds",{enumerable:!0,get:function(){return gi.varKinds}});K.operators={GT:new re._Code(">"),GTE:new re._Code(">="),LT:new re._Code("<"),LTE:new re._Code("<="),EQ:new re._Code("==="),NEQ:new re._Code("!=="),NOT:new re._Code("!"),OR:new re._Code("||"),AND:new re._Code("&&"),ADD:new re._Code("+")};var Lt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},el=class extends Lt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?vt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=wn(this.rhs,e,r)),this}get names(){return this.rhs instanceof re._CodeOrName?this.rhs.names:{}}},fi=class extends Lt{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof re.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=wn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof re.Name?{}:{...this.lhs.names};return hi(e,this.rhs)}},tl=class extends fi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},rl=class extends Lt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},nl=class extends Lt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},ol=class extends Lt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},sl=class extends Lt{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=wn(this.code,e,r),this}get names(){return this.code instanceof re._CodeOrName?this.code.names:{}}},So=class extends Lt{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(q0(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Dr(e,r.names),{})}},Vt=class extends So{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},il=class extends So{},bn=class extends Vt{};bn.kind="else";var Mr=class t extends Vt{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new bn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t($h(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=wn(this.condition,e,r),this}get names(){let e=super.names;return hi(e,this.condition),this.else&&Dr(e,this.else.names),e}};Mr.kind="if";var qr=class extends Vt{};qr.kind="for";var al=class extends qr{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=wn(this.iteration,e,r),this}get names(){return Dr(super.names,this.iteration.names)}},cl=class extends qr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?vt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=hi(super.names,this.from);return hi(e,this.to)}},mi=class extends qr{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=wn(this.iterable,e,r),this}get names(){return Dr(super.names,this.iterable.names)}},zo=class extends Vt{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};zo.kind="func";var Ro=class extends So{render(e){return"return "+super.render(e)}};Ro.kind="return";var ul=class extends Vt{render(e){let r="try"+super.render(e);return this.catch&&(r+=this.catch.render(e)),this.finally&&(r+=this.finally.render(e)),r}optimizeNodes(){var e,r;return super.optimizeNodes(),(e=this.catch)===null||e===void 0||e.optimizeNodes(),(r=this.finally)===null||r===void 0||r.optimizeNodes(),this}optimizeNames(e,r){var n,o;return super.optimizeNames(e,r),(n=this.catch)===null||n===void 0||n.optimizeNames(e,r),(o=this.finally)===null||o===void 0||o.optimizeNames(e,r),this}get names(){let e=super.names;return this.catch&&Dr(e,this.catch.names),this.finally&&Dr(e,this.finally.names),e}},To=class extends Vt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};To.kind="catch";var Po=class extends Vt{render(e){return"finally"+super.render(e)}};Po.kind="finally";var ll=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
4
|
+
`:""},this._extScope=e,this._scope=new vt.Scope({parent:e}),this._nodes=[new il]}toString(){return this._root.render(this.opts)}name(e){return this._scope.name(e)}scopeName(e){return this._extScope.name(e)}scopeValue(e,r){let n=this._extScope.value(e,r);return(this._values[n.prefix]||(this._values[n.prefix]=new Set)).add(n),n}getScopeValue(e,r){return this._extScope.getValue(e,r)}scopeRefs(e){return this._extScope.scopeRefs(e,this._values)}scopeCode(){return this._extScope.scopeCode(this._values)}_def(e,r,n,o){let s=this._scope.toName(r);return n!==void 0&&o&&(this._constants[s.str]=n),this._leafNode(new el(e,s,n)),s}const(e,r,n){return this._def(vt.varKinds.const,e,r,n)}let(e,r,n){return this._def(vt.varKinds.let,e,r,n)}var(e,r,n){return this._def(vt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new fi(e,r,n))}add(e,r){return this._leafNode(new tl(e,K.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==re.nil&&this._leafNode(new sl(e)),this}object(...e){let r=["{"];for(let[n,o]of e)r.length>1&&r.push(","),r.push(n),(n!==o||this.opts.es5)&&(r.push(":"),(0,re.addCodeArg)(r,o));return r.push("}"),new re._Code(r)}if(e,r,n){if(this._blockNode(new Mr(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new Mr(e))}else(){return this._elseNode(new bn)}endIf(){return this._endBlockNode(Mr,bn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new al(e),r)}forRange(e,r,n,o,s=this.opts.es5?vt.varKinds.var:vt.varKinds.let){let i=this._scope.toName(e);return this._for(new cl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=vt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof re.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,re._)`${i}.length`,a=>{this.var(s,(0,re._)`${i}[${a}]`),n(s)})}return this._for(new mi("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?vt.varKinds.var:vt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,re._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new mi("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(qr)}label(e){return this._leafNode(new rl(e))}break(e){return this._leafNode(new nl(e))}return(e){let r=new Ro;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Ro)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new ul;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new To(s),r(s)}return n&&(this._currNode=o.finally=new Po,this.code(n)),this._endBlockNode(To,Po)}throw(e){return this._leafNode(new ol(e))}block(e,r){return this._blockStarts.push(this._nodes.length),e&&this.code(e).endBlock(r),this}endBlock(e){let r=this._blockStarts.pop();if(r===void 0)throw new Error("CodeGen: not in self-balancing block");let n=this._nodes.length-r;if(n<0||e!==void 0&&n!==e)throw new Error(`CodeGen: wrong number of nodes: ${n} vs ${e} expected`);return this._nodes.length=r,this}func(e,r=re.nil,n,o){return this._blockNode(new zo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(zo)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Mr))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};K.CodeGen=ll;function Dr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function hi(t,e){return e instanceof re._CodeOrName?Dr(t,e.names):t}function wn(t,e,r){if(t instanceof re.Name)return n(t);if(!o(t))return t;return new re._Code(t._items.reduce((s,i)=>(i instanceof re.Name&&(i=n(i)),i instanceof re._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof re._Code&&s._items.some(i=>i instanceof re.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function q0(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function $h(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,re._)`!${dl(t)}`}K.not=$h;var D0=xh(K.operators.AND);function L0(...t){return t.reduce(D0)}K.and=L0;var V0=xh(K.operators.OR);function U0(...t){return t.reduce(V0)}K.or=U0;function xh(t){return(e,r)=>e===re.nil?r:r===re.nil?e:(0,re._)`${dl(e)} ${t} ${dl(r)}`}function dl(t){return t instanceof re.Name?t:(0,re._)`(${t})`}});var ne=z(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});W.checkStrictMode=W.getErrorPath=W.Type=W.useFunc=W.setEvaluated=W.evaluatedPropsToName=W.mergeEvaluated=W.eachItem=W.unescapeJsonPointer=W.escapeJsonPointer=W.escapeFragment=W.unescapeFragment=W.schemaRefOrVal=W.schemaHasRulesButRef=W.schemaHasRules=W.checkUnknownRules=W.alwaysValidSchema=W.toHash=void 0;var ue=J(),F0=ko();function B0(t){let e={};for(let r of t)e[r]=!0;return e}W.toHash=B0;function H0(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(zh(t,e),!Rh(e,t.self.RULES.all))}W.alwaysValidSchema=H0;function zh(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let o=n.RULES.keywords;for(let s in e)o[s]||Eh(t,`unknown keyword: "${s}"`)}W.checkUnknownRules=zh;function Rh(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}W.schemaHasRules=Rh;function J0(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}W.schemaHasRulesButRef=J0;function G0({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ue._)`${r}`}return(0,ue._)`${t}${e}${(0,ue.getProperty)(n)}`}W.schemaRefOrVal=G0;function K0(t){return Th(decodeURIComponent(t))}W.unescapeFragment=K0;function W0(t){return encodeURIComponent(fl(t))}W.escapeFragment=W0;function fl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}W.escapeJsonPointer=fl;function Th(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}W.unescapeJsonPointer=Th;function Y0(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}W.eachItem=Y0;function kh({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof ue.Name?(s instanceof ue.Name?t(o,s,i):e(o,s,i),i):s instanceof ue.Name?(e(o,i,s),s):r(s,i);return a===ue.Name&&!(c instanceof ue.Name)?n(o,c):c}}W.mergeEvaluated={props:kh({mergeNames:(t,e,r)=>t.if((0,ue._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ue._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ue._)`${r} || {}`).code((0,ue._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ue._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ue._)`${r} || {}`),ml(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Ph}),items:kh({mergeNames:(t,e,r)=>t.if((0,ue._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ue._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ue._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ue._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Ph(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ue._)`{}`);return e!==void 0&&ml(t,r,e),r}W.evaluatedPropsToName=Ph;function ml(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ue._)`${e}${(0,ue.getProperty)(n)}`,!0))}W.setEvaluated=ml;var Sh={};function Q0(t,e){return t.scopeValue("func",{ref:e,code:Sh[e.code]||(Sh[e.code]=new F0._Code(e.code))})}W.useFunc=Q0;var pl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(pl||(W.Type=pl={}));function X0(t,e,r){if(t instanceof ue.Name){let n=e===pl.Num;return r?n?(0,ue._)`"[" + ${t} + "]"`:(0,ue._)`"['" + ${t} + "']"`:n?(0,ue._)`"/" + ${t}`:(0,ue._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ue.getProperty)(t).toString():"/"+fl(t)}W.getErrorPath=X0;function Eh(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}W.checkStrictMode=Eh});var Ut=z(hl=>{"use strict";Object.defineProperty(hl,"__esModule",{value:!0});var je=J(),ek={data:new je.Name("data"),valCxt:new je.Name("valCxt"),instancePath:new je.Name("instancePath"),parentData:new je.Name("parentData"),parentDataProperty:new je.Name("parentDataProperty"),rootData:new je.Name("rootData"),dynamicAnchors:new je.Name("dynamicAnchors"),vErrors:new je.Name("vErrors"),errors:new je.Name("errors"),this:new je.Name("this"),self:new je.Name("self"),scope:new je.Name("scope"),json:new je.Name("json"),jsonPos:new je.Name("jsonPos"),jsonLen:new je.Name("jsonLen"),jsonPart:new je.Name("jsonPart")};hl.default=ek});var Eo=z(Ze=>{"use strict";Object.defineProperty(Ze,"__esModule",{value:!0});Ze.extendErrors=Ze.resetErrorsCount=Ze.reportExtraError=Ze.reportError=Ze.keyword$DataError=Ze.keywordError=void 0;var oe=J(),yi=ne(),Ve=Ut();Ze.keywordError={message:({keyword:t})=>(0,oe.str)`must pass "${t}" keyword validation`};Ze.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,oe.str)`"${t}" keyword must be ${e} ($data)`:(0,oe.str)`"${t}" keyword is invalid ($data)`};function tk(t,e=Ze.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Nh(t,e,r);n??(i||a)?Ih(s,c):Oh(o,(0,oe._)`[${c}]`)}Ze.reportError=tk;function rk(t,e=Ze.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Nh(t,e,r);Ih(o,a),s||i||Oh(n,Ve.default.vErrors)}Ze.reportExtraError=rk;function nk(t,e){t.assign(Ve.default.errors,e),t.if((0,oe._)`${Ve.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,oe._)`${Ve.default.vErrors}.length`,e),()=>t.assign(Ve.default.vErrors,null)))}Ze.resetErrorsCount=nk;function ok({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,Ve.default.errors,a=>{t.const(i,(0,oe._)`${Ve.default.vErrors}[${a}]`),t.if((0,oe._)`${i}.instancePath === undefined`,()=>t.assign((0,oe._)`${i}.instancePath`,(0,oe.strConcat)(Ve.default.instancePath,s.errorPath))),t.assign((0,oe._)`${i}.schemaPath`,(0,oe.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,oe._)`${i}.schema`,r),t.assign((0,oe._)`${i}.data`,n))})}Ze.extendErrors=ok;function Ih(t,e){let r=t.const("err",e);t.if((0,oe._)`${Ve.default.vErrors} === null`,()=>t.assign(Ve.default.vErrors,(0,oe._)`[${r}]`),(0,oe._)`${Ve.default.vErrors}.push(${r})`),t.code((0,oe._)`${Ve.default.errors}++`)}function Oh(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,oe._)`new ${t.ValidationError}(${e})`):(r.assign((0,oe._)`${n}.errors`,e),r.return(!1))}var Lr={keyword:new oe.Name("keyword"),schemaPath:new oe.Name("schemaPath"),params:new oe.Name("params"),propertyName:new oe.Name("propertyName"),message:new oe.Name("message"),schema:new oe.Name("schema"),parentSchema:new oe.Name("parentSchema")};function Nh(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,oe._)`{}`:sk(t,e,r)}function sk(t,e,r={}){let{gen:n,it:o}=t,s=[ik(o,r),ak(t,r)];return ck(t,e,s),n.object(...s)}function ik({errorPath:t},{instancePath:e}){let r=e?(0,oe.str)`${t}${(0,yi.getErrorPath)(e,yi.Type.Str)}`:t;return[Ve.default.instancePath,(0,oe.strConcat)(Ve.default.instancePath,r)]}function ak({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,oe.str)`${e}/${t}`;return r&&(o=(0,oe.str)`${o}${(0,yi.getErrorPath)(r,yi.Type.Str)}`),[Lr.schemaPath,o]}function ck(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([Lr.keyword,o],[Lr.params,typeof e=="function"?e(t):e||(0,oe._)`{}`]),c.messages&&n.push([Lr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Lr.schema,i],[Lr.parentSchema,(0,oe._)`${l}${d}`],[Ve.default.data,s]),u&&n.push([Lr.propertyName,u])}});var Ah=z($n=>{"use strict";Object.defineProperty($n,"__esModule",{value:!0});$n.boolOrEmptySchema=$n.topBoolOrEmptySchema=void 0;var uk=Eo(),lk=J(),dk=Ut(),pk={message:"boolean schema is false"};function fk(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Ch(t,!1):typeof r=="object"&&r.$async===!0?e.return(dk.default.data):(e.assign((0,lk._)`${n}.errors`,null),e.return(!0))}$n.topBoolOrEmptySchema=fk;function mk(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Ch(t)):r.var(e,!0)}$n.boolOrEmptySchema=mk;function Ch(t,e){let{gen:r,data:n}=t,o={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,uk.reportError)(o,pk,void 0,e)}});var gl=z(xn=>{"use strict";Object.defineProperty(xn,"__esModule",{value:!0});xn.getRules=xn.isJSONType=void 0;var hk=["string","number","integer","boolean","null","object","array"],gk=new Set(hk);function yk(t){return typeof t=="string"&&gk.has(t)}xn.isJSONType=yk;function _k(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}xn.getRules=_k});var yl=z(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.shouldUseRule=nr.shouldUseGroup=nr.schemaHasRulesForType=void 0;function vk({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&jh(t,n)}nr.schemaHasRulesForType=vk;function jh(t,e){return e.rules.some(r=>Zh(t,r))}nr.shouldUseGroup=jh;function Zh(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}nr.shouldUseRule=Zh});var Io=z(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.reportTypeError=Me.checkDataTypes=Me.checkDataType=Me.coerceAndCheckDataType=Me.getJSONTypes=Me.getSchemaTypes=Me.DataType=void 0;var bk=gl(),wk=yl(),$k=Eo(),B=J(),Mh=ne(),kn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(kn||(Me.DataType=kn={}));function xk(t){let e=qh(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}Me.getSchemaTypes=xk;function qh(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(bk.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Me.getJSONTypes=qh;function kk(t,e){let{gen:r,data:n,opts:o}=t,s=Sk(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,wk.schemaHasRulesForType)(t,e[0]));if(i){let a=vl(e,n,o.strictNumbers,kn.Wrong);r.if(a,()=>{s.length?zk(t,e,s):bl(t)})}return i}Me.coerceAndCheckDataType=kk;var Dh=new Set(["string","number","integer","boolean","null"]);function Sk(t,e){return e?t.filter(r=>Dh.has(r)||e==="array"&&r==="array"):[]}function zk(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,B._)`typeof ${o}`),a=n.let("coerced",(0,B._)`undefined`);s.coerceTypes==="array"&&n.if((0,B._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,B._)`${o}[0]`).assign(i,(0,B._)`typeof ${o}`).if(vl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,B._)`${a} !== undefined`);for(let u of r)(Dh.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),bl(t),n.endIf(),n.if((0,B._)`${a} !== undefined`,()=>{n.assign(o,a),Rk(t,a)});function c(u){switch(u){case"string":n.elseIf((0,B._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,B._)`"" + ${o}`).elseIf((0,B._)`${o} === null`).assign(a,(0,B._)`""`);return;case"number":n.elseIf((0,B._)`${i} == "boolean" || ${o} === null
|
|
5
5
|
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,B._)`+${o}`);return;case"integer":n.elseIf((0,B._)`${i} === "boolean" || ${o} === null
|
|
6
6
|
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,B._)`+${o}`);return;case"boolean":n.elseIf((0,B._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,B._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,B._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,B._)`${i} === "string" || ${i} === "number"
|
|
7
|
-
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,B._)`[${o}]`)}}}function gk({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,B._)`${e} !== undefined`,()=>t.assign((0,B._)`${e}[${r}]`,n))}function yl(t,e,r,n=xn.Correct){let o=n===xn.Correct?B.operators.EQ:B.operators.NEQ,s;switch(t){case"null":return(0,B._)`${e} ${o} null`;case"array":s=(0,B._)`Array.isArray(${e})`;break;case"object":s=(0,B._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,B._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,B._)`typeof ${e} ${o} ${t}`}return n===xn.Correct?s:(0,B.not)(s);function i(a=B.nil){return(0,B.and)((0,B._)`typeof ${e} == "number"`,a,r?(0,B._)`isFinite(${e})`:B.nil)}}Ze.checkDataType=yl;function _l(t,e,r,n){if(t.length===1)return yl(t[0],e,r,n);let o,s=(0,Ih.toHash)(t);if(s.array&&s.object){let i=(0,B._)`typeof ${e} != "object"`;o=s.null?i:(0,B._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=B.nil;s.number&&delete s.integer;for(let i in s)o=(0,B.and)(o,yl(i,e,r,n));return o}Ze.checkDataTypes=_l;var yk={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,B._)`{type: ${t}}`:(0,B._)`{type: ${e}}`};function vl(t){let e=_k(t);(0,dk.reportError)(e,yk)}Ze.reportTypeError=vl;function _k(t){let{gen:e,data:r,schema:n}=t,o=(0,Ih.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Ah=z(yi=>{"use strict";Object.defineProperty(yi,"__esModule",{value:!0});yi.assignDefaults=void 0;var kn=J(),vk=ne();function bk(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Ch(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Ch(t,s,o.default))}yi.assignDefaults=bk;function Ch(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,kn._)`${s}${(0,kn.getProperty)(e)}`;if(o){(0,vk.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,kn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,kn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,kn._)`${a} = ${(0,kn.stringify)(r)}`)}});var lt=z(ce=>{"use strict";Object.defineProperty(ce,"__esModule",{value:!0});ce.validateUnion=ce.validateArray=ce.usePattern=ce.callValidateCode=ce.schemaProperties=ce.allSchemaProperties=ce.noPropertyInData=ce.propertyInData=ce.isOwnProperty=ce.hasPropFunc=ce.reportMissingProp=ce.checkMissingProp=ce.checkReportMissingProp=void 0;var he=J(),bl=ne(),or=Vt(),wk=ne();function $k(t,e){let{gen:r,data:n,it:o}=t;r.if($l(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,he._)`${e}`},!0),t.error()})}ce.checkReportMissingProp=$k;function xk({gen:t,data:e,it:{opts:r}},n,o){return(0,he.or)(...n.map(s=>(0,he.and)($l(t,e,s,r.ownProperties),(0,he._)`${o} = ${s}`)))}ce.checkMissingProp=xk;function kk(t,e){t.setParams({missingProperty:e},!0),t.error()}ce.reportMissingProp=kk;function jh(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,he._)`Object.prototype.hasOwnProperty`})}ce.hasPropFunc=jh;function wl(t,e,r){return(0,he._)`${jh(t)}.call(${e}, ${r})`}ce.isOwnProperty=wl;function Sk(t,e,r,n){let o=(0,he._)`${e}${(0,he.getProperty)(r)} !== undefined`;return n?(0,he._)`${o} && ${wl(t,e,r)}`:o}ce.propertyInData=Sk;function $l(t,e,r,n){let o=(0,he._)`${e}${(0,he.getProperty)(r)} === undefined`;return n?(0,he.or)(o,(0,he.not)(wl(t,e,r))):o}ce.noPropertyInData=$l;function Zh(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ce.allSchemaProperties=Zh;function zk(t,e){return Zh(e).filter(r=>!(0,bl.alwaysValidSchema)(t,e[r]))}ce.schemaProperties=zk;function Rk({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,he._)`${t}, ${e}, ${n}${o}`:e,d=[[or.default.instancePath,(0,he.strConcat)(or.default.instancePath,s)],[or.default.parentData,i.parentData],[or.default.parentDataProperty,i.parentDataProperty],[or.default.rootData,or.default.rootData]];i.opts.dynamicRef&&d.push([or.default.dynamicAnchors,or.default.dynamicAnchors]);let f=(0,he._)`${l}, ${r.object(...d)}`;return c!==he.nil?(0,he._)`${a}.call(${c}, ${f})`:(0,he._)`${a}(${f})`}ce.callValidateCode=Rk;var Tk=(0,he._)`new RegExp`;function Pk({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,he._)`${o.code==="new RegExp"?Tk:(0,wk.useFunc)(t,o)}(${r}, ${n})`})}ce.usePattern=Pk;function Ek(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,he._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:bl.Type.Num},s),e.if((0,he.not)(s),a)})}}ce.validateArray=Ek;function Ik(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,bl.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,he._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,he.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}ce.validateUnion=Ik});var Dh=z(Pt=>{"use strict";Object.defineProperty(Pt,"__esModule",{value:!0});Pt.validateKeywordUsage=Pt.validSchemaType=Pt.funcKeywordCode=Pt.macroKeywordCode=void 0;var Ue=J(),Lr=Vt(),Ok=lt(),Nk=To();function Ck(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=qh(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Ue.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Pt.macroKeywordCode=Ck;function Ak(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;Zk(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=qh(n,o,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&Mh(t),g(()=>t.error());else{let _=e.async?m():p();e.modifying&&Mh(t),g(()=>jk(t,_))}}function m(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,Ue._)`await `),b=>n.assign(d,!1).if((0,Ue._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,Ue._)`${b}.errors`),()=>n.throw(b))),_}function p(){let _=(0,Ue._)`${l}.errors`;return n.assign(_,null),h(Ue.nil),_}function h(_=e.async?(0,Ue._)`await `:Ue.nil){let b=c.opts.passContext?Lr.default.this:Lr.default.self,w=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Ue._)`${_}${(0,Ok.callValidateCode)(t,l,b,w)}`,e.modifying)}function g(_){var b;n.if((0,Ue.not)((b=e.valid)!==null&&b!==void 0?b:d),_)}}Pt.funcKeywordCode=Ak;function Mh(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Ue._)`${n.parentData}[${n.parentDataProperty}]`))}function jk(t,e){let{gen:r}=t;r.if((0,Ue._)`Array.isArray(${e})`,()=>{r.assign(Lr.default.vErrors,(0,Ue._)`${Lr.default.vErrors} === null ? ${e} : ${Lr.default.vErrors}.concat(${e})`).assign(Lr.default.errors,(0,Ue._)`${Lr.default.vErrors}.length`),(0,Nk.extendErrors)(t)},()=>t.error())}function Zk({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function qh(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Ue.stringify)(r)})}function Mk(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Pt.validSchemaType=Mk;function qk({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Pt.validateKeywordUsage=qk});var Vh=z(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.extendSubschemaMode=sr.extendSubschemaData=sr.getSubschema=void 0;var Et=J(),Lh=ne();function Dk(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,Et._)`${t.schemaPath}${(0,Et.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Et._)`${t.schemaPath}${(0,Et.getProperty)(e)}${(0,Et.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Lh.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}sr.getSubschema=Dk;function Lk(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=a.let("data",(0,Et._)`${e.data}${(0,Et.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Et.str)`${u}${(0,Lh.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Et._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Et.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}sr.extendSubschemaData=Lk;function Vk(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){n!==void 0&&(t.compositeRule=n),o!==void 0&&(t.createErrors=o),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}sr.extendSubschemaMode=Vk});var xl=z(($A,Uh)=>{"use strict";Uh.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!t(e[o],r[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!t(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}});var Bh=z((xA,Fh)=>{"use strict";var ir=Fh.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};_i(e,n,o,t,"",t)};ir.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};ir.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};ir.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};ir.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 _i(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in ir.arrayKeywords)for(var f=0;f<d.length;f++)_i(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in ir.propsKeywords){if(d&&typeof d=="object")for(var m in d)_i(t,e,r,d[m],o+"/"+l+"/"+Uk(m),s,o,l,n,m)}else(l in ir.keywords||t.allKeys&&!(l in ir.skipKeywords))&&_i(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function Uk(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Eo=z(We=>{"use strict";Object.defineProperty(We,"__esModule",{value:!0});We.getSchemaRefs=We.resolveUrl=We.normalizeId=We._getFullPath=We.getFullPath=We.inlineRef=void 0;var Fk=ne(),Bk=xl(),Hk=Bh(),Jk=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function Gk(t,e=!0){return typeof t=="boolean"?!0:e===!0?!kl(t):e?Hh(t)<=e:!1}We.inlineRef=Gk;var Kk=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function kl(t){for(let e in t){if(Kk.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(kl)||typeof r=="object"&&kl(r))return!0}return!1}function Hh(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!Jk.has(r)&&(typeof t[r]=="object"&&(0,Fk.eachItem)(t[r],n=>e+=Hh(n)),e===1/0))return 1/0}return e}function Jh(t,e="",r){r!==!1&&(e=Sn(e));let n=t.parse(e);return Gh(t,n)}We.getFullPath=Jh;function Gh(t,e){return t.serialize(e).split("#")[0]+"#"}We._getFullPath=Gh;var Wk=/#\/?$/;function Sn(t){return t?t.replace(Wk,""):""}We.normalizeId=Sn;function Yk(t,e,r){return r=Sn(r),t.resolve(e,r)}We.resolveUrl=Yk;var Qk=/^[a-z_][-a-z0-9._]*$/i;function Xk(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Sn(t[r]||e),s={"":o},i=Jh(n,o,!1),a={},c=new Set;return Hk(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),s[f]=g;function _(w){let P=this.opts.uriResolver.resolve;if(w=Sn(g?P(g,w):w),c.has(w))throw l(w);c.add(w);let j=this.refs[w];return typeof j=="string"&&(j=this.refs[j]),typeof j=="object"?u(d,j.schema,w):w!==Sn(h)&&(w[0]==="#"?(u(d,a[w],w),a[w]=d):this.refs[w]=h),w}function b(w){if(typeof w=="string"){if(!Qk.test(w))throw new Error(`invalid anchor "${w}"`);_.call(this,`#${w}`)}}}),a;function u(d,f,m){if(f!==void 0&&!Bk(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}We.getSchemaRefs=Xk});var No=z(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.getData=ar.KeywordCxt=ar.validateFunctionCode=void 0;var Xh=Th(),Kh=Po(),zl=gl(),vi=Po(),eS=Ah(),Oo=Dh(),Sl=Vh(),C=J(),D=Vt(),tS=Eo(),Ut=ne(),Io=To();function rS(t){if(rg(t)&&(ng(t),tg(t))){sS(t);return}eg(t,()=>(0,Xh.topBoolOrEmptySchema)(t))}ar.validateFunctionCode=rS;function eg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,C._)`${D.default.data}, ${D.default.valCxt}`,n.$async,()=>{t.code((0,C._)`"use strict"; ${Wh(r,o)}`),oS(t,o),t.code(s)}):t.func(e,(0,C._)`${D.default.data}, ${nS(o)}`,n.$async,()=>t.code(Wh(r,o)).code(s))}function nS(t){return(0,C._)`{${D.default.instancePath}="", ${D.default.parentData}, ${D.default.parentDataProperty}, ${D.default.rootData}=${D.default.data}${t.dynamicRef?(0,C._)`, ${D.default.dynamicAnchors}={}`:C.nil}}={}`}function oS(t,e){t.if(D.default.valCxt,()=>{t.var(D.default.instancePath,(0,C._)`${D.default.valCxt}.${D.default.instancePath}`),t.var(D.default.parentData,(0,C._)`${D.default.valCxt}.${D.default.parentData}`),t.var(D.default.parentDataProperty,(0,C._)`${D.default.valCxt}.${D.default.parentDataProperty}`),t.var(D.default.rootData,(0,C._)`${D.default.valCxt}.${D.default.rootData}`),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,C._)`${D.default.valCxt}.${D.default.dynamicAnchors}`)},()=>{t.var(D.default.instancePath,(0,C._)`""`),t.var(D.default.parentData,(0,C._)`undefined`),t.var(D.default.parentDataProperty,(0,C._)`undefined`),t.var(D.default.rootData,D.default.data),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,C._)`{}`)})}function sS(t){let{schema:e,opts:r,gen:n}=t;eg(t,()=>{r.$comment&&e.$comment&&sg(t),lS(t),n.let(D.default.vErrors,null),n.let(D.default.errors,0),r.unevaluated&&iS(t),og(t),fS(t)})}function iS(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,C._)`${r}.evaluated`),e.if((0,C._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,C._)`${t.evaluated}.props`,(0,C._)`undefined`)),e.if((0,C._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,C._)`${t.evaluated}.items`,(0,C._)`undefined`))}function Wh(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,C._)`/*# sourceURL=${r} */`:C.nil}function aS(t,e){if(rg(t)&&(ng(t),tg(t))){cS(t,e);return}(0,Xh.boolOrEmptySchema)(t,e)}function tg({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function rg(t){return typeof t.schema!="boolean"}function cS(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&sg(t),dS(t),pS(t);let s=n.const("_errs",D.default.errors);og(t,s),n.var(e,(0,C._)`${s} === ${D.default.errors}`)}function ng(t){(0,Ut.checkUnknownRules)(t),uS(t)}function og(t,e){if(t.opts.jtd)return Yh(t,[],!1,e);let r=(0,Kh.getSchemaTypes)(t.schema),n=(0,Kh.coerceAndCheckDataType)(t,r);Yh(t,r,!n,e)}function uS(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ut.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function lS(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ut.checkStrictMode)(t,"default is ignored in the schema root")}function dS(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,tS.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function pS(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function sg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,C._)`${D.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,C.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,C._)`${D.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function fS(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,C._)`${D.default.errors} === 0`,()=>e.return(D.default.data),()=>e.throw((0,C._)`new ${o}(${D.default.vErrors})`)):(e.assign((0,C._)`${n}.errors`,D.default.vErrors),s.unevaluated&&mS(t),e.return((0,C._)`${D.default.errors} === 0`))}function mS({gen:t,evaluated:e,props:r,items:n}){r instanceof C.Name&&t.assign((0,C._)`${e}.props`,r),n instanceof C.Name&&t.assign((0,C._)`${e}.items`,n)}function Yh(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Ut.schemaHasRulesButRef)(s,l))){o.block(()=>ag(t,"$ref",l.all.$ref.definition));return}c.jtd||hS(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,zl.shouldUseGroup)(s,f)&&(f.type?(o.if((0,vi.checkDataType)(f.type,i,c.strictNumbers)),Qh(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,vi.reportTypeError)(t)),o.endIf()):Qh(t,f),a||o.if((0,C._)`${D.default.errors} === ${n||0}`))}}function Qh(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,eS.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,zl.shouldUseRule)(n,s)&&ag(t,s.keyword,s.definition,e.type)})}function hS(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(gS(t,e),t.opts.allowUnionTypes||yS(t,e),_S(t,t.dataTypes))}function gS(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{ig(t.dataTypes,r)||Rl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),bS(t,e)}}function yS(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Rl(t,"use allowUnionTypes to allow union type keyword")}function _S(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,zl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>vS(e,i))&&Rl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function vS(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function ig(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function bS(t,e){let r=[];for(let n of t.dataTypes)ig(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Rl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ut.checkStrictMode)(t,e,t.opts.strictTypes)}var bi=class{constructor(e,r,n){if((0,Oo.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Ut.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",cg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Oo.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",D.default.errors))}result(e,r,n){this.failResult((0,C.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,C.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,C._)`${r} !== undefined && (${(0,C.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Io.reportExtraError:Io.reportError)(this,this.def.error,r)}$dataError(){(0,Io.reportError)(this,this.def.$dataError||Io.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Io.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=C.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=C.nil,r=C.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,C.or)((0,C._)`${o} === undefined`,r)),e!==C.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==C.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,C.or)(i(),a());function i(){if(n.length){if(!(r instanceof C.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,C._)`${(0,vi.checkDataTypes)(c,r,s.opts.strictNumbers,vi.DataType.Wrong)}`}return C.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,C._)`!${c}(${r})`}return C.nil}}subschema(e,r){let n=(0,Sl.getSubschema)(this.it,e);(0,Sl.extendSubschemaData)(n,this.it,e),(0,Sl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return aS(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ut.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ut.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,C.Name)),!0}};ar.KeywordCxt=bi;function ag(t,e,r,n){let o=new bi(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Oo.funcKeywordCode)(o,r):"macro"in r?(0,Oo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Oo.funcKeywordCode)(o,r)}var wS=/^\/(?:[^~]|~0|~1)*$/,$S=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function cg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return D.default.rootData;if(t[0]==="/"){if(!wS.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=D.default.rootData}else{let u=$S.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,C._)`${s}${(0,C.getProperty)((0,Ut.unescapeJsonPointer)(u))}`,i=(0,C._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}ar.getData=cg});var wi=z(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});var Tl=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Pl.default=Tl});var Co=z(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});var El=Eo(),Il=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,El.resolveUrl)(e,r,n),this.missingSchema=(0,El.normalizeId)((0,El.getFullPath)(e,this.missingRef))}};Ol.default=Il});var xi=z(dt=>{"use strict";Object.defineProperty(dt,"__esModule",{value:!0});dt.resolveSchema=dt.getCompilingSchema=dt.resolveRef=dt.compileSchema=dt.SchemaEnv=void 0;var vt=J(),xS=wi(),Vr=Vt(),bt=Eo(),ug=ne(),kS=No(),zn=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,bt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};dt.SchemaEnv=zn;function Cl(t){let e=lg.call(this,t);if(e)return e;let r=(0,bt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new vt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:xS.default,code:(0,vt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Vr.default.data,parentData:Vr.default.parentData,parentDataProperty:Vr.default.parentDataProperty,dataNames:[Vr.default.data],dataPathArr:[vt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,vt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:vt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,vt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,kS.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Vr.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${Vr.default.self}`,`${Vr.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof vt.Name?void 0:p,items:h instanceof vt.Name?void 0:h,dynamicProps:p instanceof vt.Name,dynamicItems:h instanceof vt.Name},m.source&&(m.source.evaluated=(0,vt.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}dt.compileSchema=Cl;function SS(t,e,r){var n;r=(0,bt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=TS.call(this,t,r);if(s===void 0){let i=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;i&&(s=new zn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=zS.call(this,s)}dt.resolveRef=SS;function zS(t){return(0,bt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Cl.call(this,t)}function lg(t){for(let e of this._compilations)if(RS(e,t))return e}dt.getCompilingSchema=lg;function RS(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function TS(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||$i.call(this,t,e)}function $i(t,e){let r=this.opts.uriResolver.parse(e),n=(0,bt._getFullPath)(this.opts.uriResolver,r),o=(0,bt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Nl.call(this,r,t);let s=(0,bt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=$i.call(this,t,i);return typeof a?.schema!="object"?void 0:Nl.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Cl.call(this,i),s===(0,bt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,bt.resolveUrl)(this.opts.uriResolver,o,u)),new zn({schema:a,schemaId:c,root:t,baseId:o})}return Nl.call(this,r,i)}}dt.resolveSchema=$i;var PS=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Nl(t,{baseId:e,schema:r,root:n}){var o;if(((o=t.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,ug.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!PS.has(a)&&u&&(e=(0,bt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,ug.schemaHasRulesButRef)(r,this.RULES)){let a=(0,bt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=$i.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new zn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var dg=z((PA,ES)=>{ES.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 Zl=z((EA,yg)=>{"use strict";var IS=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),fg=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),Al=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),mg=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),OS=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function jl(t){let e="",r=0,n=0;for(n=0;n<t.length;n++)if(r=t[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n<t.length;n++){if(r=t[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var NS=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function pg(t){return t.length=0,!0}function CS(t,e,r){if(t.length){let n=jl(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function AS(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=CS;for(let c=0;c<t.length;c++){let u=t[c];if(!(u==="["||u==="]"))if(u===":"){if(s===!0&&(i=!0),!a(o,n,r))break;if(++e>7){r.error=!0;break}c>0&&t[c-1]===":"&&(s=!0),n.push(":");continue}else if(u==="%"){if(!a(o,n,r))break;a=pg}else{o.push(u);continue}}return o.length&&(a===pg?r.zone=o.join(""):i?n.push(o.join("")):n.push(jl(o))),r.address=n.join(""),r}function hg(t){if(jS(t,":")<2)return{host:t,isIPV6:!1};let e=AS(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function jS(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function ZS(t){let e=t,r=[],n=-1,o=0;for(;o=e.length;){if(o===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(o===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(o===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n)}return r.join("")}var MS={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},qS=/[@/?#:]/g,DS=/[@/?#]/g;function gg(t,e){let r=e?DS:qS;return r.lastIndex=0,t.replace(r,n=>MS[n])}function LS(t,e=!1){if(t.indexOf("%")===-1)return t;let r="";for(let n=0;n<t.length;n++){if(t[n]==="%"&&n+2<t.length){let o=t.slice(n+1,n+3);if(Al(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));e&&mg(i)?r+=i:r+="%"+s,n+=2;continue}}r+=t[n]}return r}function VS(t){let e="";for(let r=0;r<t.length;r++){if(t[r]==="%"&&r+2<t.length){let n=t.slice(r+1,r+3);if(Al(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&mg(s)?e+=s:e+="%"+o,r+=2;continue}}OS(t[r])?e+=t[r]:e+=escape(t[r])}return e}function US(t){let e="";for(let r=0;r<t.length;r++){if(t[r]==="%"&&r+2<t.length){let n=t.slice(r+1,r+3);if(Al(n)){e+="%"+n.toUpperCase(),r+=2;continue}}e+=escape(t[r])}return e}function FS(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!fg(r)){let n=hg(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=gg(r,!1)}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}yg.exports={nonSimpleDomain:NS,recomposeAuthority:FS,reescapeHostDelimiters:gg,normalizePercentEncoding:LS,normalizePathEncoding:VS,escapePreservingEscapes:US,removeDotSegments:ZS,isIPv4:fg,isUUID:IS,normalizeIPv6:hg,stringArrayToHexStripped:jl}});var $g=z((IA,wg)=>{"use strict";var{isUUID:BS}=Zl(),HS=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,JS=["http","https","ws","wss","urn","urn:uuid"];function GS(t){return JS.indexOf(t)!==-1}function Ml(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function _g(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function vg(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function KS(t){return t.secure=Ml(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function WS(t){if((t.port===(Ml(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function YS(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(HS);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let o=`${n}:${e.nid||t.nid}`,s=ql(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function QS(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),o=`${r}:${e.nid||n}`,s=ql(o);s&&(t=s.serialize(t,e));let i=t,a=t.nss;return i.path=`${n||e.nid}:${a}`,e.skipEscape=!0,i}function XS(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!BS(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function ez(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var bg={scheme:"http",domainHost:!0,parse:_g,serialize:vg},tz={scheme:"https",domainHost:bg.domainHost,parse:_g,serialize:vg},ki={scheme:"ws",domainHost:!0,parse:KS,serialize:WS},rz={scheme:"wss",domainHost:ki.domainHost,parse:ki.parse,serialize:ki.serialize},nz={scheme:"urn",parse:YS,serialize:QS,skipNormalize:!0},oz={scheme:"urn:uuid",parse:XS,serialize:ez,skipNormalize:!0},Si={http:bg,https:tz,ws:ki,wss:rz,urn:nz,"urn:uuid":oz};Object.setPrototypeOf(Si,null);function ql(t){return t&&(Si[t]||Si[t.toLowerCase()])||void 0}wg.exports={wsIsSecure:Ml,SCHEMES:Si,isValidSchemeName:GS,getSchemeHandler:ql}});var Tg=z((OA,zi)=>{"use strict";var{normalizeIPv6:sz,removeDotSegments:Ao,recomposeAuthority:iz,normalizePercentEncoding:az,normalizePathEncoding:cz,escapePreservingEscapes:uz,reescapeHostDelimiters:lz,isIPv4:dz,nonSimpleDomain:pz}=Zl(),{SCHEMES:fz,getSchemeHandler:kg}=$g();function mz(t,e){return typeof t=="string"?t=vz(t,e):typeof t=="object"&&(t=Rn(Ur(t,e),e)),t}function hz(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Sg(Rn(t,n),Rn(e,n),n,!0);return n.skipEscape=!0,Ur(o,n)}function Sg(t,e,r,n){let o={};return n||(t=Rn(Ur(t,r),r),e=Rn(Ur(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Ao(e.path||""),o.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Ao(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Ao(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?o.path="/"+e.path:t.path?o.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:o.path=e.path,o.path=Ao(o.path)),o.query=e.query):(o.path=t.path,e.query!==void 0?o.query=e.query:o.query=t.query),o.userinfo=t.userinfo,o.host=t.host,o.port=t.port),o.scheme=t.scheme),o.fragment=e.fragment,o}function gz(t,e,r){let n=xg(t,r),o=xg(e,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function Ur(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=kg(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=az(r.path):(r.path=uz(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=iz(r);if(i!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(i),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=Ao(a)),i===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),o.push(a)}return r.query!==void 0&&o.push("?",r.query),r.fragment!==void 0&&o.push("#",r.fragment),o.join("")}var yz=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function _z(t,e){if(e[2]!==void 0&&t.path&&t.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof t.port=="number"&&(t.port<0||t.port>65535))return"URI port is malformed."}function zg(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(yz);if(i){n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]);let a=_z(n,i);if(a!==void 0&&(n.error=n.error||a,o=!0),n.host)if(dz(n.host)===!1){let l=sz(n.host);n.host=l.host.toLowerCase(),s=l.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let c=kg(r.scheme||n.scheme);if(!r.unicodeSupport&&(!c||!c.unicodeSupport)&&n.host&&(r.domainHost||c&&c.domainHost)&&s===!1&&pz(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(u){n.error=n.error||"Host's domain name can not be converted to ASCII: "+u}if((!c||c&&!c.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=lz(unescape(n.host),s))),n.path&&(n.path=cz(n.path)),n.fragment))try{n.fragment=encodeURI(decodeURIComponent(n.fragment))}catch{n.error=n.error||"URI malformed"}c&&c.parse&&c.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o}}function Rn(t,e){return zg(t,e).parsed}function vz(t,e){return Rg(t,e).normalized}function Rg(t,e){let{parsed:r,malformedAuthorityOrPort:n}=zg(t,e);return{normalized:n?t:Ur(r,e),malformedAuthorityOrPort:n}}function xg(t,e){if(typeof t=="string"){let{normalized:r,malformedAuthorityOrPort:n}=Rg(t,e);return n?void 0:r}if(typeof t=="object")return Ur(t,e)}var Dl={SCHEMES:fz,normalize:mz,resolve:hz,resolveComponent:Sg,equal:gz,serialize:Ur,parse:Rn};zi.exports=Dl;zi.exports.default=Dl;zi.exports.fastUri=Dl});var Eg=z(Ll=>{"use strict";Object.defineProperty(Ll,"__esModule",{value:!0});var Pg=Tg();Pg.code='require("ajv/dist/runtime/uri").default';Ll.default=Pg});var Mg=z(Oe=>{"use strict";Object.defineProperty(Oe,"__esModule",{value:!0});Oe.CodeGen=Oe.Name=Oe.nil=Oe.stringify=Oe.str=Oe._=Oe.KeywordCxt=void 0;var bz=No();Object.defineProperty(Oe,"KeywordCxt",{enumerable:!0,get:function(){return bz.KeywordCxt}});var Tn=J();Object.defineProperty(Oe,"_",{enumerable:!0,get:function(){return Tn._}});Object.defineProperty(Oe,"str",{enumerable:!0,get:function(){return Tn.str}});Object.defineProperty(Oe,"stringify",{enumerable:!0,get:function(){return Tn.stringify}});Object.defineProperty(Oe,"nil",{enumerable:!0,get:function(){return Tn.nil}});Object.defineProperty(Oe,"Name",{enumerable:!0,get:function(){return Tn.Name}});Object.defineProperty(Oe,"CodeGen",{enumerable:!0,get:function(){return Tn.CodeGen}});var wz=wi(),Ag=Co(),$z=hl(),jo=xi(),xz=J(),Zo=Eo(),Ri=Po(),Ul=ne(),Ig=dg(),kz=Eg(),jg=(t,e)=>new RegExp(t,e);jg.code="new RegExp";var Sz=["removeAdditional","useDefaults","coerceTypes"],zz=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Rz={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."},Tz={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Og=200;function Pz(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,_,b,w,P,j,qe,nt,Qr,pa;let Un=t.strict,fa=(e=t.code)===null||e===void 0?void 0:e.optimize,gp=fa===!0||fa===void 0?1:fa||0,yp=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:jg,fv=(o=t.uriResolver)!==null&&o!==void 0?o:kz.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:Un)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Un)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:Un)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:Un)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:Un)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:gp,regExp:yp}:{optimize:gp,regExp:yp},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Og,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Og,meta:(_=t.meta)!==null&&_!==void 0?_:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(w=t.inlineRefs)!==null&&w!==void 0?w:!0,schemaId:(P=t.schemaId)!==null&&P!==void 0?P:"$id",addUsedSchema:(j=t.addUsedSchema)!==null&&j!==void 0?j:!0,validateSchema:(qe=t.validateSchema)!==null&&qe!==void 0?qe:!0,validateFormats:(nt=t.validateFormats)!==null&&nt!==void 0?nt:!0,unicodeRegExp:(Qr=t.unicodeRegExp)!==null&&Qr!==void 0?Qr:!0,int32range:(pa=t.int32range)!==null&&pa!==void 0?pa:!0,uriResolver:fv}}var Mo=class{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...Pz(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new xz.ValueScope({scope:{},prefixes:zz,es5:r,lines:n}),this.logger=Az(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,$z.getRules)(),Ng.call(this,Rz,e,"NOT SUPPORTED"),Ng.call(this,Tz,e,"DEPRECATED","warn"),this._metaOpts=Nz.call(this),e.formats&&Iz.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&Oz.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),Ez.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=Ig;n==="id"&&(o={...Ig},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||i.call(this,f)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Ag.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),i.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,o=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,n,o);return this}let s;if(typeof e=="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return r=(0,Zo.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=Cg.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new jo.SchemaEnv({schema:{},schemaId:n});if(r=jo.resolveSchema.call(this,o,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Cg.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,Zo.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Zz.call(this,n,r),!r)return(0,Ul.eachItem)(n,s=>Vl.call(this,s)),this;qz.call(this,r);let o={...r,type:(0,Ri.getJSONTypes)(r.type),schemaType:(0,Ri.getJSONTypes)(r.schemaType)};return(0,Ul.eachItem)(n,o.type.length===0?s=>Vl.call(this,s,o):s=>o.type.forEach(i=>Vl.call(this,s,o,i))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let o=n.rules.findIndex(s=>s.keyword===e);o>=0&&n.rules.splice(o,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,s)=>o+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let o of r){let s=o.split("/").slice(1),i=e;for(let a of s)i=i[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=i[a];u&&l&&(i[a]=Zg(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let o=e[n];(!r||r.test(n))&&(typeof o=="string"?delete e[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[n]))}}_addSchema(e,r,n,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,Zo.normalizeId)(i||n);let u=Zo.getSchemaRefs.call(this,e,n);return c=new jo.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):jo.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{jo.compileSchema.call(this,e)}finally{this.opts=r}}};Mo.ValidationError=wz.default;Mo.MissingRefError=Ag.default;Oe.default=Mo;function Ng(t,e,r,n="error"){for(let o in t){let s=o;s in e&&this.logger[n](`${r}: option ${o}. ${t[s]}`)}}function Cg(t){return t=(0,Zo.normalizeId)(t),this.schemas[t]||this.refs[t]}function Ez(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function Iz(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function Oz(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function Nz(){let t={...this.opts};for(let e of Sz)delete t[e];return t}var Cz={log(){},warn(){},error(){}};function Az(t){if(t===!1)return Cz;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var jz=/^[a-z_$][a-z0-9_$:-]*$/i;function Zz(t,e){let{RULES:r}=this;if((0,Ul.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!jz.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function Vl(t,e,r){var n;let o=e?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Ri.getJSONTypes)(e.type),schemaType:(0,Ri.getJSONTypes)(e.schemaType)}};e.before?Mz.call(this,i,a,e.before):i.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function Mz(t,e,r){let n=t.rules.findIndex(o=>o.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function qz(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Zg(e)),t.validateSchema=this.compile(e,!0))}var Dz={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Zg(t){return{anyOf:[t,Dz]}}});var qg=z(Fl=>{"use strict";Object.defineProperty(Fl,"__esModule",{value:!0});var Lz={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Fl.default=Lz});var Ug=z(Fr=>{"use strict";Object.defineProperty(Fr,"__esModule",{value:!0});Fr.callRef=Fr.getValidate=void 0;var Vz=Co(),Dg=lt(),Ye=J(),Pn=Vt(),Lg=xi(),Ti=ne(),Uz={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=Lg.resolveRef.call(c,u,o,r);if(l===void 0)throw new Vz.default(n.opts.uriResolver,o,r);if(l instanceof Lg.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Pi(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Pi(t,(0,Ye._)`${p}.validate`,u,u.$async)}function f(p){let h=Vg(t,p);Pi(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,Ye.stringify)(p)}:{ref:p}),g=e.name("valid"),_=t.subschema({schema:p,dataTypes:[],schemaPath:Ye.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function Vg(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ye._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Fr.getValidate=Vg;function Pi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Pn.default.this:Ye.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,Ye._)`await ${(0,Dg.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,Ye._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,Dg.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,Ye._)`${p}.errors`;o.assign(Pn.default.vErrors,(0,Ye._)`${Pn.default.vErrors} === null ? ${h} : ${Pn.default.vErrors}.concat(${h})`),o.assign(Pn.default.errors,(0,Ye._)`${Pn.default.vErrors}.length`)}function m(p){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=Ti.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,Ye._)`${p}.evaluated.props`);s.props=Ti.mergeEvaluated.props(o,_,s.props,Ye.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Ti.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,Ye._)`${p}.evaluated.items`);s.items=Ti.mergeEvaluated.items(o,_,s.items,Ye.Name)}}}Fr.callRef=Pi;Fr.default=Uz});var Fg=z(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});var Fz=qg(),Bz=Ug(),Hz=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Fz.default,Bz.default];Bl.default=Hz});var Bg=z(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});var Ei=J(),cr=Ei.operators,Ii={maximum:{okStr:"<=",ok:cr.LTE,fail:cr.GT},minimum:{okStr:">=",ok:cr.GTE,fail:cr.LT},exclusiveMaximum:{okStr:"<",ok:cr.LT,fail:cr.GTE},exclusiveMinimum:{okStr:">",ok:cr.GT,fail:cr.LTE}},Jz={message:({keyword:t,schemaCode:e})=>(0,Ei.str)`must be ${Ii[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ei._)`{comparison: ${Ii[t].okStr}, limit: ${e}}`},Gz={keyword:Object.keys(Ii),type:"number",schemaType:"number",$data:!0,error:Jz,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Ei._)`${r} ${Ii[e].fail} ${n} || isNaN(${r})`)}};Hl.default=Gz});var Hg=z(Jl=>{"use strict";Object.defineProperty(Jl,"__esModule",{value:!0});var qo=J(),Kz={message:({schemaCode:t})=>(0,qo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,qo._)`{multipleOf: ${t}}`},Wz={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:Kz,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,qo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,qo._)`${i} !== parseInt(${i})`;t.fail$data((0,qo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Jl.default=Wz});var Gg=z(Gl=>{"use strict";Object.defineProperty(Gl,"__esModule",{value:!0});function Jg(t){let e=t.length,r=0,n=0,o;for(;n<e;)r++,o=t.charCodeAt(n++),o>=55296&&o<=56319&&n<e&&(o=t.charCodeAt(n),(o&64512)===56320&&n++);return r}Gl.default=Jg;Jg.code='require("ajv/dist/runtime/ucs2length").default'});var Kg=z(Kl=>{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});var Br=J(),Yz=ne(),Qz=Gg(),Xz={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Br.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Br._)`{limit: ${t}}`},eR={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:Xz,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Br.operators.GT:Br.operators.LT,i=o.opts.unicode===!1?(0,Br._)`${r}.length`:(0,Br._)`${(0,Yz.useFunc)(t.gen,Qz.default)}(${r})`;t.fail$data((0,Br._)`${i} ${s} ${n}`)}};Kl.default=eR});var Wg=z(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});var tR=lt(),rR=ne(),En=J(),nR={message:({schemaCode:t})=>(0,En.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,En._)`{pattern: ${t}}`},oR={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:nR,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?(0,En._)`new RegExp`:(0,rR.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,En._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,En._)`!${l}`)}else{let c=(0,tR.usePattern)(t,o);t.fail$data((0,En._)`!${c}.test(${r})`)}}};Wl.default=oR});var Yg=z(Yl=>{"use strict";Object.defineProperty(Yl,"__esModule",{value:!0});var Do=J(),sR={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Do.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Do._)`{limit: ${t}}`},iR={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:sR,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Do.operators.GT:Do.operators.LT;t.fail$data((0,Do._)`Object.keys(${r}).length ${o} ${n}`)}};Yl.default=iR});var Qg=z(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});var Lo=lt(),Vo=J(),aR=ne(),cR={message:({params:{missingProperty:t}})=>(0,Vo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Vo._)`{missingProperty: ${t}}`},uR={keyword:"required",type:"object",schemaType:"array",$data:!0,error:cR,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let m=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(m?.[h]===void 0&&!p.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,_=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,aR.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Vo.nil,d);else for(let m of r)(0,Lo.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>f(m,p)),t.ok(p)}else e.if((0,Lo.checkMissingProp)(t,r,m)),(0,Lo.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Lo.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,Lo.propertyInData)(e,o,m,a.ownProperties)),e.if((0,Vo.not)(p),()=>{t.error(),e.break()})},Vo.nil)}}};Ql.default=uR});var Xg=z(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});var Uo=J(),lR={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Uo.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Uo._)`{limit: ${t}}`},dR={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:lR,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?Uo.operators.GT:Uo.operators.LT;t.fail$data((0,Uo._)`${r}.length ${o} ${n}`)}};Xl.default=dR});var Oi=z(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var ey=xl();ey.code='require("ajv/dist/runtime/equal").default';ed.default=ey});var ty=z(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});var td=Po(),Ne=J(),pR=ne(),fR=Oi(),mR={message:({params:{i:t,j:e}})=>(0,Ne.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ne._)`{i: ${t}, j: ${e}}`},hR={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:mR,code(t){let{gen:e,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=t;if(!n&&!o)return;let c=e.let("valid"),u=s.items?(0,td.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ne._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Ne._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,Ne._)`${p} > 1`,()=>(d()?f:m)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let g=e.name("item"),_=(0,td.checkDataTypes)(u,g,a.opts.strictNumbers,td.DataType.Wrong),b=e.const("indices",(0,Ne._)`{}`);e.for((0,Ne._)`;${p}--;`,()=>{e.let(g,(0,Ne._)`${r}[${p}]`),e.if(_,(0,Ne._)`continue`),u.length>1&&e.if((0,Ne._)`typeof ${g} == "string"`,(0,Ne._)`${g} += "_"`),e.if((0,Ne._)`typeof ${b}[${g}] == "number"`,()=>{e.assign(h,(0,Ne._)`${b}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ne._)`${b}[${g}] = ${p}`)})}function m(p,h){let g=(0,pR.useFunc)(e,fR.default),_=e.name("outer");e.label(_).for((0,Ne._)`;${p}--;`,()=>e.for((0,Ne._)`${h} = ${p}; ${h}--;`,()=>e.if((0,Ne._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};rd.default=hR});var ry=z(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var nd=J(),gR=ne(),yR=Oi(),_R={message:"must be equal to constant",params:({schemaCode:t})=>(0,nd._)`{allowedValue: ${t}}`},vR={keyword:"const",$data:!0,error:_R,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,nd._)`!${(0,gR.useFunc)(e,yR.default)}(${r}, ${o})`):t.fail((0,nd._)`${s} !== ${r}`)}};od.default=vR});var ny=z(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});var Fo=J(),bR=ne(),wR=Oi(),$R={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Fo._)`{allowedValues: ${t}}`},xR={keyword:"enum",schemaType:"array",$data:!0,error:$R,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,u=()=>c??(c=(0,bR.useFunc)(e,wR.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let m=e.const("vSchema",s);l=(0,Fo.or)(...o.map((p,h)=>f(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,m=>e.if((0,Fo._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,Fo._)`${u()}(${r}, ${m}[${p}])`:(0,Fo._)`${r} === ${h}`}}};sd.default=xR});var oy=z(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var kR=Bg(),SR=Hg(),zR=Kg(),RR=Wg(),TR=Yg(),PR=Qg(),ER=Xg(),IR=ty(),OR=ry(),NR=ny(),CR=[kR.default,SR.default,zR.default,RR.default,TR.default,PR.default,ER.default,IR.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},OR.default,NR.default];id.default=CR});var cd=z(Bo=>{"use strict";Object.defineProperty(Bo,"__esModule",{value:!0});Bo.validateAdditionalItems=void 0;var Hr=J(),ad=ne(),AR={message:({params:{len:t}})=>(0,Hr.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Hr._)`{limit: ${t}}`},jR={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:AR,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,ad.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}sy(t,n)}};function sy(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Hr._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Hr._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,ad.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Hr._)`${a} <= ${e.length}`);r.if((0,Hr.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:ad.Type.Num},u),i.allErrors||r.if((0,Hr.not)(u),()=>r.break())})}}Bo.validateAdditionalItems=sy;Bo.default=jR});var ud=z(Ho=>{"use strict";Object.defineProperty(Ho,"__esModule",{value:!0});Ho.validateTuple=void 0;var iy=J(),Ni=ne(),ZR=lt(),MR={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return ay(t,"additionalItems",e);r.items=!0,!(0,Ni.alwaysValidSchema)(r,e)&&t.ok((0,ZR.validateArray)(t))}};function ay(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Ni.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,iy._)`${s}.length`);r.forEach((d,f)=>{(0,Ni.alwaysValidSchema)(a,d)||(n.if((0,iy._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:m}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,Ni.checkStrictMode)(a,g,f.strictTuples)}}}Ho.validateTuple=ay;Ho.default=MR});var cy=z(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});var qR=ud(),DR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,qR.validateTuple)(t,"items")};ld.default=DR});var ly=z(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var uy=J(),LR=ne(),VR=lt(),UR=cd(),FR={message:({params:{len:t}})=>(0,uy.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,uy._)`{limit: ${t}}`},BR={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:FR,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,LR.alwaysValidSchema)(n,e)&&(o?(0,UR.validateAdditionalItems)(t,o):t.ok((0,VR.validateArray)(t)))}};dd.default=BR});var dy=z(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var pt=J(),Ci=ne(),HR={message:({params:{min:t,max:e}})=>e===void 0?(0,pt.str)`must contain at least ${t} valid item(s)`:(0,pt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,pt._)`{minContains: ${t}}`:(0,pt._)`{minContains: ${t}, maxContains: ${e}}`},JR={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:HR,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,pt._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Ci.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Ci.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Ci.alwaysValidSchema)(s,r)){let h=(0,pt._)`${l} >= ${i}`;a!==void 0&&(h=(0,pt._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,pt._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>p(g)))}function m(h,g){e.forRange("i",0,l,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:Ci.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,pt._)`${h}++`),a===void 0?e.if((0,pt._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,pt._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,pt._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};pd.default=JR});var my=z(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.validateSchemaDeps=It.validatePropertyDeps=It.error=void 0;var fd=J(),GR=ne(),Jo=lt();It.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,fd.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,fd._)`{property: ${t},
|
|
7
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,B._)`[${o}]`)}}}function Rk({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,B._)`${e} !== undefined`,()=>t.assign((0,B._)`${e}[${r}]`,n))}function _l(t,e,r,n=kn.Correct){let o=n===kn.Correct?B.operators.EQ:B.operators.NEQ,s;switch(t){case"null":return(0,B._)`${e} ${o} null`;case"array":s=(0,B._)`Array.isArray(${e})`;break;case"object":s=(0,B._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,B._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,B._)`typeof ${e} ${o} ${t}`}return n===kn.Correct?s:(0,B.not)(s);function i(a=B.nil){return(0,B.and)((0,B._)`typeof ${e} == "number"`,a,r?(0,B._)`isFinite(${e})`:B.nil)}}Me.checkDataType=_l;function vl(t,e,r,n){if(t.length===1)return _l(t[0],e,r,n);let o,s=(0,Mh.toHash)(t);if(s.array&&s.object){let i=(0,B._)`typeof ${e} != "object"`;o=s.null?i:(0,B._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=B.nil;s.number&&delete s.integer;for(let i in s)o=(0,B.and)(o,_l(i,e,r,n));return o}Me.checkDataTypes=vl;var Tk={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,B._)`{type: ${t}}`:(0,B._)`{type: ${e}}`};function bl(t){let e=Pk(t);(0,$k.reportError)(e,Tk)}Me.reportTypeError=bl;function Pk(t){let{gen:e,data:r,schema:n}=t,o=(0,Mh.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Vh=z(_i=>{"use strict";Object.defineProperty(_i,"__esModule",{value:!0});_i.assignDefaults=void 0;var Sn=J(),Ek=ne();function Ik(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Lh(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Lh(t,s,o.default))}_i.assignDefaults=Ik;function Lh(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Sn._)`${s}${(0,Sn.getProperty)(e)}`;if(o){(0,Ek.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Sn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Sn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Sn._)`${a} = ${(0,Sn.stringify)(r)}`)}});var dt=z(ce=>{"use strict";Object.defineProperty(ce,"__esModule",{value:!0});ce.validateUnion=ce.validateArray=ce.usePattern=ce.callValidateCode=ce.schemaProperties=ce.allSchemaProperties=ce.noPropertyInData=ce.propertyInData=ce.isOwnProperty=ce.hasPropFunc=ce.reportMissingProp=ce.checkMissingProp=ce.checkReportMissingProp=void 0;var he=J(),wl=ne(),or=Ut(),Ok=ne();function Nk(t,e){let{gen:r,data:n,it:o}=t;r.if(xl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,he._)`${e}`},!0),t.error()})}ce.checkReportMissingProp=Nk;function Ck({gen:t,data:e,it:{opts:r}},n,o){return(0,he.or)(...n.map(s=>(0,he.and)(xl(t,e,s,r.ownProperties),(0,he._)`${o} = ${s}`)))}ce.checkMissingProp=Ck;function Ak(t,e){t.setParams({missingProperty:e},!0),t.error()}ce.reportMissingProp=Ak;function Uh(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,he._)`Object.prototype.hasOwnProperty`})}ce.hasPropFunc=Uh;function $l(t,e,r){return(0,he._)`${Uh(t)}.call(${e}, ${r})`}ce.isOwnProperty=$l;function jk(t,e,r,n){let o=(0,he._)`${e}${(0,he.getProperty)(r)} !== undefined`;return n?(0,he._)`${o} && ${$l(t,e,r)}`:o}ce.propertyInData=jk;function xl(t,e,r,n){let o=(0,he._)`${e}${(0,he.getProperty)(r)} === undefined`;return n?(0,he.or)(o,(0,he.not)($l(t,e,r))):o}ce.noPropertyInData=xl;function Fh(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ce.allSchemaProperties=Fh;function Zk(t,e){return Fh(e).filter(r=>!(0,wl.alwaysValidSchema)(t,e[r]))}ce.schemaProperties=Zk;function Mk({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,he._)`${t}, ${e}, ${n}${o}`:e,d=[[or.default.instancePath,(0,he.strConcat)(or.default.instancePath,s)],[or.default.parentData,i.parentData],[or.default.parentDataProperty,i.parentDataProperty],[or.default.rootData,or.default.rootData]];i.opts.dynamicRef&&d.push([or.default.dynamicAnchors,or.default.dynamicAnchors]);let f=(0,he._)`${l}, ${r.object(...d)}`;return c!==he.nil?(0,he._)`${a}.call(${c}, ${f})`:(0,he._)`${a}(${f})`}ce.callValidateCode=Mk;var qk=(0,he._)`new RegExp`;function Dk({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,he._)`${o.code==="new RegExp"?qk:(0,Ok.useFunc)(t,o)}(${r}, ${n})`})}ce.usePattern=Dk;function Lk(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,he._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:wl.Type.Num},s),e.if((0,he.not)(s),a)})}}ce.validateArray=Lk;function Vk(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,wl.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,he._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,he.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}ce.validateUnion=Vk});var Jh=z(Et=>{"use strict";Object.defineProperty(Et,"__esModule",{value:!0});Et.validateKeywordUsage=Et.validSchemaType=Et.funcKeywordCode=Et.macroKeywordCode=void 0;var Ue=J(),Vr=Ut(),Uk=dt(),Fk=Eo();function Bk(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Hh(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Ue.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Et.macroKeywordCode=Bk;function Hk(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;Gk(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Hh(n,o,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&Bh(t),g(()=>t.error());else{let _=e.async?m():p();e.modifying&&Bh(t),g(()=>Jk(t,_))}}function m(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,Ue._)`await `),b=>n.assign(d,!1).if((0,Ue._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,Ue._)`${b}.errors`),()=>n.throw(b))),_}function p(){let _=(0,Ue._)`${l}.errors`;return n.assign(_,null),h(Ue.nil),_}function h(_=e.async?(0,Ue._)`await `:Ue.nil){let b=c.opts.passContext?Vr.default.this:Vr.default.self,w=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Ue._)`${_}${(0,Uk.callValidateCode)(t,l,b,w)}`,e.modifying)}function g(_){var b;n.if((0,Ue.not)((b=e.valid)!==null&&b!==void 0?b:d),_)}}Et.funcKeywordCode=Hk;function Bh(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Ue._)`${n.parentData}[${n.parentDataProperty}]`))}function Jk(t,e){let{gen:r}=t;r.if((0,Ue._)`Array.isArray(${e})`,()=>{r.assign(Vr.default.vErrors,(0,Ue._)`${Vr.default.vErrors} === null ? ${e} : ${Vr.default.vErrors}.concat(${e})`).assign(Vr.default.errors,(0,Ue._)`${Vr.default.vErrors}.length`),(0,Fk.extendErrors)(t)},()=>t.error())}function Gk({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Hh(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Ue.stringify)(r)})}function Kk(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Et.validSchemaType=Kk;function Wk({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Et.validateKeywordUsage=Wk});var Kh=z(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.extendSubschemaMode=sr.extendSubschemaData=sr.getSubschema=void 0;var It=J(),Gh=ne();function Yk(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,It._)`${t.schemaPath}${(0,It.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,It._)`${t.schemaPath}${(0,It.getProperty)(e)}${(0,It.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Gh.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||i===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:i,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}sr.getSubschema=Yk;function Qk(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=a.let("data",(0,It._)`${e.data}${(0,It.getProperty)(r)}`,!0);c(f),t.errorPath=(0,It.str)`${u}${(0,Gh.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,It._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof It.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}sr.extendSubschemaData=Qk;function Xk(t,{jtdDiscriminator:e,jtdMetadata:r,compositeRule:n,createErrors:o,allErrors:s}){n!==void 0&&(t.compositeRule=n),o!==void 0&&(t.createErrors=o),s!==void 0&&(t.allErrors=s),t.jtdDiscriminator=e,t.jtdMetadata=r}sr.extendSubschemaMode=Xk});var kl=z((F1,Wh)=>{"use strict";Wh.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!t(e[o],r[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!t(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}});var Qh=z((B1,Yh)=>{"use strict";var ir=Yh.exports=function(t,e,r){typeof e=="function"&&(r=e,e={}),r=e.cb||r;var n=typeof r=="function"?r:r.pre||function(){},o=r.post||function(){};vi(e,n,o,t,"",t)};ir.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};ir.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};ir.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};ir.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 vi(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in ir.arrayKeywords)for(var f=0;f<d.length;f++)vi(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in ir.propsKeywords){if(d&&typeof d=="object")for(var m in d)vi(t,e,r,d[m],o+"/"+l+"/"+eS(m),s,o,l,n,m)}else(l in ir.keywords||t.allKeys&&!(l in ir.skipKeywords))&&vi(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function eS(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Oo=z(We=>{"use strict";Object.defineProperty(We,"__esModule",{value:!0});We.getSchemaRefs=We.resolveUrl=We.normalizeId=We._getFullPath=We.getFullPath=We.inlineRef=void 0;var tS=ne(),rS=kl(),nS=Qh(),oS=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function sS(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Sl(t):e?Xh(t)<=e:!1}We.inlineRef=sS;var iS=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Sl(t){for(let e in t){if(iS.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Sl)||typeof r=="object"&&Sl(r))return!0}return!1}function Xh(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!oS.has(r)&&(typeof t[r]=="object"&&(0,tS.eachItem)(t[r],n=>e+=Xh(n)),e===1/0))return 1/0}return e}function eg(t,e="",r){r!==!1&&(e=zn(e));let n=t.parse(e);return tg(t,n)}We.getFullPath=eg;function tg(t,e){return t.serialize(e).split("#")[0]+"#"}We._getFullPath=tg;var aS=/#\/?$/;function zn(t){return t?t.replace(aS,""):""}We.normalizeId=zn;function cS(t,e,r){return r=zn(r),t.resolve(e,r)}We.resolveUrl=cS;var uS=/^[a-z_][-a-z0-9._]*$/i;function lS(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=zn(t[r]||e),s={"":o},i=eg(n,o,!1),a={},c=new Set;return nS(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),s[f]=g;function _(w){let P=this.opts.uriResolver.resolve;if(w=zn(g?P(g,w):w),c.has(w))throw l(w);c.add(w);let Z=this.refs[w];return typeof Z=="string"&&(Z=this.refs[Z]),typeof Z=="object"?u(d,Z.schema,w):w!==zn(h)&&(w[0]==="#"?(u(d,a[w],w),a[w]=d):this.refs[w]=h),w}function b(w){if(typeof w=="string"){if(!uS.test(w))throw new Error(`invalid anchor "${w}"`);_.call(this,`#${w}`)}}}),a;function u(d,f,m){if(f!==void 0&&!rS(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}We.getSchemaRefs=lS});var Ao=z(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.getData=ar.KeywordCxt=ar.validateFunctionCode=void 0;var ig=Ah(),rg=Io(),Rl=yl(),bi=Io(),dS=Vh(),Co=Jh(),zl=Kh(),C=J(),L=Ut(),pS=Oo(),Ft=ne(),No=Eo();function fS(t){if(ug(t)&&(lg(t),cg(t))){gS(t);return}ag(t,()=>(0,ig.topBoolOrEmptySchema)(t))}ar.validateFunctionCode=fS;function ag({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,C._)`${L.default.data}, ${L.default.valCxt}`,n.$async,()=>{t.code((0,C._)`"use strict"; ${ng(r,o)}`),hS(t,o),t.code(s)}):t.func(e,(0,C._)`${L.default.data}, ${mS(o)}`,n.$async,()=>t.code(ng(r,o)).code(s))}function mS(t){return(0,C._)`{${L.default.instancePath}="", ${L.default.parentData}, ${L.default.parentDataProperty}, ${L.default.rootData}=${L.default.data}${t.dynamicRef?(0,C._)`, ${L.default.dynamicAnchors}={}`:C.nil}}={}`}function hS(t,e){t.if(L.default.valCxt,()=>{t.var(L.default.instancePath,(0,C._)`${L.default.valCxt}.${L.default.instancePath}`),t.var(L.default.parentData,(0,C._)`${L.default.valCxt}.${L.default.parentData}`),t.var(L.default.parentDataProperty,(0,C._)`${L.default.valCxt}.${L.default.parentDataProperty}`),t.var(L.default.rootData,(0,C._)`${L.default.valCxt}.${L.default.rootData}`),e.dynamicRef&&t.var(L.default.dynamicAnchors,(0,C._)`${L.default.valCxt}.${L.default.dynamicAnchors}`)},()=>{t.var(L.default.instancePath,(0,C._)`""`),t.var(L.default.parentData,(0,C._)`undefined`),t.var(L.default.parentDataProperty,(0,C._)`undefined`),t.var(L.default.rootData,L.default.data),e.dynamicRef&&t.var(L.default.dynamicAnchors,(0,C._)`{}`)})}function gS(t){let{schema:e,opts:r,gen:n}=t;ag(t,()=>{r.$comment&&e.$comment&&pg(t),wS(t),n.let(L.default.vErrors,null),n.let(L.default.errors,0),r.unevaluated&&yS(t),dg(t),kS(t)})}function yS(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,C._)`${r}.evaluated`),e.if((0,C._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,C._)`${t.evaluated}.props`,(0,C._)`undefined`)),e.if((0,C._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,C._)`${t.evaluated}.items`,(0,C._)`undefined`))}function ng(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,C._)`/*# sourceURL=${r} */`:C.nil}function _S(t,e){if(ug(t)&&(lg(t),cg(t))){vS(t,e);return}(0,ig.boolOrEmptySchema)(t,e)}function cg({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function ug(t){return typeof t.schema!="boolean"}function vS(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&pg(t),$S(t),xS(t);let s=n.const("_errs",L.default.errors);dg(t,s),n.var(e,(0,C._)`${s} === ${L.default.errors}`)}function lg(t){(0,Ft.checkUnknownRules)(t),bS(t)}function dg(t,e){if(t.opts.jtd)return og(t,[],!1,e);let r=(0,rg.getSchemaTypes)(t.schema),n=(0,rg.coerceAndCheckDataType)(t,r);og(t,r,!n,e)}function bS(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ft.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function wS(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ft.checkStrictMode)(t,"default is ignored in the schema root")}function $S(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,pS.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function xS(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function pg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,C._)`${L.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,C.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,C._)`${L.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function kS(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,C._)`${L.default.errors} === 0`,()=>e.return(L.default.data),()=>e.throw((0,C._)`new ${o}(${L.default.vErrors})`)):(e.assign((0,C._)`${n}.errors`,L.default.vErrors),s.unevaluated&&SS(t),e.return((0,C._)`${L.default.errors} === 0`))}function SS({gen:t,evaluated:e,props:r,items:n}){r instanceof C.Name&&t.assign((0,C._)`${e}.props`,r),n instanceof C.Name&&t.assign((0,C._)`${e}.items`,n)}function og(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Ft.schemaHasRulesButRef)(s,l))){o.block(()=>mg(t,"$ref",l.all.$ref.definition));return}c.jtd||zS(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Rl.shouldUseGroup)(s,f)&&(f.type?(o.if((0,bi.checkDataType)(f.type,i,c.strictNumbers)),sg(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,bi.reportTypeError)(t)),o.endIf()):sg(t,f),a||o.if((0,C._)`${L.default.errors} === ${n||0}`))}}function sg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,dS.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Rl.shouldUseRule)(n,s)&&mg(t,s.keyword,s.definition,e.type)})}function zS(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(RS(t,e),t.opts.allowUnionTypes||TS(t,e),PS(t,t.dataTypes))}function RS(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{fg(t.dataTypes,r)||Tl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),IS(t,e)}}function TS(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Tl(t,"use allowUnionTypes to allow union type keyword")}function PS(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Rl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>ES(e,i))&&Tl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function ES(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function fg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function IS(t,e){let r=[];for(let n of t.dataTypes)fg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Tl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ft.checkStrictMode)(t,e,t.opts.strictTypes)}var wi=class{constructor(e,r,n){if((0,Co.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Ft.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",hg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Co.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",L.default.errors))}result(e,r,n){this.failResult((0,C.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,C.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,C._)`${r} !== undefined && (${(0,C.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?No.reportExtraError:No.reportError)(this,this.def.error,r)}$dataError(){(0,No.reportError)(this,this.def.$dataError||No.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,No.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=C.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=C.nil,r=C.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,C.or)((0,C._)`${o} === undefined`,r)),e!==C.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==C.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,C.or)(i(),a());function i(){if(n.length){if(!(r instanceof C.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,C._)`${(0,bi.checkDataTypes)(c,r,s.opts.strictNumbers,bi.DataType.Wrong)}`}return C.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,C._)`!${c}(${r})`}return C.nil}}subschema(e,r){let n=(0,zl.getSubschema)(this.it,e);(0,zl.extendSubschemaData)(n,this.it,e),(0,zl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return _S(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ft.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ft.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,C.Name)),!0}};ar.KeywordCxt=wi;function mg(t,e,r,n){let o=new wi(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Co.funcKeywordCode)(o,r):"macro"in r?(0,Co.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Co.funcKeywordCode)(o,r)}var OS=/^\/(?:[^~]|~0|~1)*$/,NS=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function hg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return L.default.rootData;if(t[0]==="/"){if(!OS.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=L.default.rootData}else{let u=NS.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,C._)`${s}${(0,C.getProperty)((0,Ft.unescapeJsonPointer)(u))}`,i=(0,C._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}ar.getData=hg});var $i=z(El=>{"use strict";Object.defineProperty(El,"__esModule",{value:!0});var Pl=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};El.default=Pl});var jo=z(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});var Il=Oo(),Ol=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Il.resolveUrl)(e,r,n),this.missingSchema=(0,Il.normalizeId)((0,Il.getFullPath)(e,this.missingRef))}};Nl.default=Ol});var ki=z(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.resolveSchema=pt.getCompilingSchema=pt.resolveRef=pt.compileSchema=pt.SchemaEnv=void 0;var bt=J(),CS=$i(),Ur=Ut(),wt=Oo(),gg=ne(),AS=Ao(),Rn=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,wt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};pt.SchemaEnv=Rn;function Al(t){let e=yg.call(this,t);if(e)return e;let r=(0,wt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new bt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:CS.default,code:(0,bt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Ur.default.data,parentData:Ur.default.parentData,parentDataProperty:Ur.default.parentDataProperty,dataNames:[Ur.default.data],dataPathArr:[bt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,bt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:bt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,bt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,AS.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Ur.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${Ur.default.self}`,`${Ur.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof bt.Name?void 0:p,items:h instanceof bt.Name?void 0:h,dynamicProps:p instanceof bt.Name,dynamicItems:h instanceof bt.Name},m.source&&(m.source.evaluated=(0,bt.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}pt.compileSchema=Al;function jS(t,e,r){var n;r=(0,wt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=qS.call(this,t,r);if(s===void 0){let i=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;i&&(s=new Rn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=ZS.call(this,s)}pt.resolveRef=jS;function ZS(t){return(0,wt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Al.call(this,t)}function yg(t){for(let e of this._compilations)if(MS(e,t))return e}pt.getCompilingSchema=yg;function MS(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function qS(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||xi.call(this,t,e)}function xi(t,e){let r=this.opts.uriResolver.parse(e),n=(0,wt._getFullPath)(this.opts.uriResolver,r),o=(0,wt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Cl.call(this,r,t);let s=(0,wt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=xi.call(this,t,i);return typeof a?.schema!="object"?void 0:Cl.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Al.call(this,i),s===(0,wt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,wt.resolveUrl)(this.opts.uriResolver,o,u)),new Rn({schema:a,schemaId:c,root:t,baseId:o})}return Cl.call(this,r,i)}}pt.resolveSchema=xi;var DS=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Cl(t,{baseId:e,schema:r,root:n}){var o;if(((o=t.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,gg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!DS.has(a)&&u&&(e=(0,wt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,gg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,wt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=xi.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Rn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var _g=z((Y1,LS)=>{LS.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 Ml=z((Q1,kg)=>{"use strict";var VS=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),bg=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),jl=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),wg=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),US=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function Zl(t){let e="",r=0,n=0;for(n=0;n<t.length;n++)if(r=t[n].charCodeAt(0),r!==48){if(!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n];break}for(n+=1;n<t.length;n++){if(r=t[n].charCodeAt(0),!(r>=48&&r<=57||r>=65&&r<=70||r>=97&&r<=102))return"";e+=t[n]}return e}var FS=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function vg(t){return t.length=0,!0}function BS(t,e,r){if(t.length){let n=Zl(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function HS(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=BS;for(let c=0;c<t.length;c++){let u=t[c];if(!(u==="["||u==="]"))if(u===":"){if(s===!0&&(i=!0),!a(o,n,r))break;if(++e>7){r.error=!0;break}c>0&&t[c-1]===":"&&(s=!0),n.push(":");continue}else if(u==="%"){if(!a(o,n,r))break;a=vg}else{o.push(u);continue}}return o.length&&(a===vg?r.zone=o.join(""):i?n.push(o.join("")):n.push(Zl(o))),r.address=n.join(""),r}function $g(t){if(JS(t,":")<2)return{host:t,isIPV6:!1};let e=HS(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function JS(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function GS(t){let e=t,r=[],n=-1,o=0;for(;o=e.length;){if(o===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(o===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(o===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n)}return r.join("")}var KS={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},WS=/[@/?#:]/g,YS=/[@/?#]/g;function xg(t,e){let r=e?YS:WS;return r.lastIndex=0,t.replace(r,n=>KS[n])}function QS(t,e=!1){if(t.indexOf("%")===-1)return t;let r="";for(let n=0;n<t.length;n++){if(t[n]==="%"&&n+2<t.length){let o=t.slice(n+1,n+3);if(jl(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));e&&wg(i)?r+=i:r+="%"+s,n+=2;continue}}r+=t[n]}return r}function XS(t){let e="";for(let r=0;r<t.length;r++){if(t[r]==="%"&&r+2<t.length){let n=t.slice(r+1,r+3);if(jl(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&wg(s)?e+=s:e+="%"+o,r+=2;continue}}US(t[r])?e+=t[r]:e+=escape(t[r])}return e}function ez(t){let e="";for(let r=0;r<t.length;r++){if(t[r]==="%"&&r+2<t.length){let n=t.slice(r+1,r+3);if(jl(n)){e+="%"+n.toUpperCase(),r+=2;continue}}e+=escape(t[r])}return e}function tz(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!bg(r)){let n=$g(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=xg(r,!1)}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}kg.exports={nonSimpleDomain:FS,recomposeAuthority:tz,reescapeHostDelimiters:xg,normalizePercentEncoding:QS,normalizePathEncoding:XS,escapePreservingEscapes:ez,removeDotSegments:GS,isIPv4:bg,isUUID:VS,normalizeIPv6:$g,stringArrayToHexStripped:Zl}});var Pg=z((X1,Tg)=>{"use strict";var{isUUID:rz}=Ml(),nz=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,oz=["http","https","ws","wss","urn","urn:uuid"];function sz(t){return oz.indexOf(t)!==-1}function ql(t){return t.secure===!0?!0:t.secure===!1?!1:t.scheme?t.scheme.length===3&&(t.scheme[0]==="w"||t.scheme[0]==="W")&&(t.scheme[1]==="s"||t.scheme[1]==="S")&&(t.scheme[2]==="s"||t.scheme[2]==="S"):!1}function Sg(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function zg(t){let e=String(t.scheme).toLowerCase()==="https";return(t.port===(e?443:80)||t.port==="")&&(t.port=void 0),t.path||(t.path="/"),t}function iz(t){return t.secure=ql(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function az(t){if((t.port===(ql(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function cz(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(nz);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let o=`${n}:${e.nid||t.nid}`,s=Dl(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function uz(t,e){if(t.nid===void 0)throw new Error("URN without nid cannot be serialized");let r=e.scheme||t.scheme||"urn",n=t.nid.toLowerCase(),o=`${r}:${e.nid||n}`,s=Dl(o);s&&(t=s.serialize(t,e));let i=t,a=t.nss;return i.path=`${n||e.nid}:${a}`,e.skipEscape=!0,i}function lz(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!rz(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function dz(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Rg={scheme:"http",domainHost:!0,parse:Sg,serialize:zg},pz={scheme:"https",domainHost:Rg.domainHost,parse:Sg,serialize:zg},Si={scheme:"ws",domainHost:!0,parse:iz,serialize:az},fz={scheme:"wss",domainHost:Si.domainHost,parse:Si.parse,serialize:Si.serialize},mz={scheme:"urn",parse:cz,serialize:uz,skipNormalize:!0},hz={scheme:"urn:uuid",parse:lz,serialize:dz,skipNormalize:!0},zi={http:Rg,https:pz,ws:Si,wss:fz,urn:mz,"urn:uuid":hz};Object.setPrototypeOf(zi,null);function Dl(t){return t&&(zi[t]||zi[t.toLowerCase()])||void 0}Tg.exports={wsIsSecure:ql,SCHEMES:zi,isValidSchemeName:sz,getSchemeHandler:Dl}});var Ag=z((ej,Ri)=>{"use strict";var{normalizeIPv6:gz,removeDotSegments:Zo,recomposeAuthority:yz,normalizePercentEncoding:_z,normalizePathEncoding:vz,escapePreservingEscapes:bz,reescapeHostDelimiters:wz,isIPv4:$z,nonSimpleDomain:xz}=Ml(),{SCHEMES:kz,getSchemeHandler:Ig}=Pg();function Sz(t,e){return typeof t=="string"?t=Ez(t,e):typeof t=="object"&&(t=Tn(Fr(t,e),e)),t}function zz(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Og(Tn(t,n),Tn(e,n),n,!0);return n.skipEscape=!0,Fr(o,n)}function Og(t,e,r,n){let o={};return n||(t=Tn(Fr(t,r),r),e=Tn(Fr(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Zo(e.path||""),o.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Zo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Zo(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?o.path="/"+e.path:t.path?o.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:o.path=e.path,o.path=Zo(o.path)),o.query=e.query):(o.path=t.path,e.query!==void 0?o.query=e.query:o.query=t.query),o.userinfo=t.userinfo,o.host=t.host,o.port=t.port),o.scheme=t.scheme),o.fragment=e.fragment,o}function Rz(t,e,r){let n=Eg(t,r),o=Eg(e,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function Fr(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=Ig(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=_z(r.path):(r.path=bz(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=yz(r);if(i!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(i),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=Zo(a)),i===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),o.push(a)}return r.query!==void 0&&o.push("?",r.query),r.fragment!==void 0&&o.push("#",r.fragment),o.join("")}var Tz=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Pz(t,e){if(e[2]!==void 0&&t.path&&t.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof t.port=="number"&&(t.port<0||t.port>65535))return"URI port is malformed."}function Ng(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(Tz);if(i){n.scheme=i[1],n.userinfo=i[3],n.host=i[4],n.port=parseInt(i[5],10),n.path=i[6]||"",n.query=i[7],n.fragment=i[8],isNaN(n.port)&&(n.port=i[5]);let a=Pz(n,i);if(a!==void 0&&(n.error=n.error||a,o=!0),n.host)if($z(n.host)===!1){let l=gz(n.host);n.host=l.host.toLowerCase(),s=l.isIPV6}else s=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let c=Ig(r.scheme||n.scheme);if(!r.unicodeSupport&&(!c||!c.unicodeSupport)&&n.host&&(r.domainHost||c&&c.domainHost)&&s===!1&&xz(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(u){n.error=n.error||"Host's domain name can not be converted to ASCII: "+u}if((!c||c&&!c.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=wz(unescape(n.host),s))),n.path&&(n.path=vz(n.path)),n.fragment))try{n.fragment=encodeURI(decodeURIComponent(n.fragment))}catch{n.error=n.error||"URI malformed"}c&&c.parse&&c.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o}}function Tn(t,e){return Ng(t,e).parsed}function Ez(t,e){return Cg(t,e).normalized}function Cg(t,e){let{parsed:r,malformedAuthorityOrPort:n}=Ng(t,e);return{normalized:n?t:Fr(r,e),malformedAuthorityOrPort:n}}function Eg(t,e){if(typeof t=="string"){let{normalized:r,malformedAuthorityOrPort:n}=Cg(t,e);return n?void 0:r}if(typeof t=="object")return Fr(t,e)}var Ll={SCHEMES:kz,normalize:Sz,resolve:zz,resolveComponent:Og,equal:Rz,serialize:Fr,parse:Tn};Ri.exports=Ll;Ri.exports.default=Ll;Ri.exports.fastUri=Ll});var Zg=z(Vl=>{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});var jg=Ag();jg.code='require("ajv/dist/runtime/uri").default';Vl.default=jg});var Bg=z(Oe=>{"use strict";Object.defineProperty(Oe,"__esModule",{value:!0});Oe.CodeGen=Oe.Name=Oe.nil=Oe.stringify=Oe.str=Oe._=Oe.KeywordCxt=void 0;var Iz=Ao();Object.defineProperty(Oe,"KeywordCxt",{enumerable:!0,get:function(){return Iz.KeywordCxt}});var Pn=J();Object.defineProperty(Oe,"_",{enumerable:!0,get:function(){return Pn._}});Object.defineProperty(Oe,"str",{enumerable:!0,get:function(){return Pn.str}});Object.defineProperty(Oe,"stringify",{enumerable:!0,get:function(){return Pn.stringify}});Object.defineProperty(Oe,"nil",{enumerable:!0,get:function(){return Pn.nil}});Object.defineProperty(Oe,"Name",{enumerable:!0,get:function(){return Pn.Name}});Object.defineProperty(Oe,"CodeGen",{enumerable:!0,get:function(){return Pn.CodeGen}});var Oz=$i(),Vg=jo(),Nz=gl(),Mo=ki(),Cz=J(),qo=Oo(),Ti=Io(),Fl=ne(),Mg=_g(),Az=Zg(),Ug=(t,e)=>new RegExp(t,e);Ug.code="new RegExp";var jz=["removeAdditional","useDefaults","coerceTypes"],Zz=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Mz={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."},qz={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},qg=200;function Dz(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,_,b,w,P,Z,qe,ot,Xr,fa;let Bn=t.strict,ma=(e=t.code)===null||e===void 0?void 0:e.optimize,xp=ma===!0||ma===void 0?1:ma||0,kp=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Ug,kv=(o=t.uriResolver)!==null&&o!==void 0?o:Az.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:Bn)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Bn)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:Bn)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:Bn)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:Bn)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:xp,regExp:kp}:{optimize:xp,regExp:kp},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:qg,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:qg,meta:(_=t.meta)!==null&&_!==void 0?_:!0,messages:(b=t.messages)!==null&&b!==void 0?b:!0,inlineRefs:(w=t.inlineRefs)!==null&&w!==void 0?w:!0,schemaId:(P=t.schemaId)!==null&&P!==void 0?P:"$id",addUsedSchema:(Z=t.addUsedSchema)!==null&&Z!==void 0?Z:!0,validateSchema:(qe=t.validateSchema)!==null&&qe!==void 0?qe:!0,validateFormats:(ot=t.validateFormats)!==null&&ot!==void 0?ot:!0,unicodeRegExp:(Xr=t.unicodeRegExp)!==null&&Xr!==void 0?Xr:!0,int32range:(fa=t.int32range)!==null&&fa!==void 0?fa:!0,uriResolver:kv}}var Do=class{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...Dz(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new Cz.ValueScope({scope:{},prefixes:Zz,es5:r,lines:n}),this.logger=Hz(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,Nz.getRules)(),Dg.call(this,Mz,e,"NOT SUPPORTED"),Dg.call(this,qz,e,"DEPRECATED","warn"),this._metaOpts=Fz.call(this),e.formats&&Vz.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&Uz.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),Lz.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=Mg;n==="id"&&(o={...Mg},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||i.call(this,f)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof Vg.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),i.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,o=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,n,o);return this}let s;if(typeof e=="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return r=(0,qo.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=Lg.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Mo.SchemaEnv({schema:{},schemaId:n});if(r=Mo.resolveSchema.call(this,o,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Lg.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,qo.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Gz.call(this,n,r),!r)return(0,Fl.eachItem)(n,s=>Ul.call(this,s)),this;Wz.call(this,r);let o={...r,type:(0,Ti.getJSONTypes)(r.type),schemaType:(0,Ti.getJSONTypes)(r.schemaType)};return(0,Fl.eachItem)(n,o.type.length===0?s=>Ul.call(this,s,o):s=>o.type.forEach(i=>Ul.call(this,s,o,i))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let o=n.rules.findIndex(s=>s.keyword===e);o>=0&&n.rules.splice(o,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,s)=>o+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let o of r){let s=o.split("/").slice(1),i=e;for(let a of s)i=i[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=i[a];u&&l&&(i[a]=Fg(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let o=e[n];(!r||r.test(n))&&(typeof o=="string"?delete e[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[n]))}}_addSchema(e,r,n,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,qo.normalizeId)(i||n);let u=qo.getSchemaRefs.call(this,e,n);return c=new Mo.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):Mo.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{Mo.compileSchema.call(this,e)}finally{this.opts=r}}};Do.ValidationError=Oz.default;Do.MissingRefError=Vg.default;Oe.default=Do;function Dg(t,e,r,n="error"){for(let o in t){let s=o;s in e&&this.logger[n](`${r}: option ${o}. ${t[s]}`)}}function Lg(t){return t=(0,qo.normalizeId)(t),this.schemas[t]||this.refs[t]}function Lz(){let t=this.opts.schemas;if(t)if(Array.isArray(t))this.addSchema(t);else for(let e in t)this.addSchema(t[e],e)}function Vz(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function Uz(t){if(Array.isArray(t)){this.addVocabulary(t);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let e in t){let r=t[e];r.keyword||(r.keyword=e),this.addKeyword(r)}}function Fz(){let t={...this.opts};for(let e of jz)delete t[e];return t}var Bz={log(){},warn(){},error(){}};function Hz(t){if(t===!1)return Bz;if(t===void 0)return console;if(t.log&&t.warn&&t.error)return t;throw new Error("logger must implement log, warn and error methods")}var Jz=/^[a-z_$][a-z0-9_$:-]*$/i;function Gz(t,e){let{RULES:r}=this;if((0,Fl.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Jz.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function Ul(t,e,r){var n;let o=e?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,Ti.getJSONTypes)(e.type),schemaType:(0,Ti.getJSONTypes)(e.schemaType)}};e.before?Kz.call(this,i,a,e.before):i.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(c=>this.addKeyword(c))}function Kz(t,e,r){let n=t.rules.findIndex(o=>o.keyword===r);n>=0?t.rules.splice(n,0,e):(t.rules.push(e),this.logger.warn(`rule ${r} is not defined`))}function Wz(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Fg(e)),t.validateSchema=this.compile(e,!0))}var Yz={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Fg(t){return{anyOf:[t,Yz]}}});var Hg=z(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});var Qz={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Bl.default=Qz});var Wg=z(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.callRef=Br.getValidate=void 0;var Xz=jo(),Jg=dt(),Ye=J(),En=Ut(),Gg=ki(),Pi=ne(),eR={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=Gg.resolveRef.call(c,u,o,r);if(l===void 0)throw new Xz.default(n.opts.uriResolver,o,r);if(l instanceof Gg.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Ei(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Ei(t,(0,Ye._)`${p}.validate`,u,u.$async)}function f(p){let h=Kg(t,p);Ei(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,Ye.stringify)(p)}:{ref:p}),g=e.name("valid"),_=t.subschema({schema:p,dataTypes:[],schemaPath:Ye.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function Kg(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ye._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Br.getValidate=Kg;function Ei(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?En.default.this:Ye.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,Ye._)`await ${(0,Jg.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,Ye._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,Jg.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,Ye._)`${p}.errors`;o.assign(En.default.vErrors,(0,Ye._)`${En.default.vErrors} === null ? ${h} : ${En.default.vErrors}.concat(${h})`),o.assign(En.default.errors,(0,Ye._)`${En.default.vErrors}.length`)}function m(p){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=Pi.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,Ye._)`${p}.evaluated.props`);s.props=Pi.mergeEvaluated.props(o,_,s.props,Ye.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Pi.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,Ye._)`${p}.evaluated.items`);s.items=Pi.mergeEvaluated.items(o,_,s.items,Ye.Name)}}}Br.callRef=Ei;Br.default=eR});var Yg=z(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});var tR=Hg(),rR=Wg(),nR=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",tR.default,rR.default];Hl.default=nR});var Qg=z(Jl=>{"use strict";Object.defineProperty(Jl,"__esModule",{value:!0});var Ii=J(),cr=Ii.operators,Oi={maximum:{okStr:"<=",ok:cr.LTE,fail:cr.GT},minimum:{okStr:">=",ok:cr.GTE,fail:cr.LT},exclusiveMaximum:{okStr:"<",ok:cr.LT,fail:cr.GTE},exclusiveMinimum:{okStr:">",ok:cr.GT,fail:cr.LTE}},oR={message:({keyword:t,schemaCode:e})=>(0,Ii.str)`must be ${Oi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ii._)`{comparison: ${Oi[t].okStr}, limit: ${e}}`},sR={keyword:Object.keys(Oi),type:"number",schemaType:"number",$data:!0,error:oR,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Ii._)`${r} ${Oi[e].fail} ${n} || isNaN(${r})`)}};Jl.default=sR});var Xg=z(Gl=>{"use strict";Object.defineProperty(Gl,"__esModule",{value:!0});var Lo=J(),iR={message:({schemaCode:t})=>(0,Lo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Lo._)`{multipleOf: ${t}}`},aR={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:iR,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Lo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Lo._)`${i} !== parseInt(${i})`;t.fail$data((0,Lo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Gl.default=aR});var ty=z(Kl=>{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});function ey(t){let e=t.length,r=0,n=0,o;for(;n<e;)r++,o=t.charCodeAt(n++),o>=55296&&o<=56319&&n<e&&(o=t.charCodeAt(n),(o&64512)===56320&&n++);return r}Kl.default=ey;ey.code='require("ajv/dist/runtime/ucs2length").default'});var ry=z(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});var Hr=J(),cR=ne(),uR=ty(),lR={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Hr.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Hr._)`{limit: ${t}}`},dR={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:lR,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Hr.operators.GT:Hr.operators.LT,i=o.opts.unicode===!1?(0,Hr._)`${r}.length`:(0,Hr._)`${(0,cR.useFunc)(t.gen,uR.default)}(${r})`;t.fail$data((0,Hr._)`${i} ${s} ${n}`)}};Wl.default=dR});var ny=z(Yl=>{"use strict";Object.defineProperty(Yl,"__esModule",{value:!0});var pR=dt(),fR=ne(),In=J(),mR={message:({schemaCode:t})=>(0,In.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,In._)`{pattern: ${t}}`},hR={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:mR,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?(0,In._)`new RegExp`:(0,fR.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,In._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,In._)`!${l}`)}else{let c=(0,pR.usePattern)(t,o);t.fail$data((0,In._)`!${c}.test(${r})`)}}};Yl.default=hR});var oy=z(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});var Vo=J(),gR={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Vo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Vo._)`{limit: ${t}}`},yR={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:gR,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Vo.operators.GT:Vo.operators.LT;t.fail$data((0,Vo._)`Object.keys(${r}).length ${o} ${n}`)}};Ql.default=yR});var sy=z(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});var Uo=dt(),Fo=J(),_R=ne(),vR={message:({params:{missingProperty:t}})=>(0,Fo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Fo._)`{missingProperty: ${t}}`},bR={keyword:"required",type:"object",schemaType:"array",$data:!0,error:vR,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let m=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(m?.[h]===void 0&&!p.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,_=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,_R.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Fo.nil,d);else for(let m of r)(0,Uo.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>f(m,p)),t.ok(p)}else e.if((0,Uo.checkMissingProp)(t,r,m)),(0,Uo.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Uo.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,Uo.propertyInData)(e,o,m,a.ownProperties)),e.if((0,Fo.not)(p),()=>{t.error(),e.break()})},Fo.nil)}}};Xl.default=bR});var iy=z(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var Bo=J(),wR={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Bo.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Bo._)`{limit: ${t}}`},$R={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:wR,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?Bo.operators.GT:Bo.operators.LT;t.fail$data((0,Bo._)`${r}.length ${o} ${n}`)}};ed.default=$R});var Ni=z(td=>{"use strict";Object.defineProperty(td,"__esModule",{value:!0});var ay=kl();ay.code='require("ajv/dist/runtime/equal").default';td.default=ay});var cy=z(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var rd=Io(),Ne=J(),xR=ne(),kR=Ni(),SR={message:({params:{i:t,j:e}})=>(0,Ne.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ne._)`{i: ${t}, j: ${e}}`},zR={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:SR,code(t){let{gen:e,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=t;if(!n&&!o)return;let c=e.let("valid"),u=s.items?(0,rd.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ne._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Ne._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,Ne._)`${p} > 1`,()=>(d()?f:m)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let g=e.name("item"),_=(0,rd.checkDataTypes)(u,g,a.opts.strictNumbers,rd.DataType.Wrong),b=e.const("indices",(0,Ne._)`{}`);e.for((0,Ne._)`;${p}--;`,()=>{e.let(g,(0,Ne._)`${r}[${p}]`),e.if(_,(0,Ne._)`continue`),u.length>1&&e.if((0,Ne._)`typeof ${g} == "string"`,(0,Ne._)`${g} += "_"`),e.if((0,Ne._)`typeof ${b}[${g}] == "number"`,()=>{e.assign(h,(0,Ne._)`${b}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ne._)`${b}[${g}] = ${p}`)})}function m(p,h){let g=(0,xR.useFunc)(e,kR.default),_=e.name("outer");e.label(_).for((0,Ne._)`;${p}--;`,()=>e.for((0,Ne._)`${h} = ${p}; ${h}--;`,()=>e.if((0,Ne._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};nd.default=zR});var uy=z(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});var od=J(),RR=ne(),TR=Ni(),PR={message:"must be equal to constant",params:({schemaCode:t})=>(0,od._)`{allowedValue: ${t}}`},ER={keyword:"const",$data:!0,error:PR,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,od._)`!${(0,RR.useFunc)(e,TR.default)}(${r}, ${o})`):t.fail((0,od._)`${s} !== ${r}`)}};sd.default=ER});var ly=z(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var Ho=J(),IR=ne(),OR=Ni(),NR={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Ho._)`{allowedValues: ${t}}`},CR={keyword:"enum",schemaType:"array",$data:!0,error:NR,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,u=()=>c??(c=(0,IR.useFunc)(e,OR.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let m=e.const("vSchema",s);l=(0,Ho.or)(...o.map((p,h)=>f(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,m=>e.if((0,Ho._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,Ho._)`${u()}(${r}, ${m}[${p}])`:(0,Ho._)`${r} === ${h}`}}};id.default=CR});var dy=z(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var AR=Qg(),jR=Xg(),ZR=ry(),MR=ny(),qR=oy(),DR=sy(),LR=iy(),VR=cy(),UR=uy(),FR=ly(),BR=[AR.default,jR.default,ZR.default,MR.default,qR.default,DR.default,LR.default,VR.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},UR.default,FR.default];ad.default=BR});var ud=z(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});Jo.validateAdditionalItems=void 0;var Jr=J(),cd=ne(),HR={message:({params:{len:t}})=>(0,Jr.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Jr._)`{limit: ${t}}`},JR={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:HR,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,cd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}py(t,n)}};function py(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Jr._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Jr._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,cd.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Jr._)`${a} <= ${e.length}`);r.if((0,Jr.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:cd.Type.Num},u),i.allErrors||r.if((0,Jr.not)(u),()=>r.break())})}}Jo.validateAdditionalItems=py;Jo.default=JR});var ld=z(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});Go.validateTuple=void 0;var fy=J(),Ci=ne(),GR=dt(),KR={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return my(t,"additionalItems",e);r.items=!0,!(0,Ci.alwaysValidSchema)(r,e)&&t.ok((0,GR.validateArray)(t))}};function my(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=Ci.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,fy._)`${s}.length`);r.forEach((d,f)=>{(0,Ci.alwaysValidSchema)(a,d)||(n.if((0,fy._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:m}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,Ci.checkStrictMode)(a,g,f.strictTuples)}}}Go.validateTuple=my;Go.default=KR});var hy=z(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var WR=ld(),YR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,WR.validateTuple)(t,"items")};dd.default=YR});var yy=z(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var gy=J(),QR=ne(),XR=dt(),eT=ud(),tT={message:({params:{len:t}})=>(0,gy.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,gy._)`{limit: ${t}}`},rT={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:tT,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,QR.alwaysValidSchema)(n,e)&&(o?(0,eT.validateAdditionalItems)(t,o):t.ok((0,XR.validateArray)(t)))}};pd.default=rT});var _y=z(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});var ft=J(),Ai=ne(),nT={message:({params:{min:t,max:e}})=>e===void 0?(0,ft.str)`must contain at least ${t} valid item(s)`:(0,ft.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ft._)`{minContains: ${t}}`:(0,ft._)`{minContains: ${t}, maxContains: ${e}}`},oT={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:nT,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,ft._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Ai.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Ai.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Ai.alwaysValidSchema)(s,r)){let h=(0,ft._)`${l} >= ${i}`;a!==void 0&&(h=(0,ft._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ft._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>p(g)))}function m(h,g){e.forRange("i",0,l,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:Ai.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,ft._)`${h}++`),a===void 0?e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ft._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};fd.default=oT});var wy=z(Ot=>{"use strict";Object.defineProperty(Ot,"__esModule",{value:!0});Ot.validateSchemaDeps=Ot.validatePropertyDeps=Ot.error=void 0;var md=J(),sT=ne(),Ko=dt();Ot.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,md.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,md._)`{property: ${t},
|
|
8
8
|
missingProperty: ${n},
|
|
9
9
|
depsCount: ${e},
|
|
10
|
-
deps: ${r}}`};var KR={keyword:"dependencies",type:"object",schemaType:"object",error:It.error,code(t){let[e,r]=WR(t);py(t,e),fy(t,r)}};function WR({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let o=Array.isArray(t[n])?e:r;o[n]=t[n]}return[e,r]}function py(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,Jo.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,Jo.checkReportMissingProp)(t,u)}):(r.if((0,fd._)`${c} && (${(0,Jo.checkMissingProp)(t,a,s)})`),(0,Jo.reportMissingProp)(t,s),r.else())}}It.validatePropertyDeps=py;function fy(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,GR.alwaysValidSchema)(s,e[a])||(r.if((0,Jo.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}It.validateSchemaDeps=fy;It.default=KR});var gy=z(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var hy=J(),YR=ne(),QR={message:"property name must be valid",params:({params:t})=>(0,hy._)`{propertyName: ${t.propertyName}}`},XR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:QR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,YR.alwaysValidSchema)(o,r))return;let s=e.name("valid");e.forIn("key",n,i=>{t.setParams({propertyName:i}),t.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),e.if((0,hy.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};md.default=XR});var gd=z(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var Ai=lt(),wt=J(),eT=Vt(),ji=ne(),tT={message:"must NOT have additional properties",params:({params:t})=>(0,wt._)`{additionalProperty: ${t.additionalProperty}}`},rT={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:tT,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,ji.alwaysValidSchema)(i,r))return;let u=(0,Ai.allSchemaProperties)(n.properties),l=(0,Ai.allSchemaProperties)(n.patternProperties);d(),t.ok((0,wt._)`${s} === ${eT.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(f(g),()=>p(g))})}function f(g){let _;if(u.length>8){let b=(0,ji.schemaRefOrVal)(i,n.properties,"properties");_=(0,Ai.isOwnProperty)(e,b,g)}else u.length?_=(0,wt.or)(...u.map(b=>(0,wt._)`${g} === ${b}`)):_=wt.nil;return l.length&&(_=(0,wt.or)(_,...l.map(b=>(0,wt._)`${(0,Ai.usePattern)(t,b)}.test(${g})`))),(0,wt.not)(_)}function m(g){e.code((0,wt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,ji.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,wt.not)(_),()=>{t.reset(),m(g)})):(h(g,_),a||e.if((0,wt.not)(_),()=>e.break()))}}function h(g,_,b){let w={keyword:"additionalProperties",dataProp:g,dataPropType:ji.Type.Str};b===!1&&Object.assign(w,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(w,_)}}};hd.default=rT});var vy=z(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var nT=No(),yy=lt(),yd=ne(),_y=gd(),oT={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&_y.default.code(new nT.KeywordCxt(s,_y.default,"additionalProperties"));let i=(0,yy.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=yd.mergeEvaluated.props(e,(0,yd.toHash)(i),s.props));let a=i.filter(d=>!(0,yd.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,yy.propertyInData)(e,o,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};_d.default=oT});var xy=z(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var by=lt(),Zi=J(),wy=ne(),$y=ne(),sT={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:o,it:s}=t,{opts:i}=s,a=(0,by.allSchemaProperties)(r),c=a.filter(h=>(0,wy.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof Zi.Name)&&(s.props=(0,$y.evaluatedPropsToName)(e,s.props));let{props:d}=s;f();function f(){for(let h of a)u&&m(h),s.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function m(h){for(let g in u)new RegExp(h).test(g)&&(0,wy.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,Zi._)`${(0,by.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:$y.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Zi._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,Zi.not)(l),()=>e.break())})})}}};vd.default=sT});var ky=z(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var iT=ne(),aT={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,iT.alwaysValidSchema)(n,r)){t.fail();return}let o=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),t.failResult(o,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};bd.default=aT});var Sy=z(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var cT=lt(),uT={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:cT.validateUnion,error:{message:"must match a schema in anyOf"}};wd.default=uT});var zy=z($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var Mi=J(),lT=ne(),dT={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Mi._)`{passingSchemas: ${t.passing}}`},pT={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:dT,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let f;(0,lT.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Mi._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Mi._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,Mi.Name)})})}}};$d.default=pT});var Ry=z(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var fT=ne(),mT={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let o=e.name("valid");r.forEach((s,i)=>{if((0,fT.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};xd.default=mT});var Ey=z(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var qi=J(),Py=ne(),hT={message:({params:t})=>(0,qi.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,qi._)`{failingKeyword: ${t.ifClause}}`},gT={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:hT,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Py.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Ty(n,"then"),s=Ty(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,qi.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,qi._)`${l}`):t.setParams({ifClause:l})}}}};function Ty(t,e){let r=t.schema[e];return r!==void 0&&!(0,Py.alwaysValidSchema)(t,r)}kd.default=gT});var Iy=z(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var yT=ne(),_T={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,yT.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Sd.default=_T});var Oy=z(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var vT=cd(),bT=cy(),wT=ud(),$T=ly(),xT=dy(),kT=my(),ST=gy(),zT=gd(),RT=vy(),TT=xy(),PT=ky(),ET=Sy(),IT=zy(),OT=Ry(),NT=Ey(),CT=Iy();function AT(t=!1){let e=[PT.default,ET.default,IT.default,OT.default,NT.default,CT.default,ST.default,zT.default,kT.default,RT.default,TT.default];return t?e.push(bT.default,$T.default):e.push(vT.default,wT.default),e.push(xT.default),e}zd.default=AT});var Ny=z(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var $e=J(),jT={message:({schemaCode:t})=>(0,$e.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,$e._)`{format: ${t}}`},ZT={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:jT,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,$e._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,$e._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,$e._)`${h}.type || "string"`).assign(_,(0,$e._)`${h}.validate`),()=>r.assign(g,(0,$e._)`"string"`).assign(_,h)),t.fail$data((0,$e.or)(b(),w()));function b(){return c.strictSchema===!1?$e.nil:(0,$e._)`${i} && !${_}`}function w(){let P=l.$async?(0,$e._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,$e._)`${_}(${n})`,j=(0,$e._)`(typeof ${_} == "function" ? ${P} : ${_}.test(${n}))`;return(0,$e._)`${_} && ${_} !== true && ${g} === ${e} && !${j}`}}function m(){let p=d.formats[s];if(!p){b();return}if(p===!0)return;let[h,g,_]=w(p);h===e&&t.pass(P());function b(){if(c.strictSchema===!1){d.logger.warn(j());return}throw new Error(j());function j(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function w(j){let qe=j instanceof RegExp?(0,$e.regexpCode)(j):c.code.formats?(0,$e._)`${c.code.formats}${(0,$e.getProperty)(s)}`:void 0,nt=r.scopeValue("formats",{key:s,ref:j,code:qe});return typeof j=="object"&&!(j instanceof RegExp)?[j.type||"string",j.validate,(0,$e._)`${nt}.validate`]:["string",j,nt]}function P(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,$e._)`await ${_}(${n})`}return typeof g=="function"?(0,$e._)`${_}(${n})`:(0,$e._)`${_}.test(${n})`}}}};Rd.default=ZT});var Cy=z(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var MT=Ny(),qT=[MT.default];Td.default=qT});var Ay=z(In=>{"use strict";Object.defineProperty(In,"__esModule",{value:!0});In.contentVocabulary=In.metadataVocabulary=void 0;In.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];In.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Zy=z(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var DT=Fg(),LT=oy(),VT=Oy(),UT=Cy(),jy=Ay(),FT=[DT.default,LT.default,(0,VT.default)(),UT.default,jy.metadataVocabulary,jy.contentVocabulary];Pd.default=FT});var qy=z(Di=>{"use strict";Object.defineProperty(Di,"__esModule",{value:!0});Di.DiscrError=void 0;var My;(function(t){t.Tag="tag",t.Mapping="mapping"})(My||(Di.DiscrError=My={}))});var Ly=z(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var On=J(),Ed=qy(),Dy=xi(),BT=Co(),HT=ne(),JT={message:({params:{discrError:t,tagName:e}})=>t===Ed.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,On._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},GT={keyword:"discriminator",type:"object",schemaType:"object",error:JT,code(t){let{gen:e,data:r,schema:n,parentSchema:o,it:s}=t,{oneOf:i}=o;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!i)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,On._)`${r}${(0,On.getProperty)(a)}`);e.if((0,On._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Ed.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,On._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:Ed.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,On.Name),p}function f(){var m;let p={},h=_(o),g=!0;for(let P=0;P<i.length;P++){let j=i[P];if(j?.$ref&&!(0,HT.schemaHasRulesButRef)(j,s.self.RULES)){let nt=j.$ref;if(j=Dy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,nt),j instanceof Dy.SchemaEnv&&(j=j.schema),j===void 0)throw new BT.default(s.opts.uriResolver,s.baseId,nt)}let qe=(m=j?.properties)===null||m===void 0?void 0:m[a];if(typeof qe!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(j)),b(qe,P)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({required:P}){return Array.isArray(P)&&P.includes(a)}function b(P,j){if(P.const)w(P.const,j);else if(P.enum)for(let qe of P.enum)w(qe,j);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function w(P,j){if(typeof P!="string"||P in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[P]=j}}}};Id.default=GT});var Vy=z((bj,KT)=>{KT.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 Nd=z((ge,Od)=>{"use strict";Object.defineProperty(ge,"__esModule",{value:!0});ge.MissingRefError=ge.ValidationError=ge.CodeGen=ge.Name=ge.nil=ge.stringify=ge.str=ge._=ge.KeywordCxt=ge.Ajv=void 0;var WT=Mg(),YT=Zy(),QT=Ly(),Uy=Vy(),XT=["/properties"],Li="http://json-schema.org/draft-07/schema",Nn=class extends WT.default{_addVocabularies(){super._addVocabularies(),YT.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(QT.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Uy,XT):Uy;this.addMetaSchema(e,Li,!1),this.refs["http://json-schema.org/schema"]=Li}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Li)?Li:void 0)}};ge.Ajv=Nn;Od.exports=ge=Nn;Od.exports.Ajv=Nn;Object.defineProperty(ge,"__esModule",{value:!0});ge.default=Nn;var eP=No();Object.defineProperty(ge,"KeywordCxt",{enumerable:!0,get:function(){return eP.KeywordCxt}});var Cn=J();Object.defineProperty(ge,"_",{enumerable:!0,get:function(){return Cn._}});Object.defineProperty(ge,"str",{enumerable:!0,get:function(){return Cn.str}});Object.defineProperty(ge,"stringify",{enumerable:!0,get:function(){return Cn.stringify}});Object.defineProperty(ge,"nil",{enumerable:!0,get:function(){return Cn.nil}});Object.defineProperty(ge,"Name",{enumerable:!0,get:function(){return Cn.Name}});Object.defineProperty(ge,"CodeGen",{enumerable:!0,get:function(){return Cn.CodeGen}});var tP=wi();Object.defineProperty(ge,"ValidationError",{enumerable:!0,get:function(){return tP.default}});var rP=Co();Object.defineProperty(ge,"MissingRefError",{enumerable:!0,get:function(){return rP.default}})});var Yy=z(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.formatNames=Nt.fastFormats=Nt.fullFormats=void 0;function Ot(t,e){return{validate:t,compare:e}}Nt.fullFormats={date:Ot(Jy,Zd),time:Ot(Ad(!0),Md),"date-time":Ot(Fy(!0),Ky),"iso-time":Ot(Ad(),Gy),"iso-date-time":Ot(Fy(),Wy),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:cP,"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:hP,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:uP,int32:{type:"number",validate:pP},int64:{type:"number",validate:fP},float:{type:"number",validate:Hy},double:{type:"number",validate:Hy},password:!0,binary:!0};Nt.fastFormats={...Nt.fullFormats,date:Ot(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Zd),time:Ot(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Md),"date-time":Ot(/^\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,Ky),"iso-time":Ot(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Gy),"iso-date-time":Ot(/^\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,Wy),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};Nt.formatNames=Object.keys(Nt.fullFormats);function nP(t){return t%4===0&&(t%100!==0||t%400===0)}var oP=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,sP=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Jy(t){let e=oP.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],o=+e[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&nP(r)?29:sP[n])}function Zd(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Cd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Ad(t){return function(r){let n=Cd.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,f=o-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&i<61}}function Md(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function Gy(t,e){if(!(t&&e))return;let r=Cd.exec(t),n=Cd.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t<e?-1:0}var jd=/t|\s/i;function Fy(t){let e=Ad(t);return function(n){let o=n.split(jd);return o.length===2&&Jy(o[0])&&e(o[1])}}function Ky(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Wy(t,e){if(!(t&&e))return;let[r,n]=t.split(jd),[o,s]=e.split(jd),i=Zd(r,o);if(i!==void 0)return i||Md(n,s)}var iP=/\/|:/,aP=/^(?:[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 cP(t){return iP.test(t)&&aP.test(t)}var By=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function uP(t){return By.lastIndex=0,By.test(t)}var lP=-(2**31),dP=2**31-1;function pP(t){return Number.isInteger(t)&&t<=dP&&t>=lP}function fP(t){return Number.isInteger(t)}function Hy(){return!0}var mP=/[^\\]\\Z/;function hP(t){if(mP.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Qy=z(An=>{"use strict";Object.defineProperty(An,"__esModule",{value:!0});An.formatLimitDefinition=void 0;var gP=Nd(),$t=J(),ur=$t.operators,Vi={formatMaximum:{okStr:"<=",ok:ur.LTE,fail:ur.GT},formatMinimum:{okStr:">=",ok:ur.GTE,fail:ur.LT},formatExclusiveMaximum:{okStr:"<",ok:ur.LT,fail:ur.GTE},formatExclusiveMinimum:{okStr:">",ok:ur.GT,fail:ur.LTE}},yP={message:({keyword:t,schemaCode:e})=>(0,$t.str)`should be ${Vi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,$t._)`{comparison: ${Vi[t].okStr}, limit: ${e}}`};An.formatLimitDefinition={keyword:Object.keys(Vi),type:"string",schemaType:"string",$data:!0,error:yP,code(t){let{gen:e,data:r,schemaCode:n,keyword:o,it:s}=t,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new gP.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,$t._)`${f}[${c.schemaCode}]`);t.fail$data((0,$t.or)((0,$t._)`typeof ${m} != "object"`,(0,$t._)`${m} instanceof RegExp`,(0,$t._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:i.code.formats?(0,$t._)`${i.code.formats}${(0,$t.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,$t._)`${f}.compare(${r}, ${n}) ${Vi[o].fail} 0`}},dependencies:["format"]};var _P=t=>(t.addKeyword(An.formatLimitDefinition),t);An.default=_P});var r_=z((Go,t_)=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});var jn=Yy(),vP=Qy(),qd=J(),Xy=new qd.Name("fullFormats"),bP=new qd.Name("fastFormats"),Dd=(t,e={keywords:!0})=>{if(Array.isArray(e))return e_(t,e,jn.fullFormats,Xy),t;let[r,n]=e.mode==="fast"?[jn.fastFormats,bP]:[jn.fullFormats,Xy],o=e.formats||jn.formatNames;return e_(t,o,r,n),e.keywords&&(0,vP.default)(t),t};Dd.get=(t,e="full")=>{let n=(e==="fast"?jn.fastFormats:jn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function e_(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,qd._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}t_.exports=Go=Dd;Object.defineProperty(Go,"__esModule",{value:!0});Go.default=Dd});var V={};ha(V,{BRAND:()=>Bv,DIRTY:()=>fr,EMPTY_PATH:()=>xv,INVALID:()=>Z,NEVER:()=>Tb,OK:()=>Ce,ParseStatus:()=>Te,Schema:()=>H,ZodAny:()=>Jt,ZodArray:()=>Zt,ZodBigInt:()=>hr,ZodBoolean:()=>gr,ZodBranded:()=>Bn,ZodCatch:()=>Rr,ZodDate:()=>yr,ZodDefault:()=>zr,ZodDiscriminatedUnion:()=>ls,ZodEffects:()=>st,ZodEnum:()=>kr,ZodError:()=>Fe,ZodFirstPartyTypeKind:()=>x,ZodFunction:()=>ps,ZodIntersection:()=>wr,ZodIssueCode:()=>$,ZodLazy:()=>$r,ZodLiteral:()=>xr,ZodMap:()=>on,ZodNaN:()=>an,ZodNativeEnum:()=>Sr,ZodNever:()=>mt,ZodNull:()=>vr,ZodNullable:()=>Rt,ZodNumber:()=>mr,ZodObject:()=>He,ZodOptional:()=>Be,ZodParsedType:()=>R,ZodPipeline:()=>Hn,ZodPromise:()=>Gt,ZodReadonly:()=>Tr,ZodRecord:()=>ds,ZodSchema:()=>H,ZodSet:()=>sn,ZodString:()=>Ht,ZodSymbol:()=>rn,ZodTransformer:()=>st,ZodTuple:()=>zt,ZodType:()=>H,ZodUndefined:()=>_r,ZodUnion:()=>br,ZodUnknown:()=>jt,ZodVoid:()=>nn,addIssueToContext:()=>k,any:()=>eb,array:()=>ob,bigint:()=>Kv,boolean:()=>Pp,coerce:()=>Rb,custom:()=>zp,date:()=>Wv,datetimeRegex:()=>kp,defaultErrorMap:()=>Ct,discriminatedUnion:()=>ab,effect:()=>vb,enum:()=>gb,function:()=>fb,getErrorMap:()=>Xr,getParsedType:()=>St,instanceof:()=>Jv,intersection:()=>cb,isAborted:()=>cs,isAsync:()=>en,isDirty:()=>us,isValid:()=>Bt,late:()=>Hv,lazy:()=>mb,literal:()=>hb,makeIssue:()=>Fn,map:()=>db,nan:()=>Gv,nativeEnum:()=>yb,never:()=>rb,null:()=>Xv,nullable:()=>wb,number:()=>Tp,object:()=>va,objectUtil:()=>ga,oboolean:()=>zb,onumber:()=>Sb,optional:()=>bb,ostring:()=>kb,pipeline:()=>xb,preprocess:()=>$b,promise:()=>_b,quotelessJson:()=>bv,record:()=>lb,set:()=>pb,setErrorMap:()=>$v,strictObject:()=>sb,string:()=>Rp,symbol:()=>Yv,transformer:()=>vb,tuple:()=>ub,undefined:()=>Qv,union:()=>ib,unknown:()=>tb,util:()=>Y,void:()=>nb});var Y;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(Y||(Y={}));var ga;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(ga||(ga={}));var R=Y.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),St=t=>{switch(typeof t){case"undefined":return R.undefined;case"string":return R.string;case"number":return Number.isNaN(t)?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":return Array.isArray(t)?R.array:t===null?R.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?R.promise:typeof Map<"u"&&t instanceof Map?R.map:typeof Set<"u"&&t instanceof Set?R.set:typeof Date<"u"&&t instanceof Date?R.date:R.object;default:return R.unknown}};var $=Y.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),bv=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Fe=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Y.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Fe.create=t=>new Fe(t);var wv=(t,e)=>{let r;switch(t.code){case $.invalid_type:t.received===R.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case $.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Y.jsonStringifyReplacer)}`;break;case $.unrecognized_keys:r=`Unrecognized key(s) in object: ${Y.joinValues(t.keys,", ")}`;break;case $.invalid_union:r="Invalid input";break;case $.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Y.joinValues(t.options)}`;break;case $.invalid_enum_value:r=`Invalid enum value. Expected ${Y.joinValues(t.options)}, received '${t.received}'`;break;case $.invalid_arguments:r="Invalid function arguments";break;case $.invalid_return_type:r="Invalid function return type";break;case $.invalid_date:r="Invalid date";break;case $.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:Y.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case $.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case $.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case $.custom:r="Invalid input";break;case $.invalid_intersection_types:r="Intersection results could not be merged";break;case $.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case $.not_finite:r="Number must be finite";break;default:r=e.defaultError,Y.assertNever(t)}return{message:r}},Ct=wv;var vp=Ct;function $v(t){vp=t}function Xr(){return vp}var Fn=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},xv=[];function k(t,e){let r=Xr(),n=Fn({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Ct?void 0:Ct].filter(o=>!!o)});t.common.issues.push(n)}var Te=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return Z;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return Z;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},Z=Object.freeze({status:"aborted"}),fr=t=>({status:"dirty",value:t}),Ce=t=>({status:"valid",value:t}),cs=t=>t.status==="aborted",us=t=>t.status==="dirty",Bt=t=>t.status==="valid",en=t=>typeof Promise<"u"&&t instanceof Promise;var E;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(E||(E={}));var ot=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},bp=(t,e)=>{if(Bt(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Fe(t.common.issues);return this._error=r,this._error}}};function F(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var H=class{get description(){return this._def.description}_getType(e){return St(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:St(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Te,ctx:{common:e.parent.common,data:e.data,parsedType:St(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(en(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:St(e)},o=this._parseSync({data:e,path:n.path,parent:n});return bp(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:St(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Bt(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>Bt(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:St(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(en(o)?o:Promise.resolve(o));return bp(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:$.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new st({schema:this,typeName:x.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Be.create(this,this._def)}nullable(){return Rt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Zt.create(this)}promise(){return Gt.create(this,this._def)}or(e){return br.create([this,e],this._def)}and(e){return wr.create(this,e,this._def)}transform(e){return new st({...F(this._def),schema:this,typeName:x.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new zr({...F(this._def),innerType:this,defaultValue:r,typeName:x.ZodDefault})}brand(){return new Bn({typeName:x.ZodBranded,type:this,...F(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Rr({...F(this._def),innerType:this,catchValue:r,typeName:x.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Hn.create(this,e)}readonly(){return Tr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},kv=/^c[^\s-]{8,}$/i,Sv=/^[0-9a-z]+$/,zv=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Rv=/^[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,Tv=/^[a-z0-9_-]{21}$/i,Pv=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Ev=/^[-+]?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)?)??$/,Iv=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Ov="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",ya,Nv=/^(?:(?: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])$/,Cv=/^(?:(?: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])$/,Av=/^(([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]))$/,jv=/^(([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])$/,Zv=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Mv=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,$p="((\\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])))",qv=new RegExp(`^${$p}$`);function xp(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function Dv(t){return new RegExp(`^${xp(t)}$`)}function kp(t){let e=`${$p}T${xp(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function Lv(t,e){return!!((e==="v4"||!e)&&Nv.test(t)||(e==="v6"||!e)&&Av.test(t))}function Vv(t,e){if(!Pv.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),o=JSON.parse(atob(n));return!(typeof o!="object"||o===null||"typ"in o&&o?.typ!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return!1}}function Uv(t,e){return!!((e==="v4"||!e)&&Cv.test(t)||(e==="v6"||!e)&&jv.test(t))}var Ht=class t extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==R.string){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:R.string,received:s.parsedType}),Z}let n=new Te,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?k(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&k(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")Iv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"email",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")ya||(ya=new RegExp(Ov,"u")),ya.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"emoji",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")Rv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"uuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")Tv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"nanoid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")kv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"cuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Sv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"cuid2",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")zv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"ulid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),k(o,{validation:"url",code:$.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"regex",code:$.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?kp(s).test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?qv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?Dv(s).test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?Ev.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"duration",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?Lv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"ip",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?Vv(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"jwt",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?Uv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"cidr",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?Zv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"base64",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?Mv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"base64url",code:$.invalid_string,message:s.message}),n.dirty()):Y.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:$.invalid_string,...E.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...E.errToObj(e)})}url(e){return this._addCheck({kind:"url",...E.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...E.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...E.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...E.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...E.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...E.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...E.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...E.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...E.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...E.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...E.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...E.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...E.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...E.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...E.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...E.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...E.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...E.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...E.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...E.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...E.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...E.errToObj(r)})}nonempty(e){return this.min(1,E.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Ht.create=t=>new Ht({checks:[],typeName:x.ZodString,coerce:t?.coerce??!1,...F(t)});function Fv(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}var mr=class t extends H{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==R.number){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:R.number,received:s.parsedType}),Z}let n,o=new Te;for(let s of this._def.checks)s.kind==="int"?Y.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),k(n,{code:$.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?Fv(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),k(n,{code:$.not_finite,message:s.message}),o.dirty()):Y.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,E.toString(r))}gt(e,r){return this.setLimit("min",e,!1,E.toString(r))}lte(e,r){return this.setLimit("max",e,!0,E.toString(r))}lt(e,r){return this.setLimit("max",e,!1,E.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:E.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:E.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:E.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:E.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:E.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:E.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:E.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:E.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:E.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:E.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&Y.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};mr.create=t=>new mr({checks:[],typeName:x.ZodNumber,coerce:t?.coerce||!1,...F(t)});var hr=class t extends H{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==R.bigint)return this._getInvalidInput(e);let n,o=new Te;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):Y.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return k(r,{code:$.invalid_type,expected:R.bigint,received:r.parsedType}),Z}gte(e,r){return this.setLimit("min",e,!0,E.toString(r))}gt(e,r){return this.setLimit("min",e,!1,E.toString(r))}lte(e,r){return this.setLimit("max",e,!0,E.toString(r))}lt(e,r){return this.setLimit("max",e,!1,E.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:E.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:E.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:E.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:E.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:E.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:E.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};hr.create=t=>new hr({checks:[],typeName:x.ZodBigInt,coerce:t?.coerce??!1,...F(t)});var gr=class extends H{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==R.boolean){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.boolean,received:n.parsedType}),Z}return Ce(e.data)}};gr.create=t=>new gr({typeName:x.ZodBoolean,coerce:t?.coerce||!1,...F(t)});var yr=class t extends H{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==R.date){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:R.date,received:s.parsedType}),Z}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_date}),Z}let n=new Te,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):Y.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:E.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:E.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};yr.create=t=>new yr({checks:[],coerce:t?.coerce||!1,typeName:x.ZodDate,...F(t)});var rn=class extends H{_parse(e){if(this._getType(e)!==R.symbol){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.symbol,received:n.parsedType}),Z}return Ce(e.data)}};rn.create=t=>new rn({typeName:x.ZodSymbol,...F(t)});var _r=class extends H{_parse(e){if(this._getType(e)!==R.undefined){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.undefined,received:n.parsedType}),Z}return Ce(e.data)}};_r.create=t=>new _r({typeName:x.ZodUndefined,...F(t)});var vr=class extends H{_parse(e){if(this._getType(e)!==R.null){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.null,received:n.parsedType}),Z}return Ce(e.data)}};vr.create=t=>new vr({typeName:x.ZodNull,...F(t)});var Jt=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return Ce(e.data)}};Jt.create=t=>new Jt({typeName:x.ZodAny,...F(t)});var jt=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ce(e.data)}};jt.create=t=>new jt({typeName:x.ZodUnknown,...F(t)});var mt=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return k(r,{code:$.invalid_type,expected:R.never,received:r.parsedType}),Z}};mt.create=t=>new mt({typeName:x.ZodNever,...F(t)});var nn=class extends H{_parse(e){if(this._getType(e)!==R.undefined){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.void,received:n.parsedType}),Z}return Ce(e.data)}};nn.create=t=>new nn({typeName:x.ZodVoid,...F(t)});var Zt=class t extends H{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==R.array)return k(r,{code:$.invalid_type,expected:R.array,received:r.parsedType}),Z;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(k(r,{code:i?$.too_big:$.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(k(r,{code:$.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(k(r,{code:$.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new ot(r,i,r.path,a)))).then(i=>Te.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new ot(r,i,r.path,a)));return Te.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:E.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:E.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:E.toString(r)}})}nonempty(e){return this.min(1,e)}};Zt.create=(t,e)=>new Zt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:x.ZodArray,...F(e)});function tn(t){if(t instanceof He){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Be.create(tn(n))}return new He({...t._def,shape:()=>e})}else return t instanceof Zt?new Zt({...t._def,type:tn(t.element)}):t instanceof Be?Be.create(tn(t.unwrap())):t instanceof Rt?Rt.create(tn(t.unwrap())):t instanceof zt?zt.create(t.items.map(e=>tn(e))):t}var He=class t extends H{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=Y.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==R.object){let u=this._getOrReturnCtx(e);return k(u,{code:$.invalid_type,expected:R.object,received:u.parsedType}),Z}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof mt&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new ot(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof mt){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(k(o,{code:$.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new ot(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>Te.mergeObjectSync(n,u)):Te.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return E.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:E.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:x.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of Y.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of Y.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return tn(this)}partial(e){let r={};for(let n of Y.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of Y.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Be;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Sp(Y.objectKeys(this.shape))}};He.create=(t,e)=>new He({shape:()=>t,unknownKeys:"strip",catchall:mt.create(),typeName:x.ZodObject,...F(e)});He.strictCreate=(t,e)=>new He({shape:()=>t,unknownKeys:"strict",catchall:mt.create(),typeName:x.ZodObject,...F(e)});He.lazycreate=(t,e)=>new He({shape:t,unknownKeys:"strip",catchall:mt.create(),typeName:x.ZodObject,...F(e)});var br=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new Fe(a.ctx.common.issues));return k(r,{code:$.invalid_union,unionErrors:i}),Z}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(c=>new Fe(c));return k(r,{code:$.invalid_union,unionErrors:a}),Z}}get options(){return this._def.options}};br.create=(t,e)=>new br({options:t,typeName:x.ZodUnion,...F(e)});var At=t=>t instanceof $r?At(t.schema):t instanceof st?At(t.innerType()):t instanceof xr?[t.value]:t instanceof kr?t.options:t instanceof Sr?Y.objectValues(t.enum):t instanceof zr?At(t._def.innerType):t instanceof _r?[void 0]:t instanceof vr?[null]:t instanceof Be?[void 0,...At(t.unwrap())]:t instanceof Rt?[null,...At(t.unwrap())]:t instanceof Bn||t instanceof Tr?At(t.unwrap()):t instanceof Rr?At(t._def.innerType):[],ls=class t extends H{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==R.object)return k(r,{code:$.invalid_type,expected:R.object,received:r.parsedType}),Z;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(k(r,{code:$.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),Z)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=At(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:x.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...F(n)})}};function _a(t,e){let r=St(t),n=St(e);if(t===e)return{valid:!0,data:t};if(r===R.object&&n===R.object){let o=Y.objectKeys(e),s=Y.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=_a(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===R.array&&n===R.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=_a(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===R.date&&n===R.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var wr=class extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(cs(s)||cs(i))return Z;let a=_a(s.value,i.value);return a.valid?((us(s)||us(i))&&r.dirty(),{status:r.value,value:a.data}):(k(n,{code:$.invalid_intersection_types}),Z)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};wr.create=(t,e,r)=>new wr({left:t,right:e,typeName:x.ZodIntersection,...F(r)});var zt=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==R.array)return k(n,{code:$.invalid_type,expected:R.array,received:n.parsedType}),Z;if(n.data.length<this._def.items.length)return k(n,{code:$.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),Z;!this._def.rest&&n.data.length>this._def.items.length&&(k(n,{code:$.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new ot(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Te.mergeArray(r,i)):Te.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};zt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new zt({items:t,typeName:x.ZodTuple,rest:null,...F(e)})};var ds=class t extends H{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==R.object)return k(n,{code:$.invalid_type,expected:R.object,received:n.parsedType}),Z;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new ot(n,a,n.path,a)),value:i._parse(new ot(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Te.mergeObjectAsync(r,o):Te.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof H?new t({keyType:e,valueType:r,typeName:x.ZodRecord,...F(n)}):new t({keyType:Ht.create(),valueType:e,typeName:x.ZodRecord,...F(r)})}},on=class extends H{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==R.map)return k(n,{code:$.invalid_type,expected:R.map,received:n.parsedType}),Z;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new ot(n,a,n.path,[u,"key"])),value:s._parse(new ot(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return Z;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return Z;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};on.create=(t,e,r)=>new on({valueType:e,keyType:t,typeName:x.ZodMap,...F(r)});var sn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==R.set)return k(n,{code:$.invalid_type,expected:R.set,received:n.parsedType}),Z;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(k(n,{code:$.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(k(n,{code:$.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return Z;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new ot(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:E.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:E.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};sn.create=(t,e)=>new sn({valueType:t,minSize:null,maxSize:null,typeName:x.ZodSet,...F(e)});var ps=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==R.function)return k(r,{code:$.invalid_type,expected:R.function,received:r.parsedType}),Z;function n(a,c){return Fn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Xr(),Ct].filter(u=>!!u),issueData:{code:$.invalid_arguments,argumentsError:c}})}function o(a,c){return Fn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Xr(),Ct].filter(u=>!!u),issueData:{code:$.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof Gt){let a=this;return Ce(async function(...c){let u=new Fe([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return Ce(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Fe([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Fe([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:zt.create(e).rest(jt.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||zt.create([]).rest(jt.create()),returns:r||jt.create(),typeName:x.ZodFunction,...F(n)})}},$r=class extends H{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};$r.create=(t,e)=>new $r({getter:t,typeName:x.ZodLazy,...F(e)});var xr=class extends H{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return k(r,{received:r.data,code:$.invalid_literal,expected:this._def.value}),Z}return{status:"valid",value:e.data}}get value(){return this._def.value}};xr.create=(t,e)=>new xr({value:t,typeName:x.ZodLiteral,...F(e)});function Sp(t,e){return new kr({values:t,typeName:x.ZodEnum,...F(e)})}var kr=class t extends H{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return k(r,{expected:Y.joinValues(n),received:r.parsedType,code:$.invalid_type}),Z}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return k(r,{received:r.data,code:$.invalid_enum_value,options:n}),Z}return Ce(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};kr.create=Sp;var Sr=class extends H{_parse(e){let r=Y.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==R.string&&n.parsedType!==R.number){let o=Y.objectValues(r);return k(n,{expected:Y.joinValues(o),received:n.parsedType,code:$.invalid_type}),Z}if(this._cache||(this._cache=new Set(Y.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=Y.objectValues(r);return k(n,{received:n.data,code:$.invalid_enum_value,options:o}),Z}return Ce(e.data)}get enum(){return this._def.values}};Sr.create=(t,e)=>new Sr({values:t,typeName:x.ZodNativeEnum,...F(e)});var Gt=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==R.promise&&r.common.async===!1)return k(r,{code:$.invalid_type,expected:R.promise,received:r.parsedType}),Z;let n=r.parsedType===R.promise?r.data:Promise.resolve(r.data);return Ce(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Gt.create=(t,e)=>new Gt({type:t,typeName:x.ZodPromise,...F(e)});var st=class extends H{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===x.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{k(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return Z;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?Z:c.status==="dirty"?fr(c.value):r.value==="dirty"?fr(c.value):c});{if(r.value==="aborted")return Z;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?Z:a.status==="dirty"?fr(a.value):r.value==="dirty"?fr(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?Z:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?Z:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Bt(i))return Z;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>Bt(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):Z);Y.assertNever(o)}};st.create=(t,e,r)=>new st({schema:t,typeName:x.ZodEffects,effect:e,...F(r)});st.createWithPreprocess=(t,e,r)=>new st({schema:e,effect:{type:"preprocess",transform:t},typeName:x.ZodEffects,...F(r)});var Be=class extends H{_parse(e){return this._getType(e)===R.undefined?Ce(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Be.create=(t,e)=>new Be({innerType:t,typeName:x.ZodOptional,...F(e)});var Rt=class extends H{_parse(e){return this._getType(e)===R.null?Ce(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Rt.create=(t,e)=>new Rt({innerType:t,typeName:x.ZodNullable,...F(e)});var zr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===R.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};zr.create=(t,e)=>new zr({innerType:t,typeName:x.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...F(e)});var Rr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return en(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Fe(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Fe(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Rr.create=(t,e)=>new Rr({innerType:t,typeName:x.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...F(e)});var an=class extends H{_parse(e){if(this._getType(e)!==R.nan){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.nan,received:n.parsedType}),Z}return{status:"valid",value:e.data}}};an.create=t=>new an({typeName:x.ZodNaN,...F(t)});var Bv=Symbol("zod_brand"),Bn=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},Hn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?Z:s.status==="dirty"?(r.dirty(),fr(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?Z:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:x.ZodPipeline})}},Tr=class extends H{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Bt(o)&&(o.value=Object.freeze(o.value)),o);return en(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Tr.create=(t,e)=>new Tr({innerType:t,typeName:x.ZodReadonly,...F(e)});function wp(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function zp(t,e={},r){return t?Jt.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=wp(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=wp(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Jt.create()}var Hv={object:He.lazycreate},x;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(x||(x={}));var Jv=(t,e={message:`Input not instance of ${t.name}`})=>zp(r=>r instanceof t,e),Rp=Ht.create,Tp=mr.create,Gv=an.create,Kv=hr.create,Pp=gr.create,Wv=yr.create,Yv=rn.create,Qv=_r.create,Xv=vr.create,eb=Jt.create,tb=jt.create,rb=mt.create,nb=nn.create,ob=Zt.create,va=He.create,sb=He.strictCreate,ib=br.create,ab=ls.create,cb=wr.create,ub=zt.create,lb=ds.create,db=on.create,pb=sn.create,fb=ps.create,mb=$r.create,hb=xr.create,gb=kr.create,yb=Sr.create,_b=Gt.create,vb=st.create,bb=Be.create,wb=Rt.create,$b=st.createWithPreprocess,xb=Hn.create,kb=()=>Rp().optional(),Sb=()=>Tp().optional(),zb=()=>Pp().optional(),Rb={string:t=>Ht.create({...t,coerce:!0}),number:t=>mr.create({...t,coerce:!0}),boolean:t=>gr.create({...t,coerce:!0}),bigint:t=>hr.create({...t,coerce:!0}),date:t=>yr.create({...t,coerce:!0})};var Tb=Z;var Pb=Object.freeze({status:"aborted"});function v(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Eb=Symbol("zod_brand"),Mt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},fs={};function Xe(t){return t&&Object.assign(fs,t),fs}var Q={};ha(Q,{BIGINT_FORMAT_RANGES:()=>Ip,Class:()=>wa,NUMBER_FORMAT_RANGES:()=>Ta,aborted:()=>Er,allowsEval:()=>Sa,assert:()=>Ab,assertEqual:()=>Ib,assertIs:()=>Nb,assertNever:()=>Cb,assertNotEqual:()=>Ob,assignProp:()=>ka,cached:()=>Kn,captureStackTrace:()=>hs,cleanEnum:()=>Gb,cleanRegex:()=>Yn,clone:()=>et,createTransparentProxy:()=>Lb,defineLazy:()=>de,esc:()=>Pr,escapeRegex:()=>Kt,extend:()=>Fb,finalizeIssue:()=>ht,floatSafeRemainder:()=>xa,getElementAtPath:()=>jb,getEnumValues:()=>Gn,getLengthableOrigin:()=>Qn,getParsedType:()=>Db,getSizableOrigin:()=>Op,isObject:()=>cn,isPlainObject:()=>un,issue:()=>Pa,joinValues:()=>ms,jsonStringifyReplacer:()=>$a,merge:()=>Bb,normalizeParams:()=>M,nullish:()=>Wn,numKeys:()=>qb,omit:()=>Ub,optionalKeys:()=>Ra,partial:()=>Hb,pick:()=>Vb,prefixIssues:()=>Tt,primitiveTypes:()=>Ep,promiseAllObject:()=>Zb,propertyKeyTypes:()=>za,randomString:()=>Mb,required:()=>Jb,stringifyPrimitive:()=>gs,unwrapMessage:()=>Jn});function Ib(t){return t}function Ob(t){return t}function Nb(t){}function Cb(t){throw new Error}function Ab(t){}function Gn(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function ms(t,e="|"){return t.map(r=>gs(r)).join(e)}function $a(t,e){return typeof e=="bigint"?e.toString():e}function Kn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Wn(t){return t==null}function Yn(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function xa(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function de(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function ka(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function jb(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Zb(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let o={};for(let s=0;s<e.length;s++)o[e[s]]=n[s];return o})}function Mb(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Pr(t){return JSON.stringify(t)}var hs=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function cn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Sa=Kn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function un(t){if(cn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(cn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function qb(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Db=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},za=new Set(["string","number","symbol"]),Ep=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Kt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function et(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function M(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function Lb(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function gs(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ra(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Ta={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Ip={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Vb(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return et(t,{...t._zod.def,shape:r,checks:[]})}function Ub(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return et(t,{...t._zod.def,shape:r,checks:[]})}function Fb(t,e){if(!un(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return ka(this,"shape",n),n},checks:[]};return et(t,r)}function Bb(t,e){return et(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return ka(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Hb(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return et(e,{...e._zod.def,shape:o,checks:[]})}function Jb(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return et(e,{...e._zod.def,shape:o,checks:[]})}function Er(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Tt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Jn(t){return typeof t=="string"?t:t?.message}function ht(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Jn(t.inst?._zod.def?.error?.(t))??Jn(e?.error?.(t))??Jn(r.customError?.(t))??Jn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Op(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Qn(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Pa(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function Gb(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var wa=class{constructor(...e){}};var Np=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,$a,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},ys=v("$ZodError",Np),Xn=v("$ZodError",Np,{Parent:Error});function Ea(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function Ia(t,e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>o({issues:a}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(t),n}var Oa=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new Mt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>ht(c,s,Xe())));throw hs(a,o?.callee),a}return i.value},Na=Oa(Xn),Ca=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>ht(c,s,Xe())));throw hs(a,o?.callee),a}return i.value},Aa=Ca(Xn),ja=t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new Mt;return s.issues.length?{success:!1,error:new(t??ys)(s.issues.map(i=>ht(i,o,Xe())))}:{success:!0,data:s.value}},Ir=ja(Xn),Za=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>ht(i,o,Xe())))}:{success:!0,data:s.value}},Or=Za(Xn);var Cp=/^[cC][^\s-]{8,}$/,Ap=/^[0-9a-z]+$/,jp=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Zp=/^[0-9a-vA-V]{20}$/,Mp=/^[A-Za-z0-9]{27}$/,qp=/^[a-zA-Z0-9_-]{21}$/,Dp=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Lp=/^([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})$/,Ma=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([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)$/;var Vp=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Wb="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Up(){return new RegExp(Wb,"u")}var Fp=/^(?:(?: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])$/,Bp=/^(([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})$/,Hp=/^((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])$/,Jp=/^(([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])$/,Gp=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,qa=/^[A-Za-z0-9_-]*$/,Kp=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Wp=/^\+(?:[0-9]){6,14}[0-9]$/,Yp="(?:(?:\\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])))",Qp=new RegExp(`^${Yp}$`);function Xp(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function ef(t){return new RegExp(`^${Xp(t)}$`)}function tf(t){let e=Xp({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${Yp}T(?:${n})$`)}var rf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var nf=/^\d+$/,of=/^-?\d+(?:\.\d+)?/i,sf=/true|false/i,af=/null/i;var cf=/^[^A-Z]*$/,uf=/^[^a-z]*$/;var Pe=v("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),lf={number:"number",bigint:"bigint",object:"date"},Da=v("$ZodCheckLessThan",(t,e)=>{Pe.init(t,e);let r=lf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),La=v("$ZodCheckGreaterThan",(t,e)=>{Pe.init(t,e);let r=lf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),df=v("$ZodCheckMultipleOf",(t,e)=>{Pe.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):xa(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),pf=v("$ZodCheckNumberFormat",(t,e)=>{Pe.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Ta[e.format];t._zod.onattach.push(i=>{let a=i._zod.bag;a.format=e.format,a.minimum=o,a.maximum=s,r&&(a.pattern=nf)}),t._zod.check=i=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:e.format,code:"invalid_type",input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort});return}}a<o&&i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),a>s&&i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:t})}});var ff=v("$ZodCheckMaxLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Wn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;if(o.length<=e.maximum)return;let i=Qn(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),mf=v("$ZodCheckMinLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Wn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;if(o.length>=e.minimum)return;let i=Qn(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),hf=v("$ZodCheckLengthEquals",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Wn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.length,o.maximum=e.length,o.length=e.length}),t._zod.check=n=>{let o=n.value,s=o.length;if(s===e.length)return;let i=Qn(o),a=s>e.length;n.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),eo=v("$ZodCheckStringFormat",(t,e)=>{var r,n;Pe.init(t,e),t._zod.onattach.push(o=>{let s=o._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=o=>{e.pattern.lastIndex=0,!e.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:e.format,input:o.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),gf=v("$ZodCheckRegex",(t,e)=>{eo.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),yf=v("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=cf),eo.init(t,e)}),_f=v("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=uf),eo.init(t,e)}),vf=v("$ZodCheckIncludes",(t,e)=>{Pe.init(t,e);let r=Kt(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),bf=v("$ZodCheckStartsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`^${Kt(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),wf=v("$ZodCheckEndsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`.*${Kt(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});var $f=v("$ZodCheckOverwrite",(t,e)=>{Pe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var vs=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
|
|
10
|
+
deps: ${r}}`};var iT={keyword:"dependencies",type:"object",schemaType:"object",error:Ot.error,code(t){let[e,r]=aT(t);vy(t,e),by(t,r)}};function aT({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let o=Array.isArray(t[n])?e:r;o[n]=t[n]}return[e,r]}function vy(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,Ko.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,Ko.checkReportMissingProp)(t,u)}):(r.if((0,md._)`${c} && (${(0,Ko.checkMissingProp)(t,a,s)})`),(0,Ko.reportMissingProp)(t,s),r.else())}}Ot.validatePropertyDeps=vy;function by(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,sT.alwaysValidSchema)(s,e[a])||(r.if((0,Ko.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}Ot.validateSchemaDeps=by;Ot.default=iT});var xy=z(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var $y=J(),cT=ne(),uT={message:"property name must be valid",params:({params:t})=>(0,$y._)`{propertyName: ${t.propertyName}}`},lT={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:uT,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,cT.alwaysValidSchema)(o,r))return;let s=e.name("valid");e.forIn("key",n,i=>{t.setParams({propertyName:i}),t.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),e.if((0,$y.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};hd.default=lT});var yd=z(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var ji=dt(),$t=J(),dT=Ut(),Zi=ne(),pT={message:"must NOT have additional properties",params:({params:t})=>(0,$t._)`{additionalProperty: ${t.additionalProperty}}`},fT={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:pT,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,Zi.alwaysValidSchema)(i,r))return;let u=(0,ji.allSchemaProperties)(n.properties),l=(0,ji.allSchemaProperties)(n.patternProperties);d(),t.ok((0,$t._)`${s} === ${dT.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(f(g),()=>p(g))})}function f(g){let _;if(u.length>8){let b=(0,Zi.schemaRefOrVal)(i,n.properties,"properties");_=(0,ji.isOwnProperty)(e,b,g)}else u.length?_=(0,$t.or)(...u.map(b=>(0,$t._)`${g} === ${b}`)):_=$t.nil;return l.length&&(_=(0,$t.or)(_,...l.map(b=>(0,$t._)`${(0,ji.usePattern)(t,b)}.test(${g})`))),(0,$t.not)(_)}function m(g){e.code((0,$t._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Zi.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,$t.not)(_),()=>{t.reset(),m(g)})):(h(g,_),a||e.if((0,$t.not)(_),()=>e.break()))}}function h(g,_,b){let w={keyword:"additionalProperties",dataProp:g,dataPropType:Zi.Type.Str};b===!1&&Object.assign(w,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(w,_)}}};gd.default=fT});var zy=z(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var mT=Ao(),ky=dt(),_d=ne(),Sy=yd(),hT={keyword:"properties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t;s.opts.removeAdditional==="all"&&n.additionalProperties===void 0&&Sy.default.code(new mT.KeywordCxt(s,Sy.default,"additionalProperties"));let i=(0,ky.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=_d.mergeEvaluated.props(e,(0,_d.toHash)(i),s.props));let a=i.filter(d=>!(0,_d.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,ky.propertyInData)(e,o,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};vd.default=hT});var Ey=z(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var Ry=dt(),Mi=J(),Ty=ne(),Py=ne(),gT={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:o,it:s}=t,{opts:i}=s,a=(0,Ry.allSchemaProperties)(r),c=a.filter(h=>(0,Ty.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof Mi.Name)&&(s.props=(0,Py.evaluatedPropsToName)(e,s.props));let{props:d}=s;f();function f(){for(let h of a)u&&m(h),s.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function m(h){for(let g in u)new RegExp(h).test(g)&&(0,Ty.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,Mi._)`${(0,Ry.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:Py.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Mi._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,Mi.not)(l),()=>e.break())})})}}};bd.default=gT});var Iy=z(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var yT=ne(),_T={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,yT.alwaysValidSchema)(n,r)){t.fail();return}let o=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),t.failResult(o,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};wd.default=_T});var Oy=z($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var vT=dt(),bT={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:vT.validateUnion,error:{message:"must match a schema in anyOf"}};$d.default=bT});var Ny=z(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var qi=J(),wT=ne(),$T={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,qi._)`{passingSchemas: ${t.passing}}`},xT={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:$T,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let f;(0,wT.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,qi._)`${c} && ${i}`).assign(i,!1).assign(a,(0,qi._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,qi.Name)})})}}};xd.default=xT});var Cy=z(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var kT=ne(),ST={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let o=e.name("valid");r.forEach((s,i)=>{if((0,kT.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};kd.default=ST});var Zy=z(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var Di=J(),jy=ne(),zT={message:({params:t})=>(0,Di.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Di._)`{failingKeyword: ${t.ifClause}}`},RT={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:zT,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,jy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Ay(n,"then"),s=Ay(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,Di.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,Di._)`${l}`):t.setParams({ifClause:l})}}}};function Ay(t,e){let r=t.schema[e];return r!==void 0&&!(0,jy.alwaysValidSchema)(t,r)}Sd.default=RT});var My=z(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var TT=ne(),PT={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,TT.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};zd.default=PT});var qy=z(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var ET=ud(),IT=hy(),OT=ld(),NT=yy(),CT=_y(),AT=wy(),jT=xy(),ZT=yd(),MT=zy(),qT=Ey(),DT=Iy(),LT=Oy(),VT=Ny(),UT=Cy(),FT=Zy(),BT=My();function HT(t=!1){let e=[DT.default,LT.default,VT.default,UT.default,FT.default,BT.default,jT.default,ZT.default,AT.default,MT.default,qT.default];return t?e.push(IT.default,NT.default):e.push(ET.default,OT.default),e.push(CT.default),e}Rd.default=HT});var Dy=z(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var $e=J(),JT={message:({schemaCode:t})=>(0,$e.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,$e._)`{format: ${t}}`},GT={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:JT,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,$e._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,$e._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,$e._)`${h}.type || "string"`).assign(_,(0,$e._)`${h}.validate`),()=>r.assign(g,(0,$e._)`"string"`).assign(_,h)),t.fail$data((0,$e.or)(b(),w()));function b(){return c.strictSchema===!1?$e.nil:(0,$e._)`${i} && !${_}`}function w(){let P=l.$async?(0,$e._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,$e._)`${_}(${n})`,Z=(0,$e._)`(typeof ${_} == "function" ? ${P} : ${_}.test(${n}))`;return(0,$e._)`${_} && ${_} !== true && ${g} === ${e} && !${Z}`}}function m(){let p=d.formats[s];if(!p){b();return}if(p===!0)return;let[h,g,_]=w(p);h===e&&t.pass(P());function b(){if(c.strictSchema===!1){d.logger.warn(Z());return}throw new Error(Z());function Z(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function w(Z){let qe=Z instanceof RegExp?(0,$e.regexpCode)(Z):c.code.formats?(0,$e._)`${c.code.formats}${(0,$e.getProperty)(s)}`:void 0,ot=r.scopeValue("formats",{key:s,ref:Z,code:qe});return typeof Z=="object"&&!(Z instanceof RegExp)?[Z.type||"string",Z.validate,(0,$e._)`${ot}.validate`]:["string",Z,ot]}function P(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,$e._)`await ${_}(${n})`}return typeof g=="function"?(0,$e._)`${_}(${n})`:(0,$e._)`${_}.test(${n})`}}}};Td.default=GT});var Ly=z(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var KT=Dy(),WT=[KT.default];Pd.default=WT});var Vy=z(On=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});On.contentVocabulary=On.metadataVocabulary=void 0;On.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];On.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Fy=z(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var YT=Yg(),QT=dy(),XT=qy(),eP=Ly(),Uy=Vy(),tP=[YT.default,QT.default,(0,XT.default)(),eP.default,Uy.metadataVocabulary,Uy.contentVocabulary];Ed.default=tP});var Hy=z(Li=>{"use strict";Object.defineProperty(Li,"__esModule",{value:!0});Li.DiscrError=void 0;var By;(function(t){t.Tag="tag",t.Mapping="mapping"})(By||(Li.DiscrError=By={}))});var Gy=z(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var Nn=J(),Id=Hy(),Jy=ki(),rP=jo(),nP=ne(),oP={message:({params:{discrError:t,tagName:e}})=>t===Id.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Nn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},sP={keyword:"discriminator",type:"object",schemaType:"object",error:oP,code(t){let{gen:e,data:r,schema:n,parentSchema:o,it:s}=t,{oneOf:i}=o;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!i)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,Nn._)`${r}${(0,Nn.getProperty)(a)}`);e.if((0,Nn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Id.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,Nn._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:Id.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,Nn.Name),p}function f(){var m;let p={},h=_(o),g=!0;for(let P=0;P<i.length;P++){let Z=i[P];if(Z?.$ref&&!(0,nP.schemaHasRulesButRef)(Z,s.self.RULES)){let ot=Z.$ref;if(Z=Jy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,ot),Z instanceof Jy.SchemaEnv&&(Z=Z.schema),Z===void 0)throw new rP.default(s.opts.uriResolver,s.baseId,ot)}let qe=(m=Z?.properties)===null||m===void 0?void 0:m[a];if(typeof qe!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(Z)),b(qe,P)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({required:P}){return Array.isArray(P)&&P.includes(a)}function b(P,Z){if(P.const)w(P.const,Z);else if(P.enum)for(let qe of P.enum)w(qe,Z);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function w(P,Z){if(typeof P!="string"||P in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[P]=Z}}}};Od.default=sP});var Ky=z((Vj,iP)=>{iP.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 Cd=z((ge,Nd)=>{"use strict";Object.defineProperty(ge,"__esModule",{value:!0});ge.MissingRefError=ge.ValidationError=ge.CodeGen=ge.Name=ge.nil=ge.stringify=ge.str=ge._=ge.KeywordCxt=ge.Ajv=void 0;var aP=Bg(),cP=Fy(),uP=Gy(),Wy=Ky(),lP=["/properties"],Vi="http://json-schema.org/draft-07/schema",Cn=class extends aP.default{_addVocabularies(){super._addVocabularies(),cP.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(uP.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Wy,lP):Wy;this.addMetaSchema(e,Vi,!1),this.refs["http://json-schema.org/schema"]=Vi}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Vi)?Vi:void 0)}};ge.Ajv=Cn;Nd.exports=ge=Cn;Nd.exports.Ajv=Cn;Object.defineProperty(ge,"__esModule",{value:!0});ge.default=Cn;var dP=Ao();Object.defineProperty(ge,"KeywordCxt",{enumerable:!0,get:function(){return dP.KeywordCxt}});var An=J();Object.defineProperty(ge,"_",{enumerable:!0,get:function(){return An._}});Object.defineProperty(ge,"str",{enumerable:!0,get:function(){return An.str}});Object.defineProperty(ge,"stringify",{enumerable:!0,get:function(){return An.stringify}});Object.defineProperty(ge,"nil",{enumerable:!0,get:function(){return An.nil}});Object.defineProperty(ge,"Name",{enumerable:!0,get:function(){return An.Name}});Object.defineProperty(ge,"CodeGen",{enumerable:!0,get:function(){return An.CodeGen}});var pP=$i();Object.defineProperty(ge,"ValidationError",{enumerable:!0,get:function(){return pP.default}});var fP=jo();Object.defineProperty(ge,"MissingRefError",{enumerable:!0,get:function(){return fP.default}})});var o_=z(Ct=>{"use strict";Object.defineProperty(Ct,"__esModule",{value:!0});Ct.formatNames=Ct.fastFormats=Ct.fullFormats=void 0;function Nt(t,e){return{validate:t,compare:e}}Ct.fullFormats={date:Nt(e_,Md),time:Nt(jd(!0),qd),"date-time":Nt(Yy(!0),r_),"iso-time":Nt(jd(),t_),"iso-date-time":Nt(Yy(),n_),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:vP,"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:zP,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:bP,int32:{type:"number",validate:xP},int64:{type:"number",validate:kP},float:{type:"number",validate:Xy},double:{type:"number",validate:Xy},password:!0,binary:!0};Ct.fastFormats={...Ct.fullFormats,date:Nt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Md),time:Nt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,qd),"date-time":Nt(/^\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,r_),"iso-time":Nt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,t_),"iso-date-time":Nt(/^\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,n_),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};Ct.formatNames=Object.keys(Ct.fullFormats);function mP(t){return t%4===0&&(t%100!==0||t%400===0)}var hP=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,gP=[0,31,28,31,30,31,30,31,31,30,31,30,31];function e_(t){let e=hP.exec(t);if(!e)return!1;let r=+e[1],n=+e[2],o=+e[3];return n>=1&&n<=12&&o>=1&&o<=(n===2&&mP(r)?29:gP[n])}function Md(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Ad=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function jd(t){return function(r){let n=Ad.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,f=o-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&i<61}}function qd(t,e){if(!(t&&e))return;let r=new Date("2020-01-01T"+t).valueOf(),n=new Date("2020-01-01T"+e).valueOf();if(r&&n)return r-n}function t_(t,e){if(!(t&&e))return;let r=Ad.exec(t),n=Ad.exec(e);if(r&&n)return t=r[1]+r[2]+r[3],e=n[1]+n[2]+n[3],t>e?1:t<e?-1:0}var Zd=/t|\s/i;function Yy(t){let e=jd(t);return function(n){let o=n.split(Zd);return o.length===2&&e_(o[0])&&e(o[1])}}function r_(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function n_(t,e){if(!(t&&e))return;let[r,n]=t.split(Zd),[o,s]=e.split(Zd),i=Md(r,o);if(i!==void 0)return i||qd(n,s)}var yP=/\/|:/,_P=/^(?:[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 vP(t){return yP.test(t)&&_P.test(t)}var Qy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function bP(t){return Qy.lastIndex=0,Qy.test(t)}var wP=-(2**31),$P=2**31-1;function xP(t){return Number.isInteger(t)&&t<=$P&&t>=wP}function kP(t){return Number.isInteger(t)}function Xy(){return!0}var SP=/[^\\]\\Z/;function zP(t){if(SP.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var s_=z(jn=>{"use strict";Object.defineProperty(jn,"__esModule",{value:!0});jn.formatLimitDefinition=void 0;var RP=Cd(),xt=J(),ur=xt.operators,Ui={formatMaximum:{okStr:"<=",ok:ur.LTE,fail:ur.GT},formatMinimum:{okStr:">=",ok:ur.GTE,fail:ur.LT},formatExclusiveMaximum:{okStr:"<",ok:ur.LT,fail:ur.GTE},formatExclusiveMinimum:{okStr:">",ok:ur.GT,fail:ur.LTE}},TP={message:({keyword:t,schemaCode:e})=>(0,xt.str)`should be ${Ui[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,xt._)`{comparison: ${Ui[t].okStr}, limit: ${e}}`};jn.formatLimitDefinition={keyword:Object.keys(Ui),type:"string",schemaType:"string",$data:!0,error:TP,code(t){let{gen:e,data:r,schemaCode:n,keyword:o,it:s}=t,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new RP.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,xt._)`${f}[${c.schemaCode}]`);t.fail$data((0,xt.or)((0,xt._)`typeof ${m} != "object"`,(0,xt._)`${m} instanceof RegExp`,(0,xt._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:i.code.formats?(0,xt._)`${i.code.formats}${(0,xt.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,xt._)`${f}.compare(${r}, ${n}) ${Ui[o].fail} 0`}},dependencies:["format"]};var PP=t=>(t.addKeyword(jn.formatLimitDefinition),t);jn.default=PP});var u_=z((Wo,c_)=>{"use strict";Object.defineProperty(Wo,"__esModule",{value:!0});var Zn=o_(),EP=s_(),Dd=J(),i_=new Dd.Name("fullFormats"),IP=new Dd.Name("fastFormats"),Ld=(t,e={keywords:!0})=>{if(Array.isArray(e))return a_(t,e,Zn.fullFormats,i_),t;let[r,n]=e.mode==="fast"?[Zn.fastFormats,IP]:[Zn.fullFormats,i_],o=e.formats||Zn.formatNames;return a_(t,o,r,n),e.keywords&&(0,EP.default)(t),t};Ld.get=(t,e="full")=>{let n=(e==="fast"?Zn.fastFormats:Zn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function a_(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Dd._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}c_.exports=Wo=Ld;Object.defineProperty(Wo,"__esModule",{value:!0});Wo.default=Ld});var V={};ga(V,{BRAND:()=>rb,DIRTY:()=>mr,EMPTY_PATH:()=>Cv,INVALID:()=>M,NEVER:()=>qb,OK:()=>Ae,ParseStatus:()=>Te,Schema:()=>H,ZodAny:()=>Jt,ZodArray:()=>Mt,ZodBigInt:()=>gr,ZodBoolean:()=>yr,ZodBranded:()=>Jn,ZodCatch:()=>Tr,ZodDate:()=>_r,ZodDefault:()=>Rr,ZodDiscriminatedUnion:()=>ds,ZodEffects:()=>it,ZodEnum:()=>Sr,ZodError:()=>Fe,ZodFirstPartyTypeKind:()=>x,ZodFunction:()=>fs,ZodIntersection:()=>$r,ZodIssueCode:()=>$,ZodLazy:()=>xr,ZodLiteral:()=>kr,ZodMap:()=>sn,ZodNaN:()=>cn,ZodNativeEnum:()=>zr,ZodNever:()=>ht,ZodNull:()=>br,ZodNullable:()=>Tt,ZodNumber:()=>hr,ZodObject:()=>He,ZodOptional:()=>Be,ZodParsedType:()=>R,ZodPipeline:()=>Gn,ZodPromise:()=>Gt,ZodReadonly:()=>Pr,ZodRecord:()=>ps,ZodSchema:()=>H,ZodSet:()=>an,ZodString:()=>Ht,ZodSymbol:()=>nn,ZodTransformer:()=>it,ZodTuple:()=>Rt,ZodType:()=>H,ZodUndefined:()=>vr,ZodUnion:()=>wr,ZodUnknown:()=>Zt,ZodVoid:()=>on,addIssueToContext:()=>k,any:()=>db,array:()=>hb,bigint:()=>ib,boolean:()=>jp,coerce:()=>Mb,custom:()=>Np,date:()=>ab,datetimeRegex:()=>Ip,defaultErrorMap:()=>At,discriminatedUnion:()=>_b,effect:()=>Eb,enum:()=>Rb,function:()=>kb,getErrorMap:()=>en,getParsedType:()=>zt,instanceof:()=>ob,intersection:()=>vb,isAborted:()=>us,isAsync:()=>tn,isDirty:()=>ls,isValid:()=>Bt,late:()=>nb,lazy:()=>Sb,literal:()=>zb,makeIssue:()=>Hn,map:()=>$b,nan:()=>sb,nativeEnum:()=>Tb,never:()=>fb,null:()=>lb,nullable:()=>Ob,number:()=>Ap,object:()=>ba,objectUtil:()=>ya,oboolean:()=>Zb,onumber:()=>jb,optional:()=>Ib,ostring:()=>Ab,pipeline:()=>Cb,preprocess:()=>Nb,promise:()=>Pb,quotelessJson:()=>Iv,record:()=>wb,set:()=>xb,setErrorMap:()=>Nv,strictObject:()=>gb,string:()=>Cp,symbol:()=>cb,transformer:()=>Eb,tuple:()=>bb,undefined:()=>ub,union:()=>yb,unknown:()=>pb,util:()=>Y,void:()=>mb});var Y;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(Y||(Y={}));var ya;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(ya||(ya={}));var R=Y.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),zt=t=>{switch(typeof t){case"undefined":return R.undefined;case"string":return R.string;case"number":return Number.isNaN(t)?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":return Array.isArray(t)?R.array:t===null?R.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?R.promise:typeof Map<"u"&&t instanceof Map?R.map:typeof Set<"u"&&t instanceof Set?R.set:typeof Date<"u"&&t instanceof Date?R.date:R.object;default:return R.unknown}};var $=Y.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Iv=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Fe=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,Y.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Fe.create=t=>new Fe(t);var Ov=(t,e)=>{let r;switch(t.code){case $.invalid_type:t.received===R.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case $.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,Y.jsonStringifyReplacer)}`;break;case $.unrecognized_keys:r=`Unrecognized key(s) in object: ${Y.joinValues(t.keys,", ")}`;break;case $.invalid_union:r="Invalid input";break;case $.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Y.joinValues(t.options)}`;break;case $.invalid_enum_value:r=`Invalid enum value. Expected ${Y.joinValues(t.options)}, received '${t.received}'`;break;case $.invalid_arguments:r="Invalid function arguments";break;case $.invalid_return_type:r="Invalid function return type";break;case $.invalid_date:r="Invalid date";break;case $.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:Y.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case $.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case $.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case $.custom:r="Invalid input";break;case $.invalid_intersection_types:r="Intersection results could not be merged";break;case $.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case $.not_finite:r="Number must be finite";break;default:r=e.defaultError,Y.assertNever(t)}return{message:r}},At=Ov;var zp=At;function Nv(t){zp=t}function en(){return zp}var Hn=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},Cv=[];function k(t,e){let r=en(),n=Hn({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===At?void 0:At].filter(o=>!!o)});t.common.issues.push(n)}var Te=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return M;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return M;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},M=Object.freeze({status:"aborted"}),mr=t=>({status:"dirty",value:t}),Ae=t=>({status:"valid",value:t}),us=t=>t.status==="aborted",ls=t=>t.status==="dirty",Bt=t=>t.status==="valid",tn=t=>typeof Promise<"u"&&t instanceof Promise;var E;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(E||(E={}));var st=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Rp=(t,e)=>{if(Bt(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Fe(t.common.issues);return this._error=r,this._error}}};function F(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var H=class{get description(){return this._def.description}_getType(e){return zt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:zt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Te,ctx:{common:e.parent.common,data:e.data,parsedType:zt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(tn(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:zt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return Rp(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:zt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Bt(n)?{value:n.value}:{issues:r.common.issues}}catch(n){n?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),r.common={issues:[],async:!0}}return this._parseAsync({data:e,path:[],parent:r}).then(n=>Bt(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:zt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(tn(o)?o:Promise.resolve(o));return Rp(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:$.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new it({schema:this,typeName:x.ZodEffects,effect:{type:"refinement",refinement:e}})}superRefine(e){return this._refinement(e)}constructor(e){this.spa=this.safeParseAsync,this._def=e,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:r=>this["~validate"](r)}}optional(){return Be.create(this,this._def)}nullable(){return Tt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Mt.create(this)}promise(){return Gt.create(this,this._def)}or(e){return wr.create([this,e],this._def)}and(e){return $r.create(this,e,this._def)}transform(e){return new it({...F(this._def),schema:this,typeName:x.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Rr({...F(this._def),innerType:this,defaultValue:r,typeName:x.ZodDefault})}brand(){return new Jn({typeName:x.ZodBranded,type:this,...F(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Tr({...F(this._def),innerType:this,catchValue:r,typeName:x.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Gn.create(this,e)}readonly(){return Pr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Av=/^c[^\s-]{8,}$/i,jv=/^[0-9a-z]+$/,Zv=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Mv=/^[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,qv=/^[a-z0-9_-]{21}$/i,Dv=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Lv=/^[-+]?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)?)??$/,Vv=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Uv="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",_a,Fv=/^(?:(?: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])$/,Bv=/^(?:(?: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])$/,Hv=/^(([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]))$/,Jv=/^(([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])$/,Gv=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Kv=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Pp="((\\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])))",Wv=new RegExp(`^${Pp}$`);function Ep(t){let e="[0-5]\\d";t.precision?e=`${e}\\.\\d{${t.precision}}`:t.precision==null&&(e=`${e}(\\.\\d+)?`);let r=t.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${e})${r}`}function Yv(t){return new RegExp(`^${Ep(t)}$`)}function Ip(t){let e=`${Pp}T${Ep(t)}`,r=[];return r.push(t.local?"Z?":"Z"),t.offset&&r.push("([+-]\\d{2}:?\\d{2})"),e=`${e}(${r.join("|")})`,new RegExp(`^${e}$`)}function Qv(t,e){return!!((e==="v4"||!e)&&Fv.test(t)||(e==="v6"||!e)&&Hv.test(t))}function Xv(t,e){if(!Dv.test(t))return!1;try{let[r]=t.split(".");if(!r)return!1;let n=r.replace(/-/g,"+").replace(/_/g,"/").padEnd(r.length+(4-r.length%4)%4,"="),o=JSON.parse(atob(n));return!(typeof o!="object"||o===null||"typ"in o&&o?.typ!=="JWT"||!o.alg||e&&o.alg!==e)}catch{return!1}}function eb(t,e){return!!((e==="v4"||!e)&&Bv.test(t)||(e==="v6"||!e)&&Jv.test(t))}var Ht=class t extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==R.string){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:R.string,received:s.parsedType}),M}let n=new Te,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?k(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&k(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")Vv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"email",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")_a||(_a=new RegExp(Uv,"u")),_a.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"emoji",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")Mv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"uuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")qv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"nanoid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")Av.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"cuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")jv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"cuid2",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")Zv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"ulid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),k(o,{validation:"url",code:$.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"regex",code:$.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Ip(s).test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?Wv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?Yv(s).test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{code:$.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?Lv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"duration",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?Qv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"ip",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?Xv(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"jwt",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?eb(e.data,s.version)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"cidr",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?Gv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"base64",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?Kv.test(e.data)||(o=this._getOrReturnCtx(e,o),k(o,{validation:"base64url",code:$.invalid_string,message:s.message}),n.dirty()):Y.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:$.invalid_string,...E.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...E.errToObj(e)})}url(e){return this._addCheck({kind:"url",...E.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...E.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...E.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...E.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...E.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...E.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...E.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...E.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...E.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...E.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...E.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...E.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...E.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...E.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...E.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...E.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...E.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...E.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...E.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...E.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...E.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...E.errToObj(r)})}nonempty(e){return this.min(1,E.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Ht.create=t=>new Ht({checks:[],typeName:x.ZodString,coerce:t?.coerce??!1,...F(t)});function tb(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}var hr=class t extends H{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==R.number){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:R.number,received:s.parsedType}),M}let n,o=new Te;for(let s of this._def.checks)s.kind==="int"?Y.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),k(n,{code:$.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?tb(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),k(n,{code:$.not_finite,message:s.message}),o.dirty()):Y.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,E.toString(r))}gt(e,r){return this.setLimit("min",e,!1,E.toString(r))}lte(e,r){return this.setLimit("max",e,!0,E.toString(r))}lt(e,r){return this.setLimit("max",e,!1,E.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:E.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:E.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:E.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:E.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:E.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:E.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:E.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:E.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:E.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:E.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&Y.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};hr.create=t=>new hr({checks:[],typeName:x.ZodNumber,coerce:t?.coerce||!1,...F(t)});var gr=class t extends H{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==R.bigint)return this._getInvalidInput(e);let n,o=new Te;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),k(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):Y.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return k(r,{code:$.invalid_type,expected:R.bigint,received:r.parsedType}),M}gte(e,r){return this.setLimit("min",e,!0,E.toString(r))}gt(e,r){return this.setLimit("min",e,!1,E.toString(r))}lte(e,r){return this.setLimit("max",e,!0,E.toString(r))}lt(e,r){return this.setLimit("max",e,!1,E.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:E.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:E.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:E.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:E.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:E.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:E.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};gr.create=t=>new gr({checks:[],typeName:x.ZodBigInt,coerce:t?.coerce??!1,...F(t)});var yr=class extends H{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==R.boolean){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.boolean,received:n.parsedType}),M}return Ae(e.data)}};yr.create=t=>new yr({typeName:x.ZodBoolean,coerce:t?.coerce||!1,...F(t)});var _r=class t extends H{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==R.date){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:R.date,received:s.parsedType}),M}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_date}),M}let n=new Te,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),k(o,{code:$.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):Y.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:E.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:E.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};_r.create=t=>new _r({checks:[],coerce:t?.coerce||!1,typeName:x.ZodDate,...F(t)});var nn=class extends H{_parse(e){if(this._getType(e)!==R.symbol){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.symbol,received:n.parsedType}),M}return Ae(e.data)}};nn.create=t=>new nn({typeName:x.ZodSymbol,...F(t)});var vr=class extends H{_parse(e){if(this._getType(e)!==R.undefined){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.undefined,received:n.parsedType}),M}return Ae(e.data)}};vr.create=t=>new vr({typeName:x.ZodUndefined,...F(t)});var br=class extends H{_parse(e){if(this._getType(e)!==R.null){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.null,received:n.parsedType}),M}return Ae(e.data)}};br.create=t=>new br({typeName:x.ZodNull,...F(t)});var Jt=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return Ae(e.data)}};Jt.create=t=>new Jt({typeName:x.ZodAny,...F(t)});var Zt=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ae(e.data)}};Zt.create=t=>new Zt({typeName:x.ZodUnknown,...F(t)});var ht=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return k(r,{code:$.invalid_type,expected:R.never,received:r.parsedType}),M}};ht.create=t=>new ht({typeName:x.ZodNever,...F(t)});var on=class extends H{_parse(e){if(this._getType(e)!==R.undefined){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.void,received:n.parsedType}),M}return Ae(e.data)}};on.create=t=>new on({typeName:x.ZodVoid,...F(t)});var Mt=class t extends H{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==R.array)return k(r,{code:$.invalid_type,expected:R.array,received:r.parsedType}),M;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(k(r,{code:i?$.too_big:$.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(k(r,{code:$.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(k(r,{code:$.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new st(r,i,r.path,a)))).then(i=>Te.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new st(r,i,r.path,a)));return Te.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:E.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:E.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:E.toString(r)}})}nonempty(e){return this.min(1,e)}};Mt.create=(t,e)=>new Mt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:x.ZodArray,...F(e)});function rn(t){if(t instanceof He){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Be.create(rn(n))}return new He({...t._def,shape:()=>e})}else return t instanceof Mt?new Mt({...t._def,type:rn(t.element)}):t instanceof Be?Be.create(rn(t.unwrap())):t instanceof Tt?Tt.create(rn(t.unwrap())):t instanceof Rt?Rt.create(t.items.map(e=>rn(e))):t}var He=class t extends H{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=Y.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==R.object){let u=this._getOrReturnCtx(e);return k(u,{code:$.invalid_type,expected:R.object,received:u.parsedType}),M}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof ht&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new st(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof ht){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(k(o,{code:$.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new st(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>Te.mergeObjectSync(n,u)):Te.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return E.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:E.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:x.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of Y.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of Y.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return rn(this)}partial(e){let r={};for(let n of Y.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of Y.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Be;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Op(Y.objectKeys(this.shape))}};He.create=(t,e)=>new He({shape:()=>t,unknownKeys:"strip",catchall:ht.create(),typeName:x.ZodObject,...F(e)});He.strictCreate=(t,e)=>new He({shape:()=>t,unknownKeys:"strict",catchall:ht.create(),typeName:x.ZodObject,...F(e)});He.lazycreate=(t,e)=>new He({shape:t,unknownKeys:"strip",catchall:ht.create(),typeName:x.ZodObject,...F(e)});var wr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new Fe(a.ctx.common.issues));return k(r,{code:$.invalid_union,unionErrors:i}),M}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(c=>new Fe(c));return k(r,{code:$.invalid_union,unionErrors:a}),M}}get options(){return this._def.options}};wr.create=(t,e)=>new wr({options:t,typeName:x.ZodUnion,...F(e)});var jt=t=>t instanceof xr?jt(t.schema):t instanceof it?jt(t.innerType()):t instanceof kr?[t.value]:t instanceof Sr?t.options:t instanceof zr?Y.objectValues(t.enum):t instanceof Rr?jt(t._def.innerType):t instanceof vr?[void 0]:t instanceof br?[null]:t instanceof Be?[void 0,...jt(t.unwrap())]:t instanceof Tt?[null,...jt(t.unwrap())]:t instanceof Jn||t instanceof Pr?jt(t.unwrap()):t instanceof Tr?jt(t._def.innerType):[],ds=class t extends H{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==R.object)return k(r,{code:$.invalid_type,expected:R.object,received:r.parsedType}),M;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(k(r,{code:$.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),M)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=jt(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:x.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...F(n)})}};function va(t,e){let r=zt(t),n=zt(e);if(t===e)return{valid:!0,data:t};if(r===R.object&&n===R.object){let o=Y.objectKeys(e),s=Y.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=va(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===R.array&&n===R.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=va(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===R.date&&n===R.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var $r=class extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(us(s)||us(i))return M;let a=va(s.value,i.value);return a.valid?((ls(s)||ls(i))&&r.dirty(),{status:r.value,value:a.data}):(k(n,{code:$.invalid_intersection_types}),M)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};$r.create=(t,e,r)=>new $r({left:t,right:e,typeName:x.ZodIntersection,...F(r)});var Rt=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==R.array)return k(n,{code:$.invalid_type,expected:R.array,received:n.parsedType}),M;if(n.data.length<this._def.items.length)return k(n,{code:$.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),M;!this._def.rest&&n.data.length>this._def.items.length&&(k(n,{code:$.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new st(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Te.mergeArray(r,i)):Te.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Rt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Rt({items:t,typeName:x.ZodTuple,rest:null,...F(e)})};var ps=class t extends H{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==R.object)return k(n,{code:$.invalid_type,expected:R.object,received:n.parsedType}),M;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new st(n,a,n.path,a)),value:i._parse(new st(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Te.mergeObjectAsync(r,o):Te.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof H?new t({keyType:e,valueType:r,typeName:x.ZodRecord,...F(n)}):new t({keyType:Ht.create(),valueType:e,typeName:x.ZodRecord,...F(r)})}},sn=class extends H{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==R.map)return k(n,{code:$.invalid_type,expected:R.map,received:n.parsedType}),M;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new st(n,a,n.path,[u,"key"])),value:s._parse(new st(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return M;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return M;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};sn.create=(t,e,r)=>new sn({valueType:e,keyType:t,typeName:x.ZodMap,...F(r)});var an=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==R.set)return k(n,{code:$.invalid_type,expected:R.set,received:n.parsedType}),M;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(k(n,{code:$.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(k(n,{code:$.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return M;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new st(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:E.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:E.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};an.create=(t,e)=>new an({valueType:t,minSize:null,maxSize:null,typeName:x.ZodSet,...F(e)});var fs=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==R.function)return k(r,{code:$.invalid_type,expected:R.function,received:r.parsedType}),M;function n(a,c){return Hn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,en(),At].filter(u=>!!u),issueData:{code:$.invalid_arguments,argumentsError:c}})}function o(a,c){return Hn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,en(),At].filter(u=>!!u),issueData:{code:$.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof Gt){let a=this;return Ae(async function(...c){let u=new Fe([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return Ae(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Fe([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Fe([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Rt.create(e).rest(Zt.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Rt.create([]).rest(Zt.create()),returns:r||Zt.create(),typeName:x.ZodFunction,...F(n)})}},xr=class extends H{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};xr.create=(t,e)=>new xr({getter:t,typeName:x.ZodLazy,...F(e)});var kr=class extends H{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return k(r,{received:r.data,code:$.invalid_literal,expected:this._def.value}),M}return{status:"valid",value:e.data}}get value(){return this._def.value}};kr.create=(t,e)=>new kr({value:t,typeName:x.ZodLiteral,...F(e)});function Op(t,e){return new Sr({values:t,typeName:x.ZodEnum,...F(e)})}var Sr=class t extends H{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return k(r,{expected:Y.joinValues(n),received:r.parsedType,code:$.invalid_type}),M}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return k(r,{received:r.data,code:$.invalid_enum_value,options:n}),M}return Ae(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Sr.create=Op;var zr=class extends H{_parse(e){let r=Y.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==R.string&&n.parsedType!==R.number){let o=Y.objectValues(r);return k(n,{expected:Y.joinValues(o),received:n.parsedType,code:$.invalid_type}),M}if(this._cache||(this._cache=new Set(Y.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=Y.objectValues(r);return k(n,{received:n.data,code:$.invalid_enum_value,options:o}),M}return Ae(e.data)}get enum(){return this._def.values}};zr.create=(t,e)=>new zr({values:t,typeName:x.ZodNativeEnum,...F(e)});var Gt=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==R.promise&&r.common.async===!1)return k(r,{code:$.invalid_type,expected:R.promise,received:r.parsedType}),M;let n=r.parsedType===R.promise?r.data:Promise.resolve(r.data);return Ae(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Gt.create=(t,e)=>new Gt({type:t,typeName:x.ZodPromise,...F(e)});var it=class extends H{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===x.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{k(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return M;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?M:c.status==="dirty"?mr(c.value):r.value==="dirty"?mr(c.value):c});{if(r.value==="aborted")return M;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?M:a.status==="dirty"?mr(a.value):r.value==="dirty"?mr(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?M:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?M:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Bt(i))return M;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>Bt(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):M);Y.assertNever(o)}};it.create=(t,e,r)=>new it({schema:t,typeName:x.ZodEffects,effect:e,...F(r)});it.createWithPreprocess=(t,e,r)=>new it({schema:e,effect:{type:"preprocess",transform:t},typeName:x.ZodEffects,...F(r)});var Be=class extends H{_parse(e){return this._getType(e)===R.undefined?Ae(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Be.create=(t,e)=>new Be({innerType:t,typeName:x.ZodOptional,...F(e)});var Tt=class extends H{_parse(e){return this._getType(e)===R.null?Ae(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Tt.create=(t,e)=>new Tt({innerType:t,typeName:x.ZodNullable,...F(e)});var Rr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===R.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Rr.create=(t,e)=>new Rr({innerType:t,typeName:x.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...F(e)});var Tr=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return tn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Fe(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Fe(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Tr.create=(t,e)=>new Tr({innerType:t,typeName:x.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...F(e)});var cn=class extends H{_parse(e){if(this._getType(e)!==R.nan){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:R.nan,received:n.parsedType}),M}return{status:"valid",value:e.data}}};cn.create=t=>new cn({typeName:x.ZodNaN,...F(t)});var rb=Symbol("zod_brand"),Jn=class extends H{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},Gn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?M:s.status==="dirty"?(r.dirty(),mr(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?M:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:x.ZodPipeline})}},Pr=class extends H{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Bt(o)&&(o.value=Object.freeze(o.value)),o);return tn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Pr.create=(t,e)=>new Pr({innerType:t,typeName:x.ZodReadonly,...F(e)});function Tp(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Np(t,e={},r){return t?Jt.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Tp(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Tp(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Jt.create()}var nb={object:He.lazycreate},x;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(x||(x={}));var ob=(t,e={message:`Input not instance of ${t.name}`})=>Np(r=>r instanceof t,e),Cp=Ht.create,Ap=hr.create,sb=cn.create,ib=gr.create,jp=yr.create,ab=_r.create,cb=nn.create,ub=vr.create,lb=br.create,db=Jt.create,pb=Zt.create,fb=ht.create,mb=on.create,hb=Mt.create,ba=He.create,gb=He.strictCreate,yb=wr.create,_b=ds.create,vb=$r.create,bb=Rt.create,wb=ps.create,$b=sn.create,xb=an.create,kb=fs.create,Sb=xr.create,zb=kr.create,Rb=Sr.create,Tb=zr.create,Pb=Gt.create,Eb=it.create,Ib=Be.create,Ob=Tt.create,Nb=it.createWithPreprocess,Cb=Gn.create,Ab=()=>Cp().optional(),jb=()=>Ap().optional(),Zb=()=>jp().optional(),Mb={string:t=>Ht.create({...t,coerce:!0}),number:t=>hr.create({...t,coerce:!0}),boolean:t=>yr.create({...t,coerce:!0}),bigint:t=>gr.create({...t,coerce:!0}),date:t=>_r.create({...t,coerce:!0})};var qb=M;var Db=Object.freeze({status:"aborted"});function v(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Lb=Symbol("zod_brand"),qt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},ms={};function et(t){return t&&Object.assign(ms,t),ms}var Q={};ga(Q,{BIGINT_FORMAT_RANGES:()=>Mp,Class:()=>$a,NUMBER_FORMAT_RANGES:()=>Pa,aborted:()=>Ir,allowsEval:()=>za,assert:()=>Hb,assertEqual:()=>Vb,assertIs:()=>Fb,assertNever:()=>Bb,assertNotEqual:()=>Ub,assignProp:()=>Sa,cached:()=>Yn,captureStackTrace:()=>gs,cleanEnum:()=>sw,cleanRegex:()=>Xn,clone:()=>tt,createTransparentProxy:()=>Qb,defineLazy:()=>de,esc:()=>Er,escapeRegex:()=>Kt,extend:()=>tw,finalizeIssue:()=>gt,floatSafeRemainder:()=>ka,getElementAtPath:()=>Jb,getEnumValues:()=>Wn,getLengthableOrigin:()=>eo,getParsedType:()=>Yb,getSizableOrigin:()=>qp,isObject:()=>un,isPlainObject:()=>ln,issue:()=>Ea,joinValues:()=>hs,jsonStringifyReplacer:()=>xa,merge:()=>rw,normalizeParams:()=>q,nullish:()=>Qn,numKeys:()=>Wb,omit:()=>ew,optionalKeys:()=>Ta,partial:()=>nw,pick:()=>Xb,prefixIssues:()=>Pt,primitiveTypes:()=>Zp,promiseAllObject:()=>Gb,propertyKeyTypes:()=>Ra,randomString:()=>Kb,required:()=>ow,stringifyPrimitive:()=>ys,unwrapMessage:()=>Kn});function Vb(t){return t}function Ub(t){return t}function Fb(t){}function Bb(t){throw new Error}function Hb(t){}function Wn(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function hs(t,e="|"){return t.map(r=>ys(r)).join(e)}function xa(t,e){return typeof e=="bigint"?e.toString():e}function Yn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Qn(t){return t==null}function Xn(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function ka(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function de(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Sa(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Jb(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Gb(t){let e=Object.keys(t),r=e.map(n=>t[n]);return Promise.all(r).then(n=>{let o={};for(let s=0;s<e.length;s++)o[e[s]]=n[s];return o})}function Kb(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Er(t){return JSON.stringify(t)}var gs=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function un(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var za=Yn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function ln(t){if(un(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(un(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Wb(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Yb=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Ra=new Set(["string","number","symbol"]),Zp=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Kt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function tt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function q(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function Qb(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function ys(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ta(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Pa={safeint:[Number.MIN_SAFE_INTEGER,Number.MAX_SAFE_INTEGER],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]},Mp={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Xb(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return tt(t,{...t._zod.def,shape:r,checks:[]})}function ew(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return tt(t,{...t._zod.def,shape:r,checks:[]})}function tw(t,e){if(!ln(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return Sa(this,"shape",n),n},checks:[]};return tt(t,r)}function rw(t,e){return tt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Sa(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function nw(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return tt(e,{...e._zod.def,shape:o,checks:[]})}function ow(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return tt(e,{...e._zod.def,shape:o,checks:[]})}function Ir(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Pt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Kn(t){return typeof t=="string"?t:t?.message}function gt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Kn(t.inst?._zod.def?.error?.(t))??Kn(e?.error?.(t))??Kn(r.customError?.(t))??Kn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function qp(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function eo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Ea(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function sw(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var $a=class{constructor(...e){}};var Dp=(t,e)=>{t.name="$ZodError",Object.defineProperty(t,"_zod",{value:t._zod,enumerable:!1}),Object.defineProperty(t,"issues",{value:e,enumerable:!1}),Object.defineProperty(t,"message",{get(){return JSON.stringify(e,xa,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},_s=v("$ZodError",Dp),to=v("$ZodError",Dp,{Parent:Error});function Ia(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function Oa(t,e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>o({issues:a}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(t),n}var Na=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new qt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>gt(c,s,et())));throw gs(a,o?.callee),a}return i.value},Ca=Na(to),Aa=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>gt(c,s,et())));throw gs(a,o?.callee),a}return i.value},ja=Aa(to),Za=t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new qt;return s.issues.length?{success:!1,error:new(t??_s)(s.issues.map(i=>gt(i,o,et())))}:{success:!0,data:s.value}},Or=Za(to),Ma=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>gt(i,o,et())))}:{success:!0,data:s.value}},Nr=Ma(to);var Lp=/^[cC][^\s-]{8,}$/,Vp=/^[0-9a-z]+$/,Up=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Fp=/^[0-9a-vA-V]{20}$/,Bp=/^[A-Za-z0-9]{27}$/,Hp=/^[a-zA-Z0-9_-]{21}$/,Jp=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Gp=/^([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})$/,qa=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([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)$/;var Kp=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var aw="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Wp(){return new RegExp(aw,"u")}var Yp=/^(?:(?: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])$/,Qp=/^(([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})$/,Xp=/^((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])$/,ef=/^(([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])$/,tf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Da=/^[A-Za-z0-9_-]*$/,rf=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var nf=/^\+(?:[0-9]){6,14}[0-9]$/,of="(?:(?:\\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])))",sf=new RegExp(`^${of}$`);function af(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function cf(t){return new RegExp(`^${af(t)}$`)}function uf(t){let e=af({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${of}T(?:${n})$`)}var lf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var df=/^\d+$/,pf=/^-?\d+(?:\.\d+)?/i,ff=/true|false/i,mf=/null/i;var hf=/^[^A-Z]*$/,gf=/^[^a-z]*$/;var Pe=v("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),yf={number:"number",bigint:"bigint",object:"date"},La=v("$ZodCheckLessThan",(t,e)=>{Pe.init(t,e);let r=yf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Va=v("$ZodCheckGreaterThan",(t,e)=>{Pe.init(t,e);let r=yf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),_f=v("$ZodCheckMultipleOf",(t,e)=>{Pe.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):ka(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),vf=v("$ZodCheckNumberFormat",(t,e)=>{Pe.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Pa[e.format];t._zod.onattach.push(i=>{let a=i._zod.bag;a.format=e.format,a.minimum=o,a.maximum=s,r&&(a.pattern=df)}),t._zod.check=i=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:e.format,code:"invalid_type",input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort});return}}a<o&&i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),a>s&&i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:t})}});var bf=v("$ZodCheckMaxLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Qn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;if(o.length<=e.maximum)return;let i=eo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),wf=v("$ZodCheckMinLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Qn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;if(o.length>=e.minimum)return;let i=eo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),$f=v("$ZodCheckLengthEquals",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Qn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.length,o.maximum=e.length,o.length=e.length}),t._zod.check=n=>{let o=n.value,s=o.length;if(s===e.length)return;let i=eo(o),a=s>e.length;n.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),ro=v("$ZodCheckStringFormat",(t,e)=>{var r,n;Pe.init(t,e),t._zod.onattach.push(o=>{let s=o._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=o=>{e.pattern.lastIndex=0,!e.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:e.format,input:o.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),xf=v("$ZodCheckRegex",(t,e)=>{ro.init(t,e),t._zod.check=r=>{e.pattern.lastIndex=0,!e.pattern.test(r.value)&&r.issues.push({origin:"string",code:"invalid_format",format:"regex",input:r.value,pattern:e.pattern.toString(),inst:t,continue:!e.abort})}}),kf=v("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=hf),ro.init(t,e)}),Sf=v("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=gf),ro.init(t,e)}),zf=v("$ZodCheckIncludes",(t,e)=>{Pe.init(t,e);let r=Kt(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),Rf=v("$ZodCheckStartsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`^${Kt(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),Tf=v("$ZodCheckEndsWith",(t,e)=>{Pe.init(t,e);let r=new RegExp(`.*${Kt(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});var Pf=v("$ZodCheckOverwrite",(t,e)=>{Pe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var bs=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
|
|
11
11
|
`).filter(i=>i),o=Math.min(...n.map(i=>i.length-i.trimStart().length)),s=n.map(i=>i.slice(o)).map(i=>" ".repeat(this.indent*2)+i);for(let i of s)this.content.push(i)}compile(){let e=Function,r=this?.args,o=[...(this?.content??[""]).map(s=>` ${s}`)];return new e(...r,o.join(`
|
|
12
|
-
`))}};var
|
|
12
|
+
`))}};var If={major:4,minor:0,patch:0};var ae=v("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=If;let n=[...t._zod.def.checks??[]];t._zod.traits.has("$ZodCheck")&&n.unshift(t);for(let o of n)for(let s of o._zod.onattach)s(t);if(n.length===0)(r=t._zod).deferred??(r.deferred=[]),t._zod.deferred?.push(()=>{t._zod.run=t._zod.parse});else{let o=(s,i,a)=>{let c=Ir(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,f=l._zod.check(s);if(f instanceof Promise&&a?.async===!1)throw new qt;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=Ir(s,d)))});else{if(s.issues.length===d)continue;c||(c=Ir(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,i)=>{let a=t._zod.parse(s,i);if(a instanceof Promise){if(i.async===!1)throw new qt;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Or(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Nr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),no=v("$ZodString",(t,e)=>{ae.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??lf(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),pe=v("$ZodStringFormat",(t,e)=>{ro.init(t,e),no.init(t,e)}),Fa=v("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Gp),pe.init(t,e)}),Ba=v("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=qa(n))}else e.pattern??(e.pattern=qa());pe.init(t,e)}),Ha=v("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Kp),pe.init(t,e)}),Ja=v("$ZodURL",(t,e)=>{pe.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:rf.source,input:r.value,inst:t,continue:!e.abort})),e.protocol&&(e.protocol.lastIndex=0,e.protocol.test(o.protocol.endsWith(":")?o.protocol.slice(0,-1):o.protocol)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid protocol",pattern:e.protocol.source,input:r.value,inst:t,continue:!e.abort})),!n.endsWith("/")&&s.endsWith("/")?r.value=s.slice(0,-1):r.value=s;return}catch{r.issues.push({code:"invalid_format",format:"url",input:r.value,inst:t,continue:!e.abort})}}}),Ga=v("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Wp()),pe.init(t,e)}),Ka=v("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Hp),pe.init(t,e)}),Wa=v("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Lp),pe.init(t,e)}),Ya=v("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Vp),pe.init(t,e)}),Qa=v("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Up),pe.init(t,e)}),Xa=v("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Fp),pe.init(t,e)}),ec=v("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Bp),pe.init(t,e)}),Lf=v("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=uf(e)),pe.init(t,e)}),Vf=v("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=sf),pe.init(t,e)}),Uf=v("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=cf(e)),pe.init(t,e)}),Ff=v("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Jp),pe.init(t,e)}),tc=v("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Yp),pe.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),rc=v("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Qp),pe.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),nc=v("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Xp),pe.init(t,e)}),oc=v("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=ef),pe.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Bf(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var sc=v("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=tf),pe.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Bf(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function cw(t){if(!Da.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Bf(r)}var ic=v("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Da),pe.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{cw(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),ac=v("$ZodE164",(t,e)=>{e.pattern??(e.pattern=nf),pe.init(t,e)});function uw(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||e&&(!("alg"in o)||o.alg!==e))}catch{return!1}}var cc=v("$ZodJWT",(t,e)=>{pe.init(t,e),t._zod.check=r=>{uw(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var $s=v("$ZodNumber",(t,e)=>{ae.init(t,e),t._zod.pattern=t._zod.bag.pattern??pf,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=Number(r.value)}catch{}let o=r.value;if(typeof o=="number"&&!Number.isNaN(o)&&Number.isFinite(o))return r;let s=typeof o=="number"?Number.isNaN(o)?"NaN":Number.isFinite(o)?void 0:"Infinity":void 0;return r.issues.push({expected:"number",code:"invalid_type",input:o,inst:t,...s?{received:s}:{}}),r}}),uc=v("$ZodNumber",(t,e)=>{vf.init(t,e),$s.init(t,e)}),lc=v("$ZodBoolean",(t,e)=>{ae.init(t,e),t._zod.pattern=ff,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let o=r.value;return typeof o=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:t}),r}});var dc=v("$ZodNull",(t,e)=>{ae.init(t,e),t._zod.pattern=mf,t._zod.values=new Set([null]),t._zod.parse=(r,n)=>{let o=r.value;return o===null||r.issues.push({expected:"null",code:"invalid_type",input:o,inst:t}),r}});var pc=v("$ZodUnknown",(t,e)=>{ae.init(t,e),t._zod.parse=r=>r}),fc=v("$ZodNever",(t,e)=>{ae.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Of(t,e,r){t.issues.length&&e.issues.push(...Pt(r,t.issues)),e.value[r]=t.value}var mc=v("$ZodArray",(t,e)=>{ae.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>Of(u,r,i))):Of(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function ws(t,e,r){t.issues.length&&e.issues.push(...Pt(r,t.issues)),e.value[r]=t.value}function Nf(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Pt(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var xs=v("$ZodObject",(t,e)=>{ae.init(t,e);let r=Yn(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof ae))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=Ta(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});de(t._zod,"propValues",()=>{let d=e.shape,f={};for(let m in d){let p=d[m]._zod;if(p.values){f[m]??(f[m]=new Set);for(let h of p.values)f[m].add(h)}}return f});let n=d=>{let f=new bs(["shape","payload","ctx"]),m=r.value,p=b=>{let w=Er(b);return`shape[${w}]._zod.run({ value: input[${w}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),g=0;for(let b of m.keys)h[b]=`key_${g++}`;f.write("const newResult = {}");for(let b of m.keys)if(m.optionalKeys.has(b)){let w=h[b];f.write(`const ${w} = ${p(b)};`);let P=Er(b);f.write(`
|
|
13
13
|
if (${w}.issues.length) {
|
|
14
14
|
if (input[${P}] === undefined) {
|
|
15
15
|
if (${P} in input) {
|
|
@@ -31,16 +31,16 @@ var mv=Object.create;var ma=Object.defineProperty;var hv=Object.getOwnPropertyDe
|
|
|
31
31
|
`)}else{let w=h[b];f.write(`const ${w} = ${p(b)};`),f.write(`
|
|
32
32
|
if (${w}.issues.length) payload.issues = payload.issues.concat(${w}.issues.map(iss => ({
|
|
33
33
|
...iss,
|
|
34
|
-
path: iss.path ? [${
|
|
35
|
-
})));`),f.write(`newResult[${Pr(b)}] = ${w}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let _=f.compile();return(b,w)=>_(d,b,w)},o,s=cn,i=!fs.jitless,c=i&&Sa.value,u=e.catchall,l;t._zod.parse=(d,f)=>{l??(l=r.value);let m=d.value;if(!s(m))return d.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),d;let p=[];if(i&&c&&f?.async===!1&&f.jitless!==!0)o||(o=n(e.shape)),d=o(d,f);else{d.value={};let w=l.shape;for(let P of l.keys){let j=w[P],qe=j._zod.run({value:m[P],issues:[]},f),nt=j._zod.optin==="optional"&&j._zod.optout==="optional";qe instanceof Promise?p.push(qe.then(Qr=>nt?zf(Qr,d,P,m):bs(Qr,d,P))):nt?zf(qe,d,P,m):bs(qe,d,P)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,_=u._zod,b=_.def.type;for(let w of Object.keys(m)){if(g.has(w))continue;if(b==="never"){h.push(w);continue}let P=_.run({value:m[w],issues:[]},f);P instanceof Promise?p.push(P.then(j=>bs(j,d,w))):bs(P,d,w)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function Rf(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>ht(s,n,Xe())))}),e}var xs=v("$ZodUnion",(t,e)=>{ae.init(t,e),de(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),de(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),de(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),de(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>Yn(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let o=!1,s=[];for(let i of e.options){let a=i._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)s.push(a),o=!0;else{if(a.issues.length===0)return a;s.push(a)}}return o?Promise.all(s).then(i=>Rf(i,r,t,n)):Rf(s,r,t,n)}}),mc=v("$ZodDiscriminatedUnion",(t,e)=>{xs.init(t,e);let r=t._zod.parse;de(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=Kn(()=>{let o=e.options,s=new Map;for(let i of o){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!cn(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),hc=v("$ZodIntersection",(t,e)=>{ae.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>Tf(r,c,u)):Tf(r,s,i)}});function Va(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(un(t)&&un(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),o={...t,...e};for(let s of n){let i=Va(t[s],e[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<t.length;n++){let o=t[n],s=e[n],i=Va(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Tf(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Er(t))return t;let n=Va(e.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return t.value=n.data,t}var gc=v("$ZodRecord",(t,e)=>{ae.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!un(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Tt(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Tt(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>ht(u,n,Xe())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Tt(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Tt(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var yc=v("$ZodEnum",(t,e)=>{ae.init(t,e);let r=Gn(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>za.has(typeof n)).map(n=>typeof n=="string"?Kt(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),_c=v("$ZodLiteral",(t,e)=>{ae.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Kt(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let o=r.value;return t._zod.values.has(o)||r.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),r}});var vc=v("$ZodTransform",(t,e)=>{ae.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new Mt;return r.value=o,r}}),bc=v("$ZodOptional",(t,e)=>{ae.init(t,e),t._zod.optin="optional",t._zod.optout="optional",de(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),de(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Yn(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),wc=v("$ZodNullable",(t,e)=>{ae.init(t,e),de(t._zod,"optin",()=>e.innerType._zod.optin),de(t._zod,"optout",()=>e.innerType._zod.optout),de(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Yn(r.source)}|null)$`):void 0}),de(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),$c=v("$ZodDefault",(t,e)=>{ae.init(t,e),t._zod.optin="optional",de(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Pf(s,e)):Pf(o,e)}});function Pf(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var xc=v("$ZodPrefault",(t,e)=>{ae.init(t,e),t._zod.optin="optional",de(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),kc=v("$ZodNonOptional",(t,e)=>{ae.init(t,e),de(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Ef(s,t)):Ef(o,t)}});function Ef(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var Sc=v("$ZodCatch",(t,e)=>{ae.init(t,e),t._zod.optin="optional",de(t._zod,"optout",()=>e.innerType._zod.optout),de(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>ht(i,n,Xe()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>ht(s,n,Xe()))},input:r.value}),r.issues=[]),r)}});var zc=v("$ZodPipe",(t,e)=>{ae.init(t,e),de(t._zod,"values",()=>e.in._zod.values),de(t._zod,"optin",()=>e.in._zod.optin),de(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>If(s,e,n)):If(o,e,n)}});function If(t,e,r){return Er(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Rc=v("$ZodReadonly",(t,e)=>{ae.init(t,e),de(t._zod,"propValues",()=>e.innerType._zod.propValues),de(t._zod,"values",()=>e.innerType._zod.values),de(t._zod,"optin",()=>e.innerType._zod.optin),de(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(Of):Of(o)}});function Of(t){return t.value=Object.freeze(t.value),t}var Tc=v("$ZodCustom",(t,e)=>{Pe.init(t,e),ae.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>Nf(s,r,n,t));Nf(o,r,n,t)}});function Nf(t,e,r,n){if(!t){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),e.issues.push(Pa(o))}}var Xb=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},ew=()=>{let t={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 e(n){return t[n]??null}let r={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 n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${Xb(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${gs(n.values[0])}`:`Invalid option: expected one of ${ms(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${ms(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function qf(){return{localeError:ew()}}var tw=Symbol("ZodOutput"),rw=Symbol("ZodInput"),ro=class{constructor(){this._map=new Map,this._idmap=new Map}add(e,...r){let n=r[0];if(this._map.set(e,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Df(){return new ro}var Wt=Df();function Pc(t,e){return new t({type:"string",...M(e)})}function Ec(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...M(e)})}function ks(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...M(e)})}function Ic(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...M(e)})}function Oc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...M(e)})}function Nc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...M(e)})}function Cc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...M(e)})}function Ac(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...M(e)})}function jc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...M(e)})}function Zc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...M(e)})}function Mc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...M(e)})}function qc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...M(e)})}function Dc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...M(e)})}function Lc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...M(e)})}function Vc(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...M(e)})}function Uc(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...M(e)})}function Fc(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...M(e)})}function Bc(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...M(e)})}function Hc(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...M(e)})}function Jc(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...M(e)})}function Gc(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...M(e)})}function Kc(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...M(e)})}function Wc(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...M(e)})}function Lf(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...M(e)})}function Vf(t,e){return new t({type:"string",format:"date",check:"string_format",...M(e)})}function Uf(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...M(e)})}function Ff(t,e){return new t({type:"string",format:"duration",check:"string_format",...M(e)})}function Yc(t,e){return new t({type:"number",checks:[],...M(e)})}function Qc(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...M(e)})}function Xc(t,e){return new t({type:"boolean",...M(e)})}function eu(t,e){return new t({type:"null",...M(e)})}function tu(t){return new t({type:"unknown"})}function ru(t,e){return new t({type:"never",...M(e)})}function Ss(t,e){return new Da({check:"less_than",...M(e),value:t,inclusive:!1})}function no(t,e){return new Da({check:"less_than",...M(e),value:t,inclusive:!0})}function zs(t,e){return new La({check:"greater_than",...M(e),value:t,inclusive:!1})}function oo(t,e){return new La({check:"greater_than",...M(e),value:t,inclusive:!0})}function Rs(t,e){return new df({check:"multiple_of",...M(e),value:t})}function Ts(t,e){return new ff({check:"max_length",...M(e),maximum:t})}function ln(t,e){return new mf({check:"min_length",...M(e),minimum:t})}function Ps(t,e){return new hf({check:"length_equals",...M(e),length:t})}function nu(t,e){return new gf({check:"string_format",format:"regex",...M(e),pattern:t})}function ou(t){return new yf({check:"string_format",format:"lowercase",...M(t)})}function su(t){return new _f({check:"string_format",format:"uppercase",...M(t)})}function iu(t,e){return new vf({check:"string_format",format:"includes",...M(e),includes:t})}function au(t,e){return new bf({check:"string_format",format:"starts_with",...M(e),prefix:t})}function cu(t,e){return new wf({check:"string_format",format:"ends_with",...M(e),suffix:t})}function Nr(t){return new $f({check:"overwrite",tx:t})}function uu(t){return Nr(e=>e.normalize(t))}function lu(){return Nr(t=>t.trim())}function du(){return Nr(t=>t.toLowerCase())}function pu(){return Nr(t=>t.toUpperCase())}function Bf(t,e,r){return new t({type:"array",element:e,...M(r)})}function fu(t,e,r){let n=M(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function mu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...M(r)})}var Es=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Wt,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},f=e._zod.parent;if(f)a.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{let m=a.schema;switch(o.type){case"string":{let p=m;p.type="string";let{minimum:h,maximum:g,format:_,patterns:b,contentEncoding:w}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,p.format===""&&delete p.format),w&&(p.contentEncoding=w),b&&b.size>0){let P=[...b];P.length===1?p.pattern=P[0].source:P.length>1&&(a.schema.allOf=[...P.map(j=>({...this.target==="draft-7"?{type:"string"}:{},pattern:j.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:_,multipleOf:b,exclusiveMaximum:w,exclusiveMinimum:P}=e._zod.bag;typeof _=="string"&&_.includes("int")?p.type="integer":p.type="number",typeof P=="number"&&(p.exclusiveMinimum=P),typeof h=="number"&&(p.minimum=h,typeof P=="number"&&(P>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof w=="number"&&(p.exclusiveMaximum=w),typeof g=="number"&&(p.maximum=g,typeof w=="number"&&(w<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof b=="number"&&(p.multipleOf=b);break}case"boolean":{let p=m;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{m.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{m.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=m,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=m;p.type="object",p.properties={};let h=o.shape;for(let b in h)p.properties[b]=this.process(h[b],{...d,path:[...d.path,"properties",b]});let g=new Set(Object.keys(h)),_=new Set([...g].filter(b=>{let w=o.shape[b]._zod;return this.io==="input"?w.optin===void 0:w.optout===void 0}));_.size>0&&(p.required=Array.from(_)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=m;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=m,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),_=w=>"allOf"in w&&Object.keys(w).length===1,b=[..._(h)?h.allOf:[h],..._(g)?g.allOf:[g]];p.allOf=b;break}case"tuple":{let p=m;p.type="array";let h=o.items.map((b,w)=>this.process(b,{...d,path:[...d.path,"prefixItems",w]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let b=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=b:p.additionalItems=b}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:_}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof _=="number"&&(p.maxItems=_);break}case"record":{let p=m;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=m,h=Gn(o.entries);h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),p.enum=h;break}case"literal":{let p=m,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];p.type=g===null?"null":typeof g,p.const=g}else h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),h.every(g=>typeof g=="boolean")&&(p.type="string"),h.every(g=>g===null)&&(p.type="null"),p.enum=h;break}case"file":{let p=m,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:_,mime:b}=e._zod.bag;g!==void 0&&(h.minLength=g),_!==void 0&&(h.maxLength=_),b?b.length===1?(h.contentMediaType=b[0],Object.assign(p,h)):p.anyOf=b.map(w=>({...h,contentMediaType:w})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);m.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=m;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,m.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}m.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=m,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=h.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,m.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&ke(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(b=>b);if(h)return{ref:g(h)};let _=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=_,{defId:_,ref:`${g("__shared")}#/${d}/${_}`}}if(l[1]===o)return{ref:"#"};let m=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:m+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:f,defId:m}=s(l);d.def={...d.schema},m&&(d.defId=m);let p=d.schema;for(let h in p)delete p[h];p.$ref=f};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
|
|
34
|
+
path: iss.path ? [${Er(b)}, ...iss.path] : [${Er(b)}]
|
|
35
|
+
})));`),f.write(`newResult[${Er(b)}] = ${w}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let _=f.compile();return(b,w)=>_(d,b,w)},o,s=un,i=!ms.jitless,c=i&&za.value,u=e.catchall,l;t._zod.parse=(d,f)=>{l??(l=r.value);let m=d.value;if(!s(m))return d.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),d;let p=[];if(i&&c&&f?.async===!1&&f.jitless!==!0)o||(o=n(e.shape)),d=o(d,f);else{d.value={};let w=l.shape;for(let P of l.keys){let Z=w[P],qe=Z._zod.run({value:m[P],issues:[]},f),ot=Z._zod.optin==="optional"&&Z._zod.optout==="optional";qe instanceof Promise?p.push(qe.then(Xr=>ot?Nf(Xr,d,P,m):ws(Xr,d,P))):ot?Nf(qe,d,P,m):ws(qe,d,P)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,_=u._zod,b=_.def.type;for(let w of Object.keys(m)){if(g.has(w))continue;if(b==="never"){h.push(w);continue}let P=_.run({value:m[w],issues:[]},f);P instanceof Promise?p.push(P.then(Z=>ws(Z,d,w))):ws(P,d,w)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function Cf(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>gt(s,n,et())))}),e}var ks=v("$ZodUnion",(t,e)=>{ae.init(t,e),de(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),de(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),de(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),de(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>Xn(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let o=!1,s=[];for(let i of e.options){let a=i._zod.run({value:r.value,issues:[]},n);if(a instanceof Promise)s.push(a),o=!0;else{if(a.issues.length===0)return a;s.push(a)}}return o?Promise.all(s).then(i=>Cf(i,r,t,n)):Cf(s,r,t,n)}}),hc=v("$ZodDiscriminatedUnion",(t,e)=>{ks.init(t,e);let r=t._zod.parse;de(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=Yn(()=>{let o=e.options,s=new Map;for(let i of o){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!un(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),gc=v("$ZodIntersection",(t,e)=>{ae.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>Af(r,c,u)):Af(r,s,i)}});function Ua(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(ln(t)&&ln(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),o={...t,...e};for(let s of n){let i=Ua(t[s],e[s]);if(!i.valid)return{valid:!1,mergeErrorPath:[s,...i.mergeErrorPath]};o[s]=i.data}return{valid:!0,data:o}}if(Array.isArray(t)&&Array.isArray(e)){if(t.length!==e.length)return{valid:!1,mergeErrorPath:[]};let r=[];for(let n=0;n<t.length;n++){let o=t[n],s=e[n],i=Ua(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Af(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Ir(t))return t;let n=Ua(e.value,r.value);if(!n.valid)throw new Error(`Unmergable intersection. Error path: ${JSON.stringify(n.mergeErrorPath)}`);return t.value=n.data,t}var yc=v("$ZodRecord",(t,e)=>{ae.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!ln(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Pt(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Pt(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>gt(u,n,et())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Pt(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Pt(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var _c=v("$ZodEnum",(t,e)=>{ae.init(t,e);let r=Wn(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ra.has(typeof n)).map(n=>typeof n=="string"?Kt(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),vc=v("$ZodLiteral",(t,e)=>{ae.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Kt(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let o=r.value;return t._zod.values.has(o)||r.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),r}});var bc=v("$ZodTransform",(t,e)=>{ae.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new qt;return r.value=o,r}}),wc=v("$ZodOptional",(t,e)=>{ae.init(t,e),t._zod.optin="optional",t._zod.optout="optional",de(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),de(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Xn(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),$c=v("$ZodNullable",(t,e)=>{ae.init(t,e),de(t._zod,"optin",()=>e.innerType._zod.optin),de(t._zod,"optout",()=>e.innerType._zod.optout),de(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Xn(r.source)}|null)$`):void 0}),de(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),xc=v("$ZodDefault",(t,e)=>{ae.init(t,e),t._zod.optin="optional",de(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>jf(s,e)):jf(o,e)}});function jf(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var kc=v("$ZodPrefault",(t,e)=>{ae.init(t,e),t._zod.optin="optional",de(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Sc=v("$ZodNonOptional",(t,e)=>{ae.init(t,e),de(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Zf(s,t)):Zf(o,t)}});function Zf(t,e){return!t.issues.length&&t.value===void 0&&t.issues.push({code:"invalid_type",expected:"nonoptional",input:t.value,inst:e}),t}var zc=v("$ZodCatch",(t,e)=>{ae.init(t,e),t._zod.optin="optional",de(t._zod,"optout",()=>e.innerType._zod.optout),de(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>gt(i,n,et()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>gt(s,n,et()))},input:r.value}),r.issues=[]),r)}});var Rc=v("$ZodPipe",(t,e)=>{ae.init(t,e),de(t._zod,"values",()=>e.in._zod.values),de(t._zod,"optin",()=>e.in._zod.optin),de(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>Mf(s,e,n)):Mf(o,e,n)}});function Mf(t,e,r){return Ir(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Tc=v("$ZodReadonly",(t,e)=>{ae.init(t,e),de(t._zod,"propValues",()=>e.innerType._zod.propValues),de(t._zod,"values",()=>e.innerType._zod.values),de(t._zod,"optin",()=>e.innerType._zod.optin),de(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(qf):qf(o)}});function qf(t){return t.value=Object.freeze(t.value),t}var Pc=v("$ZodCustom",(t,e)=>{Pe.init(t,e),ae.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>Df(s,r,n,t));Df(o,r,n,t)}});function Df(t,e,r,n){if(!t){let o={code:"custom",input:r,inst:n,path:[...n._zod.def.path??[]],continue:!n._zod.def.abort};n._zod.def.params&&(o.params=n._zod.def.params),e.issues.push(Ea(o))}}var lw=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},dw=()=>{let t={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 e(n){return t[n]??null}let r={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 n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${lw(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${ys(n.values[0])}`:`Invalid option: expected one of ${hs(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${hs(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Hf(){return{localeError:dw()}}var pw=Symbol("ZodOutput"),fw=Symbol("ZodInput"),oo=class{constructor(){this._map=new Map,this._idmap=new Map}add(e,...r){let n=r[0];if(this._map.set(e,n),n&&typeof n=="object"&&"id"in n){if(this._idmap.has(n.id))throw new Error(`ID ${n.id} already exists in the registry`);this._idmap.set(n.id,e)}return this}clear(){return this._map=new Map,this._idmap=new Map,this}remove(e){let r=this._map.get(e);return r&&typeof r=="object"&&"id"in r&&this._idmap.delete(r.id),this._map.delete(e),this}get(e){let r=e._zod.parent;if(r){let n={...this.get(r)??{}};return delete n.id,{...n,...this._map.get(e)}}return this._map.get(e)}has(e){return this._map.has(e)}};function Jf(){return new oo}var Wt=Jf();function Ec(t,e){return new t({type:"string",...q(e)})}function Ic(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...q(e)})}function Ss(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...q(e)})}function Oc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...q(e)})}function Nc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...q(e)})}function Cc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...q(e)})}function Ac(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...q(e)})}function jc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...q(e)})}function Zc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...q(e)})}function Mc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...q(e)})}function qc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...q(e)})}function Dc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...q(e)})}function Lc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...q(e)})}function Vc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...q(e)})}function Uc(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...q(e)})}function Fc(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...q(e)})}function Bc(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...q(e)})}function Hc(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...q(e)})}function Jc(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...q(e)})}function Gc(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...q(e)})}function Kc(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...q(e)})}function Wc(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...q(e)})}function Yc(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...q(e)})}function Gf(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...q(e)})}function Kf(t,e){return new t({type:"string",format:"date",check:"string_format",...q(e)})}function Wf(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...q(e)})}function Yf(t,e){return new t({type:"string",format:"duration",check:"string_format",...q(e)})}function Qc(t,e){return new t({type:"number",checks:[],...q(e)})}function Xc(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...q(e)})}function eu(t,e){return new t({type:"boolean",...q(e)})}function tu(t,e){return new t({type:"null",...q(e)})}function ru(t){return new t({type:"unknown"})}function nu(t,e){return new t({type:"never",...q(e)})}function zs(t,e){return new La({check:"less_than",...q(e),value:t,inclusive:!1})}function so(t,e){return new La({check:"less_than",...q(e),value:t,inclusive:!0})}function Rs(t,e){return new Va({check:"greater_than",...q(e),value:t,inclusive:!1})}function io(t,e){return new Va({check:"greater_than",...q(e),value:t,inclusive:!0})}function Ts(t,e){return new _f({check:"multiple_of",...q(e),value:t})}function Ps(t,e){return new bf({check:"max_length",...q(e),maximum:t})}function dn(t,e){return new wf({check:"min_length",...q(e),minimum:t})}function Es(t,e){return new $f({check:"length_equals",...q(e),length:t})}function ou(t,e){return new xf({check:"string_format",format:"regex",...q(e),pattern:t})}function su(t){return new kf({check:"string_format",format:"lowercase",...q(t)})}function iu(t){return new Sf({check:"string_format",format:"uppercase",...q(t)})}function au(t,e){return new zf({check:"string_format",format:"includes",...q(e),includes:t})}function cu(t,e){return new Rf({check:"string_format",format:"starts_with",...q(e),prefix:t})}function uu(t,e){return new Tf({check:"string_format",format:"ends_with",...q(e),suffix:t})}function Cr(t){return new Pf({check:"overwrite",tx:t})}function lu(t){return Cr(e=>e.normalize(t))}function du(){return Cr(t=>t.trim())}function pu(){return Cr(t=>t.toLowerCase())}function fu(){return Cr(t=>t.toUpperCase())}function Qf(t,e,r){return new t({type:"array",element:e,...q(r)})}function mu(t,e,r){let n=q(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function hu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...q(r)})}var Is=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Wt,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},f=e._zod.parent;if(f)a.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{let m=a.schema;switch(o.type){case"string":{let p=m;p.type="string";let{minimum:h,maximum:g,format:_,patterns:b,contentEncoding:w}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,p.format===""&&delete p.format),w&&(p.contentEncoding=w),b&&b.size>0){let P=[...b];P.length===1?p.pattern=P[0].source:P.length>1&&(a.schema.allOf=[...P.map(Z=>({...this.target==="draft-7"?{type:"string"}:{},pattern:Z.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:_,multipleOf:b,exclusiveMaximum:w,exclusiveMinimum:P}=e._zod.bag;typeof _=="string"&&_.includes("int")?p.type="integer":p.type="number",typeof P=="number"&&(p.exclusiveMinimum=P),typeof h=="number"&&(p.minimum=h,typeof P=="number"&&(P>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof w=="number"&&(p.exclusiveMaximum=w),typeof g=="number"&&(p.maximum=g,typeof w=="number"&&(w<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof b=="number"&&(p.multipleOf=b);break}case"boolean":{let p=m;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{m.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{m.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=m,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=m;p.type="object",p.properties={};let h=o.shape;for(let b in h)p.properties[b]=this.process(h[b],{...d,path:[...d.path,"properties",b]});let g=new Set(Object.keys(h)),_=new Set([...g].filter(b=>{let w=o.shape[b]._zod;return this.io==="input"?w.optin===void 0:w.optout===void 0}));_.size>0&&(p.required=Array.from(_)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=m;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=m,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),_=w=>"allOf"in w&&Object.keys(w).length===1,b=[..._(h)?h.allOf:[h],..._(g)?g.allOf:[g]];p.allOf=b;break}case"tuple":{let p=m;p.type="array";let h=o.items.map((b,w)=>this.process(b,{...d,path:[...d.path,"prefixItems",w]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let b=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=b:p.additionalItems=b}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:_}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof _=="number"&&(p.maxItems=_);break}case"record":{let p=m;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=m,h=Wn(o.entries);h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),p.enum=h;break}case"literal":{let p=m,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];p.type=g===null?"null":typeof g,p.const=g}else h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),h.every(g=>typeof g=="boolean")&&(p.type="string"),h.every(g=>g===null)&&(p.type="null"),p.enum=h;break}case"file":{let p=m,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:_,mime:b}=e._zod.bag;g!==void 0&&(h.minLength=g),_!==void 0&&(h.maxLength=_),b?b.length===1?(h.contentMediaType=b[0],Object.assign(p,h)):p.anyOf=b.map(w=>({...h,contentMediaType:w})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);m.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=m;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,m.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}m.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=m,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=h.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,m.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&ke(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(b=>b);if(h)return{ref:g(h)};let _=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=_,{defId:_,ref:`${g("__shared")}#/${d}/${_}`}}if(l[1]===o)return{ref:"#"};let m=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:m+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:f,defId:m}=s(l);d.def={...d.schema},m&&(d.defId=m);let p=d.schema;for(let h in p)delete p[h];p.$ref=f};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
|
|
36
36
|
|
|
37
|
-
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let m=n.external.registry.get(l[0])?.id;if(e!==l[0]&&m){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let f=this.seen.get(l),m=f.def??f.schema,p={...m};if(f.ref===null)return;let h=f.ref;if(f.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(m.allOf=m.allOf??[],m.allOf.push(g)):(Object.assign(m,g),Object.assign(m,p))}f.isParent||this.override({zodSchema:l,jsonSchema:m,path:f.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}};function hu(t,e){if(t instanceof ro){let n=new Es(e),o={};for(let a of t._idmap.entries()){let[c,u]=a;n.process(u)}let s={},i={registry:t,uri:e?.uri,defs:o};for(let a of t._idmap.entries()){let[c,u]=a;s[c]=n.emit(u,{...e,external:i})}if(Object.keys(o).length>0){let a=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[a]:o}}return{schemas:s}}let r=new Es(e);return r.process(t),r.emit(t,e)}function ke(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let o=t._zod.def;switch(o.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 ke(o.element,r);case"object":{for(let s in o.shape)if(ke(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(ke(s,r))return!0;return!1}case"intersection":return ke(o.left,r)||ke(o.right,r);case"tuple":{for(let s of o.items)if(ke(s,r))return!0;return!!(o.rest&&ke(o.rest,r))}case"record":return ke(o.keyType,r)||ke(o.valueType,r);case"map":return ke(o.keyType,r)||ke(o.valueType,r);case"set":return ke(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return ke(o.innerType,r);case"lazy":return ke(o.getter(),r);case"default":return ke(o.innerType,r);case"prefault":return ke(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return ke(o.in,r)||ke(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Zw=v("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ae.init(t,e),t.def=e,t.parse=(r,n)=>Na(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Ir(t,r,n),t.parseAsync=async(r,n)=>Aa(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Or(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>et(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t)});var Mw=v("ZodMiniObject",(t,e)=>{$s.init(t,e),Zw.init(t,e),Q.defineLazy(t,"shape",()=>e.shape)});function gu(t,e){let r={type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},...Q.normalizeParams(e)};return new Mw(r)}function it(t){return!!t._zod}function Ar(t){let e=Object.values(t);if(e.length===0)return gu({});let r=e.every(it),n=e.every(o=>!it(o));if(r)return gu(t);if(n)return va(t);throw new Error("Mixed Zod versions detected in object shape.")}function Yt(t,e){return it(t)?Ir(t,e):t.safeParse(e)}async function Is(t,e){return it(t)?await Or(t,e):await t.safeParseAsync(e)}function Qt(t){if(!t)return;let e;if(it(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function dn(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return Ar(t)}}if(it(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function Os(t){if(t&&typeof t=="object"){if("message"in t&&typeof t.message=="string")return t.message;if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0){let e=t.issues[0];if(e&&typeof e=="object"&&"message"in e)return String(e.message)}try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function Jf(t){return t.description}function Gf(t){if(it(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Ns(t){if(it(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var so={};ha(so,{ZodISODate:()=>Wf,ZodISODateTime:()=>Kf,ZodISODuration:()=>Qf,ZodISOTime:()=>Yf,date:()=>_u,datetime:()=>yu,duration:()=>bu,time:()=>vu});var Kf=v("ZodISODateTime",(t,e)=>{Cf.init(t,e),ye.init(t,e)});function yu(t){return Lf(Kf,t)}var Wf=v("ZodISODate",(t,e)=>{Af.init(t,e),ye.init(t,e)});function _u(t){return Vf(Wf,t)}var Yf=v("ZodISOTime",(t,e)=>{jf.init(t,e),ye.init(t,e)});function vu(t){return Uf(Yf,t)}var Qf=v("ZodISODuration",(t,e)=>{Zf.init(t,e),ye.init(t,e)});function bu(t){return Ff(Qf,t)}var Xf=(t,e)=>{ys.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ia(t,r)},flatten:{value:r=>Ea(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},jO=v("ZodError",Xf),io=v("ZodError",Xf,{Parent:Error});var em=Oa(io),tm=Ca(io),rm=ja(io),nm=Za(io);var we=v("ZodType",(t,e)=>(ae.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>et(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>em(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>rm(t,r,n),t.parseAsync=async(r,n)=>tm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>nm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(A$(r,n)),t.superRefine=r=>t.check(j$(r)),t.overwrite=r=>t.check(Nr(r)),t.optional=()=>ve(t),t.nullable=()=>im(t),t.nullish=()=>ve(im(t)),t.nonoptional=r=>T$(t,r),t.array=()=>ee(t),t.or=r=>me([t,r]),t.and=r=>As(t,r),t.transform=r=>$u(t,pm(r)),t.default=r=>S$(t,r),t.prefault=r=>R$(t,r),t.catch=r=>E$(t,r),t.pipe=r=>$u(t,r),t.readonly=()=>N$(t),t.describe=r=>{let n=t.clone();return Wt.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Wt.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Wt.get(t);let n=t.clone();return Wt.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),am=v("_ZodString",(t,e)=>{to.init(t,e),we.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(nu(...n)),t.includes=(...n)=>t.check(iu(...n)),t.startsWith=(...n)=>t.check(au(...n)),t.endsWith=(...n)=>t.check(cu(...n)),t.min=(...n)=>t.check(ln(...n)),t.max=(...n)=>t.check(Ts(...n)),t.length=(...n)=>t.check(Ps(...n)),t.nonempty=(...n)=>t.check(ln(1,...n)),t.lowercase=n=>t.check(ou(n)),t.uppercase=n=>t.check(su(n)),t.trim=()=>t.check(lu()),t.normalize=(...n)=>t.check(uu(...n)),t.toLowerCase=()=>t.check(du()),t.toUpperCase=()=>t.check(pu())}),Jw=v("ZodString",(t,e)=>{to.init(t,e),am.init(t,e),t.email=r=>t.check(Ec(Gw,r)),t.url=r=>t.check(Ac(Kw,r)),t.jwt=r=>t.check(Wc(l$,r)),t.emoji=r=>t.check(jc(Ww,r)),t.guid=r=>t.check(ks(om,r)),t.uuid=r=>t.check(Ic(Cs,r)),t.uuidv4=r=>t.check(Oc(Cs,r)),t.uuidv6=r=>t.check(Nc(Cs,r)),t.uuidv7=r=>t.check(Cc(Cs,r)),t.nanoid=r=>t.check(Zc(Yw,r)),t.guid=r=>t.check(ks(om,r)),t.cuid=r=>t.check(Mc(Qw,r)),t.cuid2=r=>t.check(qc(Xw,r)),t.ulid=r=>t.check(Dc(e$,r)),t.base64=r=>t.check(Jc(a$,r)),t.base64url=r=>t.check(Gc(c$,r)),t.xid=r=>t.check(Lc(t$,r)),t.ksuid=r=>t.check(Vc(r$,r)),t.ipv4=r=>t.check(Uc(n$,r)),t.ipv6=r=>t.check(Fc(o$,r)),t.cidrv4=r=>t.check(Bc(s$,r)),t.cidrv6=r=>t.check(Hc(i$,r)),t.e164=r=>t.check(Kc(u$,r)),t.datetime=r=>t.check(yu(r)),t.date=r=>t.check(_u(r)),t.time=r=>t.check(vu(r)),t.duration=r=>t.check(bu(r))});function y(t){return Pc(Jw,t)}var ye=v("ZodStringFormat",(t,e)=>{pe.init(t,e),am.init(t,e)}),Gw=v("ZodEmail",(t,e)=>{Ba.init(t,e),ye.init(t,e)});var om=v("ZodGUID",(t,e)=>{Ua.init(t,e),ye.init(t,e)});var Cs=v("ZodUUID",(t,e)=>{Fa.init(t,e),ye.init(t,e)});var Kw=v("ZodURL",(t,e)=>{Ha.init(t,e),ye.init(t,e)});var Ww=v("ZodEmoji",(t,e)=>{Ja.init(t,e),ye.init(t,e)});var Yw=v("ZodNanoID",(t,e)=>{Ga.init(t,e),ye.init(t,e)});var Qw=v("ZodCUID",(t,e)=>{Ka.init(t,e),ye.init(t,e)});var Xw=v("ZodCUID2",(t,e)=>{Wa.init(t,e),ye.init(t,e)});var e$=v("ZodULID",(t,e)=>{Ya.init(t,e),ye.init(t,e)});var t$=v("ZodXID",(t,e)=>{Qa.init(t,e),ye.init(t,e)});var r$=v("ZodKSUID",(t,e)=>{Xa.init(t,e),ye.init(t,e)});var n$=v("ZodIPv4",(t,e)=>{ec.init(t,e),ye.init(t,e)});var o$=v("ZodIPv6",(t,e)=>{tc.init(t,e),ye.init(t,e)});var s$=v("ZodCIDRv4",(t,e)=>{rc.init(t,e),ye.init(t,e)});var i$=v("ZodCIDRv6",(t,e)=>{nc.init(t,e),ye.init(t,e)});var a$=v("ZodBase64",(t,e)=>{oc.init(t,e),ye.init(t,e)});var c$=v("ZodBase64URL",(t,e)=>{sc.init(t,e),ye.init(t,e)});var u$=v("ZodE164",(t,e)=>{ic.init(t,e),ye.init(t,e)});var l$=v("ZodJWT",(t,e)=>{ac.init(t,e),ye.init(t,e)});var cm=v("ZodNumber",(t,e)=>{ws.init(t,e),we.init(t,e),t.gt=(n,o)=>t.check(zs(n,o)),t.gte=(n,o)=>t.check(oo(n,o)),t.min=(n,o)=>t.check(oo(n,o)),t.lt=(n,o)=>t.check(Ss(n,o)),t.lte=(n,o)=>t.check(no(n,o)),t.max=(n,o)=>t.check(no(n,o)),t.int=n=>t.check(sm(n)),t.safe=n=>t.check(sm(n)),t.positive=n=>t.check(zs(0,n)),t.nonnegative=n=>t.check(oo(0,n)),t.negative=n=>t.check(Ss(0,n)),t.nonpositive=n=>t.check(no(0,n)),t.multipleOf=(n,o)=>t.check(Rs(n,o)),t.step=(n,o)=>t.check(Rs(n,o)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function ie(t){return Yc(cm,t)}var d$=v("ZodNumberFormat",(t,e)=>{cc.init(t,e),cm.init(t,e)});function sm(t){return Qc(d$,t)}var p$=v("ZodBoolean",(t,e)=>{uc.init(t,e),we.init(t,e)});function ze(t){return Xc(p$,t)}var f$=v("ZodNull",(t,e)=>{lc.init(t,e),we.init(t,e)});function um(t){return eu(f$,t)}var m$=v("ZodUnknown",(t,e)=>{dc.init(t,e),we.init(t,e)});function _e(){return tu(m$)}var h$=v("ZodNever",(t,e)=>{pc.init(t,e),we.init(t,e)});function g$(t){return ru(h$,t)}var y$=v("ZodArray",(t,e)=>{fc.init(t,e),we.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(ln(r,n)),t.nonempty=r=>t.check(ln(1,r)),t.max=(r,n)=>t.check(Ts(r,n)),t.length=(r,n)=>t.check(Ps(r,n)),t.unwrap=()=>t.element});function ee(t,e){return Bf(y$,t,e)}var lm=v("ZodObject",(t,e)=>{$s.init(t,e),we.init(t,e),Q.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Je(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:_e()}),t.loose=()=>t.clone({...t._zod.def,catchall:_e()}),t.strict=()=>t.clone({...t._zod.def,catchall:g$()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>Q.extend(t,r),t.merge=r=>Q.merge(t,r),t.pick=r=>Q.pick(t,r),t.omit=r=>Q.omit(t,r),t.partial=(...r)=>Q.partial(fm,t,r[0]),t.required=(...r)=>Q.required(mm,t,r[0])});function T(t,e){let r={type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},...Q.normalizeParams(e)};return new lm(r)}function De(t,e){return new lm({type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},catchall:_e(),...Q.normalizeParams(e)})}var dm=v("ZodUnion",(t,e)=>{xs.init(t,e),we.init(t,e),t.options=e.options});function me(t,e){return new dm({type:"union",options:t,...Q.normalizeParams(e)})}var _$=v("ZodDiscriminatedUnion",(t,e)=>{dm.init(t,e),mc.init(t,e)});function xu(t,e,r){return new _$({type:"union",options:e,discriminator:t,...Q.normalizeParams(r)})}var v$=v("ZodIntersection",(t,e)=>{hc.init(t,e),we.init(t,e)});function As(t,e){return new v$({type:"intersection",left:t,right:e})}var b$=v("ZodRecord",(t,e)=>{gc.init(t,e),we.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function fe(t,e,r){return new b$({type:"record",keyType:t,valueType:e,...Q.normalizeParams(r)})}var wu=v("ZodEnum",(t,e)=>{yc.init(t,e),we.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new wu({...e,checks:[],...Q.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let i of n)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new wu({...e,checks:[],...Q.normalizeParams(o),entries:s})}});function Je(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new wu({type:"enum",entries:r,...Q.normalizeParams(e)})}var w$=v("ZodLiteral",(t,e)=>{_c.init(t,e),we.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function N(t,e){return new w$({type:"literal",values:Array.isArray(t)?t:[t],...Q.normalizeParams(e)})}var $$=v("ZodTransform",(t,e)=>{vc.init(t,e),we.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(Q.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(Q.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});function pm(t){return new $$({type:"transform",transform:t})}var fm=v("ZodOptional",(t,e)=>{bc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ve(t){return new fm({type:"optional",innerType:t})}var x$=v("ZodNullable",(t,e)=>{wc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function im(t){return new x$({type:"nullable",innerType:t})}var k$=v("ZodDefault",(t,e)=>{$c.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function S$(t,e){return new k$({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var z$=v("ZodPrefault",(t,e)=>{xc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function R$(t,e){return new z$({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var mm=v("ZodNonOptional",(t,e)=>{kc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function T$(t,e){return new mm({type:"nonoptional",innerType:t,...Q.normalizeParams(e)})}var P$=v("ZodCatch",(t,e)=>{Sc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function E$(t,e){return new P$({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var I$=v("ZodPipe",(t,e)=>{zc.init(t,e),we.init(t,e),t.in=e.in,t.out=e.out});function $u(t,e){return new I$({type:"pipe",in:t,out:e})}var O$=v("ZodReadonly",(t,e)=>{Rc.init(t,e),we.init(t,e)});function N$(t){return new O$({type:"readonly",innerType:t})}var hm=v("ZodCustom",(t,e)=>{Tc.init(t,e),we.init(t,e)});function C$(t){let e=new Pe({check:"custom"});return e._zod.check=t,e}function gm(t,e){return fu(hm,t??(()=>!0),e)}function A$(t,e={}){return mu(hm,t,e)}function j$(t){let e=C$(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(Q.issue(n,r.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),r.issues.push(Q.issue(o))}},t(r.value,r)));return e}function ku(t,e){return $u(pm(t),e)}Xe(qf());var zu="2025-11-25",ym="2025-03-26",fn=[zu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Xt="io.modelcontextprotocol/related-task",Zs="2.0",Se=gm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),_m=me([y(),ie().int()]),vm=y(),WO=De({ttl:ie().optional(),pollInterval:ie().optional()}),Z$=T({ttl:ie().optional()}),M$=T({taskId:y()}),Ru=De({progressToken:_m.optional(),[Xt]:M$.optional()}),tt=T({_meta:Ru.optional()}),ao=tt.extend({task:Z$.optional()}),bm=t=>ao.safeParse(t).success,Ee=T({method:y(),params:tt.loose().optional()}),at=T({_meta:Ru.optional()}),ct=T({method:y(),params:at.loose().optional()}),Ie=De({_meta:Ru.optional()}),Ms=me([y(),ie().int()]),wm=T({jsonrpc:N(Zs),id:Ms,...Ee.shape}).strict(),er=t=>wm.safeParse(t).success,$m=T({jsonrpc:N(Zs),...ct.shape}).strict(),xm=t=>$m.safeParse(t).success,Tu=T({jsonrpc:N(Zs),id:Ms,result:Ie}).strict(),qt=t=>Tu.safeParse(t).success;var A;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(A||(A={}));var Pu=T({jsonrpc:N(Zs),id:Ms.optional(),error:T({code:ie().int(),message:y(),data:_e().optional()})}).strict();var mn=t=>Pu.safeParse(t).success;var co=me([wm,$m,Tu,Pu]),YO=me([Tu,Pu]),qs=Ie.strict(),q$=at.extend({requestId:Ms.optional(),reason:y().optional()}),Ds=ct.extend({method:N("notifications/cancelled"),params:q$}),D$=T({src:y(),mimeType:y().optional(),sizes:ee(y()).optional(),theme:Je(["light","dark"]).optional()}),uo=T({icons:ee(D$).optional()}),pn=T({name:y(),title:y().optional()}),km=pn.extend({...pn.shape,...uo.shape,version:y(),websiteUrl:y().optional(),description:y().optional()}),L$=As(T({applyDefaults:ze().optional()}),fe(y(),_e())),V$=ku(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,As(T({form:L$.optional(),url:Se.optional()}),fe(y(),_e()).optional())),U$=De({list:Se.optional(),cancel:Se.optional(),requests:De({sampling:De({createMessage:Se.optional()}).optional(),elicitation:De({create:Se.optional()}).optional()}).optional()}),F$=De({list:Se.optional(),cancel:Se.optional(),requests:De({tools:De({call:Se.optional()}).optional()}).optional()}),B$=T({experimental:fe(y(),Se).optional(),sampling:T({context:Se.optional(),tools:Se.optional()}).optional(),elicitation:V$.optional(),roots:T({listChanged:ze().optional()}).optional(),tasks:U$.optional(),extensions:fe(y(),Se).optional()}),H$=tt.extend({protocolVersion:y(),capabilities:B$,clientInfo:km}),Ls=Ee.extend({method:N("initialize"),params:H$}),lo=t=>Ls.safeParse(t).success,J$=T({experimental:fe(y(),Se).optional(),logging:Se.optional(),completions:Se.optional(),prompts:T({listChanged:ze().optional()}).optional(),resources:T({subscribe:ze().optional(),listChanged:ze().optional()}).optional(),tools:T({listChanged:ze().optional()}).optional(),tasks:F$.optional(),extensions:fe(y(),Se).optional()}),G$=Ie.extend({protocolVersion:y(),capabilities:J$,serverInfo:km,instructions:y().optional()}),Eu=ct.extend({method:N("notifications/initialized"),params:at.optional()});var Vs=Ee.extend({method:N("ping"),params:tt.optional()}),K$=T({progress:ie(),total:ve(ie()),message:ve(y())}),W$=T({...at.shape,...K$.shape,progressToken:_m}),Us=ct.extend({method:N("notifications/progress"),params:W$}),Y$=tt.extend({cursor:vm.optional()}),po=Ee.extend({params:Y$.optional()}),fo=Ie.extend({nextCursor:vm.optional()}),Q$=Je(["working","input_required","completed","failed","cancelled"]),mo=T({taskId:y(),status:Q$,ttl:me([ie(),um()]),createdAt:y(),lastUpdatedAt:y(),pollInterval:ve(ie()),statusMessage:ve(y())}),hn=Ie.extend({task:mo}),X$=at.merge(mo),ho=ct.extend({method:N("notifications/tasks/status"),params:X$}),Fs=Ee.extend({method:N("tasks/get"),params:tt.extend({taskId:y()})}),Bs=Ie.merge(mo),Hs=Ee.extend({method:N("tasks/result"),params:tt.extend({taskId:y()})}),QO=Ie.loose(),Js=po.extend({method:N("tasks/list")}),Gs=fo.extend({tasks:ee(mo)}),Ks=Ee.extend({method:N("tasks/cancel"),params:tt.extend({taskId:y()})}),Sm=Ie.merge(mo),zm=T({uri:y(),mimeType:ve(y()),_meta:fe(y(),_e()).optional()}),Rm=zm.extend({text:y()}),Iu=y().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Tm=zm.extend({blob:Iu}),go=Je(["user","assistant"]),gn=T({audience:ee(go).optional(),priority:ie().min(0).max(1).optional(),lastModified:so.datetime({offset:!0}).optional()}),Pm=T({...pn.shape,...uo.shape,uri:y(),description:ve(y()),mimeType:ve(y()),size:ve(ie()),annotations:gn.optional(),_meta:ve(De({}))}),ex=T({...pn.shape,...uo.shape,uriTemplate:y(),description:ve(y()),mimeType:ve(y()),annotations:gn.optional(),_meta:ve(De({}))}),Ws=po.extend({method:N("resources/list")}),tx=fo.extend({resources:ee(Pm)}),Ys=po.extend({method:N("resources/templates/list")}),rx=fo.extend({resourceTemplates:ee(ex)}),Ou=tt.extend({uri:y()}),nx=Ou,Qs=Ee.extend({method:N("resources/read"),params:nx}),ox=Ie.extend({contents:ee(me([Rm,Tm]))}),sx=ct.extend({method:N("notifications/resources/list_changed"),params:at.optional()}),ix=Ou,ax=Ee.extend({method:N("resources/subscribe"),params:ix}),cx=Ou,ux=Ee.extend({method:N("resources/unsubscribe"),params:cx}),lx=at.extend({uri:y()}),dx=ct.extend({method:N("notifications/resources/updated"),params:lx}),px=T({name:y(),description:ve(y()),required:ve(ze())}),fx=T({...pn.shape,...uo.shape,description:ve(y()),arguments:ve(ee(px)),_meta:ve(De({}))}),Xs=po.extend({method:N("prompts/list")}),mx=fo.extend({prompts:ee(fx)}),hx=tt.extend({name:y(),arguments:fe(y(),y()).optional()}),ei=Ee.extend({method:N("prompts/get"),params:hx}),Nu=T({type:N("text"),text:y(),annotations:gn.optional(),_meta:fe(y(),_e()).optional()}),Cu=T({type:N("image"),data:Iu,mimeType:y(),annotations:gn.optional(),_meta:fe(y(),_e()).optional()}),Au=T({type:N("audio"),data:Iu,mimeType:y(),annotations:gn.optional(),_meta:fe(y(),_e()).optional()}),gx=T({type:N("tool_use"),name:y(),id:y(),input:fe(y(),_e()),_meta:fe(y(),_e()).optional()}),yx=T({type:N("resource"),resource:me([Rm,Tm]),annotations:gn.optional(),_meta:fe(y(),_e()).optional()}),_x=Pm.extend({type:N("resource_link")}),ju=me([Nu,Cu,Au,_x,yx]),vx=T({role:go,content:ju}),bx=Ie.extend({description:y().optional(),messages:ee(vx)}),wx=ct.extend({method:N("notifications/prompts/list_changed"),params:at.optional()}),$x=T({title:y().optional(),readOnlyHint:ze().optional(),destructiveHint:ze().optional(),idempotentHint:ze().optional(),openWorldHint:ze().optional()}),xx=T({taskSupport:Je(["required","optional","forbidden"]).optional()}),Em=T({...pn.shape,...uo.shape,description:y().optional(),inputSchema:T({type:N("object"),properties:fe(y(),Se).optional(),required:ee(y()).optional()}).catchall(_e()),outputSchema:T({type:N("object"),properties:fe(y(),Se).optional(),required:ee(y()).optional()}).catchall(_e()).optional(),annotations:$x.optional(),execution:xx.optional(),_meta:fe(y(),_e()).optional()}),ti=po.extend({method:N("tools/list")}),kx=fo.extend({tools:ee(Em)}),ri=Ie.extend({content:ee(ju).default([]),structuredContent:fe(y(),_e()).optional(),isError:ze().optional()}),XO=ri.or(Ie.extend({toolResult:_e()})),Sx=ao.extend({name:y(),arguments:fe(y(),_e()).optional()}),yn=Ee.extend({method:N("tools/call"),params:Sx}),zx=ct.extend({method:N("notifications/tools/list_changed"),params:at.optional()}),eN=T({autoRefresh:ze().default(!0),debounceMs:ie().int().nonnegative().default(300)}),yo=Je(["debug","info","notice","warning","error","critical","alert","emergency"]),Rx=tt.extend({level:yo}),Zu=Ee.extend({method:N("logging/setLevel"),params:Rx}),Tx=at.extend({level:yo,logger:y().optional(),data:_e()}),Px=ct.extend({method:N("notifications/message"),params:Tx}),Ex=T({name:y().optional()}),Ix=T({hints:ee(Ex).optional(),costPriority:ie().min(0).max(1).optional(),speedPriority:ie().min(0).max(1).optional(),intelligencePriority:ie().min(0).max(1).optional()}),Ox=T({mode:Je(["auto","required","none"]).optional()}),Nx=T({type:N("tool_result"),toolUseId:y().describe("The unique identifier for the corresponding tool call."),content:ee(ju).default([]),structuredContent:T({}).loose().optional(),isError:ze().optional(),_meta:fe(y(),_e()).optional()}),Cx=xu("type",[Nu,Cu,Au]),js=xu("type",[Nu,Cu,Au,gx,Nx]),Ax=T({role:go,content:me([js,ee(js)]),_meta:fe(y(),_e()).optional()}),jx=ao.extend({messages:ee(Ax),modelPreferences:Ix.optional(),systemPrompt:y().optional(),includeContext:Je(["none","thisServer","allServers"]).optional(),temperature:ie().optional(),maxTokens:ie().int(),stopSequences:ee(y()).optional(),metadata:Se.optional(),tools:ee(Em).optional(),toolChoice:Ox.optional()}),Zx=Ee.extend({method:N("sampling/createMessage"),params:jx}),_o=Ie.extend({model:y(),stopReason:ve(Je(["endTurn","stopSequence","maxTokens"]).or(y())),role:go,content:Cx}),Mu=Ie.extend({model:y(),stopReason:ve(Je(["endTurn","stopSequence","maxTokens","toolUse"]).or(y())),role:go,content:me([js,ee(js)])}),Mx=T({type:N("boolean"),title:y().optional(),description:y().optional(),default:ze().optional()}),qx=T({type:N("string"),title:y().optional(),description:y().optional(),minLength:ie().optional(),maxLength:ie().optional(),format:Je(["email","uri","date","date-time"]).optional(),default:y().optional()}),Dx=T({type:Je(["number","integer"]),title:y().optional(),description:y().optional(),minimum:ie().optional(),maximum:ie().optional(),default:ie().optional()}),Lx=T({type:N("string"),title:y().optional(),description:y().optional(),enum:ee(y()),default:y().optional()}),Vx=T({type:N("string"),title:y().optional(),description:y().optional(),oneOf:ee(T({const:y(),title:y()})),default:y().optional()}),Ux=T({type:N("string"),title:y().optional(),description:y().optional(),enum:ee(y()),enumNames:ee(y()).optional(),default:y().optional()}),Fx=me([Lx,Vx]),Bx=T({type:N("array"),title:y().optional(),description:y().optional(),minItems:ie().optional(),maxItems:ie().optional(),items:T({type:N("string"),enum:ee(y())}),default:ee(y()).optional()}),Hx=T({type:N("array"),title:y().optional(),description:y().optional(),minItems:ie().optional(),maxItems:ie().optional(),items:T({anyOf:ee(T({const:y(),title:y()}))}),default:ee(y()).optional()}),Jx=me([Bx,Hx]),Gx=me([Ux,Fx,Jx]),Kx=me([Gx,Mx,qx,Dx]),Wx=ao.extend({mode:N("form").optional(),message:y(),requestedSchema:T({type:N("object"),properties:fe(y(),Kx),required:ee(y()).optional()})}),Yx=ao.extend({mode:N("url"),message:y(),elicitationId:y(),url:y().url()}),Qx=me([Wx,Yx]),Xx=Ee.extend({method:N("elicitation/create"),params:Qx}),e0=at.extend({elicitationId:y()}),t0=ct.extend({method:N("notifications/elicitation/complete"),params:e0}),_n=Ie.extend({action:Je(["accept","decline","cancel"]),content:ku(t=>t===null?void 0:t,fe(y(),me([y(),ie(),ze(),ee(y())])).optional())}),r0=T({type:N("ref/resource"),uri:y()});var n0=T({type:N("ref/prompt"),name:y()}),o0=tt.extend({ref:me([n0,r0]),argument:T({name:y(),value:y()}),context:T({arguments:fe(y(),y()).optional()}).optional()}),ni=Ee.extend({method:N("completion/complete"),params:o0});function Im(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Om(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var s0=Ie.extend({completion:De({values:ee(y()).max(100),total:ve(ie().int()),hasMore:ve(ze())})}),i0=T({uri:y().startsWith("file://"),name:y().optional(),_meta:fe(y(),_e()).optional()}),a0=Ee.extend({method:N("roots/list"),params:tt.optional()}),qu=Ie.extend({roots:ee(i0)}),c0=ct.extend({method:N("notifications/roots/list_changed"),params:at.optional()}),tN=me([Vs,Ls,ni,Zu,ei,Xs,Ws,Ys,Qs,ax,ux,yn,ti,Fs,Hs,Js,Ks]),rN=me([Ds,Us,Eu,c0,ho]),nN=me([qs,_o,Mu,_n,qu,Bs,Gs,hn]),oN=me([Vs,Zx,Xx,a0,Fs,Hs,Js,Ks]),sN=me([Ds,Us,Px,dx,sx,zx,wx,ho,t0]),iN=me([qs,G$,s0,bx,mx,tx,rx,ox,ri,kx,Bs,Gs,hn]),O=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===A.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Su(o.elicitations,r)}return new t(e,r,n)}},Su=class extends O{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(A.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function tr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Cm=Symbol("Let zodToJsonSchema decide on which parser to use");var Nm={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"},Am=t=>typeof t=="string"?{...Nm,name:t}:{...Nm,...t};var jm=t=>{let e=Am(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...e.basePath,e.definitionPath,n],jsonSchema:void 0}]))}};function Du(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function te(t,e,r,n,o){t[e]=r,Du(t,e,n,o)}var oi=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")};function be(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?oi(e,t.currentPath):e.join("/")}}function Zm(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==x.ZodAny&&(r.items=q(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&te(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&te(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(te(r,"minItems",t.exactLength.value,t.exactLength.message,e),te(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Mm(t,e){let r={type:"integer",format:"int64"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"min":e.target==="jsonSchema7"?n.inclusive?te(r,"minimum",n.value,n.message,e):te(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),te(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?te(r,"maximum",n.value,n.message,e):te(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),te(r,"maximum",n.value,n.message,e));break;case"multipleOf":te(r,"multipleOf",n.value,n.message,e);break}return r}function qm(){return{type:"boolean"}}function si(t,e){return q(t.type._def,e)}var Dm=(t,e)=>q(t.innerType._def,e);function Lu(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Lu(t,e,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return u0(t,e)}}var u0=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let n of t.checks)switch(n.kind){case"min":te(r,"minimum",n.value,n.message,e);break;case"max":te(r,"maximum",n.value,n.message,e);break}return r};function Lm(t,e){return{...q(t.innerType._def,e),default:t.defaultValue()}}function Vm(t,e){return e.effectStrategy==="input"?q(t.schema._def,e):be(e)}function Um(t){return{type:"string",enum:Array.from(t.values)}}var l0=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Fm(t,e){let r=[q(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),q(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(s=>!!s),n=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,o=[];return r.forEach(s=>{if(l0(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let i=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:a,...c}=s;i=c}else n=void 0;o.push(i)}}),o.length?{allOf:o,...n}:void 0}function Bm(t,e){let r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}var Vu,gt={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:()=>(Vu===void 0&&(Vu=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Vu),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 ii(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":te(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":te(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":yt(r,"email",n.message,e);break;case"format:idn-email":yt(r,"idn-email",n.message,e);break;case"pattern:zod":Le(r,gt.email,n.message,e);break}break;case"url":yt(r,"uri",n.message,e);break;case"uuid":yt(r,"uuid",n.message,e);break;case"regex":Le(r,n.regex,n.message,e);break;case"cuid":Le(r,gt.cuid,n.message,e);break;case"cuid2":Le(r,gt.cuid2,n.message,e);break;case"startsWith":Le(r,RegExp(`^${Uu(n.value,e)}`),n.message,e);break;case"endsWith":Le(r,RegExp(`${Uu(n.value,e)}$`),n.message,e);break;case"datetime":yt(r,"date-time",n.message,e);break;case"date":yt(r,"date",n.message,e);break;case"time":yt(r,"time",n.message,e);break;case"duration":yt(r,"duration",n.message,e);break;case"length":te(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),te(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Le(r,RegExp(Uu(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&yt(r,"ipv4",n.message,e),n.version!=="v4"&&yt(r,"ipv6",n.message,e);break}case"base64url":Le(r,gt.base64url,n.message,e);break;case"jwt":Le(r,gt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Le(r,gt.ipv4Cidr,n.message,e),n.version!=="v4"&&Le(r,gt.ipv6Cidr,n.message,e);break}case"emoji":Le(r,gt.emoji(),n.message,e);break;case"ulid":{Le(r,gt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{yt(r,"binary",n.message,e);break}case"contentEncoding:base64":{te(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Le(r,gt.base64,n.message,e);break}}break}case"nanoid":Le(r,gt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Uu(t,e){return e.patternStrategy==="escape"?p0(t):t}var d0=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function p0(t){let e="";for(let r=0;r<t.length;r++)d0.has(t[r])||(e+="\\"),e+=t[r];return e}function yt(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):te(t,"format",e,r,n)}function Le(t,e,r,n){t.pattern||t.allOf?.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&n.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:Hm(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):te(t,"pattern",Hm(e,n),r,n)}function Hm(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
|
|
37
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let m=n.external.registry.get(l[0])?.id;if(e!==l[0]&&m){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let f=this.seen.get(l),m=f.def??f.schema,p={...m};if(f.ref===null)return;let h=f.ref;if(f.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(m.allOf=m.allOf??[],m.allOf.push(g)):(Object.assign(m,g),Object.assign(m,p))}f.isParent||this.override({zodSchema:l,jsonSchema:m,path:f.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}};function gu(t,e){if(t instanceof oo){let n=new Is(e),o={};for(let a of t._idmap.entries()){let[c,u]=a;n.process(u)}let s={},i={registry:t,uri:e?.uri,defs:o};for(let a of t._idmap.entries()){let[c,u]=a;s[c]=n.emit(u,{...e,external:i})}if(Object.keys(o).length>0){let a=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[a]:o}}return{schemas:s}}let r=new Is(e);return r.process(t),r.emit(t,e)}function ke(t,e){let r=e??{seen:new Set};if(r.seen.has(t))return!1;r.seen.add(t);let o=t._zod.def;switch(o.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 ke(o.element,r);case"object":{for(let s in o.shape)if(ke(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(ke(s,r))return!0;return!1}case"intersection":return ke(o.left,r)||ke(o.right,r);case"tuple":{for(let s of o.items)if(ke(s,r))return!0;return!!(o.rest&&ke(o.rest,r))}case"record":return ke(o.keyType,r)||ke(o.valueType,r);case"map":return ke(o.keyType,r)||ke(o.valueType,r);case"set":return ke(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return ke(o.innerType,r);case"lazy":return ke(o.getter(),r);case"default":return ke(o.innerType,r);case"prefault":return ke(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return ke(o.in,r)||ke(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Gw=v("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ae.init(t,e),t.def=e,t.parse=(r,n)=>Ca(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Or(t,r,n),t.parseAsync=async(r,n)=>ja(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Nr(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>tt(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t)});var Kw=v("ZodMiniObject",(t,e)=>{xs.init(t,e),Gw.init(t,e),Q.defineLazy(t,"shape",()=>e.shape)});function yu(t,e){let r={type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},...Q.normalizeParams(e)};return new Kw(r)}function at(t){return!!t._zod}function jr(t){let e=Object.values(t);if(e.length===0)return yu({});let r=e.every(at),n=e.every(o=>!at(o));if(r)return yu(t);if(n)return ba(t);throw new Error("Mixed Zod versions detected in object shape.")}function Yt(t,e){return at(t)?Or(t,e):t.safeParse(e)}async function Os(t,e){return at(t)?await Nr(t,e):await t.safeParseAsync(e)}function Qt(t){if(!t)return;let e;if(at(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function pn(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return jr(t)}}if(at(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function Ns(t){if(t&&typeof t=="object"){if("message"in t&&typeof t.message=="string")return t.message;if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0){let e=t.issues[0];if(e&&typeof e=="object"&&"message"in e)return String(e.message)}try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function em(t){return t.description}function tm(t){if(at(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Cs(t){if(at(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var ao={};ga(ao,{ZodISODate:()=>nm,ZodISODateTime:()=>rm,ZodISODuration:()=>sm,ZodISOTime:()=>om,date:()=>vu,datetime:()=>_u,duration:()=>wu,time:()=>bu});var rm=v("ZodISODateTime",(t,e)=>{Lf.init(t,e),ye.init(t,e)});function _u(t){return Gf(rm,t)}var nm=v("ZodISODate",(t,e)=>{Vf.init(t,e),ye.init(t,e)});function vu(t){return Kf(nm,t)}var om=v("ZodISOTime",(t,e)=>{Uf.init(t,e),ye.init(t,e)});function bu(t){return Wf(om,t)}var sm=v("ZodISODuration",(t,e)=>{Ff.init(t,e),ye.init(t,e)});function wu(t){return Yf(sm,t)}var im=(t,e)=>{_s.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Oa(t,r)},flatten:{value:r=>Ia(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},oN=v("ZodError",im),co=v("ZodError",im,{Parent:Error});var am=Na(co),cm=Aa(co),um=Za(co),lm=Ma(co);var we=v("ZodType",(t,e)=>(ae.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>tt(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>am(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>um(t,r,n),t.parseAsync=async(r,n)=>cm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>lm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(H$(r,n)),t.superRefine=r=>t.check(J$(r)),t.overwrite=r=>t.check(Cr(r)),t.optional=()=>ve(t),t.nullable=()=>fm(t),t.nullish=()=>ve(fm(t)),t.nonoptional=r=>q$(t,r),t.array=()=>ee(t),t.or=r=>me([t,r]),t.and=r=>js(t,r),t.transform=r=>xu(t,vm(r)),t.default=r=>j$(t,r),t.prefault=r=>M$(t,r),t.catch=r=>L$(t,r),t.pipe=r=>xu(t,r),t.readonly=()=>F$(t),t.describe=r=>{let n=t.clone();return Wt.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Wt.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Wt.get(t);let n=t.clone();return Wt.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),mm=v("_ZodString",(t,e)=>{no.init(t,e),we.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(ou(...n)),t.includes=(...n)=>t.check(au(...n)),t.startsWith=(...n)=>t.check(cu(...n)),t.endsWith=(...n)=>t.check(uu(...n)),t.min=(...n)=>t.check(dn(...n)),t.max=(...n)=>t.check(Ps(...n)),t.length=(...n)=>t.check(Es(...n)),t.nonempty=(...n)=>t.check(dn(1,...n)),t.lowercase=n=>t.check(su(n)),t.uppercase=n=>t.check(iu(n)),t.trim=()=>t.check(du()),t.normalize=(...n)=>t.check(lu(...n)),t.toLowerCase=()=>t.check(pu()),t.toUpperCase=()=>t.check(fu())}),o$=v("ZodString",(t,e)=>{no.init(t,e),mm.init(t,e),t.email=r=>t.check(Ic(s$,r)),t.url=r=>t.check(jc(i$,r)),t.jwt=r=>t.check(Yc(w$,r)),t.emoji=r=>t.check(Zc(a$,r)),t.guid=r=>t.check(Ss(dm,r)),t.uuid=r=>t.check(Oc(As,r)),t.uuidv4=r=>t.check(Nc(As,r)),t.uuidv6=r=>t.check(Cc(As,r)),t.uuidv7=r=>t.check(Ac(As,r)),t.nanoid=r=>t.check(Mc(c$,r)),t.guid=r=>t.check(Ss(dm,r)),t.cuid=r=>t.check(qc(u$,r)),t.cuid2=r=>t.check(Dc(l$,r)),t.ulid=r=>t.check(Lc(d$,r)),t.base64=r=>t.check(Gc(_$,r)),t.base64url=r=>t.check(Kc(v$,r)),t.xid=r=>t.check(Vc(p$,r)),t.ksuid=r=>t.check(Uc(f$,r)),t.ipv4=r=>t.check(Fc(m$,r)),t.ipv6=r=>t.check(Bc(h$,r)),t.cidrv4=r=>t.check(Hc(g$,r)),t.cidrv6=r=>t.check(Jc(y$,r)),t.e164=r=>t.check(Wc(b$,r)),t.datetime=r=>t.check(_u(r)),t.date=r=>t.check(vu(r)),t.time=r=>t.check(bu(r)),t.duration=r=>t.check(wu(r))});function y(t){return Ec(o$,t)}var ye=v("ZodStringFormat",(t,e)=>{pe.init(t,e),mm.init(t,e)}),s$=v("ZodEmail",(t,e)=>{Ha.init(t,e),ye.init(t,e)});var dm=v("ZodGUID",(t,e)=>{Fa.init(t,e),ye.init(t,e)});var As=v("ZodUUID",(t,e)=>{Ba.init(t,e),ye.init(t,e)});var i$=v("ZodURL",(t,e)=>{Ja.init(t,e),ye.init(t,e)});var a$=v("ZodEmoji",(t,e)=>{Ga.init(t,e),ye.init(t,e)});var c$=v("ZodNanoID",(t,e)=>{Ka.init(t,e),ye.init(t,e)});var u$=v("ZodCUID",(t,e)=>{Wa.init(t,e),ye.init(t,e)});var l$=v("ZodCUID2",(t,e)=>{Ya.init(t,e),ye.init(t,e)});var d$=v("ZodULID",(t,e)=>{Qa.init(t,e),ye.init(t,e)});var p$=v("ZodXID",(t,e)=>{Xa.init(t,e),ye.init(t,e)});var f$=v("ZodKSUID",(t,e)=>{ec.init(t,e),ye.init(t,e)});var m$=v("ZodIPv4",(t,e)=>{tc.init(t,e),ye.init(t,e)});var h$=v("ZodIPv6",(t,e)=>{rc.init(t,e),ye.init(t,e)});var g$=v("ZodCIDRv4",(t,e)=>{nc.init(t,e),ye.init(t,e)});var y$=v("ZodCIDRv6",(t,e)=>{oc.init(t,e),ye.init(t,e)});var _$=v("ZodBase64",(t,e)=>{sc.init(t,e),ye.init(t,e)});var v$=v("ZodBase64URL",(t,e)=>{ic.init(t,e),ye.init(t,e)});var b$=v("ZodE164",(t,e)=>{ac.init(t,e),ye.init(t,e)});var w$=v("ZodJWT",(t,e)=>{cc.init(t,e),ye.init(t,e)});var hm=v("ZodNumber",(t,e)=>{$s.init(t,e),we.init(t,e),t.gt=(n,o)=>t.check(Rs(n,o)),t.gte=(n,o)=>t.check(io(n,o)),t.min=(n,o)=>t.check(io(n,o)),t.lt=(n,o)=>t.check(zs(n,o)),t.lte=(n,o)=>t.check(so(n,o)),t.max=(n,o)=>t.check(so(n,o)),t.int=n=>t.check(pm(n)),t.safe=n=>t.check(pm(n)),t.positive=n=>t.check(Rs(0,n)),t.nonnegative=n=>t.check(io(0,n)),t.negative=n=>t.check(zs(0,n)),t.nonpositive=n=>t.check(so(0,n)),t.multipleOf=(n,o)=>t.check(Ts(n,o)),t.step=(n,o)=>t.check(Ts(n,o)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function ie(t){return Qc(hm,t)}var $$=v("ZodNumberFormat",(t,e)=>{uc.init(t,e),hm.init(t,e)});function pm(t){return Xc($$,t)}var x$=v("ZodBoolean",(t,e)=>{lc.init(t,e),we.init(t,e)});function ze(t){return eu(x$,t)}var k$=v("ZodNull",(t,e)=>{dc.init(t,e),we.init(t,e)});function gm(t){return tu(k$,t)}var S$=v("ZodUnknown",(t,e)=>{pc.init(t,e),we.init(t,e)});function _e(){return ru(S$)}var z$=v("ZodNever",(t,e)=>{fc.init(t,e),we.init(t,e)});function R$(t){return nu(z$,t)}var T$=v("ZodArray",(t,e)=>{mc.init(t,e),we.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(dn(r,n)),t.nonempty=r=>t.check(dn(1,r)),t.max=(r,n)=>t.check(Ps(r,n)),t.length=(r,n)=>t.check(Es(r,n)),t.unwrap=()=>t.element});function ee(t,e){return Qf(T$,t,e)}var ym=v("ZodObject",(t,e)=>{xs.init(t,e),we.init(t,e),Q.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Je(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:_e()}),t.loose=()=>t.clone({...t._zod.def,catchall:_e()}),t.strict=()=>t.clone({...t._zod.def,catchall:R$()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>Q.extend(t,r),t.merge=r=>Q.merge(t,r),t.pick=r=>Q.pick(t,r),t.omit=r=>Q.omit(t,r),t.partial=(...r)=>Q.partial(bm,t,r[0]),t.required=(...r)=>Q.required(wm,t,r[0])});function T(t,e){let r={type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},...Q.normalizeParams(e)};return new ym(r)}function De(t,e){return new ym({type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},catchall:_e(),...Q.normalizeParams(e)})}var _m=v("ZodUnion",(t,e)=>{ks.init(t,e),we.init(t,e),t.options=e.options});function me(t,e){return new _m({type:"union",options:t,...Q.normalizeParams(e)})}var P$=v("ZodDiscriminatedUnion",(t,e)=>{_m.init(t,e),hc.init(t,e)});function ku(t,e,r){return new P$({type:"union",options:e,discriminator:t,...Q.normalizeParams(r)})}var E$=v("ZodIntersection",(t,e)=>{gc.init(t,e),we.init(t,e)});function js(t,e){return new E$({type:"intersection",left:t,right:e})}var I$=v("ZodRecord",(t,e)=>{yc.init(t,e),we.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function fe(t,e,r){return new I$({type:"record",keyType:t,valueType:e,...Q.normalizeParams(r)})}var $u=v("ZodEnum",(t,e)=>{_c.init(t,e),we.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new $u({...e,checks:[],...Q.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let i of n)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new $u({...e,checks:[],...Q.normalizeParams(o),entries:s})}});function Je(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new $u({type:"enum",entries:r,...Q.normalizeParams(e)})}var O$=v("ZodLiteral",(t,e)=>{vc.init(t,e),we.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function N(t,e){return new O$({type:"literal",values:Array.isArray(t)?t:[t],...Q.normalizeParams(e)})}var N$=v("ZodTransform",(t,e)=>{bc.init(t,e),we.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(Q.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(Q.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});function vm(t){return new N$({type:"transform",transform:t})}var bm=v("ZodOptional",(t,e)=>{wc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ve(t){return new bm({type:"optional",innerType:t})}var C$=v("ZodNullable",(t,e)=>{$c.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function fm(t){return new C$({type:"nullable",innerType:t})}var A$=v("ZodDefault",(t,e)=>{xc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function j$(t,e){return new A$({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Z$=v("ZodPrefault",(t,e)=>{kc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function M$(t,e){return new Z$({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var wm=v("ZodNonOptional",(t,e)=>{Sc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function q$(t,e){return new wm({type:"nonoptional",innerType:t,...Q.normalizeParams(e)})}var D$=v("ZodCatch",(t,e)=>{zc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function L$(t,e){return new D$({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var V$=v("ZodPipe",(t,e)=>{Rc.init(t,e),we.init(t,e),t.in=e.in,t.out=e.out});function xu(t,e){return new V$({type:"pipe",in:t,out:e})}var U$=v("ZodReadonly",(t,e)=>{Tc.init(t,e),we.init(t,e)});function F$(t){return new U$({type:"readonly",innerType:t})}var $m=v("ZodCustom",(t,e)=>{Pc.init(t,e),we.init(t,e)});function B$(t){let e=new Pe({check:"custom"});return e._zod.check=t,e}function xm(t,e){return mu($m,t??(()=>!0),e)}function H$(t,e={}){return hu($m,t,e)}function J$(t){let e=B$(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(Q.issue(n,r.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),r.issues.push(Q.issue(o))}},t(r.value,r)));return e}function Su(t,e){return xu(vm(t),e)}et(Hf());var Ru="2025-11-25",km="2025-03-26",mn=[Ru,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Xt="io.modelcontextprotocol/related-task",Ms="2.0",Se=xm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Sm=me([y(),ie().int()]),zm=y(),_N=De({ttl:ie().optional(),pollInterval:ie().optional()}),G$=T({ttl:ie().optional()}),K$=T({taskId:y()}),Tu=De({progressToken:Sm.optional(),[Xt]:K$.optional()}),rt=T({_meta:Tu.optional()}),uo=rt.extend({task:G$.optional()}),Rm=t=>uo.safeParse(t).success,Ee=T({method:y(),params:rt.loose().optional()}),ct=T({_meta:Tu.optional()}),ut=T({method:y(),params:ct.loose().optional()}),Ie=De({_meta:Tu.optional()}),qs=me([y(),ie().int()]),Tm=T({jsonrpc:N(Ms),id:qs,...Ee.shape}).strict(),er=t=>Tm.safeParse(t).success,Pm=T({jsonrpc:N(Ms),...ut.shape}).strict(),Em=t=>Pm.safeParse(t).success,Pu=T({jsonrpc:N(Ms),id:qs,result:Ie}).strict(),Dt=t=>Pu.safeParse(t).success;var A;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(A||(A={}));var Eu=T({jsonrpc:N(Ms),id:qs.optional(),error:T({code:ie().int(),message:y(),data:_e().optional()})}).strict();var hn=t=>Eu.safeParse(t).success;var lo=me([Tm,Pm,Pu,Eu]),vN=me([Pu,Eu]),Ds=Ie.strict(),W$=ct.extend({requestId:qs.optional(),reason:y().optional()}),Ls=ut.extend({method:N("notifications/cancelled"),params:W$}),Y$=T({src:y(),mimeType:y().optional(),sizes:ee(y()).optional(),theme:Je(["light","dark"]).optional()}),po=T({icons:ee(Y$).optional()}),fn=T({name:y(),title:y().optional()}),Im=fn.extend({...fn.shape,...po.shape,version:y(),websiteUrl:y().optional(),description:y().optional()}),Q$=js(T({applyDefaults:ze().optional()}),fe(y(),_e())),X$=Su(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,js(T({form:Q$.optional(),url:Se.optional()}),fe(y(),_e()).optional())),ex=De({list:Se.optional(),cancel:Se.optional(),requests:De({sampling:De({createMessage:Se.optional()}).optional(),elicitation:De({create:Se.optional()}).optional()}).optional()}),tx=De({list:Se.optional(),cancel:Se.optional(),requests:De({tools:De({call:Se.optional()}).optional()}).optional()}),rx=T({experimental:fe(y(),Se).optional(),sampling:T({context:Se.optional(),tools:Se.optional()}).optional(),elicitation:X$.optional(),roots:T({listChanged:ze().optional()}).optional(),tasks:ex.optional(),extensions:fe(y(),Se).optional()}),nx=rt.extend({protocolVersion:y(),capabilities:rx,clientInfo:Im}),Vs=Ee.extend({method:N("initialize"),params:nx}),fo=t=>Vs.safeParse(t).success,ox=T({experimental:fe(y(),Se).optional(),logging:Se.optional(),completions:Se.optional(),prompts:T({listChanged:ze().optional()}).optional(),resources:T({subscribe:ze().optional(),listChanged:ze().optional()}).optional(),tools:T({listChanged:ze().optional()}).optional(),tasks:tx.optional(),extensions:fe(y(),Se).optional()}),sx=Ie.extend({protocolVersion:y(),capabilities:ox,serverInfo:Im,instructions:y().optional()}),Iu=ut.extend({method:N("notifications/initialized"),params:ct.optional()});var Us=Ee.extend({method:N("ping"),params:rt.optional()}),ix=T({progress:ie(),total:ve(ie()),message:ve(y())}),ax=T({...ct.shape,...ix.shape,progressToken:Sm}),Fs=ut.extend({method:N("notifications/progress"),params:ax}),cx=rt.extend({cursor:zm.optional()}),mo=Ee.extend({params:cx.optional()}),ho=Ie.extend({nextCursor:zm.optional()}),ux=Je(["working","input_required","completed","failed","cancelled"]),go=T({taskId:y(),status:ux,ttl:me([ie(),gm()]),createdAt:y(),lastUpdatedAt:y(),pollInterval:ve(ie()),statusMessage:ve(y())}),gn=Ie.extend({task:go}),lx=ct.merge(go),yo=ut.extend({method:N("notifications/tasks/status"),params:lx}),Bs=Ee.extend({method:N("tasks/get"),params:rt.extend({taskId:y()})}),Hs=Ie.merge(go),Js=Ee.extend({method:N("tasks/result"),params:rt.extend({taskId:y()})}),bN=Ie.loose(),Gs=mo.extend({method:N("tasks/list")}),Ks=ho.extend({tasks:ee(go)}),Ws=Ee.extend({method:N("tasks/cancel"),params:rt.extend({taskId:y()})}),Om=Ie.merge(go),Nm=T({uri:y(),mimeType:ve(y()),_meta:fe(y(),_e()).optional()}),Cm=Nm.extend({text:y()}),Ou=y().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Am=Nm.extend({blob:Ou}),_o=Je(["user","assistant"]),yn=T({audience:ee(_o).optional(),priority:ie().min(0).max(1).optional(),lastModified:ao.datetime({offset:!0}).optional()}),jm=T({...fn.shape,...po.shape,uri:y(),description:ve(y()),mimeType:ve(y()),size:ve(ie()),annotations:yn.optional(),_meta:ve(De({}))}),dx=T({...fn.shape,...po.shape,uriTemplate:y(),description:ve(y()),mimeType:ve(y()),annotations:yn.optional(),_meta:ve(De({}))}),Ys=mo.extend({method:N("resources/list")}),px=ho.extend({resources:ee(jm)}),Qs=mo.extend({method:N("resources/templates/list")}),fx=ho.extend({resourceTemplates:ee(dx)}),Nu=rt.extend({uri:y()}),mx=Nu,Xs=Ee.extend({method:N("resources/read"),params:mx}),hx=Ie.extend({contents:ee(me([Cm,Am]))}),gx=ut.extend({method:N("notifications/resources/list_changed"),params:ct.optional()}),yx=Nu,_x=Ee.extend({method:N("resources/subscribe"),params:yx}),vx=Nu,bx=Ee.extend({method:N("resources/unsubscribe"),params:vx}),wx=ct.extend({uri:y()}),$x=ut.extend({method:N("notifications/resources/updated"),params:wx}),xx=T({name:y(),description:ve(y()),required:ve(ze())}),kx=T({...fn.shape,...po.shape,description:ve(y()),arguments:ve(ee(xx)),_meta:ve(De({}))}),ei=mo.extend({method:N("prompts/list")}),Sx=ho.extend({prompts:ee(kx)}),zx=rt.extend({name:y(),arguments:fe(y(),y()).optional()}),ti=Ee.extend({method:N("prompts/get"),params:zx}),Cu=T({type:N("text"),text:y(),annotations:yn.optional(),_meta:fe(y(),_e()).optional()}),Au=T({type:N("image"),data:Ou,mimeType:y(),annotations:yn.optional(),_meta:fe(y(),_e()).optional()}),ju=T({type:N("audio"),data:Ou,mimeType:y(),annotations:yn.optional(),_meta:fe(y(),_e()).optional()}),Rx=T({type:N("tool_use"),name:y(),id:y(),input:fe(y(),_e()),_meta:fe(y(),_e()).optional()}),Tx=T({type:N("resource"),resource:me([Cm,Am]),annotations:yn.optional(),_meta:fe(y(),_e()).optional()}),Px=jm.extend({type:N("resource_link")}),Zu=me([Cu,Au,ju,Px,Tx]),Ex=T({role:_o,content:Zu}),Ix=Ie.extend({description:y().optional(),messages:ee(Ex)}),Ox=ut.extend({method:N("notifications/prompts/list_changed"),params:ct.optional()}),Nx=T({title:y().optional(),readOnlyHint:ze().optional(),destructiveHint:ze().optional(),idempotentHint:ze().optional(),openWorldHint:ze().optional()}),Cx=T({taskSupport:Je(["required","optional","forbidden"]).optional()}),Zm=T({...fn.shape,...po.shape,description:y().optional(),inputSchema:T({type:N("object"),properties:fe(y(),Se).optional(),required:ee(y()).optional()}).catchall(_e()),outputSchema:T({type:N("object"),properties:fe(y(),Se).optional(),required:ee(y()).optional()}).catchall(_e()).optional(),annotations:Nx.optional(),execution:Cx.optional(),_meta:fe(y(),_e()).optional()}),ri=mo.extend({method:N("tools/list")}),Ax=ho.extend({tools:ee(Zm)}),ni=Ie.extend({content:ee(Zu).default([]),structuredContent:fe(y(),_e()).optional(),isError:ze().optional()}),wN=ni.or(Ie.extend({toolResult:_e()})),jx=uo.extend({name:y(),arguments:fe(y(),_e()).optional()}),_n=Ee.extend({method:N("tools/call"),params:jx}),Zx=ut.extend({method:N("notifications/tools/list_changed"),params:ct.optional()}),$N=T({autoRefresh:ze().default(!0),debounceMs:ie().int().nonnegative().default(300)}),vo=Je(["debug","info","notice","warning","error","critical","alert","emergency"]),Mx=rt.extend({level:vo}),Mu=Ee.extend({method:N("logging/setLevel"),params:Mx}),qx=ct.extend({level:vo,logger:y().optional(),data:_e()}),Dx=ut.extend({method:N("notifications/message"),params:qx}),Lx=T({name:y().optional()}),Vx=T({hints:ee(Lx).optional(),costPriority:ie().min(0).max(1).optional(),speedPriority:ie().min(0).max(1).optional(),intelligencePriority:ie().min(0).max(1).optional()}),Ux=T({mode:Je(["auto","required","none"]).optional()}),Fx=T({type:N("tool_result"),toolUseId:y().describe("The unique identifier for the corresponding tool call."),content:ee(Zu).default([]),structuredContent:T({}).loose().optional(),isError:ze().optional(),_meta:fe(y(),_e()).optional()}),Bx=ku("type",[Cu,Au,ju]),Zs=ku("type",[Cu,Au,ju,Rx,Fx]),Hx=T({role:_o,content:me([Zs,ee(Zs)]),_meta:fe(y(),_e()).optional()}),Jx=uo.extend({messages:ee(Hx),modelPreferences:Vx.optional(),systemPrompt:y().optional(),includeContext:Je(["none","thisServer","allServers"]).optional(),temperature:ie().optional(),maxTokens:ie().int(),stopSequences:ee(y()).optional(),metadata:Se.optional(),tools:ee(Zm).optional(),toolChoice:Ux.optional()}),Gx=Ee.extend({method:N("sampling/createMessage"),params:Jx}),bo=Ie.extend({model:y(),stopReason:ve(Je(["endTurn","stopSequence","maxTokens"]).or(y())),role:_o,content:Bx}),qu=Ie.extend({model:y(),stopReason:ve(Je(["endTurn","stopSequence","maxTokens","toolUse"]).or(y())),role:_o,content:me([Zs,ee(Zs)])}),Kx=T({type:N("boolean"),title:y().optional(),description:y().optional(),default:ze().optional()}),Wx=T({type:N("string"),title:y().optional(),description:y().optional(),minLength:ie().optional(),maxLength:ie().optional(),format:Je(["email","uri","date","date-time"]).optional(),default:y().optional()}),Yx=T({type:Je(["number","integer"]),title:y().optional(),description:y().optional(),minimum:ie().optional(),maximum:ie().optional(),default:ie().optional()}),Qx=T({type:N("string"),title:y().optional(),description:y().optional(),enum:ee(y()),default:y().optional()}),Xx=T({type:N("string"),title:y().optional(),description:y().optional(),oneOf:ee(T({const:y(),title:y()})),default:y().optional()}),e0=T({type:N("string"),title:y().optional(),description:y().optional(),enum:ee(y()),enumNames:ee(y()).optional(),default:y().optional()}),t0=me([Qx,Xx]),r0=T({type:N("array"),title:y().optional(),description:y().optional(),minItems:ie().optional(),maxItems:ie().optional(),items:T({type:N("string"),enum:ee(y())}),default:ee(y()).optional()}),n0=T({type:N("array"),title:y().optional(),description:y().optional(),minItems:ie().optional(),maxItems:ie().optional(),items:T({anyOf:ee(T({const:y(),title:y()}))}),default:ee(y()).optional()}),o0=me([r0,n0]),s0=me([e0,t0,o0]),i0=me([s0,Kx,Wx,Yx]),a0=uo.extend({mode:N("form").optional(),message:y(),requestedSchema:T({type:N("object"),properties:fe(y(),i0),required:ee(y()).optional()})}),c0=uo.extend({mode:N("url"),message:y(),elicitationId:y(),url:y().url()}),u0=me([a0,c0]),l0=Ee.extend({method:N("elicitation/create"),params:u0}),d0=ct.extend({elicitationId:y()}),p0=ut.extend({method:N("notifications/elicitation/complete"),params:d0}),vn=Ie.extend({action:Je(["accept","decline","cancel"]),content:Su(t=>t===null?void 0:t,fe(y(),me([y(),ie(),ze(),ee(y())])).optional())}),f0=T({type:N("ref/resource"),uri:y()});var m0=T({type:N("ref/prompt"),name:y()}),h0=rt.extend({ref:me([m0,f0]),argument:T({name:y(),value:y()}),context:T({arguments:fe(y(),y()).optional()}).optional()}),oi=Ee.extend({method:N("completion/complete"),params:h0});function Mm(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function qm(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var g0=Ie.extend({completion:De({values:ee(y()).max(100),total:ve(ie().int()),hasMore:ve(ze())})}),y0=T({uri:y().startsWith("file://"),name:y().optional(),_meta:fe(y(),_e()).optional()}),_0=Ee.extend({method:N("roots/list"),params:rt.optional()}),Du=Ie.extend({roots:ee(y0)}),v0=ut.extend({method:N("notifications/roots/list_changed"),params:ct.optional()}),xN=me([Us,Vs,oi,Mu,ti,ei,Ys,Qs,Xs,_x,bx,_n,ri,Bs,Js,Gs,Ws]),kN=me([Ls,Fs,Iu,v0,yo]),SN=me([Ds,bo,qu,vn,Du,Hs,Ks,gn]),zN=me([Us,Gx,l0,_0,Bs,Js,Gs,Ws]),RN=me([Ls,Fs,Dx,$x,gx,Zx,Ox,yo,p0]),TN=me([Ds,sx,g0,Ix,Sx,px,fx,hx,ni,Ax,Hs,Ks,gn]),O=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===A.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new zu(o.elicitations,r)}return new t(e,r,n)}},zu=class extends O{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(A.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function tr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Lm=Symbol("Let zodToJsonSchema decide on which parser to use");var Dm={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"},Vm=t=>typeof t=="string"?{...Dm,name:t}:{...Dm,...t};var Um=t=>{let e=Vm(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...e.basePath,e.definitionPath,n],jsonSchema:void 0}]))}};function Lu(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function te(t,e,r,n,o){t[e]=r,Lu(t,e,n,o)}var si=(t,e)=>{let r=0;for(;r<t.length&&r<e.length&&t[r]===e[r];r++);return[(t.length-r).toString(),...e.slice(r)].join("/")};function be(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?si(e,t.currentPath):e.join("/")}}function Fm(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==x.ZodAny&&(r.items=D(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&te(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&te(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(te(r,"minItems",t.exactLength.value,t.exactLength.message,e),te(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Bm(t,e){let r={type:"integer",format:"int64"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"min":e.target==="jsonSchema7"?n.inclusive?te(r,"minimum",n.value,n.message,e):te(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),te(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?te(r,"maximum",n.value,n.message,e):te(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),te(r,"maximum",n.value,n.message,e));break;case"multipleOf":te(r,"multipleOf",n.value,n.message,e);break}return r}function Hm(){return{type:"boolean"}}function ii(t,e){return D(t.type._def,e)}var Jm=(t,e)=>D(t.innerType._def,e);function Vu(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Vu(t,e,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return b0(t,e)}}var b0=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let n of t.checks)switch(n.kind){case"min":te(r,"minimum",n.value,n.message,e);break;case"max":te(r,"maximum",n.value,n.message,e);break}return r};function Gm(t,e){return{...D(t.innerType._def,e),default:t.defaultValue()}}function Km(t,e){return e.effectStrategy==="input"?D(t.schema._def,e):be(e)}function Wm(t){return{type:"string",enum:Array.from(t.values)}}var w0=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Ym(t,e){let r=[D(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),D(t.right._def,{...e,currentPath:[...e.currentPath,"allOf","1"]})].filter(s=>!!s),n=e.target==="jsonSchema2019-09"?{unevaluatedProperties:!1}:void 0,o=[];return r.forEach(s=>{if(w0(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let i=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:a,...c}=s;i=c}else n=void 0;o.push(i)}}),o.length?{allOf:o,...n}:void 0}function Qm(t,e){let r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}var Uu,yt={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:()=>(Uu===void 0&&(Uu=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Uu),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 ai(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":te(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":te(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":_t(r,"email",n.message,e);break;case"format:idn-email":_t(r,"idn-email",n.message,e);break;case"pattern:zod":Le(r,yt.email,n.message,e);break}break;case"url":_t(r,"uri",n.message,e);break;case"uuid":_t(r,"uuid",n.message,e);break;case"regex":Le(r,n.regex,n.message,e);break;case"cuid":Le(r,yt.cuid,n.message,e);break;case"cuid2":Le(r,yt.cuid2,n.message,e);break;case"startsWith":Le(r,RegExp(`^${Fu(n.value,e)}`),n.message,e);break;case"endsWith":Le(r,RegExp(`${Fu(n.value,e)}$`),n.message,e);break;case"datetime":_t(r,"date-time",n.message,e);break;case"date":_t(r,"date",n.message,e);break;case"time":_t(r,"time",n.message,e);break;case"duration":_t(r,"duration",n.message,e);break;case"length":te(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),te(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Le(r,RegExp(Fu(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&_t(r,"ipv4",n.message,e),n.version!=="v4"&&_t(r,"ipv6",n.message,e);break}case"base64url":Le(r,yt.base64url,n.message,e);break;case"jwt":Le(r,yt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Le(r,yt.ipv4Cidr,n.message,e),n.version!=="v4"&&Le(r,yt.ipv6Cidr,n.message,e);break}case"emoji":Le(r,yt.emoji(),n.message,e);break;case"ulid":{Le(r,yt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{_t(r,"binary",n.message,e);break}case"contentEncoding:base64":{te(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Le(r,yt.base64,n.message,e);break}}break}case"nanoid":Le(r,yt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Fu(t,e){return e.patternStrategy==="escape"?x0(t):t}var $0=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function x0(t){let e="";for(let r=0;r<t.length;r++)$0.has(t[r])||(e+="\\"),e+=t[r];return e}function _t(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):te(t,"format",e,r,n)}function Le(t,e,r,n){t.pattern||t.allOf?.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&n.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:Xm(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):te(t,"pattern",Xm(e,n),r,n)}function Xm(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
|
|
38
38
|
]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
|
|
39
39
|
]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
|
|
40
40
|
`:`[${n[c]}\r
|
|
41
|
-
]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}function ai(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===x.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:q(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??be(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:q(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===x.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=ii(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===x.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===x.ZodBranded&&t.keyType._def.type._def.typeName===x.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=si(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Jm(t,e){if(e.mapStrategy==="record")return ai(t,e);let r=q(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||be(e),n=q(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||be(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Gm(t){let e=t.values,n=Object.keys(t.values).filter(s=>typeof e[e[s]]!="number").map(s=>e[s]),o=Array.from(new Set(n.map(s=>typeof s)));return{type:o.length===1?o[0]==="string"?"string":"number":["string","number"],enum:n}}function Km(t){return t.target==="openAi"?void 0:{not:be({...t,currentPath:[...t.currentPath,"not"]})}}function Wm(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var vo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Qm(t,e){if(e.target==="openApi3")return Ym(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in vo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=vo[s._def.typeName];return i&&!o.includes(i)?[...o,i]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((o,s)=>{let i=typeof s._def.value;switch(i){case"string":case"number":case"boolean":return[...o,i];case"bigint":return[...o,"integer"];case"object":if(s._def.value===null)return[...o,"null"];case"symbol":case"undefined":case"function":default:return o}},[]);if(n.length===r.length){let o=n.filter((s,i,a)=>a.indexOf(s)===i);return{type:o.length>1?o:o[0],enum:r.reduce((s,i)=>s.includes(i._def.value)?s:[...s,i._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter(s=>!n.includes(s))],[])};return Ym(t,e)}var Ym=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>q(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function Xm(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:vo[t.innerType._def.typeName],nullable:!0}:{type:[vo[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=q(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=q(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function eh(t,e){let r={type:"number"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"int":r.type="integer",Du(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?te(r,"minimum",n.value,n.message,e):te(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),te(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?te(r,"maximum",n.value,n.message,e):te(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),te(r,"maximum",n.value,n.message,e));break;case"multipleOf":te(r,"multipleOf",n.value,n.message,e);break}return r}function th(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let a in s){let c=s[a];if(c===void 0||c._def===void 0)continue;let u=m0(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=q(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=f0(t,e);return i!==void 0&&(n.additionalProperties=i),n}function f0(t,e){if(t.catchall._def.typeName!=="ZodNever")return q(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function m0(t){try{return t.isOptional()}catch{return!0}}var rh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return q(t.innerType._def,e);let r=q(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:be(e)},r]}:be(e)};var nh=(t,e)=>{if(e.pipeStrategy==="input")return q(t.in._def,e);if(e.pipeStrategy==="output")return q(t.out._def,e);let r=q(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=q(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function oh(t,e){return q(t.type._def,e)}function sh(t,e){let n={type:"array",uniqueItems:!0,items:q(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&te(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&te(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function ih(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>q(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:q(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>q(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function ah(t){return{not:be(t)}}function ch(t){return be(t)}var uh=(t,e)=>q(t.innerType._def,e);var lh=(t,e,r)=>{switch(e){case x.ZodString:return ii(t,r);case x.ZodNumber:return eh(t,r);case x.ZodObject:return th(t,r);case x.ZodBigInt:return Mm(t,r);case x.ZodBoolean:return qm();case x.ZodDate:return Lu(t,r);case x.ZodUndefined:return ah(r);case x.ZodNull:return Wm(r);case x.ZodArray:return Zm(t,r);case x.ZodUnion:case x.ZodDiscriminatedUnion:return Qm(t,r);case x.ZodIntersection:return Fm(t,r);case x.ZodTuple:return ih(t,r);case x.ZodRecord:return ai(t,r);case x.ZodLiteral:return Bm(t,r);case x.ZodEnum:return Um(t);case x.ZodNativeEnum:return Gm(t);case x.ZodNullable:return Xm(t,r);case x.ZodOptional:return rh(t,r);case x.ZodMap:return Jm(t,r);case x.ZodSet:return sh(t,r);case x.ZodLazy:return()=>t.getter()._def;case x.ZodPromise:return oh(t,r);case x.ZodNaN:case x.ZodNever:return Km(r);case x.ZodEffects:return Vm(t,r);case x.ZodAny:return be(r);case x.ZodUnknown:return ch(r);case x.ZodDefault:return Lm(t,r);case x.ZodBranded:return si(t,r);case x.ZodReadonly:return uh(t,r);case x.ZodCatch:return Dm(t,r);case x.ZodPipeline:return nh(t,r);case x.ZodFunction:case x.ZodVoid:case x.ZodSymbol:return;default:return(n=>{})(e)}};function q(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Cm)return a}if(n&&!r){let a=h0(n,e);if(a!==void 0)return a}let o={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,o);let s=lh(t,t.typeName,e),i=typeof s=="function"?q(s(),e):s;if(i&&g0(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var h0=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:oi(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,n)=>e.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),be(e)):e.$refStrategy==="seen"?be(e):void 0}},g0=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var Fu=(t,e)=>{let r=jm(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:q(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??be(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=q(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??be(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function y0(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Bu(t,e){return it(t)?hu(t,{target:y0(e?.target),io:e?.pipeStrategy??"input"}):Fu(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Hu(t){let r=Qt(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ns(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Ju(t,e){let r=Yt(t,e);if(!r.success)throw r.error;return r.data}var _0=6e4,ci=class{constructor(e){this._options=e,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(Ds,r=>{this._oncancel(r)}),this.setNotificationHandler(Us,r=>{this._onprogress(r)}),this.setRequestHandler(Vs,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Fs,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(A.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Hs,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,f=new O(d.error.code,d.error.message,d.error.data);l(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new O(A.InvalidParams,`Task not found: ${s}`);if(!tr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(tr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Xt]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Js,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new O(A.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Ks,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(A.InvalidParams,`Task not found: ${r.params.taskId}`);if(tr(o.status))throw new O(A.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new O(A.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof O?o:new O(A.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),O.fromError(A.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),qt(s)||mn(s)?this._onresponse(s):er(s)?this._onrequest(s,i):xm(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=O.fromError(A.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Xt]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:A.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=bm(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,f)=>{if(i.signal.aborted)throw new O(A.ConnectionClosed,"Request was cancelled");let m={...f,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let p=m.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:A.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===i&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),qt(e))n(e);else{let i=new O(e.error.code,e.error.message,e.error.data);n(i)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(qt(e)&&e.result&&typeof e.result=="object"){let i=e.result;if(i.task&&typeof i.task=="object"){let a=i.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),qt(e))o(e);else{let i=O.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof O?i:new O(A.InternalError,String(i))}}return}let s;try{let i=await this.request(e,hn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new O(A.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},tr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new O(A.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new O(A.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof O?i:new O(A.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=b=>{l(b)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(b){d(b);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[Xt]:c}});let p=b=>{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(b)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(P=>this._onerror(new Error(`Failed to send cancellation: ${P}`)));let w=b instanceof O?b:new O(A.RequestTimeout,String(b));l(w)};this._responseHandlers.set(f,b=>{if(!n?.signal?.aborted){if(b instanceof Error)return l(b);try{let w=Yt(r,b.result);w.success?u(w.data):l(w.error)}catch(w){l(w)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??_0,g=()=>p(O.fromError(A.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let b=w=>{let P=this._responseHandlers.get(f);P?P(w):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,b),this._enqueueTaskMessage(_,{type:"request",message:m,timestamp:Date.now()}).catch(w=>{this._cleanupTimeout(f),l(w)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(b=>{this._cleanupTimeout(f),l(b)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Bs,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},Gs,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Sm,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[Xt]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Xt]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[Xt]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=Hu(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Ju(e,o);return Promise.resolve(r(i,s))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,r){let n=Hu(e);this._notificationHandlers.set(n,o=>{let s=Ju(e,o);return Promise.resolve(r(s))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let o=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,o)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let o of n)if(o.type==="request"&&er(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new O(A.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new O(A.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new O(A.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new O(A.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=ho.parse({method:"notifications/tasks/status",params:a});await this.notification(c),tr(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new O(A.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(tr(a.status))throw new O(A.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=ho.parse({method:"notifications/tasks/status",params:c});await this.notification(u),tr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function dh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function ph(t,e){let r={...t};for(let n in e){let o=n,s=e[o];if(s===void 0)continue;let i=r[o];dh(i)&&dh(s)?r[o]={...i,...s}:r[o]=s}return r}var n_=_p(Nd(),1),o_=_p(r_(),1);function wP(){let t=new n_.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,o_.default)(t),t}var Ui=class{constructor(e){this._ajv=e??wP()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var Fi=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(f=>f.type==="tool_use").map(f=>f.id)),d=new Set(s.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(l.size!==d.size||![...l].every(f=>d.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},_o,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},_n,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function s_(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!t.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${e})`);break;default:break}}function i_(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var Bi=class extends ci{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(yo.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new Ui,this.setRequestHandler(Ls,n=>this._oninitialize(n)),this.setNotificationHandler(Eu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Zu,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=yo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Fi(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=ph(this._capabilities,e)}setRequestHandler(e,r){let o=Qt(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(it(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=Yt(yn,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new O(A.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=Yt(hn,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new O(A.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=Yt(ri,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new O(A.InvalidParams,`Invalid tools/call result: ${p}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){i_(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&s_(this._capabilities.tasks?.requests,e,"Server")}async _oninitialize(e){let r=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:fn.includes(r)?r:zu,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"},qs)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],s=o.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},Mu,r):this.request({method:"sampling/createMessage",params:e},_o,r)}async elicitInput(e,r){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let o=e;return this.request({method:"elicitation/create",params:o},_n,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let o=e.mode==="form"?e:{...e,mode:"form"},s=await this.request({method:"elicitation/create",params:o},_n,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new O(A.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof O?i:new O(A.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},qu,r)}async sendLoggingMessage(e,r){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,r))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}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 c_=Symbol.for("mcp.completable");function Ld(t){return!!t&&typeof t=="object"&&c_ in t}function u_(t){return t[c_]?.complete}var a_;(function(t){t.Completable="McpCompletable"})(a_||(a_={}));var $P=/^[A-Za-z0-9._-]{1,128}$/;function xP(t){let e=[];if(t.length===0)return{isValid:!1,warnings:["Tool name cannot be empty"]};if(t.length>128)return{isValid:!1,warnings:[`Tool name exceeds maximum length of 128 characters (current: ${t.length})`]};if(t.includes(" ")&&e.push("Tool name contains spaces, which may cause parsing issues"),t.includes(",")&&e.push("Tool name contains commas, which may cause parsing issues"),(t.startsWith("-")||t.endsWith("-"))&&e.push("Tool name starts or ends with a dash, which may cause parsing issues in some contexts"),(t.startsWith(".")||t.endsWith("."))&&e.push("Tool name starts or ends with a dot, which may cause parsing issues in some contexts"),!$P.test(t)){let r=t.split("").filter(n=>!/[A-Za-z0-9._-]/.test(n)).filter((n,o,s)=>s.indexOf(n)===o);return e.push(`Tool name contains invalid characters: ${r.map(n=>`"${n}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:e}}return{isValid:!0,warnings:e}}function kP(t,e){if(e.length>0){console.warn(`Tool name validation warning for "${t}":`);for(let r of e)console.warn(` - ${r}`);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 Vd(t){let e=xP(t);return kP(t,e.warnings),e.isValid}var Hi=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var Ji=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new Bi(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Hi(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(lr(ti)),this.server.assertCanSetRequestHandler(lr(yn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ti,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,r])=>{let n={name:e,title:r.title,description:r.description,inputSchema:(()=>{let o=dn(r.inputSchema);return o?Bu(o,{strictUnions:!0,pipeStrategy:"input"}):SP})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=dn(r.outputSchema);o&&(n.outputSchema=Bu(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(yn,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new O(A.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new O(A.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new O(A.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof O&&n.code===A.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=dn(e.inputSchema)??e.inputSchema,i=await Is(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Os(a);throw new O(A.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new O(A.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=dn(e.outputSchema),s=await Is(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Os(i);throw new O(A.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new O(A.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(lr(ni)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(ni,async e=>{switch(e.params.ref.type){case"ref/prompt":return Im(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Om(e),this.handleResourceCompletion(e,e.params.ref);default:throw new O(A.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new O(A.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return Ko;let s=Qt(n.argsSchema)?.[e.params.argument.name];if(!Ld(s))return Ko;let i=u_(s);if(!i)return Ko;let a=await i(e.params.argument.value,e.params.context);return d_(a)}async handleResourceCompletion(e,r){let n=Object.values(this._registeredResourceTemplates).find(i=>i.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return Ko;throw new O(A.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return Ko;let s=await o(e.params.argument.value,e.params.context);return d_(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(lr(Ws)),this.server.assertCanSetRequestHandler(lr(Ys)),this.server.assertCanSetRequestHandler(lr(Qs)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Ws,async(e,r)=>{let n=Object.entries(this._registeredResources).filter(([s,i])=>i.enabled).map(([s,i])=>({uri:s,name:i.name,...i.metadata})),o=[];for(let s of Object.values(this._registeredResourceTemplates)){if(!s.resourceTemplate.listCallback)continue;let i=await s.resourceTemplate.listCallback(r);for(let a of i.resources)o.push({...s.metadata,...a})}return{resources:[...n,...o]}}),this.server.setRequestHandler(Ys,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Qs,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new O(A.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new O(A.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(lr(Xs)),this.server.assertCanSetRequestHandler(lr(ei)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Xs,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?zP(r.argsSchema):void 0}))})),this.server.setRequestHandler(ei,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new O(A.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=dn(n.argsSchema),s=await Is(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Os(c);throw new O(A.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Ar(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=Ar(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Be?c._def?.innerType:c;return Ld(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Vd(e);let l={title:r,description:n,inputSchema:l_(o),outputSchema:l_(s),annotations:i,execution:a,_meta:c,handler:u,enabled:!0,disable:()=>l.update({enabled:!1}),enable:()=>l.update({enabled:!0}),remove:()=>l.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==e&&(typeof d.name=="string"&&Vd(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=Ar(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Ar(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];if(Ud(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Ud(r[0])&&(i=r.shift());else if(typeof c=="object"&&c!==null){if(Object.values(c).some(u=>typeof u=="object"&&u!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);i=r.shift()}}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var SP={type:"object",properties:{}};function p_(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function f_(t){return"_def"in t||"_zod"in t||p_(t)}function Ud(t){return typeof t!="object"||t===null||f_(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(p_)}function l_(t){if(t){if(Ud(t))return Ar(t);if(!f_(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function zP(t){let e=Qt(t);return e?Object.entries(e).map(([r,n])=>{let o=Jf(n),s=Gf(n);return{name:r,description:o,required:!s}}):[]}function lr(t){let r=Qt(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ns(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function d_(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Ko={completion:{values:[],hasMore:!1}};import h_ from"node:process";var Gi=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
|
|
42
|
-
`);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),
|
|
43
|
-
`}var Ki=class{constructor(e=h_.stdin,r=h_.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new Gi,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new 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(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){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(e){return new Promise(r=>{let n=m_(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{Http2ServerRequest as __,constants as TP}from"http2";import{Http2ServerRequest as Fd}from"http2";import{Readable as g_}from"stream";import qP from"crypto";var Jr=class extends Error{constructor(t,e){super(t,e),this.name="RequestError"}},PP=t=>t instanceof Jr?t:new Jr(t.message,{cause:t}),EP=global.Request,Wo=class extends EP{constructor(t,e){typeof t=="object"&&qn in t&&(t=t[qn]()),typeof e?.body?.getReader<"u"&&(e.duplex??="half"),super(t,e)}},IP=t=>{let e=[],r=t.rawHeaders;for(let n=0;n<r.length;n+=2){let{[n]:o,[n+1]:s}=r;o.charCodeAt(0)!==58&&e.push([o,s])}return new Headers(e)},v_=Symbol("wrapBodyStream"),OP=(t,e,r,n,o)=>{let s={method:t,headers:r,signal:o.signal};if(t==="TRACE"){s.method="GET";let i=new Wo(e,s);return Object.defineProperty(i,"method",{get(){return"TRACE"}}),i}if(!(t==="GET"||t==="HEAD"))if("rawBody"in n&&n.rawBody instanceof Buffer)s.body=new ReadableStream({start(i){i.enqueue(n.rawBody),i.close()}});else if(n[v_]){let i;s.body=new ReadableStream({async pull(a){try{i||=g_.toWeb(n).getReader();let{done:c,value:u}=await i.read();c?a.close():a.enqueue(u)}catch(c){a.error(c)}}})}else s.body=g_.toWeb(n);return new Wo(e,s)},qn=Symbol("getRequestCache"),b_=Symbol("requestCache"),Wi=Symbol("incomingKey"),Yi=Symbol("urlKey"),NP=Symbol("headersKey"),Mn=Symbol("abortControllerKey"),CP=Symbol("getAbortController"),Yo={get method(){return this[Wi].method||"GET"},get url(){return this[Yi]},get headers(){return this[NP]||=IP(this[Wi])},[CP](){return this[qn](),this[Mn]},[qn](){return this[Mn]||=new AbortController,this[b_]||=OP(this.method,this[Yi],this.headers,this[Wi],this[Mn])}};["body","bodyUsed","cache","credentials","destination","integrity","mode","redirect","referrer","referrerPolicy","signal","keepalive"].forEach(t=>{Object.defineProperty(Yo,t,{get(){return this[qn]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(Yo,t,{value:function(){return this[qn]()[t]()}})});Object.defineProperty(Yo,Symbol.for("nodejs.util.inspect.custom"),{value:function(t,e,r){let n={method:this.method,url:this.url,headers:this.headers,nativeRequest:this[b_]};return`Request (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(Yo,Wo.prototype);var AP=(t,e)=>{let r=Object.create(Yo);r[Wi]=t;let n=t.url||"";if(n[0]!=="/"&&(n.startsWith("http://")||n.startsWith("https://"))){if(t instanceof Fd)throw new Jr("Absolute URL for :path is not allowed in HTTP/2");try{let a=new URL(n);r[Yi]=a.href}catch(a){throw new Jr("Invalid absolute URL",{cause:a})}return r}let o=(t instanceof Fd?t.authority:t.headers.host)||e;if(!o)throw new Jr("Missing host header");let s;if(t instanceof Fd){if(s=t.scheme,!(s==="http"||s==="https"))throw new Jr("Unsupported scheme")}else s=t.socket&&t.socket.encrypted?"https":"http";let i=new URL(`${s}://${o}${n}`);if(i.hostname.length!==o.length&&i.hostname!==o.replace(/:\d+$/,""))throw new Jr("Invalid host header");return r[Yi]=i.href,r},Hd=Symbol("responseCache"),Zn=Symbol("getResponseCache"),Gr=Symbol("cache"),Kd=global.Response,Dn=class w_{#t;#e;[Zn](){return delete this[Gr],this[Hd]||=new Kd(this.#t,this.#e)}constructor(e,r){let n;if(this.#t=e,r instanceof w_){let o=r[Hd];if(o){this.#e=o,this[Zn]();return}else this.#e=r.#e,n=new Headers(r.#e.headers)}else this.#e=r;(typeof e=="string"||typeof e?.getReader<"u"||e instanceof Blob||e instanceof Uint8Array)&&(this[Gr]=[r?.status||200,e,n||r?.headers])}get headers(){let e=this[Gr];return e?(e[2]instanceof Headers||(e[2]=new Headers(e[2]||{"content-type":"text/plain; charset=UTF-8"})),e[2]):this[Zn]().headers}get status(){return this[Gr]?.[0]??this[Zn]().status}get ok(){let e=this.status;return e>=200&&e<300}};["body","bodyUsed","redirected","statusText","trailers","type","url"].forEach(t=>{Object.defineProperty(Dn.prototype,t,{get(){return this[Zn]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(Dn.prototype,t,{value:function(){return this[Zn]()[t]()}})});Object.defineProperty(Dn.prototype,Symbol.for("nodejs.util.inspect.custom"),{value:function(t,e,r){let n={status:this.status,headers:this.headers,ok:this.ok,nativeResponse:this[Hd]};return`Response (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(Dn,Kd);Object.setPrototypeOf(Dn.prototype,Kd.prototype);async function jP(t){return Promise.race([t,Promise.resolve().then(()=>Promise.resolve(void 0))])}function $_(t,e,r){let n=a=>{t.cancel(a).catch(()=>{})};return e.on("close",n),e.on("error",n),(r??t.read()).then(i,o),t.closed.finally(()=>{e.off("close",n),e.off("error",n)});function o(a){a&&e.destroy(a)}function s(){t.read().then(i,o)}function i({done:a,value:c}){try{if(a)e.end();else if(!e.write(c))e.once("drain",s);else return t.read().then(i,o)}catch(u){o(u)}}}function ZP(t,e){if(t.locked)throw new TypeError("ReadableStream is locked.");return e.destroyed?void 0:$_(t.getReader(),e)}var Jd=t=>{let e={};t instanceof Headers||(t=new Headers(t??void 0));let r=[];for(let[n,o]of t)n==="set-cookie"?r.push(o):e[n]=o;return r.length>0&&(e["set-cookie"]=r),e["content-type"]??="text/plain; charset=UTF-8",e},MP="x-hono-already-sent";typeof global.crypto>"u"&&(global.crypto=qP);var Wd=Symbol("outgoingEnded"),y_=Symbol("incomingDraining"),DP=500,LP=64*1024*1024,Bd=t=>{let e=t;if(t.destroyed||e[y_])return;if(e[y_]=!0,t instanceof __){try{t.stream?.close?.(TP.NGHTTP2_NO_ERROR)}catch{}return}let r=0,n=()=>{clearTimeout(s),t.off("data",i),t.off("end",n),t.off("error",n)},o=()=>{n();let a=t.socket;a&&!a.destroyed&&a.destroySoon()},s=setTimeout(o,DP);s.unref?.();let i=a=>{r+=a.length,r>LP&&o()};t.on("data",i),t.on("end",n),t.on("error",n),t.resume()},VP=()=>new Response(null,{status:400}),x_=t=>new Response(null,{status:t instanceof Error&&(t.name==="TimeoutError"||t.constructor.name==="TimeoutError")?504:500}),Gd=(t,e)=>{let r=t instanceof Error?t:new Error("unknown error",{cause:t});r.code==="ERR_STREAM_PREMATURE_CLOSE"?console.info("The user aborted a request."):(console.error(t),e.headersSent||e.writeHead(500,{"Content-Type":"text/plain"}),e.end(`Error: ${r.message}`),e.destroy(r))},k_=t=>{"flushHeaders"in t&&t.writable&&t.flushHeaders()},S_=async(t,e)=>{let[r,n,o]=t[Gr],s=!1;if(!o)o={"content-type":"text/plain; charset=UTF-8"};else if(o instanceof Headers)s=o.has("content-length"),o=Jd(o);else if(Array.isArray(o)){let i=new Headers(o);s=i.has("content-length"),o=Jd(i)}else for(let i in o)if(i.length===14&&i.toLowerCase()==="content-length"){s=!0;break}s||(typeof n=="string"?o["Content-Length"]=Buffer.byteLength(n):n instanceof Uint8Array?o["Content-Length"]=n.byteLength:n instanceof Blob&&(o["Content-Length"]=n.size)),e.writeHead(r,o),typeof n=="string"||n instanceof Uint8Array?e.end(n):n instanceof Blob?e.end(new Uint8Array(await n.arrayBuffer())):(k_(e),await ZP(n,e)?.catch(i=>Gd(i,e))),e[Wd]?.()},UP=t=>typeof t.then=="function",FP=async(t,e,r={})=>{if(UP(t))if(r.errorHandler)try{t=await t}catch(o){let s=await r.errorHandler(o);if(!s)return;t=s}else t=await t.catch(x_);if(Gr in t)return S_(t,e);let n=Jd(t.headers);if(t.body){let o=t.body.getReader(),s=[],i=!1,a;if(n["transfer-encoding"]!=="chunked"){let c=2;for(let u=0;u<c;u++){a||=o.read();let l=await jP(a).catch(d=>{console.error(d),i=!0});if(!l){if(u===1){await new Promise(d=>setTimeout(d)),c=3;continue}break}if(a=void 0,l.value&&s.push(l.value),l.done){i=!0;break}}i&&!("content-length"in n)&&(n["content-length"]=s.reduce((u,l)=>u+l.length,0))}e.writeHead(t.status,n),s.forEach(c=>{e.write(c)}),i?e.end():(s.length===0&&k_(e),await $_(o,e,a))}else n[MP]||(e.writeHead(t.status,n),e.end());e[Wd]?.()},Yd=(t,e={})=>{let r=e.autoCleanupIncoming??!0;return e.overrideGlobalObjects!==!1&&global.Request!==Wo&&(Object.defineProperty(global,"Request",{value:Wo}),Object.defineProperty(global,"Response",{value:Dn})),async(n,o)=>{let s,i;try{i=AP(n,e.hostname);let a=!r||n.method==="GET"||n.method==="HEAD";if(a||(n[v_]=!0,n.on("end",()=>{a=!0}),n instanceof __&&(o[Wd]=()=>{a||setTimeout(()=>{a||setTimeout(()=>{Bd(n)})})}),o.on("finish",()=>{a||Bd(n)})),o.on("close",()=>{i[Mn]&&(n.errored?i[Mn].abort(n.errored.toString()):o.writableFinished||i[Mn].abort("Client connection prematurely closed.")),a||setTimeout(()=>{a||setTimeout(()=>{Bd(n)})})}),s=t(i,{incoming:n,outgoing:o}),Gr in s)return S_(s,o)}catch(a){if(s)return Gd(a,o);if(e.errorHandler){if(s=await e.errorHandler(i?a:PP(a)),!s)return}else i?s=x_(a):s=VP()}try{return await FP(s,o,e)}catch(a){return Gd(a,o)}}};var Qi=class{constructor(e={}){this._started=!1,this._hasHandledRequest=!1,this._streamMapping=new Map,this._requestToStreamMapping=new Map,this._requestResponseMap=new Map,this._initialized=!1,this._enableJsonResponse=!1,this._standaloneSseStreamId="_GET_stream",this.sessionIdGenerator=e.sessionIdGenerator,this._enableJsonResponse=e.enableJsonResponse??!1,this._eventStore=e.eventStore,this._onsessioninitialized=e.onsessioninitialized,this._onsessionclosed=e.onsessionclosed,this._allowedHosts=e.allowedHosts,this._allowedOrigins=e.allowedOrigins,this._enableDnsRebindingProtection=e.enableDnsRebindingProtection??!1,this._retryInterval=e.retryInterval}async start(){if(this._started)throw new Error("Transport already started");this._started=!0}createJsonErrorResponse(e,r,n,o){let s={code:r,message:n};return o?.data!==void 0&&(s.data=o.data),new Response(JSON.stringify({jsonrpc:"2.0",error:s,id:null}),{status:e,headers:{"Content-Type":"application/json",...o?.headers}})}validateRequestHeaders(e){if(this._enableDnsRebindingProtection){if(this._allowedHosts&&this._allowedHosts.length>0){let r=e.headers.get("host");if(!r||!this._allowedHosts.includes(r)){let n=`Invalid Host header: ${r}`;return this.onerror?.(new Error(n)),this.createJsonErrorResponse(403,-32e3,n)}}if(this._allowedOrigins&&this._allowedOrigins.length>0){let r=e.headers.get("origin");if(r&&!this._allowedOrigins.includes(r)){let n=`Invalid Origin header: ${r}`;return this.onerror?.(new Error(n)),this.createJsonErrorResponse(403,-32e3,n)}}}}async handleRequest(e,r){if(!this.sessionIdGenerator&&this._hasHandledRequest)throw new Error("Stateless transport cannot be reused across requests. Create a new transport per request.");this._hasHandledRequest=!0;let n=this.validateRequestHeaders(e);if(n)return n;switch(e.method){case"POST":return this.handlePostRequest(e,r);case"GET":return this.handleGetRequest(e);case"DELETE":return this.handleDeleteRequest(e);default:return this.handleUnsupportedRequest()}}async writePrimingEvent(e,r,n,o){if(!this._eventStore||o<"2025-11-25")return;let s=await this._eventStore.storeEvent(n,{}),i=`id: ${s}
|
|
41
|
+
]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}function ci(t,e){if(e.target==="openAi"&&console.warn("Warning: OpenAI may not support records in schemas! Try an array of key-value pairs instead."),e.target==="openApi3"&&t.keyType?._def.typeName===x.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:D(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??be(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:D(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===x.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=ai(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===x.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===x.ZodBranded&&t.keyType._def.type._def.typeName===x.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=ii(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function eh(t,e){if(e.mapStrategy==="record")return ci(t,e);let r=D(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||be(e),n=D(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||be(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function th(t){let e=t.values,n=Object.keys(t.values).filter(s=>typeof e[e[s]]!="number").map(s=>e[s]),o=Array.from(new Set(n.map(s=>typeof s)));return{type:o.length===1?o[0]==="string"?"string":"number":["string","number"],enum:n}}function rh(t){return t.target==="openAi"?void 0:{not:be({...t,currentPath:[...t.currentPath,"not"]})}}function nh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var wo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function sh(t,e){if(e.target==="openApi3")return oh(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in wo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=wo[s._def.typeName];return i&&!o.includes(i)?[...o,i]:o},[]);return{type:n.length>1?n:n[0]}}else if(r.every(n=>n._def.typeName==="ZodLiteral"&&!n.description)){let n=r.reduce((o,s)=>{let i=typeof s._def.value;switch(i){case"string":case"number":case"boolean":return[...o,i];case"bigint":return[...o,"integer"];case"object":if(s._def.value===null)return[...o,"null"];case"symbol":case"undefined":case"function":default:return o}},[]);if(n.length===r.length){let o=n.filter((s,i,a)=>a.indexOf(s)===i);return{type:o.length>1?o:o[0],enum:r.reduce((s,i)=>s.includes(i._def.value)?s:[...s,i._def.value],[])}}}else if(r.every(n=>n._def.typeName==="ZodEnum"))return{type:"string",enum:r.reduce((n,o)=>[...n,...o._def.values.filter(s=>!n.includes(s))],[])};return oh(t,e)}var oh=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>D(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function ih(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:wo[t.innerType._def.typeName],nullable:!0}:{type:[wo[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=D(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=D(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function ah(t,e){let r={type:"number"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"int":r.type="integer",Lu(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?te(r,"minimum",n.value,n.message,e):te(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),te(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?te(r,"maximum",n.value,n.message,e):te(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),te(r,"maximum",n.value,n.message,e));break;case"multipleOf":te(r,"multipleOf",n.value,n.message,e);break}return r}function ch(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let a in s){let c=s[a];if(c===void 0||c._def===void 0)continue;let u=S0(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=D(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=k0(t,e);return i!==void 0&&(n.additionalProperties=i),n}function k0(t,e){if(t.catchall._def.typeName!=="ZodNever")return D(t.catchall._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]});switch(t.unknownKeys){case"passthrough":return e.allowedAdditionalProperties;case"strict":return e.rejectedAdditionalProperties;case"strip":return e.removeAdditionalStrategy==="strict"?e.allowedAdditionalProperties:e.rejectedAdditionalProperties}}function S0(t){try{return t.isOptional()}catch{return!0}}var uh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return D(t.innerType._def,e);let r=D(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:be(e)},r]}:be(e)};var lh=(t,e)=>{if(e.pipeStrategy==="input")return D(t.in._def,e);if(e.pipeStrategy==="output")return D(t.out._def,e);let r=D(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=D(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function dh(t,e){return D(t.type._def,e)}function ph(t,e){let n={type:"array",uniqueItems:!0,items:D(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&te(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&te(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function fh(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>D(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:D(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>D(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function mh(t){return{not:be(t)}}function hh(t){return be(t)}var gh=(t,e)=>D(t.innerType._def,e);var yh=(t,e,r)=>{switch(e){case x.ZodString:return ai(t,r);case x.ZodNumber:return ah(t,r);case x.ZodObject:return ch(t,r);case x.ZodBigInt:return Bm(t,r);case x.ZodBoolean:return Hm();case x.ZodDate:return Vu(t,r);case x.ZodUndefined:return mh(r);case x.ZodNull:return nh(r);case x.ZodArray:return Fm(t,r);case x.ZodUnion:case x.ZodDiscriminatedUnion:return sh(t,r);case x.ZodIntersection:return Ym(t,r);case x.ZodTuple:return fh(t,r);case x.ZodRecord:return ci(t,r);case x.ZodLiteral:return Qm(t,r);case x.ZodEnum:return Wm(t);case x.ZodNativeEnum:return th(t);case x.ZodNullable:return ih(t,r);case x.ZodOptional:return uh(t,r);case x.ZodMap:return eh(t,r);case x.ZodSet:return ph(t,r);case x.ZodLazy:return()=>t.getter()._def;case x.ZodPromise:return dh(t,r);case x.ZodNaN:case x.ZodNever:return rh(r);case x.ZodEffects:return Km(t,r);case x.ZodAny:return be(r);case x.ZodUnknown:return hh(r);case x.ZodDefault:return Gm(t,r);case x.ZodBranded:return ii(t,r);case x.ZodReadonly:return gh(t,r);case x.ZodCatch:return Jm(t,r);case x.ZodPipeline:return lh(t,r);case x.ZodFunction:case x.ZodVoid:case x.ZodSymbol:return;default:return(n=>{})(e)}};function D(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Lm)return a}if(n&&!r){let a=z0(n,e);if(a!==void 0)return a}let o={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,o);let s=yh(t,t.typeName,e),i=typeof s=="function"?D(s(),e):s;if(i&&R0(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var z0=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:si(e.currentPath,t.path)};case"none":case"seen":return t.path.length<e.currentPath.length&&t.path.every((r,n)=>e.currentPath[n]===r)?(console.warn(`Recursive reference detected at ${e.currentPath.join("/")}! Defaulting to any`),be(e)):e.$refStrategy==="seen"?be(e):void 0}},R0=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var Bu=(t,e)=>{let r=Um(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:D(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??be(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=D(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??be(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function T0(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Hu(t,e){return at(t)?gu(t,{target:T0(e?.target),io:e?.pipeStrategy??"input"}):Bu(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Ju(t){let r=Qt(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Cs(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Gu(t,e){let r=Yt(t,e);if(!r.success)throw r.error;return r.data}var P0=6e4,ui=class{constructor(e){this._options=e,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(Ls,r=>{this._oncancel(r)}),this.setNotificationHandler(Fs,r=>{this._onprogress(r)}),this.setRequestHandler(Us,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Bs,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(A.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Js,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,f=new O(d.error.code,d.error.message,d.error.data);l(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new O(A.InvalidParams,`Task not found: ${s}`);if(!tr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(tr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Xt]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Gs,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new O(A.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Ws,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(A.InvalidParams,`Task not found: ${r.params.taskId}`);if(tr(o.status))throw new O(A.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new O(A.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof O?o:new O(A.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),O.fromError(A.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),Dt(s)||hn(s)?this._onresponse(s):er(s)?this._onrequest(s,i):Em(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=O.fromError(A.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Xt]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:A.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=Rm(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,f)=>{if(i.signal.aborted)throw new O(A.ConnectionClosed,"Request was cancelled");let m={...f,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let p=m.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:A.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===i&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),Dt(e))n(e);else{let i=new O(e.error.code,e.error.message,e.error.data);n(i)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(Dt(e)&&e.result&&typeof e.result=="object"){let i=e.result;if(i.task&&typeof i.task=="object"){let a=i.task;typeof a.taskId=="string"&&(s=!0,this._taskProgressTokens.set(a.taskId,r))}}if(s||this._progressHandlers.delete(r),Dt(e))o(e);else{let i=O.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof O?i:new O(A.InternalError,String(i))}}return}let s;try{let i=await this.request(e,gn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new O(A.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},tr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new O(A.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new O(A.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof O?i:new O(A.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=b=>{l(b)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(b){d(b);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[Xt]:c}});let p=b=>{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(b)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(P=>this._onerror(new Error(`Failed to send cancellation: ${P}`)));let w=b instanceof O?b:new O(A.RequestTimeout,String(b));l(w)};this._responseHandlers.set(f,b=>{if(!n?.signal?.aborted){if(b instanceof Error)return l(b);try{let w=Yt(r,b.result);w.success?u(w.data):l(w.error)}catch(w){l(w)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??P0,g=()=>p(O.fromError(A.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let b=w=>{let P=this._responseHandlers.get(f);P?P(w):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,b),this._enqueueTaskMessage(_,{type:"request",message:m,timestamp:Date.now()}).catch(w=>{this._cleanupTimeout(f),l(w)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(b=>{this._cleanupTimeout(f),l(b)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Hs,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},Ks,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Om,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[Xt]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Xt]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[Xt]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=Ju(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Gu(e,o);return Promise.resolve(r(i,s))})}removeRequestHandler(e){this._requestHandlers.delete(e)}assertCanSetRequestHandler(e){if(this._requestHandlers.has(e))throw new Error(`A request handler for ${e} already exists, which would be overridden`)}setNotificationHandler(e,r){let n=Ju(e);this._notificationHandlers.set(n,o=>{let s=Gu(e,o);return Promise.resolve(r(s))})}removeNotificationHandler(e){this._notificationHandlers.delete(e)}_cleanupTaskProgressHandler(e){let r=this._taskProgressTokens.get(e);r!==void 0&&(this._progressHandlers.delete(r),this._taskProgressTokens.delete(e))}async _enqueueTaskMessage(e,r,n){if(!this._taskStore||!this._taskMessageQueue)throw new Error("Cannot enqueue task message: taskStore and taskMessageQueue are not configured");let o=this._options?.maxTaskQueueSize;await this._taskMessageQueue.enqueue(e,r,n,o)}async _clearTaskQueue(e,r){if(this._taskMessageQueue){let n=await this._taskMessageQueue.dequeueAll(e,r);for(let o of n)if(o.type==="request"&&er(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new O(A.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new O(A.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new O(A.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new O(A.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=yo.parse({method:"notifications/tasks/status",params:a});await this.notification(c),tr(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new O(A.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(tr(a.status))throw new O(A.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=yo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),tr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function _h(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function vh(t,e){let r={...t};for(let n in e){let o=n,s=e[o];if(s===void 0)continue;let i=r[o];_h(i)&&_h(s)?r[o]={...i,...s}:r[o]=s}return r}var l_=Sp(Cd(),1),d_=Sp(u_(),1);function OP(){let t=new l_.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,d_.default)(t),t}var Fi=class{constructor(e){this._ajv=e??OP()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var Bi=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(f=>f.type==="tool_use").map(f=>f.id)),d=new Set(s.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(l.size!==d.size||![...l].every(f=>d.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},bo,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},vn,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function p_(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"tools/call":if(!t.tools?.call)throw new Error(`${r} does not support task creation for tools/call (required for ${e})`);break;default:break}}function f_(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var Hi=class extends ui{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(vo.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new Fi,this.setRequestHandler(Vs,n=>this._oninitialize(n)),this.setNotificationHandler(Iu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Mu,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=vo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Bi(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=vh(this._capabilities,e)}setRequestHandler(e,r){let o=Qt(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(at(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=Yt(_n,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new O(A.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=Yt(gn,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new O(A.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=Yt(ni,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new O(A.InvalidParams,`Invalid tools/call result: ${p}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){f_(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&p_(this._capabilities.tasks?.requests,e,"Server")}async _oninitialize(e){let r=e.params.protocolVersion;return this._clientCapabilities=e.params.capabilities,this._clientVersion=e.params.clientInfo,{protocolVersion:mn.includes(r)?r:Ru,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"},Ds)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],s=o.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},qu,r):this.request({method:"sampling/createMessage",params:e},bo,r)}async elicitInput(e,r){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let o=e;return this.request({method:"elicitation/create",params:o},vn,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let o=e.mode==="form"?e:{...e,mode:"form"},s=await this.request({method:"elicitation/create",params:o},vn,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new O(A.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof O?i:new O(A.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},Du,r)}async sendLoggingMessage(e,r){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,r))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}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 h_=Symbol.for("mcp.completable");function Vd(t){return!!t&&typeof t=="object"&&h_ in t}function g_(t){return t[h_]?.complete}var m_;(function(t){t.Completable="McpCompletable"})(m_||(m_={}));var NP=/^[A-Za-z0-9._-]{1,128}$/;function CP(t){let e=[];if(t.length===0)return{isValid:!1,warnings:["Tool name cannot be empty"]};if(t.length>128)return{isValid:!1,warnings:[`Tool name exceeds maximum length of 128 characters (current: ${t.length})`]};if(t.includes(" ")&&e.push("Tool name contains spaces, which may cause parsing issues"),t.includes(",")&&e.push("Tool name contains commas, which may cause parsing issues"),(t.startsWith("-")||t.endsWith("-"))&&e.push("Tool name starts or ends with a dash, which may cause parsing issues in some contexts"),(t.startsWith(".")||t.endsWith("."))&&e.push("Tool name starts or ends with a dot, which may cause parsing issues in some contexts"),!NP.test(t)){let r=t.split("").filter(n=>!/[A-Za-z0-9._-]/.test(n)).filter((n,o,s)=>s.indexOf(n)===o);return e.push(`Tool name contains invalid characters: ${r.map(n=>`"${n}"`).join(", ")}`,"Allowed characters are: A-Z, a-z, 0-9, underscore (_), dash (-), and dot (.)"),{isValid:!1,warnings:e}}return{isValid:!0,warnings:e}}function AP(t,e){if(e.length>0){console.warn(`Tool name validation warning for "${t}":`);for(let r of e)console.warn(` - ${r}`);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 Ud(t){let e=CP(t);return AP(t,e.warnings),e.isValid}var Ji=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var Gi=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new Hi(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Ji(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(lr(ri)),this.server.assertCanSetRequestHandler(lr(_n)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ri,()=>({tools:Object.entries(this._registeredTools).filter(([,e])=>e.enabled).map(([e,r])=>{let n={name:e,title:r.title,description:r.description,inputSchema:(()=>{let o=pn(r.inputSchema);return o?Hu(o,{strictUnions:!0,pipeStrategy:"input"}):jP})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=pn(r.outputSchema);o&&(n.outputSchema=Hu(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(_n,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new O(A.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new O(A.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new O(A.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof O&&n.code===A.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=pn(e.inputSchema)??e.inputSchema,i=await Os(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Ns(a);throw new O(A.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new O(A.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=pn(e.outputSchema),s=await Os(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Ns(i);throw new O(A.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new O(A.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(lr(oi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(oi,async e=>{switch(e.params.ref.type){case"ref/prompt":return Mm(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return qm(e),this.handleResourceCompletion(e,e.params.ref);default:throw new O(A.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new O(A.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return Yo;let s=Qt(n.argsSchema)?.[e.params.argument.name];if(!Vd(s))return Yo;let i=g_(s);if(!i)return Yo;let a=await i(e.params.argument.value,e.params.context);return __(a)}async handleResourceCompletion(e,r){let n=Object.values(this._registeredResourceTemplates).find(i=>i.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return Yo;throw new O(A.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return Yo;let s=await o(e.params.argument.value,e.params.context);return __(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(lr(Ys)),this.server.assertCanSetRequestHandler(lr(Qs)),this.server.assertCanSetRequestHandler(lr(Xs)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Ys,async(e,r)=>{let n=Object.entries(this._registeredResources).filter(([s,i])=>i.enabled).map(([s,i])=>({uri:s,name:i.name,...i.metadata})),o=[];for(let s of Object.values(this._registeredResourceTemplates)){if(!s.resourceTemplate.listCallback)continue;let i=await s.resourceTemplate.listCallback(r);for(let a of i.resources)o.push({...s.metadata,...a})}return{resources:[...n,...o]}}),this.server.setRequestHandler(Qs,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Xs,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new O(A.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new O(A.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(lr(ei)),this.server.assertCanSetRequestHandler(lr(ti)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(ei,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?ZP(r.argsSchema):void 0}))})),this.server.setRequestHandler(ti,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new O(A.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=pn(n.argsSchema),s=await Os(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Ns(c);throw new O(A.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:jr(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=jr(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Be?c._def?.innerType:c;return Vd(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Ud(e);let l={title:r,description:n,inputSchema:y_(o),outputSchema:y_(s),annotations:i,execution:a,_meta:c,handler:u,enabled:!0,disable:()=>l.update({enabled:!1}),enable:()=>l.update({enabled:!0}),remove:()=>l.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==e&&(typeof d.name=="string"&&Ud(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=jr(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=jr(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];if(Fd(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Fd(r[0])&&(i=r.shift());else if(typeof c=="object"&&c!==null){if(Object.values(c).some(u=>typeof u=="object"&&u!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);i=r.shift()}}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var jP={type:"object",properties:{}};function v_(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function b_(t){return"_def"in t||"_zod"in t||v_(t)}function Fd(t){return typeof t!="object"||t===null||b_(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(v_)}function y_(t){if(t){if(Fd(t))return jr(t);if(!b_(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function ZP(t){let e=Qt(t);return e?Object.entries(e).map(([r,n])=>{let o=em(n),s=tm(n);return{name:r,description:o,required:!s}}):[]}function lr(t){let r=Qt(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Cs(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function __(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Yo={completion:{values:[],hasMore:!1}};import $_ from"node:process";var Ki=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
|
|
42
|
+
`);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),MP(r)}clear(){this._buffer=void 0}};function MP(t){return lo.parse(JSON.parse(t))}function w_(t){return JSON.stringify(t)+`
|
|
43
|
+
`}var Wi=class{constructor(e=$_.stdin,r=$_.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new Ki,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new 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(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){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(e){return new Promise(r=>{let n=w_(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{Http2ServerRequest as S_,constants as qP}from"http2";import{Http2ServerRequest as Bd}from"http2";import{Readable as x_}from"stream";import WP from"crypto";var Gr=class extends Error{constructor(t,e){super(t,e),this.name="RequestError"}},DP=t=>t instanceof Gr?t:new Gr(t.message,{cause:t}),LP=global.Request,Qo=class extends LP{constructor(t,e){typeof t=="object"&&Dn in t&&(t=t[Dn]()),typeof e?.body?.getReader<"u"&&(e.duplex??="half"),super(t,e)}},VP=t=>{let e=[],r=t.rawHeaders;for(let n=0;n<r.length;n+=2){let{[n]:o,[n+1]:s}=r;o.charCodeAt(0)!==58&&e.push([o,s])}return new Headers(e)},z_=Symbol("wrapBodyStream"),UP=(t,e,r,n,o)=>{let s={method:t,headers:r,signal:o.signal};if(t==="TRACE"){s.method="GET";let i=new Qo(e,s);return Object.defineProperty(i,"method",{get(){return"TRACE"}}),i}if(!(t==="GET"||t==="HEAD"))if("rawBody"in n&&n.rawBody instanceof Buffer)s.body=new ReadableStream({start(i){i.enqueue(n.rawBody),i.close()}});else if(n[z_]){let i;s.body=new ReadableStream({async pull(a){try{i||=x_.toWeb(n).getReader();let{done:c,value:u}=await i.read();c?a.close():a.enqueue(u)}catch(c){a.error(c)}}})}else s.body=x_.toWeb(n);return new Qo(e,s)},Dn=Symbol("getRequestCache"),R_=Symbol("requestCache"),Yi=Symbol("incomingKey"),Qi=Symbol("urlKey"),FP=Symbol("headersKey"),qn=Symbol("abortControllerKey"),BP=Symbol("getAbortController"),Xo={get method(){return this[Yi].method||"GET"},get url(){return this[Qi]},get headers(){return this[FP]||=VP(this[Yi])},[BP](){return this[Dn](),this[qn]},[Dn](){return this[qn]||=new AbortController,this[R_]||=UP(this.method,this[Qi],this.headers,this[Yi],this[qn])}};["body","bodyUsed","cache","credentials","destination","integrity","mode","redirect","referrer","referrerPolicy","signal","keepalive"].forEach(t=>{Object.defineProperty(Xo,t,{get(){return this[Dn]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(Xo,t,{value:function(){return this[Dn]()[t]()}})});Object.defineProperty(Xo,Symbol.for("nodejs.util.inspect.custom"),{value:function(t,e,r){let n={method:this.method,url:this.url,headers:this.headers,nativeRequest:this[R_]};return`Request (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(Xo,Qo.prototype);var HP=(t,e)=>{let r=Object.create(Xo);r[Yi]=t;let n=t.url||"";if(n[0]!=="/"&&(n.startsWith("http://")||n.startsWith("https://"))){if(t instanceof Bd)throw new Gr("Absolute URL for :path is not allowed in HTTP/2");try{let a=new URL(n);r[Qi]=a.href}catch(a){throw new Gr("Invalid absolute URL",{cause:a})}return r}let o=(t instanceof Bd?t.authority:t.headers.host)||e;if(!o)throw new Gr("Missing host header");let s;if(t instanceof Bd){if(s=t.scheme,!(s==="http"||s==="https"))throw new Gr("Unsupported scheme")}else s=t.socket&&t.socket.encrypted?"https":"http";let i=new URL(`${s}://${o}${n}`);if(i.hostname.length!==o.length&&i.hostname!==o.replace(/:\d+$/,""))throw new Gr("Invalid host header");return r[Qi]=i.href,r},Jd=Symbol("responseCache"),Mn=Symbol("getResponseCache"),Kr=Symbol("cache"),Wd=global.Response,Ln=class T_{#t;#e;[Mn](){return delete this[Kr],this[Jd]||=new Wd(this.#t,this.#e)}constructor(e,r){let n;if(this.#t=e,r instanceof T_){let o=r[Jd];if(o){this.#e=o,this[Mn]();return}else this.#e=r.#e,n=new Headers(r.#e.headers)}else this.#e=r;(typeof e=="string"||typeof e?.getReader<"u"||e instanceof Blob||e instanceof Uint8Array)&&(this[Kr]=[r?.status||200,e,n||r?.headers])}get headers(){let e=this[Kr];return e?(e[2]instanceof Headers||(e[2]=new Headers(e[2]||{"content-type":"text/plain; charset=UTF-8"})),e[2]):this[Mn]().headers}get status(){return this[Kr]?.[0]??this[Mn]().status}get ok(){let e=this.status;return e>=200&&e<300}};["body","bodyUsed","redirected","statusText","trailers","type","url"].forEach(t=>{Object.defineProperty(Ln.prototype,t,{get(){return this[Mn]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(Ln.prototype,t,{value:function(){return this[Mn]()[t]()}})});Object.defineProperty(Ln.prototype,Symbol.for("nodejs.util.inspect.custom"),{value:function(t,e,r){let n={status:this.status,headers:this.headers,ok:this.ok,nativeResponse:this[Jd]};return`Response (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(Ln,Wd);Object.setPrototypeOf(Ln.prototype,Wd.prototype);async function JP(t){return Promise.race([t,Promise.resolve().then(()=>Promise.resolve(void 0))])}function P_(t,e,r){let n=a=>{t.cancel(a).catch(()=>{})};return e.on("close",n),e.on("error",n),(r??t.read()).then(i,o),t.closed.finally(()=>{e.off("close",n),e.off("error",n)});function o(a){a&&e.destroy(a)}function s(){t.read().then(i,o)}function i({done:a,value:c}){try{if(a)e.end();else if(!e.write(c))e.once("drain",s);else return t.read().then(i,o)}catch(u){o(u)}}}function GP(t,e){if(t.locked)throw new TypeError("ReadableStream is locked.");return e.destroyed?void 0:P_(t.getReader(),e)}var Gd=t=>{let e={};t instanceof Headers||(t=new Headers(t??void 0));let r=[];for(let[n,o]of t)n==="set-cookie"?r.push(o):e[n]=o;return r.length>0&&(e["set-cookie"]=r),e["content-type"]??="text/plain; charset=UTF-8",e},KP="x-hono-already-sent";typeof global.crypto>"u"&&(global.crypto=WP);var Yd=Symbol("outgoingEnded"),k_=Symbol("incomingDraining"),YP=500,QP=64*1024*1024,Hd=t=>{let e=t;if(t.destroyed||e[k_])return;if(e[k_]=!0,t instanceof S_){try{t.stream?.close?.(qP.NGHTTP2_NO_ERROR)}catch{}return}let r=0,n=()=>{clearTimeout(s),t.off("data",i),t.off("end",n),t.off("error",n)},o=()=>{n();let a=t.socket;a&&!a.destroyed&&a.destroySoon()},s=setTimeout(o,YP);s.unref?.();let i=a=>{r+=a.length,r>QP&&o()};t.on("data",i),t.on("end",n),t.on("error",n),t.resume()},XP=()=>new Response(null,{status:400}),E_=t=>new Response(null,{status:t instanceof Error&&(t.name==="TimeoutError"||t.constructor.name==="TimeoutError")?504:500}),Kd=(t,e)=>{let r=t instanceof Error?t:new Error("unknown error",{cause:t});r.code==="ERR_STREAM_PREMATURE_CLOSE"?console.info("The user aborted a request."):(console.error(t),e.headersSent||e.writeHead(500,{"Content-Type":"text/plain"}),e.end(`Error: ${r.message}`),e.destroy(r))},I_=t=>{"flushHeaders"in t&&t.writable&&t.flushHeaders()},O_=async(t,e)=>{let[r,n,o]=t[Kr],s=!1;if(!o)o={"content-type":"text/plain; charset=UTF-8"};else if(o instanceof Headers)s=o.has("content-length"),o=Gd(o);else if(Array.isArray(o)){let i=new Headers(o);s=i.has("content-length"),o=Gd(i)}else for(let i in o)if(i.length===14&&i.toLowerCase()==="content-length"){s=!0;break}s||(typeof n=="string"?o["Content-Length"]=Buffer.byteLength(n):n instanceof Uint8Array?o["Content-Length"]=n.byteLength:n instanceof Blob&&(o["Content-Length"]=n.size)),e.writeHead(r,o),typeof n=="string"||n instanceof Uint8Array?e.end(n):n instanceof Blob?e.end(new Uint8Array(await n.arrayBuffer())):(I_(e),await GP(n,e)?.catch(i=>Kd(i,e))),e[Yd]?.()},eE=t=>typeof t.then=="function",tE=async(t,e,r={})=>{if(eE(t))if(r.errorHandler)try{t=await t}catch(o){let s=await r.errorHandler(o);if(!s)return;t=s}else t=await t.catch(E_);if(Kr in t)return O_(t,e);let n=Gd(t.headers);if(t.body){let o=t.body.getReader(),s=[],i=!1,a;if(n["transfer-encoding"]!=="chunked"){let c=2;for(let u=0;u<c;u++){a||=o.read();let l=await JP(a).catch(d=>{console.error(d),i=!0});if(!l){if(u===1){await new Promise(d=>setTimeout(d)),c=3;continue}break}if(a=void 0,l.value&&s.push(l.value),l.done){i=!0;break}}i&&!("content-length"in n)&&(n["content-length"]=s.reduce((u,l)=>u+l.length,0))}e.writeHead(t.status,n),s.forEach(c=>{e.write(c)}),i?e.end():(s.length===0&&I_(e),await P_(o,e,a))}else n[KP]||(e.writeHead(t.status,n),e.end());e[Yd]?.()},Qd=(t,e={})=>{let r=e.autoCleanupIncoming??!0;return e.overrideGlobalObjects!==!1&&global.Request!==Qo&&(Object.defineProperty(global,"Request",{value:Qo}),Object.defineProperty(global,"Response",{value:Ln})),async(n,o)=>{let s,i;try{i=HP(n,e.hostname);let a=!r||n.method==="GET"||n.method==="HEAD";if(a||(n[z_]=!0,n.on("end",()=>{a=!0}),n instanceof S_&&(o[Yd]=()=>{a||setTimeout(()=>{a||setTimeout(()=>{Hd(n)})})}),o.on("finish",()=>{a||Hd(n)})),o.on("close",()=>{i[qn]&&(n.errored?i[qn].abort(n.errored.toString()):o.writableFinished||i[qn].abort("Client connection prematurely closed.")),a||setTimeout(()=>{a||setTimeout(()=>{Hd(n)})})}),s=t(i,{incoming:n,outgoing:o}),Kr in s)return O_(s,o)}catch(a){if(s)return Kd(a,o);if(e.errorHandler){if(s=await e.errorHandler(i?a:DP(a)),!s)return}else i?s=E_(a):s=XP()}try{return await tE(s,o,e)}catch(a){return Kd(a,o)}}};var Xi=class{constructor(e={}){this._started=!1,this._hasHandledRequest=!1,this._streamMapping=new Map,this._requestToStreamMapping=new Map,this._requestResponseMap=new Map,this._initialized=!1,this._enableJsonResponse=!1,this._standaloneSseStreamId="_GET_stream",this.sessionIdGenerator=e.sessionIdGenerator,this._enableJsonResponse=e.enableJsonResponse??!1,this._eventStore=e.eventStore,this._onsessioninitialized=e.onsessioninitialized,this._onsessionclosed=e.onsessionclosed,this._allowedHosts=e.allowedHosts,this._allowedOrigins=e.allowedOrigins,this._enableDnsRebindingProtection=e.enableDnsRebindingProtection??!1,this._retryInterval=e.retryInterval}async start(){if(this._started)throw new Error("Transport already started");this._started=!0}createJsonErrorResponse(e,r,n,o){let s={code:r,message:n};return o?.data!==void 0&&(s.data=o.data),new Response(JSON.stringify({jsonrpc:"2.0",error:s,id:null}),{status:e,headers:{"Content-Type":"application/json",...o?.headers}})}validateRequestHeaders(e){if(this._enableDnsRebindingProtection){if(this._allowedHosts&&this._allowedHosts.length>0){let r=e.headers.get("host");if(!r||!this._allowedHosts.includes(r)){let n=`Invalid Host header: ${r}`;return this.onerror?.(new Error(n)),this.createJsonErrorResponse(403,-32e3,n)}}if(this._allowedOrigins&&this._allowedOrigins.length>0){let r=e.headers.get("origin");if(r&&!this._allowedOrigins.includes(r)){let n=`Invalid Origin header: ${r}`;return this.onerror?.(new Error(n)),this.createJsonErrorResponse(403,-32e3,n)}}}}async handleRequest(e,r){if(!this.sessionIdGenerator&&this._hasHandledRequest)throw new Error("Stateless transport cannot be reused across requests. Create a new transport per request.");this._hasHandledRequest=!0;let n=this.validateRequestHeaders(e);if(n)return n;switch(e.method){case"POST":return this.handlePostRequest(e,r);case"GET":return this.handleGetRequest(e);case"DELETE":return this.handleDeleteRequest(e);default:return this.handleUnsupportedRequest()}}async writePrimingEvent(e,r,n,o){if(!this._eventStore||o<"2025-11-25")return;let s=await this._eventStore.storeEvent(n,{}),i=`id: ${s}
|
|
44
44
|
data:
|
|
45
45
|
|
|
46
46
|
`;this._retryInterval!==void 0&&(i=`id: ${s}
|
|
@@ -51,49 +51,51 @@ data:
|
|
|
51
51
|
`;return o&&(s+=`id: ${o}
|
|
52
52
|
`),s+=`data: ${JSON.stringify(n)}
|
|
53
53
|
|
|
54
|
-
`,e.enqueue(r.encode(s)),!0}catch(s){return this.onerror?.(s),!1}}handleUnsupportedRequest(){return this.onerror?.(new Error("Method not allowed.")),new Response(JSON.stringify({jsonrpc:"2.0",error:{code:-32e3,message:"Method not allowed."},id:null}),{status:405,headers:{Allow:"GET, POST, DELETE","Content-Type":"application/json"}})}async handlePostRequest(e,r){try{let n=e.headers.get("accept");if(!n?.includes("application/json")||!n.includes("text/event-stream"))return this.onerror?.(new Error("Not Acceptable: Client must accept both application/json and text/event-stream")),this.createJsonErrorResponse(406,-32e3,"Not Acceptable: Client must accept both application/json and text/event-stream");let o=e.headers.get("content-type");if(!o||!o.includes("application/json"))return this.onerror?.(new Error("Unsupported Media Type: Content-Type must be application/json")),this.createJsonErrorResponse(415,-32e3,"Unsupported Media Type: Content-Type must be application/json");let s={headers:Object.fromEntries(e.headers.entries()),url:new URL(e.url)},i;if(r?.parsedBody!==void 0)i=r.parsedBody;else try{i=await e.json()}catch{return this.onerror?.(new Error("Parse error: Invalid JSON")),this.createJsonErrorResponse(400,-32700,"Parse error: Invalid JSON")}let a;try{Array.isArray(i)?a=i.map(_=>co.parse(_)):a=[co.parse(i)]}catch{return this.onerror?.(new Error("Parse error: Invalid JSON-RPC message")),this.createJsonErrorResponse(400,-32700,"Parse error: Invalid JSON-RPC message")}let c=a.some(lo);if(c){if(this._initialized&&this.sessionId!==void 0)return this.onerror?.(new Error("Invalid Request: Server already initialized")),this.createJsonErrorResponse(400,-32600,"Invalid Request: Server already initialized");if(a.length>1)return this.onerror?.(new Error("Invalid Request: Only one initialization request is allowed")),this.createJsonErrorResponse(400,-32600,"Invalid Request: Only one initialization request is allowed");this.sessionId=this.sessionIdGenerator?.(),this._initialized=!0,this.sessionId&&this._onsessioninitialized&&await Promise.resolve(this._onsessioninitialized(this.sessionId))}if(!c){let _=this.validateSession(e);if(_)return _;let b=this.validateProtocolVersion(e);if(b)return b}if(!a.some(er)){for(let _ of a)this.onmessage?.(_,{authInfo:r?.authInfo,requestInfo:s});return new Response(null,{status:202})}let l=crypto.randomUUID(),d=a.find(_=>lo(_)),f=d?d.params.protocolVersion:e.headers.get("mcp-protocol-version")??ym;if(this._enableJsonResponse)return new Promise(_=>{this._streamMapping.set(l,{resolveJson:_,cleanup:()=>{this._streamMapping.delete(l)}});for(let b of a)er(b)&&this._requestToStreamMapping.set(b.id,l);for(let b of a)this.onmessage?.(b,{authInfo:r?.authInfo,requestInfo:s})});let m=new TextEncoder,p,h=new ReadableStream({start:_=>{p=_},cancel:()=>{this._streamMapping.delete(l)}}),g={"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"};this.sessionId!==void 0&&(g["mcp-session-id"]=this.sessionId);for(let _ of a)er(_)&&(this._streamMapping.set(l,{controller:p,encoder:m,cleanup:()=>{this._streamMapping.delete(l);try{p.close()}catch{}}}),this._requestToStreamMapping.set(_.id,l));await this.writePrimingEvent(p,m,l,f);for(let _ of a){let b,w;er(_)&&this._eventStore&&f>="2025-11-25"&&(b=()=>{this.closeSSEStream(_.id)},w=()=>{this.closeStandaloneSSEStream()}),this.onmessage?.(_,{authInfo:r?.authInfo,requestInfo:s,closeSSEStream:b,closeStandaloneSSEStream:w})}return new Response(h,{status:200,headers:g})}catch(n){return this.onerror?.(n),this.createJsonErrorResponse(400,-32700,"Parse error",{data:String(n)})}}async handleDeleteRequest(e){let r=this.validateSession(e);if(r)return r;let n=this.validateProtocolVersion(e);return n||(await Promise.resolve(this._onsessionclosed?.(this.sessionId)),await this.close(),new Response(null,{status:200}))}validateSession(e){if(this.sessionIdGenerator===void 0)return;if(!this._initialized)return this.onerror?.(new Error("Bad Request: Server not initialized")),this.createJsonErrorResponse(400,-32e3,"Bad Request: Server not initialized");let r=e.headers.get("mcp-session-id");if(!r)return this.onerror?.(new Error("Bad Request: Mcp-Session-Id header is required")),this.createJsonErrorResponse(400,-32e3,"Bad Request: Mcp-Session-Id header is required");if(r!==this.sessionId)return this.onerror?.(new Error("Session not found")),this.createJsonErrorResponse(404,-32001,"Session not found")}validateProtocolVersion(e){let r=e.headers.get("mcp-protocol-version");if(r!==null&&!fn.includes(r))return this.onerror?.(new Error(`Bad Request: Unsupported protocol version: ${r} (supported versions: ${fn.join(", ")})`)),this.createJsonErrorResponse(400,-32e3,`Bad Request: Unsupported protocol version: ${r} (supported versions: ${fn.join(", ")})`)}async close(){this._streamMapping.forEach(({cleanup:e})=>{e()}),this._streamMapping.clear(),this._requestResponseMap.clear(),this.onclose?.()}closeSSEStream(e){let r=this._requestToStreamMapping.get(e);if(!r)return;let n=this._streamMapping.get(r);n&&n.cleanup()}closeStandaloneSSEStream(){let e=this._streamMapping.get(this._standaloneSseStreamId);e&&e.cleanup()}async send(e,r){let n=r?.relatedRequestId;if((qt(e)||mn(e))&&(n=e.id),n===void 0){if(qt(e)||mn(e))throw new Error("Cannot send a response on a standalone SSE stream unless resuming a previous client request");let i;this._eventStore&&(i=await this._eventStore.storeEvent(this._standaloneSseStreamId,e));let a=this._streamMapping.get(this._standaloneSseStreamId);if(a===void 0)return;a.controller&&a.encoder&&this.writeSSEEvent(a.controller,a.encoder,e,i);return}let o=this._requestToStreamMapping.get(n);if(!o)throw new Error(`No connection established for request ID: ${String(n)}`);let s=this._streamMapping.get(o);if(!this._enableJsonResponse&&s?.controller&&s?.encoder){let i;this._eventStore&&(i=await this._eventStore.storeEvent(o,e)),this.writeSSEEvent(s.controller,s.encoder,e,i)}if(qt(e)||mn(e)){this._requestResponseMap.set(n,e);let i=Array.from(this._requestToStreamMapping.entries()).filter(([c,u])=>u===o).map(([c])=>c);if(i.every(c=>this._requestResponseMap.has(c))){if(!s)throw new Error(`No connection established for request ID: ${String(n)}`);if(this._enableJsonResponse&&s.resolveJson){let c={"Content-Type":"application/json"};this.sessionId!==void 0&&(c["mcp-session-id"]=this.sessionId);let u=i.map(l=>this._requestResponseMap.get(l));u.length===1?s.resolveJson(new Response(JSON.stringify(u[0]),{status:200,headers:c})):s.resolveJson(new Response(JSON.stringify(u),{status:200,headers:c}))}else s.cleanup();for(let c of i)this._requestResponseMap.delete(c),this._requestToStreamMapping.delete(c)}}}};var Xi=class{constructor(e={}){this._requestContext=new WeakMap,this._webStandardTransport=new Qi(e),this._requestListener=Yd(async r=>{let n=this._requestContext.get(r);return this._webStandardTransport.handleRequest(r,{authInfo:n?.authInfo,parsedBody:n?.parsedBody})},{overrideGlobalObjects:!1})}get sessionId(){return this._webStandardTransport.sessionId}set onclose(e){this._webStandardTransport.onclose=e}get onclose(){return this._webStandardTransport.onclose}set onerror(e){this._webStandardTransport.onerror=e}get onerror(){return this._webStandardTransport.onerror}set onmessage(e){this._webStandardTransport.onmessage=e}get onmessage(){return this._webStandardTransport.onmessage}async start(){return this._webStandardTransport.start()}async close(){return this._webStandardTransport.close()}async send(e,r){return this._webStandardTransport.send(e,r)}async handleRequest(e,r,n){let o=e.auth;await Yd(async i=>this._webStandardTransport.handleRequest(i,{authInfo:o,parsedBody:n}),{overrideGlobalObjects:!1})(e,r)}closeSSEStream(e){this._webStandardTransport.closeSSEStream(e)}closeStandaloneSSEStream(){this._webStandardTransport.closeStandaloneSSEStream()}};import{resolve as tE,join as Me,dirname as rE,isAbsolute as nE,basename as oE}from"node:path";import{fileURLToPath as sE}from"node:url";import{randomBytes as J_,randomInt as G_,randomUUID as iE}from"node:crypto";import{createServer as aE}from"node:http";import{brotliCompressSync as cE,brotliDecompressSync as uE}from"node:zlib";import*as L from"node:fs";import{readFile as lE,mkdir as dE,writeFile as pE}from"node:fs/promises";import{adapt_wrapper as fE}from"@adapt-toolkit/sdk/executables";import{PacketWrapperConfigurator as mE}from"@adapt-toolkit/sdk/wrappers";import{object_to_adapt_value as K_}from"@adapt-toolkit/sdk/wrapper";import{AdaptObjectLifetime as dp}from"@adapt-toolkit/sdk/common";import*as Ft from"node:fs";import{homedir as T_}from"node:os";import{resolve as ea,join as P_,dirname as BP,basename as HP}from"node:path";var Qo={brokerUrl:"wss://ours.network/broker_new",port:3050,stateDir:ea(T_(),".ours"),gcIntervalMs:36e5,autoStart:!1};function JP(){return process.env.OURS_CONFIG??P_(T_(),".ours","config.json")}function GP(){let t;try{t=Ft.readFileSync(JP(),"utf8")}catch{return{}}let e;try{e=JSON.parse(t)}catch{return{}}let r={};return typeof e.brokerUrl=="string"&&(r.brokerUrl=e.brokerUrl),typeof e.port=="number"&&Number.isFinite(e.port)&&(r.port=e.port),typeof e.stateDir=="string"&&(r.stateDir=ea(e.stateDir)),typeof e.gcIntervalMs=="number"&&Number.isFinite(e.gcIntervalMs)&&(r.gcIntervalMs=e.gcIntervalMs),typeof e.autoStart=="boolean"&&(r.autoStart=e.autoStart),r}function KP(t){let e=process.env[t];if(e!==void 0)return e==="1"||e.toLowerCase()==="true"}function z_(t){let e=process.env[t];if(e===void 0)return;let r=parseInt(e,10);return Number.isNaN(r)?void 0:r}function E_(){let t=GP();return{brokerUrl:process.env.OURS_BROKER_URL??t.brokerUrl??Qo.brokerUrl,port:z_("OURS_PORT")??t.port??Qo.port,stateDir:ea(process.env.OURS_STATE_DIR??t.stateDir??Qo.stateDir),gcIntervalMs:z_("OURS_GC_INTERVAL_MS")??t.gcIntervalMs??Qo.gcIntervalMs,autoStart:KP("OURS_AUTOSTART")??t.autoStart??Qo.autoStart}}var R_=".ours-identity";function Qd(t){if(!t.name.trim())throw new Error("identity name must not be empty");let e={identity:t.name.trim()};return t.force&&(e.force=!0),e.expose_local=t.exposeLocal??!0,e.local_auto_accept=t.localAutoAccept??!0,e}function WP(t){let e=ea(t);return HP(e)===R_?e:P_(e,R_)}function I_(t,e,r=!1){let n=Qd(e),o=WP(t);if(!r&&Ft.existsSync(o))throw new Error(`${o} already exists \u2014 pass overwrite to replace it`);return Ft.mkdirSync(BP(o),{recursive:!0}),Ft.writeFileSync(o,JSON.stringify(n,null,2)+`
|
|
55
|
-
|
|
56
|
-
`),gE=/^[A-Za-z0-9 _.@-]{1,64}$/,sa="contact-book";function j_(t){return gE.test(t)?t==="."||t===".."||t.includes("/")||t.includes("\\")?"invalid name":t===sa?`"${sa}" is reserved for the local contact book`:t==="root.json"||t==="bindings.json"?`"${t}" is reserved for daemon bookkeeping`:null:"name must be 1-64 chars of letters, digits, space, _ . @ or -"}function yE(){let t=rE(sE(import.meta.url)),e=process.env.OURS_UNIT_DIR,r=e?[tE(e)]:[Me(t,"mufl_code"),Me(t,"..","mufl_code")];for(let n of r){if(!L.existsSync(n))continue;let o=L.readdirSync(n).find(s=>s.endsWith(".muflo"));if(o){let s=o.slice(0,-6),i=new Uint8Array(L.readFileSync(Me(n,o)));return{dir:n,hash:s,contents:i}}}throw new Error(`no compiled .muflo packet found (looked in: ${r.join(", ")})`)}var es,ts,K=new Map,ft=null,sp=null,Re=new Map,ua=new Set,xt=new Map;function Z_(t){if(!Number.isInteger(t)||t<=0)return!1;try{return process.kill(t,0),!0}catch(e){return e.code==="EPERM"}}function W_(t){for(let e of Re.values())if(e.token===t)return e}var M_=()=>Me(rt,"bindings.json");function ss(){try{L.mkdirSync(rt,{recursive:!0});let t=`${M_()}.tmp`;L.writeFileSync(t,JSON.stringify({pid:process.pid,bound:[...Re.keys()],holders:[...Re.values()].map(e=>({identity:e.identity,pid:e.pid}))})),L.renameSync(t,M_())}catch(t){I("failed to persist bindings snapshot:",String(t))}}var Y_=t=>Me(rt,t),pp=t=>Me(t,"identity.key"),Wr=t=>Me(t,"state_data.bin"),_E=t=>Me(t,"notifications.log"),q_=t=>Me(t,"unread.json"),vE=t=>Me(t.dir,"files");function bE(){return L.existsSync(rt)?L.readdirSync(rt,{withFileTypes:!0}).filter(t=>t.isDirectory()&&L.existsSync(pp(Me(rt,t.name)))).map(t=>t.name):[]}var ns=()=>Me(rt,sa),D_=()=>Me(ns(),"registrar.key"),ip=()=>Me(ns(),"book.json");function la(){try{let t=JSON.parse(L.readFileSync(ip(),"utf8"));return t&&typeof t.entries=="object"?t.entries:{}}catch{return{}}}function Q_(t){L.mkdirSync(ns(),{recursive:!0});let e=`${ip()}.tmp`;L.writeFileSync(e,JSON.stringify({v:1,entries:t},null,2),{mode:384}),L.renameSync(e,ip())}function Vn(t){return Qe(e=>Buffer.from(xe(t,"::actor::export_address_document",e).GetBinary()))}function X_(t){return Qe(e=>Buffer.from(xe(t,"::actor::export_signing_secret",e).Serialize()).toString("hex"))}async function ev(t){if(!ft)throw new Error("registrar is not available");let e=Vn(t),r=await X(async o=>{let s=await U(ft,"::actor::sign_book_entry",{name:t.name,ad:ft.pw.packet.NewBinaryFromBuffer(e).Attach(o)},o);return Buffer.from(s.Reduce("sig").GetBinary()).toString("base64url")}),n=la();n[t.name]={v:1,name:t.name,container_id:t.cid,address_document:e.toString("base64url"),published_at:new Date().toISOString(),registrar_sig:r},Q_(n),I(`[${t.name}] published to the local contact book`)}function tv(t){let e=la();t in e&&(delete e[t],Q_(e),I(`[${t}] removed from the local contact book`))}async function rv(t){if(!sp)throw new Error("registrar is not available");await X(async e=>{await U(t,"::actor::pin_registrar",{registrar_ad:t.pw.packet.NewBinaryFromBuffer(sp).Attach(e)},e)})}var ia=()=>Me(rt,"root.json"),le=null;function wE(){try{let t=JSON.parse(L.readFileSync(ia(),"utf8"));return typeof t.name=="string"?t.name:null}catch{return null}}function $E(t){L.mkdirSync(rt,{recursive:!0});let e=`${ia()}.tmp`;L.writeFileSync(e,JSON.stringify({v:1,name:t})),L.renameSync(e,ia())}function nv(){L.rmSync(ia(),{force:!0})}function kt(t){return Qe(e=>{let r=xe(t,"::actor::describe_identity",e);return{bio:r.Reduce("bio").Visualize(),persona:r.Reduce("persona").Visualize(),roleId:r.Reduce("role_id").Visualize(),rootCid:r.Reduce("root_cid").Visualize(),rootName:r.Reduce("root_name").Visualize(),monitoringEnabled:r.Reduce("monitoring_enabled").GetBoolean()}})}async function ta(t,e){await X(async r=>{let n=Vn(e),o=await U(t,"::actor::sign_delegation",{role_ad:t.pw.packet.NewBinaryFromBuffer(n).Attach(r),role_id:e.name},r),s=Buffer.from(o.Reduce("cert").GetBinary()),i=await U(t,"::actor::export_root_profile",{},r),a=Buffer.from(i.Reduce("profile").GetBinary()),c=Vn(t);await U(e,"::actor::set_delegation",{cert:e.pw.packet.NewBinaryFromBuffer(s).Attach(r),root_ad:e.pw.packet.NewBinaryFromBuffer(c).Attach(r),root_profile:e.pw.packet.NewBinaryFromBuffer(a).Attach(r)},r)}),I(`[${e.name}] delegated as a role under root "${t.name}"`)}function xE(t,e){if(!le||!K.has(le))return null;let r=K.get(e)??[...K.values()].find(o=>o.cid===e);if(!r||r.name===t.name)return null;let n=o=>o.name===le||kt(o).roleId!=="";return n(t)&&n(r)?r:null}async function kE(t,e,r){let n=Vn(e);return await X(async o=>{await U(t,"::actor::connect_sibling",{name:e.name,target_ad:t.pw.packet.NewBinaryFromBuffer(n).Attach(o),text:r},o)}),`"${e.name}" was not a contact yet \u2014 connected as an intra-root sibling (delegation-cert auto-accept) and delivered the message.`}async function SE(t,e,r){if(!ft)throw new Error(`"${e}" is not a contact, and the local contact book is unavailable.`);let n=la(),o=n[e]??Object.values(n).find(c=>c.container_id===e);if(!o)throw new Error(`"${e}" is not a contact and has no local contact-book entry. Use generate_invite/add_contact for remote peers, or list_local_contact_book to see local ones.`);if(o.container_id===t.cid)throw new Error("that contact-book entry is this identity itself.");let s=Buffer.from(o.address_document,"base64url"),i=Buffer.from(o.registrar_sig,"base64url"),a=Vn(t);return await X(async c=>{let u=await U(ft,"::actor::mint_introduction",{joiner_ad:ft.pw.packet.NewBinaryFromBuffer(a).Attach(c),target_ad:ft.pw.packet.NewBinaryFromBuffer(s).Attach(c)},c),l=Buffer.from(u.Reduce("intro").GetBinary());await U(t,"::actor::connect_local",{name:o.name,target_ad:t.pw.packet.NewBinaryFromBuffer(s).Attach(c),intro:t.pw.packet.NewBinaryFromBuffer(l).Attach(c),entry_sig:t.pw.packet.NewBinaryFromBuffer(i).Attach(c),text:r},c)}),`"${o.name}" was not a contact yet \u2014 connected via the local contact book and sent the message with the introduction. If "${o.name}" requires approval for local introductions, delivery completes once they approve.`}function is(t){return Qe(e=>{let r=xe(t,"::a2a_messaging::get_monitoring_status",e),n=xe(t,"::actor::get_monitoring_status",e);return{enabled:r.Reduce("monitored").GetBoolean(),proxyCid:r.Reduce("proxy_cid").Visualize(),proxyPending:r.Reduce("proxy_pending").GetBoolean(),copiesQueued:parseInt(n.Reduce("copies_queued").Visualize(),10)||0,controlQueued:parseInt(n.Reduce("control_queued").Visualize(),10)||0}})}async function rs(t,e,r){await X(async n=>{await U(t,"::a2a_control::send_control",{contact:e,payload:JSON.stringify(r)},n)})}function ov(t){try{return Qe(e=>{let r=xe(t,"::a2a_capabilities::get_manifest",e).Reduce("capabilities");return r.IsNil()?[]:[...r.GetKeys()].map(n=>typeof n=="string"?n:n.Visualize())})}catch{return[]}}function zE(t){let e="",r="",n="",o="",s=[];try{Qe(i=>{let a=xe(t,"::a2a_capabilities::get_manifest",i),c=l=>{let d=a.Reduce(l);return d.IsNil()?"":d.Visualize()};e=c("app_id"),r=c("name"),n=c("description"),o=c("version");let u=a.Reduce("capabilities");u.IsNil()||(s=[...u.GetKeys()].map(l=>typeof l=="string"?l:l.Visualize()))})}catch{}return{app_id:e,name:r,description:n,version:o,capabilities:s,monitoring_status:is(t).proxyCid?"bound":"unbound"}}function RE(t){let e=[];for(let r of K.values()){if(r.name===t.name)continue;let n=kt(r);n.rootCid===t.cid&&e.push({name:r.name,cid:r.cid,role_id:n.roleId,bio:n.bio,monitoring:n.monitoringEnabled,capabilities:ov(r)})}return e}function sv(t){try{ts.remove_packet(t.cid)}catch(e){I(`remove_packet(${t.cid}) failed:`,String(e))}K.delete(t.name);try{tv(t.name)}catch(e){I(`failed to unpublish "${t.name}" from the contact book:`,String(e))}Re.has(t.name)&&(Re.delete(t.name),ss()),t.name===le&&(le=null,nv());try{L.rmSync(t.dir,{recursive:!0,force:!0})}catch(e){return`deleting ${t.dir} failed: ${String(e)}`}return null}var fp=!0,iv=fp?2:1,TE=6e5,ap=new Map,cp=(t,e)=>`${t}:${e}`;function av(t,e,r){e&&ap.set(cp(t,e),{response:r,at:Date.now()})}function PE(t,e){if(!e)return;let r=ap.get(cp(t,e));if(r){if(Date.now()-r.at>TE){ap.delete(cp(t,e));return}return r.response}}async function EE(t,e,r){let n=os(r);if(!n||typeof n!="object")return;let o=n,s=o.result;if(s&&typeof s=="object"&&s.pending===!0)return;let i=String(o.req_id??"");i&&(await rs(t,e,o),av(e,i,o))}async function IE(t,e,r,n,o,s){let i;try{let d=JSON.parse(o);if(!d||typeof d!="object")throw new Error("not an object");i=d}catch{I(`[${t.name}] dropping unparseable control payload from ${n}`);return}if(i.v===1){i.t==="get_manifest"?await rs(t,r,{v:1,t:"res",id:i.id??null,ok:!0,manifest:{...zE(t),protocol_version:iv}}):await rs(t,r,{v:1,t:"res",id:i.id??null,error:{code:"protocol_upgraded",message:"This host now speaks the ours control-envelope protocol (v2). Refresh / cache-bust the control plane."}});return}let a=String(i.req_id??""),c=PE(r,a);if(c){await rs(t,r,c);return}let u=i.args&&typeof i.args=="object"?i.args:{},l={cap:String(i.cap??""),verb:String(i.verb??""),args:u,req_id:a};await X(async d=>{let f;try{f=await U(t,"::actor::process_control_envelope",{sender_id:e,sender_name:n,envelope:l,date:s},d)}catch(m){I(`[${t.name}] dispatch of "${l.cap}.${l.verb}" from ${n} failed:`,String(m));return}if(await EE(t,r,f),l.cap==="core.monitoring"&&l.verb==="bind")try{let m=os(f);m&&(m.ok===!0||m.$ok===!0)&&ZE(t,r)}catch{}})}async function OE(t){for(;;)if(await X(async r=>{let o=(await U(t,"::actor::get_control_requests",{},r)).Reduce("requests"),s=o.GetKeys();if(s.length===0)return!0;for(let i=0;i<s.length;i++){let a=o.Reduce(i),c=a.Reduce("sender_cid");await IE(t,c,c.Visualize(),a.Reduce("sender_name").Visualize(),a.Reduce("payload").Visualize(),a.Reduce("date"))}return!1}))return}function NE(){return String(G_(0,1e6)).padStart(6,"0")}var Yr=new Map;function da(t){return[...K.values()].find(e=>e.cid===t)}async function as(t,e){let r=e.Reduce("target").Visualize(),n=os(e.Reduce("response"));if(!n||typeof n!="object")return;await rs(t,r,n);let o=String(n.req_id??"");o&&av(r,o,n)}async function CE(t,e,r,n){try{if(K.has(e)){I(`[${t.name}] host_provision_child("${e}") rejected: name exists (settles via sweep timeout)`);return}let o=await lp(e);await X(async s=>{r&&await U(o,"::a2a_messaging::set_my_bio",{bio:r},s),await ta(t,o);let i=kt(o).roleId,a=xe(o,"::actor::export_address_document_native",s),c=await U(t,"::a2a_cluster::register_provisioned_child",{pending_handle:n,role_id:i,child_ad:a},s);await as(t,c)})}catch(o){I(`[${t.name}] host_provision_child("${e}") failed (settles via sweep timeout):`,String(o))}}async function AE(t,e,r){try{let n=da(e.Visualize());if(n){let o=sv(n);o&&I(`[${t.name}] host_destroy_child teardown warning:`,o)}Yr.delete(e.Visualize()),await X(async o=>{let s=await U(t,"::a2a_cluster::confirm_child_destroyed",{pending_handle:r,cid:e},o);await as(t,s)})}catch(n){I(`[${t.name}] host_destroy_child failed (settles via sweep timeout):`,String(n))}}async function jE(t,e,r){try{let n=da(e.Visualize());if(!n){I(`[${t.name}] host_mint_child_invite: unknown child ${e.Visualize()} (settles via sweep timeout)`);return}await X(async o=>{let s=await U(n,"::a2a_messaging::generate_invite",{},o),i=t.pw.packet.NewBinaryFromBuffer(Buffer.from(s.Reduce("invite").GetBinary())).Attach(o),a=await U(t,"::a2a_cluster::register_child_invite",{pending_handle:r,invite:i},o);await as(t,a)})}catch(n){I(`[${t.name}] host_mint_child_invite failed (settles via sweep timeout):`,String(n))}}async function up(t,e,r,n){await X(async o=>{if(e){n&&await U(t,"::a2a_messaging::host_register_monitoring_cp",{cp_ad:n},o);let s=NE();await U(t,"::a2a_messaging::set_proxy_pending",{code:s,proxy:r},o),await U(t,"::a2a_messaging::verify_proxy_code",{code:s,sender:r},o),Yr.set(t.cid,r??"")}else await U(t,"::a2a_messaging::host_clear_child_monitoring",{},o),Yr.delete(t.cid)})}async function L_(t,e,r,n,o,s){try{let i=da(e.Visualize());if(!i){I(`[${t.name}] host_set_child_monitoring: unknown child ${e.Visualize()} (settles via sweep timeout)`);return}r?await up(i,!0,o?.Visualize(),s):await up(i,!1),await X(async a=>{let c=await U(t,"::a2a_cluster::confirm_child_monitoring",{pending_handle:n,cid:e,enabled:r},a);await as(t,c)})}catch(i){I(`[${t.name}] host_set_child_monitoring failed (settles via sweep timeout):`,String(i))}}async function ZE(t,e){for(let[r,n]of[...Yr.entries()]){if(n===e)continue;let o=da(r);if(!o){Yr.delete(r);continue}await up(o,!1).catch(s=>I(`[${t.name}] CP-rebind clear of child ${r} failed:`,String(s)))}}function ME(t,e){let r=[];for(let n of K.values()){if(n.name===t.name)continue;let o=kt(n);if(o.rootCid!==t.cid)continue;let s=xe(n,"::actor::export_address_document_native",e);r.push({cid:s.Reduce("identity").Reduce("container_id"),role_id:o.roleId,name:n.name,bio:o.bio,persona:o.persona,caps:ov(n),child_ad:s})}return r}var ep=new Set;async function cv(t){if(!ep.has(t.name)){ep.add(t.name);try{await X(async e=>{await U(t,"::a2a_cluster::reconcile",{pending_handle:"",children:ME(t,e)},e);let n=(await U(t,"::a2a_cluster::sweep_and_settle",{},e)).Reduce("settled"),o=n.GetKeys();for(let s=0;s<o.length;s++)await as(t,n.Reduce(s))})}catch(e){I(`[${t.name}] cluster sweep failed:`,String(e))}finally{ep.delete(t.name)}}}var qE=6e4;function DE(){setInterval(()=>{if(fp)for(let t of K.values())kt(t).roleId===""&&cv(t)},qE).unref()}function LE(){for(let t of K.values())if(kt(t).roleId!=="")try{let e=is(t).proxyCid;e&&Yr.set(t.cid,e)}catch(e){Yr.set(t.cid,""),I(`[${t.name}] monitoredChildren rebuild read failed (added clear-on-repoint):`,String(e))}}var tp=new Set;async function mp(t){if(!tp.has(t.name)){tp.add(t.name);try{await OE(t)}catch(e){I(`[${t.name}] control dispatch failed:`,String(e))}finally{tp.delete(t.name)}if(K.has(t.name)&&is(t).controlQueued>0)return mp(t)}}async function VE(){L.mkdirSync(ns(),{recursive:!0});let t;try{t=L.readFileSync(D_(),"utf8").trim()}catch{}let e=J_(24).toString("hex");ft=await hp(sa,e,ns(),!1,t),t||L.writeFileSync(D_(),X_(ft),{mode:384}),sp=Vn(ft),I(`contact-book registrar ready (${ft.cid})`)}function UE(t){try{return L.existsSync(Wr(t))&&L.statSync(Wr(t)).size>0}catch{return!1}}function aa(t){try{let e=Qe(n=>Buffer.from(xe(t,"::actor::export_state",n).Serialize()));L.mkdirSync(t.dir,{recursive:!0});let r=`${Wr(t.dir)}.tmp`;L.writeFileSync(r,e),L.renameSync(r,Wr(t.dir))}catch(e){I(`[${t.name}] failed to save state:`,String(e))}}function FE(t){let e=[],r=t.Reduce("degraded");if(r.IsNil())return e;for(let n=0;;n++){let o=r.Reduce(n);if(o.IsNil())break;e.push({cid:o.Reduce("container_id").Visualize(),name:o.Reduce("name").Visualize(),attempts:Number(o.Reduce("attempts").Visualize()),queued:Number(o.Reduce("queued").Visualize())})}return e}function BE(t){let e=[],r=t.Reduce("queues");if(r.IsNil())return e;for(let n=0;;n++){let o=r.Reduce(n);if(o.IsNil())break;e.push({cid:o.Reduce("container_id").Visualize(),queued:Number(o.Reduce("queued").Visualize()),degraded:o.Reduce("degraded").GetBoolean()})}return e}async function uv(t,e){try{let r=await X(async n=>{let o=await U(t,"::a2a_messaging::flush_deferred",{contact:e},n);return Number(o.Reduce("flushed").Visualize())});r>0&&I(`[${t.name}] flushed ${r} deferred message(s) to ${e.slice(0,12)}\u2026`)}catch(r){I(`[${t.name}] deferred flush to ${e.slice(0,12)}\u2026 failed:`,String(r))}}async function lv(t){try{let e=await X(async n=>{let o=await U(t,"::a2a_messaging::restore_degraded_contacts",{},n);return Number(o.Reduce("requested").Visualize())});e>0&&I(`[${t.name}] contact restore requested for ${e} degraded contact(s)`);let r=Qe(n=>BE(xe(t,"::a2a_messaging::list_deferred_queues",n)));for(let n of r)n.degraded||await uv(t,n.cid)}catch(e){I(`[${t.name}] contact-restore sweep failed:`,String(e))}}function pr(t,e){try{L.mkdirSync(t.dir,{recursive:!0}),L.appendFileSync(_E(t.dir),JSON.stringify(e)+`
|
|
57
|
-
`)}catch(r){I(`[${t.name}] failed to append notifications.log:`,String(r))}}function Kr(t){try{let{unread:e,unreadFiles:r}=Qe(s=>{let a=na(xe(t,"::actor::list_incoming_messages",s)).filter(l=>l.status==="unread"),c=xe(t,"::actor::list_incoming_files",s),u=[];if(!c.IsNil())for(let l=0;;l++){let d=c.Reduce(l);if(d.IsNil())break;d.Reduce("status").Visualize()==="unread"&&u.push({file_id:d.Reduce("file_id").Visualize(),from:d.Reduce("sender_name").Visualize(),filename:d.Reduce("filename").Visualize(),mime:d.Reduce("mime").Visualize(),wire_id:d.Reduce("wire_id").Visualize()})}return{unread:a,unreadFiles:u}}),n={count:e.length,recent:e.slice(-10).map(s=>({from:s.sender_name,msg_id:s.msg_id,date:s.date})),files:r.length,unread_files:r.slice(-10)};L.mkdirSync(t.dir,{recursive:!0});let o=`${q_(t.dir)}.tmp`;L.writeFileSync(o,JSON.stringify(n)),L.renameSync(o,q_(t.dir))}catch(e){I(`[${t.name}] failed to refresh unread snapshot:`,String(e))}}var ra=new Map,dv=t=>`ours://inbox/${encodeURIComponent(t)}`;function dr(t,e){I(`[${t}] notify:`,e);let r=Re.get(t)?.sid;if(!r)return;let n=ra.get(r);if(n){try{n.sendLoggingMessage({level:"info",logger:"ours",data:e})}catch(o){I("sendLoggingMessage failed:",String(o))}try{n.server.sendResourceUpdated({uri:dv(t)})}catch{}}}function Qe(t){let e=new dp;try{return t(e)}finally{e.Finalize()}}async function X(t){let e=new dp;try{return await t(e)}finally{e.Finalize()}}function xe(t,e,r){let n=K_({name:e,targ:void 0}),o=t.pw.packet.ExecuteTransaction(n);return n.Destroy(),r?o.Attach(r):o}async function HE(t,e){let r=t.lock,n;t.lock=new Promise(o=>n=o),await r;try{return await e()}finally{n()}}function JE(t,e,r=25e3){return new Promise((n,o)=>{let s=setTimeout(()=>{let i=t.pending.findIndex(a=>a.timer===s);i>=0&&t.pending.splice(i,1),o(new Error("timed out waiting for the transaction result"))},r);t.pending.push({resolve:n,reject:o,timer:s}),t.pw.add_client_message(e)})}function U(t,e,r,n,o){let s=K_({name:e,targ:r});return HE(t,()=>JE(t,s,o)).then(i=>(s.Destroy(),n?i.Attach(n):i),i=>{try{s.Destroy()}catch{}throw i})}function GE(t){t.pw.on_return_data=e=>{let r=new dp;e.Attach(r);try{let n=e.Reduce("kind").Visualize();if(n==="save_state"){aa(t);return}if(n==="notify_agent"){let s=e.Reduce("payload"),i=s.Reduce("event").Visualize();if(i==="message_received"){let a=s.Reduce("sender_name").Visualize(),c=s.Reduce("msg_id").Visualize(),u=s.Reduce("date").Visualize();pr(t,{event:"message_received",from:a,msg_id:c,date:u}),Kr(t),process.nextTick(()=>dr(t.name,`[${t.name}] new message from ${a} (#${c})`))}else if(i==="file_received"){let a=s.Reduce("sender_name").Visualize(),c=s.Reduce("file_id").Visualize(),u=s.Reduce("filename").Visualize(),l=s.Reduce("mime").Visualize(),d=s.Reduce("bytes").Visualize(),f=s.Reduce("date").Visualize();pr(t,{event:"file_received",from:a,file_id:c,filename:u,mime:l,bytes:d,date:f}),Kr(t),process.nextTick(()=>dr(t.name,`[${t.name}] new file ${u} (${d} B) from ${a} (#${c})`))}else if(i==="contact_accepted"){let a=s.Reduce("name").Visualize(),c=s.Reduce("container_id").Visualize();process.nextTick(()=>dr(t.name,`[${t.name}] contact "${a}" (${c}) accepted your invite.`))}else if(i==="local_contact_added"){let a=s.Reduce("name").Visualize(),c=s.Reduce("container_id").Visualize();process.nextTick(()=>dr(t.name,`[${t.name}] local contact "${a}" (${c}) connected via the contact book.`))}else if(i==="sibling_contact_added"){let a=s.Reduce("name").Visualize(),c=s.Reduce("container_id").Visualize();pr(t,{event:"sibling_contact_added",from:a}),process.nextTick(()=>dr(t.name,`[${t.name}] sibling "${a}" (${c}) connected (intra-root auto-accept).`))}else if(i==="local_contact_request"){let a=s.Reduce("name").Visualize(),c=s.Reduce("container_id").Visualize();pr(t,{event:"local_contact_request",from:a}),process.nextTick(()=>dr(t.name,`[${t.name}] pending local introduction from "${a}" (${c}) \u2014 approve or reject with respond_to_introduction.`))}else if(i==="pending_message"){let a=s.Reduce("sender_name").Visualize(),c=s.Reduce("queued").Visualize();pr(t,{event:"pending_message",from:a,queued:c}),process.nextTick(()=>dr(t.name,`[${t.name}] "${a}" queued a message awaiting introduction approval (${c} queued).`))}else if(i==="contact_restored"){let a=s.Reduce("name").Visualize(),c=s.Reduce("container_id").Visualize();pr(t,{event:"contact_restored",from:a}),I(`[${t.name}] contact "${a}" restored (re-keyed)`),process.nextTick(()=>void uv(t,String(c)))}else if(i==="control_request"){let a=s.Reduce("sender_name").Visualize();I(`[${t.name}] control request queued by ${a}`),process.nextTick(()=>void mp(t))}else if(i==="host_provision_child"){let a=s.Reduce("name").Visualize(),c=s.Reduce("bio").Visualize(),u=s.Reduce("pending_handle").Visualize();process.nextTick(()=>void CE(t,a,c,u))}else if(i==="host_destroy_child"){let a=s.Reduce("cid").Detach(),c=s.Reduce("pending_handle").Visualize();process.nextTick(()=>void AE(t,a,c).finally(()=>a.Destroy()))}else if(i==="host_mint_child_invite"){let a=s.Reduce("cid").Detach(),c=s.Reduce("pending_handle").Visualize();process.nextTick(()=>void jE(t,a,c).finally(()=>a.Destroy()))}else if(i==="host_set_child_monitoring"){let a=s.Reduce("cid").Detach(),c=s.Reduce("enabled").GetBoolean(),u=s.Reduce("pending_handle").Visualize();if(c){let l=s.Reduce("cp_cid").Detach(),d=s.Reduce("cp_ad").Detach();process.nextTick(()=>void L_(t,a,!0,u,l,d).finally(()=>{a.Destroy(),l.Destroy(),d.Destroy()}))}else process.nextTick(()=>void L_(t,a,!1,u).finally(()=>a.Destroy()))}return}let o=t.pending.shift();if(!o)return;clearTimeout(o.timer),o.resolve(e.Reduce("payload").Detach())}finally{r.Finalize()}},t.pw.on_transaction_failure=e=>{let r=t.pending.shift();r?(clearTimeout(r.timer),r.reject(new Error(e))):(I(`[${t.name}] inbound transaction rejected:`,e),pr(t,{event:"inbound_error",message:e}),process.nextTick(()=>dr(t.name,`[${t.name}] inbound transaction rejected: ${e}`)))}}function hp(t,e,r,n=!0,o){let s=new mE,i=["--unit_hash",es.hash,"--seed_phrase",e,"--unit_dir_path",es.dir];return o&&i.push("--init_trn_argument",JSON.stringify(o)),s.process_arguments(i),new Promise((a,c)=>{let u=setTimeout(()=>c(new Error(`packet creation for "${t}" timed out`)),3e4);ts.packet_manager.create_packet(s,l=>{clearTimeout(u);let d={name:t,cid:Qe(f=>l.packet.GetContainerID().Attach(f).Visualize()),pw:l,dir:r,pending:[],lock:Promise.resolve()};GE(d),n&&K.set(t,d),I(`[${t}] packet created \u2014 container id ${d.cid}`),a(d)},es.contents)})}async function lp(t,e={exposeLocal:!0,localAutoAccept:!0}){let r=Y_(t);L.mkdirSync(r,{recursive:!0});let n=J_(24).toString("hex"),o=await hp(t,n,r);return L.writeFileSync(pp(r),X_(o),{mode:384}),await X(async s=>{await U(o,"::a2a_messaging::set_my_name",{name:t},s)}),await rv(o),e.localAutoAccept||await X(async s=>{await U(o,"::actor::set_local_policy",{auto_accept:!1},s)}),e.exposeLocal&&await ev(o),aa(o),o}async function KE(t){let e=Y_(t),r=L.readFileSync(pp(e),"utf8").trim(),n=await hp(t,"",e,!0,r);if(UE(e))try{let o=L.readFileSync(Wr(e));await X(async s=>{let i=n.pw.packet.ParseValue(new Uint8Array(o)).Attach(s);await U(n,"::actor::import_state",i,s)})}catch(o){I(`[${t}] FAILED TO IMPORT SAVED STATE \u2014 continuing with the reseeded identity; surviving contacts (if the blob was partially migrated) self-heal via contact restore:`,String(o)),pr(n,{event:"state_import_failed",error:String(o).slice(0,300)});try{L.renameSync(Wr(e),`${Wr(e)}.failed-${Date.now()}`),I(`[${t}] unreadable state blob preserved as state_data.bin.failed-*`)}catch{}}return await lv(n),Kr(n),n}async function V_(){es=yE();let t=["--broker_address",oa,"--test_mode","--logger_config","--level","INFO","--stdout","stderr","--logger_config_end"];I(`booting wrapper (unit ${es.hash.slice(0,12)}\u2026, broker ${oa})`),ts=await fE.start(t),ts.on_packet_created_cb=n=>I(`wrapper: packet ready ${n.slice(0,12)}\u2026`),ts.start();try{await VE()}catch(n){I("failed to start the contact-book registrar (local contact book disabled):",String(n))}let e=bE();if(e.length===0)I("no persisted identities \u2014 start with create_identity");else{I(`restoring ${e.length} identit${e.length===1?"y":"ies"}: ${e.join(", ")}`);for(let n of e)try{let o=await KE(n);ft&&await rv(o)}catch(o){I(`failed to restore "${n}":`,String(o))}}LE(),DE(),le=wE(),le&&!K.has(le)&&(I(`root marker names a missing identity "${le}" \u2014 clearing it`),le=null,nv()),le&&I(`root identity: ${le}`);let r=le?K.get(le):void 0;if(r)try{is(r).controlQueued>0&&mp(r)}catch(n){I("boot-time monitoring/control drain failed:",String(n))}ss()}function U_(t){let e=xt.get(t)?.token;if(!e)return{error:"No identity bound to this session. Call choose_identity (or create_identity) first."};if(ua.has(e))return{error:"Your identity binding was reassigned to another session. Call choose_identity again to continue."};let r=W_(e);if(!r)return{error:"No identity bound to this session. Call choose_identity (or create_identity) first."};let n=K.get(r.identity);if(!n)return Re.delete(r.identity),ss(),{error:`The bound identity "${r.identity}" no longer exists. Choose another with choose_identity.`};r.sid=t;let o=xt.get(t)?.pid;return o&&(r.pid=o),{id:n}}function rp(t,e){let r=xt.get(t),n=r?.token;if(!n)return;for(let[s,i]of[...Re])i.token===n&&s!==e&&Re.delete(s);let o=Re.get(e)?.epoch??0;Re.set(e,{identity:e,token:n,pid:r?.pid??0,sid:t,epoch:o+1,boundAt:Date.now()}),ua.delete(n),ss()}function WE(t){let e=[];if(t.IsNil())return e;for(let r of t.GetKeys()){let n=t.Reduce(r);n.IsNil()||e.push({name:n.Reduce("name").Visualize(),container_id:n.Reduce("container_id").Visualize()})}return e}function na(t){let e=[];if(t.IsNil())return e;for(let r=0;;r++){let n=t.Reduce(r);if(n.IsNil())break;let o=n.Reduce("reply_to"),s=null;if(!o.IsNil()){s={wire_id:o.Reduce("wire_id").Visualize()};let i=o.Reduce("sentence");i.IsNil()||(s.sentence=parseInt(i.Visualize(),10))}e.push({msg_id:parseInt(n.Reduce("msg_id").Visualize(),10),sender_id:n.Reduce("sender_id").Visualize(),sender_name:n.Reduce("sender_name").Visualize(),text:n.Reduce("text").Visualize(),date:n.Reduce("date").Visualize(),status:n.Reduce("status").Visualize(),wire_id:n.Reduce("wire_id").Visualize(),reply_to:s})}return e}function YE(t){if(t.IsNil())return"No files received.";let e=[];for(let r=0;;r++){let n=t.Reduce(r);if(n.IsNil())break;let o=n.Reduce("filename").Visualize(),s=n.Reduce("mime").Visualize(),i=n.Reduce("sender_name").Visualize(),a=n.Reduce("status").Visualize(),c=n.Reduce("wire_id").Visualize();e.push(` \u2022 ${o} (${s||"application/octet-stream"}) from ${i} [${a}] {${c}}`)}return e.length===0?"No files received.":`${e.length} file(s):
|
|
54
|
+
`,e.enqueue(r.encode(s)),!0}catch(s){return this.onerror?.(s),!1}}handleUnsupportedRequest(){return this.onerror?.(new Error("Method not allowed.")),new Response(JSON.stringify({jsonrpc:"2.0",error:{code:-32e3,message:"Method not allowed."},id:null}),{status:405,headers:{Allow:"GET, POST, DELETE","Content-Type":"application/json"}})}async handlePostRequest(e,r){try{let n=e.headers.get("accept");if(!n?.includes("application/json")||!n.includes("text/event-stream"))return this.onerror?.(new Error("Not Acceptable: Client must accept both application/json and text/event-stream")),this.createJsonErrorResponse(406,-32e3,"Not Acceptable: Client must accept both application/json and text/event-stream");let o=e.headers.get("content-type");if(!o||!o.includes("application/json"))return this.onerror?.(new Error("Unsupported Media Type: Content-Type must be application/json")),this.createJsonErrorResponse(415,-32e3,"Unsupported Media Type: Content-Type must be application/json");let s={headers:Object.fromEntries(e.headers.entries()),url:new URL(e.url)},i;if(r?.parsedBody!==void 0)i=r.parsedBody;else try{i=await e.json()}catch{return this.onerror?.(new Error("Parse error: Invalid JSON")),this.createJsonErrorResponse(400,-32700,"Parse error: Invalid JSON")}let a;try{Array.isArray(i)?a=i.map(_=>lo.parse(_)):a=[lo.parse(i)]}catch{return this.onerror?.(new Error("Parse error: Invalid JSON-RPC message")),this.createJsonErrorResponse(400,-32700,"Parse error: Invalid JSON-RPC message")}let c=a.some(fo);if(c){if(this._initialized&&this.sessionId!==void 0)return this.onerror?.(new Error("Invalid Request: Server already initialized")),this.createJsonErrorResponse(400,-32600,"Invalid Request: Server already initialized");if(a.length>1)return this.onerror?.(new Error("Invalid Request: Only one initialization request is allowed")),this.createJsonErrorResponse(400,-32600,"Invalid Request: Only one initialization request is allowed");this.sessionId=this.sessionIdGenerator?.(),this._initialized=!0,this.sessionId&&this._onsessioninitialized&&await Promise.resolve(this._onsessioninitialized(this.sessionId))}if(!c){let _=this.validateSession(e);if(_)return _;let b=this.validateProtocolVersion(e);if(b)return b}if(!a.some(er)){for(let _ of a)this.onmessage?.(_,{authInfo:r?.authInfo,requestInfo:s});return new Response(null,{status:202})}let l=crypto.randomUUID(),d=a.find(_=>fo(_)),f=d?d.params.protocolVersion:e.headers.get("mcp-protocol-version")??km;if(this._enableJsonResponse)return new Promise(_=>{this._streamMapping.set(l,{resolveJson:_,cleanup:()=>{this._streamMapping.delete(l)}});for(let b of a)er(b)&&this._requestToStreamMapping.set(b.id,l);for(let b of a)this.onmessage?.(b,{authInfo:r?.authInfo,requestInfo:s})});let m=new TextEncoder,p,h=new ReadableStream({start:_=>{p=_},cancel:()=>{this._streamMapping.delete(l)}}),g={"Content-Type":"text/event-stream","Cache-Control":"no-cache",Connection:"keep-alive"};this.sessionId!==void 0&&(g["mcp-session-id"]=this.sessionId);for(let _ of a)er(_)&&(this._streamMapping.set(l,{controller:p,encoder:m,cleanup:()=>{this._streamMapping.delete(l);try{p.close()}catch{}}}),this._requestToStreamMapping.set(_.id,l));await this.writePrimingEvent(p,m,l,f);for(let _ of a){let b,w;er(_)&&this._eventStore&&f>="2025-11-25"&&(b=()=>{this.closeSSEStream(_.id)},w=()=>{this.closeStandaloneSSEStream()}),this.onmessage?.(_,{authInfo:r?.authInfo,requestInfo:s,closeSSEStream:b,closeStandaloneSSEStream:w})}return new Response(h,{status:200,headers:g})}catch(n){return this.onerror?.(n),this.createJsonErrorResponse(400,-32700,"Parse error",{data:String(n)})}}async handleDeleteRequest(e){let r=this.validateSession(e);if(r)return r;let n=this.validateProtocolVersion(e);return n||(await Promise.resolve(this._onsessionclosed?.(this.sessionId)),await this.close(),new Response(null,{status:200}))}validateSession(e){if(this.sessionIdGenerator===void 0)return;if(!this._initialized)return this.onerror?.(new Error("Bad Request: Server not initialized")),this.createJsonErrorResponse(400,-32e3,"Bad Request: Server not initialized");let r=e.headers.get("mcp-session-id");if(!r)return this.onerror?.(new Error("Bad Request: Mcp-Session-Id header is required")),this.createJsonErrorResponse(400,-32e3,"Bad Request: Mcp-Session-Id header is required");if(r!==this.sessionId)return this.onerror?.(new Error("Session not found")),this.createJsonErrorResponse(404,-32001,"Session not found")}validateProtocolVersion(e){let r=e.headers.get("mcp-protocol-version");if(r!==null&&!mn.includes(r))return this.onerror?.(new Error(`Bad Request: Unsupported protocol version: ${r} (supported versions: ${mn.join(", ")})`)),this.createJsonErrorResponse(400,-32e3,`Bad Request: Unsupported protocol version: ${r} (supported versions: ${mn.join(", ")})`)}async close(){this._streamMapping.forEach(({cleanup:e})=>{e()}),this._streamMapping.clear(),this._requestResponseMap.clear(),this.onclose?.()}closeSSEStream(e){let r=this._requestToStreamMapping.get(e);if(!r)return;let n=this._streamMapping.get(r);n&&n.cleanup()}closeStandaloneSSEStream(){let e=this._streamMapping.get(this._standaloneSseStreamId);e&&e.cleanup()}async send(e,r){let n=r?.relatedRequestId;if((Dt(e)||hn(e))&&(n=e.id),n===void 0){if(Dt(e)||hn(e))throw new Error("Cannot send a response on a standalone SSE stream unless resuming a previous client request");let i;this._eventStore&&(i=await this._eventStore.storeEvent(this._standaloneSseStreamId,e));let a=this._streamMapping.get(this._standaloneSseStreamId);if(a===void 0)return;a.controller&&a.encoder&&this.writeSSEEvent(a.controller,a.encoder,e,i);return}let o=this._requestToStreamMapping.get(n);if(!o)throw new Error(`No connection established for request ID: ${String(n)}`);let s=this._streamMapping.get(o);if(!this._enableJsonResponse&&s?.controller&&s?.encoder){let i;this._eventStore&&(i=await this._eventStore.storeEvent(o,e)),this.writeSSEEvent(s.controller,s.encoder,e,i)}if(Dt(e)||hn(e)){this._requestResponseMap.set(n,e);let i=Array.from(this._requestToStreamMapping.entries()).filter(([c,u])=>u===o).map(([c])=>c);if(i.every(c=>this._requestResponseMap.has(c))){if(!s)throw new Error(`No connection established for request ID: ${String(n)}`);if(this._enableJsonResponse&&s.resolveJson){let c={"Content-Type":"application/json"};this.sessionId!==void 0&&(c["mcp-session-id"]=this.sessionId);let u=i.map(l=>this._requestResponseMap.get(l));u.length===1?s.resolveJson(new Response(JSON.stringify(u[0]),{status:200,headers:c})):s.resolveJson(new Response(JSON.stringify(u),{status:200,headers:c}))}else s.cleanup();for(let c of i)this._requestResponseMap.delete(c),this._requestToStreamMapping.delete(c)}}}};var ea=class{constructor(e={}){this._requestContext=new WeakMap,this._webStandardTransport=new Xi(e),this._requestListener=Qd(async r=>{let n=this._requestContext.get(r);return this._webStandardTransport.handleRequest(r,{authInfo:n?.authInfo,parsedBody:n?.parsedBody})},{overrideGlobalObjects:!1})}get sessionId(){return this._webStandardTransport.sessionId}set onclose(e){this._webStandardTransport.onclose=e}get onclose(){return this._webStandardTransport.onclose}set onerror(e){this._webStandardTransport.onerror=e}get onerror(){return this._webStandardTransport.onerror}set onmessage(e){this._webStandardTransport.onmessage=e}get onmessage(){return this._webStandardTransport.onmessage}async start(){return this._webStandardTransport.start()}async close(){return this._webStandardTransport.close()}async send(e,r){return this._webStandardTransport.send(e,r)}async handleRequest(e,r,n){let o=e.auth;await Qd(async i=>this._webStandardTransport.handleRequest(i,{authInfo:o,parsedBody:n}),{overrideGlobalObjects:!1})(e,r)}closeSSEStream(e){this._webStandardTransport.closeSSEStream(e)}closeStandaloneSSEStream(){this._webStandardTransport.closeStandaloneSSEStream()}};import{resolve as mE,join as Ce,dirname as hE,isAbsolute as gE,basename as yE}from"node:path";import{fileURLToPath as _E}from"node:url";import{randomBytes as nv,randomInt as ov,randomUUID as vE,timingSafeEqual as bE}from"node:crypto";import{createServer as wE}from"node:http";import{brotliCompressSync as $E,brotliDecompressSync as xE}from"node:zlib";import*as j from"node:fs";import{readFile as kE,mkdir as SE,writeFile as zE}from"node:fs/promises";import{adapt_wrapper as RE}from"@adapt-toolkit/sdk/executables";import{PacketWrapperConfigurator as TE}from"@adapt-toolkit/sdk/wrappers";import{object_to_adapt_value as sv}from"@adapt-toolkit/sdk/wrapper";import{AdaptObjectLifetime as _p}from"@adapt-toolkit/sdk/common";import*as nt from"node:fs";import{randomBytes as rE}from"node:crypto";import{homedir as A_}from"node:os";import{resolve as ta,join as Xd,dirname as j_,basename as nE}from"node:path";var Z_=["owner","shared","open"],Vn={brokerUrl:"wss://broker1.ours.network",port:3050,stateDir:ta(A_(),".ours"),gcIntervalMs:36e5,autoStart:!1,apiVisibility:"owner"};function oE(){return process.env.OURS_CONFIG??Xd(A_(),".ours","config.json")}function sE(){let t;try{t=nt.readFileSync(oE(),"utf8")}catch{return{}}let e;try{e=JSON.parse(t)}catch{return{}}let r={};return typeof e.brokerUrl=="string"&&(r.brokerUrl=e.brokerUrl),typeof e.port=="number"&&Number.isFinite(e.port)&&(r.port=e.port),typeof e.stateDir=="string"&&(r.stateDir=ta(e.stateDir)),typeof e.gcIntervalMs=="number"&&Number.isFinite(e.gcIntervalMs)&&(r.gcIntervalMs=e.gcIntervalMs),typeof e.autoStart=="boolean"&&(r.autoStart=e.autoStart),typeof e.apiVisibility=="string"&&Z_.includes(e.apiVisibility)&&(r.apiVisibility=e.apiVisibility),typeof e.apiToken=="string"&&e.apiToken.trim()&&(r.apiToken=e.apiToken.trim()),r}function iE(){let t=process.env.OURS_API_VISIBILITY?.trim().toLowerCase();return t&&Z_.includes(t)?t:void 0}function aE(t){let e=process.env[t];if(e!==void 0)return e==="1"||e.toLowerCase()==="true"}function N_(t){let e=process.env[t];if(e===void 0)return;let r=parseInt(e,10);return Number.isNaN(r)?void 0:r}function M_(){let t=sE();return{brokerUrl:process.env.OURS_BROKER_URL??t.brokerUrl??Vn.brokerUrl,port:N_("OURS_PORT")??t.port??Vn.port,stateDir:ta(process.env.OURS_STATE_DIR??t.stateDir??Vn.stateDir),gcIntervalMs:N_("OURS_GC_INTERVAL_MS")??t.gcIntervalMs??Vn.gcIntervalMs,autoStart:aE("OURS_AUTOSTART")??t.autoStart??Vn.autoStart,apiVisibility:iE()??t.apiVisibility??Vn.apiVisibility,apiToken:process.env.OURS_API_TOKEN?.trim()||t.apiToken}}var cE="daemon-token";function ep(t){return Xd(t.stateDir,cE)}function q_(t){let e=process.env.OURS_API_TOKEN?.trim();return e||t.apiToken?.trim()||void 0}function D_(t,e={}){let r=process.env.OURS_API_TOKEN?.trim();if(r)return{token:r,source:"env"};let n=t.apiToken?.trim();if(n)return{token:n,source:"config"};let o=ep(t);try{let i=nt.readFileSync(o,"utf8").trim();if(i)return{token:i,source:"file"}}catch{}if(!e.generate)return null;let s=rE(32).toString("hex");try{nt.mkdirSync(j_(o),{recursive:!0}),nt.writeFileSync(o,s+`
|
|
55
|
+
`,{mode:384}),nt.chmodSync(o,384)}catch{}return{token:s,source:"generated"}}var C_=".ours-identity";function tp(t){if(!t.name.trim())throw new Error("identity name must not be empty");let e={identity:t.name.trim()};return t.force&&(e.force=!0),e.expose_local=t.exposeLocal??!0,e.local_auto_accept=t.localAutoAccept??!0,e}function uE(t){let e=ta(t);return nE(e)===C_?e:Xd(e,C_)}function L_(t,e,r=!1){let n=tp(e),o=uE(t);if(!r&&nt.existsSync(o))throw new Error(`${o} already exists \u2014 pass overwrite to replace it`);return nt.mkdirSync(j_(o),{recursive:!0}),nt.writeFileSync(o,JSON.stringify(n,null,2)+`
|
|
56
|
+
`),o}import{basename as lE,extname as dE}from"node:path";var pE={".png":"image/png",".jpg":"image/jpeg",".jpeg":"image/jpeg",".gif":"image/gif",".webp":"image/webp",".svg":"image/svg+xml",".bmp":"image/bmp",".ico":"image/x-icon",".pdf":"application/pdf",".txt":"text/plain",".md":"text/markdown",".json":"application/json",".csv":"text/csv",".html":"text/html",".xml":"application/xml",".zip":"application/zip",".gz":"application/gzip",".tar":"application/x-tar",".mp3":"audio/mpeg",".wav":"audio/wav",".mp4":"video/mp4",".mov":"video/quicktime"};function V_(t){return pE[dE(t).toLowerCase()]??"application/octet-stream"}function U_(t){let e=lE(t).replace(/[^A-Za-z0-9._-]/g,"_");return e.length?e.slice(0,200):"file"}function fE(t){let{selfVersion:e,daemonVersion:r}=t;return!r||r===e?null:`ours: version mismatch \u2014 this plugin/connector is v${e}, the running daemon is v${r}. Everything still works; for the best experience run matching versions. The daemon is a shared singleton and is never restarted automatically, so when no other session is mid-task run \`ours-mcp stop\` (the next session starts the daemon at the new version) \u2014 or update the lagging side to match. No action is required; this is advisory.`}var es="0.3.0",fr=M_(),Qe=fr.stateDir,ia=fr.brokerUrl,PE=process.env.OURS_TRANSPORT??"http",rp=fr.port,B_=fr.gcIntervalMs,lp=fr.apiVisibility,I=(...t)=>process.stderr.write(`ours: ${t.join(" ")}
|
|
57
|
+
`);function EE(){if(lp==="open")return null;if(lp==="shared"){let t=q_(fr);if(!t)throw new Error(`apiVisibility=shared requires an operator-supplied token so it can be distributed to cross-user agents \u2014 set OURS_API_TOKEN or "apiToken" in config (${ep(fr)} is not used for shared mode). Use apiVisibility=owner for a same-user-only auto-token, or =open to disable auth.`);return t}return D_(fr,{generate:!0}).token}var H_=EE();function IE(t){let e=t.headers["x-ours-api-token"];if(typeof e=="string"&&e)return e;let r=t.headers.authorization;if(typeof r=="string"){let n=/^Bearer\s+(.+)$/i.exec(r.trim());if(n)return n[1]}}function OE(t){if(H_===null)return!0;let e=IE(t);if(!e)return!1;let r=Buffer.from(e),n=Buffer.from(H_);return r.length===n.length&&bE(r,n)}function np(t,e){return OE(t)?!0:(e.writeHead(401,{"Content-Type":"application/json"}),e.end(JSON.stringify({error:"unauthorized"})),!1)}var NE=/^[A-Za-z0-9 _.@-]{1,64}$/,aa="contact-book";function dp(t){return NE.test(t)?t==="."||t===".."||t.includes("/")||t.includes("\\")?"invalid name":t===aa?`"${aa}" is reserved for the local contact book`:t==="root.json"||t==="bindings.json"?`"${t}" is reserved for daemon bookkeeping`:null:"name must be 1-64 chars of letters, digits, space, _ . @ or -"}function CE(){let t=hE(_E(import.meta.url)),e=process.env.OURS_UNIT_DIR,r=e?[mE(e)]:[Ce(t,"mufl_code"),Ce(t,"..","mufl_code")];for(let n of r){if(!j.existsSync(n))continue;let o=j.readdirSync(n).find(s=>s.endsWith(".muflo"));if(o){let s=o.slice(0,-6),i=new Uint8Array(j.readFileSync(Ce(n,o)));return{dir:n,hash:s,contents:i}}}throw new Error(`no compiled .muflo packet found (looked in: ${r.join(", ")})`)}var ts,rs,G=new Map,mt=null,pp=null,Re=new Map,la=new Set,kt=new Map;function J_(t){if(!Number.isInteger(t)||t<=0)return!1;try{return process.kill(t,0),!0}catch(e){return e.code==="EPERM"}}function iv(t){for(let e of Re.values())if(e.token===t)return e}var G_=()=>Ce(Qe,"bindings.json");function is(){try{j.mkdirSync(Qe,{recursive:!0});let t=`${G_()}.tmp`;j.writeFileSync(t,JSON.stringify({pid:process.pid,bound:[...Re.keys()],holders:[...Re.values()].map(e=>({identity:e.identity,pid:e.pid}))})),j.renameSync(t,G_())}catch(t){I("failed to persist bindings snapshot:",String(t))}}var av=t=>Ce(Qe,t),vp=t=>Ce(t,"identity.key"),Yr=t=>Ce(t,"state_data.bin"),cv=t=>Ce(t,"notifications.log"),K_=t=>Ce(t,"unread.json"),AE=t=>Ce(t.dir,"files");function jE(){return j.existsSync(Qe)?j.readdirSync(Qe,{withFileTypes:!0}).filter(t=>t.isDirectory()&&j.existsSync(vp(Ce(Qe,t.name)))).map(t=>t.name):[]}var os=()=>Ce(Qe,aa),W_=()=>Ce(os(),"registrar.key"),fp=()=>Ce(os(),"book.json");function da(){try{let t=JSON.parse(j.readFileSync(fp(),"utf8"));return t&&typeof t.entries=="object"?t.entries:{}}catch{return{}}}function uv(t){j.mkdirSync(os(),{recursive:!0});let e=`${fp()}.tmp`;j.writeFileSync(e,JSON.stringify({v:1,entries:t},null,2),{mode:384}),j.renameSync(e,fp())}function Fn(t){return Xe(e=>Buffer.from(xe(t,"::actor::export_address_document",e).GetBinary()))}function lv(t){return Xe(e=>Buffer.from(xe(t,"::actor::export_signing_secret",e).Serialize()).toString("hex"))}async function dv(t){if(!mt)throw new Error("registrar is not available");let e=Fn(t),r=await X(async o=>{let s=await U(mt,"::actor::sign_book_entry",{name:t.name,ad:mt.pw.packet.NewBinaryFromBuffer(e).Attach(o)},o);return Buffer.from(s.Reduce("sig").GetBinary()).toString("base64url")}),n=da();n[t.name]={v:1,name:t.name,container_id:t.cid,address_document:e.toString("base64url"),published_at:new Date().toISOString(),registrar_sig:r},uv(n),I(`[${t.name}] published to the local contact book`)}function pv(t){let e=da();t in e&&(delete e[t],uv(e),I(`[${t}] removed from the local contact book`))}async function fv(t){if(!pp)throw new Error("registrar is not available");await X(async e=>{await U(t,"::actor::pin_registrar",{registrar_ad:t.pw.packet.NewBinaryFromBuffer(pp).Attach(e)},e)})}var ca=()=>Ce(Qe,"root.json"),le=null;function ZE(){try{let t=JSON.parse(j.readFileSync(ca(),"utf8"));return typeof t.name=="string"?t.name:null}catch{return null}}function ME(t){j.mkdirSync(Qe,{recursive:!0});let e=`${ca()}.tmp`;j.writeFileSync(e,JSON.stringify({v:1,name:t})),j.renameSync(e,ca())}function mv(){j.rmSync(ca(),{force:!0})}function St(t){return Xe(e=>{let r=xe(t,"::actor::describe_identity",e);return{bio:r.Reduce("bio").Visualize(),persona:r.Reduce("persona").Visualize(),roleId:r.Reduce("role_id").Visualize(),rootCid:r.Reduce("root_cid").Visualize(),rootName:r.Reduce("root_name").Visualize(),monitoringEnabled:r.Reduce("monitoring_enabled").GetBoolean()}})}async function ra(t,e){await X(async r=>{let n=Fn(e),o=await U(t,"::actor::sign_delegation",{role_ad:t.pw.packet.NewBinaryFromBuffer(n).Attach(r),role_id:e.name},r),s=Buffer.from(o.Reduce("cert").GetBinary()),i=await U(t,"::actor::export_root_profile",{},r),a=Buffer.from(i.Reduce("profile").GetBinary()),c=Fn(t);await U(e,"::actor::set_delegation",{cert:e.pw.packet.NewBinaryFromBuffer(s).Attach(r),root_ad:e.pw.packet.NewBinaryFromBuffer(c).Attach(r),root_profile:e.pw.packet.NewBinaryFromBuffer(a).Attach(r)},r)}),I(`[${e.name}] delegated as a role under root "${t.name}"`)}function qE(t,e){if(!le||!G.has(le))return null;let r=G.get(e)??[...G.values()].find(o=>o.cid===e);if(!r||r.name===t.name)return null;let n=o=>o.name===le||St(o).roleId!=="";return n(t)&&n(r)?r:null}async function DE(t,e,r){let n=Fn(e);return await X(async o=>{await U(t,"::actor::connect_sibling",{name:e.name,target_ad:t.pw.packet.NewBinaryFromBuffer(n).Attach(o),text:r},o)}),`"${e.name}" was not a contact yet \u2014 connected as an intra-root sibling (delegation-cert auto-accept) and delivered the message.`}async function LE(t,e,r){if(!mt)throw new Error(`"${e}" is not a contact, and the local contact book is unavailable.`);let n=da(),o=n[e]??Object.values(n).find(c=>c.container_id===e);if(!o)throw new Error(`"${e}" is not a contact and has no local contact-book entry. Use generate_invite/add_contact for remote peers, or list_local_contact_book to see local ones.`);if(o.container_id===t.cid)throw new Error("that contact-book entry is this identity itself.");let s=Buffer.from(o.address_document,"base64url"),i=Buffer.from(o.registrar_sig,"base64url"),a=Fn(t);return await X(async c=>{let u=await U(mt,"::actor::mint_introduction",{joiner_ad:mt.pw.packet.NewBinaryFromBuffer(a).Attach(c),target_ad:mt.pw.packet.NewBinaryFromBuffer(s).Attach(c)},c),l=Buffer.from(u.Reduce("intro").GetBinary());await U(t,"::actor::connect_local",{name:o.name,target_ad:t.pw.packet.NewBinaryFromBuffer(s).Attach(c),intro:t.pw.packet.NewBinaryFromBuffer(l).Attach(c),entry_sig:t.pw.packet.NewBinaryFromBuffer(i).Attach(c),text:r},c)}),`"${o.name}" was not a contact yet \u2014 connected via the local contact book and sent the message with the introduction. If "${o.name}" requires approval for local introductions, delivery completes once they approve.`}function as(t){return Xe(e=>{let r=xe(t,"::a2a_messaging::get_monitoring_status",e),n=xe(t,"::actor::get_monitoring_status",e);return{enabled:r.Reduce("monitored").GetBoolean(),proxyCid:r.Reduce("proxy_cid").Visualize(),proxyPending:r.Reduce("proxy_pending").GetBoolean(),copiesQueued:parseInt(n.Reduce("copies_queued").Visualize(),10)||0,controlQueued:parseInt(n.Reduce("control_queued").Visualize(),10)||0}})}async function ns(t,e,r){await X(async n=>{await U(t,"::a2a_control::send_control",{contact:e,payload:JSON.stringify(r)},n)})}function hv(t){try{return Xe(e=>{let r=xe(t,"::a2a_capabilities::get_manifest",e).Reduce("capabilities");return r.IsNil()?[]:[...r.GetKeys()].map(n=>typeof n=="string"?n:n.Visualize())})}catch{return[]}}function VE(t){let e="",r="",n="",o="",s=[];try{Xe(i=>{let a=xe(t,"::a2a_capabilities::get_manifest",i),c=l=>{let d=a.Reduce(l);return d.IsNil()?"":d.Visualize()};e=c("app_id"),r=c("name"),n=c("description"),o=c("version");let u=a.Reduce("capabilities");u.IsNil()||(s=[...u.GetKeys()].map(l=>typeof l=="string"?l:l.Visualize()))})}catch{}return{app_id:e,name:r,description:n,version:o,capabilities:s,monitoring_status:as(t).proxyCid?"bound":"unbound"}}function UE(t){let e=[];for(let r of G.values()){if(r.name===t.name)continue;let n=St(r);n.rootCid===t.cid&&e.push({name:r.name,cid:r.cid,role_id:n.roleId,bio:n.bio,monitoring:n.monitoringEnabled,capabilities:hv(r)})}return e}function gv(t){try{rs.remove_packet(t.cid)}catch(e){I(`remove_packet(${t.cid}) failed:`,String(e))}G.delete(t.name);try{pv(t.name)}catch(e){I(`failed to unpublish "${t.name}" from the contact book:`,String(e))}Re.has(t.name)&&(Re.delete(t.name),is()),t.name===le&&(le=null,mv());try{j.rmSync(t.dir,{recursive:!0,force:!0})}catch(e){return`deleting ${t.dir} failed: ${String(e)}`}return null}var bp=!0,yv=bp?2:1,FE=6e5,mp=new Map,hp=(t,e)=>`${t}:${e}`;function _v(t,e,r){e&&mp.set(hp(t,e),{response:r,at:Date.now()})}function BE(t,e){if(!e)return;let r=mp.get(hp(t,e));if(r){if(Date.now()-r.at>FE){mp.delete(hp(t,e));return}return r.response}}async function HE(t,e,r){let n=ss(r);if(!n||typeof n!="object")return;let o=n,s=o.result;if(s&&typeof s=="object"&&s.pending===!0)return;let i=String(o.req_id??"");i&&(await ns(t,e,o),_v(e,i,o))}async function JE(t,e,r,n,o,s){let i;try{let d=JSON.parse(o);if(!d||typeof d!="object")throw new Error("not an object");i=d}catch{I(`[${t.name}] dropping unparseable control payload from ${n}`);return}if(i.v===1){i.t==="get_manifest"?await ns(t,r,{v:1,t:"res",id:i.id??null,ok:!0,manifest:{...VE(t),protocol_version:yv}}):await ns(t,r,{v:1,t:"res",id:i.id??null,error:{code:"protocol_upgraded",message:"This host now speaks the ours control-envelope protocol (v2). Refresh / cache-bust the control plane."}});return}let a=String(i.req_id??""),c=BE(r,a);if(c){await ns(t,r,c);return}let u=i.args&&typeof i.args=="object"?i.args:{},l={cap:String(i.cap??""),verb:String(i.verb??""),args:u,req_id:a};await X(async d=>{let f;try{f=await U(t,"::actor::process_control_envelope",{sender_id:e,sender_name:n,envelope:l,date:s},d)}catch(m){I(`[${t.name}] dispatch of "${l.cap}.${l.verb}" from ${n} failed:`,String(m));return}if(await HE(t,r,f),l.cap==="core.monitoring"&&l.verb==="bind")try{let m=ss(f);m&&(m.ok===!0||m.$ok===!0)&&XE(t,r)}catch{}})}async function GE(t){for(;;)if(await X(async r=>{let o=(await U(t,"::actor::get_control_requests",{},r)).Reduce("requests"),s=o.GetKeys();if(s.length===0)return!0;for(let i=0;i<s.length;i++){let a=o.Reduce(i),c=a.Reduce("sender_cid");await JE(t,c,c.Visualize(),a.Reduce("sender_name").Visualize(),a.Reduce("payload").Visualize(),a.Reduce("date"))}return!1}))return}function KE(){return String(ov(0,1e6)).padStart(6,"0")}var Qr=new Map;function pa(t){return[...G.values()].find(e=>e.cid===t)}async function cs(t,e){let r=e.Reduce("target").Visualize(),n=ss(e.Reduce("response"));if(!n||typeof n!="object")return;await ns(t,r,n);let o=String(n.req_id??"");o&&_v(r,o,n)}async function WE(t,e,r,n){try{if(G.has(e)){I(`[${t.name}] host_provision_child("${e}") rejected: name exists (settles via sweep timeout)`);return}let o=await yp(e);await X(async s=>{r&&await U(o,"::a2a_messaging::set_my_bio",{bio:r},s),await ra(t,o);let i=St(o).roleId,a=xe(o,"::actor::export_address_document_native",s),c=await U(t,"::a2a_cluster::register_provisioned_child",{pending_handle:n,role_id:i,child_ad:a},s);await cs(t,c)})}catch(o){I(`[${t.name}] host_provision_child("${e}") failed (settles via sweep timeout):`,String(o))}}async function YE(t,e,r){try{let n=pa(e.Visualize());if(n){let o=gv(n);o&&I(`[${t.name}] host_destroy_child teardown warning:`,o)}Qr.delete(e.Visualize()),await X(async o=>{let s=await U(t,"::a2a_cluster::confirm_child_destroyed",{pending_handle:r,cid:e},o);await cs(t,s)})}catch(n){I(`[${t.name}] host_destroy_child failed (settles via sweep timeout):`,String(n))}}async function QE(t,e,r){try{let n=pa(e.Visualize());if(!n){I(`[${t.name}] host_mint_child_invite: unknown child ${e.Visualize()} (settles via sweep timeout)`);return}await X(async o=>{let s=await U(n,"::a2a_messaging::generate_invite",{},o),i=t.pw.packet.NewBinaryFromBuffer(Buffer.from(s.Reduce("invite").GetBinary())).Attach(o),a=await U(t,"::a2a_cluster::register_child_invite",{pending_handle:r,invite:i},o);await cs(t,a)})}catch(n){I(`[${t.name}] host_mint_child_invite failed (settles via sweep timeout):`,String(n))}}async function gp(t,e,r,n){await X(async o=>{if(e){n&&await U(t,"::a2a_messaging::host_register_monitoring_cp",{cp_ad:n},o);let s=KE();await U(t,"::a2a_messaging::set_proxy_pending",{code:s,proxy:r},o),await U(t,"::a2a_messaging::verify_proxy_code",{code:s,sender:r},o),Qr.set(t.cid,r??"")}else await U(t,"::a2a_messaging::host_clear_child_monitoring",{},o),Qr.delete(t.cid)})}async function Y_(t,e,r,n,o,s){try{let i=pa(e.Visualize());if(!i){I(`[${t.name}] host_set_child_monitoring: unknown child ${e.Visualize()} (settles via sweep timeout)`);return}r?await gp(i,!0,o?.Visualize(),s):await gp(i,!1),await X(async a=>{let c=await U(t,"::a2a_cluster::confirm_child_monitoring",{pending_handle:n,cid:e,enabled:r},a);await cs(t,c)})}catch(i){I(`[${t.name}] host_set_child_monitoring failed (settles via sweep timeout):`,String(i))}}async function XE(t,e){for(let[r,n]of[...Qr.entries()]){if(n===e)continue;let o=pa(r);if(!o){Qr.delete(r);continue}await gp(o,!1).catch(s=>I(`[${t.name}] CP-rebind clear of child ${r} failed:`,String(s)))}}function eI(t,e){let r=[];for(let n of G.values()){if(n.name===t.name)continue;let o=St(n);if(o.rootCid!==t.cid)continue;let s=xe(n,"::actor::export_address_document_native",e);r.push({cid:s.Reduce("identity").Reduce("container_id"),role_id:o.roleId,name:n.name,bio:o.bio,persona:o.persona,caps:hv(n),child_ad:s})}return r}var op=new Set;async function vv(t){if(!op.has(t.name)){op.add(t.name);try{await X(async e=>{await U(t,"::a2a_cluster::reconcile",{pending_handle:"",children:eI(t,e)},e);let n=(await U(t,"::a2a_cluster::sweep_and_settle",{},e)).Reduce("settled"),o=n.GetKeys();for(let s=0;s<o.length;s++)await cs(t,n.Reduce(s))})}catch(e){I(`[${t.name}] cluster sweep failed:`,String(e))}finally{op.delete(t.name)}}}var tI=6e4;function rI(){setInterval(()=>{if(bp)for(let t of G.values())St(t).roleId===""&&vv(t)},tI).unref()}function nI(){for(let t of G.values())if(St(t).roleId!=="")try{let e=as(t).proxyCid;e&&Qr.set(t.cid,e)}catch(e){Qr.set(t.cid,""),I(`[${t.name}] monitoredChildren rebuild read failed (added clear-on-repoint):`,String(e))}}var sp=new Set;async function wp(t){if(!sp.has(t.name)){sp.add(t.name);try{await GE(t)}catch(e){I(`[${t.name}] control dispatch failed:`,String(e))}finally{sp.delete(t.name)}if(G.has(t.name)&&as(t).controlQueued>0)return wp(t)}}async function oI(){j.mkdirSync(os(),{recursive:!0});let t;try{t=j.readFileSync(W_(),"utf8").trim()}catch{}let e=nv(24).toString("hex");mt=await $p(aa,e,os(),!1,t),t||j.writeFileSync(W_(),lv(mt),{mode:384}),pp=Fn(mt),I(`contact-book registrar ready (${mt.cid})`)}function sI(t){try{return j.existsSync(Yr(t))&&j.statSync(Yr(t)).size>0}catch{return!1}}function ua(t){try{let e=Xe(n=>Buffer.from(xe(t,"::actor::export_state",n).Serialize()));j.mkdirSync(t.dir,{recursive:!0});let r=`${Yr(t.dir)}.tmp`;j.writeFileSync(r,e),j.renameSync(r,Yr(t.dir))}catch(e){I(`[${t.name}] failed to save state:`,String(e))}}function iI(t){let e=[],r=t.Reduce("degraded");if(r.IsNil())return e;for(let n=0;;n++){let o=r.Reduce(n);if(o.IsNil())break;e.push({cid:o.Reduce("container_id").Visualize(),name:o.Reduce("name").Visualize(),attempts:Number(o.Reduce("attempts").Visualize()),queued:Number(o.Reduce("queued").Visualize())})}return e}function aI(t){let e=[],r=t.Reduce("queues");if(r.IsNil())return e;for(let n=0;;n++){let o=r.Reduce(n);if(o.IsNil())break;e.push({cid:o.Reduce("container_id").Visualize(),queued:Number(o.Reduce("queued").Visualize()),degraded:o.Reduce("degraded").GetBoolean()})}return e}async function bv(t,e){try{let r=await X(async n=>{let o=await U(t,"::a2a_messaging::flush_deferred",{contact:e},n);return Number(o.Reduce("flushed").Visualize())});r>0&&I(`[${t.name}] flushed ${r} deferred message(s) to ${e.slice(0,12)}\u2026`)}catch(r){I(`[${t.name}] deferred flush to ${e.slice(0,12)}\u2026 failed:`,String(r))}}async function wv(t){try{let e=await X(async n=>{let o=await U(t,"::a2a_messaging::restore_degraded_contacts",{},n);return Number(o.Reduce("requested").Visualize())});e>0&&I(`[${t.name}] contact restore requested for ${e} degraded contact(s)`);let r=Xe(n=>aI(xe(t,"::a2a_messaging::list_deferred_queues",n)));for(let n of r)n.degraded||await bv(t,n.cid)}catch(e){I(`[${t.name}] contact-restore sweep failed:`,String(e))}}var na=new Map;function cI(t){let e=na.get(t);if(!(!e||e.size===0))for(let r of[...e])try{r()}catch{}}function uI(t,e){return new Promise(r=>{let n=na.get(t);n||(n=new Set,na.set(t,n));let o=!1,s=()=>{o||(o=!0,n.delete(i),n.size===0&&na.delete(t),clearTimeout(a),r())},i=s,a=setTimeout(s,e);n.add(i)})}function pr(t,e){try{j.mkdirSync(t.dir,{recursive:!0}),j.appendFileSync(cv(t.dir),JSON.stringify(e)+`
|
|
58
|
+
`)}catch(r){I(`[${t.name}] failed to append notifications.log:`,String(r))}cI(t.name)}var lI=Number(process.env.OURS_NOTIFY_LONGPOLL_MS)>0?Number(process.env.OURS_NOTIFY_LONGPOLL_MS):25e3,dI=250;function ip(t){try{return j.statSync(t).size}catch{return 0}}function pI(t,e,r){if(r<=e)return{events:[],cursor:e};let n=Buffer.alloc(r-e),o=0;try{let c=j.openSync(t,"r");try{o=j.readSync(c,n,0,n.length,e)}finally{j.closeSync(c)}}catch{return{events:[],cursor:e}}let s=n.subarray(0,o),i=s.lastIndexOf(10);if(i===-1)return{events:[],cursor:e};let a=[];for(let c of s.subarray(0,i+1).toString("utf8").split(`
|
|
59
|
+
`))if(c.trim())try{a.push(JSON.parse(c))}catch{}return{events:a,cursor:e+i+1}}async function fI(t,e,r,n){let o=cv(Ce(Qe,r)),s=(u,l)=>{e.writableEnded||(e.writeHead(200,{"Content-Type":"application/json"}),e.end(JSON.stringify({cursor:u,events:l})))};if(n===null||n==="tip"){s(ip(o),[]);return}let i=parseInt(n,10);if(!Number.isFinite(i)||i<0){e.writableEnded||(e.writeHead(400,{"Content-Type":"application/json"}),e.end(JSON.stringify({error:"invalid since cursor"})));return}let a=!1;t.on("close",()=>{a=!0});let c=Date.now()+lI;for(;!a;){let u=ip(o);if(i>u&&(i=0),u>i){let{events:l,cursor:d}=pI(o,i,u);if(l.length>0){s(d,l);return}i=d}if(Date.now()>=c)break;await uI(r,Math.min(dI,c-Date.now()))}a||s(ip(o),[])}function Wr(t){try{let{unread:e,unreadFiles:r}=Xe(s=>{let a=sa(xe(t,"::actor::list_incoming_messages",s)).filter(l=>l.status==="unread"),c=xe(t,"::actor::list_incoming_files",s),u=[];if(!c.IsNil())for(let l=0;;l++){let d=c.Reduce(l);if(d.IsNil())break;d.Reduce("status").Visualize()==="unread"&&u.push({file_id:d.Reduce("file_id").Visualize(),from:d.Reduce("sender_name").Visualize(),filename:d.Reduce("filename").Visualize(),mime:d.Reduce("mime").Visualize(),wire_id:d.Reduce("wire_id").Visualize()})}return{unread:a,unreadFiles:u}}),n={count:e.length,recent:e.slice(-10).map(s=>({from:s.sender_name,msg_id:s.msg_id,date:s.date})),files:r.length,unread_files:r.slice(-10)};j.mkdirSync(t.dir,{recursive:!0});let o=`${K_(t.dir)}.tmp`;j.writeFileSync(o,JSON.stringify(n)),j.renameSync(o,K_(t.dir))}catch(e){I(`[${t.name}] failed to refresh unread snapshot:`,String(e))}}var oa=new Map,$v=t=>`ours://inbox/${encodeURIComponent(t)}`;function dr(t,e){I(`[${t}] notify:`,e);let r=Re.get(t)?.sid;if(!r)return;let n=oa.get(r);if(n){try{n.sendLoggingMessage({level:"info",logger:"ours",data:e})}catch(o){I("sendLoggingMessage failed:",String(o))}try{n.server.sendResourceUpdated({uri:$v(t)})}catch{}}}function Xe(t){let e=new _p;try{return t(e)}finally{e.Finalize()}}async function X(t){let e=new _p;try{return await t(e)}finally{e.Finalize()}}function xe(t,e,r){let n=sv({name:e,targ:void 0}),o=t.pw.packet.ExecuteTransaction(n);return n.Destroy(),r?o.Attach(r):o}async function mI(t,e){let r=t.lock,n;t.lock=new Promise(o=>n=o),await r;try{return await e()}finally{n()}}function hI(t,e,r=25e3){return new Promise((n,o)=>{let s=setTimeout(()=>{let i=t.pending.findIndex(a=>a.timer===s);i>=0&&t.pending.splice(i,1),o(new Error("timed out waiting for the transaction result"))},r);t.pending.push({resolve:n,reject:o,timer:s}),t.pw.add_client_message(e)})}function U(t,e,r,n,o){let s=sv({name:e,targ:r});return mI(t,()=>hI(t,s,o)).then(i=>(s.Destroy(),n?i.Attach(n):i),i=>{try{s.Destroy()}catch{}throw i})}function gI(t){t.pw.on_return_data=e=>{let r=new _p;e.Attach(r);try{let n=e.Reduce("kind").Visualize();if(n==="save_state"){ua(t);return}if(n==="notify_agent"){let s=e.Reduce("payload"),i=s.Reduce("event").Visualize();if(i==="message_received"){let a=s.Reduce("sender_name").Visualize(),c=s.Reduce("msg_id").Visualize(),u=s.Reduce("date").Visualize();pr(t,{event:"message_received",from:a,msg_id:c,date:u}),Wr(t),process.nextTick(()=>dr(t.name,`[${t.name}] new message from ${a} (#${c})`))}else if(i==="file_received"){let a=s.Reduce("sender_name").Visualize(),c=s.Reduce("file_id").Visualize(),u=s.Reduce("filename").Visualize(),l=s.Reduce("mime").Visualize(),d=s.Reduce("bytes").Visualize(),f=s.Reduce("date").Visualize();pr(t,{event:"file_received",from:a,file_id:c,filename:u,mime:l,bytes:d,date:f}),Wr(t),process.nextTick(()=>dr(t.name,`[${t.name}] new file ${u} (${d} B) from ${a} (#${c})`))}else if(i==="contact_accepted"){let a=s.Reduce("name").Visualize(),c=s.Reduce("container_id").Visualize();process.nextTick(()=>dr(t.name,`[${t.name}] contact "${a}" (${c}) accepted your invite.`))}else if(i==="local_contact_added"){let a=s.Reduce("name").Visualize(),c=s.Reduce("container_id").Visualize();process.nextTick(()=>dr(t.name,`[${t.name}] local contact "${a}" (${c}) connected via the contact book.`))}else if(i==="sibling_contact_added"){let a=s.Reduce("name").Visualize(),c=s.Reduce("container_id").Visualize();pr(t,{event:"sibling_contact_added",from:a}),process.nextTick(()=>dr(t.name,`[${t.name}] sibling "${a}" (${c}) connected (intra-root auto-accept).`))}else if(i==="local_contact_request"){let a=s.Reduce("name").Visualize(),c=s.Reduce("container_id").Visualize();pr(t,{event:"local_contact_request",from:a}),process.nextTick(()=>dr(t.name,`[${t.name}] pending local introduction from "${a}" (${c}) \u2014 approve or reject with respond_to_introduction.`))}else if(i==="pending_message"){let a=s.Reduce("sender_name").Visualize(),c=s.Reduce("queued").Visualize();pr(t,{event:"pending_message",from:a,queued:c}),process.nextTick(()=>dr(t.name,`[${t.name}] "${a}" queued a message awaiting introduction approval (${c} queued).`))}else if(i==="contact_restored"){let a=s.Reduce("name").Visualize(),c=s.Reduce("container_id").Visualize();pr(t,{event:"contact_restored",from:a}),I(`[${t.name}] contact "${a}" restored (re-keyed)`),process.nextTick(()=>void bv(t,String(c)))}else if(i==="control_request"){let a=s.Reduce("sender_name").Visualize();I(`[${t.name}] control request queued by ${a}`),process.nextTick(()=>void wp(t))}else if(i==="host_provision_child"){let a=s.Reduce("name").Visualize(),c=s.Reduce("bio").Visualize(),u=s.Reduce("pending_handle").Visualize();process.nextTick(()=>void WE(t,a,c,u))}else if(i==="host_destroy_child"){let a=s.Reduce("cid").Detach(),c=s.Reduce("pending_handle").Visualize();process.nextTick(()=>void YE(t,a,c).finally(()=>a.Destroy()))}else if(i==="host_mint_child_invite"){let a=s.Reduce("cid").Detach(),c=s.Reduce("pending_handle").Visualize();process.nextTick(()=>void QE(t,a,c).finally(()=>a.Destroy()))}else if(i==="host_set_child_monitoring"){let a=s.Reduce("cid").Detach(),c=s.Reduce("enabled").GetBoolean(),u=s.Reduce("pending_handle").Visualize();if(c){let l=s.Reduce("cp_cid").Detach(),d=s.Reduce("cp_ad").Detach();process.nextTick(()=>void Y_(t,a,!0,u,l,d).finally(()=>{a.Destroy(),l.Destroy(),d.Destroy()}))}else process.nextTick(()=>void Y_(t,a,!1,u).finally(()=>a.Destroy()))}return}let o=t.pending.shift();if(!o)return;clearTimeout(o.timer),o.resolve(e.Reduce("payload").Detach())}finally{r.Finalize()}},t.pw.on_transaction_failure=e=>{let r=t.pending.shift();r?(clearTimeout(r.timer),r.reject(new Error(e))):(I(`[${t.name}] inbound transaction rejected:`,e),pr(t,{event:"inbound_error",message:e}),process.nextTick(()=>dr(t.name,`[${t.name}] inbound transaction rejected: ${e}`)))}}function $p(t,e,r,n=!0,o){let s=new TE,i=["--unit_hash",ts.hash,"--seed_phrase",e,"--unit_dir_path",ts.dir];return o&&i.push("--init_trn_argument",JSON.stringify(o)),s.process_arguments(i),new Promise((a,c)=>{let u=setTimeout(()=>c(new Error(`packet creation for "${t}" timed out`)),3e4);rs.packet_manager.create_packet(s,l=>{clearTimeout(u);let d={name:t,cid:Xe(f=>l.packet.GetContainerID().Attach(f).Visualize()),pw:l,dir:r,pending:[],lock:Promise.resolve()};gI(d),n&&G.set(t,d),I(`[${t}] packet created \u2014 container id ${d.cid}`),a(d)},ts.contents)})}async function yp(t,e={exposeLocal:!0,localAutoAccept:!0}){let r=av(t);j.mkdirSync(r,{recursive:!0});let n=nv(24).toString("hex"),o=await $p(t,n,r);return j.writeFileSync(vp(r),lv(o),{mode:384}),await X(async s=>{await U(o,"::a2a_messaging::set_my_name",{name:t},s)}),await fv(o),e.localAutoAccept||await X(async s=>{await U(o,"::actor::set_local_policy",{auto_accept:!1},s)}),e.exposeLocal&&await dv(o),ua(o),o}async function yI(t){let e=av(t),r=j.readFileSync(vp(e),"utf8").trim(),n=await $p(t,"",e,!0,r);if(sI(e))try{let o=j.readFileSync(Yr(e));await X(async s=>{let i=n.pw.packet.ParseValue(new Uint8Array(o)).Attach(s);await U(n,"::actor::import_state",i,s)})}catch(o){I(`[${t}] FAILED TO IMPORT SAVED STATE \u2014 continuing with the reseeded identity; surviving contacts (if the blob was partially migrated) self-heal via contact restore:`,String(o)),pr(n,{event:"state_import_failed",error:String(o).slice(0,300)});try{j.renameSync(Yr(e),`${Yr(e)}.failed-${Date.now()}`),I(`[${t}] unreadable state blob preserved as state_data.bin.failed-*`)}catch{}}return await wv(n),Wr(n),n}async function Q_(){ts=CE();let t=["--broker_address",ia,"--test_mode","--logger_config","--level","INFO","--stdout","stderr","--logger_config_end"];I(`booting wrapper (unit ${ts.hash.slice(0,12)}\u2026, broker ${ia})`),rs=await RE.start(t),rs.on_packet_created_cb=n=>I(`wrapper: packet ready ${n.slice(0,12)}\u2026`),rs.start();try{await oI()}catch(n){I("failed to start the contact-book registrar (local contact book disabled):",String(n))}let e=jE();if(e.length===0)I("no persisted identities \u2014 start with create_identity");else{I(`restoring ${e.length} identit${e.length===1?"y":"ies"}: ${e.join(", ")}`);for(let n of e)try{let o=await yI(n);mt&&await fv(o)}catch(o){I(`failed to restore "${n}":`,String(o))}}nI(),rI(),le=ZE(),le&&!G.has(le)&&(I(`root marker names a missing identity "${le}" \u2014 clearing it`),le=null,mv()),le&&I(`root identity: ${le}`);let r=le?G.get(le):void 0;if(r)try{as(r).controlQueued>0&&wp(r)}catch(n){I("boot-time monitoring/control drain failed:",String(n))}is()}function X_(t){let e=kt.get(t)?.token;if(!e)return{error:"No identity bound to this session. Call choose_identity (or create_identity) first."};if(la.has(e))return{error:"Your identity binding was reassigned to another session. Call choose_identity again to continue."};let r=iv(e);if(!r)return{error:"No identity bound to this session. Call choose_identity (or create_identity) first."};let n=G.get(r.identity);if(!n)return Re.delete(r.identity),is(),{error:`The bound identity "${r.identity}" no longer exists. Choose another with choose_identity.`};r.sid=t;let o=kt.get(t)?.pid;return o&&(r.pid=o),{id:n}}function ap(t,e){let r=kt.get(t),n=r?.token;if(!n)return;for(let[s,i]of[...Re])i.token===n&&s!==e&&Re.delete(s);let o=Re.get(e)?.epoch??0;Re.set(e,{identity:e,token:n,pid:r?.pid??0,sid:t,epoch:o+1,boundAt:Date.now()}),la.delete(n),is()}function _I(t){let e=[];if(t.IsNil())return e;for(let r of t.GetKeys()){let n=t.Reduce(r);n.IsNil()||e.push({name:n.Reduce("name").Visualize(),container_id:n.Reduce("container_id").Visualize()})}return e}function sa(t){let e=[];if(t.IsNil())return e;for(let r=0;;r++){let n=t.Reduce(r);if(n.IsNil())break;let o=n.Reduce("reply_to"),s=null;if(!o.IsNil()){s={wire_id:o.Reduce("wire_id").Visualize()};let i=o.Reduce("sentence");i.IsNil()||(s.sentence=parseInt(i.Visualize(),10))}e.push({msg_id:parseInt(n.Reduce("msg_id").Visualize(),10),sender_id:n.Reduce("sender_id").Visualize(),sender_name:n.Reduce("sender_name").Visualize(),text:n.Reduce("text").Visualize(),date:n.Reduce("date").Visualize(),status:n.Reduce("status").Visualize(),wire_id:n.Reduce("wire_id").Visualize(),reply_to:s})}return e}function vI(t){if(t.IsNil())return"No files received.";let e=[];for(let r=0;;r++){let n=t.Reduce(r);if(n.IsNil())break;let o=n.Reduce("filename").Visualize(),s=n.Reduce("mime").Visualize(),i=n.Reduce("sender_name").Visualize(),a=n.Reduce("status").Visualize(),c=n.Reduce("wire_id").Visualize();e.push(` \u2022 ${o} (${s||"application/octet-stream"}) from ${i} [${a}] {${c}}`)}return e.length===0?"No files received.":`${e.length} file(s):
|
|
58
60
|
${e.join(`
|
|
59
|
-
`)}`}async function
|
|
61
|
+
`)}`}async function bI(t,e){if(e.IsNil())return"No new files.";let r=AE(t),n=[];for(let o=0;;o++){let s=e.Reduce(o);if(s.IsNil())break;n.length===0&&await SE(r,{recursive:!0});let i=s.Reduce("filename").Visualize(),a=s.Reduce("mime").Visualize(),c=s.Reduce("sender_name").Visualize(),u=s.Reduce("wire_id").Visualize(),l=Buffer.from(s.Reduce("data").GetBinary()),d=Ce(r,`${u}-${U_(i)}`);await zE(d,l),n.push(` \u2022 ${i} (${a||"application/octet-stream"}, ${l.length} B) from ${c} \u2192 ${d} {${u}}`)}return n.length===0?"No new files.":`${n.length} new file(s):
|
|
60
62
|
${n.join(`
|
|
61
|
-
`)}`}function
|
|
63
|
+
`)}`}function wI(t){let e=[];if(t.IsNil())return e;for(let r of t.GetKeys()){let n=t.Reduce(r);n.IsNil()||e.push({container_id:typeof r=="string"?r:r.Visualize(),name:n.Reduce("name").Visualize(),queued:parseInt(n.Reduce("queued").Visualize(),10)||0})}return e}function $I(t){let e={};if(t.IsNil())return e;for(let r of t.GetKeys()){let n=t.Reduce(r);n.IsNil()||(e[typeof r=="string"?r:r.Visualize()]={root_cid:n.Reduce("root_cid").Visualize(),root_name:n.Reduce("root_name").Visualize(),role_id:n.Reduce("role_id").Visualize()})}return e}function xI(t){if(!t)return"";let e=t.root_name||t.root_cid;return t.role_id?` [role "${t.role_id}" of ${e}]`:` [root identity of ${e}]`}function S(t,e=!1){return{content:[{type:"text",text:t}],isError:e}}function xv(t){return $E(t).toString("base64url")}function kI(t){return xE(Buffer.from(t.replace(/\s+/g,""),"base64url"))}var SI=new Set(["members","caps"]);function zI(t){try{let e=t.GetNumber();return Number.isInteger(e)?e:NaN}catch{return NaN}}function ss(t,e){if(t.IsNil())return null;let r;try{r=t.GetKeys()}catch{try{return xv(Buffer.from(t.GetBinary()))}catch{}try{return t.GetBoolean()}catch{}try{let n=t.GetNumber();if(!Number.isNaN(n))return n}catch{}return t.Visualize()}if(r.length>0){if(r.map(zI).every((i,a)=>i===a))return r.map((i,a)=>ss(t.Reduce(a)));let s={};for(let i of r)s[i.Visualize()]=ss(t.Reduce(i),i.Visualize());return s}return e!==void 0&&SI.has(e)?[]:{}}function cp(t,e=!0){let r=e&&t.status&&t.status!=="unread"?` [${t.status}]`:"",n=t.wire_id?` {${t.wire_id}}`:"",o=t.reply_to?` \u21B3re ${t.reply_to.wire_id}${t.reply_to.sentence?`\xB7s${t.reply_to.sentence}`:""}`:"";return`#${t.msg_id} [${t.sender_name}]${r}${n}${o} ${t.text} (${t.date})`}function ev(t){let e=new Gi({name:"ours",version:es},{capabilities:{logging:{},resources:{}}}),r=()=>{let o=X_(t());return"error"in o?{err:S(o.error,!0)}:{id:o.id}};e.tool("create_identity",'Create a new self-sovereign identity (an ADAPT node) with the given display name and bind it to this session. The name is what peers see for you in invites. Persisted permanently; reject if the name already exists. When a root identity exists on this host, the new identity is automatically delegated as a ROLE under it (its invites then carry the verified "role X of person Y" chain). By default the identity is published to the LOCAL contact book, so other identities on this host can message it by name without an invite; pass expose_local=false to opt out.',{name:V.string().min(1).describe('Display name for the new identity, e.g. "Alice".'),bio:V.string().default("").describe("Optional free-text bio for the identity profile."),expose_local:V.boolean().default(!0).describe("Publish this identity in the host-local contact book."),local_auto_accept:V.boolean().default(!0).describe("Auto-accept local contact-book introductions (false = they queue for approval).")},async({name:o,bio:s,expose_local:i,local_auto_accept:a})=>{let c=dp(o);if(c)return S(`create_identity failed: ${c}`,!0);if(G.has(o))return S(`create_identity failed: an identity named "${o}" already exists.`,!0);try{let u=await yp(o,{exposeLocal:i,localAutoAccept:a});s&&await X(async p=>{await U(u,"::a2a_messaging::set_my_bio",{bio:s},p)});let l="",d=le?G.get(le):void 0;d?(await ra(d,u),l=` Delegated as a role under root "${d.name}".`,bp&&vv(d)):l=" No root identity exists on this host yet, so this is a flat identity \u2014 create_root_identity establishes the hierarchy and adopts it as a role.",ap(t(),o);let f=i?` Published to the local contact book${a?"":" (introductions require approval)"}.`:" Not exposed in the local contact book.",m=`
|
|
62
64
|
|
|
63
|
-
Ask the user: do you want to arm a message monitor for "${o}"? If yes, use: Monitor({ command: "ours-mcp watch ${o.includes(" ")?`\\"${o}\\"`:o}", description: "ours inbound mail for ${o}", persistent: true })`;return S(`Created identity "${o}" (${u.cid}) and bound it to this session.${l}${f}${m}`)}catch(u){return S(`create_identity failed: ${String(u)}`,!0)}}),e.tool("create_root_identity","Create THE root identity for this host \u2014 the identity that represents the person behind all roles (see the identity hierarchy: one root, many roles). Only one root may exist; this fails if one already does. Existing identities are adopted as roles under the new root (each receives a delegation certificate) unless adopt_existing=false. The root is directly messageable like any identity.",{name:V.string().min(1).describe(`The person's name, e.g. "Vitalii Shakhmatov".`),bio:V.string().default("").describe("Free-text bio describing the person (carried in role invites)."),expose_local:V.boolean().default(!0).describe("Publish the root in the host-local contact book."),local_auto_accept:V.boolean().default(!0).describe("Auto-accept local contact-book introductions (false = they queue for approval)."),adopt_existing:V.boolean().default(!0).describe("Adopt all existing identities on this host as roles under the new root.")},async({name:o,bio:s,expose_local:i,local_auto_accept:a,adopt_existing:c})=>{let u=
|
|
65
|
+
Ask the user: do you want to arm a message monitor for "${o}"? If yes, use: Monitor({ command: "ours-mcp watch ${o.includes(" ")?`\\"${o}\\"`:o}", description: "ours inbound mail for ${o}", persistent: true })`;return S(`Created identity "${o}" (${u.cid}) and bound it to this session.${l}${f}${m}`)}catch(u){return S(`create_identity failed: ${String(u)}`,!0)}}),e.tool("create_root_identity","Create THE root identity for this host \u2014 the identity that represents the person behind all roles (see the identity hierarchy: one root, many roles). Only one root may exist; this fails if one already does. Existing identities are adopted as roles under the new root (each receives a delegation certificate) unless adopt_existing=false. The root is directly messageable like any identity.",{name:V.string().min(1).describe(`The person's name, e.g. "Vitalii Shakhmatov".`),bio:V.string().default("").describe("Free-text bio describing the person (carried in role invites)."),expose_local:V.boolean().default(!0).describe("Publish the root in the host-local contact book."),local_auto_accept:V.boolean().default(!0).describe("Auto-accept local contact-book introductions (false = they queue for approval)."),adopt_existing:V.boolean().default(!0).describe("Adopt all existing identities on this host as roles under the new root.")},async({name:o,bio:s,expose_local:i,local_auto_accept:a,adopt_existing:c})=>{let u=dp(o);if(u)return S(`create_root_identity failed: ${u}`,!0);if(G.has(o))return S(`create_root_identity failed: an identity named "${o}" already exists.`,!0);if(le&&G.has(le))return S(`create_root_identity failed: a root identity already exists ("${le}") \u2014 one root per host. Remove it first if you really mean to replace it.`,!0);try{let l=await yp(o,{exposeLocal:i,localAutoAccept:a});s&&await X(async g=>{await U(l,"::a2a_messaging::set_my_bio",{bio:s},g)}),le=o,ME(o);let d=[],f=[];if(c){for(let g of G.values())if(g.name!==o)try{await ra(l,g),d.push(g.name)}catch(_){I(`failed to adopt "${g.name}" as a role:`,String(_)),f.push(g.name)}}ap(t(),o);let m=d.length>0?` Adopted ${d.length} existing identit${d.length===1?"y":"ies"} as role(s): ${d.join(", ")}.`:"",p=f.length>0?` FAILED to adopt: ${f.join(", ")} (see daemon log).`:"",h=`
|
|
64
66
|
|
|
65
|
-
Ask the user: do you want to arm a message monitor for "${o}"? If yes, use: Monitor({ command: "ours-mcp watch ${o.includes(" ")?`\\"${o}\\"`:o}", description: "ours inbound mail for ${o}", persistent: true })`;return S(`Created root identity "${o}" (${l.cid}) and bound it to this session.${m}${p}${h}`)}catch(l){return S(`create_root_identity failed: ${String(l)}`,!0)}}),e.tool("define_local_identity_file","Write a `.ours-identity` workspace-pin file that ties a directory to an identity. The pin is ADVISORY: a future Claude Code session here is told about it and asks the user before binding (or creating) the identity \u2014 nothing is auto-triggered by the file alone. Use this instead of hand-writing the file. Because this daemon is shared and its CWD is not the user's project, you MUST pass an absolute `path` (the target directory, or the full path ending in .ours-identity). Refuses to overwrite unless overwrite=true.",{name:V.string().min(1).describe("Identity name the workspace belongs to."),path:V.string().min(1).describe("Absolute target: a directory (file is created inside it) or a full path ending in .ours-identity."),force:V.boolean().default(!1).describe("Once the user approves binding, eviction of another holder is pre-approved (no second confirmation)."),expose_local:V.boolean().default(!0).describe("Publish this identity in the host-local contact book."),local_auto_accept:V.boolean().default(!0).describe("Auto-accept local contact-book introductions (false = they queue for approval)."),overwrite:V.boolean().default(!1).describe("Replace an existing .ours-identity file.")},async({name:o,path:s,force:i,expose_local:a,local_auto_accept:c,overwrite:u})=>{if(!
|
|
66
|
-
${f}`)}catch(d){return S(`define_local_identity_file failed: ${String(d)}`,!0)}}),e.tool("choose_identity","Bind an existing identity to this session so the messaging tools act as it. Binding is exclusive: if the identity is already in use by another session, this is declined unless force=true, which evicts the other session. Never pass force=true on your own initiative \u2014 ask the user and get an explicit confirmation first.",{name:V.string().min(1).describe("Name of the identity to bind."),force:V.boolean().default(!1).describe("Evict another session that holds this identity.")},async({name:o,force:s})=>{if(!
|
|
67
|
+
Ask the user: do you want to arm a message monitor for "${o}"? If yes, use: Monitor({ command: "ours-mcp watch ${o.includes(" ")?`\\"${o}\\"`:o}", description: "ours inbound mail for ${o}", persistent: true })`;return S(`Created root identity "${o}" (${l.cid}) and bound it to this session.${m}${p}${h}`)}catch(l){return S(`create_root_identity failed: ${String(l)}`,!0)}}),e.tool("define_local_identity_file","Write a `.ours-identity` workspace-pin file that ties a directory to an identity. The pin is ADVISORY: a future Claude Code session here is told about it and asks the user before binding (or creating) the identity \u2014 nothing is auto-triggered by the file alone. Use this instead of hand-writing the file. Because this daemon is shared and its CWD is not the user's project, you MUST pass an absolute `path` (the target directory, or the full path ending in .ours-identity). Refuses to overwrite unless overwrite=true.",{name:V.string().min(1).describe("Identity name the workspace belongs to."),path:V.string().min(1).describe("Absolute target: a directory (file is created inside it) or a full path ending in .ours-identity."),force:V.boolean().default(!1).describe("Once the user approves binding, eviction of another holder is pre-approved (no second confirmation)."),expose_local:V.boolean().default(!0).describe("Publish this identity in the host-local contact book."),local_auto_accept:V.boolean().default(!0).describe("Auto-accept local contact-book introductions (false = they queue for approval)."),overwrite:V.boolean().default(!1).describe("Replace an existing .ours-identity file.")},async({name:o,path:s,force:i,expose_local:a,local_auto_accept:c,overwrite:u})=>{if(!gE(s))return S(`define_local_identity_file failed: path must be absolute (got "${s}").`,!0);let l={name:o,force:i,exposeLocal:a,localAutoAccept:c};try{let d=L_(s,l,u),f=JSON.stringify(tp(l),null,2);return S(`Wrote ${d}:
|
|
68
|
+
${f}`)}catch(d){return S(`define_local_identity_file failed: ${String(d)}`,!0)}}),e.tool("choose_identity","Bind an existing identity to this session so the messaging tools act as it. Binding is exclusive: if the identity is already in use by another session, this is declined unless force=true, which evicts the other session. Never pass force=true on your own initiative \u2014 ask the user and get an explicit confirmation first.",{name:V.string().min(1).describe("Name of the identity to bind."),force:V.boolean().default(!1).describe("Evict another session that holds this identity.")},async({name:o,force:s})=>{if(!G.has(o))return S(`choose_identity failed: no identity named "${o}". Create it with create_identity.`,!0);let i=t(),a=kt.get(i)?.token;if(!a)return S("choose_identity failed: this client is not connected through the ours connector (no lease token header). Launch ours via the connector (`ours-mcp proxy`).",!0);let c=Re.get(o);if(c&&c.token!==a)if(!J_(c.pid))I(`auto-reclaiming "${o}" from dead client pid ${c.pid}`),Re.delete(o);else if(s)la.add(c.token),Re.delete(o);else return S(`choose_identity declined: "${o}" is currently bound to another live session. Do not retry with force=true on your own \u2014 tell the user it is in use elsewhere and ask whether to forcibly rebind it here; only retry with force=true after they explicitly confirm.`,!0);let u=[...Re.values()].find(m=>m.token===a&&m.identity!==o)?.identity,l=u&&G.has(u);ap(i,o);let d=G.get(o),f=`Bound to identity "${o}" (${d.cid}).`;return l&&(f+=`
|
|
67
69
|
|
|
68
70
|
Switched away from "${u}" \u2014 if you armed a Monitor for it, TaskStop it now.`),f+=`
|
|
69
71
|
|
|
70
|
-
Ask the user: do you want to arm a message monitor for "${o}"? If yes, use: Monitor({ command: "ours-mcp watch ${o.includes(" ")?`\\"${o}\\"`:o}", description: "ours inbound mail for ${o}", persistent: true })`,S(f)}),e.tool("list_identities","List all identities hosted by this node (name + container id) as a hierarchy \u2014 the root identity first with its roles indented under it \u2014 marking which one is bound to this session and which are in use elsewhere.",{},async()=>{if(
|
|
72
|
+
Ask the user: do you want to arm a message monitor for "${o}"? If yes, use: Monitor({ command: "ours-mcp watch ${o.includes(" ")?`\\"${o}\\"`:o}", description: "ours inbound mail for ${o}", persistent: true })`,S(f)}),e.tool("list_identities","List all identities hosted by this node (name + container id) as a hierarchy \u2014 the root identity first with its roles indented under it \u2014 marking which one is bound to this session and which are in use elsewhere.",{},async()=>{if(G.size===0)return S("No identities yet. Create a root with create_root_identity (or a flat identity with create_identity).");let o=t(),s=kt.get(o)?.token,i=u=>{let l=Re.get(u);return l?l.token===s?" \u2190 this session":J_(l.pid)?" (in use by another session)":"":""},a=le?G.get(le):void 0,c=[];if(a){c.push(`\u2605 ${a.name} \u2014 ${a.cid} (root)${i(a.name)}`);for(let u of G.values())u.name!==a.name&&St(u).roleId!==""&&c.push(` \u2514 ${u.name} \u2014 ${u.cid} (role)${i(u.name)}`);for(let u of G.values())u.name===a.name||St(u).roleId!==""||c.push(`\u2022 ${u.name} \u2014 ${u.cid} (flat, no delegation)${i(u.name)}`)}else{for(let u of G.values())c.push(`\u2022 ${u.name} \u2014 ${u.cid}${i(u.name)}`);c.push("(no root identity yet \u2014 create_root_identity establishes the hierarchy)")}return S(`Identities (${G.size}):
|
|
71
73
|
${c.join(`
|
|
72
|
-
`)}`)}),e.tool("current_identity","Report the identity currently bound to this session (if any), including its place in the identity hierarchy.",{},async()=>{let o=
|
|
74
|
+
`)}`)}),e.tool("current_identity","Report the identity currently bound to this session (if any), including its place in the identity hierarchy.",{},async()=>{let o=X_(t());if("error"in o)return S(o.error);try{let s=St(o.id),i=o.id.name===le?" \u2014 the ROOT identity of this host":s.roleId!==""?` \u2014 role "${s.roleId}" under root "${s.rootName}"`:"",a=s.bio?`
|
|
73
75
|
Bio: ${s.bio}`:"",c=s.persona?`
|
|
74
|
-
Persona: ${s.persona}`:"";return S(`Bound to "${o.id.name}" (${o.id.cid})${i}.${a}${c}`)}catch{return S(`Bound to "${o.id.name}" (${o.id.cid}).`)}}),e.tool("remove_identity","Permanently delete a persisted identity \u2014 its packet and all on-disk state. This cannot be undone.",{name:V.string().min(1).describe("Name of the identity to delete.")},async({name:o})=>{let s=
|
|
75
|
-
${a.map(u=>
|
|
76
|
-
`)}`;return{contents:[{uri:i,mimeType:"text/plain",text:c}]}}),e.tool("generate_invite","Generate an invite to share out-of-band with another agent. The invite carries your identity and display name. If you pass a name, whoever redeems the invite is registered under it; without a name, the redeemer is registered under the name they announce when accepting. Requires a bound identity.",{name:V.string().min(1).optional().describe('Optional name to register the peer who redeems this invite, e.g. "Bob". Omit to register them under their own name on acceptance.')},async({name:o})=>{let{id:s,err:i}=r();if(i)return i;try{let a={};o&&(a.name=o);let c=await X(async l=>{let d=await U(s,"::a2a_messaging::generate_invite",a,l);return
|
|
76
|
+
Persona: ${s.persona}`:"";return S(`Bound to "${o.id.name}" (${o.id.cid})${i}.${a}${c}`)}catch{return S(`Bound to "${o.id.name}" (${o.id.cid}).`)}}),e.tool("remove_identity","Permanently delete a persisted identity \u2014 its packet and all on-disk state. This cannot be undone.",{name:V.string().min(1).describe("Name of the identity to delete.")},async({name:o})=>{let s=G.get(o);if(!s)return S(`remove_identity failed: no identity named "${o}".`,!0);if(o===le){let a=[...G.values()].filter(c=>c.name!==o&&St(c).rootCid===s.cid);if(a.length>0)return S(`remove_identity failed: "${o}" is the root identity and still has ${a.length} role(s): ${a.map(c=>c.name).join(", ")}. Remove the roles first.`,!0)}let i=gv(s);return i?S(`Identity "${o}" removed from memory, but ${i}`,!0):S(`Removed identity "${o}" and its state.`)}),e.resource("inbox","ours://inbox",{description:"Decrypted incoming messages for the bound identity \u2014 auto-notifies on new arrivals."},async()=>{let{id:o,err:s}=r(),i=o?$v(o.name):"ours://inbox";if(s||!o)return{contents:[{uri:i,mimeType:"text/plain",text:"No identity bound to this session."}]};let a=Xe(u=>sa(xe(o,"::actor::list_incoming_messages",u))),c=a.length===0?"Inbox is empty.":`Inbox (${a.length}):
|
|
77
|
+
${a.map(u=>cp(u)).join(`
|
|
78
|
+
`)}`;return{contents:[{uri:i,mimeType:"text/plain",text:c}]}}),e.tool("generate_invite","Generate an invite to share out-of-band with another agent. The invite carries your identity and display name. If you pass a name, whoever redeems the invite is registered under it; without a name, the redeemer is registered under the name they announce when accepting. Requires a bound identity.",{name:V.string().min(1).optional().describe('Optional name to register the peer who redeems this invite, e.g. "Bob". Omit to register them under their own name on acceptance.')},async({name:o})=>{let{id:s,err:i}=r();if(i)return i;try{let a={};o&&(a.name=o);let c=await X(async l=>{let d=await U(s,"::a2a_messaging::generate_invite",a,l);return xv(Buffer.from(d.Reduce("invite").GetBinary()))}),u=o?`Invite for "${o}" created.`:"Invite created \u2014 the contact will be registered under the name the recipient announces when accepting.";return S(`${u} Share this blob out-of-band (they paste it into add_contact):
|
|
77
79
|
|
|
78
|
-
${c}`)}catch(a){return S(`generate_invite failed: ${String(a)}`,!0)}}),e.tool("add_contact","Add a contact from an invite blob produced by another agent's generate_invite. If no name is given, the inviter's embedded display name is used. Also replies to the inviter so they register you back. Requires a bound identity.",{invite:V.string().min(1).describe("The base64 invite blob to redeem."),name:V.string().min(1).optional().describe("Optional custom name for the inviter; defaults to their own name.")},async({invite:o,name:s})=>{let{id:i,err:a}=r();if(a)return a;let c;try{if(c=
|
|
79
|
-
${i.map(f=>`\u2022 ${f.name} \u2014 ${f.container_id}${
|
|
80
|
+
${c}`)}catch(a){return S(`generate_invite failed: ${String(a)}`,!0)}}),e.tool("add_contact","Add a contact from an invite blob produced by another agent's generate_invite. If no name is given, the inviter's embedded display name is used. Also replies to the inviter so they register you back. Requires a bound identity.",{invite:V.string().min(1).describe("The base64 invite blob to redeem."),name:V.string().min(1).optional().describe("Optional custom name for the inviter; defaults to their own name.")},async({invite:o,name:s})=>{let{id:i,err:a}=r();if(a)return a;let c;try{if(c=kI(o),c.length===0)throw new Error("the invite blob is empty")}catch(u){return S(`add_contact failed: ${u instanceof Error?u.message:"the invite blob is not valid."}`,!0)}try{let u=await X(async l=>{let f={invite:i.pw.packet.NewBinaryFromBuffer(c).Attach(l)};s&&(f.name=s);let m=await U(i,"::a2a_messaging::add_contact",f,l),p=m.Reduce("container_id").Visualize(),h=m.Reduce("pending").Visualize(),g=m.Reduce("inviter_name").Visualize(),_=w=>!w||w==="%%NIL";return`Added contact "${_(h)?_(g)?p:g:h}" (${p}).`});return S(u)}catch(u){return S(`add_contact failed: ${String(u)}`,!0)}}),e.tool("list_contacts","List the contacts the bound identity knows about (name + container id), plus any pending local-contact-book introductions awaiting approval.",{},async()=>{let{id:o,err:s}=r();if(s)return s;try{let{contacts:i,pending:a,roots:c,degraded:u}=Xe(f=>({contacts:_I(xe(o,"::a2a_messaging::list_contacts",f)),pending:wI(xe(o,"::actor::list_pending_introductions",f)),roots:$I(xe(o,"::a2a_messaging::list_contact_roots",f)),degraded:iI(xe(o,"::a2a_messaging::list_degraded_contacts",f))})),l=new Map(u.map(f=>[f.cid,f])),d=[];return d.push(i.length===0?"No contacts yet.":`Contacts (${i.length}):
|
|
81
|
+
${i.map(f=>`\u2022 ${f.name} \u2014 ${f.container_id}${xI(c[f.container_id])}${l.has(f.container_id)?` \u2014 \u26A0 keys pending restore (${l.get(f.container_id).queued} queued)`:""}`).join(`
|
|
80
82
|
`)}`),a.length>0&&d.push(`Pending local introductions (${a.length}) \u2014 approve/reject with respond_to_introduction:
|
|
81
83
|
`+a.map(f=>`\u2022 ${f.name} \u2014 ${f.container_id} (${f.queued} queued message${f.queued===1?"":"s"})`).join(`
|
|
82
84
|
`)),S(d.join(`
|
|
83
85
|
|
|
84
|
-
`))}catch(i){return S(`list_contacts failed: ${String(i)}`,!0)}}),e.tool("list_local_contact_book","List the host-local contact book: identities on THIS host that are exposed for inviteless connection. Any of them can be messaged directly with send_message.",{},async()=>{let o=Object.values(
|
|
86
|
+
`))}catch(i){return S(`list_contacts failed: ${String(i)}`,!0)}}),e.tool("list_local_contact_book","List the host-local contact book: identities on THIS host that are exposed for inviteless connection. Any of them can be messaged directly with send_message.",{},async()=>{let o=Object.values(da());if(o.length===0)return S("The local contact book is empty.");let s=t(),i=kt.get(s)?.token,a=i?iv(i)?.identity:void 0,c=o.map(u=>{let l=u.name===a?" \u2190 this session":"";return`\u2022 ${u.name} \u2014 ${u.container_id} (published ${u.published_at})${l}`});return S(`Local contact book (${o.length}):
|
|
85
87
|
${c.join(`
|
|
86
|
-
`)}`)}),e.tool("set_local_book_policy","Change the bound identity's local-contact-book settings: expose (publish/unpublish it in the book) and/or auto_accept (whether local introductions are accepted automatically or queue for approval).",{expose:V.boolean().optional().describe("Publish (true) or remove (false) this identity in the local contact book."),auto_accept:V.boolean().optional().describe("Auto-accept local introductions (false = queue them for approval).")},async({expose:o,auto_accept:s})=>{let{id:i,err:a}=r();if(a)return a;if(o===void 0&&s===void 0)return S("set_local_book_policy: pass expose and/or auto_accept.",!0);let c=[];try{return s!==void 0&&(await X(async u=>{await U(i,"::actor::set_local_policy",{auto_accept:s},u)}),c.push(`auto_accept=${s}`)),o===!0?(await
|
|
87
|
-
${i.map(c=>
|
|
88
|
-
`)}`)}catch(i){return S(`list_incoming_messages failed: ${String(i)}`,!0)}}),e.tool("get_messages",'Fetch the messages the bound identity has not seen yet (status "unread") and mark them "processed". This is the ONLY call that returns message bodies, and each message is delivered exactly once, so reading and acting on it immediately never double-processes \u2014 no acknowledgement call is needed. If you read a message but crash or want to hand it to another session before acting, call defer_messages to put it back to "unread"; otherwise handled messages are garbage-collected automatically. Each message shows its {wire_id} and, if it is a reply, a "\u21B3re <wire_id>" pointer; pass a wire_id as reply_to_wire_id in send_message to reply to that specific message.',{},async()=>{let{id:o,err:s}=r();if(s)return s;try{let i=await X(async a=>{let c=await U(o,"::actor::get_messages",{},a);return
|
|
89
|
-
${i.map(a=>
|
|
88
|
+
`)}`)}),e.tool("set_local_book_policy","Change the bound identity's local-contact-book settings: expose (publish/unpublish it in the book) and/or auto_accept (whether local introductions are accepted automatically or queue for approval).",{expose:V.boolean().optional().describe("Publish (true) or remove (false) this identity in the local contact book."),auto_accept:V.boolean().optional().describe("Auto-accept local introductions (false = queue them for approval).")},async({expose:o,auto_accept:s})=>{let{id:i,err:a}=r();if(a)return a;if(o===void 0&&s===void 0)return S("set_local_book_policy: pass expose and/or auto_accept.",!0);let c=[];try{return s!==void 0&&(await X(async u=>{await U(i,"::actor::set_local_policy",{auto_accept:s},u)}),c.push(`auto_accept=${s}`)),o===!0?(await dv(i),c.push("published in the local contact book")):o===!1&&(pv(i.name),c.push("removed from the local contact book")),S(`Updated "${i.name}": ${c.join("; ")}.`)}catch(u){return S(`set_local_book_policy failed: ${String(u)}`,!0)}}),e.tool("set_bio","Set the bound identity's profile bio (free text). For a role, the bio is embedded in the invites it generates. For the root identity, the refreshed profile is re-pinned into every role so future role invites carry the update.",{bio:V.string().describe("The new bio text (empty string clears it).")},async({bio:o})=>{let{id:s,err:i}=r();if(i)return i;try{await X(async u=>{await U(s,"::a2a_messaging::set_my_bio",{bio:o},u)});let a=0;if(s.name===le){for(let u of G.values())if(u.name!==s.name&&St(u).rootCid===s.cid)try{await ra(s,u),a+=1}catch(l){I(`failed to refresh root profile in role "${u.name}":`,String(l))}}let c=a>0?` Root profile refreshed in ${a} role(s).`:"";return S(`Updated the bio of "${s.name}".${c}`)}catch(a){return S(`set_bio failed: ${String(a)}`,!0)}}),e.tool("set_persona","Set the bound identity's local operating contract (persona, free text). The persona is how the agent behaves when it adopts this identity; it is NEVER shared via invites \u2014 only via the control-plane cluster registry. An agent must ask the user before adopting a persona. Empty string clears it.",{persona:V.string().describe("The new persona text (empty string clears it).")},async({persona:o})=>{let{id:s,err:i}=r();if(i)return i;try{return await X(async a=>{await U(s,"::a2a_messaging::set_my_persona",{persona:o},a)}),S(`Updated the persona of "${s.name}".`)}catch(a){return S(`set_persona failed: ${String(a)}`,!0)}}),e.tool("respond_to_introduction","Approve or reject a pending local-contact-book introduction (see list_contacts for the pending list). Approving registers the contact and delivers any messages it queued while waiting; rejecting drops the introduction and its queue.",{contact:V.string().min(1).describe("Pending introduction to act on (name or container id)."),action:V.enum(["approve","reject"]).describe("approve or reject.")},async({contact:o,action:s})=>{let{id:i,err:a}=r();if(a)return a;try{if(s==="approve"){let u=await X(async l=>{let d=await U(i,"::actor::approve_introduction",{contact:o},l),f=d.Reduce("approved").Visualize(),m=d.Reduce("container_id").Visualize(),p=d.Reduce("flushed").Visualize();return`Approved "${f}" (${m}) \u2014 now a contact. ${p} queued message(s) moved to the inbox (read them with get_messages).`});return Wr(i),S(u)}let c=await X(async u=>{let l=await U(i,"::actor::reject_introduction",{contact:o},u),d=l.Reduce("rejected").Visualize(),f=l.Reduce("dropped_messages").Visualize();return`Rejected the introduction from "${d}" and dropped ${f} queued message(s).`});return S(c)}catch(c){return S(`respond_to_introduction failed: ${String(c)}`,!0)}}),e.tool("send_message","Send an end-to-end-encrypted message to a known contact (by name or container id). If the recipient is not a contact yet, the connection is established automatically when possible: an intra-root sibling (a role under the same root) connects via its delegation cert, and an identity published in the host-local contact book connects via a registrar introduction \u2014 either way the message is delivered with the introduction, no invite needed. To reply to a specific message, pass reply_to_wire_id (the wire_id from get_messages) and optionally reply_to_sentence (1-based index of the sentence you are answering). Requires a bound identity.",{contact:V.string().min(1).describe("Contact name or container id to send to."),text:V.string().min(1).describe("The message text."),reply_to_wire_id:V.string().optional().describe("wire_id (from get_messages) of the message this replies to."),reply_to_sentence:V.number().int().positive().optional().describe("Optional 1-based sentence index in the replied-to message.")},async({contact:o,text:s,reply_to_wire_id:i,reply_to_sentence:a})=>{let{id:c,err:u}=r();if(u)return u;let l=i?a!==void 0?{wire_id:i,sentence:a}:{wire_id:i}:void 0;try{let{wireId:d,deferred:f,queued:m}=await X(async p=>{let h=await U(c,"::a2a_messaging::send_message",{contact:o,text:s,...l?{reply_to:l}:{}},p),g=h.Reduce("deferred");return{wireId:h.Reduce("wire_id").Visualize(),deferred:!g.IsNil(),queued:g.IsNil()?0:Number(h.Reduce("queued").Visualize())}});return S(f?`Message queued for "${o}" (wire_id ${d}) \u2014 the contact's encryption keys are being re-established after an upgrade (contact restore in progress); delivery is automatic once restored (${m} message${m===1?"":"s"} queued).`:`Message sent to "${o}" (wire_id ${d}).`)}catch(d){if(!/Unknown contact/.test(String(d)))return S(`send_message failed: ${String(d)}`,!0);try{let f=qE(c,o),m=f?await DE(c,f,s):await LE(c,o,s);return S(m)}catch(f){return S(`send_message failed: ${String(f)}`,!0)}}}),e.tool("send_file","Send a file to a known contact (by name or container id). Provide EITHER `path` (the server reads the file from disk) OR `data_base64` + `filename` (inline bytes). Files and text are distinct messages \u2014 to caption a file, also send_message. Requires a bound identity.",{contact:V.string().min(1).describe("Contact name or container id to send to."),path:V.string().min(1).optional().describe("Filesystem path to the file to send (preferred)."),data_base64:V.string().min(1).optional().describe("Inline file bytes, base64-encoded (alternative to path)."),filename:V.string().min(1).optional().describe("Filename to advertise (required with data_base64; defaults to basename of path)."),mime:V.string().optional().describe("MIME type (inferred from the path extension when omitted)."),reply_to_wire_id:V.string().optional().describe("wire_id (from get_messages/get_files) this file replies to."),reply_to_sentence:V.number().int().positive().optional().describe("Optional 1-based sentence index in the replied-to item.")},async({contact:o,path:s,data_base64:i,filename:a,mime:c,reply_to_wire_id:u,reply_to_sentence:l})=>{let{id:d,err:f}=r();if(f)return f;if((s?1:0)+(i?1:0)!=1)return S("send_file: provide exactly one of `path` or `data_base64`.",!0);let m,p;try{if(s)m=await kE(s),p=a??yE(s);else{if(!a)return S("send_file: `filename` is required with `data_base64`.",!0);m=Buffer.from(i,"base64"),p=a}}catch(_){return S(`send_file: cannot read file: ${String(_)}`,!0)}let h=c??(s?V_(s):""),g=u?l!==void 0?{wire_id:u,sentence:l}:{wire_id:u}:void 0;try{let _=await X(async b=>{let w=d.pw.packet.NewBinaryFromBuffer(m).Attach(b);return(await U(d,"::a2a_messaging::send_file",{contact:o,filename:p,mime:h,data:w,...g?{reply_to:g}:{}},b)).Reduce("wire_id").Visualize()});return S(`File "${p}" (${m.length} B${h?`, ${h}`:""}) sent to "${o}" (wire_id ${_}).`)}catch(_){return S(`send_file failed: ${String(_)}`,!0)}}),e.tool("remove_contact","Forget a contact (by name or container id) \u2014 drops it from the bound identity's contacts, so you can no longer message them and inbound messages from them are rejected. This is a contacts-layer forget, NOT a key wipe: the per-peer channel key material persists, so re-adding the same peer reuses the existing encrypted channel rather than re-handshaking. Note: if the removed peer is still published in the host-local contact book, a later send_message to it will reconnect through the book. Requires a bound identity.",{contact:V.string().min(1).describe("Contact name or container id to remove.")},async({contact:o})=>{let{id:s,err:i}=r();if(i)return i;try{let a=await X(async c=>{let u=await U(s,"::a2a_messaging::remove_contact",{contact:o},c),l=u.Reduce("removed").Visualize(),d=u.Reduce("container_id").Visualize();return`Removed contact "${l}" (${d}).`});return S(a)}catch(a){return S(`remove_contact failed: ${String(a)}`,!0)}}),e.tool("list_incoming_messages","List ALL messages in the bound identity's inbox (decrypted), each with its id and status (unread/read). A read-only history view \u2014 it does not change any status. To consume new mail use get_messages instead.",{},async()=>{let{id:o,err:s}=r();if(s)return s;try{let i=Xe(c=>sa(xe(o,"::actor::list_incoming_messages",c)));if(i.length===0)return S("Inbox is empty.");let a=i.filter(c=>c.status==="unread").length;return S(`Inbox (${i.length}, ${a} unread):
|
|
89
|
+
${i.map(c=>cp(c)).join(`
|
|
90
|
+
`)}`)}catch(i){return S(`list_incoming_messages failed: ${String(i)}`,!0)}}),e.tool("get_messages",'Fetch the messages the bound identity has not seen yet (status "unread") and mark them "processed". This is the ONLY call that returns message bodies, and each message is delivered exactly once, so reading and acting on it immediately never double-processes \u2014 no acknowledgement call is needed. If you read a message but crash or want to hand it to another session before acting, call defer_messages to put it back to "unread"; otherwise handled messages are garbage-collected automatically. Each message shows its {wire_id} and, if it is a reply, a "\u21B3re <wire_id>" pointer; pass a wire_id as reply_to_wire_id in send_message to reply to that specific message.',{},async()=>{let{id:o,err:s}=r();if(s)return s;try{let i=await X(async a=>{let c=await U(o,"::actor::get_messages",{},a);return sa(c.Reduce("messages"))});return Wr(o),i.length===0?S("No new messages."):S(`${i.length} new message(s):
|
|
91
|
+
${i.map(a=>cp(a,!1)).join(`
|
|
90
92
|
`)}
|
|
91
93
|
|
|
92
|
-
These are now marked processed (auto-GC'd later). To hand any back to another session: defer_messages({ msg_ids: [${i.map(a=>a.msg_id).join(", ")}] }).`)}catch(i){return S(`get_messages failed: ${String(i)}`,!0)}}),e.tool("defer_messages",`Put handled messages back into the queue (status "unread") so another session's get_messages picks them up. Works on messages you have read (status "processed") and even ones already queued for GC ("ready_to_delete"), so a message stays recoverable across a full GC cycle.`,{msg_ids:V.array(V.number().int()).min(1).describe("Message ids (from get_messages) to defer back to unread.")},async({msg_ids:o})=>{let{id:s,err:i}=r();if(i)return i;try{let a=await X(async c=>(await U(s,"::actor::defer_messages",{msg_ids:o},c)).Reduce("deferred").Visualize());return
|
|
94
|
+
These are now marked processed (auto-GC'd later). To hand any back to another session: defer_messages({ msg_ids: [${i.map(a=>a.msg_id).join(", ")}] }).`)}catch(i){return S(`get_messages failed: ${String(i)}`,!0)}}),e.tool("defer_messages",`Put handled messages back into the queue (status "unread") so another session's get_messages picks them up. Works on messages you have read (status "processed") and even ones already queued for GC ("ready_to_delete"), so a message stays recoverable across a full GC cycle.`,{msg_ids:V.array(V.number().int()).min(1).describe("Message ids (from get_messages) to defer back to unread.")},async({msg_ids:o})=>{let{id:s,err:i}=r();if(i)return i;try{let a=await X(async c=>(await U(s,"::actor::defer_messages",{msg_ids:o},c)).Reduce("deferred").Visualize());return Wr(s),S(`Deferred ${a} message(s) back to unread.`)}catch(a){return S(`defer_messages failed: ${String(a)}`,!0)}}),e.tool("list_incoming_files","List received files (metadata only \u2014 does not retrieve bytes or change status). Use get_files to pull the bytes to disk. Requires a bound identity.",{},async()=>{let{id:o,err:s}=r();if(s)return s;try{let i=Xe(a=>vI(xe(o,"::actor::list_incoming_files",a)));return S(i)}catch(i){return S(`list_incoming_files failed: ${String(i)}`,!0)}}),e.tool("get_files",'Retrieve received files that have not been pulled yet: writes each to disk under the identity state dir and returns its path + metadata. Flips them to "processed" \u2014 the sole place file bytes leave the packet. Requires a bound identity.',{},async()=>{let{id:o,err:s}=r();if(s)return s;try{let i=await X(async a=>{let c=await U(o,"::actor::get_files",{},a);return await bI(o,c.Reduce("files"))});return Wr(o),S(i)}catch(i){return S(`get_files failed: ${String(i)}`,!0)}});let n=()=>{let o=le?G.get(le):void 0;return o?{root:o}:{err:S("No root identity exists on this host \u2014 create one with create_root_identity first.",!0)}};return e.tool("bind_monitoring_proxy","Start binding a browser (messenger) account as this host's monitoring & control proxy. PREREQUISITE: the browser account must already be a contact of the ROOT identity (invite exchange). This generates a 6-digit code (5-minute expiry, 3 attempts) bound to that contact and shows it HERE \u2014 read it to the user, who enters it in the messenger's Control Panel. On a successful code verification the contact becomes the monitoring proxy: it receives the monitoring feed and may manage agents (create, edit bios, toggle monitoring, request invites) through the root.",{contact:V.string().min(1).describe("The root's contact (name or container id) to bind as the proxy.")},async({contact:o})=>{let{root:s,err:i}=n();if(i)return i;try{let a=String(ov(0,1e6)).padStart(6,"0"),c=await X(async u=>(await U(s,"::a2a_messaging::set_proxy_pending",{code:a,proxy:o},u)).Reduce("proxy_cid").Visualize());return S(`Proxy binding started for contact "${o}" (${c}).
|
|
93
95
|
|
|
94
96
|
Verification code: ${a}
|
|
95
97
|
|
|
96
|
-
Tell the user to enter this code in the messenger's Control Panel within 5 minutes (3 attempts). Do NOT send the code over ours \u2014 it must travel out-of-band (this terminal counts).`)}catch(a){return S(`bind_monitoring_proxy failed: ${String(a)}`,!0)}}),e.tool("get_monitoring_status","Report the monitoring & control state of this host: the root's bound proxy (if any), a pending proxy verification, queued copies/requests, and which agents have monitoring enabled.",{},async()=>{let{root:o,err:s}=n();if(s)return s;try{let i=
|
|
98
|
+
Tell the user to enter this code in the messenger's Control Panel within 5 minutes (3 attempts). Do NOT send the code over ours \u2014 it must travel out-of-band (this terminal counts).`)}catch(a){return S(`bind_monitoring_proxy failed: ${String(a)}`,!0)}}),e.tool("get_monitoring_status","Report the monitoring & control state of this host: the root's bound proxy (if any), a pending proxy verification, queued copies/requests, and which agents have monitoring enabled.",{},async()=>{let{root:o,err:s}=n();if(s)return s;try{let i=as(o),a=[];a.push(`Root "${o.name}" (${o.cid}):`),a.push(i.proxyCid?`\u2022 monitoring proxy bound: ${i.proxyCid}`:"\u2022 no monitoring proxy bound"),i.proxyPending&&a.push("\u2022 a proxy code verification is pending"),i.copiesQueued>0&&a.push(`\u2022 ${i.copiesQueued} monitoring cop${i.copiesQueued===1?"y":"ies"} queued for forwarding`),i.controlQueued>0&&a.push(`\u2022 ${i.controlQueued} control request(s) queued`);let c=UE(o);return a.push(""),a.push(c.length===0?"No agents (roles) under this root.":`Agents (${c.length}):
|
|
97
99
|
${c.map(u=>`\u2022 ${u.name} \u2014 monitoring ${u.monitoring?"ON":"off"}${u.bio?` \u2014 ${u.bio}`:""}`).join(`
|
|
98
100
|
`)}`),S(a.join(`
|
|
99
|
-
`))}catch(i){return S(`get_monitoring_status failed: ${String(i)}`,!0)}}),e}function
|
|
101
|
+
`))}catch(i){return S(`get_monitoring_status failed: ${String(i)}`,!0)}}),e}function RI(t){return new Promise((e,r)=>{let n="";t.on("data",o=>n+=o),t.on("end",()=>{try{e(JSON.parse(n))}catch(o){r(o)}}),t.on("error",r)})}var Un=null,up=!1;function tv(){Un||(Un=setInterval(()=>{up||(up=!0,(async()=>{try{for(let t of G.values()){try{await X(async e=>{await U(t,"::actor::gc",{},e)})}catch(e){I(`gc(${t.name}) failed:`,String(e))}await wv(t)}}finally{up=!1}})())},B_),Un.unref?.(),I(`message GC timer armed (every ${B_}ms)`))}function rv(){Un&&(clearInterval(Un),Un=null)}async function TI(){if(PE==="stdio"){let n=ev(()=>"stdio");oa.set("stdio",n),kt.set("stdio",{token:"stdio-local",pid:process.pid});let o=new Wi;await n.connect(o),I("MCP stdio transport connected, booting wrapper\u2026"),await Q_(),tv(),I(`MCP server v${es} ready (transport=stdio, identities=${G.size}, state=${Qe}, broker=${ia})`);let s=()=>{rv();for(let i of G.values())ua(i);process.exit(0)};process.on("SIGINT",s),process.on("SIGTERM",s);return}I("booting wrapper\u2026"),await Q_(),tv(),I(`wrapper ready (identities=${G.size}), starting HTTP server\u2026`);let t={},e=wE(async(n,o)=>{let s=new URL(n.url,`http://localhost:${rp}`);if(n.method==="GET"&&s.pathname==="/state-dir"){o.writeHead(200,{"Content-Type":"application/json"}),o.end(JSON.stringify({stateDir:Qe,version:es,compat:1}));return}if(n.method==="GET"&&(s.pathname==="/version"||s.pathname==="/info")){o.writeHead(200,{"Content-Type":"application/json"}),o.end(JSON.stringify({name:"ours",version:es,compat:1,protocol:yv,pid:process.pid,stateDir:Qe}));return}if(n.method==="GET"&&s.pathname==="/identities"){if(!np(n,o))return;o.writeHead(200,{"Content-Type":"application/json"}),o.end(JSON.stringify({identities:[...G.values()].map(i=>({name:i.name}))}));return}{let i=/^\/identities\/([^/]+)\/notifications$/.exec(s.pathname);if(n.method==="GET"&&i){if(!np(n,o))return;let a=decodeURIComponent(i[1]);if(dp(a)!==null){o.writeHead(400,{"Content-Type":"application/json"}),o.end(JSON.stringify({error:"invalid identity name"}));return}await fI(n,o,a,s.searchParams.get("since"));return}}if(s.pathname!=="/mcp"){o.writeHead(404,{"Content-Type":"text/plain"}),o.end("Not found");return}if(np(n,o))try{if(n.method==="POST"){let i=await RI(n),a=n.headers["mcp-session-id"],c=n.headers["x-ours-lease-token"],u=n.headers["x-ours-client-pid"],l=u?parseInt(u,10):void 0,d={token:c,pid:Number.isInteger(l)?l:void 0};if(a&&t[a])kt.set(a,d),await t[a].handleRequest(n,o,i);else if(!a&&fo(i)){let f=new ea({sessionIdGenerator:()=>vE(),onsessioninitialized:p=>{t[p]=f,kt.set(p,d),oa.set(p,m),I(`session ${p.slice(0,8)}\u2026 initialized`)}}),m=ev(()=>f.sessionId??"pending");f.onclose=()=>{let p=f.sessionId;p&&(delete t[p],oa.delete(p),kt.delete(p),I(`session ${p.slice(0,8)}\u2026 closed (lease kept)`))},await m.connect(f),await f.handleRequest(n,o,i)}else o.writeHead(400,{"Content-Type":"application/json"}),o.end(JSON.stringify({jsonrpc:"2.0",error:{code:-32e3,message:"Bad Request: No valid session ID"},id:null}))}else if(n.method==="GET"){let i=n.headers["mcp-session-id"];if(!i||!t[i]){o.writeHead(400,{"Content-Type":"text/plain"}),o.end("Invalid or missing session ID");return}await t[i].handleRequest(n,o)}else if(n.method==="DELETE"){let i=n.headers["mcp-session-id"];if(!i||!t[i]){o.writeHead(400,{"Content-Type":"text/plain"}),o.end("Invalid or missing session ID");return}let a=kt.get(i)?.token??n.headers["x-ours-lease-token"];if(a){for(let[c,u]of[...Re])u.token===a&&Re.delete(c);la.delete(a),is(),I(`lease released by token \u2026${a.slice(-6)}`)}await t[i].handleRequest(n,o)}else o.writeHead(405,{"Content-Type":"text/plain"}),o.end("Method not allowed")}catch(i){I("HTTP handler error:",String(i)),o.headersSent||(o.writeHead(500,{"Content-Type":"application/json"}),o.end(JSON.stringify({jsonrpc:"2.0",error:{code:-32603,message:"Internal server error"},id:null})))}});e.requestTimeout=0,e.listen(rp,"127.0.0.1",()=>{I(`MCP server v${es} ready (transport=http, port=${rp}, visibility=${lp}, identities=${G.size}, state=${Qe}, broker=${ia})`)});let r=async()=>{I("shutting down\u2026"),rv();for(let n of Object.keys(t)){try{await t[n].close()}catch{}delete t[n]}for(let n of G.values())ua(n);e.close(),process.exit(0)};process.on("SIGINT",r),process.on("SIGTERM",r)}TI().catch(t=>{I(`fatal startup error: ${t?.stack??t}`),process.exit(1)});export{fE as formatVersionAdvisory,dp as validateName};
|