@ours.network/mcp 0.11.2 → 0.12.0-nightly.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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 Sv=Object.create;var ya=Object.defineProperty;var zv=Object.getOwnPropertyDescriptor;var Rv=Object.getOwnPropertyNames;var Tv=Object.getPrototypeOf,Pv=Object.prototype.hasOwnProperty;var R=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),_a=(t,e)=>{for(var r in e)ya(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&&ya(t,o,{get:()=>e[o],enumerable:!(n=zv(e,o))||n.enumerable});return t};var Rp=(t,e,r)=>(r=t!=null?Sv(Tv(t)):{},Ev(e||!t||!t.__esModule?ya(r,"default",{value:t,enumerable:!0}):r,t));var So=R(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 xo=class{};se._CodeOrName=xo;se.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Zr=class extends xo{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 dt=class extends xo{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=dt;se.nil=new dt("");function $h(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Qu(r,e[n]),r.push(t[++n]);return new dt(r)}se._=$h;var Yu=new dt("+");function xh(t,...e){let r=[ko(t[0])],n=0;for(;n<e.length;)r.push(Yu),Qu(r,e[n]),r.push(Yu,ko(t[++n]));return E0(r),new dt(r)}se.str=xh;function Qu(t,e){e instanceof dt?t.push(...e._items):e instanceof Zr?t.push(e):t.push(N0(e))}se.addCodeArg=Qu;function E0(t){let e=1;for(;e<t.length-1;){if(t[e]===Yu){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:xh`${t}${e}`}se.strConcat=O0;function N0(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:ko(Array.isArray(t)?t.join(","):t)}function C0(t){return new dt(ko(t))}se.stringify=C0;function ko(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}se.safeStringify=ko;function A0(t){return typeof t=="string"&&se.IDENTIFIER.test(t)?new dt(`.${t}`):$h`[${t}]`}se.getProperty=A0;function j0(t){if(typeof t=="string"&&se.IDENTIFIER.test(t))return new dt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}se.getEsmExportName=j0;function Z0(t){return new dt(t.toString())}se.regexpCode=Z0});var tl=R(We=>{"use strict";Object.defineProperty(We,"__esModule",{value:!0});We.ValueScope=We.ValueScopeName=We.Scope=We.varKinds=We.UsedValueState=void 0;var Ke=So(),Xu=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},di;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(di||(We.UsedValueState=di={}));We.varKinds={const:new Ke.Name("const"),let:new Ke.Name("let"),var:new Ke.Name("var")};var pi=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ke.Name?e:this.name(e)}name(e){return new Ke.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}}};We.Scope=pi;var fi=class extends Ke.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ke._)`.${new Ke.Name(r)}[${n}]`}};We.ValueScopeName=fi;var M0=(0,Ke._)`\n`,el=class extends pi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?M0:Ke.nil}}get(){return this._scope}name(e){return new fi(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,Ke._)`${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=Ke.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,di.Started);let l=r(u);if(l){let d=this.opts.es5?We.varKinds.var:We.varKinds.const;s=(0,Ke._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ke._)`${s}${l}${this.opts._n}`;else throw new Xu(u);c.set(u,di.Completed)})}return s}};We.ValueScope=el});var J=R(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=So(),bt=tl(),rr=So();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 yi=tl();Object.defineProperty(K,"Scope",{enumerable:!0,get:function(){return yi.Scope}});Object.defineProperty(K,"ValueScope",{enumerable:!0,get:function(){return yi.ValueScope}});Object.defineProperty(K,"ValueScopeName",{enumerable:!0,get:function(){return yi.ValueScopeName}});Object.defineProperty(K,"varKinds",{enumerable:!0,get:function(){return yi.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}},rl=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?bt.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=$n(this.rhs,e,r)),this}get names(){return this.rhs instanceof re._CodeOrName?this.rhs.names:{}}},mi=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=$n(this.rhs,e,r),this}get names(){let e=this.lhs instanceof re.Name?{}:{...this.lhs.names};return gi(e,this.rhs)}},nl=class extends mi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},ol=class extends Lt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},sl=class extends Lt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},il=class extends Lt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},al=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=$n(this.code,e,r),this}get names(){return this.code instanceof re._CodeOrName?this.code.names:{}}},zo=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 zo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},cl=class extends zo{},wn=class extends Vt{};wn.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 wn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(kh(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=$n(this.condition,e,r),this}get names(){let e=super.names;return gi(e,this.condition),this.else&&Dr(e,this.else.names),e}};Mr.kind="if";var qr=class extends Vt{};qr.kind="for";var ul=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=$n(this.iteration,e,r),this}get names(){return Dr(super.names,this.iteration.names)}},ll=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?bt.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=gi(super.names,this.from);return gi(e,this.to)}},hi=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=$n(this.iterable,e,r),this}get names(){return Dr(super.names,this.iterable.names)}},Ro=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)}};Ro.kind="func";var To=class extends zo{render(e){return"return "+super.render(e)}};To.kind="return";var dl=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}},Po=class extends Vt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Po.kind="catch";var Eo=class extends Vt{render(e){return"finally"+super.render(e)}};Eo.kind="finally";var pl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
4
- `:""},this._extScope=e,this._scope=new bt.Scope({parent:e}),this._nodes=[new cl]}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 rl(e,s,n)),s}const(e,r,n){return this._def(bt.varKinds.const,e,r,n)}let(e,r,n){return this._def(bt.varKinds.let,e,r,n)}var(e,r,n){return this._def(bt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new mi(e,r,n))}add(e,r){return this._leafNode(new nl(e,K.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==re.nil&&this._leafNode(new al(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 wn)}endIf(){return this._endBlockNode(Mr,wn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new ul(e),r)}forRange(e,r,n,o,s=this.opts.es5?bt.varKinds.var:bt.varKinds.let){let i=this._scope.toName(e);return this._for(new ll(s,i,r,n),()=>o(i))}forOf(e,r,n,o=bt.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 hi("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?bt.varKinds.var:bt.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 hi("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(qr)}label(e){return this._leafNode(new ol(e))}break(e){return this._leafNode(new sl(e))}return(e){let r=new To;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(To)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new dl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Po(s),r(s)}return n&&(this._currNode=o.finally=new Eo,this.code(n)),this._endBlockNode(Po,Eo)}throw(e){return this._leafNode(new il(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 Ro(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Ro)}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=pl;function Dr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function gi(t,e){return e instanceof re._CodeOrName?Dr(t,e.names):t}function $n(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 kh(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,re._)`!${fl(t)}`}K.not=kh;var D0=Sh(K.operators.AND);function L0(...t){return t.reduce(D0)}K.and=L0;var V0=Sh(K.operators.OR);function U0(...t){return t.reduce(V0)}K.or=U0;function Sh(t){return(e,r)=>e===re.nil?r:r===re.nil?e:(0,re._)`${fl(e)} ${t} ${fl(r)}`}function fl(t){return t instanceof re.Name?t:(0,re._)`(${t})`}});var ne=R(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=So();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:(Th(t,e),!Ph(e,t.self.RULES.all))}W.alwaysValidSchema=H0;function Th(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]||Oh(t,`unknown keyword: "${s}"`)}W.checkUnknownRules=Th;function Ph(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}W.schemaHasRules=Ph;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 Eh(decodeURIComponent(t))}W.unescapeFragment=K0;function W0(t){return encodeURIComponent(hl(t))}W.escapeFragment=W0;function hl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}W.escapeJsonPointer=hl;function Eh(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}W.unescapeJsonPointer=Eh;function Y0(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}W.eachItem=Y0;function zh({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:zh({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} || {}`),gl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Ih}),items:zh({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 Ih(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ue._)`{}`);return e!==void 0&&gl(t,r,e),r}W.evaluatedPropsToName=Ih;function gl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ue._)`${e}${(0,ue.getProperty)(n)}`,!0))}W.setEvaluated=gl;var Rh={};function Q0(t,e){return t.scopeValue("func",{ref:e,code:Rh[e.code]||(Rh[e.code]=new F0._Code(e.code))})}W.useFunc=Q0;var ml;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(ml||(W.Type=ml={}));function X0(t,e,r){if(t instanceof ue.Name){let n=e===ml.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():"/"+hl(t)}W.getErrorPath=X0;function Oh(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=Oh});var Ut=R(yl=>{"use strict";Object.defineProperty(yl,"__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")};yl.default=ek});var Io=R(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(),_i=ne(),Ue=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=Ah(t,e,r);n??(i||a)?Nh(s,c):Ch(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=Ah(t,e,r);Nh(o,a),s||i||Ch(n,Ue.default.vErrors)}Ze.reportExtraError=rk;function nk(t,e){t.assign(Ue.default.errors,e),t.if((0,oe._)`${Ue.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,oe._)`${Ue.default.vErrors}.length`,e),()=>t.assign(Ue.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,Ue.default.errors,a=>{t.const(i,(0,oe._)`${Ue.default.vErrors}[${a}]`),t.if((0,oe._)`${i}.instancePath === undefined`,()=>t.assign((0,oe._)`${i}.instancePath`,(0,oe.strConcat)(Ue.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 Nh(t,e){let r=t.const("err",e);t.if((0,oe._)`${Ue.default.vErrors} === null`,()=>t.assign(Ue.default.vErrors,(0,oe._)`[${r}]`),(0,oe._)`${Ue.default.vErrors}.push(${r})`),t.code((0,oe._)`${Ue.default.errors}++`)}function Ch(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 Ah(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,_i.getErrorPath)(e,_i.Type.Str)}`:t;return[Ue.default.instancePath,(0,oe.strConcat)(Ue.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,_i.getErrorPath)(r,_i.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}`],[Ue.default.data,s]),u&&n.push([Lr.propertyName,u])}});var Zh=R(xn=>{"use strict";Object.defineProperty(xn,"__esModule",{value:!0});xn.boolOrEmptySchema=xn.topBoolOrEmptySchema=void 0;var uk=Io(),lk=J(),dk=Ut(),pk={message:"boolean schema is false"};function fk(t){let{gen:e,schema:r,validateName:n}=t;r===!1?jh(t,!1):typeof r=="object"&&r.$async===!0?e.return(dk.default.data):(e.assign((0,lk._)`${n}.errors`,null),e.return(!0))}xn.topBoolOrEmptySchema=fk;function mk(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),jh(t)):r.var(e,!0)}xn.boolOrEmptySchema=mk;function jh(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 _l=R(kn=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});kn.getRules=kn.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)}kn.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:{}}}kn.getRules=_k});var vl=R(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&&Mh(t,n)}nr.schemaHasRulesForType=vk;function Mh(t,e){return e.rules.some(r=>qh(t,r))}nr.shouldUseGroup=Mh;function qh(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=qh});var Oo=R(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=_l(),wk=vl(),$k=Io(),B=J(),Dh=ne(),Sn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Sn||(Me.DataType=Sn={}));function xk(t){let e=Lh(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 Lh(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=Lh;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=wl(e,n,o.strictNumbers,Sn.Wrong);r.if(a,()=>{s.length?zk(t,e,s):$l(t)})}return i}Me.coerceAndCheckDataType=kk;var Vh=new Set(["string","number","integer","boolean","null"]);function Sk(t,e){return e?t.filter(r=>Vh.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(wl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,B._)`${a} !== undefined`);for(let u of r)(Vh.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),$l(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
3
+ var zv=Object.create;var _a=Object.defineProperty;var Rv=Object.getOwnPropertyDescriptor;var Tv=Object.getOwnPropertyNames;var Pv=Object.getPrototypeOf,Ev=Object.prototype.hasOwnProperty;var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),va=(t,e)=>{for(var r in e)_a(t,r,{get:e[r],enumerable:!0})},Iv=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Tv(e))!Ev.call(t,o)&&o!==r&&_a(t,o,{get:()=>e[o],enumerable:!(n=Rv(e,o))||n.enumerable});return t};var Tp=(t,e,r)=>(r=t!=null?zv(Pv(t)):{},Iv(e||!t||!t.__esModule?_a(r,"default",{value:t,enumerable:!0}):r,t));var So=T(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 xo=class{};se._CodeOrName=xo;se.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Zr=class extends xo{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 pt=class extends xo{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=pt;se.nil=new pt("");function xh(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Xu(r,e[n]),r.push(t[++n]);return new pt(r)}se._=xh;var Qu=new pt("+");function kh(t,...e){let r=[ko(t[0])],n=0;for(;n<e.length;)r.push(Qu),Xu(r,e[n]),r.push(Qu,ko(t[++n]));return I0(r),new pt(r)}se.str=kh;function Xu(t,e){e instanceof pt?t.push(...e._items):e instanceof Zr?t.push(e):t.push(C0(e))}se.addCodeArg=Xu;function I0(t){let e=1;for(;e<t.length-1;){if(t[e]===Qu){let r=O0(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function O0(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 N0(t,e){return e.emptyStr()?t:t.emptyStr()?e:kh`${t}${e}`}se.strConcat=N0;function C0(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:ko(Array.isArray(t)?t.join(","):t)}function A0(t){return new pt(ko(t))}se.stringify=A0;function ko(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}se.safeStringify=ko;function j0(t){return typeof t=="string"&&se.IDENTIFIER.test(t)?new pt(`.${t}`):xh`[${t}]`}se.getProperty=j0;function Z0(t){if(typeof t=="string"&&se.IDENTIFIER.test(t))return new pt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}se.getEsmExportName=Z0;function M0(t){return new pt(t.toString())}se.regexpCode=M0});var rl=T(We=>{"use strict";Object.defineProperty(We,"__esModule",{value:!0});We.ValueScope=We.ValueScopeName=We.Scope=We.varKinds=We.UsedValueState=void 0;var Ke=So(),el=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},di;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(di||(We.UsedValueState=di={}));We.varKinds={const:new Ke.Name("const"),let:new Ke.Name("let"),var:new Ke.Name("var")};var pi=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ke.Name?e:this.name(e)}name(e){return new Ke.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}}};We.Scope=pi;var fi=class extends Ke.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ke._)`.${new Ke.Name(r)}[${n}]`}};We.ValueScopeName=fi;var q0=(0,Ke._)`\n`,tl=class extends pi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?q0:Ke.nil}}get(){return this._scope}name(e){return new fi(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,Ke._)`${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=Ke.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,di.Started);let l=r(u);if(l){let d=this.opts.es5?We.varKinds.var:We.varKinds.const;s=(0,Ke._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ke._)`${s}${l}${this.opts._n}`;else throw new el(u);c.set(u,di.Completed)})}return s}};We.ValueScope=tl});var G=T(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=So(),wt=rl(),or=So();Object.defineProperty(K,"_",{enumerable:!0,get:function(){return or._}});Object.defineProperty(K,"str",{enumerable:!0,get:function(){return or.str}});Object.defineProperty(K,"strConcat",{enumerable:!0,get:function(){return or.strConcat}});Object.defineProperty(K,"nil",{enumerable:!0,get:function(){return or.nil}});Object.defineProperty(K,"getProperty",{enumerable:!0,get:function(){return or.getProperty}});Object.defineProperty(K,"stringify",{enumerable:!0,get:function(){return or.stringify}});Object.defineProperty(K,"regexpCode",{enumerable:!0,get:function(){return or.regexpCode}});Object.defineProperty(K,"Name",{enumerable:!0,get:function(){return or.Name}});var yi=rl();Object.defineProperty(K,"Scope",{enumerable:!0,get:function(){return yi.Scope}});Object.defineProperty(K,"ValueScope",{enumerable:!0,get:function(){return yi.ValueScope}});Object.defineProperty(K,"ValueScopeName",{enumerable:!0,get:function(){return yi.ValueScopeName}});Object.defineProperty(K,"varKinds",{enumerable:!0,get:function(){return yi.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}},nl=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?wt.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=$n(this.rhs,e,r)),this}get names(){return this.rhs instanceof re._CodeOrName?this.rhs.names:{}}},mi=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=$n(this.rhs,e,r),this}get names(){let e=this.lhs instanceof re.Name?{}:{...this.lhs.names};return gi(e,this.rhs)}},ol=class extends mi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},sl=class extends Lt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},il=class extends Lt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},al=class extends Lt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},cl=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=$n(this.code,e,r),this}get names(){return this.code instanceof re._CodeOrName?this.code.names:{}}},zo=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)||(D0(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),{})}},Ut=class extends zo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},ul=class extends zo{},wn=class extends Ut{};wn.kind="else";var Mr=class t extends Ut{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 wn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Sh(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=$n(this.condition,e,r),this}get names(){let e=super.names;return gi(e,this.condition),this.else&&Dr(e,this.else.names),e}};Mr.kind="if";var qr=class extends Ut{};qr.kind="for";var ll=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=$n(this.iteration,e,r),this}get names(){return Dr(super.names,this.iteration.names)}},dl=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?wt.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=gi(super.names,this.from);return gi(e,this.to)}},hi=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=$n(this.iterable,e,r),this}get names(){return Dr(super.names,this.iterable.names)}},Ro=class extends Ut{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)}};Ro.kind="func";var To=class extends zo{render(e){return"return "+super.render(e)}};To.kind="return";var pl=class extends Ut{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}},Po=class extends Ut{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Po.kind="catch";var Eo=class extends Ut{render(e){return"finally"+super.render(e)}};Eo.kind="finally";var fl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
4
+ `:""},this._extScope=e,this._scope=new wt.Scope({parent:e}),this._nodes=[new ul]}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 nl(e,s,n)),s}const(e,r,n){return this._def(wt.varKinds.const,e,r,n)}let(e,r,n){return this._def(wt.varKinds.let,e,r,n)}var(e,r,n){return this._def(wt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new mi(e,r,n))}add(e,r){return this._leafNode(new ol(e,K.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==re.nil&&this._leafNode(new cl(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 wn)}endIf(){return this._endBlockNode(Mr,wn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new ll(e),r)}forRange(e,r,n,o,s=this.opts.es5?wt.varKinds.var:wt.varKinds.let){let i=this._scope.toName(e);return this._for(new dl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=wt.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 hi("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?wt.varKinds.var:wt.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 hi("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(qr)}label(e){return this._leafNode(new sl(e))}break(e){return this._leafNode(new il(e))}return(e){let r=new To;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(To)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new pl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Po(s),r(s)}return n&&(this._currNode=o.finally=new Eo,this.code(n)),this._endBlockNode(Po,Eo)}throw(e){return this._leafNode(new al(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 Ro(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Ro)}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=fl;function Dr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function gi(t,e){return e instanceof re._CodeOrName?Dr(t,e.names):t}function $n(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 D0(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Sh(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,re._)`!${ml(t)}`}K.not=Sh;var V0=zh(K.operators.AND);function L0(...t){return t.reduce(V0)}K.and=L0;var U0=zh(K.operators.OR);function F0(...t){return t.reduce(U0)}K.or=F0;function zh(t){return(e,r)=>e===re.nil?r:r===re.nil?e:(0,re._)`${ml(e)} ${t} ${ml(r)}`}function ml(t){return t instanceof re.Name?t:(0,re._)`(${t})`}});var ne=T(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=G(),B0=So();function H0(t){let e={};for(let r of t)e[r]=!0;return e}W.toHash=H0;function G0(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Ph(t,e),!Eh(e,t.self.RULES.all))}W.alwaysValidSchema=G0;function Ph(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]||Nh(t,`unknown keyword: "${s}"`)}W.checkUnknownRules=Ph;function Eh(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}W.schemaHasRules=Eh;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 K0({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=K0;function W0(t){return Ih(decodeURIComponent(t))}W.unescapeFragment=W0;function Y0(t){return encodeURIComponent(gl(t))}W.escapeFragment=Y0;function gl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}W.escapeJsonPointer=gl;function Ih(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}W.unescapeJsonPointer=Ih;function Q0(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}W.eachItem=Q0;function Rh({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:Rh({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} || {}`),yl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Oh}),items:Rh({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 Oh(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ue._)`{}`);return e!==void 0&&yl(t,r,e),r}W.evaluatedPropsToName=Oh;function yl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ue._)`${e}${(0,ue.getProperty)(n)}`,!0))}W.setEvaluated=yl;var Th={};function X0(t,e){return t.scopeValue("func",{ref:e,code:Th[e.code]||(Th[e.code]=new B0._Code(e.code))})}W.useFunc=X0;var hl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(hl||(W.Type=hl={}));function ek(t,e,r){if(t instanceof ue.Name){let n=e===hl.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():"/"+gl(t)}W.getErrorPath=ek;function Nh(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=Nh});var Ft=T(_l=>{"use strict";Object.defineProperty(_l,"__esModule",{value:!0});var je=G(),tk={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")};_l.default=tk});var Io=T(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=G(),_i=ne(),Ue=Ft();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 rk(t,e=Ze.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=jh(t,e,r);n??(i||a)?Ch(s,c):Ah(o,(0,oe._)`[${c}]`)}Ze.reportError=rk;function nk(t,e=Ze.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=jh(t,e,r);Ch(o,a),s||i||Ah(n,Ue.default.vErrors)}Ze.reportExtraError=nk;function ok(t,e){t.assign(Ue.default.errors,e),t.if((0,oe._)`${Ue.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,oe._)`${Ue.default.vErrors}.length`,e),()=>t.assign(Ue.default.vErrors,null)))}Ze.resetErrorsCount=ok;function sk({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,Ue.default.errors,a=>{t.const(i,(0,oe._)`${Ue.default.vErrors}[${a}]`),t.if((0,oe._)`${i}.instancePath === undefined`,()=>t.assign((0,oe._)`${i}.instancePath`,(0,oe.strConcat)(Ue.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=sk;function Ch(t,e){let r=t.const("err",e);t.if((0,oe._)`${Ue.default.vErrors} === null`,()=>t.assign(Ue.default.vErrors,(0,oe._)`[${r}]`),(0,oe._)`${Ue.default.vErrors}.push(${r})`),t.code((0,oe._)`${Ue.default.errors}++`)}function Ah(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 Vr={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 jh(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,oe._)`{}`:ik(t,e,r)}function ik(t,e,r={}){let{gen:n,it:o}=t,s=[ak(o,r),ck(t,r)];return uk(t,e,s),n.object(...s)}function ak({errorPath:t},{instancePath:e}){let r=e?(0,oe.str)`${t}${(0,_i.getErrorPath)(e,_i.Type.Str)}`:t;return[Ue.default.instancePath,(0,oe.strConcat)(Ue.default.instancePath,r)]}function ck({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,_i.getErrorPath)(r,_i.Type.Str)}`),[Vr.schemaPath,o]}function uk(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([Vr.keyword,o],[Vr.params,typeof e=="function"?e(t):e||(0,oe._)`{}`]),c.messages&&n.push([Vr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Vr.schema,i],[Vr.parentSchema,(0,oe._)`${l}${d}`],[Ue.default.data,s]),u&&n.push([Vr.propertyName,u])}});var Mh=T(xn=>{"use strict";Object.defineProperty(xn,"__esModule",{value:!0});xn.boolOrEmptySchema=xn.topBoolOrEmptySchema=void 0;var lk=Io(),dk=G(),pk=Ft(),fk={message:"boolean schema is false"};function mk(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Zh(t,!1):typeof r=="object"&&r.$async===!0?e.return(pk.default.data):(e.assign((0,dk._)`${n}.errors`,null),e.return(!0))}xn.topBoolOrEmptySchema=mk;function hk(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Zh(t)):r.var(e,!0)}xn.boolOrEmptySchema=hk;function Zh(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,lk.reportError)(o,fk,void 0,e)}});var vl=T(kn=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});kn.getRules=kn.isJSONType=void 0;var gk=["string","number","integer","boolean","null","object","array"],yk=new Set(gk);function _k(t){return typeof t=="string"&&yk.has(t)}kn.isJSONType=_k;function vk(){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:{}}}kn.getRules=vk});var bl=T(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.shouldUseRule=sr.shouldUseGroup=sr.schemaHasRulesForType=void 0;function bk({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&qh(t,n)}sr.schemaHasRulesForType=bk;function qh(t,e){return e.rules.some(r=>Dh(t,r))}sr.shouldUseGroup=qh;function Dh(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))}sr.shouldUseRule=Dh});var Oo=T(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 wk=vl(),$k=bl(),xk=Io(),B=G(),Vh=ne(),Sn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Sn||(Me.DataType=Sn={}));function kk(t){let e=Lh(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=kk;function Lh(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(wk.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Me.getJSONTypes=Lh;function Sk(t,e){let{gen:r,data:n,opts:o}=t,s=zk(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,$k.schemaHasRulesForType)(t,e[0]));if(i){let a=$l(e,n,o.strictNumbers,Sn.Wrong);r.if(a,()=>{s.length?Rk(t,e,s):xl(t)})}return i}Me.coerceAndCheckDataType=Sk;var Uh=new Set(["string","number","integer","boolean","null"]);function zk(t,e){return e?t.filter(r=>Uh.has(r)||e==="array"&&r==="array"):[]}function Rk(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)(Uh.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),xl(t),n.endIf(),n.if((0,B._)`${a} !== undefined`,()=>{n.assign(o,a),Tk(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 Rk({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,B._)`${e} !== undefined`,()=>t.assign((0,B._)`${e}[${r}]`,n))}function bl(t,e,r,n=Sn.Correct){let o=n===Sn.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===Sn.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=bl;function wl(t,e,r,n){if(t.length===1)return bl(t[0],e,r,n);let o,s=(0,Dh.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,bl(i,e,r,n));return o}Me.checkDataTypes=wl;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 $l(t){let e=Pk(t);(0,$k.reportError)(e,Tk)}Me.reportTypeError=$l;function Pk(t){let{gen:e,data:r,schema:n}=t,o=(0,Dh.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Fh=R(vi=>{"use strict";Object.defineProperty(vi,"__esModule",{value:!0});vi.assignDefaults=void 0;var zn=J(),Ek=ne();function Ik(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Uh(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Uh(t,s,o.default))}vi.assignDefaults=Ik;function Uh(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,zn._)`${s}${(0,zn.getProperty)(e)}`;if(o){(0,Ek.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,zn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,zn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,zn._)`${a} = ${(0,zn.stringify)(r)}`)}});var pt=R(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(),xl=ne(),or=Ut(),Ok=ne();function Nk(t,e){let{gen:r,data:n,it:o}=t;r.if(Sl(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)(Sl(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 Bh(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,he._)`Object.prototype.hasOwnProperty`})}ce.hasPropFunc=Bh;function kl(t,e,r){return(0,he._)`${Bh(t)}.call(${e}, ${r})`}ce.isOwnProperty=kl;function jk(t,e,r,n){let o=(0,he._)`${e}${(0,he.getProperty)(r)} !== undefined`;return n?(0,he._)`${o} && ${kl(t,e,r)}`:o}ce.propertyInData=jk;function Sl(t,e,r,n){let o=(0,he._)`${e}${(0,he.getProperty)(r)} === undefined`;return n?(0,he.or)(o,(0,he.not)(kl(t,e,r))):o}ce.noPropertyInData=Sl;function Hh(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ce.allSchemaProperties=Hh;function Zk(t,e){return Hh(e).filter(r=>!(0,xl.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 p=(0,he._)`${l}, ${r.object(...d)}`;return c!==he.nil?(0,he._)`${a}.call(${c}, ${p})`:(0,he._)`${a}(${p})`}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:xl.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,xl.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 Kh=R(Et=>{"use strict";Object.defineProperty(Et,"__esModule",{value:!0});Et.validateKeywordUsage=Et.validSchemaType=Et.funcKeywordCode=Et.macroKeywordCode=void 0;var Fe=J(),Vr=Ut(),Uk=pt(),Fk=Io();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=Gh(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Fe.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=Gh(n,o,u),d=n.let("valid");t.block$data(d,p),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function p(){if(e.errors===!1)h(),e.modifying&&Jh(t),g(()=>t.error());else{let _=e.async?m():f();e.modifying&&Jh(t),g(()=>Jk(t,_))}}function m(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,Fe._)`await `),b=>n.assign(d,!1).if((0,Fe._)`${b} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,Fe._)`${b}.errors`),()=>n.throw(b))),_}function f(){let _=(0,Fe._)`${l}.errors`;return n.assign(_,null),h(Fe.nil),_}function h(_=e.async?(0,Fe._)`await `:Fe.nil){let b=c.opts.passContext?Vr.default.this:Vr.default.self,w=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Fe._)`${_}${(0,Uk.callValidateCode)(t,l,b,w)}`,e.modifying)}function g(_){var b;n.if((0,Fe.not)((b=e.valid)!==null&&b!==void 0?b:d),_)}}Et.funcKeywordCode=Hk;function Jh(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Fe._)`${n.parentData}[${n.parentDataProperty}]`))}function Jk(t,e){let{gen:r}=t;r.if((0,Fe._)`Array.isArray(${e})`,()=>{r.assign(Vr.default.vErrors,(0,Fe._)`${Vr.default.vErrors} === null ? ${e} : ${Vr.default.vErrors}.concat(${e})`).assign(Vr.default.errors,(0,Fe._)`${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 Gh(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,Fe.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 Yh=R(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.extendSubschemaMode=sr.extendSubschemaData=sr.getSubschema=void 0;var It=J(),Wh=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,Wh.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,p=a.let("data",(0,It._)`${e.data}${(0,It.getProperty)(r)}`,!0);c(p),t.errorPath=(0,It.str)`${u}${(0,Wh.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 zl=R((B1,Qh)=>{"use strict";Qh.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 eg=R((H1,Xh)=>{"use strict";var ir=Xh.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(){};bi(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 bi(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 p=0;p<d.length;p++)bi(t,e,r,d[p],o+"/"+l+"/"+p,s,o,l,n,p)}else if(l in ir.propsKeywords){if(d&&typeof d=="object")for(var m in d)bi(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))&&bi(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 No=R(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.getSchemaRefs=Ye.resolveUrl=Ye.normalizeId=Ye._getFullPath=Ye.getFullPath=Ye.inlineRef=void 0;var tS=ne(),rS=zl(),nS=eg(),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?!Rl(t):e?tg(t)<=e:!1}Ye.inlineRef=sS;var iS=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Rl(t){for(let e in t){if(iS.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Rl)||typeof r=="object"&&Rl(r))return!0}return!1}function tg(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+=tg(n)),e===1/0))return 1/0}return e}function rg(t,e="",r){r!==!1&&(e=Rn(e));let n=t.parse(e);return ng(t,n)}Ye.getFullPath=rg;function ng(t,e){return t.serialize(e).split("#")[0]+"#"}Ye._getFullPath=ng;var aS=/#\/?$/;function Rn(t){return t?t.replace(aS,""):""}Ye.normalizeId=Rn;function cS(t,e,r){return r=Rn(r),t.resolve(e,r)}Ye.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=Rn(t[r]||e),s={"":o},i=rg(n,o,!1),a={},c=new Set;return nS(t,{allKeys:!0},(d,p,m,f)=>{if(f===void 0)return;let h=i+p,g=s[f];typeof d[r]=="string"&&(g=_.call(this,d[r])),b.call(this,d.$anchor),b.call(this,d.$dynamicAnchor),s[p]=g;function _(w){let S=this.opts.uriResolver.resolve;if(w=Rn(g?S(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!==Rn(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,p,m){if(p!==void 0&&!rS(d,p))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ye.getSchemaRefs=lS});var jo=R(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.getData=ar.KeywordCxt=ar.validateFunctionCode=void 0;var cg=Zh(),og=Oo(),Pl=vl(),wi=Oo(),dS=Fh(),Ao=Kh(),Tl=Yh(),C=J(),L=Ut(),pS=No(),Ft=ne(),Co=Io();function fS(t){if(dg(t)&&(pg(t),lg(t))){gS(t);return}ug(t,()=>(0,cg.topBoolOrEmptySchema)(t))}ar.validateFunctionCode=fS;function ug({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"; ${sg(r,o)}`),hS(t,o),t.code(s)}):t.func(e,(0,C._)`${L.default.data}, ${mS(o)}`,n.$async,()=>t.code(sg(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;ug(t,()=>{r.$comment&&e.$comment&&mg(t),wS(t),n.let(L.default.vErrors,null),n.let(L.default.errors,0),r.unevaluated&&yS(t),fg(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 sg(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(dg(t)&&(pg(t),lg(t))){vS(t,e);return}(0,cg.boolOrEmptySchema)(t,e)}function lg({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 dg(t){return typeof t.schema!="boolean"}function vS(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&mg(t),$S(t),xS(t);let s=n.const("_errs",L.default.errors);fg(t,s),n.var(e,(0,C._)`${s} === ${L.default.errors}`)}function pg(t){(0,Ft.checkUnknownRules)(t),bS(t)}function fg(t,e){if(t.opts.jtd)return ig(t,[],!1,e);let r=(0,og.getSchemaTypes)(t.schema),n=(0,og.coerceAndCheckDataType)(t,r);ig(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 mg({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 ig(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(()=>gg(t,"$ref",l.all.$ref.definition));return}c.jtd||zS(t,e),o.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,Pl.shouldUseGroup)(s,p)&&(p.type?(o.if((0,wi.checkDataType)(p.type,i,c.strictNumbers)),ag(t,p),e.length===1&&e[0]===p.type&&r&&(o.else(),(0,wi.reportTypeError)(t)),o.endIf()):ag(t,p),a||o.if((0,C._)`${L.default.errors} === ${n||0}`))}}function ag(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,Pl.shouldUseRule)(n,s)&&gg(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=>{hg(t.dataTypes,r)||El(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"))&&El(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,Pl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>ES(e,i))&&El(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function ES(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function hg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function IS(t,e){let r=[];for(let n of t.dataTypes)hg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function El(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ft.checkStrictMode)(t,e,t.opts.strictTypes)}var $i=class{constructor(e,r,n){if((0,Ao.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",yg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Ao.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?Co.reportExtraError:Co.reportError)(this,this.def.error,r)}$dataError(){(0,Co.reportError)(this,this.def.$dataError||Co.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Co.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,wi.checkDataTypes)(c,r,s.opts.strictNumbers,wi.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,Tl.getSubschema)(this.it,e);(0,Tl.extendSubschemaData)(n,this.it,e),(0,Tl.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=$i;function gg(t,e,r,n){let o=new $i(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Ao.funcKeywordCode)(o,r):"macro"in r?(0,Ao.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Ao.funcKeywordCode)(o,r)}var OS=/^\/(?:[^~]|~0|~1)*$/,NS=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function yg(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=yg});var xi=R(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});var Il=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Ol.default=Il});var Zo=R(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});var Nl=No(),Cl=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Nl.resolveUrl)(e,r,n),this.missingSchema=(0,Nl.normalizeId)((0,Nl.getFullPath)(e,this.missingRef))}};Al.default=Cl});var Si=R(ft=>{"use strict";Object.defineProperty(ft,"__esModule",{value:!0});ft.resolveSchema=ft.getCompilingSchema=ft.resolveRef=ft.compileSchema=ft.SchemaEnv=void 0;var wt=J(),CS=xi(),Ur=Ut(),$t=No(),_g=ne(),AS=jo(),Tn=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,$t.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ft.SchemaEnv=Tn;function Zl(t){let e=vg.call(this,t);if(e)return e;let r=(0,$t.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new wt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:CS.default,code:(0,wt._)`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:[wt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,wt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:wt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,wt._)`""`,opts:this.opts,self:this},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:f,items:h}=u;m.evaluated={props:f instanceof wt.Name?void 0:f,items:h instanceof wt.Name?void 0:h,dynamicProps:f instanceof wt.Name,dynamicItems:h instanceof wt.Name},m.source&&(m.source.evaluated=(0,wt.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)}}ft.compileSchema=Zl;function jS(t,e,r){var n;r=(0,$t.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 Tn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=ZS.call(this,s)}ft.resolveRef=jS;function ZS(t){return(0,$t.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Zl.call(this,t)}function vg(t){for(let e of this._compilations)if(MS(e,t))return e}ft.getCompilingSchema=vg;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]||ki.call(this,t,e)}function ki(t,e){let r=this.opts.uriResolver.parse(e),n=(0,$t._getFullPath)(this.opts.uriResolver,r),o=(0,$t.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return jl.call(this,r,t);let s=(0,$t.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=ki.call(this,t,i);return typeof a?.schema!="object"?void 0:jl.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Zl.call(this,i),s===(0,$t.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,$t.resolveUrl)(this.opts.uriResolver,o,u)),new Tn({schema:a,schemaId:c,root:t,baseId:o})}return jl.call(this,r,i)}}ft.resolveSchema=ki;var DS=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function jl(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,_g.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!DS.has(a)&&u&&(e=(0,$t.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,_g.schemaHasRulesButRef)(r,this.RULES)){let a=(0,$t.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=ki.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Tn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var bg=R((Q1,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 Dl=R((X1,zg)=>{"use strict";var VS=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),$g=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),Ml=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),xg=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),US=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function ql(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 wg(t){return t.length=0,!0}function BS(t,e,r){if(t.length){let n=ql(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=wg}else{o.push(u);continue}}return o.length&&(a===wg?r.zone=o.join(""):i?n.push(o.join("")):n.push(ql(o))),r.address=n.join(""),r}function kg(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 Sg(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(Ml(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));e&&xg(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(Ml(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&xg(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(Ml(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(!$g(r)){let n=kg(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=Sg(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}zg.exports={nonSimpleDomain:FS,recomposeAuthority:tz,reescapeHostDelimiters:Sg,normalizePercentEncoding:QS,normalizePathEncoding:XS,escapePreservingEscapes:ez,removeDotSegments:GS,isIPv4:$g,isUUID:VS,normalizeIPv6:kg,stringArrayToHexStripped:ql}});var Ig=R((ej,Eg)=>{"use strict";var{isUUID:rz}=Dl(),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 Ll(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 Rg(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Tg(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=Ll(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function az(t){if((t.port===(Ll(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=Vl(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=Vl(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 Pg={scheme:"http",domainHost:!0,parse:Rg,serialize:Tg},pz={scheme:"https",domainHost:Pg.domainHost,parse:Rg,serialize:Tg},zi={scheme:"ws",domainHost:!0,parse:iz,serialize:az},fz={scheme:"wss",domainHost:zi.domainHost,parse:zi.parse,serialize:zi.serialize},mz={scheme:"urn",parse:cz,serialize:uz,skipNormalize:!0},hz={scheme:"urn:uuid",parse:lz,serialize:dz,skipNormalize:!0},Ri={http:Pg,https:pz,ws:zi,wss:fz,urn:mz,"urn:uuid":hz};Object.setPrototypeOf(Ri,null);function Vl(t){return t&&(Ri[t]||Ri[t.toLowerCase()])||void 0}Eg.exports={wsIsSecure:Ll,SCHEMES:Ri,isValidSchemeName:sz,getSchemeHandler:Vl}});var Zg=R((tj,Ti)=>{"use strict";var{normalizeIPv6:gz,removeDotSegments:Mo,recomposeAuthority:yz,normalizePercentEncoding:_z,normalizePathEncoding:vz,escapePreservingEscapes:bz,reescapeHostDelimiters:wz,isIPv4:$z,nonSimpleDomain:xz}=Dl(),{SCHEMES:kz,getSchemeHandler:Ng}=Ig();function Sz(t,e){return typeof t=="string"?t=Ez(t,e):typeof t=="object"&&(t=Pn(Fr(t,e),e)),t}function zz(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Cg(Pn(t,n),Pn(e,n),n,!0);return n.skipEscape=!0,Fr(o,n)}function Cg(t,e,r,n){let o={};return n||(t=Pn(Fr(t,r),r),e=Pn(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=Mo(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=Mo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Mo(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=Mo(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=Og(t,r),o=Og(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=Ng(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=Mo(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 Ag(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=Ng(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 Pn(t,e){return Ag(t,e).parsed}function Ez(t,e){return jg(t,e).normalized}function jg(t,e){let{parsed:r,malformedAuthorityOrPort:n}=Ag(t,e);return{normalized:n?t:Fr(r,e),malformedAuthorityOrPort:n}}function Og(t,e){if(typeof t=="string"){let{normalized:r,malformedAuthorityOrPort:n}=jg(t,e);return n?void 0:r}if(typeof t=="object")return Fr(t,e)}var Ul={SCHEMES:kz,normalize:Sz,resolve:zz,resolveComponent:Cg,equal:Rz,serialize:Fr,parse:Pn};Ti.exports=Ul;Ti.exports.default=Ul;Ti.exports.fastUri=Ul});var qg=R(Fl=>{"use strict";Object.defineProperty(Fl,"__esModule",{value:!0});var Mg=Zg();Mg.code='require("ajv/dist/runtime/uri").default';Fl.default=Mg});var Jg=R(Ne=>{"use strict";Object.defineProperty(Ne,"__esModule",{value:!0});Ne.CodeGen=Ne.Name=Ne.nil=Ne.stringify=Ne.str=Ne._=Ne.KeywordCxt=void 0;var Iz=jo();Object.defineProperty(Ne,"KeywordCxt",{enumerable:!0,get:function(){return Iz.KeywordCxt}});var En=J();Object.defineProperty(Ne,"_",{enumerable:!0,get:function(){return En._}});Object.defineProperty(Ne,"str",{enumerable:!0,get:function(){return En.str}});Object.defineProperty(Ne,"stringify",{enumerable:!0,get:function(){return En.stringify}});Object.defineProperty(Ne,"nil",{enumerable:!0,get:function(){return En.nil}});Object.defineProperty(Ne,"Name",{enumerable:!0,get:function(){return En.Name}});Object.defineProperty(Ne,"CodeGen",{enumerable:!0,get:function(){return En.CodeGen}});var Oz=xi(),Fg=Zo(),Nz=_l(),qo=Si(),Cz=J(),Do=No(),Pi=Oo(),Hl=ne(),Dg=bg(),Az=qg(),Bg=(t,e)=>new RegExp(t,e);Bg.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.'},Lg=200;function Dz(t){var e,r,n,o,s,i,a,c,u,l,d,p,m,f,h,g,_,b,w,S,Z,De,st,en,ha;let Hn=t.strict,ga=(e=t.code)===null||e===void 0?void 0:e.optimize,Sp=ga===!0||ga===void 0?1:ga||0,zp=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Bg,kv=(o=t.uriResolver)!==null&&o!==void 0?o:Az.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:Hn)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Hn)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:Hn)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:Hn)!==null&&p!==void 0?p:"log",strictRequired:(f=(m=t.strictRequired)!==null&&m!==void 0?m:Hn)!==null&&f!==void 0?f:!1,code:t.code?{...t.code,optimize:Sp,regExp:zp}:{optimize:Sp,regExp:zp},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Lg,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Lg,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:(S=t.schemaId)!==null&&S!==void 0?S:"$id",addUsedSchema:(Z=t.addUsedSchema)!==null&&Z!==void 0?Z:!0,validateSchema:(De=t.validateSchema)!==null&&De!==void 0?De:!0,validateFormats:(st=t.validateFormats)!==null&&st!==void 0?st:!0,unicodeRegExp:(en=t.unicodeRegExp)!==null&&en!==void 0?en:!0,int32range:(ha=t.int32range)!==null&&ha!==void 0?ha:!0,uriResolver:kv}}var Lo=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)(),Vg.call(this,Mz,e,"NOT SUPPORTED"),Vg.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=Dg;n==="id"&&(o={...Dg},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 p=this._addSchema(l,d);return p.validate||i.call(this,p)}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 Fg.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,Do.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=Ug.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new qo.SchemaEnv({schema:{},schemaId:n});if(r=qo.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=Ug.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,Do.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,Hl.eachItem)(n,s=>Bl.call(this,s)),this;Wz.call(this,r);let o={...r,type:(0,Pi.getJSONTypes)(r.type),schemaType:(0,Pi.getJSONTypes)(r.schemaType)};return(0,Hl.eachItem)(n,o.type.length===0?s=>Bl.call(this,s,o):s=>o.type.forEach(i=>Bl.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]=Hg(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,Do.normalizeId)(i||n);let u=Do.getSchemaRefs.call(this,e,n);return c=new qo.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):qo.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{qo.compileSchema.call(this,e)}finally{this.opts=r}}};Lo.ValidationError=Oz.default;Lo.MissingRefError=Fg.default;Ne.default=Lo;function Vg(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 Ug(t){return t=(0,Do.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,Hl.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 Bl(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,Pi.getJSONTypes)(e.type),schemaType:(0,Pi.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=Hg(e)),t.validateSchema=this.compile(e,!0))}var Yz={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Hg(t){return{anyOf:[t,Yz]}}});var Gg=R(Jl=>{"use strict";Object.defineProperty(Jl,"__esModule",{value:!0});var Qz={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Jl.default=Qz});var Qg=R(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.callRef=Br.getValidate=void 0;var Xz=Zo(),Kg=pt(),Qe=J(),In=Ut(),Wg=Si(),Ei=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=Wg.resolveRef.call(c,u,o,r);if(l===void 0)throw new Xz.default(n.opts.uriResolver,o,r);if(l instanceof Wg.SchemaEnv)return p(l);return m(l);function d(){if(s===u)return Ii(t,i,s,s.$async);let f=e.scopeValue("root",{ref:u});return Ii(t,(0,Qe._)`${f}.validate`,u,u.$async)}function p(f){let h=Yg(t,f);Ii(t,h,f,f.$async)}function m(f){let h=e.scopeValue("schema",a.code.source===!0?{ref:f,code:(0,Qe.stringify)(f)}:{ref:f}),g=e.name("valid"),_=t.subschema({schema:f,dataTypes:[],schemaPath:Qe.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function Yg(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Qe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Br.getValidate=Yg;function Ii(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?In.default.this:Qe.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let f=o.let("valid");o.try(()=>{o.code((0,Qe._)`await ${(0,Kg.callValidateCode)(t,e,u)}`),m(e),i||o.assign(f,!0)},h=>{o.if((0,Qe._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),p(h),i||o.assign(f,!1)}),t.ok(f)}function d(){t.result((0,Kg.callValidateCode)(t,e,u),()=>m(e),()=>p(e))}function p(f){let h=(0,Qe._)`${f}.errors`;o.assign(In.default.vErrors,(0,Qe._)`${In.default.vErrors} === null ? ${h} : ${In.default.vErrors}.concat(${h})`),o.assign(In.default.errors,(0,Qe._)`${In.default.vErrors}.length`)}function m(f){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=Ei.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,Qe._)`${f}.evaluated.props`);s.props=Ei.mergeEvaluated.props(o,_,s.props,Qe.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Ei.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,Qe._)`${f}.evaluated.items`);s.items=Ei.mergeEvaluated.items(o,_,s.items,Qe.Name)}}}Br.callRef=Ii;Br.default=eR});var Xg=R(Gl=>{"use strict";Object.defineProperty(Gl,"__esModule",{value:!0});var tR=Gg(),rR=Qg(),nR=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",tR.default,rR.default];Gl.default=nR});var ey=R(Kl=>{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});var Oi=J(),cr=Oi.operators,Ni={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,Oi.str)`must be ${Ni[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Oi._)`{comparison: ${Ni[t].okStr}, limit: ${e}}`},sR={keyword:Object.keys(Ni),type:"number",schemaType:"number",$data:!0,error:oR,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Oi._)`${r} ${Ni[e].fail} ${n} || isNaN(${r})`)}};Kl.default=sR});var ty=R(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});var Vo=J(),iR={message:({schemaCode:t})=>(0,Vo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Vo._)`{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,Vo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Vo._)`${i} !== parseInt(${i})`;t.fail$data((0,Vo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Wl.default=aR});var ny=R(Yl=>{"use strict";Object.defineProperty(Yl,"__esModule",{value:!0});function ry(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}Yl.default=ry;ry.code='require("ajv/dist/runtime/ucs2length").default'});var oy=R(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});var Hr=J(),cR=ne(),uR=ny(),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}`)}};Ql.default=dR});var sy=R(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});var pR=pt(),fR=ne(),On=J(),mR={message:({schemaCode:t})=>(0,On.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,On._)`{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,On._)`new RegExp`:(0,fR.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,On._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,On._)`!${l}`)}else{let c=(0,pR.usePattern)(t,o);t.fail$data((0,On._)`!${c}.test(${r})`)}}};Xl.default=hR});var iy=R(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var Uo=J(),gR={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Uo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Uo._)`{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"?Uo.operators.GT:Uo.operators.LT;t.fail$data((0,Uo._)`Object.keys(${r}).length ${o} ${n}`)}};ed.default=yR});var ay=R(td=>{"use strict";Object.defineProperty(td,"__esModule",{value:!0});var Fo=pt(),Bo=J(),_R=ne(),vR={message:({params:{missingProperty:t}})=>(0,Bo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Bo._)`{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:f}=t.it;for(let h of r)if(m?.[h]===void 0&&!f.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(Bo.nil,d);else for(let m of r)(0,Fo.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||s){let f=e.let("valid",!0);t.block$data(f,()=>p(m,f)),t.ok(f)}else e.if((0,Fo.checkMissingProp)(t,r,m)),(0,Fo.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Fo.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function p(m,f){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(f,(0,Fo.propertyInData)(e,o,m,a.ownProperties)),e.if((0,Bo.not)(f),()=>{t.error(),e.break()})},Bo.nil)}}};td.default=bR});var cy=R(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});var Ho=J(),wR={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Ho.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Ho._)`{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"?Ho.operators.GT:Ho.operators.LT;t.fail$data((0,Ho._)`${r}.length ${o} ${n}`)}};rd.default=$R});var Ci=R(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var uy=zl();uy.code='require("ajv/dist/runtime/equal").default';nd.default=uy});var ly=R(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});var od=Oo(),Ce=J(),xR=ne(),kR=Ci(),SR={message:({params:{i:t,j:e}})=>(0,Ce.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ce._)`{i: ${t}, j: ${e}}`},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,od.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ce._)`${i} === false`),t.ok(c);function l(){let f=e.let("i",(0,Ce._)`${r}.length`),h=e.let("j");t.setParams({i:f,j:h}),e.assign(c,!0),e.if((0,Ce._)`${f} > 1`,()=>(d()?p:m)(f,h))}function d(){return u.length>0&&!u.some(f=>f==="object"||f==="array")}function p(f,h){let g=e.name("item"),_=(0,od.checkDataTypes)(u,g,a.opts.strictNumbers,od.DataType.Wrong),b=e.const("indices",(0,Ce._)`{}`);e.for((0,Ce._)`;${f}--;`,()=>{e.let(g,(0,Ce._)`${r}[${f}]`),e.if(_,(0,Ce._)`continue`),u.length>1&&e.if((0,Ce._)`typeof ${g} == "string"`,(0,Ce._)`${g} += "_"`),e.if((0,Ce._)`typeof ${b}[${g}] == "number"`,()=>{e.assign(h,(0,Ce._)`${b}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ce._)`${b}[${g}] = ${f}`)})}function m(f,h){let g=(0,xR.useFunc)(e,kR.default),_=e.name("outer");e.label(_).for((0,Ce._)`;${f}--;`,()=>e.for((0,Ce._)`${h} = ${f}; ${h}--;`,()=>e.if((0,Ce._)`${g}(${r}[${f}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};sd.default=zR});var dy=R(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var id=J(),RR=ne(),TR=Ci(),PR={message:"must be equal to constant",params:({schemaCode:t})=>(0,id._)`{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,id._)`!${(0,RR.useFunc)(e,TR.default)}(${r}, ${o})`):t.fail((0,id._)`${s} !== ${r}`)}};ad.default=ER});var py=R(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});var Jo=J(),IR=ne(),OR=Ci(),NR={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Jo._)`{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,Jo.or)(...o.map((f,h)=>p(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,m=>e.if((0,Jo._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function p(m,f){let h=o[f];return typeof h=="object"&&h!==null?(0,Jo._)`${u()}(${r}, ${m}[${f}])`:(0,Jo._)`${r} === ${h}`}}};cd.default=CR});var fy=R(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});var AR=ey(),jR=ty(),ZR=oy(),MR=sy(),qR=iy(),DR=ay(),LR=cy(),VR=ly(),UR=dy(),FR=py(),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];ud.default=BR});var dd=R(Go=>{"use strict";Object.defineProperty(Go,"__esModule",{value:!0});Go.validateAdditionalItems=void 0;var Jr=J(),ld=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,ld.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}my(t,n)}};function my(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,ld.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:ld.Type.Num},u),i.allErrors||r.if((0,Jr.not)(u),()=>r.break())})}}Go.validateAdditionalItems=my;Go.default=JR});var pd=R(Ko=>{"use strict";Object.defineProperty(Ko,"__esModule",{value:!0});Ko.validateTuple=void 0;var hy=J(),Ai=ne(),GR=pt(),KR={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return gy(t,"additionalItems",e);r.items=!0,!(0,Ai.alwaysValidSchema)(r,e)&&t.ok((0,GR.validateArray)(t))}};function gy(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=Ai.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,hy._)`${s}.length`);r.forEach((d,p)=>{(0,Ai.alwaysValidSchema)(a,d)||(n.if((0,hy._)`${u} > ${p}`,()=>t.subschema({keyword:i,schemaProp:p,dataProp:p},c)),t.ok(c))});function l(d){let{opts:p,errSchemaPath:m}=a,f=r.length,h=f===d.minItems&&(f===d.maxItems||d[e]===!1);if(p.strictTuples&&!h){let g=`"${i}" is ${f}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,Ai.checkStrictMode)(a,g,p.strictTuples)}}}Ko.validateTuple=gy;Ko.default=KR});var yy=R(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});var WR=pd(),YR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,WR.validateTuple)(t,"items")};fd.default=YR});var vy=R(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var _y=J(),QR=ne(),XR=pt(),eT=dd(),tT={message:({params:{len:t}})=>(0,_y.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,_y._)`{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)))}};md.default=rT});var by=R(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var mt=J(),ji=ne(),nT={message:({params:{min:t,max:e}})=>e===void 0?(0,mt.str)`must contain at least ${t} valid item(s)`:(0,mt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,mt._)`{minContains: ${t}}`:(0,mt._)`{minContains: ${t}, maxContains: ${e}}`},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,mt._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,ji.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,ji.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,ji.alwaysValidSchema)(s,r)){let h=(0,mt._)`${l} >= ${i}`;a!==void 0&&(h=(0,mt._)`${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,mt._)`${o}.length > 0`,p)):(e.let(d,!1),p()),t.result(d,()=>t.reset());function p(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>f(g)))}function m(h,g){e.forRange("i",0,l,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:ji.Type.Num,compositeRule:!0},h),g()})}function f(h){e.code((0,mt._)`${h}++`),a===void 0?e.if((0,mt._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,mt._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,mt._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};hd.default=oT});var xy=R(Ot=>{"use strict";Object.defineProperty(Ot,"__esModule",{value:!0});Ot.validateSchemaDeps=Ot.validatePropertyDeps=Ot.error=void 0;var gd=J(),sT=ne(),Wo=pt();Ot.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,gd.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,gd._)`{property: ${t},
7
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,B._)`[${o}]`)}}}function Tk({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,B._)`${e} !== undefined`,()=>t.assign((0,B._)`${e}[${r}]`,n))}function wl(t,e,r,n=Sn.Correct){let o=n===Sn.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===Sn.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=wl;function $l(t,e,r,n){if(t.length===1)return wl(t[0],e,r,n);let o,s=(0,Vh.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,wl(i,e,r,n));return o}Me.checkDataTypes=$l;var Pk={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,B._)`{type: ${t}}`:(0,B._)`{type: ${e}}`};function xl(t){let e=Ek(t);(0,xk.reportError)(e,Pk)}Me.reportTypeError=xl;function Ek(t){let{gen:e,data:r,schema:n}=t,o=(0,Vh.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Bh=T(vi=>{"use strict";Object.defineProperty(vi,"__esModule",{value:!0});vi.assignDefaults=void 0;var zn=G(),Ik=ne();function Ok(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Fh(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Fh(t,s,o.default))}vi.assignDefaults=Ok;function Fh(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,zn._)`${s}${(0,zn.getProperty)(e)}`;if(o){(0,Ik.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,zn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,zn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,zn._)`${a} = ${(0,zn.stringify)(r)}`)}});var ft=T(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=G(),kl=ne(),ir=Ft(),Nk=ne();function Ck(t,e){let{gen:r,data:n,it:o}=t;r.if(zl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,he._)`${e}`},!0),t.error()})}ce.checkReportMissingProp=Ck;function Ak({gen:t,data:e,it:{opts:r}},n,o){return(0,he.or)(...n.map(s=>(0,he.and)(zl(t,e,s,r.ownProperties),(0,he._)`${o} = ${s}`)))}ce.checkMissingProp=Ak;function jk(t,e){t.setParams({missingProperty:e},!0),t.error()}ce.reportMissingProp=jk;function Hh(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,he._)`Object.prototype.hasOwnProperty`})}ce.hasPropFunc=Hh;function Sl(t,e,r){return(0,he._)`${Hh(t)}.call(${e}, ${r})`}ce.isOwnProperty=Sl;function Zk(t,e,r,n){let o=(0,he._)`${e}${(0,he.getProperty)(r)} !== undefined`;return n?(0,he._)`${o} && ${Sl(t,e,r)}`:o}ce.propertyInData=Zk;function zl(t,e,r,n){let o=(0,he._)`${e}${(0,he.getProperty)(r)} === undefined`;return n?(0,he.or)(o,(0,he.not)(Sl(t,e,r))):o}ce.noPropertyInData=zl;function Gh(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ce.allSchemaProperties=Gh;function Mk(t,e){return Gh(e).filter(r=>!(0,kl.alwaysValidSchema)(t,e[r]))}ce.schemaProperties=Mk;function qk({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=[[ir.default.instancePath,(0,he.strConcat)(ir.default.instancePath,s)],[ir.default.parentData,i.parentData],[ir.default.parentDataProperty,i.parentDataProperty],[ir.default.rootData,ir.default.rootData]];i.opts.dynamicRef&&d.push([ir.default.dynamicAnchors,ir.default.dynamicAnchors]);let p=(0,he._)`${l}, ${r.object(...d)}`;return c!==he.nil?(0,he._)`${a}.call(${c}, ${p})`:(0,he._)`${a}(${p})`}ce.callValidateCode=qk;var Dk=(0,he._)`new RegExp`;function Vk({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"?Dk:(0,Nk.useFunc)(t,o)}(${r}, ${n})`})}ce.usePattern=Vk;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:kl.Type.Num},s),e.if((0,he.not)(s),a)})}}ce.validateArray=Lk;function Uk(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,kl.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=Uk});var Wh=T(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.validateKeywordUsage=It.validSchemaType=It.funcKeywordCode=It.macroKeywordCode=void 0;var Fe=G(),Lr=Ft(),Fk=ft(),Bk=Io();function Hk(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Kh(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Fe.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}It.macroKeywordCode=Hk;function Gk(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;Kk(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Kh(n,o,u),d=n.let("valid");t.block$data(d,p),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function p(){if(e.errors===!1)h(),e.modifying&&Jh(t),g(()=>t.error());else{let y=e.async?f():m();e.modifying&&Jh(t),g(()=>Jk(t,y))}}function f(){let y=n.let("ruleErrs",null);return n.try(()=>h((0,Fe._)`await `),v=>n.assign(d,!1).if((0,Fe._)`${v} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,Fe._)`${v}.errors`),()=>n.throw(v))),y}function m(){let y=(0,Fe._)`${l}.errors`;return n.assign(y,null),h(Fe.nil),y}function h(y=e.async?(0,Fe._)`await `:Fe.nil){let v=c.opts.passContext?Lr.default.this:Lr.default.self,w=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Fe._)`${y}${(0,Fk.callValidateCode)(t,l,v,w)}`,e.modifying)}function g(y){var v;n.if((0,Fe.not)((v=e.valid)!==null&&v!==void 0?v:d),y)}}It.funcKeywordCode=Gk;function Jh(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Fe._)`${n.parentData}[${n.parentDataProperty}]`))}function Jk(t,e){let{gen:r}=t;r.if((0,Fe._)`Array.isArray(${e})`,()=>{r.assign(Lr.default.vErrors,(0,Fe._)`${Lr.default.vErrors} === null ? ${e} : ${Lr.default.vErrors}.concat(${e})`).assign(Lr.default.errors,(0,Fe._)`${Lr.default.vErrors}.length`),(0,Bk.extendErrors)(t)},()=>t.error())}function Kk({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Kh(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,Fe.stringify)(r)})}function Wk(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")}It.validSchemaType=Wk;function Yk({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)}}It.validateKeywordUsage=Yk});var Qh=T(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.extendSubschemaMode=ar.extendSubschemaData=ar.getSubschema=void 0;var Ot=G(),Yh=ne();function Qk(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,Ot._)`${t.schemaPath}${(0,Ot.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Ot._)`${t.schemaPath}${(0,Ot.getProperty)(e)}${(0,Ot.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Yh.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')}ar.getSubschema=Qk;function Xk(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,p=a.let("data",(0,Ot._)`${e.data}${(0,Ot.getProperty)(r)}`,!0);c(p),t.errorPath=(0,Ot.str)`${u}${(0,Yh.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Ot._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Ot.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]}}ar.extendSubschemaData=Xk;function eS(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}ar.extendSubschemaMode=eS});var Rl=T((H1,Xh)=>{"use strict";Xh.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 tg=T((G1,eg)=>{"use strict";var cr=eg.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(){};bi(e,n,o,t,"",t)};cr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};cr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};cr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};cr.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 bi(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 cr.arrayKeywords)for(var p=0;p<d.length;p++)bi(t,e,r,d[p],o+"/"+l+"/"+p,s,o,l,n,p)}else if(l in cr.propsKeywords){if(d&&typeof d=="object")for(var f in d)bi(t,e,r,d[f],o+"/"+l+"/"+tS(f),s,o,l,n,f)}else(l in cr.keywords||t.allKeys&&!(l in cr.skipKeywords))&&bi(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function tS(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var No=T(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.getSchemaRefs=Ye.resolveUrl=Ye.normalizeId=Ye._getFullPath=Ye.getFullPath=Ye.inlineRef=void 0;var rS=ne(),nS=Rl(),oS=tg(),sS=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function iS(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Tl(t):e?rg(t)<=e:!1}Ye.inlineRef=iS;var aS=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Tl(t){for(let e in t){if(aS.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Tl)||typeof r=="object"&&Tl(r))return!0}return!1}function rg(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!sS.has(r)&&(typeof t[r]=="object"&&(0,rS.eachItem)(t[r],n=>e+=rg(n)),e===1/0))return 1/0}return e}function ng(t,e="",r){r!==!1&&(e=Rn(e));let n=t.parse(e);return og(t,n)}Ye.getFullPath=ng;function og(t,e){return t.serialize(e).split("#")[0]+"#"}Ye._getFullPath=og;var cS=/#\/?$/;function Rn(t){return t?t.replace(cS,""):""}Ye.normalizeId=Rn;function uS(t,e,r){return r=Rn(r),t.resolve(e,r)}Ye.resolveUrl=uS;var lS=/^[a-z_][-a-z0-9._]*$/i;function dS(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Rn(t[r]||e),s={"":o},i=ng(n,o,!1),a={},c=new Set;return oS(t,{allKeys:!0},(d,p,f,m)=>{if(m===void 0)return;let h=i+p,g=s[m];typeof d[r]=="string"&&(g=y.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[p]=g;function y(w){let S=this.opts.uriResolver.resolve;if(w=Rn(g?S(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!==Rn(h)&&(w[0]==="#"?(u(d,a[w],w),a[w]=d):this.refs[w]=h),w}function v(w){if(typeof w=="string"){if(!lS.test(w))throw new Error(`invalid anchor "${w}"`);y.call(this,`#${w}`)}}}),a;function u(d,p,f){if(p!==void 0&&!nS(d,p))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Ye.getSchemaRefs=dS});var jo=T(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.getData=ur.KeywordCxt=ur.validateFunctionCode=void 0;var ug=Mh(),sg=Oo(),El=bl(),wi=Oo(),pS=Bh(),Ao=Wh(),Pl=Qh(),C=G(),V=Ft(),fS=No(),Bt=ne(),Co=Io();function mS(t){if(pg(t)&&(fg(t),dg(t))){yS(t);return}lg(t,()=>(0,ug.topBoolOrEmptySchema)(t))}ur.validateFunctionCode=mS;function lg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,C._)`${V.default.data}, ${V.default.valCxt}`,n.$async,()=>{t.code((0,C._)`"use strict"; ${ig(r,o)}`),gS(t,o),t.code(s)}):t.func(e,(0,C._)`${V.default.data}, ${hS(o)}`,n.$async,()=>t.code(ig(r,o)).code(s))}function hS(t){return(0,C._)`{${V.default.instancePath}="", ${V.default.parentData}, ${V.default.parentDataProperty}, ${V.default.rootData}=${V.default.data}${t.dynamicRef?(0,C._)`, ${V.default.dynamicAnchors}={}`:C.nil}}={}`}function gS(t,e){t.if(V.default.valCxt,()=>{t.var(V.default.instancePath,(0,C._)`${V.default.valCxt}.${V.default.instancePath}`),t.var(V.default.parentData,(0,C._)`${V.default.valCxt}.${V.default.parentData}`),t.var(V.default.parentDataProperty,(0,C._)`${V.default.valCxt}.${V.default.parentDataProperty}`),t.var(V.default.rootData,(0,C._)`${V.default.valCxt}.${V.default.rootData}`),e.dynamicRef&&t.var(V.default.dynamicAnchors,(0,C._)`${V.default.valCxt}.${V.default.dynamicAnchors}`)},()=>{t.var(V.default.instancePath,(0,C._)`""`),t.var(V.default.parentData,(0,C._)`undefined`),t.var(V.default.parentDataProperty,(0,C._)`undefined`),t.var(V.default.rootData,V.default.data),e.dynamicRef&&t.var(V.default.dynamicAnchors,(0,C._)`{}`)})}function yS(t){let{schema:e,opts:r,gen:n}=t;lg(t,()=>{r.$comment&&e.$comment&&hg(t),$S(t),n.let(V.default.vErrors,null),n.let(V.default.errors,0),r.unevaluated&&_S(t),mg(t),SS(t)})}function _S(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 ig(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 vS(t,e){if(pg(t)&&(fg(t),dg(t))){bS(t,e);return}(0,ug.boolOrEmptySchema)(t,e)}function dg({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 pg(t){return typeof t.schema!="boolean"}function bS(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&hg(t),xS(t),kS(t);let s=n.const("_errs",V.default.errors);mg(t,s),n.var(e,(0,C._)`${s} === ${V.default.errors}`)}function fg(t){(0,Bt.checkUnknownRules)(t),wS(t)}function mg(t,e){if(t.opts.jtd)return ag(t,[],!1,e);let r=(0,sg.getSchemaTypes)(t.schema),n=(0,sg.coerceAndCheckDataType)(t,r);ag(t,r,!n,e)}function wS(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Bt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function $S(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Bt.checkStrictMode)(t,"default is ignored in the schema root")}function xS(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,fS.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function kS(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function hg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,C._)`${V.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._)`${V.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function SS(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,C._)`${V.default.errors} === 0`,()=>e.return(V.default.data),()=>e.throw((0,C._)`new ${o}(${V.default.vErrors})`)):(e.assign((0,C._)`${n}.errors`,V.default.vErrors),s.unevaluated&&zS(t),e.return((0,C._)`${V.default.errors} === 0`))}function zS({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 ag(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,Bt.schemaHasRulesButRef)(s,l))){o.block(()=>yg(t,"$ref",l.all.$ref.definition));return}c.jtd||RS(t,e),o.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,El.shouldUseGroup)(s,p)&&(p.type?(o.if((0,wi.checkDataType)(p.type,i,c.strictNumbers)),cg(t,p),e.length===1&&e[0]===p.type&&r&&(o.else(),(0,wi.reportTypeError)(t)),o.endIf()):cg(t,p),a||o.if((0,C._)`${V.default.errors} === ${n||0}`))}}function cg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,pS.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,El.shouldUseRule)(n,s)&&yg(t,s.keyword,s.definition,e.type)})}function RS(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(TS(t,e),t.opts.allowUnionTypes||PS(t,e),ES(t,t.dataTypes))}function TS(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{gg(t.dataTypes,r)||Il(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),OS(t,e)}}function PS(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Il(t,"use allowUnionTypes to allow union type keyword")}function ES(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,El.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>IS(e,i))&&Il(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function IS(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function gg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function OS(t,e){let r=[];for(let n of t.dataTypes)gg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Il(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Bt.checkStrictMode)(t,e,t.opts.strictTypes)}var $i=class{constructor(e,r,n){if((0,Ao.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,Bt.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",_g(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Ao.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",V.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?Co.reportExtraError:Co.reportError)(this,this.def.error,r)}$dataError(){(0,Co.reportError)(this,this.def.$dataError||Co.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Co.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,wi.checkDataTypes)(c,r,s.opts.strictNumbers,wi.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,Pl.getSubschema)(this.it,e);(0,Pl.extendSubschemaData)(n,this.it,e),(0,Pl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return vS(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Bt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Bt.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}};ur.KeywordCxt=$i;function yg(t,e,r,n){let o=new $i(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Ao.funcKeywordCode)(o,r):"macro"in r?(0,Ao.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Ao.funcKeywordCode)(o,r)}var NS=/^\/(?:[^~]|~0|~1)*$/,CS=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function _g(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return V.default.rootData;if(t[0]==="/"){if(!NS.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=V.default.rootData}else{let u=CS.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,Bt.unescapeJsonPointer)(u))}`,i=(0,C._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}ur.getData=_g});var xi=T(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});var Ol=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Nl.default=Ol});var Zo=T(jl=>{"use strict";Object.defineProperty(jl,"__esModule",{value:!0});var Cl=No(),Al=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Cl.resolveUrl)(e,r,n),this.missingSchema=(0,Cl.normalizeId)((0,Cl.getFullPath)(e,this.missingRef))}};jl.default=Al});var Si=T(mt=>{"use strict";Object.defineProperty(mt,"__esModule",{value:!0});mt.resolveSchema=mt.getCompilingSchema=mt.resolveRef=mt.compileSchema=mt.SchemaEnv=void 0;var $t=G(),AS=xi(),Ur=Ft(),xt=No(),vg=ne(),jS=jo(),Tn=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,xt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};mt.SchemaEnv=Tn;function Ml(t){let e=bg.call(this,t);if(e)return e;let r=(0,xt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new $t.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:AS.default,code:(0,$t._)`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:[$t.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,$t.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:$t.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,$t._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,jS.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 f=new Function(`${Ur.default.self}`,`${Ur.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:m,items:h}=u;f.evaluated={props:m instanceof $t.Name?void 0:m,items:h instanceof $t.Name?void 0:h,dynamicProps:m instanceof $t.Name,dynamicItems:h instanceof $t.Name},f.source&&(f.source.evaluated=(0,$t.stringify)(f.evaluated))}return t.validate=f,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)}}mt.compileSchema=Ml;function ZS(t,e,r){var n;r=(0,xt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=DS.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 Tn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=MS.call(this,s)}mt.resolveRef=ZS;function MS(t){return(0,xt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Ml.call(this,t)}function bg(t){for(let e of this._compilations)if(qS(e,t))return e}mt.getCompilingSchema=bg;function qS(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function DS(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||ki.call(this,t,e)}function ki(t,e){let r=this.opts.uriResolver.parse(e),n=(0,xt._getFullPath)(this.opts.uriResolver,r),o=(0,xt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Zl.call(this,r,t);let s=(0,xt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=ki.call(this,t,i);return typeof a?.schema!="object"?void 0:Zl.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Ml.call(this,i),s===(0,xt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,xt.resolveUrl)(this.opts.uriResolver,o,u)),new Tn({schema:a,schemaId:c,root:t,baseId:o})}return Zl.call(this,r,i)}}mt.resolveSchema=ki;var VS=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Zl(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,vg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!VS.has(a)&&u&&(e=(0,xt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,vg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,xt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=ki.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Tn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var wg=T((X1,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 Vl=T((ej,Rg)=>{"use strict";var US=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),xg=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),ql=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),kg=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),FS=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function Dl(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 BS=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function $g(t){return t.length=0,!0}function HS(t,e,r){if(t.length){let n=Dl(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function GS(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=HS;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=$g}else{o.push(u);continue}}return o.length&&(a===$g?r.zone=o.join(""):i?n.push(o.join("")):n.push(Dl(o))),r.address=n.join(""),r}function Sg(t){if(JS(t,":")<2)return{host:t,isIPV6:!1};let e=GS(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 KS(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 WS={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},YS=/[@/?#:]/g,QS=/[@/?#]/g;function zg(t,e){let r=e?QS:YS;return r.lastIndex=0,t.replace(r,n=>WS[n])}function XS(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(ql(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));e&&kg(i)?r+=i:r+="%"+s,n+=2;continue}}r+=t[n]}return r}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(ql(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&kg(s)?e+=s:e+="%"+o,r+=2;continue}}FS(t[r])?e+=t[r]:e+=escape(t[r])}return e}function tz(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(ql(n)){e+="%"+n.toUpperCase(),r+=2;continue}}e+=escape(t[r])}return e}function rz(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!xg(r)){let n=Sg(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=zg(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}Rg.exports={nonSimpleDomain:BS,recomposeAuthority:rz,reescapeHostDelimiters:zg,normalizePercentEncoding:XS,normalizePathEncoding:ez,escapePreservingEscapes:tz,removeDotSegments:KS,isIPv4:xg,isUUID:US,normalizeIPv6:Sg,stringArrayToHexStripped:Dl}});var Og=T((tj,Ig)=>{"use strict";var{isUUID:nz}=Vl(),oz=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,sz=["http","https","ws","wss","urn","urn:uuid"];function iz(t){return sz.indexOf(t)!==-1}function Ll(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 Tg(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Pg(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 az(t){return t.secure=Ll(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function cz(t){if((t.port===(Ll(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 uz(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(oz);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=Ul(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function lz(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=Ul(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 dz(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!nz(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function pz(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Eg={scheme:"http",domainHost:!0,parse:Tg,serialize:Pg},fz={scheme:"https",domainHost:Eg.domainHost,parse:Tg,serialize:Pg},zi={scheme:"ws",domainHost:!0,parse:az,serialize:cz},mz={scheme:"wss",domainHost:zi.domainHost,parse:zi.parse,serialize:zi.serialize},hz={scheme:"urn",parse:uz,serialize:lz,skipNormalize:!0},gz={scheme:"urn:uuid",parse:dz,serialize:pz,skipNormalize:!0},Ri={http:Eg,https:fz,ws:zi,wss:mz,urn:hz,"urn:uuid":gz};Object.setPrototypeOf(Ri,null);function Ul(t){return t&&(Ri[t]||Ri[t.toLowerCase()])||void 0}Ig.exports={wsIsSecure:Ll,SCHEMES:Ri,isValidSchemeName:iz,getSchemeHandler:Ul}});var Mg=T((rj,Ti)=>{"use strict";var{normalizeIPv6:yz,removeDotSegments:Mo,recomposeAuthority:_z,normalizePercentEncoding:vz,normalizePathEncoding:bz,escapePreservingEscapes:wz,reescapeHostDelimiters:$z,isIPv4:xz,nonSimpleDomain:kz}=Vl(),{SCHEMES:Sz,getSchemeHandler:Cg}=Og();function zz(t,e){return typeof t=="string"?t=Iz(t,e):typeof t=="object"&&(t=Pn(Fr(t,e),e)),t}function Rz(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Ag(Pn(t,n),Pn(e,n),n,!0);return n.skipEscape=!0,Fr(o,n)}function Ag(t,e,r,n){let o={};return n||(t=Pn(Fr(t,r),r),e=Pn(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=Mo(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=Mo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Mo(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=Mo(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 Tz(t,e,r){let n=Ng(t,r),o=Ng(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=Cg(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=vz(r.path):(r.path=wz(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=_z(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=Mo(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 Pz=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Ez(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 jg(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(Pz);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=Ez(n,i);if(a!==void 0&&(n.error=n.error||a,o=!0),n.host)if(xz(n.host)===!1){let l=yz(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=Cg(r.scheme||n.scheme);if(!r.unicodeSupport&&(!c||!c.unicodeSupport)&&n.host&&(r.domainHost||c&&c.domainHost)&&s===!1&&kz(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=$z(unescape(n.host),s))),n.path&&(n.path=bz(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 Pn(t,e){return jg(t,e).parsed}function Iz(t,e){return Zg(t,e).normalized}function Zg(t,e){let{parsed:r,malformedAuthorityOrPort:n}=jg(t,e);return{normalized:n?t:Fr(r,e),malformedAuthorityOrPort:n}}function Ng(t,e){if(typeof t=="string"){let{normalized:r,malformedAuthorityOrPort:n}=Zg(t,e);return n?void 0:r}if(typeof t=="object")return Fr(t,e)}var Fl={SCHEMES:Sz,normalize:zz,resolve:Rz,resolveComponent:Ag,equal:Tz,serialize:Fr,parse:Pn};Ti.exports=Fl;Ti.exports.default=Fl;Ti.exports.fastUri=Fl});var Dg=T(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});var qg=Mg();qg.code='require("ajv/dist/runtime/uri").default';Bl.default=qg});var Jg=T(Ne=>{"use strict";Object.defineProperty(Ne,"__esModule",{value:!0});Ne.CodeGen=Ne.Name=Ne.nil=Ne.stringify=Ne.str=Ne._=Ne.KeywordCxt=void 0;var Oz=jo();Object.defineProperty(Ne,"KeywordCxt",{enumerable:!0,get:function(){return Oz.KeywordCxt}});var En=G();Object.defineProperty(Ne,"_",{enumerable:!0,get:function(){return En._}});Object.defineProperty(Ne,"str",{enumerable:!0,get:function(){return En.str}});Object.defineProperty(Ne,"stringify",{enumerable:!0,get:function(){return En.stringify}});Object.defineProperty(Ne,"nil",{enumerable:!0,get:function(){return En.nil}});Object.defineProperty(Ne,"Name",{enumerable:!0,get:function(){return En.Name}});Object.defineProperty(Ne,"CodeGen",{enumerable:!0,get:function(){return En.CodeGen}});var Nz=xi(),Bg=Zo(),Cz=vl(),qo=Si(),Az=G(),Do=No(),Pi=Oo(),Gl=ne(),Vg=wg(),jz=Dg(),Hg=(t,e)=>new RegExp(t,e);Hg.code="new RegExp";var Zz=["removeAdditional","useDefaults","coerceTypes"],Mz=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),qz={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."},Dz={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Lg=200;function Vz(t){var e,r,n,o,s,i,a,c,u,l,d,p,f,m,h,g,y,v,w,S,Z,De,it,en,ga;let Hn=t.strict,ya=(e=t.code)===null||e===void 0?void 0:e.optimize,zp=ya===!0||ya===void 0?1:ya||0,Rp=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Hg,Sv=(o=t.uriResolver)!==null&&o!==void 0?o:jz.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:Hn)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Hn)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:Hn)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:Hn)!==null&&p!==void 0?p:"log",strictRequired:(m=(f=t.strictRequired)!==null&&f!==void 0?f:Hn)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:zp,regExp:Rp}:{optimize:zp,regExp:Rp},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Lg,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Lg,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(v=t.messages)!==null&&v!==void 0?v:!0,inlineRefs:(w=t.inlineRefs)!==null&&w!==void 0?w:!0,schemaId:(S=t.schemaId)!==null&&S!==void 0?S:"$id",addUsedSchema:(Z=t.addUsedSchema)!==null&&Z!==void 0?Z:!0,validateSchema:(De=t.validateSchema)!==null&&De!==void 0?De:!0,validateFormats:(it=t.validateFormats)!==null&&it!==void 0?it:!0,unicodeRegExp:(en=t.unicodeRegExp)!==null&&en!==void 0?en:!0,int32range:(ga=t.int32range)!==null&&ga!==void 0?ga:!0,uriResolver:Sv}}var Vo=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,...Vz(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new Az.ValueScope({scope:{},prefixes:Mz,es5:r,lines:n}),this.logger=Gz(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,Cz.getRules)(),Ug.call(this,qz,e,"NOT SUPPORTED"),Ug.call(this,Dz,e,"DEPRECATED","warn"),this._metaOpts=Bz.call(this),e.formats&&Uz.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&Fz.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=Vg;n==="id"&&(o={...Vg},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 p=this._addSchema(l,d);return p.validate||i.call(this,p)}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 Bg.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,Do.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=Fg.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new qo.SchemaEnv({schema:{},schemaId:n});if(r=qo.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=Fg.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,Do.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(Kz.call(this,n,r),!r)return(0,Gl.eachItem)(n,s=>Hl.call(this,s)),this;Yz.call(this,r);let o={...r,type:(0,Pi.getJSONTypes)(r.type),schemaType:(0,Pi.getJSONTypes)(r.schemaType)};return(0,Gl.eachItem)(n,o.type.length===0?s=>Hl.call(this,s,o):s=>o.type.forEach(i=>Hl.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]=Gg(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,Do.normalizeId)(i||n);let u=Do.getSchemaRefs.call(this,e,n);return c=new qo.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):qo.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{qo.compileSchema.call(this,e)}finally{this.opts=r}}};Vo.ValidationError=Nz.default;Vo.MissingRefError=Bg.default;Ne.default=Vo;function Ug(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 Fg(t){return t=(0,Do.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 Uz(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function Fz(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 Bz(){let t={...this.opts};for(let e of Zz)delete t[e];return t}var Hz={log(){},warn(){},error(){}};function Gz(t){if(t===!1)return Hz;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 Kz(t,e){let{RULES:r}=this;if((0,Gl.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 Hl(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,Pi.getJSONTypes)(e.type),schemaType:(0,Pi.getJSONTypes)(e.schemaType)}};e.before?Wz.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 Wz(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 Yz(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Gg(e)),t.validateSchema=this.compile(e,!0))}var Qz={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Gg(t){return{anyOf:[t,Qz]}}});var Kg=T(Jl=>{"use strict";Object.defineProperty(Jl,"__esModule",{value:!0});var Xz={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Jl.default=Xz});var Xg=T(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.callRef=Br.getValidate=void 0;var eR=Zo(),Wg=ft(),Qe=G(),In=Ft(),Yg=Si(),Ei=ne(),tR={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=Yg.resolveRef.call(c,u,o,r);if(l===void 0)throw new eR.default(n.opts.uriResolver,o,r);if(l instanceof Yg.SchemaEnv)return p(l);return f(l);function d(){if(s===u)return Ii(t,i,s,s.$async);let m=e.scopeValue("root",{ref:u});return Ii(t,(0,Qe._)`${m}.validate`,u,u.$async)}function p(m){let h=Qg(t,m);Ii(t,h,m,m.$async)}function f(m){let h=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,Qe.stringify)(m)}:{ref:m}),g=e.name("valid"),y=t.subschema({schema:m,dataTypes:[],schemaPath:Qe.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(y),t.ok(g)}}};function Qg(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Qe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Br.getValidate=Qg;function Ii(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?In.default.this:Qe.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let m=o.let("valid");o.try(()=>{o.code((0,Qe._)`await ${(0,Wg.callValidateCode)(t,e,u)}`),f(e),i||o.assign(m,!0)},h=>{o.if((0,Qe._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),p(h),i||o.assign(m,!1)}),t.ok(m)}function d(){t.result((0,Wg.callValidateCode)(t,e,u),()=>f(e),()=>p(e))}function p(m){let h=(0,Qe._)`${m}.errors`;o.assign(In.default.vErrors,(0,Qe._)`${In.default.vErrors} === null ? ${h} : ${In.default.vErrors}.concat(${h})`),o.assign(In.default.errors,(0,Qe._)`${In.default.vErrors}.length`)}function f(m){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=Ei.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,Qe._)`${m}.evaluated.props`);s.props=Ei.mergeEvaluated.props(o,y,s.props,Qe.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Ei.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,Qe._)`${m}.evaluated.items`);s.items=Ei.mergeEvaluated.items(o,y,s.items,Qe.Name)}}}Br.callRef=Ii;Br.default=tR});var ey=T(Kl=>{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});var rR=Kg(),nR=Xg(),oR=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",rR.default,nR.default];Kl.default=oR});var ty=T(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});var Oi=G(),lr=Oi.operators,Ni={maximum:{okStr:"<=",ok:lr.LTE,fail:lr.GT},minimum:{okStr:">=",ok:lr.GTE,fail:lr.LT},exclusiveMaximum:{okStr:"<",ok:lr.LT,fail:lr.GTE},exclusiveMinimum:{okStr:">",ok:lr.GT,fail:lr.LTE}},sR={message:({keyword:t,schemaCode:e})=>(0,Oi.str)`must be ${Ni[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Oi._)`{comparison: ${Ni[t].okStr}, limit: ${e}}`},iR={keyword:Object.keys(Ni),type:"number",schemaType:"number",$data:!0,error:sR,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Oi._)`${r} ${Ni[e].fail} ${n} || isNaN(${r})`)}};Wl.default=iR});var ry=T(Yl=>{"use strict";Object.defineProperty(Yl,"__esModule",{value:!0});var Lo=G(),aR={message:({schemaCode:t})=>(0,Lo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Lo._)`{multipleOf: ${t}}`},cR={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:aR,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}))`)}};Yl.default=cR});var oy=T(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});function ny(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}Ql.default=ny;ny.code='require("ajv/dist/runtime/ucs2length").default'});var sy=T(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});var Hr=G(),uR=ne(),lR=oy(),dR={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}}`},pR={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:dR,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,uR.useFunc)(t.gen,lR.default)}(${r})`;t.fail$data((0,Hr._)`${i} ${s} ${n}`)}};Xl.default=pR});var iy=T(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var fR=ft(),mR=ne(),On=G(),hR={message:({schemaCode:t})=>(0,On.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,On._)`{pattern: ${t}}`},gR={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:hR,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,On._)`new RegExp`:(0,mR.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,On._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,On._)`!${l}`)}else{let c=(0,fR.usePattern)(t,o);t.fail$data((0,On._)`!${c}.test(${r})`)}}};ed.default=gR});var ay=T(td=>{"use strict";Object.defineProperty(td,"__esModule",{value:!0});var Uo=G(),yR={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Uo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Uo._)`{limit: ${t}}`},_R={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:yR,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Uo.operators.GT:Uo.operators.LT;t.fail$data((0,Uo._)`Object.keys(${r}).length ${o} ${n}`)}};td.default=_R});var cy=T(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});var Fo=ft(),Bo=G(),vR=ne(),bR={message:({params:{missingProperty:t}})=>(0,Bo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Bo._)`{missingProperty: ${t}}`},wR={keyword:"required",type:"object",schemaType:"array",$data:!0,error:bR,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 f=t.parentSchema.properties,{definedProperties:m}=t.it;for(let h of r)if(f?.[h]===void 0&&!m.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,y=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,vR.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Bo.nil,d);else for(let f of r)(0,Fo.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let m=e.let("valid",!0);t.block$data(m,()=>p(f,m)),t.ok(m)}else e.if((0,Fo.checkMissingProp)(t,r,f)),(0,Fo.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,Fo.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function p(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,Fo.propertyInData)(e,o,f,a.ownProperties)),e.if((0,Bo.not)(m),()=>{t.error(),e.break()})},Bo.nil)}}};rd.default=wR});var uy=T(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var Ho=G(),$R={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Ho.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Ho._)`{limit: ${t}}`},xR={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:$R,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?Ho.operators.GT:Ho.operators.LT;t.fail$data((0,Ho._)`${r}.length ${o} ${n}`)}};nd.default=xR});var Ci=T(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var ly=Rl();ly.code='require("ajv/dist/runtime/equal").default';od.default=ly});var dy=T(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var sd=Oo(),Ce=G(),kR=ne(),SR=Ci(),zR={message:({params:{i:t,j:e}})=>(0,Ce.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ce._)`{i: ${t}, j: ${e}}`},RR={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:zR,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,sd.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ce._)`${i} === false`),t.ok(c);function l(){let m=e.let("i",(0,Ce._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,Ce._)`${m} > 1`,()=>(d()?p:f)(m,h))}function d(){return u.length>0&&!u.some(m=>m==="object"||m==="array")}function p(m,h){let g=e.name("item"),y=(0,sd.checkDataTypes)(u,g,a.opts.strictNumbers,sd.DataType.Wrong),v=e.const("indices",(0,Ce._)`{}`);e.for((0,Ce._)`;${m}--;`,()=>{e.let(g,(0,Ce._)`${r}[${m}]`),e.if(y,(0,Ce._)`continue`),u.length>1&&e.if((0,Ce._)`typeof ${g} == "string"`,(0,Ce._)`${g} += "_"`),e.if((0,Ce._)`typeof ${v}[${g}] == "number"`,()=>{e.assign(h,(0,Ce._)`${v}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ce._)`${v}[${g}] = ${m}`)})}function f(m,h){let g=(0,kR.useFunc)(e,SR.default),y=e.name("outer");e.label(y).for((0,Ce._)`;${m}--;`,()=>e.for((0,Ce._)`${h} = ${m}; ${h}--;`,()=>e.if((0,Ce._)`${g}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};id.default=RR});var py=T(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});var ad=G(),TR=ne(),PR=Ci(),ER={message:"must be equal to constant",params:({schemaCode:t})=>(0,ad._)`{allowedValue: ${t}}`},IR={keyword:"const",$data:!0,error:ER,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,ad._)`!${(0,TR.useFunc)(e,PR.default)}(${r}, ${o})`):t.fail((0,ad._)`${s} !== ${r}`)}};cd.default=IR});var fy=T(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});var Go=G(),OR=ne(),NR=Ci(),CR={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Go._)`{allowedValues: ${t}}`},AR={keyword:"enum",schemaType:"array",$data:!0,error:CR,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,OR.useFunc)(e,NR.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 f=e.const("vSchema",s);l=(0,Go.or)(...o.map((m,h)=>p(f,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,Go._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function p(f,m){let h=o[m];return typeof h=="object"&&h!==null?(0,Go._)`${u()}(${r}, ${f}[${m}])`:(0,Go._)`${r} === ${h}`}}};ud.default=AR});var my=T(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});var jR=ty(),ZR=ry(),MR=sy(),qR=iy(),DR=ay(),VR=cy(),LR=uy(),UR=dy(),FR=py(),BR=fy(),HR=[jR.default,ZR.default,MR.default,qR.default,DR.default,VR.default,LR.default,UR.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},FR.default,BR.default];ld.default=HR});var pd=T(Jo=>{"use strict";Object.defineProperty(Jo,"__esModule",{value:!0});Jo.validateAdditionalItems=void 0;var Gr=G(),dd=ne(),GR={message:({params:{len:t}})=>(0,Gr.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Gr._)`{limit: ${t}}`},JR={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:GR,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,dd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}hy(t,n)}};function hy(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Gr._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Gr._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,dd.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Gr._)`${a} <= ${e.length}`);r.if((0,Gr.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:dd.Type.Num},u),i.allErrors||r.if((0,Gr.not)(u),()=>r.break())})}}Jo.validateAdditionalItems=hy;Jo.default=JR});var fd=T(Ko=>{"use strict";Object.defineProperty(Ko,"__esModule",{value:!0});Ko.validateTuple=void 0;var gy=G(),Ai=ne(),KR=ft(),WR={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return yy(t,"additionalItems",e);r.items=!0,!(0,Ai.alwaysValidSchema)(r,e)&&t.ok((0,KR.validateArray)(t))}};function yy(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=Ai.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,gy._)`${s}.length`);r.forEach((d,p)=>{(0,Ai.alwaysValidSchema)(a,d)||(n.if((0,gy._)`${u} > ${p}`,()=>t.subschema({keyword:i,schemaProp:p,dataProp:p},c)),t.ok(c))});function l(d){let{opts:p,errSchemaPath:f}=a,m=r.length,h=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(p.strictTuples&&!h){let g=`"${i}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,Ai.checkStrictMode)(a,g,p.strictTuples)}}}Ko.validateTuple=yy;Ko.default=WR});var _y=T(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var YR=fd(),QR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,YR.validateTuple)(t,"items")};md.default=QR});var by=T(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var vy=G(),XR=ne(),eT=ft(),tT=pd(),rT={message:({params:{len:t}})=>(0,vy.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,vy._)`{limit: ${t}}`},nT={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:rT,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,XR.alwaysValidSchema)(n,e)&&(o?(0,tT.validateAdditionalItems)(t,o):t.ok((0,eT.validateArray)(t)))}};hd.default=nT});var wy=T(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var ht=G(),ji=ne(),oT={message:({params:{min:t,max:e}})=>e===void 0?(0,ht.str)`must contain at least ${t} valid item(s)`:(0,ht.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ht._)`{minContains: ${t}}`:(0,ht._)`{minContains: ${t}, maxContains: ${e}}`},sT={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:oT,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,ht._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,ji.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,ji.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,ji.alwaysValidSchema)(s,r)){let h=(0,ht._)`${l} >= ${i}`;a!==void 0&&(h=(0,ht._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?f(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ht._)`${o}.length > 0`,p)):(e.let(d,!1),p()),t.result(d,()=>t.reset());function p(){let h=e.name("_valid"),g=e.let("count",0);f(h,()=>e.if(h,()=>m(g)))}function f(h,g){e.forRange("i",0,l,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:ji.Type.Num,compositeRule:!0},h),g()})}function m(h){e.code((0,ht._)`${h}++`),a===void 0?e.if((0,ht._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ht._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ht._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};gd.default=sT});var ky=T(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.validateSchemaDeps=Nt.validatePropertyDeps=Nt.error=void 0;var yd=G(),iT=ne(),Wo=ft();Nt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,yd.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,yd._)`{property: ${t},
8
8
  missingProperty: ${n},
9
9
  depsCount: ${e},
10
- deps: ${r}}`};var iT={keyword:"dependencies",type:"object",schemaType:"object",error:Ot.error,code(t){let[e,r]=aT(t);wy(t,e),$y(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 wy(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,Wo.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,Wo.checkReportMissingProp)(t,u)}):(r.if((0,gd._)`${c} && (${(0,Wo.checkMissingProp)(t,a,s)})`),(0,Wo.reportMissingProp)(t,s),r.else())}}Ot.validatePropertyDeps=wy;function $y(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,Wo.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=$y;Ot.default=iT});var Sy=R(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var ky=J(),cT=ne(),uT={message:"property name must be valid",params:({params:t})=>(0,ky._)`{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,ky.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};yd.default=lT});var vd=R(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var Zi=pt(),xt=J(),dT=Ut(),Mi=ne(),pT={message:"must NOT have additional properties",params:({params:t})=>(0,xt._)`{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,Mi.alwaysValidSchema)(i,r))return;let u=(0,Zi.allSchemaProperties)(n.properties),l=(0,Zi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,xt._)`${s} === ${dT.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?f(g):e.if(p(g),()=>f(g))})}function p(g){let _;if(u.length>8){let b=(0,Mi.schemaRefOrVal)(i,n.properties,"properties");_=(0,Zi.isOwnProperty)(e,b,g)}else u.length?_=(0,xt.or)(...u.map(b=>(0,xt._)`${g} === ${b}`)):_=xt.nil;return l.length&&(_=(0,xt.or)(_,...l.map(b=>(0,xt._)`${(0,Zi.usePattern)(t,b)}.test(${g})`))),(0,xt.not)(_)}function m(g){e.code((0,xt._)`delete ${o}[${g}]`)}function f(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,Mi.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,xt.not)(_),()=>{t.reset(),m(g)})):(h(g,_),a||e.if((0,xt.not)(_),()=>e.break()))}}function h(g,_,b){let w={keyword:"additionalProperties",dataProp:g,dataPropType:Mi.Type.Str};b===!1&&Object.assign(w,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(w,_)}}};_d.default=fT});var Ty=R(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var mT=jo(),zy=pt(),bd=ne(),Ry=vd(),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&&Ry.default.code(new mT.KeywordCxt(s,Ry.default,"additionalProperties"));let i=(0,zy.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=bd.mergeEvaluated.props(e,(0,bd.toHash)(i),s.props));let a=i.filter(d=>!(0,bd.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,zy.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)}}};wd.default=hT});var Oy=R($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var Py=pt(),qi=J(),Ey=ne(),Iy=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,Py.allSchemaProperties)(r),c=a.filter(h=>(0,Ey.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 qi.Name)&&(s.props=(0,Iy.evaluatedPropsToName)(e,s.props));let{props:d}=s;p();function p(){for(let h of a)u&&m(h),s.allErrors?f(h):(e.var(l,!0),f(h),e.if(l))}function m(h){for(let g in u)new RegExp(h).test(g)&&(0,Ey.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function f(h){e.forIn("key",n,g=>{e.if((0,qi._)`${(0,Py.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:Iy.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,qi._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,qi.not)(l),()=>e.break())})})}}};$d.default=gT});var Ny=R(xd=>{"use strict";Object.defineProperty(xd,"__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"}};xd.default=_T});var Cy=R(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var vT=pt(),bT={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:vT.validateUnion,error:{message:"must match a schema in anyOf"}};kd.default=bT});var Ay=R(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var Di=J(),wT=ne(),$T={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Di._)`{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 p;(0,wT.alwaysValidSchema)(o,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Di._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Di._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Di.Name)})})}}};Sd.default=xT});var jy=R(zd=>{"use strict";Object.defineProperty(zd,"__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)})}};zd.default=ST});var qy=R(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var Li=J(),My=ne(),zT={message:({params:t})=>(0,Li.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Li._)`{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,My.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Zy(n,"then"),s=Zy(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,Li.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 p=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(p,i),d?e.assign(d,(0,Li._)`${l}`):t.setParams({ifClause:l})}}}};function Zy(t,e){let r=t.schema[e];return r!==void 0&&!(0,My.alwaysValidSchema)(t,r)}Rd.default=RT});var Dy=R(Td=>{"use strict";Object.defineProperty(Td,"__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`)}};Td.default=PT});var Ly=R(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var ET=dd(),IT=yy(),OT=pd(),NT=vy(),CT=by(),AT=xy(),jT=Sy(),ZT=vd(),MT=Ty(),qT=Oy(),DT=Ny(),LT=Cy(),VT=Ay(),UT=jy(),FT=qy(),BT=Dy();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}Pd.default=HT});var Vy=R(Ed=>{"use strict";Object.defineProperty(Ed,"__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?p():m();function p(){let f=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,$e._)`${f}[${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 S=l.$async?(0,$e._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,$e._)`${_}(${n})`,Z=(0,$e._)`(typeof ${_} == "function" ? ${S} : ${_}.test(${n}))`;return(0,$e._)`${_} && ${_} !== true && ${g} === ${e} && !${Z}`}}function m(){let f=d.formats[s];if(!f){b();return}if(f===!0)return;let[h,g,_]=w(f);h===e&&t.pass(S());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 De=Z instanceof RegExp?(0,$e.regexpCode)(Z):c.code.formats?(0,$e._)`${c.code.formats}${(0,$e.getProperty)(s)}`:void 0,st=r.scopeValue("formats",{key:s,ref:Z,code:De});return typeof Z=="object"&&!(Z instanceof RegExp)?[Z.type||"string",Z.validate,(0,$e._)`${st}.validate`]:["string",Z,st]}function S(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.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})`}}}};Ed.default=GT});var Uy=R(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var KT=Vy(),WT=[KT.default];Id.default=WT});var Fy=R(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.contentVocabulary=Nn.metadataVocabulary=void 0;Nn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Nn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Hy=R(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var YT=Xg(),QT=fy(),XT=Ly(),eP=Uy(),By=Fy(),tP=[YT.default,QT.default,(0,XT.default)(),eP.default,By.metadataVocabulary,By.contentVocabulary];Od.default=tP});var Gy=R(Vi=>{"use strict";Object.defineProperty(Vi,"__esModule",{value:!0});Vi.DiscrError=void 0;var Jy;(function(t){t.Tag="tag",t.Mapping="mapping"})(Jy||(Vi.DiscrError=Jy={}))});var Wy=R(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var Cn=J(),Nd=Gy(),Ky=Si(),rP=Zo(),nP=ne(),oP={message:({params:{discrError:t,tagName:e}})=>t===Nd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Cn._)`{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,Cn._)`${r}${(0,Cn.getProperty)(a)}`);e.if((0,Cn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Nd.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let m=p();e.if(!1);for(let f in m)e.elseIf((0,Cn._)`${u} === ${f}`),e.assign(c,d(m[f]));e.else(),t.error(!1,{discrError:Nd.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(m){let f=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},f);return t.mergeEvaluated(h,Cn.Name),f}function p(){var m;let f={},h=_(o),g=!0;for(let S=0;S<i.length;S++){let Z=i[S];if(Z?.$ref&&!(0,nP.schemaHasRulesButRef)(Z,s.self.RULES)){let st=Z.$ref;if(Z=Ky.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,st),Z instanceof Ky.SchemaEnv&&(Z=Z.schema),Z===void 0)throw new rP.default(s.opts.uriResolver,s.baseId,st)}let De=(m=Z?.properties)===null||m===void 0?void 0:m[a];if(typeof De!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(Z)),b(De,S)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return f;function _({required:S}){return Array.isArray(S)&&S.includes(a)}function b(S,Z){if(S.const)w(S.const,Z);else if(S.enum)for(let De of S.enum)w(De,Z);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function w(S,Z){if(typeof S!="string"||S in f)throw new Error(`discriminator: "${a}" values must be unique strings`);f[S]=Z}}}};Cd.default=sP});var Yy=R((Uj,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 jd=R((ge,Ad)=>{"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=Jg(),cP=Hy(),uP=Wy(),Qy=Yy(),lP=["/properties"],Ui="http://json-schema.org/draft-07/schema",An=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(Qy,lP):Qy;this.addMetaSchema(e,Ui,!1),this.refs["http://json-schema.org/schema"]=Ui}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Ui)?Ui:void 0)}};ge.Ajv=An;Ad.exports=ge=An;Ad.exports.Ajv=An;Object.defineProperty(ge,"__esModule",{value:!0});ge.default=An;var dP=jo();Object.defineProperty(ge,"KeywordCxt",{enumerable:!0,get:function(){return dP.KeywordCxt}});var jn=J();Object.defineProperty(ge,"_",{enumerable:!0,get:function(){return jn._}});Object.defineProperty(ge,"str",{enumerable:!0,get:function(){return jn.str}});Object.defineProperty(ge,"stringify",{enumerable:!0,get:function(){return jn.stringify}});Object.defineProperty(ge,"nil",{enumerable:!0,get:function(){return jn.nil}});Object.defineProperty(ge,"Name",{enumerable:!0,get:function(){return jn.Name}});Object.defineProperty(ge,"CodeGen",{enumerable:!0,get:function(){return jn.CodeGen}});var pP=xi();Object.defineProperty(ge,"ValidationError",{enumerable:!0,get:function(){return pP.default}});var fP=Zo();Object.defineProperty(ge,"MissingRefError",{enumerable:!0,get:function(){return fP.default}})});var i_=R(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(r_,Dd),time:Nt(Md(!0),Ld),"date-time":Nt(Xy(!0),o_),"iso-time":Nt(Md(),n_),"iso-date-time":Nt(Xy(),s_),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:t_},double:{type:"number",validate:t_},password:!0,binary:!0};Ct.fastFormats={...Ct.fullFormats,date:Nt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Dd),time:Nt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Ld),"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,o_),"iso-time":Nt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,n_),"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,s_),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 r_(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 Dd(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Zd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Md(t){return function(r){let n=Zd.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,p=o-u*c-(d<0?1:0);return(p===23||p===-1)&&(d===59||d===-1)&&i<61}}function Ld(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 n_(t,e){if(!(t&&e))return;let r=Zd.exec(t),n=Zd.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 qd=/t|\s/i;function Xy(t){let e=Md(t);return function(n){let o=n.split(qd);return o.length===2&&r_(o[0])&&e(o[1])}}function o_(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function s_(t,e){if(!(t&&e))return;let[r,n]=t.split(qd),[o,s]=e.split(qd),i=Dd(r,o);if(i!==void 0)return i||Ld(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 e_=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function bP(t){return e_.lastIndex=0,e_.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 t_(){return!0}var SP=/[^\\]\\Z/;function zP(t){if(SP.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var a_=R(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.formatLimitDefinition=void 0;var RP=jd(),kt=J(),ur=kt.operators,Fi={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,kt.str)`should be ${Fi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,kt._)`{comparison: ${Fi[t].okStr}, limit: ${e}}`};Zn.formatLimitDefinition={keyword:Object.keys(Fi),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 p=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,kt._)`${p}[${c.schemaCode}]`);t.fail$data((0,kt.or)((0,kt._)`typeof ${m} != "object"`,(0,kt._)`${m} instanceof RegExp`,(0,kt._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let p=c.schema,m=a.formats[p];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${p}" does not define "compare" function`);let f=e.scopeValue("formats",{key:p,ref:m,code:i.code.formats?(0,kt._)`${i.code.formats}${(0,kt.getProperty)(p)}`:void 0});t.fail$data(d(f))}function d(p){return(0,kt._)`${p}.compare(${r}, ${n}) ${Fi[o].fail} 0`}},dependencies:["format"]};var PP=t=>(t.addKeyword(Zn.formatLimitDefinition),t);Zn.default=PP});var d_=R((Yo,l_)=>{"use strict";Object.defineProperty(Yo,"__esModule",{value:!0});var Mn=i_(),EP=a_(),Vd=J(),c_=new Vd.Name("fullFormats"),IP=new Vd.Name("fastFormats"),Ud=(t,e={keywords:!0})=>{if(Array.isArray(e))return u_(t,e,Mn.fullFormats,c_),t;let[r,n]=e.mode==="fast"?[Mn.fastFormats,IP]:[Mn.fullFormats,c_],o=e.formats||Mn.formatNames;return u_(t,o,r,n),e.keywords&&(0,EP.default)(t),t};Ud.get=(t,e="full")=>{let n=(e==="fast"?Mn.fastFormats:Mn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function u_(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Vd._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}l_.exports=Yo=Ud;Object.defineProperty(Yo,"__esModule",{value:!0});Yo.default=Ud});var V={};_a(V,{BRAND:()=>rb,DIRTY:()=>mr,EMPTY_PATH:()=>Cv,INVALID:()=>M,NEVER:()=>qb,OK:()=>Ae,ParseStatus:()=>Pe,Schema:()=>H,ZodAny:()=>Jt,ZodArray:()=>Mt,ZodBigInt:()=>gr,ZodBoolean:()=>yr,ZodBranded:()=>Gn,ZodCatch:()=>Tr,ZodDate:()=>_r,ZodDefault:()=>Rr,ZodDiscriminatedUnion:()=>ps,ZodEffects:()=>at,ZodEnum:()=>Sr,ZodError:()=>Be,ZodFirstPartyTypeKind:()=>x,ZodFunction:()=>ms,ZodIntersection:()=>$r,ZodIssueCode:()=>$,ZodLazy:()=>xr,ZodLiteral:()=>kr,ZodMap:()=>an,ZodNaN:()=>un,ZodNativeEnum:()=>zr,ZodNever:()=>gt,ZodNull:()=>br,ZodNullable:()=>Tt,ZodNumber:()=>hr,ZodObject:()=>Je,ZodOptional:()=>He,ZodParsedType:()=>T,ZodPipeline:()=>Kn,ZodPromise:()=>Gt,ZodReadonly:()=>Pr,ZodRecord:()=>fs,ZodSchema:()=>H,ZodSet:()=>cn,ZodString:()=>Ht,ZodSymbol:()=>on,ZodTransformer:()=>at,ZodTuple:()=>Rt,ZodType:()=>H,ZodUndefined:()=>vr,ZodUnion:()=>wr,ZodUnknown:()=>Zt,ZodVoid:()=>sn,addIssueToContext:()=>k,any:()=>db,array:()=>hb,bigint:()=>ib,boolean:()=>Mp,coerce:()=>Mb,custom:()=>Ap,date:()=>ab,datetimeRegex:()=>Np,defaultErrorMap:()=>At,discriminatedUnion:()=>_b,effect:()=>Eb,enum:()=>Rb,function:()=>kb,getErrorMap:()=>tn,getParsedType:()=>zt,instanceof:()=>ob,intersection:()=>vb,isAborted:()=>ls,isAsync:()=>rn,isDirty:()=>ds,isValid:()=>Bt,late:()=>nb,lazy:()=>Sb,literal:()=>zb,makeIssue:()=>Jn,map:()=>$b,nan:()=>sb,nativeEnum:()=>Tb,never:()=>fb,null:()=>lb,nullable:()=>Ob,number:()=>Zp,object:()=>$a,objectUtil:()=>va,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:()=>jp,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 va;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(va||(va={}));var T=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 T.undefined;case"string":return T.string;case"number":return Number.isNaN(t)?T.nan:T.number;case"boolean":return T.boolean;case"function":return T.function;case"bigint":return T.bigint;case"symbol":return T.symbol;case"object":return Array.isArray(t)?T.array:t===null?T.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?T.promise:typeof Map<"u"&&t instanceof Map?T.map:typeof Set<"u"&&t instanceof Set?T.set:typeof Date<"u"&&t instanceof Date?T.date:T.object;default:return T.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:"),Be=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()}};Be.create=t=>new Be(t);var Ov=(t,e)=>{let r;switch(t.code){case $.invalid_type:t.received===T.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 Tp=At;function Nv(t){Tp=t}function tn(){return Tp}var Jn=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=tn(),n=Jn({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 Pe=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}),ls=t=>t.status==="aborted",ds=t=>t.status==="dirty",Bt=t=>t.status==="valid",rn=t=>typeof Promise<"u"&&t instanceof Promise;var I;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(I||(I={}));var it=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}},Pp=(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 Be(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 Pe,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(rn(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 Pp(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(rn(o)?o:Promise.resolve(o));return Pp(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 at({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 He.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 at({...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 Gn({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 Kn.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})+$",ba,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}(=)?))?$/,Ip="((\\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(`^${Ip}$`);function Op(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(`^${Op(t)}$`)}function Np(t){let e=`${Ip}T${Op(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)!==T.string){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:T.string,received:s.parsedType}),M}let n=new Pe,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")ba||(ba=new RegExp(Uv,"u")),ba.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"?Np(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,...I.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...I.errToObj(e)})}url(e){return this._addCheck({kind:"url",...I.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...I.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...I.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...I.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...I.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...I.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...I.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...I.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...I.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...I.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...I.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...I.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,...I.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,...I.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...I.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...I.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...I.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...I.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...I.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...I.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...I.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...I.errToObj(r)})}nonempty(e){return this.min(1,I.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)!==T.number){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:T.number,received:s.parsedType}),M}let n,o=new Pe;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,I.toString(r))}gt(e,r){return this.setLimit("min",e,!1,I.toString(r))}lte(e,r){return this.setLimit("max",e,!0,I.toString(r))}lt(e,r){return this.setLimit("max",e,!1,I.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:I.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:I.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:I.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:I.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:I.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:I.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:I.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:I.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:I.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:I.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)!==T.bigint)return this._getInvalidInput(e);let n,o=new Pe;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:T.bigint,received:r.parsedType}),M}gte(e,r){return this.setLimit("min",e,!0,I.toString(r))}gt(e,r){return this.setLimit("min",e,!1,I.toString(r))}lte(e,r){return this.setLimit("max",e,!0,I.toString(r))}lt(e,r){return this.setLimit("max",e,!1,I.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:I.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:I.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:I.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:I.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:I.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:I.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)!==T.boolean){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:T.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)!==T.date){let s=this._getOrReturnCtx(e);return k(s,{code:$.invalid_type,expected:T.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 Pe,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:I.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:I.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 on=class extends H{_parse(e){if(this._getType(e)!==T.symbol){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:T.symbol,received:n.parsedType}),M}return Ae(e.data)}};on.create=t=>new on({typeName:x.ZodSymbol,...F(t)});var vr=class extends H{_parse(e){if(this._getType(e)!==T.undefined){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:T.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)!==T.null){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:T.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 gt=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return k(r,{code:$.invalid_type,expected:T.never,received:r.parsedType}),M}};gt.create=t=>new gt({typeName:x.ZodNever,...F(t)});var sn=class extends H{_parse(e){if(this._getType(e)!==T.undefined){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:T.void,received:n.parsedType}),M}return Ae(e.data)}};sn.create=t=>new sn({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!==T.array)return k(r,{code:$.invalid_type,expected:T.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 it(r,i,r.path,a)))).then(i=>Pe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new it(r,i,r.path,a)));return Pe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:I.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:I.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:I.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 nn(t){if(t instanceof Je){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=He.create(nn(n))}return new Je({...t._def,shape:()=>e})}else return t instanceof Mt?new Mt({...t._def,type:nn(t.element)}):t instanceof He?He.create(nn(t.unwrap())):t instanceof Tt?Tt.create(nn(t.unwrap())):t instanceof Rt?Rt.create(t.items.map(e=>nn(e))):t}var Je=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)!==T.object){let u=this._getOrReturnCtx(e);return k(u,{code:$.invalid_type,expected:T.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 gt&&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 it(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof gt){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 it(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,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>Pe.mergeObjectSync(n,u)):Pe.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return I.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:I.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 nn(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 He;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Cp(Y.objectKeys(this.shape))}};Je.create=(t,e)=>new Je({shape:()=>t,unknownKeys:"strip",catchall:gt.create(),typeName:x.ZodObject,...F(e)});Je.strictCreate=(t,e)=>new Je({shape:()=>t,unknownKeys:"strict",catchall:gt.create(),typeName:x.ZodObject,...F(e)});Je.lazycreate=(t,e)=>new Je({shape:t,unknownKeys:"strip",catchall:gt.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 Be(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 Be(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 at?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 He?[void 0,...jt(t.unwrap())]:t instanceof Tt?[null,...jt(t.unwrap())]:t instanceof Gn||t instanceof Pr?jt(t.unwrap()):t instanceof Tr?jt(t._def.innerType):[],ps=class t extends H{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.object)return k(r,{code:$.invalid_type,expected:T.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 wa(t,e){let r=zt(t),n=zt(e);if(t===e)return{valid:!0,data:t};if(r===T.object&&n===T.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=wa(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===T.array&&n===T.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=wa(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===T.date&&n===T.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(ls(s)||ls(i))return M;let a=wa(s.value,i.value);return a.valid?((ds(s)||ds(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!==T.array)return k(n,{code:$.invalid_type,expected:T.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 it(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Pe.mergeArray(r,i)):Pe.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 fs=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!==T.object)return k(n,{code:$.invalid_type,expected:T.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 it(n,a,n.path,a)),value:i._parse(new it(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Pe.mergeObjectAsync(r,o):Pe.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)})}},an=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!==T.map)return k(n,{code:$.invalid_type,expected:T.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 it(n,a,n.path,[u,"key"])),value:s._parse(new it(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}}}};an.create=(t,e,r)=>new an({valueType:e,keyType:t,typeName:x.ZodMap,...F(r)});var cn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==T.set)return k(n,{code:$.invalid_type,expected:T.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 it(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:I.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:I.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};cn.create=(t,e)=>new cn({valueType:t,minSize:null,maxSize:null,typeName:x.ZodSet,...F(e)});var ms=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.function)return k(r,{code:$.invalid_type,expected:T.function,received:r.parsedType}),M;function n(a,c){return Jn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,tn(),At].filter(u=>!!u),issueData:{code:$.invalid_arguments,argumentsError:c}})}function o(a,c){return Jn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,tn(),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 Be([]),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 Be([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Be([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 Cp(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=Cp;var zr=class extends H{_parse(e){let r=Y.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==T.string&&n.parsedType!==T.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!==T.promise&&r.common.async===!1)return k(r,{code:$.invalid_type,expected:T.promise,received:r.parsedType}),M;let n=r.parsedType===T.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 at=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)}};at.create=(t,e,r)=>new at({schema:t,typeName:x.ZodEffects,effect:e,...F(r)});at.createWithPreprocess=(t,e,r)=>new at({schema:e,effect:{type:"preprocess",transform:t},typeName:x.ZodEffects,...F(r)});var He=class extends H{_parse(e){return this._getType(e)===T.undefined?Ae(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};He.create=(t,e)=>new He({innerType:t,typeName:x.ZodOptional,...F(e)});var Tt=class extends H{_parse(e){return this._getType(e)===T.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===T.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 rn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Be(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Be(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 un=class extends H{_parse(e){if(this._getType(e)!==T.nan){let n=this._getOrReturnCtx(e);return k(n,{code:$.invalid_type,expected:T.nan,received:n.parsedType}),M}return{status:"valid",value:e.data}}};un.create=t=>new un({typeName:x.ZodNaN,...F(t)});var rb=Symbol("zod_brand"),Gn=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}},Kn=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 rn(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 Ep(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Ap(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=Ep(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Ep(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Jt.create()}var nb={object:Je.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}`})=>Ap(r=>r instanceof t,e),jp=Ht.create,Zp=hr.create,sb=un.create,ib=gr.create,Mp=yr.create,ab=_r.create,cb=on.create,ub=vr.create,lb=br.create,db=Jt.create,pb=Zt.create,fb=gt.create,mb=sn.create,hb=Mt.create,$a=Je.create,gb=Je.strictCreate,yb=wr.create,_b=ps.create,vb=$r.create,bb=Rt.create,wb=fs.create,$b=an.create,xb=cn.create,kb=ms.create,Sb=xr.create,zb=kr.create,Rb=Sr.create,Tb=zr.create,Pb=Gt.create,Eb=at.create,Ib=He.create,Ob=Tt.create,Nb=at.createWithPreprocess,Cb=Kn.create,Ab=()=>jp().optional(),jb=()=>Zp().optional(),Zb=()=>Mp().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.")}},hs={};function et(t){return t&&Object.assign(hs,t),hs}var Q={};_a(Q,{BIGINT_FORMAT_RANGES:()=>Dp,Class:()=>ka,NUMBER_FORMAT_RANGES:()=>Ia,aborted:()=>Ir,allowsEval:()=>Ta,assert:()=>Hb,assertEqual:()=>Vb,assertIs:()=>Fb,assertNever:()=>Bb,assertNotEqual:()=>Ub,assignProp:()=>Ra,cached:()=>Qn,captureStackTrace:()=>ys,cleanEnum:()=>sw,cleanRegex:()=>eo,clone:()=>tt,createTransparentProxy:()=>Qb,defineLazy:()=>de,esc:()=>Er,escapeRegex:()=>Kt,extend:()=>tw,finalizeIssue:()=>yt,floatSafeRemainder:()=>za,getElementAtPath:()=>Jb,getEnumValues:()=>Yn,getLengthableOrigin:()=>to,getParsedType:()=>Yb,getSizableOrigin:()=>Lp,isObject:()=>ln,isPlainObject:()=>dn,issue:()=>Oa,joinValues:()=>gs,jsonStringifyReplacer:()=>Sa,merge:()=>rw,normalizeParams:()=>q,nullish:()=>Xn,numKeys:()=>Wb,omit:()=>ew,optionalKeys:()=>Ea,partial:()=>nw,pick:()=>Xb,prefixIssues:()=>Pt,primitiveTypes:()=>qp,promiseAllObject:()=>Gb,propertyKeyTypes:()=>Pa,randomString:()=>Kb,required:()=>ow,stringifyPrimitive:()=>_s,unwrapMessage:()=>Wn});function Vb(t){return t}function Ub(t){return t}function Fb(t){}function Bb(t){throw new Error}function Hb(t){}function Yn(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 gs(t,e="|"){return t.map(r=>_s(r)).join(e)}function Sa(t,e){return typeof e=="bigint"?e.toString():e}function Qn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Xn(t){return t==null}function eo(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function za(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 Ra(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 ys=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function ln(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ta=Qn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function dn(t){if(ln(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(ln(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}`)}},Pa=new Set(["string","number","symbol"]),qp=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 _s(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ea(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Ia={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]},Dp={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(!dn(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 Ra(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 Ra(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 Wn(t){return typeof t=="string"?t:t?.message}function yt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Wn(t.inst?._zod.def?.error?.(t))??Wn(e?.error?.(t))??Wn(r.customError?.(t))??Wn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Lp(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function to(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Oa(...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 ka=class{constructor(...e){}};var Vp=(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,Sa,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},vs=v("$ZodError",Vp),ro=v("$ZodError",Vp,{Parent:Error});function Na(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 Ca(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 Aa=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=>yt(c,s,et())));throw ys(a,o?.callee),a}return i.value},ja=Aa(ro),Za=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=>yt(c,s,et())));throw ys(a,o?.callee),a}return i.value},Ma=Za(ro),qa=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??vs)(s.issues.map(i=>yt(i,o,et())))}:{success:!0,data:s.value}},Or=qa(ro),Da=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=>yt(i,o,et())))}:{success:!0,data:s.value}},Nr=Da(ro);var Up=/^[cC][^\s-]{8,}$/,Fp=/^[0-9a-z]+$/,Bp=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Hp=/^[0-9a-vA-V]{20}$/,Jp=/^[A-Za-z0-9]{27}$/,Gp=/^[a-zA-Z0-9_-]{21}$/,Kp=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Wp=/^([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})$/,La=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 Yp=/^(?!\.)(?!.*\.\.)([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 Qp(){return new RegExp(aw,"u")}var 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])$/,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})$/,tf=/^((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])$/,rf=/^(([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])$/,nf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Va=/^[A-Za-z0-9_-]*$/,of=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var sf=/^\+(?:[0-9]){6,14}[0-9]$/,af="(?:(?:\\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])))",cf=new RegExp(`^${af}$`);function uf(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 lf(t){return new RegExp(`^${uf(t)}$`)}function df(t){let e=uf({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(`^${af}T(?:${n})$`)}var pf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var ff=/^\d+$/,mf=/^-?\d+(?:\.\d+)?/i,hf=/true|false/i,gf=/null/i;var yf=/^[^A-Z]*$/,_f=/^[^a-z]*$/;var Ee=v("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),vf={number:"number",bigint:"bigint",object:"date"},Ua=v("$ZodCheckLessThan",(t,e)=>{Ee.init(t,e);let r=vf[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})}}),Fa=v("$ZodCheckGreaterThan",(t,e)=>{Ee.init(t,e);let r=vf[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})}}),bf=v("$ZodCheckMultipleOf",(t,e)=>{Ee.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):za(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})}}),wf=v("$ZodCheckNumberFormat",(t,e)=>{Ee.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Ia[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=ff)}),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 $f=v("$ZodCheckMaxLength",(t,e)=>{var r;Ee.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Xn(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=to(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),xf=v("$ZodCheckMinLength",(t,e)=>{var r;Ee.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Xn(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=to(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),kf=v("$ZodCheckLengthEquals",(t,e)=>{var r;Ee.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Xn(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=to(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})}}),no=v("$ZodCheckStringFormat",(t,e)=>{var r,n;Ee.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=()=>{})}),Sf=v("$ZodCheckRegex",(t,e)=>{no.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})}}),zf=v("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=yf),no.init(t,e)}),Rf=v("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=_f),no.init(t,e)}),Tf=v("$ZodCheckIncludes",(t,e)=>{Ee.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})}}),Pf=v("$ZodCheckStartsWith",(t,e)=>{Ee.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})}}),Ef=v("$ZodCheckEndsWith",(t,e)=>{Ee.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 If=v("$ZodCheckOverwrite",(t,e)=>{Ee.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var ws=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 aT={keyword:"dependencies",type:"object",schemaType:"object",error:Nt.error,code(t){let[e,r]=cT(t);$y(t,e),xy(t,r)}};function cT({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 $y(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,Wo.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,Wo.checkReportMissingProp)(t,u)}):(r.if((0,yd._)`${c} && (${(0,Wo.checkMissingProp)(t,a,s)})`),(0,Wo.reportMissingProp)(t,s),r.else())}}Nt.validatePropertyDeps=$y;function xy(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,iT.alwaysValidSchema)(s,e[a])||(r.if((0,Wo.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))}Nt.validateSchemaDeps=xy;Nt.default=aT});var zy=T(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var Sy=G(),uT=ne(),lT={message:"property name must be valid",params:({params:t})=>(0,Sy._)`{propertyName: ${t.propertyName}}`},dT={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:lT,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,uT.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,Sy.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};_d.default=dT});var bd=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var Zi=ft(),kt=G(),pT=Ft(),Mi=ne(),fT={message:"must NOT have additional properties",params:({params:t})=>(0,kt._)`{additionalProperty: ${t.additionalProperty}}`},mT={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:fT,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,Mi.alwaysValidSchema)(i,r))return;let u=(0,Zi.allSchemaProperties)(n.properties),l=(0,Zi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,kt._)`${s} === ${pT.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?m(g):e.if(p(g),()=>m(g))})}function p(g){let y;if(u.length>8){let v=(0,Mi.schemaRefOrVal)(i,n.properties,"properties");y=(0,Zi.isOwnProperty)(e,v,g)}else u.length?y=(0,kt.or)(...u.map(v=>(0,kt._)`${g} === ${v}`)):y=kt.nil;return l.length&&(y=(0,kt.or)(y,...l.map(v=>(0,kt._)`${(0,Zi.usePattern)(t,v)}.test(${g})`))),(0,kt.not)(y)}function f(g){e.code((0,kt._)`delete ${o}[${g}]`)}function m(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Mi.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(h(g,y,!1),e.if((0,kt.not)(y),()=>{t.reset(),f(g)})):(h(g,y),a||e.if((0,kt.not)(y),()=>e.break()))}}function h(g,y,v){let w={keyword:"additionalProperties",dataProp:g,dataPropType:Mi.Type.Str};v===!1&&Object.assign(w,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(w,y)}}};vd.default=mT});var Py=T($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var hT=jo(),Ry=ft(),wd=ne(),Ty=bd(),gT={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&&Ty.default.code(new hT.KeywordCxt(s,Ty.default,"additionalProperties"));let i=(0,Ry.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=wd.mergeEvaluated.props(e,(0,wd.toHash)(i),s.props));let a=i.filter(d=>!(0,wd.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,Ry.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=gT});var Ny=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var Ey=ft(),qi=G(),Iy=ne(),Oy=ne(),yT={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,Ey.allSchemaProperties)(r),c=a.filter(h=>(0,Iy.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 qi.Name)&&(s.props=(0,Oy.evaluatedPropsToName)(e,s.props));let{props:d}=s;p();function p(){for(let h of a)u&&f(h),s.allErrors?m(h):(e.var(l,!0),m(h),e.if(l))}function f(h){for(let g in u)new RegExp(h).test(g)&&(0,Iy.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,g=>{e.if((0,qi._)`${(0,Ey.usePattern)(t,h)}.test(${g})`,()=>{let y=c.includes(h);y||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:Oy.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,qi._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,qi.not)(l),()=>e.break())})})}}};xd.default=yT});var Cy=T(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var _T=ne(),vT={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,_T.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"}};kd.default=vT});var Ay=T(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var bT=ft(),wT={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:bT.validateUnion,error:{message:"must match a schema in anyOf"}};Sd.default=wT});var jy=T(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var Di=G(),$T=ne(),xT={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Di._)`{passingSchemas: ${t.passing}}`},kT={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:xT,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 p;(0,$T.alwaysValidSchema)(o,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Di._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Di._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Di.Name)})})}}};zd.default=kT});var Zy=T(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var ST=ne(),zT={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,ST.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Rd.default=zT});var Dy=T(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var Vi=G(),qy=ne(),RT={message:({params:t})=>(0,Vi.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Vi._)`{failingKeyword: ${t.ifClause}}`},TT={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:RT,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,qy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=My(n,"then"),s=My(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,Vi.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 p=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(p,i),d?e.assign(d,(0,Vi._)`${l}`):t.setParams({ifClause:l})}}}};function My(t,e){let r=t.schema[e];return r!==void 0&&!(0,qy.alwaysValidSchema)(t,r)}Td.default=TT});var Vy=T(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var PT=ne(),ET={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,PT.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Pd.default=ET});var Ly=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var IT=pd(),OT=_y(),NT=fd(),CT=by(),AT=wy(),jT=ky(),ZT=zy(),MT=bd(),qT=Py(),DT=Ny(),VT=Cy(),LT=Ay(),UT=jy(),FT=Zy(),BT=Dy(),HT=Vy();function GT(t=!1){let e=[VT.default,LT.default,UT.default,FT.default,BT.default,HT.default,ZT.default,MT.default,jT.default,qT.default,DT.default];return t?e.push(OT.default,CT.default):e.push(IT.default,NT.default),e.push(AT.default),e}Ed.default=GT});var Uy=T(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var $e=G(),JT={message:({schemaCode:t})=>(0,$e.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,$e._)`{format: ${t}}`},KT={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?p():f();function p(){let m=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,$e._)`${m}[${i}]`),g=r.let("fType"),y=r.let("format");r.if((0,$e._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,$e._)`${h}.type || "string"`).assign(y,(0,$e._)`${h}.validate`),()=>r.assign(g,(0,$e._)`"string"`).assign(y,h)),t.fail$data((0,$e.or)(v(),w()));function v(){return c.strictSchema===!1?$e.nil:(0,$e._)`${i} && !${y}`}function w(){let S=l.$async?(0,$e._)`(${h}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,$e._)`${y}(${n})`,Z=(0,$e._)`(typeof ${y} == "function" ? ${S} : ${y}.test(${n}))`;return(0,$e._)`${y} && ${y} !== true && ${g} === ${e} && !${Z}`}}function f(){let m=d.formats[s];if(!m){v();return}if(m===!0)return;let[h,g,y]=w(m);h===e&&t.pass(S());function v(){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 De=Z instanceof RegExp?(0,$e.regexpCode)(Z):c.code.formats?(0,$e._)`${c.code.formats}${(0,$e.getProperty)(s)}`:void 0,it=r.scopeValue("formats",{key:s,ref:Z,code:De});return typeof Z=="object"&&!(Z instanceof RegExp)?[Z.type||"string",Z.validate,(0,$e._)`${it}.validate`]:["string",Z,it]}function S(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,$e._)`await ${y}(${n})`}return typeof g=="function"?(0,$e._)`${y}(${n})`:(0,$e._)`${y}.test(${n})`}}}};Id.default=KT});var Fy=T(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var WT=Uy(),YT=[WT.default];Od.default=YT});var By=T(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.contentVocabulary=Nn.metadataVocabulary=void 0;Nn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Nn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Gy=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var QT=ey(),XT=my(),eP=Ly(),tP=Fy(),Hy=By(),rP=[QT.default,XT.default,(0,eP.default)(),tP.default,Hy.metadataVocabulary,Hy.contentVocabulary];Nd.default=rP});var Ky=T(Li=>{"use strict";Object.defineProperty(Li,"__esModule",{value:!0});Li.DiscrError=void 0;var Jy;(function(t){t.Tag="tag",t.Mapping="mapping"})(Jy||(Li.DiscrError=Jy={}))});var Yy=T(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var Cn=G(),Cd=Ky(),Wy=Si(),nP=Zo(),oP=ne(),sP={message:({params:{discrError:t,tagName:e}})=>t===Cd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Cn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},iP={keyword:"discriminator",type:"object",schemaType:"object",error:sP,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,Cn._)`${r}${(0,Cn.getProperty)(a)}`);e.if((0,Cn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Cd.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=p();e.if(!1);for(let m in f)e.elseIf((0,Cn._)`${u} === ${m}`),e.assign(c,d(f[m]));e.else(),t.error(!1,{discrError:Cd.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let m=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:f},m);return t.mergeEvaluated(h,Cn.Name),m}function p(){var f;let m={},h=y(o),g=!0;for(let S=0;S<i.length;S++){let Z=i[S];if(Z?.$ref&&!(0,oP.schemaHasRulesButRef)(Z,s.self.RULES)){let it=Z.$ref;if(Z=Wy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,it),Z instanceof Wy.SchemaEnv&&(Z=Z.schema),Z===void 0)throw new nP.default(s.opts.uriResolver,s.baseId,it)}let De=(f=Z?.properties)===null||f===void 0?void 0:f[a];if(typeof De!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||y(Z)),v(De,S)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return m;function y({required:S}){return Array.isArray(S)&&S.includes(a)}function v(S,Z){if(S.const)w(S.const,Z);else if(S.enum)for(let De of S.enum)w(De,Z);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function w(S,Z){if(typeof S!="string"||S in m)throw new Error(`discriminator: "${a}" values must be unique strings`);m[S]=Z}}}};Ad.default=iP});var Qy=T((Fj,aP)=>{aP.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 Zd=T((ge,jd)=>{"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 cP=Jg(),uP=Gy(),lP=Yy(),Xy=Qy(),dP=["/properties"],Ui="http://json-schema.org/draft-07/schema",An=class extends cP.default{_addVocabularies(){super._addVocabularies(),uP.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(lP.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Xy,dP):Xy;this.addMetaSchema(e,Ui,!1),this.refs["http://json-schema.org/schema"]=Ui}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Ui)?Ui:void 0)}};ge.Ajv=An;jd.exports=ge=An;jd.exports.Ajv=An;Object.defineProperty(ge,"__esModule",{value:!0});ge.default=An;var pP=jo();Object.defineProperty(ge,"KeywordCxt",{enumerable:!0,get:function(){return pP.KeywordCxt}});var jn=G();Object.defineProperty(ge,"_",{enumerable:!0,get:function(){return jn._}});Object.defineProperty(ge,"str",{enumerable:!0,get:function(){return jn.str}});Object.defineProperty(ge,"stringify",{enumerable:!0,get:function(){return jn.stringify}});Object.defineProperty(ge,"nil",{enumerable:!0,get:function(){return jn.nil}});Object.defineProperty(ge,"Name",{enumerable:!0,get:function(){return jn.Name}});Object.defineProperty(ge,"CodeGen",{enumerable:!0,get:function(){return jn.CodeGen}});var fP=xi();Object.defineProperty(ge,"ValidationError",{enumerable:!0,get:function(){return fP.default}});var mP=Zo();Object.defineProperty(ge,"MissingRefError",{enumerable:!0,get:function(){return mP.default}})});var a_=T(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.formatNames=At.fastFormats=At.fullFormats=void 0;function Ct(t,e){return{validate:t,compare:e}}At.fullFormats={date:Ct(n_,Vd),time:Ct(qd(!0),Ld),"date-time":Ct(e_(!0),s_),"iso-time":Ct(qd(),o_),"iso-date-time":Ct(e_(),i_),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:bP,"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:RP,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:wP,int32:{type:"number",validate:kP},int64:{type:"number",validate:SP},float:{type:"number",validate:r_},double:{type:"number",validate:r_},password:!0,binary:!0};At.fastFormats={...At.fullFormats,date:Ct(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Vd),time:Ct(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Ld),"date-time":Ct(/^\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,s_),"iso-time":Ct(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,o_),"iso-date-time":Ct(/^\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,i_),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};At.formatNames=Object.keys(At.fullFormats);function hP(t){return t%4===0&&(t%100!==0||t%400===0)}var gP=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,yP=[0,31,28,31,30,31,30,31,31,30,31,30,31];function n_(t){let e=gP.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&&hP(r)?29:yP[n])}function Vd(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Md=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function qd(t){return function(r){let n=Md.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,p=o-u*c-(d<0?1:0);return(p===23||p===-1)&&(d===59||d===-1)&&i<61}}function Ld(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 o_(t,e){if(!(t&&e))return;let r=Md.exec(t),n=Md.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 Dd=/t|\s/i;function e_(t){let e=qd(t);return function(n){let o=n.split(Dd);return o.length===2&&n_(o[0])&&e(o[1])}}function s_(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function i_(t,e){if(!(t&&e))return;let[r,n]=t.split(Dd),[o,s]=e.split(Dd),i=Vd(r,o);if(i!==void 0)return i||Ld(n,s)}var _P=/\/|:/,vP=/^(?:[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 bP(t){return _P.test(t)&&vP.test(t)}var t_=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function wP(t){return t_.lastIndex=0,t_.test(t)}var $P=-(2**31),xP=2**31-1;function kP(t){return Number.isInteger(t)&&t<=xP&&t>=$P}function SP(t){return Number.isInteger(t)}function r_(){return!0}var zP=/[^\\]\\Z/;function RP(t){if(zP.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var c_=T(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.formatLimitDefinition=void 0;var TP=Zd(),St=G(),dr=St.operators,Fi={formatMaximum:{okStr:"<=",ok:dr.LTE,fail:dr.GT},formatMinimum:{okStr:">=",ok:dr.GTE,fail:dr.LT},formatExclusiveMaximum:{okStr:"<",ok:dr.LT,fail:dr.GTE},formatExclusiveMinimum:{okStr:">",ok:dr.GT,fail:dr.LTE}},PP={message:({keyword:t,schemaCode:e})=>(0,St.str)`should be ${Fi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,St._)`{comparison: ${Fi[t].okStr}, limit: ${e}}`};Zn.formatLimitDefinition={keyword:Object.keys(Fi),type:"string",schemaType:"string",$data:!0,error:PP,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 TP.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let p=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,St._)`${p}[${c.schemaCode}]`);t.fail$data((0,St.or)((0,St._)`typeof ${f} != "object"`,(0,St._)`${f} instanceof RegExp`,(0,St._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let p=c.schema,f=a.formats[p];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${p}" does not define "compare" function`);let m=e.scopeValue("formats",{key:p,ref:f,code:i.code.formats?(0,St._)`${i.code.formats}${(0,St.getProperty)(p)}`:void 0});t.fail$data(d(m))}function d(p){return(0,St._)`${p}.compare(${r}, ${n}) ${Fi[o].fail} 0`}},dependencies:["format"]};var EP=t=>(t.addKeyword(Zn.formatLimitDefinition),t);Zn.default=EP});var p_=T((Yo,d_)=>{"use strict";Object.defineProperty(Yo,"__esModule",{value:!0});var Mn=a_(),IP=c_(),Ud=G(),u_=new Ud.Name("fullFormats"),OP=new Ud.Name("fastFormats"),Fd=(t,e={keywords:!0})=>{if(Array.isArray(e))return l_(t,e,Mn.fullFormats,u_),t;let[r,n]=e.mode==="fast"?[Mn.fastFormats,OP]:[Mn.fullFormats,u_],o=e.formats||Mn.formatNames;return l_(t,o,r,n),e.keywords&&(0,IP.default)(t),t};Fd.get=(t,e="full")=>{let n=(e==="fast"?Mn.fastFormats:Mn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function l_(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Ud._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}d_.exports=Yo=Fd;Object.defineProperty(Yo,"__esModule",{value:!0});Yo.default=Fd});var U={};va(U,{BRAND:()=>nb,DIRTY:()=>mr,EMPTY_PATH:()=>Av,INVALID:()=>M,NEVER:()=>Db,OK:()=>Ae,ParseStatus:()=>Pe,Schema:()=>H,ZodAny:()=>Kt,ZodArray:()=>qt,ZodBigInt:()=>gr,ZodBoolean:()=>yr,ZodBranded:()=>Jn,ZodCatch:()=>Tr,ZodDate:()=>_r,ZodDefault:()=>Rr,ZodDiscriminatedUnion:()=>ps,ZodEffects:()=>ct,ZodEnum:()=>Sr,ZodError:()=>Be,ZodFirstPartyTypeKind:()=>x,ZodFunction:()=>ms,ZodIntersection:()=>$r,ZodIssueCode:()=>$,ZodLazy:()=>xr,ZodLiteral:()=>kr,ZodMap:()=>an,ZodNaN:()=>un,ZodNativeEnum:()=>zr,ZodNever:()=>yt,ZodNull:()=>br,ZodNullable:()=>Pt,ZodNumber:()=>hr,ZodObject:()=>Ge,ZodOptional:()=>He,ZodParsedType:()=>P,ZodPipeline:()=>Kn,ZodPromise:()=>Wt,ZodReadonly:()=>Pr,ZodRecord:()=>fs,ZodSchema:()=>H,ZodSet:()=>cn,ZodString:()=>Jt,ZodSymbol:()=>on,ZodTransformer:()=>ct,ZodTuple:()=>Tt,ZodType:()=>H,ZodUndefined:()=>vr,ZodUnion:()=>wr,ZodUnknown:()=>Mt,ZodVoid:()=>sn,addIssueToContext:()=>z,any:()=>pb,array:()=>gb,bigint:()=>ab,boolean:()=>qp,coerce:()=>qb,custom:()=>jp,date:()=>cb,datetimeRegex:()=>Cp,defaultErrorMap:()=>jt,discriminatedUnion:()=>vb,effect:()=>Ib,enum:()=>Tb,function:()=>Sb,getErrorMap:()=>tn,getParsedType:()=>Rt,instanceof:()=>sb,intersection:()=>bb,isAborted:()=>ls,isAsync:()=>rn,isDirty:()=>ds,isValid:()=>Gt,late:()=>ob,lazy:()=>zb,literal:()=>Rb,makeIssue:()=>Gn,map:()=>xb,nan:()=>ib,nativeEnum:()=>Pb,never:()=>mb,null:()=>db,nullable:()=>Nb,number:()=>Mp,object:()=>xa,objectUtil:()=>ba,oboolean:()=>Mb,onumber:()=>Zb,optional:()=>Ob,ostring:()=>jb,pipeline:()=>Ab,preprocess:()=>Cb,promise:()=>Eb,quotelessJson:()=>Ov,record:()=>$b,set:()=>kb,setErrorMap:()=>Cv,strictObject:()=>yb,string:()=>Zp,symbol:()=>ub,transformer:()=>Ib,tuple:()=>wb,undefined:()=>lb,union:()=>_b,unknown:()=>fb,util:()=>Y,void:()=>hb});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 ba;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(ba||(ba={}));var P=Y.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Rt=t=>{switch(typeof t){case"undefined":return P.undefined;case"string":return P.string;case"number":return Number.isNaN(t)?P.nan:P.number;case"boolean":return P.boolean;case"function":return P.function;case"bigint":return P.bigint;case"symbol":return P.symbol;case"object":return Array.isArray(t)?P.array:t===null?P.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?P.promise:typeof Map<"u"&&t instanceof Map?P.map:typeof Set<"u"&&t instanceof Set?P.set:typeof Date<"u"&&t instanceof Date?P.date:P.object;default:return P.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"]),Ov=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Be=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()}};Be.create=t=>new Be(t);var Nv=(t,e)=>{let r;switch(t.code){case $.invalid_type:t.received===P.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}},jt=Nv;var Pp=jt;function Cv(t){Pp=t}function tn(){return Pp}var Gn=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}},Av=[];function z(t,e){let r=tn(),n=Gn({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===jt?void 0:jt].filter(o=>!!o)});t.common.issues.push(n)}var Pe=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}),ls=t=>t.status==="aborted",ds=t=>t.status==="dirty",Gt=t=>t.status==="valid",rn=t=>typeof Promise<"u"&&t instanceof Promise;var I;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(I||(I={}));var at=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}},Ep=(t,e)=>{if(Gt(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 Be(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 Rt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Rt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Pe,ctx:{common:e.parent.common,data:e.data,parsedType:Rt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(rn(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:Rt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return Ep(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Rt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Gt(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=>Gt(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:Rt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(rn(o)?o:Promise.resolve(o));return Ep(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 ct({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 He.create(this,this._def)}nullable(){return Pt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return qt.create(this)}promise(){return Wt.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 ct({...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 Kn.create(this,e)}readonly(){return Pr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},jv=/^c[^\s-]{8,}$/i,Zv=/^[0-9a-z]+$/,Mv=/^[0-9A-HJKMNP-TV-Z]{26}$/i,qv=/^[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,Dv=/^[a-z0-9_-]{21}$/i,Vv=/^[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)?)??$/,Uv=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Fv="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",wa,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])$/,Hv=/^(?:(?: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])$/,Gv=/^(([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])$/,Kv=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Wv=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Op="((\\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])))",Yv=new RegExp(`^${Op}$`);function Np(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 Qv(t){return new RegExp(`^${Np(t)}$`)}function Cp(t){let e=`${Op}T${Np(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 Xv(t,e){return!!((e==="v4"||!e)&&Bv.test(t)||(e==="v6"||!e)&&Gv.test(t))}function eb(t,e){if(!Vv.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 tb(t,e){return!!((e==="v4"||!e)&&Hv.test(t)||(e==="v6"||!e)&&Jv.test(t))}var Jt=class t extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==P.string){let s=this._getOrReturnCtx(e);return z(s,{code:$.invalid_type,expected:P.string,received:s.parsedType}),M}let n=new Pe,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),z(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),z(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?z(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&z(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")Uv.test(e.data)||(o=this._getOrReturnCtx(e,o),z(o,{validation:"email",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")wa||(wa=new RegExp(Fv,"u")),wa.test(e.data)||(o=this._getOrReturnCtx(e,o),z(o,{validation:"emoji",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")qv.test(e.data)||(o=this._getOrReturnCtx(e,o),z(o,{validation:"uuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")Dv.test(e.data)||(o=this._getOrReturnCtx(e,o),z(o,{validation:"nanoid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")jv.test(e.data)||(o=this._getOrReturnCtx(e,o),z(o,{validation:"cuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Zv.test(e.data)||(o=this._getOrReturnCtx(e,o),z(o,{validation:"cuid2",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")Mv.test(e.data)||(o=this._getOrReturnCtx(e,o),z(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),z(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),z(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),z(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),z(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),z(o,{code:$.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Cp(s).test(e.data)||(o=this._getOrReturnCtx(e,o),z(o,{code:$.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?Yv.test(e.data)||(o=this._getOrReturnCtx(e,o),z(o,{code:$.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?Qv(s).test(e.data)||(o=this._getOrReturnCtx(e,o),z(o,{code:$.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?Lv.test(e.data)||(o=this._getOrReturnCtx(e,o),z(o,{validation:"duration",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?Xv(e.data,s.version)||(o=this._getOrReturnCtx(e,o),z(o,{validation:"ip",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?eb(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),z(o,{validation:"jwt",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?tb(e.data,s.version)||(o=this._getOrReturnCtx(e,o),z(o,{validation:"cidr",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?Kv.test(e.data)||(o=this._getOrReturnCtx(e,o),z(o,{validation:"base64",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?Wv.test(e.data)||(o=this._getOrReturnCtx(e,o),z(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,...I.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...I.errToObj(e)})}url(e){return this._addCheck({kind:"url",...I.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...I.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...I.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...I.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...I.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...I.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...I.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...I.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...I.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...I.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...I.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...I.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,...I.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,...I.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...I.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...I.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...I.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...I.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...I.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...I.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...I.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...I.errToObj(r)})}nonempty(e){return this.min(1,I.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}};Jt.create=t=>new Jt({checks:[],typeName:x.ZodString,coerce:t?.coerce??!1,...F(t)});function rb(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)!==P.number){let s=this._getOrReturnCtx(e);return z(s,{code:$.invalid_type,expected:P.number,received:s.parsedType}),M}let n,o=new Pe;for(let s of this._def.checks)s.kind==="int"?Y.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),z(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),z(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),z(n,{code:$.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?rb(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),z(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),z(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,I.toString(r))}gt(e,r){return this.setLimit("min",e,!1,I.toString(r))}lte(e,r){return this.setLimit("max",e,!0,I.toString(r))}lt(e,r){return this.setLimit("max",e,!1,I.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:I.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:I.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:I.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:I.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:I.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:I.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:I.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:I.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:I.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:I.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)!==P.bigint)return this._getInvalidInput(e);let n,o=new Pe;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),z(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),z(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),z(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 z(r,{code:$.invalid_type,expected:P.bigint,received:r.parsedType}),M}gte(e,r){return this.setLimit("min",e,!0,I.toString(r))}gt(e,r){return this.setLimit("min",e,!1,I.toString(r))}lte(e,r){return this.setLimit("max",e,!0,I.toString(r))}lt(e,r){return this.setLimit("max",e,!1,I.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:I.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:I.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:I.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:I.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:I.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:I.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)!==P.boolean){let n=this._getOrReturnCtx(e);return z(n,{code:$.invalid_type,expected:P.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)!==P.date){let s=this._getOrReturnCtx(e);return z(s,{code:$.invalid_type,expected:P.date,received:s.parsedType}),M}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return z(s,{code:$.invalid_date}),M}let n=new Pe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),z(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),z(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:I.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:I.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 on=class extends H{_parse(e){if(this._getType(e)!==P.symbol){let n=this._getOrReturnCtx(e);return z(n,{code:$.invalid_type,expected:P.symbol,received:n.parsedType}),M}return Ae(e.data)}};on.create=t=>new on({typeName:x.ZodSymbol,...F(t)});var vr=class extends H{_parse(e){if(this._getType(e)!==P.undefined){let n=this._getOrReturnCtx(e);return z(n,{code:$.invalid_type,expected:P.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)!==P.null){let n=this._getOrReturnCtx(e);return z(n,{code:$.invalid_type,expected:P.null,received:n.parsedType}),M}return Ae(e.data)}};br.create=t=>new br({typeName:x.ZodNull,...F(t)});var Kt=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return Ae(e.data)}};Kt.create=t=>new Kt({typeName:x.ZodAny,...F(t)});var Mt=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ae(e.data)}};Mt.create=t=>new Mt({typeName:x.ZodUnknown,...F(t)});var yt=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return z(r,{code:$.invalid_type,expected:P.never,received:r.parsedType}),M}};yt.create=t=>new yt({typeName:x.ZodNever,...F(t)});var sn=class extends H{_parse(e){if(this._getType(e)!==P.undefined){let n=this._getOrReturnCtx(e);return z(n,{code:$.invalid_type,expected:P.void,received:n.parsedType}),M}return Ae(e.data)}};sn.create=t=>new sn({typeName:x.ZodVoid,...F(t)});var qt=class t extends H{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==P.array)return z(r,{code:$.invalid_type,expected:P.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)&&(z(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&&(z(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&&(z(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 at(r,i,r.path,a)))).then(i=>Pe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new at(r,i,r.path,a)));return Pe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:I.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:I.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:I.toString(r)}})}nonempty(e){return this.min(1,e)}};qt.create=(t,e)=>new qt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:x.ZodArray,...F(e)});function nn(t){if(t instanceof Ge){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=He.create(nn(n))}return new Ge({...t._def,shape:()=>e})}else return t instanceof qt?new qt({...t._def,type:nn(t.element)}):t instanceof He?He.create(nn(t.unwrap())):t instanceof Pt?Pt.create(nn(t.unwrap())):t instanceof Tt?Tt.create(t.items.map(e=>nn(e))):t}var Ge=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)!==P.object){let u=this._getOrReturnCtx(e);return z(u,{code:$.invalid_type,expected:P.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 yt&&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 at(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof yt){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&&(z(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 at(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,p=await l.value;u.push({key:d,value:p,alwaysSet:l.alwaysSet})}return u}).then(u=>Pe.mergeObjectSync(n,u)):Pe.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return I.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:I.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 nn(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 He;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Ap(Y.objectKeys(this.shape))}};Ge.create=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strip",catchall:yt.create(),typeName:x.ZodObject,...F(e)});Ge.strictCreate=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strict",catchall:yt.create(),typeName:x.ZodObject,...F(e)});Ge.lazycreate=(t,e)=>new Ge({shape:t,unknownKeys:"strip",catchall:yt.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 Be(a.ctx.common.issues));return z(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 Be(c));return z(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 Zt=t=>t instanceof xr?Zt(t.schema):t instanceof ct?Zt(t.innerType()):t instanceof kr?[t.value]:t instanceof Sr?t.options:t instanceof zr?Y.objectValues(t.enum):t instanceof Rr?Zt(t._def.innerType):t instanceof vr?[void 0]:t instanceof br?[null]:t instanceof He?[void 0,...Zt(t.unwrap())]:t instanceof Pt?[null,...Zt(t.unwrap())]:t instanceof Jn||t instanceof Pr?Zt(t.unwrap()):t instanceof Tr?Zt(t._def.innerType):[],ps=class t extends H{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==P.object)return z(r,{code:$.invalid_type,expected:P.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}):(z(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=Zt(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=Rt(t),n=Rt(e);if(t===e)return{valid:!0,data:t};if(r===P.object&&n===P.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===P.array&&n===P.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===P.date&&n===P.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(ls(s)||ls(i))return M;let a=$a(s.value,i.value);return a.valid?((ds(s)||ds(i))&&r.dirty(),{status:r.value,value:a.data}):(z(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 Tt=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==P.array)return z(n,{code:$.invalid_type,expected:P.array,received:n.parsedType}),M;if(n.data.length<this._def.items.length)return z(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&&(z(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 at(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Pe.mergeArray(r,i)):Pe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Tt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Tt({items:t,typeName:x.ZodTuple,rest:null,...F(e)})};var fs=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!==P.object)return z(n,{code:$.invalid_type,expected:P.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 at(n,a,n.path,a)),value:i._parse(new at(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Pe.mergeObjectAsync(r,o):Pe.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:Jt.create(),valueType:e,typeName:x.ZodRecord,...F(r)})}},an=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!==P.map)return z(n,{code:$.invalid_type,expected:P.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 at(n,a,n.path,[u,"key"])),value:s._parse(new at(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}}}};an.create=(t,e,r)=>new an({valueType:e,keyType:t,typeName:x.ZodMap,...F(r)});var cn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==P.set)return z(n,{code:$.invalid_type,expected:P.set,received:n.parsedType}),M;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(z(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&&(z(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 at(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:I.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:I.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};cn.create=(t,e)=>new cn({valueType:t,minSize:null,maxSize:null,typeName:x.ZodSet,...F(e)});var ms=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==P.function)return z(r,{code:$.invalid_type,expected:P.function,received:r.parsedType}),M;function n(a,c){return Gn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,tn(),jt].filter(u=>!!u),issueData:{code:$.invalid_arguments,argumentsError:c}})}function o(a,c){return Gn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,tn(),jt].filter(u=>!!u),issueData:{code:$.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof Wt){let a=this;return Ae(async function(...c){let u=new Be([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(o(d,f)),u})})}else{let a=this;return Ae(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Be([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Be([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:Tt.create(e).rest(Mt.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||Tt.create([]).rest(Mt.create()),returns:r||Mt.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 z(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 Ap(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 z(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 z(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=Ap;var zr=class extends H{_parse(e){let r=Y.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==P.string&&n.parsedType!==P.number){let o=Y.objectValues(r);return z(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 z(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 Wt=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==P.promise&&r.common.async===!1)return z(r,{code:$.invalid_type,expected:P.promise,received:r.parsedType}),M;let n=r.parsedType===P.promise?r.data:Promise.resolve(r.data);return Ae(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Wt.create=(t,e)=>new Wt({type:t,typeName:x.ZodPromise,...F(e)});var ct=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=>{z(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(!Gt(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=>Gt(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):M);Y.assertNever(o)}};ct.create=(t,e,r)=>new ct({schema:t,typeName:x.ZodEffects,effect:e,...F(r)});ct.createWithPreprocess=(t,e,r)=>new ct({schema:e,effect:{type:"preprocess",transform:t},typeName:x.ZodEffects,...F(r)});var He=class extends H{_parse(e){return this._getType(e)===P.undefined?Ae(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};He.create=(t,e)=>new He({innerType:t,typeName:x.ZodOptional,...F(e)});var Pt=class extends H{_parse(e){return this._getType(e)===P.null?Ae(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Pt.create=(t,e)=>new Pt({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===P.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 rn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Be(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Be(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 un=class extends H{_parse(e){if(this._getType(e)!==P.nan){let n=this._getOrReturnCtx(e);return z(n,{code:$.invalid_type,expected:P.nan,received:n.parsedType}),M}return{status:"valid",value:e.data}}};un.create=t=>new un({typeName:x.ZodNaN,...F(t)});var nb=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}},Kn=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=>(Gt(o)&&(o.value=Object.freeze(o.value)),o);return rn(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 Ip(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function jp(t,e={},r){return t?Kt.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Ip(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Ip(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Kt.create()}var ob={object:Ge.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 sb=(t,e={message:`Input not instance of ${t.name}`})=>jp(r=>r instanceof t,e),Zp=Jt.create,Mp=hr.create,ib=un.create,ab=gr.create,qp=yr.create,cb=_r.create,ub=on.create,lb=vr.create,db=br.create,pb=Kt.create,fb=Mt.create,mb=yt.create,hb=sn.create,gb=qt.create,xa=Ge.create,yb=Ge.strictCreate,_b=wr.create,vb=ps.create,bb=$r.create,wb=Tt.create,$b=fs.create,xb=an.create,kb=cn.create,Sb=ms.create,zb=xr.create,Rb=kr.create,Tb=Sr.create,Pb=zr.create,Eb=Wt.create,Ib=ct.create,Ob=He.create,Nb=Pt.create,Cb=ct.createWithPreprocess,Ab=Kn.create,jb=()=>Zp().optional(),Zb=()=>Mp().optional(),Mb=()=>qp().optional(),qb={string:t=>Jt.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 Db=M;var Vb=Object.freeze({status:"aborted"});function b(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"),Dt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},hs={};function tt(t){return t&&Object.assign(hs,t),hs}var X={};va(X,{BIGINT_FORMAT_RANGES:()=>Vp,Class:()=>Sa,NUMBER_FORMAT_RANGES:()=>Oa,aborted:()=>Ir,allowsEval:()=>Pa,assert:()=>Gb,assertEqual:()=>Ub,assertIs:()=>Bb,assertNever:()=>Hb,assertNotEqual:()=>Fb,assignProp:()=>Ta,cached:()=>Qn,captureStackTrace:()=>ys,cleanEnum:()=>iw,cleanRegex:()=>eo,clone:()=>rt,createTransparentProxy:()=>Xb,defineLazy:()=>de,esc:()=>Er,escapeRegex:()=>Yt,extend:()=>rw,finalizeIssue:()=>_t,floatSafeRemainder:()=>Ra,getElementAtPath:()=>Jb,getEnumValues:()=>Yn,getLengthableOrigin:()=>to,getParsedType:()=>Qb,getSizableOrigin:()=>Lp,isObject:()=>ln,isPlainObject:()=>dn,issue:()=>Na,joinValues:()=>gs,jsonStringifyReplacer:()=>za,merge:()=>nw,normalizeParams:()=>q,nullish:()=>Xn,numKeys:()=>Yb,omit:()=>tw,optionalKeys:()=>Ia,partial:()=>ow,pick:()=>ew,prefixIssues:()=>Et,primitiveTypes:()=>Dp,promiseAllObject:()=>Kb,propertyKeyTypes:()=>Ea,randomString:()=>Wb,required:()=>sw,stringifyPrimitive:()=>_s,unwrapMessage:()=>Wn});function Ub(t){return t}function Fb(t){return t}function Bb(t){}function Hb(t){throw new Error}function Gb(t){}function Yn(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 gs(t,e="|"){return t.map(r=>_s(r)).join(e)}function za(t,e){return typeof e=="bigint"?e.toString():e}function Qn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Xn(t){return t==null}function eo(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Ra(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 Ta(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 Kb(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 Wb(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 ys=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function ln(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Pa=Qn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function dn(t){if(ln(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(ln(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Yb(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Qb=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}`)}},Ea=new Set(["string","number","symbol"]),Dp=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Yt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function rt(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 Xb(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 _s(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ia(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Oa={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]},Vp={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function ew(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 rt(t,{...t._zod.def,shape:r,checks:[]})}function tw(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 rt(t,{...t._zod.def,shape:r,checks:[]})}function rw(t,e){if(!dn(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 Ta(this,"shape",n),n},checks:[]};return rt(t,r)}function nw(t,e){return rt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ta(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function ow(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 rt(e,{...e._zod.def,shape:o,checks:[]})}function sw(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 rt(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 Et(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Wn(t){return typeof t=="string"?t:t?.message}function _t(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Wn(t.inst?._zod.def?.error?.(t))??Wn(e?.error?.(t))??Wn(r.customError?.(t))??Wn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Lp(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function to(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Na(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function iw(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Sa=class{constructor(...e){}};var Up=(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,za,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},vs=b("$ZodError",Up),ro=b("$ZodError",Up,{Parent:Error});function Ca(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 Aa(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 ja=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 Dt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,tt())));throw ys(a,o?.callee),a}return i.value},Za=ja(ro),Ma=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=>_t(c,s,tt())));throw ys(a,o?.callee),a}return i.value},qa=Ma(ro),Da=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 Dt;return s.issues.length?{success:!1,error:new(t??vs)(s.issues.map(i=>_t(i,o,tt())))}:{success:!0,data:s.value}},Or=Da(ro),Va=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=>_t(i,o,tt())))}:{success:!0,data:s.value}},Nr=Va(ro);var Fp=/^[cC][^\s-]{8,}$/,Bp=/^[0-9a-z]+$/,Hp=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Gp=/^[0-9a-vA-V]{20}$/,Jp=/^[A-Za-z0-9]{27}$/,Kp=/^[a-zA-Z0-9_-]{21}$/,Wp=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Yp=/^([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})$/,La=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 Qp=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var cw="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Xp(){return new RegExp(cw,"u")}var ef=/^(?:(?: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])$/,tf=/^(([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})$/,rf=/^((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])$/,nf=/^(([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])$/,of=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ua=/^[A-Za-z0-9_-]*$/,sf=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var af=/^\+(?:[0-9]){6,14}[0-9]$/,cf="(?:(?:\\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])))",uf=new RegExp(`^${cf}$`);function lf(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 df(t){return new RegExp(`^${lf(t)}$`)}function pf(t){let e=lf({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(`^${cf}T(?:${n})$`)}var ff=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var mf=/^\d+$/,hf=/^-?\d+(?:\.\d+)?/i,gf=/true|false/i,yf=/null/i;var _f=/^[^A-Z]*$/,vf=/^[^a-z]*$/;var Ee=b("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),bf={number:"number",bigint:"bigint",object:"date"},Fa=b("$ZodCheckLessThan",(t,e)=>{Ee.init(t,e);let r=bf[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})}}),Ba=b("$ZodCheckGreaterThan",(t,e)=>{Ee.init(t,e);let r=bf[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})}}),wf=b("$ZodCheckMultipleOf",(t,e)=>{Ee.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):Ra(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})}}),$f=b("$ZodCheckNumberFormat",(t,e)=>{Ee.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Oa[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=mf)}),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 xf=b("$ZodCheckMaxLength",(t,e)=>{var r;Ee.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Xn(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=to(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),kf=b("$ZodCheckMinLength",(t,e)=>{var r;Ee.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Xn(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=to(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Sf=b("$ZodCheckLengthEquals",(t,e)=>{var r;Ee.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Xn(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=to(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})}}),no=b("$ZodCheckStringFormat",(t,e)=>{var r,n;Ee.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=()=>{})}),zf=b("$ZodCheckRegex",(t,e)=>{no.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})}}),Rf=b("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=_f),no.init(t,e)}),Tf=b("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=vf),no.init(t,e)}),Pf=b("$ZodCheckIncludes",(t,e)=>{Ee.init(t,e);let r=Yt(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})}}),Ef=b("$ZodCheckStartsWith",(t,e)=>{Ee.init(t,e);let r=new RegExp(`^${Yt(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})}}),If=b("$ZodCheckEndsWith",(t,e)=>{Ee.init(t,e);let r=new RegExp(`.*${Yt(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 Of=b("$ZodCheckOverwrite",(t,e)=>{Ee.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var ws=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 Nf={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=Nf;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,p=l._zod.check(s);if(p instanceof Promise&&a?.async===!1)throw new qt;if(u||p instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await p,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}}),oo=v("$ZodString",(t,e)=>{ae.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??pf(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)=>{no.init(t,e),oo.init(t,e)}),Ha=v("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Wp),pe.init(t,e)}),Ja=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=La(n))}else e.pattern??(e.pattern=La());pe.init(t,e)}),Ga=v("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Yp),pe.init(t,e)}),Ka=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:of.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})}}}),Wa=v("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Qp()),pe.init(t,e)}),Ya=v("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Gp),pe.init(t,e)}),Qa=v("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Up),pe.init(t,e)}),Xa=v("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Fp),pe.init(t,e)}),ec=v("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Bp),pe.init(t,e)}),tc=v("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Hp),pe.init(t,e)}),rc=v("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Jp),pe.init(t,e)}),Uf=v("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=df(e)),pe.init(t,e)}),Ff=v("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=cf),pe.init(t,e)}),Bf=v("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=lf(e)),pe.init(t,e)}),Hf=v("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Kp),pe.init(t,e)}),nc=v("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Xp),pe.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),oc=v("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=ef),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})}}}),sc=v("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=tf),pe.init(t,e)}),ic=v("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=rf),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 Jf(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var ac=v("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=nf),pe.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Jf(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function cw(t){if(!Va.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Jf(r)}var cc=v("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Va),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})}}),uc=v("$ZodE164",(t,e)=>{e.pattern??(e.pattern=sf),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 lc=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 xs=v("$ZodNumber",(t,e)=>{ae.init(t,e),t._zod.pattern=t._zod.bag.pattern??mf,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}}),dc=v("$ZodNumber",(t,e)=>{wf.init(t,e),xs.init(t,e)}),pc=v("$ZodBoolean",(t,e)=>{ae.init(t,e),t._zod.pattern=hf,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 fc=v("$ZodNull",(t,e)=>{ae.init(t,e),t._zod.pattern=gf,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 mc=v("$ZodUnknown",(t,e)=>{ae.init(t,e),t._zod.parse=r=>r}),hc=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 Cf(t,e,r){t.issues.length&&e.issues.push(...Pt(r,t.issues)),e.value[r]=t.value}var gc=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=>Cf(u,r,i))):Cf(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function $s(t,e,r){t.issues.length&&e.issues.push(...Pt(r,t.issues)),e.value[r]=t.value}function Af(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 ks=v("$ZodObject",(t,e)=>{ae.init(t,e);let r=Qn(()=>{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 p=Ea(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(p)}});de(t._zod,"propValues",()=>{let d=e.shape,p={};for(let m in d){let f=d[m]._zod;if(f.values){p[m]??(p[m]=new Set);for(let h of f.values)p[m].add(h)}}return p});let n=d=>{let p=new ws(["shape","payload","ctx"]),m=r.value,f=b=>{let w=Er(b);return`shape[${w}]._zod.run({ value: input[${w}], issues: [] }, ctx)`};p.write("const input = payload.value;");let h=Object.create(null),g=0;for(let b of m.keys)h[b]=`key_${g++}`;p.write("const newResult = {}");for(let b of m.keys)if(m.optionalKeys.has(b)){let w=h[b];p.write(`const ${w} = ${f(b)};`);let S=Er(b);p.write(`
12
+ `))}};var Cf={major:4,minor:0,patch:0};var ae=b("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Cf;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,p=l._zod.check(s);if(p instanceof Promise&&a?.async===!1)throw new Dt;if(u||p instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await p,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 Dt;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}}),oo=b("$ZodString",(t,e)=>{ae.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??ff(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=b("$ZodStringFormat",(t,e)=>{no.init(t,e),oo.init(t,e)}),Ga=b("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Yp),pe.init(t,e)}),Ja=b("$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=La(n))}else e.pattern??(e.pattern=La());pe.init(t,e)}),Ka=b("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Qp),pe.init(t,e)}),Wa=b("$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:sf.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})}}}),Ya=b("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Xp()),pe.init(t,e)}),Qa=b("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Kp),pe.init(t,e)}),Xa=b("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Fp),pe.init(t,e)}),ec=b("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Bp),pe.init(t,e)}),tc=b("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Hp),pe.init(t,e)}),rc=b("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Gp),pe.init(t,e)}),nc=b("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Jp),pe.init(t,e)}),Ff=b("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=pf(e)),pe.init(t,e)}),Bf=b("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=uf),pe.init(t,e)}),Hf=b("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=df(e)),pe.init(t,e)}),Gf=b("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Wp),pe.init(t,e)}),oc=b("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=ef),pe.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),sc=b("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=tf),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})}}}),ic=b("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=rf),pe.init(t,e)}),ac=b("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=nf),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 Jf(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var cc=b("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=of),pe.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Jf(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function uw(t){if(!Ua.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Jf(r)}var uc=b("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Ua),pe.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{uw(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),lc=b("$ZodE164",(t,e)=>{e.pattern??(e.pattern=af),pe.init(t,e)});function lw(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 dc=b("$ZodJWT",(t,e)=>{pe.init(t,e),t._zod.check=r=>{lw(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var xs=b("$ZodNumber",(t,e)=>{ae.init(t,e),t._zod.pattern=t._zod.bag.pattern??hf,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}}),pc=b("$ZodNumber",(t,e)=>{$f.init(t,e),xs.init(t,e)}),fc=b("$ZodBoolean",(t,e)=>{ae.init(t,e),t._zod.pattern=gf,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 mc=b("$ZodNull",(t,e)=>{ae.init(t,e),t._zod.pattern=yf,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 hc=b("$ZodUnknown",(t,e)=>{ae.init(t,e),t._zod.parse=r=>r}),gc=b("$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 Af(t,e,r){t.issues.length&&e.issues.push(...Et(r,t.issues)),e.value[r]=t.value}var yc=b("$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=>Af(u,r,i))):Af(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function $s(t,e,r){t.issues.length&&e.issues.push(...Et(r,t.issues)),e.value[r]=t.value}function jf(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(...Et(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var ks=b("$ZodObject",(t,e)=>{ae.init(t,e);let r=Qn(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof ae))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let p=Ia(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(p)}});de(t._zod,"propValues",()=>{let d=e.shape,p={};for(let f in d){let m=d[f]._zod;if(m.values){p[f]??(p[f]=new Set);for(let h of m.values)p[f].add(h)}}return p});let n=d=>{let p=new ws(["shape","payload","ctx"]),f=r.value,m=v=>{let w=Er(v);return`shape[${w}]._zod.run({ value: input[${w}], issues: [] }, ctx)`};p.write("const input = payload.value;");let h=Object.create(null),g=0;for(let v of f.keys)h[v]=`key_${g++}`;p.write("const newResult = {}");for(let v of f.keys)if(f.optionalKeys.has(v)){let w=h[v];p.write(`const ${w} = ${m(v)};`);let S=Er(v);p.write(`
13
13
  if (${w}.issues.length) {
14
14
  if (input[${S}] === undefined) {
15
15
  if (${S} in input) {
@@ -28,19 +28,19 @@ var Sv=Object.create;var ya=Object.defineProperty;var zv=Object.getOwnPropertyDe
28
28
  } else {
29
29
  newResult[${S}] = ${w}.value;
30
30
  }
31
- `)}else{let w=h[b];p.write(`const ${w} = ${f(b)};`),p.write(`
31
+ `)}else{let w=h[v];p.write(`const ${w} = ${m(v)};`),p.write(`
32
32
  if (${w}.issues.length) payload.issues = payload.issues.concat(${w}.issues.map(iss => ({
33
33
  ...iss,
34
- path: iss.path ? [${Er(b)}, ...iss.path] : [${Er(b)}]
35
- })));`),p.write(`newResult[${Er(b)}] = ${w}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let _=p.compile();return(b,w)=>_(d,b,w)},o,s=ln,i=!hs.jitless,c=i&&Ta.value,u=e.catchall,l;t._zod.parse=(d,p)=>{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 f=[];if(i&&c&&p?.async===!1&&p.jitless!==!0)o||(o=n(e.shape)),d=o(d,p);else{d.value={};let w=l.shape;for(let S of l.keys){let Z=w[S],De=Z._zod.run({value:m[S],issues:[]},p),st=Z._zod.optin==="optional"&&Z._zod.optout==="optional";De instanceof Promise?f.push(De.then(en=>st?Af(en,d,S,m):$s(en,d,S))):st?Af(De,d,S,m):$s(De,d,S)}}if(!u)return f.length?Promise.all(f).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 S=_.run({value:m[w],issues:[]},p);S instanceof Promise?f.push(S.then(Z=>$s(Z,d,w))):$s(S,d,w)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),f.length?Promise.all(f).then(()=>d):d}});function jf(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=>yt(s,n,et())))}),e}var Ss=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=>eo(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=>jf(i,r,t,n)):jf(s,r,t,n)}}),yc=v("$ZodDiscriminatedUnion",(t,e)=>{Ss.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=Qn(()=>{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(!ln(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)}}),_c=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])=>Zf(r,c,u)):Zf(r,s,i)}});function Ba(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(dn(t)&&dn(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=Ba(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=Ba(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 Zf(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=Ba(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 vc=v("$ZodRecord",(t,e)=>{ae.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!dn(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=>yt(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 bc=v("$ZodEnum",(t,e)=>{ae.init(t,e);let r=Yn(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Pa.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}}),wc=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 $c=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}}),xc=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(`^(${eo(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)}),kc=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(`^(${eo(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)}),Sc=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=>Mf(s,e)):Mf(o,e)}});function Mf(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var zc=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))}),Rc=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=>qf(s,t)):qf(o,t)}});function qf(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 Tc=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=>yt(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=>yt(s,n,et()))},input:r.value}),r.issues=[]),r)}});var Pc=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=>Df(s,e,n)):Df(o,e,n)}});function Df(t,e,r){return Ir(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Ec=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(Lf):Lf(o)}});function Lf(t){return t.value=Object.freeze(t.value),t}var Ic=v("$ZodCustom",(t,e)=>{Ee.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=>Vf(s,r,n,t));Vf(o,r,n,t)}});function Vf(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(Oa(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 ${_s(n.values[0])}`:`Invalid option: expected one of ${gs(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":""}: ${gs(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 Gf(){return{localeError:dw()}}var pw=Symbol("ZodOutput"),fw=Symbol("ZodInput"),so=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 Kf(){return new so}var Wt=Kf();function Oc(t,e){return new t({type:"string",...q(e)})}function Nc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...q(e)})}function zs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...q(e)})}function Cc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...q(e)})}function Ac(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...q(e)})}function jc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...q(e)})}function Zc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...q(e)})}function Mc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...q(e)})}function qc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...q(e)})}function Dc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...q(e)})}function Lc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...q(e)})}function Vc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...q(e)})}function Uc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...q(e)})}function Fc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...q(e)})}function Bc(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...q(e)})}function Hc(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...q(e)})}function Jc(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...q(e)})}function Gc(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...q(e)})}function Kc(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...q(e)})}function Wc(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...q(e)})}function Yc(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...q(e)})}function Qc(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...q(e)})}function Xc(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...q(e)})}function Wf(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...q(e)})}function Yf(t,e){return new t({type:"string",format:"date",check:"string_format",...q(e)})}function Qf(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...q(e)})}function Xf(t,e){return new t({type:"string",format:"duration",check:"string_format",...q(e)})}function eu(t,e){return new t({type:"number",checks:[],...q(e)})}function tu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...q(e)})}function ru(t,e){return new t({type:"boolean",...q(e)})}function nu(t,e){return new t({type:"null",...q(e)})}function ou(t){return new t({type:"unknown"})}function su(t,e){return new t({type:"never",...q(e)})}function Rs(t,e){return new Ua({check:"less_than",...q(e),value:t,inclusive:!1})}function io(t,e){return new Ua({check:"less_than",...q(e),value:t,inclusive:!0})}function Ts(t,e){return new Fa({check:"greater_than",...q(e),value:t,inclusive:!1})}function ao(t,e){return new Fa({check:"greater_than",...q(e),value:t,inclusive:!0})}function Ps(t,e){return new bf({check:"multiple_of",...q(e),value:t})}function Es(t,e){return new $f({check:"max_length",...q(e),maximum:t})}function pn(t,e){return new xf({check:"min_length",...q(e),minimum:t})}function Is(t,e){return new kf({check:"length_equals",...q(e),length:t})}function iu(t,e){return new Sf({check:"string_format",format:"regex",...q(e),pattern:t})}function au(t){return new zf({check:"string_format",format:"lowercase",...q(t)})}function cu(t){return new Rf({check:"string_format",format:"uppercase",...q(t)})}function uu(t,e){return new Tf({check:"string_format",format:"includes",...q(e),includes:t})}function lu(t,e){return new Pf({check:"string_format",format:"starts_with",...q(e),prefix:t})}function du(t,e){return new Ef({check:"string_format",format:"ends_with",...q(e),suffix:t})}function Cr(t){return new If({check:"overwrite",tx:t})}function pu(t){return Cr(e=>e.normalize(t))}function fu(){return Cr(t=>t.trim())}function mu(){return Cr(t=>t.toLowerCase())}function hu(){return Cr(t=>t.toUpperCase())}function em(t,e,r){return new t({type:"array",element:e,...q(r)})}function gu(t,e,r){let n=q(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function yu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...q(r)})}var Os=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},p=e._zod.parent;if(p)a.ref=p,this.process(p,d),this.seen.get(p).isParent=!0;else{let m=a.schema;switch(o.type){case"string":{let f=m;f.type="string";let{minimum:h,maximum:g,format:_,patterns:b,contentEncoding:w}=e._zod.bag;if(typeof h=="number"&&(f.minLength=h),typeof g=="number"&&(f.maxLength=g),_&&(f.format=s[_]??_,f.format===""&&delete f.format),w&&(f.contentEncoding=w),b&&b.size>0){let S=[...b];S.length===1?f.pattern=S[0].source:S.length>1&&(a.schema.allOf=[...S.map(Z=>({...this.target==="draft-7"?{type:"string"}:{},pattern:Z.source}))])}break}case"number":{let f=m,{minimum:h,maximum:g,format:_,multipleOf:b,exclusiveMaximum:w,exclusiveMinimum:S}=e._zod.bag;typeof _=="string"&&_.includes("int")?f.type="integer":f.type="number",typeof S=="number"&&(f.exclusiveMinimum=S),typeof h=="number"&&(f.minimum=h,typeof S=="number"&&(S>=h?delete f.minimum:delete f.exclusiveMinimum)),typeof w=="number"&&(f.exclusiveMaximum=w),typeof g=="number"&&(f.maximum=g,typeof w=="number"&&(w<=g?delete f.maximum:delete f.exclusiveMaximum)),typeof b=="number"&&(f.multipleOf=b);break}case"boolean":{let f=m;f.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 f=m,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(f.minItems=h),typeof g=="number"&&(f.maxItems=g),f.type="array",f.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let f=m;f.type="object",f.properties={};let h=o.shape;for(let b in h)f.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&&(f.required=Array.from(_)),o.catchall?._zod.def.type==="never"?f.additionalProperties=!1:o.catchall?o.catchall&&(f.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(f.additionalProperties=!1);break}case"union":{let f=m;f.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let f=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]];f.allOf=b;break}case"tuple":{let f=m;f.type="array";let h=o.items.map((b,w)=>this.process(b,{...d,path:[...d.path,"prefixItems",w]}));if(this.target==="draft-2020-12"?f.prefixItems=h:f.items=h,o.rest){let b=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?f.items=b:f.additionalItems=b}o.rest&&(f.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:_}=e._zod.bag;typeof g=="number"&&(f.minItems=g),typeof _=="number"&&(f.maxItems=_);break}case"record":{let f=m;f.type="object",f.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),f.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 f=m,h=Yn(o.entries);h.every(g=>typeof g=="number")&&(f.type="number"),h.every(g=>typeof g=="string")&&(f.type="string"),f.enum=h;break}case"literal":{let f=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];f.type=g===null?"null":typeof g,f.const=g}else h.every(g=>typeof g=="number")&&(f.type="number"),h.every(g=>typeof g=="string")&&(f.type="string"),h.every(g=>typeof g=="boolean")&&(f.type="string"),h.every(g=>g===null)&&(f.type="null"),f.enum=h;break}case"file":{let f=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(f,h)):f.anyOf=b.map(w=>({...h,contentMediaType:w})):Object.assign(f,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let f=this.process(o.innerType,d);m.anyOf=[f,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let f=m;f.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 f;try{f=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}m.default=f;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let f=m,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");f.type="string",f.pattern=h.source;break}case"pipe":{let f=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(f,d),a.ref=f;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 f=e._zod.innerType;this.process(f,d),a.ref=f;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}/`,f=l[1].schema.id??`__schema${this.counter++}`;return{defId:f,ref:m+f}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:p,defId:m}=s(l);d.def={...d.schema},m&&(d.defId=m);let f=d.schema;for(let h in f)delete f[h];f.$ref=p};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(v)}, ...iss.path] : [${Er(v)}]
35
+ })));`),p.write(`newResult[${Er(v)}] = ${w}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let y=p.compile();return(v,w)=>y(d,v,w)},o,s=ln,i=!hs.jitless,c=i&&Pa.value,u=e.catchall,l;t._zod.parse=(d,p)=>{l??(l=r.value);let f=d.value;if(!s(f))return d.issues.push({expected:"object",code:"invalid_type",input:f,inst:t}),d;let m=[];if(i&&c&&p?.async===!1&&p.jitless!==!0)o||(o=n(e.shape)),d=o(d,p);else{d.value={};let w=l.shape;for(let S of l.keys){let Z=w[S],De=Z._zod.run({value:f[S],issues:[]},p),it=Z._zod.optin==="optional"&&Z._zod.optout==="optional";De instanceof Promise?m.push(De.then(en=>it?jf(en,d,S,f):$s(en,d,S))):it?jf(De,d,S,f):$s(De,d,S)}}if(!u)return m.length?Promise.all(m).then(()=>d):d;let h=[],g=l.keySet,y=u._zod,v=y.def.type;for(let w of Object.keys(f)){if(g.has(w))continue;if(v==="never"){h.push(w);continue}let S=y.run({value:f[w],issues:[]},p);S instanceof Promise?m.push(S.then(Z=>$s(Z,d,w))):$s(S,d,w)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),m.length?Promise.all(m).then(()=>d):d}});function Zf(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=>_t(s,n,tt())))}),e}var Ss=b("$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=>eo(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=>Zf(i,r,t,n)):Zf(s,r,t,n)}}),_c=b("$ZodDiscriminatedUnion",(t,e)=>{Ss.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=Qn(()=>{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(!ln(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)}}),vc=b("$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])=>Mf(r,c,u)):Mf(r,s,i)}});function Ha(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(dn(t)&&dn(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=Ha(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=Ha(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 Mf(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=Ha(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 bc=b("$ZodRecord",(t,e)=>{ae.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!dn(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(...Et(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Et(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=>_t(u,n,tt())),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(...Et(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Et(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var wc=b("$ZodEnum",(t,e)=>{ae.init(t,e);let r=Yn(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ea.has(typeof n)).map(n=>typeof n=="string"?Yt(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=b("$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"?Yt(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 xc=b("$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 Dt;return r.value=o,r}}),kc=b("$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(`^(${eo(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)}),Sc=b("$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(`^(${eo(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)}),zc=b("$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=>qf(s,e)):qf(o,e)}});function qf(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Rc=b("$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))}),Tc=b("$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=>Df(s,t)):Df(o,t)}});function Df(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 Pc=b("$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=>_t(i,n,tt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>_t(s,n,tt()))},input:r.value}),r.issues=[]),r)}});var Ec=b("$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=>Vf(s,e,n)):Vf(o,e,n)}});function Vf(t,e,r){return Ir(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Ic=b("$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(Lf):Lf(o)}});function Lf(t){return t.value=Object.freeze(t.value),t}var Oc=b("$ZodCustom",(t,e)=>{Ee.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=>Uf(s,r,n,t));Uf(o,r,n,t)}});function Uf(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(Na(o))}}var dw=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},pw=()=>{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 ${dw(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${_s(n.values[0])}`:`Invalid option: expected one of ${gs(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":""}: ${gs(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 Kf(){return{localeError:pw()}}var fw=Symbol("ZodOutput"),mw=Symbol("ZodInput"),so=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 Wf(){return new so}var Qt=Wf();function Nc(t,e){return new t({type:"string",...q(e)})}function Cc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...q(e)})}function zs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...q(e)})}function Ac(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...q(e)})}function jc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...q(e)})}function Zc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...q(e)})}function Mc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...q(e)})}function qc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...q(e)})}function Dc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...q(e)})}function Vc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...q(e)})}function Lc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...q(e)})}function Uc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...q(e)})}function Fc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...q(e)})}function Bc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...q(e)})}function Hc(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...q(e)})}function Gc(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...q(e)})}function Jc(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...q(e)})}function Kc(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...q(e)})}function Wc(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...q(e)})}function Yc(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...q(e)})}function Qc(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...q(e)})}function Xc(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...q(e)})}function eu(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...q(e)})}function Yf(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...q(e)})}function Qf(t,e){return new t({type:"string",format:"date",check:"string_format",...q(e)})}function Xf(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...q(e)})}function em(t,e){return new t({type:"string",format:"duration",check:"string_format",...q(e)})}function tu(t,e){return new t({type:"number",checks:[],...q(e)})}function ru(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...q(e)})}function nu(t,e){return new t({type:"boolean",...q(e)})}function ou(t,e){return new t({type:"null",...q(e)})}function su(t){return new t({type:"unknown"})}function iu(t,e){return new t({type:"never",...q(e)})}function Rs(t,e){return new Fa({check:"less_than",...q(e),value:t,inclusive:!1})}function io(t,e){return new Fa({check:"less_than",...q(e),value:t,inclusive:!0})}function Ts(t,e){return new Ba({check:"greater_than",...q(e),value:t,inclusive:!1})}function ao(t,e){return new Ba({check:"greater_than",...q(e),value:t,inclusive:!0})}function Ps(t,e){return new wf({check:"multiple_of",...q(e),value:t})}function Es(t,e){return new xf({check:"max_length",...q(e),maximum:t})}function pn(t,e){return new kf({check:"min_length",...q(e),minimum:t})}function Is(t,e){return new Sf({check:"length_equals",...q(e),length:t})}function au(t,e){return new zf({check:"string_format",format:"regex",...q(e),pattern:t})}function cu(t){return new Rf({check:"string_format",format:"lowercase",...q(t)})}function uu(t){return new Tf({check:"string_format",format:"uppercase",...q(t)})}function lu(t,e){return new Pf({check:"string_format",format:"includes",...q(e),includes:t})}function du(t,e){return new Ef({check:"string_format",format:"starts_with",...q(e),prefix:t})}function pu(t,e){return new If({check:"string_format",format:"ends_with",...q(e),suffix:t})}function Cr(t){return new Of({check:"overwrite",tx:t})}function fu(t){return Cr(e=>e.normalize(t))}function mu(){return Cr(t=>t.trim())}function hu(){return Cr(t=>t.toLowerCase())}function gu(){return Cr(t=>t.toUpperCase())}function tm(t,e,r){return new t({type:"array",element:e,...q(r)})}function yu(t,e,r){let n=q(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function _u(t,e,r){return new t({type:"custom",check:"custom",fn:e,...q(r)})}var Os=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Qt,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},p=e._zod.parent;if(p)a.ref=p,this.process(p,d),this.seen.get(p).isParent=!0;else{let f=a.schema;switch(o.type){case"string":{let m=f;m.type="string";let{minimum:h,maximum:g,format:y,patterns:v,contentEncoding:w}=e._zod.bag;if(typeof h=="number"&&(m.minLength=h),typeof g=="number"&&(m.maxLength=g),y&&(m.format=s[y]??y,m.format===""&&delete m.format),w&&(m.contentEncoding=w),v&&v.size>0){let S=[...v];S.length===1?m.pattern=S[0].source:S.length>1&&(a.schema.allOf=[...S.map(Z=>({...this.target==="draft-7"?{type:"string"}:{},pattern:Z.source}))])}break}case"number":{let m=f,{minimum:h,maximum:g,format:y,multipleOf:v,exclusiveMaximum:w,exclusiveMinimum:S}=e._zod.bag;typeof y=="string"&&y.includes("int")?m.type="integer":m.type="number",typeof S=="number"&&(m.exclusiveMinimum=S),typeof h=="number"&&(m.minimum=h,typeof S=="number"&&(S>=h?delete m.minimum:delete m.exclusiveMinimum)),typeof w=="number"&&(m.exclusiveMaximum=w),typeof g=="number"&&(m.maximum=g,typeof w=="number"&&(w<=g?delete m.maximum:delete m.exclusiveMaximum)),typeof v=="number"&&(m.multipleOf=v);break}case"boolean":{let m=f;m.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":{f.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":{f.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let m=f,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(m.minItems=h),typeof g=="number"&&(m.maxItems=g),m.type="array",m.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let m=f;m.type="object",m.properties={};let h=o.shape;for(let v in h)m.properties[v]=this.process(h[v],{...d,path:[...d.path,"properties",v]});let g=new Set(Object.keys(h)),y=new Set([...g].filter(v=>{let w=o.shape[v]._zod;return this.io==="input"?w.optin===void 0:w.optout===void 0}));y.size>0&&(m.required=Array.from(y)),o.catchall?._zod.def.type==="never"?m.additionalProperties=!1:o.catchall?o.catchall&&(m.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(m.additionalProperties=!1);break}case"union":{let m=f;m.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let m=f,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),y=w=>"allOf"in w&&Object.keys(w).length===1,v=[...y(h)?h.allOf:[h],...y(g)?g.allOf:[g]];m.allOf=v;break}case"tuple":{let m=f;m.type="array";let h=o.items.map((v,w)=>this.process(v,{...d,path:[...d.path,"prefixItems",w]}));if(this.target==="draft-2020-12"?m.prefixItems=h:m.items=h,o.rest){let v=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?m.items=v:m.additionalItems=v}o.rest&&(m.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:y}=e._zod.bag;typeof g=="number"&&(m.minItems=g),typeof y=="number"&&(m.maxItems=y);break}case"record":{let m=f;m.type="object",m.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),m.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 m=f,h=Yn(o.entries);h.every(g=>typeof g=="number")&&(m.type="number"),h.every(g=>typeof g=="string")&&(m.type="string"),m.enum=h;break}case"literal":{let m=f,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];m.type=g===null?"null":typeof g,m.const=g}else h.every(g=>typeof g=="number")&&(m.type="number"),h.every(g=>typeof g=="string")&&(m.type="string"),h.every(g=>typeof g=="boolean")&&(m.type="string"),h.every(g=>g===null)&&(m.type="null"),m.enum=h;break}case"file":{let m=f,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:y,mime:v}=e._zod.bag;g!==void 0&&(h.minLength=g),y!==void 0&&(h.maxLength=y),v?v.length===1?(h.contentMediaType=v[0],Object.assign(m,h)):m.anyOf=v.map(w=>({...h,contentMediaType:w})):Object.assign(m,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let m=this.process(o.innerType,d);f.anyOf=[m,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let m=f;m.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,f.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(f._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let m;try{m=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}f.default=m;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let m=f,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");m.type="string",m.pattern=h.source;break}case"pipe":{let m=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(m,d),a.ref=m;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,f.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 m=e._zod.innerType;this.process(m,d),a.ref=m;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??(v=>v);if(h)return{ref:g(h)};let y=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=y,{defId:y,ref:`${g("__shared")}#/${d}/${y}`}}if(l[1]===o)return{ref:"#"};let f=`#/${d}/`,m=l[1].schema.id??`__schema${this.counter++}`;return{defId:m,ref:f+m}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:p,defId:f}=s(l);d.def={...d.schema},f&&(d.defId=f);let m=d.schema;for(let h in m)delete m[h];m.$ref=p};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 p=this.seen.get(l),m=p.def??p.schema,f={...m};if(p.ref===null)return;let h=p.ref;if(p.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,f))}p.isParent||this.override({zodSchema:l,jsonSchema:m,path:p.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 _u(t,e){if(t instanceof so){let n=new Os(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 Os(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)=>ja(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Or(t,r,n),t.parseAsync=async(r,n)=>Ma(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)=>{ks.init(t,e),Gw.init(t,e),Q.defineLazy(t,"shape",()=>e.shape)});function vu(t,e){let r={type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},...Q.normalizeParams(e)};return new Kw(r)}function ct(t){return!!t._zod}function jr(t){let e=Object.values(t);if(e.length===0)return vu({});let r=e.every(ct),n=e.every(o=>!ct(o));if(r)return vu(t);if(n)return $a(t);throw new Error("Mixed Zod versions detected in object shape.")}function Yt(t,e){return ct(t)?Or(t,e):t.safeParse(e)}async function Ns(t,e){return ct(t)?await Nr(t,e):await t.safeParseAsync(e)}function Qt(t){if(!t)return;let e;if(ct(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function fn(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(ct(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 Cs(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 rm(t){return t.description}function nm(t){if(ct(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function As(t){if(ct(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 co={};_a(co,{ZodISODate:()=>sm,ZodISODateTime:()=>om,ZodISODuration:()=>am,ZodISOTime:()=>im,date:()=>wu,datetime:()=>bu,duration:()=>xu,time:()=>$u});var om=v("ZodISODateTime",(t,e)=>{Uf.init(t,e),ye.init(t,e)});function bu(t){return Wf(om,t)}var sm=v("ZodISODate",(t,e)=>{Ff.init(t,e),ye.init(t,e)});function wu(t){return Yf(sm,t)}var im=v("ZodISOTime",(t,e)=>{Bf.init(t,e),ye.init(t,e)});function $u(t){return Qf(im,t)}var am=v("ZodISODuration",(t,e)=>{Hf.init(t,e),ye.init(t,e)});function xu(t){return Xf(am,t)}var cm=(t,e)=>{vs.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ca(t,r)},flatten:{value:r=>Na(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},sN=v("ZodError",cm),uo=v("ZodError",cm,{Parent:Error});var um=Aa(uo),lm=Za(uo),dm=qa(uo),pm=Da(uo);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)=>um(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>dm(t,r,n),t.parseAsync=async(r,n)=>lm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>pm(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=()=>hm(t),t.nullish=()=>ve(hm(t)),t.nonoptional=r=>q$(t,r),t.array=()=>ee(t),t.or=r=>me([t,r]),t.and=r=>Zs(t,r),t.transform=r=>Su(t,wm(r)),t.default=r=>j$(t,r),t.prefault=r=>M$(t,r),t.catch=r=>L$(t,r),t.pipe=r=>Su(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)),gm=v("_ZodString",(t,e)=>{oo.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(iu(...n)),t.includes=(...n)=>t.check(uu(...n)),t.startsWith=(...n)=>t.check(lu(...n)),t.endsWith=(...n)=>t.check(du(...n)),t.min=(...n)=>t.check(pn(...n)),t.max=(...n)=>t.check(Es(...n)),t.length=(...n)=>t.check(Is(...n)),t.nonempty=(...n)=>t.check(pn(1,...n)),t.lowercase=n=>t.check(au(n)),t.uppercase=n=>t.check(cu(n)),t.trim=()=>t.check(fu()),t.normalize=(...n)=>t.check(pu(...n)),t.toLowerCase=()=>t.check(mu()),t.toUpperCase=()=>t.check(hu())}),o$=v("ZodString",(t,e)=>{oo.init(t,e),gm.init(t,e),t.email=r=>t.check(Nc(s$,r)),t.url=r=>t.check(Mc(i$,r)),t.jwt=r=>t.check(Xc(w$,r)),t.emoji=r=>t.check(qc(a$,r)),t.guid=r=>t.check(zs(fm,r)),t.uuid=r=>t.check(Cc(js,r)),t.uuidv4=r=>t.check(Ac(js,r)),t.uuidv6=r=>t.check(jc(js,r)),t.uuidv7=r=>t.check(Zc(js,r)),t.nanoid=r=>t.check(Dc(c$,r)),t.guid=r=>t.check(zs(fm,r)),t.cuid=r=>t.check(Lc(u$,r)),t.cuid2=r=>t.check(Vc(l$,r)),t.ulid=r=>t.check(Uc(d$,r)),t.base64=r=>t.check(Wc(_$,r)),t.base64url=r=>t.check(Yc(v$,r)),t.xid=r=>t.check(Fc(p$,r)),t.ksuid=r=>t.check(Bc(f$,r)),t.ipv4=r=>t.check(Hc(m$,r)),t.ipv6=r=>t.check(Jc(h$,r)),t.cidrv4=r=>t.check(Gc(g$,r)),t.cidrv6=r=>t.check(Kc(y$,r)),t.e164=r=>t.check(Qc(b$,r)),t.datetime=r=>t.check(bu(r)),t.date=r=>t.check(wu(r)),t.time=r=>t.check($u(r)),t.duration=r=>t.check(xu(r))});function y(t){return Oc(o$,t)}var ye=v("ZodStringFormat",(t,e)=>{pe.init(t,e),gm.init(t,e)}),s$=v("ZodEmail",(t,e)=>{Ga.init(t,e),ye.init(t,e)});var fm=v("ZodGUID",(t,e)=>{Ha.init(t,e),ye.init(t,e)});var js=v("ZodUUID",(t,e)=>{Ja.init(t,e),ye.init(t,e)});var i$=v("ZodURL",(t,e)=>{Ka.init(t,e),ye.init(t,e)});var a$=v("ZodEmoji",(t,e)=>{Wa.init(t,e),ye.init(t,e)});var c$=v("ZodNanoID",(t,e)=>{Ya.init(t,e),ye.init(t,e)});var u$=v("ZodCUID",(t,e)=>{Qa.init(t,e),ye.init(t,e)});var l$=v("ZodCUID2",(t,e)=>{Xa.init(t,e),ye.init(t,e)});var d$=v("ZodULID",(t,e)=>{ec.init(t,e),ye.init(t,e)});var p$=v("ZodXID",(t,e)=>{tc.init(t,e),ye.init(t,e)});var f$=v("ZodKSUID",(t,e)=>{rc.init(t,e),ye.init(t,e)});var m$=v("ZodIPv4",(t,e)=>{nc.init(t,e),ye.init(t,e)});var h$=v("ZodIPv6",(t,e)=>{oc.init(t,e),ye.init(t,e)});var g$=v("ZodCIDRv4",(t,e)=>{sc.init(t,e),ye.init(t,e)});var y$=v("ZodCIDRv6",(t,e)=>{ic.init(t,e),ye.init(t,e)});var _$=v("ZodBase64",(t,e)=>{ac.init(t,e),ye.init(t,e)});var v$=v("ZodBase64URL",(t,e)=>{cc.init(t,e),ye.init(t,e)});var b$=v("ZodE164",(t,e)=>{uc.init(t,e),ye.init(t,e)});var w$=v("ZodJWT",(t,e)=>{lc.init(t,e),ye.init(t,e)});var ym=v("ZodNumber",(t,e)=>{xs.init(t,e),we.init(t,e),t.gt=(n,o)=>t.check(Ts(n,o)),t.gte=(n,o)=>t.check(ao(n,o)),t.min=(n,o)=>t.check(ao(n,o)),t.lt=(n,o)=>t.check(Rs(n,o)),t.lte=(n,o)=>t.check(io(n,o)),t.max=(n,o)=>t.check(io(n,o)),t.int=n=>t.check(mm(n)),t.safe=n=>t.check(mm(n)),t.positive=n=>t.check(Ts(0,n)),t.nonnegative=n=>t.check(ao(0,n)),t.negative=n=>t.check(Rs(0,n)),t.nonpositive=n=>t.check(io(0,n)),t.multipleOf=(n,o)=>t.check(Ps(n,o)),t.step=(n,o)=>t.check(Ps(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 eu(ym,t)}var $$=v("ZodNumberFormat",(t,e)=>{dc.init(t,e),ym.init(t,e)});function mm(t){return tu($$,t)}var x$=v("ZodBoolean",(t,e)=>{pc.init(t,e),we.init(t,e)});function ze(t){return ru(x$,t)}var k$=v("ZodNull",(t,e)=>{fc.init(t,e),we.init(t,e)});function _m(t){return nu(k$,t)}var S$=v("ZodUnknown",(t,e)=>{mc.init(t,e),we.init(t,e)});function _e(){return ou(S$)}var z$=v("ZodNever",(t,e)=>{hc.init(t,e),we.init(t,e)});function R$(t){return su(z$,t)}var T$=v("ZodArray",(t,e)=>{gc.init(t,e),we.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(pn(r,n)),t.nonempty=r=>t.check(pn(1,r)),t.max=(r,n)=>t.check(Es(r,n)),t.length=(r,n)=>t.check(Is(r,n)),t.unwrap=()=>t.element});function ee(t,e){return em(T$,t,e)}var vm=v("ZodObject",(t,e)=>{ks.init(t,e),we.init(t,e),Q.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ge(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($m,t,r[0]),t.required=(...r)=>Q.required(xm,t,r[0])});function P(t,e){let r={type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},...Q.normalizeParams(e)};return new vm(r)}function Le(t,e){return new vm({type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},catchall:_e(),...Q.normalizeParams(e)})}var bm=v("ZodUnion",(t,e)=>{Ss.init(t,e),we.init(t,e),t.options=e.options});function me(t,e){return new bm({type:"union",options:t,...Q.normalizeParams(e)})}var P$=v("ZodDiscriminatedUnion",(t,e)=>{bm.init(t,e),yc.init(t,e)});function zu(t,e,r){return new P$({type:"union",options:e,discriminator:t,...Q.normalizeParams(r)})}var E$=v("ZodIntersection",(t,e)=>{_c.init(t,e),we.init(t,e)});function Zs(t,e){return new E$({type:"intersection",left:t,right:e})}var I$=v("ZodRecord",(t,e)=>{vc.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 ku=v("ZodEnum",(t,e)=>{bc.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 ku({...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 ku({...e,checks:[],...Q.normalizeParams(o),entries:s})}});function Ge(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new ku({type:"enum",entries:r,...Q.normalizeParams(e)})}var O$=v("ZodLiteral",(t,e)=>{wc.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)=>{$c.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 wm(t){return new N$({type:"transform",transform:t})}var $m=v("ZodOptional",(t,e)=>{xc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ve(t){return new $m({type:"optional",innerType:t})}var C$=v("ZodNullable",(t,e)=>{kc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function hm(t){return new C$({type:"nullable",innerType:t})}var A$=v("ZodDefault",(t,e)=>{Sc.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)=>{zc.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 xm=v("ZodNonOptional",(t,e)=>{Rc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function q$(t,e){return new xm({type:"nonoptional",innerType:t,...Q.normalizeParams(e)})}var D$=v("ZodCatch",(t,e)=>{Tc.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)=>{Pc.init(t,e),we.init(t,e),t.in=e.in,t.out=e.out});function Su(t,e){return new V$({type:"pipe",in:t,out:e})}var U$=v("ZodReadonly",(t,e)=>{Ec.init(t,e),we.init(t,e)});function F$(t){return new U$({type:"readonly",innerType:t})}var km=v("ZodCustom",(t,e)=>{Ic.init(t,e),we.init(t,e)});function B$(t){let e=new Ee({check:"custom"});return e._zod.check=t,e}function Sm(t,e){return gu(km,t??(()=>!0),e)}function H$(t,e={}){return yu(km,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 Ru(t,e){return Su(wm(t),e)}et(Gf());var Pu="2025-11-25",zm="2025-03-26",hn=[Pu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Xt="io.modelcontextprotocol/related-task",qs="2.0",Se=Sm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Rm=me([y(),ie().int()]),Tm=y(),vN=Le({ttl:ie().optional(),pollInterval:ie().optional()}),G$=P({ttl:ie().optional()}),K$=P({taskId:y()}),Eu=Le({progressToken:Rm.optional(),[Xt]:K$.optional()}),rt=P({_meta:Eu.optional()}),lo=rt.extend({task:G$.optional()}),Pm=t=>lo.safeParse(t).success,Ie=P({method:y(),params:rt.loose().optional()}),ut=P({_meta:Eu.optional()}),lt=P({method:y(),params:ut.loose().optional()}),Oe=Le({_meta:Eu.optional()}),Ds=me([y(),ie().int()]),Em=P({jsonrpc:N(qs),id:Ds,...Ie.shape}).strict(),er=t=>Em.safeParse(t).success,Im=P({jsonrpc:N(qs),...lt.shape}).strict(),Om=t=>Im.safeParse(t).success,Iu=P({jsonrpc:N(qs),id:Ds,result:Oe}).strict(),Dt=t=>Iu.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 Ou=P({jsonrpc:N(qs),id:Ds.optional(),error:P({code:ie().int(),message:y(),data:_e().optional()})}).strict();var gn=t=>Ou.safeParse(t).success;var po=me([Em,Im,Iu,Ou]),bN=me([Iu,Ou]),Ls=Oe.strict(),W$=ut.extend({requestId:Ds.optional(),reason:y().optional()}),Vs=lt.extend({method:N("notifications/cancelled"),params:W$}),Y$=P({src:y(),mimeType:y().optional(),sizes:ee(y()).optional(),theme:Ge(["light","dark"]).optional()}),fo=P({icons:ee(Y$).optional()}),mn=P({name:y(),title:y().optional()}),Nm=mn.extend({...mn.shape,...fo.shape,version:y(),websiteUrl:y().optional(),description:y().optional()}),Q$=Zs(P({applyDefaults:ze().optional()}),fe(y(),_e())),X$=Ru(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Zs(P({form:Q$.optional(),url:Se.optional()}),fe(y(),_e()).optional())),ex=Le({list:Se.optional(),cancel:Se.optional(),requests:Le({sampling:Le({createMessage:Se.optional()}).optional(),elicitation:Le({create:Se.optional()}).optional()}).optional()}),tx=Le({list:Se.optional(),cancel:Se.optional(),requests:Le({tools:Le({call:Se.optional()}).optional()}).optional()}),rx=P({experimental:fe(y(),Se).optional(),sampling:P({context:Se.optional(),tools:Se.optional()}).optional(),elicitation:X$.optional(),roots:P({listChanged:ze().optional()}).optional(),tasks:ex.optional(),extensions:fe(y(),Se).optional()}),nx=rt.extend({protocolVersion:y(),capabilities:rx,clientInfo:Nm}),Us=Ie.extend({method:N("initialize"),params:nx}),mo=t=>Us.safeParse(t).success,ox=P({experimental:fe(y(),Se).optional(),logging:Se.optional(),completions:Se.optional(),prompts:P({listChanged:ze().optional()}).optional(),resources:P({subscribe:ze().optional(),listChanged:ze().optional()}).optional(),tools:P({listChanged:ze().optional()}).optional(),tasks:tx.optional(),extensions:fe(y(),Se).optional()}),sx=Oe.extend({protocolVersion:y(),capabilities:ox,serverInfo:Nm,instructions:y().optional()}),Nu=lt.extend({method:N("notifications/initialized"),params:ut.optional()});var Fs=Ie.extend({method:N("ping"),params:rt.optional()}),ix=P({progress:ie(),total:ve(ie()),message:ve(y())}),ax=P({...ut.shape,...ix.shape,progressToken:Rm}),Bs=lt.extend({method:N("notifications/progress"),params:ax}),cx=rt.extend({cursor:Tm.optional()}),ho=Ie.extend({params:cx.optional()}),go=Oe.extend({nextCursor:Tm.optional()}),ux=Ge(["working","input_required","completed","failed","cancelled"]),yo=P({taskId:y(),status:ux,ttl:me([ie(),_m()]),createdAt:y(),lastUpdatedAt:y(),pollInterval:ve(ie()),statusMessage:ve(y())}),yn=Oe.extend({task:yo}),lx=ut.merge(yo),_o=lt.extend({method:N("notifications/tasks/status"),params:lx}),Hs=Ie.extend({method:N("tasks/get"),params:rt.extend({taskId:y()})}),Js=Oe.merge(yo),Gs=Ie.extend({method:N("tasks/result"),params:rt.extend({taskId:y()})}),wN=Oe.loose(),Ks=ho.extend({method:N("tasks/list")}),Ws=go.extend({tasks:ee(yo)}),Ys=Ie.extend({method:N("tasks/cancel"),params:rt.extend({taskId:y()})}),Cm=Oe.merge(yo),Am=P({uri:y(),mimeType:ve(y()),_meta:fe(y(),_e()).optional()}),jm=Am.extend({text:y()}),Cu=y().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Zm=Am.extend({blob:Cu}),vo=Ge(["user","assistant"]),_n=P({audience:ee(vo).optional(),priority:ie().min(0).max(1).optional(),lastModified:co.datetime({offset:!0}).optional()}),Mm=P({...mn.shape,...fo.shape,uri:y(),description:ve(y()),mimeType:ve(y()),size:ve(ie()),annotations:_n.optional(),_meta:ve(Le({}))}),dx=P({...mn.shape,...fo.shape,uriTemplate:y(),description:ve(y()),mimeType:ve(y()),annotations:_n.optional(),_meta:ve(Le({}))}),Qs=ho.extend({method:N("resources/list")}),px=go.extend({resources:ee(Mm)}),Xs=ho.extend({method:N("resources/templates/list")}),fx=go.extend({resourceTemplates:ee(dx)}),Au=rt.extend({uri:y()}),mx=Au,ei=Ie.extend({method:N("resources/read"),params:mx}),hx=Oe.extend({contents:ee(me([jm,Zm]))}),gx=lt.extend({method:N("notifications/resources/list_changed"),params:ut.optional()}),yx=Au,_x=Ie.extend({method:N("resources/subscribe"),params:yx}),vx=Au,bx=Ie.extend({method:N("resources/unsubscribe"),params:vx}),wx=ut.extend({uri:y()}),$x=lt.extend({method:N("notifications/resources/updated"),params:wx}),xx=P({name:y(),description:ve(y()),required:ve(ze())}),kx=P({...mn.shape,...fo.shape,description:ve(y()),arguments:ve(ee(xx)),_meta:ve(Le({}))}),ti=ho.extend({method:N("prompts/list")}),Sx=go.extend({prompts:ee(kx)}),zx=rt.extend({name:y(),arguments:fe(y(),y()).optional()}),ri=Ie.extend({method:N("prompts/get"),params:zx}),ju=P({type:N("text"),text:y(),annotations:_n.optional(),_meta:fe(y(),_e()).optional()}),Zu=P({type:N("image"),data:Cu,mimeType:y(),annotations:_n.optional(),_meta:fe(y(),_e()).optional()}),Mu=P({type:N("audio"),data:Cu,mimeType:y(),annotations:_n.optional(),_meta:fe(y(),_e()).optional()}),Rx=P({type:N("tool_use"),name:y(),id:y(),input:fe(y(),_e()),_meta:fe(y(),_e()).optional()}),Tx=P({type:N("resource"),resource:me([jm,Zm]),annotations:_n.optional(),_meta:fe(y(),_e()).optional()}),Px=Mm.extend({type:N("resource_link")}),qu=me([ju,Zu,Mu,Px,Tx]),Ex=P({role:vo,content:qu}),Ix=Oe.extend({description:y().optional(),messages:ee(Ex)}),Ox=lt.extend({method:N("notifications/prompts/list_changed"),params:ut.optional()}),Nx=P({title:y().optional(),readOnlyHint:ze().optional(),destructiveHint:ze().optional(),idempotentHint:ze().optional(),openWorldHint:ze().optional()}),Cx=P({taskSupport:Ge(["required","optional","forbidden"]).optional()}),qm=P({...mn.shape,...fo.shape,description:y().optional(),inputSchema:P({type:N("object"),properties:fe(y(),Se).optional(),required:ee(y()).optional()}).catchall(_e()),outputSchema:P({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()}),ni=ho.extend({method:N("tools/list")}),Ax=go.extend({tools:ee(qm)}),oi=Oe.extend({content:ee(qu).default([]),structuredContent:fe(y(),_e()).optional(),isError:ze().optional()}),$N=oi.or(Oe.extend({toolResult:_e()})),jx=lo.extend({name:y(),arguments:fe(y(),_e()).optional()}),vn=Ie.extend({method:N("tools/call"),params:jx}),Zx=lt.extend({method:N("notifications/tools/list_changed"),params:ut.optional()}),xN=P({autoRefresh:ze().default(!0),debounceMs:ie().int().nonnegative().default(300)}),bo=Ge(["debug","info","notice","warning","error","critical","alert","emergency"]),Mx=rt.extend({level:bo}),Du=Ie.extend({method:N("logging/setLevel"),params:Mx}),qx=ut.extend({level:bo,logger:y().optional(),data:_e()}),Dx=lt.extend({method:N("notifications/message"),params:qx}),Lx=P({name:y().optional()}),Vx=P({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=P({mode:Ge(["auto","required","none"]).optional()}),Fx=P({type:N("tool_result"),toolUseId:y().describe("The unique identifier for the corresponding tool call."),content:ee(qu).default([]),structuredContent:P({}).loose().optional(),isError:ze().optional(),_meta:fe(y(),_e()).optional()}),Bx=zu("type",[ju,Zu,Mu]),Ms=zu("type",[ju,Zu,Mu,Rx,Fx]),Hx=P({role:vo,content:me([Ms,ee(Ms)]),_meta:fe(y(),_e()).optional()}),Jx=lo.extend({messages:ee(Hx),modelPreferences:Vx.optional(),systemPrompt:y().optional(),includeContext:Ge(["none","thisServer","allServers"]).optional(),temperature:ie().optional(),maxTokens:ie().int(),stopSequences:ee(y()).optional(),metadata:Se.optional(),tools:ee(qm).optional(),toolChoice:Ux.optional()}),Gx=Ie.extend({method:N("sampling/createMessage"),params:Jx}),wo=Oe.extend({model:y(),stopReason:ve(Ge(["endTurn","stopSequence","maxTokens"]).or(y())),role:vo,content:Bx}),Lu=Oe.extend({model:y(),stopReason:ve(Ge(["endTurn","stopSequence","maxTokens","toolUse"]).or(y())),role:vo,content:me([Ms,ee(Ms)])}),Kx=P({type:N("boolean"),title:y().optional(),description:y().optional(),default:ze().optional()}),Wx=P({type:N("string"),title:y().optional(),description:y().optional(),minLength:ie().optional(),maxLength:ie().optional(),format:Ge(["email","uri","date","date-time"]).optional(),default:y().optional()}),Yx=P({type:Ge(["number","integer"]),title:y().optional(),description:y().optional(),minimum:ie().optional(),maximum:ie().optional(),default:ie().optional()}),Qx=P({type:N("string"),title:y().optional(),description:y().optional(),enum:ee(y()),default:y().optional()}),Xx=P({type:N("string"),title:y().optional(),description:y().optional(),oneOf:ee(P({const:y(),title:y()})),default:y().optional()}),e0=P({type:N("string"),title:y().optional(),description:y().optional(),enum:ee(y()),enumNames:ee(y()).optional(),default:y().optional()}),t0=me([Qx,Xx]),r0=P({type:N("array"),title:y().optional(),description:y().optional(),minItems:ie().optional(),maxItems:ie().optional(),items:P({type:N("string"),enum:ee(y())}),default:ee(y()).optional()}),n0=P({type:N("array"),title:y().optional(),description:y().optional(),minItems:ie().optional(),maxItems:ie().optional(),items:P({anyOf:ee(P({const:y(),title:y()}))}),default:ee(y()).optional()}),o0=me([r0,n0]),s0=me([e0,t0,o0]),i0=me([s0,Kx,Wx,Yx]),a0=lo.extend({mode:N("form").optional(),message:y(),requestedSchema:P({type:N("object"),properties:fe(y(),i0),required:ee(y()).optional()})}),c0=lo.extend({mode:N("url"),message:y(),elicitationId:y(),url:y().url()}),u0=me([a0,c0]),l0=Ie.extend({method:N("elicitation/create"),params:u0}),d0=ut.extend({elicitationId:y()}),p0=lt.extend({method:N("notifications/elicitation/complete"),params:d0}),bn=Oe.extend({action:Ge(["accept","decline","cancel"]),content:Ru(t=>t===null?void 0:t,fe(y(),me([y(),ie(),ze(),ee(y())])).optional())}),f0=P({type:N("ref/resource"),uri:y()});var m0=P({type:N("ref/prompt"),name:y()}),h0=rt.extend({ref:me([m0,f0]),argument:P({name:y(),value:y()}),context:P({arguments:fe(y(),y()).optional()}).optional()}),si=Ie.extend({method:N("completion/complete"),params:h0});function Dm(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Lm(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var g0=Oe.extend({completion:Le({values:ee(y()).max(100),total:ve(ie().int()),hasMore:ve(ze())})}),y0=P({uri:y().startsWith("file://"),name:y().optional(),_meta:fe(y(),_e()).optional()}),_0=Ie.extend({method:N("roots/list"),params:rt.optional()}),Vu=Oe.extend({roots:ee(y0)}),v0=lt.extend({method:N("notifications/roots/list_changed"),params:ut.optional()}),kN=me([Fs,Us,si,Du,ri,ti,Qs,Xs,ei,_x,bx,vn,ni,Hs,Gs,Ks,Ys]),SN=me([Vs,Bs,Nu,v0,_o]),zN=me([Ls,wo,Lu,bn,Vu,Js,Ws,yn]),RN=me([Fs,Gx,l0,_0,Hs,Gs,Ks,Ys]),TN=me([Vs,Bs,Dx,$x,gx,Zx,Ox,_o,p0]),PN=me([Ls,sx,g0,Ix,Sx,px,fx,hx,oi,Ax,Js,Ws,yn]),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 Tu(o.elicitations,r)}return new t(e,r,n)}},Tu=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 Um=Symbol("Let zodToJsonSchema decide on which parser to use");var Vm={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"},Fm=t=>typeof t=="string"?{...Vm,name:t}:{...Vm,...t};var Bm=t=>{let e=Fm(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 Uu(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function te(t,e,r,n,o){t[e]=r,Uu(t,e,n,o)}var ii=(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"?ii(e,t.currentPath):e.join("/")}}function Hm(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 Jm(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 Gm(){return{type:"boolean"}}function ai(t,e){return D(t.type._def,e)}var Km=(t,e)=>D(t.innerType._def,e);function Fu(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Fu(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 Wm(t,e){return{...D(t.innerType._def,e),default:t.defaultValue()}}function Ym(t,e){return e.effectStrategy==="input"?D(t.schema._def,e):be(e)}function Qm(t){return{type:"string",enum:Array.from(t.values)}}var w0=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Xm(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 eh(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 Bu,_t={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:()=>(Bu===void 0&&(Bu=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Bu),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 ci(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":vt(r,"email",n.message,e);break;case"format:idn-email":vt(r,"idn-email",n.message,e);break;case"pattern:zod":Ve(r,_t.email,n.message,e);break}break;case"url":vt(r,"uri",n.message,e);break;case"uuid":vt(r,"uuid",n.message,e);break;case"regex":Ve(r,n.regex,n.message,e);break;case"cuid":Ve(r,_t.cuid,n.message,e);break;case"cuid2":Ve(r,_t.cuid2,n.message,e);break;case"startsWith":Ve(r,RegExp(`^${Hu(n.value,e)}`),n.message,e);break;case"endsWith":Ve(r,RegExp(`${Hu(n.value,e)}$`),n.message,e);break;case"datetime":vt(r,"date-time",n.message,e);break;case"date":vt(r,"date",n.message,e);break;case"time":vt(r,"time",n.message,e);break;case"duration":vt(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":{Ve(r,RegExp(Hu(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&vt(r,"ipv4",n.message,e),n.version!=="v4"&&vt(r,"ipv6",n.message,e);break}case"base64url":Ve(r,_t.base64url,n.message,e);break;case"jwt":Ve(r,_t.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ve(r,_t.ipv4Cidr,n.message,e),n.version!=="v4"&&Ve(r,_t.ipv6Cidr,n.message,e);break}case"emoji":Ve(r,_t.emoji(),n.message,e);break;case"ulid":{Ve(r,_t.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{vt(r,"binary",n.message,e);break}case"contentEncoding:base64":{te(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ve(r,_t.base64,n.message,e);break}}break}case"nanoid":Ve(r,_t.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Hu(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 vt(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 Ve(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:th(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):te(t,"pattern",th(e,n),r,n)}function th(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 f=n.external.registry.get(l[0])?.id;if(e!==l[0]&&f){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 p=this.seen.get(l),f=p.def??p.schema,m={...f};if(p.ref===null)return;let h=p.ref;if(p.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(f.allOf=f.allOf??[],f.allOf.push(g)):(Object.assign(f,g),Object.assign(f,m))}p.isParent||this.override({zodSchema:l,jsonSchema:f,path:p.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 vu(t,e){if(t instanceof so){let n=new Os(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 Os(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 Kw=b("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ae.init(t,e),t.def=e,t.parse=(r,n)=>Za(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Or(t,r,n),t.parseAsync=async(r,n)=>qa(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)=>rt(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t)});var Ww=b("ZodMiniObject",(t,e)=>{ks.init(t,e),Kw.init(t,e),X.defineLazy(t,"shape",()=>e.shape)});function bu(t,e){let r={type:"object",get shape(){return X.assignProp(this,"shape",{...t}),this.shape},...X.normalizeParams(e)};return new Ww(r)}function ut(t){return!!t._zod}function jr(t){let e=Object.values(t);if(e.length===0)return bu({});let r=e.every(ut),n=e.every(o=>!ut(o));if(r)return bu(t);if(n)return xa(t);throw new Error("Mixed Zod versions detected in object shape.")}function Xt(t,e){return ut(t)?Or(t,e):t.safeParse(e)}async function Ns(t,e){return ut(t)?await Nr(t,e):await t.safeParseAsync(e)}function er(t){if(!t)return;let e;if(ut(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function fn(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(ut(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 Cs(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 nm(t){return t.description}function om(t){if(ut(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function As(t){if(ut(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 co={};va(co,{ZodISODate:()=>im,ZodISODateTime:()=>sm,ZodISODuration:()=>cm,ZodISOTime:()=>am,date:()=>$u,datetime:()=>wu,duration:()=>ku,time:()=>xu});var sm=b("ZodISODateTime",(t,e)=>{Ff.init(t,e),ye.init(t,e)});function wu(t){return Yf(sm,t)}var im=b("ZodISODate",(t,e)=>{Bf.init(t,e),ye.init(t,e)});function $u(t){return Qf(im,t)}var am=b("ZodISOTime",(t,e)=>{Hf.init(t,e),ye.init(t,e)});function xu(t){return Xf(am,t)}var cm=b("ZodISODuration",(t,e)=>{Gf.init(t,e),ye.init(t,e)});function ku(t){return em(cm,t)}var um=(t,e)=>{vs.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Aa(t,r)},flatten:{value:r=>Ca(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},iN=b("ZodError",um),uo=b("ZodError",um,{Parent:Error});var lm=ja(uo),dm=Ma(uo),pm=Da(uo),fm=Va(uo);var we=b("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)=>rt(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>lm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>pm(t,r,n),t.parseAsync=async(r,n)=>dm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>fm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(G$(r,n)),t.superRefine=r=>t.check(J$(r)),t.overwrite=r=>t.check(Cr(r)),t.optional=()=>ve(t),t.nullable=()=>gm(t),t.nullish=()=>ve(gm(t)),t.nonoptional=r=>D$(t,r),t.array=()=>ee(t),t.or=r=>me([t,r]),t.and=r=>Zs(t,r),t.transform=r=>zu(t,$m(r)),t.default=r=>Z$(t,r),t.prefault=r=>q$(t,r),t.catch=r=>L$(t,r),t.pipe=r=>zu(t,r),t.readonly=()=>B$(t),t.describe=r=>{let n=t.clone();return Qt.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Qt.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Qt.get(t);let n=t.clone();return Qt.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),ym=b("_ZodString",(t,e)=>{oo.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(au(...n)),t.includes=(...n)=>t.check(lu(...n)),t.startsWith=(...n)=>t.check(du(...n)),t.endsWith=(...n)=>t.check(pu(...n)),t.min=(...n)=>t.check(pn(...n)),t.max=(...n)=>t.check(Es(...n)),t.length=(...n)=>t.check(Is(...n)),t.nonempty=(...n)=>t.check(pn(1,...n)),t.lowercase=n=>t.check(cu(n)),t.uppercase=n=>t.check(uu(n)),t.trim=()=>t.check(mu()),t.normalize=(...n)=>t.check(fu(...n)),t.toLowerCase=()=>t.check(hu()),t.toUpperCase=()=>t.check(gu())}),s$=b("ZodString",(t,e)=>{oo.init(t,e),ym.init(t,e),t.email=r=>t.check(Cc(i$,r)),t.url=r=>t.check(qc(a$,r)),t.jwt=r=>t.check(eu($$,r)),t.emoji=r=>t.check(Dc(c$,r)),t.guid=r=>t.check(zs(mm,r)),t.uuid=r=>t.check(Ac(js,r)),t.uuidv4=r=>t.check(jc(js,r)),t.uuidv6=r=>t.check(Zc(js,r)),t.uuidv7=r=>t.check(Mc(js,r)),t.nanoid=r=>t.check(Vc(u$,r)),t.guid=r=>t.check(zs(mm,r)),t.cuid=r=>t.check(Lc(l$,r)),t.cuid2=r=>t.check(Uc(d$,r)),t.ulid=r=>t.check(Fc(p$,r)),t.base64=r=>t.check(Yc(v$,r)),t.base64url=r=>t.check(Qc(b$,r)),t.xid=r=>t.check(Bc(f$,r)),t.ksuid=r=>t.check(Hc(m$,r)),t.ipv4=r=>t.check(Gc(h$,r)),t.ipv6=r=>t.check(Jc(g$,r)),t.cidrv4=r=>t.check(Kc(y$,r)),t.cidrv6=r=>t.check(Wc(_$,r)),t.e164=r=>t.check(Xc(w$,r)),t.datetime=r=>t.check(wu(r)),t.date=r=>t.check($u(r)),t.time=r=>t.check(xu(r)),t.duration=r=>t.check(ku(r))});function _(t){return Nc(s$,t)}var ye=b("ZodStringFormat",(t,e)=>{pe.init(t,e),ym.init(t,e)}),i$=b("ZodEmail",(t,e)=>{Ka.init(t,e),ye.init(t,e)});var mm=b("ZodGUID",(t,e)=>{Ga.init(t,e),ye.init(t,e)});var js=b("ZodUUID",(t,e)=>{Ja.init(t,e),ye.init(t,e)});var a$=b("ZodURL",(t,e)=>{Wa.init(t,e),ye.init(t,e)});var c$=b("ZodEmoji",(t,e)=>{Ya.init(t,e),ye.init(t,e)});var u$=b("ZodNanoID",(t,e)=>{Qa.init(t,e),ye.init(t,e)});var l$=b("ZodCUID",(t,e)=>{Xa.init(t,e),ye.init(t,e)});var d$=b("ZodCUID2",(t,e)=>{ec.init(t,e),ye.init(t,e)});var p$=b("ZodULID",(t,e)=>{tc.init(t,e),ye.init(t,e)});var f$=b("ZodXID",(t,e)=>{rc.init(t,e),ye.init(t,e)});var m$=b("ZodKSUID",(t,e)=>{nc.init(t,e),ye.init(t,e)});var h$=b("ZodIPv4",(t,e)=>{oc.init(t,e),ye.init(t,e)});var g$=b("ZodIPv6",(t,e)=>{sc.init(t,e),ye.init(t,e)});var y$=b("ZodCIDRv4",(t,e)=>{ic.init(t,e),ye.init(t,e)});var _$=b("ZodCIDRv6",(t,e)=>{ac.init(t,e),ye.init(t,e)});var v$=b("ZodBase64",(t,e)=>{cc.init(t,e),ye.init(t,e)});var b$=b("ZodBase64URL",(t,e)=>{uc.init(t,e),ye.init(t,e)});var w$=b("ZodE164",(t,e)=>{lc.init(t,e),ye.init(t,e)});var $$=b("ZodJWT",(t,e)=>{dc.init(t,e),ye.init(t,e)});var _m=b("ZodNumber",(t,e)=>{xs.init(t,e),we.init(t,e),t.gt=(n,o)=>t.check(Ts(n,o)),t.gte=(n,o)=>t.check(ao(n,o)),t.min=(n,o)=>t.check(ao(n,o)),t.lt=(n,o)=>t.check(Rs(n,o)),t.lte=(n,o)=>t.check(io(n,o)),t.max=(n,o)=>t.check(io(n,o)),t.int=n=>t.check(hm(n)),t.safe=n=>t.check(hm(n)),t.positive=n=>t.check(Ts(0,n)),t.nonnegative=n=>t.check(ao(0,n)),t.negative=n=>t.check(Rs(0,n)),t.nonpositive=n=>t.check(io(0,n)),t.multipleOf=(n,o)=>t.check(Ps(n,o)),t.step=(n,o)=>t.check(Ps(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 tu(_m,t)}var x$=b("ZodNumberFormat",(t,e)=>{pc.init(t,e),_m.init(t,e)});function hm(t){return ru(x$,t)}var k$=b("ZodBoolean",(t,e)=>{fc.init(t,e),we.init(t,e)});function ze(t){return nu(k$,t)}var S$=b("ZodNull",(t,e)=>{mc.init(t,e),we.init(t,e)});function vm(t){return ou(S$,t)}var z$=b("ZodUnknown",(t,e)=>{hc.init(t,e),we.init(t,e)});function _e(){return su(z$)}var R$=b("ZodNever",(t,e)=>{gc.init(t,e),we.init(t,e)});function T$(t){return iu(R$,t)}var P$=b("ZodArray",(t,e)=>{yc.init(t,e),we.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(pn(r,n)),t.nonempty=r=>t.check(pn(1,r)),t.max=(r,n)=>t.check(Es(r,n)),t.length=(r,n)=>t.check(Is(r,n)),t.unwrap=()=>t.element});function ee(t,e){return tm(P$,t,e)}var bm=b("ZodObject",(t,e)=>{ks.init(t,e),we.init(t,e),X.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:T$()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>X.extend(t,r),t.merge=r=>X.merge(t,r),t.pick=r=>X.pick(t,r),t.omit=r=>X.omit(t,r),t.partial=(...r)=>X.partial(xm,t,r[0]),t.required=(...r)=>X.required(km,t,r[0])});function E(t,e){let r={type:"object",get shape(){return X.assignProp(this,"shape",{...t}),this.shape},...X.normalizeParams(e)};return new bm(r)}function Ve(t,e){return new bm({type:"object",get shape(){return X.assignProp(this,"shape",{...t}),this.shape},catchall:_e(),...X.normalizeParams(e)})}var wm=b("ZodUnion",(t,e)=>{Ss.init(t,e),we.init(t,e),t.options=e.options});function me(t,e){return new wm({type:"union",options:t,...X.normalizeParams(e)})}var E$=b("ZodDiscriminatedUnion",(t,e)=>{wm.init(t,e),_c.init(t,e)});function Ru(t,e,r){return new E$({type:"union",options:e,discriminator:t,...X.normalizeParams(r)})}var I$=b("ZodIntersection",(t,e)=>{vc.init(t,e),we.init(t,e)});function Zs(t,e){return new I$({type:"intersection",left:t,right:e})}var O$=b("ZodRecord",(t,e)=>{bc.init(t,e),we.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function fe(t,e,r){return new O$({type:"record",keyType:t,valueType:e,...X.normalizeParams(r)})}var Su=b("ZodEnum",(t,e)=>{wc.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 Su({...e,checks:[],...X.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 Su({...e,checks:[],...X.normalizeParams(o),entries:s})}});function Je(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Su({type:"enum",entries:r,...X.normalizeParams(e)})}var N$=b("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 N$({type:"literal",values:Array.isArray(t)?t:[t],...X.normalizeParams(e)})}var C$=b("ZodTransform",(t,e)=>{xc.init(t,e),we.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(X.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(X.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 $m(t){return new C$({type:"transform",transform:t})}var xm=b("ZodOptional",(t,e)=>{kc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ve(t){return new xm({type:"optional",innerType:t})}var A$=b("ZodNullable",(t,e)=>{Sc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function gm(t){return new A$({type:"nullable",innerType:t})}var j$=b("ZodDefault",(t,e)=>{zc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Z$(t,e){return new j$({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var M$=b("ZodPrefault",(t,e)=>{Rc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function q$(t,e){return new M$({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var km=b("ZodNonOptional",(t,e)=>{Tc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function D$(t,e){return new km({type:"nonoptional",innerType:t,...X.normalizeParams(e)})}var V$=b("ZodCatch",(t,e)=>{Pc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function L$(t,e){return new V$({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var U$=b("ZodPipe",(t,e)=>{Ec.init(t,e),we.init(t,e),t.in=e.in,t.out=e.out});function zu(t,e){return new U$({type:"pipe",in:t,out:e})}var F$=b("ZodReadonly",(t,e)=>{Ic.init(t,e),we.init(t,e)});function B$(t){return new F$({type:"readonly",innerType:t})}var Sm=b("ZodCustom",(t,e)=>{Oc.init(t,e),we.init(t,e)});function H$(t){let e=new Ee({check:"custom"});return e._zod.check=t,e}function zm(t,e){return yu(Sm,t??(()=>!0),e)}function G$(t,e={}){return _u(Sm,t,e)}function J$(t){let e=H$(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(X.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(X.issue(o))}},t(r.value,r)));return e}function Tu(t,e){return zu($m(t),e)}tt(Kf());var Eu="2025-11-25",Rm="2025-03-26",hn=[Eu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],tr="io.modelcontextprotocol/related-task",qs="2.0",Se=zm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Tm=me([_(),ie().int()]),Pm=_(),bN=Ve({ttl:ie().optional(),pollInterval:ie().optional()}),K$=E({ttl:ie().optional()}),W$=E({taskId:_()}),Iu=Ve({progressToken:Tm.optional(),[tr]:W$.optional()}),nt=E({_meta:Iu.optional()}),lo=nt.extend({task:K$.optional()}),Em=t=>lo.safeParse(t).success,Ie=E({method:_(),params:nt.loose().optional()}),lt=E({_meta:Iu.optional()}),dt=E({method:_(),params:lt.loose().optional()}),Oe=Ve({_meta:Iu.optional()}),Ds=me([_(),ie().int()]),Im=E({jsonrpc:N(qs),id:Ds,...Ie.shape}).strict(),rr=t=>Im.safeParse(t).success,Om=E({jsonrpc:N(qs),...dt.shape}).strict(),Nm=t=>Om.safeParse(t).success,Ou=E({jsonrpc:N(qs),id:Ds,result:Oe}).strict(),Vt=t=>Ou.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 Nu=E({jsonrpc:N(qs),id:Ds.optional(),error:E({code:ie().int(),message:_(),data:_e().optional()})}).strict();var gn=t=>Nu.safeParse(t).success;var po=me([Im,Om,Ou,Nu]),wN=me([Ou,Nu]),Vs=Oe.strict(),Y$=lt.extend({requestId:Ds.optional(),reason:_().optional()}),Ls=dt.extend({method:N("notifications/cancelled"),params:Y$}),Q$=E({src:_(),mimeType:_().optional(),sizes:ee(_()).optional(),theme:Je(["light","dark"]).optional()}),fo=E({icons:ee(Q$).optional()}),mn=E({name:_(),title:_().optional()}),Cm=mn.extend({...mn.shape,...fo.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),X$=Zs(E({applyDefaults:ze().optional()}),fe(_(),_e())),ex=Tu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Zs(E({form:X$.optional(),url:Se.optional()}),fe(_(),_e()).optional())),tx=Ve({list:Se.optional(),cancel:Se.optional(),requests:Ve({sampling:Ve({createMessage:Se.optional()}).optional(),elicitation:Ve({create:Se.optional()}).optional()}).optional()}),rx=Ve({list:Se.optional(),cancel:Se.optional(),requests:Ve({tools:Ve({call:Se.optional()}).optional()}).optional()}),nx=E({experimental:fe(_(),Se).optional(),sampling:E({context:Se.optional(),tools:Se.optional()}).optional(),elicitation:ex.optional(),roots:E({listChanged:ze().optional()}).optional(),tasks:tx.optional(),extensions:fe(_(),Se).optional()}),ox=nt.extend({protocolVersion:_(),capabilities:nx,clientInfo:Cm}),Us=Ie.extend({method:N("initialize"),params:ox}),mo=t=>Us.safeParse(t).success,sx=E({experimental:fe(_(),Se).optional(),logging:Se.optional(),completions:Se.optional(),prompts:E({listChanged:ze().optional()}).optional(),resources:E({subscribe:ze().optional(),listChanged:ze().optional()}).optional(),tools:E({listChanged:ze().optional()}).optional(),tasks:rx.optional(),extensions:fe(_(),Se).optional()}),ix=Oe.extend({protocolVersion:_(),capabilities:sx,serverInfo:Cm,instructions:_().optional()}),Cu=dt.extend({method:N("notifications/initialized"),params:lt.optional()});var Fs=Ie.extend({method:N("ping"),params:nt.optional()}),ax=E({progress:ie(),total:ve(ie()),message:ve(_())}),cx=E({...lt.shape,...ax.shape,progressToken:Tm}),Bs=dt.extend({method:N("notifications/progress"),params:cx}),ux=nt.extend({cursor:Pm.optional()}),ho=Ie.extend({params:ux.optional()}),go=Oe.extend({nextCursor:Pm.optional()}),lx=Je(["working","input_required","completed","failed","cancelled"]),yo=E({taskId:_(),status:lx,ttl:me([ie(),vm()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:ve(ie()),statusMessage:ve(_())}),yn=Oe.extend({task:yo}),dx=lt.merge(yo),_o=dt.extend({method:N("notifications/tasks/status"),params:dx}),Hs=Ie.extend({method:N("tasks/get"),params:nt.extend({taskId:_()})}),Gs=Oe.merge(yo),Js=Ie.extend({method:N("tasks/result"),params:nt.extend({taskId:_()})}),$N=Oe.loose(),Ks=ho.extend({method:N("tasks/list")}),Ws=go.extend({tasks:ee(yo)}),Ys=Ie.extend({method:N("tasks/cancel"),params:nt.extend({taskId:_()})}),Am=Oe.merge(yo),jm=E({uri:_(),mimeType:ve(_()),_meta:fe(_(),_e()).optional()}),Zm=jm.extend({text:_()}),Au=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Mm=jm.extend({blob:Au}),vo=Je(["user","assistant"]),_n=E({audience:ee(vo).optional(),priority:ie().min(0).max(1).optional(),lastModified:co.datetime({offset:!0}).optional()}),qm=E({...mn.shape,...fo.shape,uri:_(),description:ve(_()),mimeType:ve(_()),size:ve(ie()),annotations:_n.optional(),_meta:ve(Ve({}))}),px=E({...mn.shape,...fo.shape,uriTemplate:_(),description:ve(_()),mimeType:ve(_()),annotations:_n.optional(),_meta:ve(Ve({}))}),Qs=ho.extend({method:N("resources/list")}),fx=go.extend({resources:ee(qm)}),Xs=ho.extend({method:N("resources/templates/list")}),mx=go.extend({resourceTemplates:ee(px)}),ju=nt.extend({uri:_()}),hx=ju,ei=Ie.extend({method:N("resources/read"),params:hx}),gx=Oe.extend({contents:ee(me([Zm,Mm]))}),yx=dt.extend({method:N("notifications/resources/list_changed"),params:lt.optional()}),_x=ju,vx=Ie.extend({method:N("resources/subscribe"),params:_x}),bx=ju,wx=Ie.extend({method:N("resources/unsubscribe"),params:bx}),$x=lt.extend({uri:_()}),xx=dt.extend({method:N("notifications/resources/updated"),params:$x}),kx=E({name:_(),description:ve(_()),required:ve(ze())}),Sx=E({...mn.shape,...fo.shape,description:ve(_()),arguments:ve(ee(kx)),_meta:ve(Ve({}))}),ti=ho.extend({method:N("prompts/list")}),zx=go.extend({prompts:ee(Sx)}),Rx=nt.extend({name:_(),arguments:fe(_(),_()).optional()}),ri=Ie.extend({method:N("prompts/get"),params:Rx}),Zu=E({type:N("text"),text:_(),annotations:_n.optional(),_meta:fe(_(),_e()).optional()}),Mu=E({type:N("image"),data:Au,mimeType:_(),annotations:_n.optional(),_meta:fe(_(),_e()).optional()}),qu=E({type:N("audio"),data:Au,mimeType:_(),annotations:_n.optional(),_meta:fe(_(),_e()).optional()}),Tx=E({type:N("tool_use"),name:_(),id:_(),input:fe(_(),_e()),_meta:fe(_(),_e()).optional()}),Px=E({type:N("resource"),resource:me([Zm,Mm]),annotations:_n.optional(),_meta:fe(_(),_e()).optional()}),Ex=qm.extend({type:N("resource_link")}),Du=me([Zu,Mu,qu,Ex,Px]),Ix=E({role:vo,content:Du}),Ox=Oe.extend({description:_().optional(),messages:ee(Ix)}),Nx=dt.extend({method:N("notifications/prompts/list_changed"),params:lt.optional()}),Cx=E({title:_().optional(),readOnlyHint:ze().optional(),destructiveHint:ze().optional(),idempotentHint:ze().optional(),openWorldHint:ze().optional()}),Ax=E({taskSupport:Je(["required","optional","forbidden"]).optional()}),Dm=E({...mn.shape,...fo.shape,description:_().optional(),inputSchema:E({type:N("object"),properties:fe(_(),Se).optional(),required:ee(_()).optional()}).catchall(_e()),outputSchema:E({type:N("object"),properties:fe(_(),Se).optional(),required:ee(_()).optional()}).catchall(_e()).optional(),annotations:Cx.optional(),execution:Ax.optional(),_meta:fe(_(),_e()).optional()}),ni=ho.extend({method:N("tools/list")}),jx=go.extend({tools:ee(Dm)}),oi=Oe.extend({content:ee(Du).default([]),structuredContent:fe(_(),_e()).optional(),isError:ze().optional()}),xN=oi.or(Oe.extend({toolResult:_e()})),Zx=lo.extend({name:_(),arguments:fe(_(),_e()).optional()}),vn=Ie.extend({method:N("tools/call"),params:Zx}),Mx=dt.extend({method:N("notifications/tools/list_changed"),params:lt.optional()}),kN=E({autoRefresh:ze().default(!0),debounceMs:ie().int().nonnegative().default(300)}),bo=Je(["debug","info","notice","warning","error","critical","alert","emergency"]),qx=nt.extend({level:bo}),Vu=Ie.extend({method:N("logging/setLevel"),params:qx}),Dx=lt.extend({level:bo,logger:_().optional(),data:_e()}),Vx=dt.extend({method:N("notifications/message"),params:Dx}),Lx=E({name:_().optional()}),Ux=E({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()}),Fx=E({mode:Je(["auto","required","none"]).optional()}),Bx=E({type:N("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:ee(Du).default([]),structuredContent:E({}).loose().optional(),isError:ze().optional(),_meta:fe(_(),_e()).optional()}),Hx=Ru("type",[Zu,Mu,qu]),Ms=Ru("type",[Zu,Mu,qu,Tx,Bx]),Gx=E({role:vo,content:me([Ms,ee(Ms)]),_meta:fe(_(),_e()).optional()}),Jx=lo.extend({messages:ee(Gx),modelPreferences:Ux.optional(),systemPrompt:_().optional(),includeContext:Je(["none","thisServer","allServers"]).optional(),temperature:ie().optional(),maxTokens:ie().int(),stopSequences:ee(_()).optional(),metadata:Se.optional(),tools:ee(Dm).optional(),toolChoice:Fx.optional()}),Kx=Ie.extend({method:N("sampling/createMessage"),params:Jx}),wo=Oe.extend({model:_(),stopReason:ve(Je(["endTurn","stopSequence","maxTokens"]).or(_())),role:vo,content:Hx}),Lu=Oe.extend({model:_(),stopReason:ve(Je(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:vo,content:me([Ms,ee(Ms)])}),Wx=E({type:N("boolean"),title:_().optional(),description:_().optional(),default:ze().optional()}),Yx=E({type:N("string"),title:_().optional(),description:_().optional(),minLength:ie().optional(),maxLength:ie().optional(),format:Je(["email","uri","date","date-time"]).optional(),default:_().optional()}),Qx=E({type:Je(["number","integer"]),title:_().optional(),description:_().optional(),minimum:ie().optional(),maximum:ie().optional(),default:ie().optional()}),Xx=E({type:N("string"),title:_().optional(),description:_().optional(),enum:ee(_()),default:_().optional()}),e0=E({type:N("string"),title:_().optional(),description:_().optional(),oneOf:ee(E({const:_(),title:_()})),default:_().optional()}),t0=E({type:N("string"),title:_().optional(),description:_().optional(),enum:ee(_()),enumNames:ee(_()).optional(),default:_().optional()}),r0=me([Xx,e0]),n0=E({type:N("array"),title:_().optional(),description:_().optional(),minItems:ie().optional(),maxItems:ie().optional(),items:E({type:N("string"),enum:ee(_())}),default:ee(_()).optional()}),o0=E({type:N("array"),title:_().optional(),description:_().optional(),minItems:ie().optional(),maxItems:ie().optional(),items:E({anyOf:ee(E({const:_(),title:_()}))}),default:ee(_()).optional()}),s0=me([n0,o0]),i0=me([t0,r0,s0]),a0=me([i0,Wx,Yx,Qx]),c0=lo.extend({mode:N("form").optional(),message:_(),requestedSchema:E({type:N("object"),properties:fe(_(),a0),required:ee(_()).optional()})}),u0=lo.extend({mode:N("url"),message:_(),elicitationId:_(),url:_().url()}),l0=me([c0,u0]),d0=Ie.extend({method:N("elicitation/create"),params:l0}),p0=lt.extend({elicitationId:_()}),f0=dt.extend({method:N("notifications/elicitation/complete"),params:p0}),bn=Oe.extend({action:Je(["accept","decline","cancel"]),content:Tu(t=>t===null?void 0:t,fe(_(),me([_(),ie(),ze(),ee(_())])).optional())}),m0=E({type:N("ref/resource"),uri:_()});var h0=E({type:N("ref/prompt"),name:_()}),g0=nt.extend({ref:me([h0,m0]),argument:E({name:_(),value:_()}),context:E({arguments:fe(_(),_()).optional()}).optional()}),si=Ie.extend({method:N("completion/complete"),params:g0});function Vm(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Lm(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var y0=Oe.extend({completion:Ve({values:ee(_()).max(100),total:ve(ie().int()),hasMore:ve(ze())})}),_0=E({uri:_().startsWith("file://"),name:_().optional(),_meta:fe(_(),_e()).optional()}),v0=Ie.extend({method:N("roots/list"),params:nt.optional()}),Uu=Oe.extend({roots:ee(_0)}),b0=dt.extend({method:N("notifications/roots/list_changed"),params:lt.optional()}),SN=me([Fs,Us,si,Vu,ri,ti,Qs,Xs,ei,vx,wx,vn,ni,Hs,Js,Ks,Ys]),zN=me([Ls,Bs,Cu,b0,_o]),RN=me([Vs,wo,Lu,bn,Uu,Gs,Ws,yn]),TN=me([Fs,Kx,d0,v0,Hs,Js,Ks,Ys]),PN=me([Ls,Bs,Vx,xx,yx,Mx,Nx,_o,f0]),EN=me([Vs,ix,y0,Ox,zx,fx,mx,gx,oi,jx,Gs,Ws,yn]),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 Pu(o.elicitations,r)}return new t(e,r,n)}},Pu=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 nr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Fm=Symbol("Let zodToJsonSchema decide on which parser to use");var Um={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"},Bm=t=>typeof t=="string"?{...Um,name:t}:{...Um,...t};var Hm=t=>{let e=Bm(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 Fu(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function te(t,e,r,n,o){t[e]=r,Fu(t,e,n,o)}var ii=(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"?ii(e,t.currentPath):e.join("/")}}function Gm(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 Jm(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 Km(){return{type:"boolean"}}function ai(t,e){return D(t.type._def,e)}var Wm=(t,e)=>D(t.innerType._def,e);function Bu(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Bu(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 w0(t,e)}}var w0=(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 Ym(t,e){return{...D(t.innerType._def,e),default:t.defaultValue()}}function Qm(t,e){return e.effectStrategy==="input"?D(t.schema._def,e):be(e)}function Xm(t){return{type:"string",enum:Array.from(t.values)}}var $0=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function eh(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($0(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 th(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 Hu,vt={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:()=>(Hu===void 0&&(Hu=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Hu),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 ci(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":bt(r,"email",n.message,e);break;case"format:idn-email":bt(r,"idn-email",n.message,e);break;case"pattern:zod":Le(r,vt.email,n.message,e);break}break;case"url":bt(r,"uri",n.message,e);break;case"uuid":bt(r,"uuid",n.message,e);break;case"regex":Le(r,n.regex,n.message,e);break;case"cuid":Le(r,vt.cuid,n.message,e);break;case"cuid2":Le(r,vt.cuid2,n.message,e);break;case"startsWith":Le(r,RegExp(`^${Gu(n.value,e)}`),n.message,e);break;case"endsWith":Le(r,RegExp(`${Gu(n.value,e)}$`),n.message,e);break;case"datetime":bt(r,"date-time",n.message,e);break;case"date":bt(r,"date",n.message,e);break;case"time":bt(r,"time",n.message,e);break;case"duration":bt(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(Gu(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&bt(r,"ipv4",n.message,e),n.version!=="v4"&&bt(r,"ipv6",n.message,e);break}case"base64url":Le(r,vt.base64url,n.message,e);break;case"jwt":Le(r,vt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Le(r,vt.ipv4Cidr,n.message,e),n.version!=="v4"&&Le(r,vt.ipv6Cidr,n.message,e);break}case"emoji":Le(r,vt.emoji(),n.message,e);break;case"ulid":{Le(r,vt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{bt(r,"binary",n.message,e);break}case"contentEncoding:base64":{te(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Le(r,vt.base64,n.message,e);break}}break}case"nanoid":Le(r,vt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Gu(t,e){return e.patternStrategy==="escape"?k0(t):t}var x0=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function k0(t){let e="";for(let r=0;r<t.length;r++)x0.has(t[r])||(e+="\\"),e+=t[r];return e}function bt(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:rh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):te(t,"pattern",rh(e,n),r,n)}function rh(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 ui(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}=ci(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}=ai(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function rh(t,e){if(e.mapStrategy==="record")return ui(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 nh(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 oh(t){return t.target==="openAi"?void 0:{not:be({...t,currentPath:[...t.currentPath,"not"]})}}function sh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var $o={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function ah(t,e){if(e.target==="openApi3")return ih(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in $o&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=$o[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 ih(t,e)}var ih=(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 ch(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:$o[t.innerType._def.typeName],nullable:!0}:{type:[$o[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 uh(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",Uu(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 lh(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 dh=(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 ph=(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 fh(t,e){return D(t.type._def,e)}function mh(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 hh(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 gh(t){return{not:be(t)}}function yh(t){return be(t)}var _h=(t,e)=>D(t.innerType._def,e);var vh=(t,e,r)=>{switch(e){case x.ZodString:return ci(t,r);case x.ZodNumber:return uh(t,r);case x.ZodObject:return lh(t,r);case x.ZodBigInt:return Jm(t,r);case x.ZodBoolean:return Gm();case x.ZodDate:return Fu(t,r);case x.ZodUndefined:return gh(r);case x.ZodNull:return sh(r);case x.ZodArray:return Hm(t,r);case x.ZodUnion:case x.ZodDiscriminatedUnion:return ah(t,r);case x.ZodIntersection:return Xm(t,r);case x.ZodTuple:return hh(t,r);case x.ZodRecord:return ui(t,r);case x.ZodLiteral:return eh(t,r);case x.ZodEnum:return Qm(t);case x.ZodNativeEnum:return nh(t);case x.ZodNullable:return ch(t,r);case x.ZodOptional:return dh(t,r);case x.ZodMap:return rh(t,r);case x.ZodSet:return mh(t,r);case x.ZodLazy:return()=>t.getter()._def;case x.ZodPromise:return fh(t,r);case x.ZodNaN:case x.ZodNever:return oh(r);case x.ZodEffects:return Ym(t,r);case x.ZodAny:return be(r);case x.ZodUnknown:return yh(r);case x.ZodDefault:return Wm(t,r);case x.ZodBranded:return ai(t,r);case x.ZodReadonly:return _h(t,r);case x.ZodCatch:return Km(t,r);case x.ZodPipeline:return ph(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!==Um)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=vh(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:ii(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 Ju=(t,e)=>{let r=Bm(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 Gu(t,e){return ct(t)?_u(t,{target:T0(e?.target),io:e?.pipeStrategy??"input"}):Ju(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Ku(t){let r=Qt(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=As(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Wu(t,e){let r=Yt(t,e);if(!r.success)throw r.error;return r.data}var P0=6e4,li=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(Vs,r=>{this._oncancel(r)}),this.setNotificationHandler(Bs,r=>{this._onprogress(r)}),this.setRequestHandler(Fs,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Hs,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(Gs,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,p=new O(d.error.code,d.error.message,d.error.data);l(p)}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(Ks,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(Ys,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)||gn(s)?this._onresponse(s):er(s)?this._onrequest(s,i):Om(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=Pm(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,p)=>{if(i.signal.aborted)throw new O(A.ConnectionClosed,"Request was cancelled");let m={...p,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let f=m.relatedTask?.taskId??s;return f&&c&&await c.updateTaskStatus(f,"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,yn,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 p=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:p};n?.onprogress&&(this._progressHandlers.set(p,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[Xt]:c}});let f=b=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(b)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(S=>this._onerror(new Error(`Failed to send cancellation: ${S}`)));let w=b instanceof O?b:new O(A.RequestTimeout,String(b));l(w)};this._responseHandlers.set(p,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",()=>{f(n?.signal?.reason)});let h=n?.timeout??P0,g=()=>f(O.fromError(A.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let b=w=>{let S=this._responseHandlers.get(p);S?S(w):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,b),this._enqueueTaskMessage(_,{type:"request",message:m,timestamp:Date.now()}).catch(w=>{this._cleanupTimeout(p),l(w)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(b=>{this._cleanupTimeout(p),l(b)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Js,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},Ws,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Cm,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=Ku(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Wu(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=Ku(e);this._notificationHandlers.set(n,o=>{let s=Wu(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=_o.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=_o.parse({method:"notifications/tasks/status",params:c});await this.notification(u),tr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function bh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function wh(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];bh(i)&&bh(s)?r[o]={...i,...s}:r[o]=s}return r}var p_=Rp(jd(),1),f_=Rp(d_(),1);function OP(){let t=new p_.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,f_.default)(t),t}var Bi=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 Hi=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(p=>p.type==="tool_use").map(p=>p.id)),d=new Set(s.filter(p=>p.type==="tool_result").map(p=>p.toolUseId));if(l.size!==d.size||![...l].every(p=>d.has(p)))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},wo,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},bn,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 m_(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 h_(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 Ji=class extends li{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(bo.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 Bi,this.setRequestHandler(Us,n=>this._oninitialize(n)),this.setNotificationHandler(Nu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Du,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=bo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Hi(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=wh(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(ct(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(vn,c);if(!l.success){let f=l.error instanceof Error?l.error.message:String(l.error);throw new O(A.InvalidParams,`Invalid tools/call request: ${f}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let f=Yt(yn,p);if(!f.success){let h=f.error instanceof Error?f.error.message:String(f.error);throw new O(A.InvalidParams,`Invalid task creation result: ${h}`)}return f.data}let m=Yt(oi,p);if(!m.success){let f=m.error instanceof Error?m.error.message:String(m.error);throw new O(A.InvalidParams,`Invalid tools/call result: ${f}`)}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){h_(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&m_(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:hn.includes(r)?r:Pu,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"},Ls)}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},Lu,r):this.request({method:"sampling/createMessage",params:e},wo,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},bn,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},bn,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},Vu,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 y_=Symbol.for("mcp.completable");function Fd(t){return!!t&&typeof t=="object"&&y_ in t}function __(t){return t[y_]?.complete}var g_;(function(t){t.Completable="McpCompletable"})(g_||(g_={}));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 Bd(t){let e=CP(t);return AP(t,e.warnings),e.isValid}var Gi=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 Ki=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 Ji(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Gi(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(ni)),this.server.assertCanSetRequestHandler(lr(vn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ni,()=>({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=fn(r.inputSchema);return o?Gu(o,{strictUnions:!0,pipeStrategy:"input"}):jP})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=fn(r.outputSchema);o&&(n.outputSchema=Gu(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(vn,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=fn(e.inputSchema)??e.inputSchema,i=await Ns(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Cs(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=fn(e.outputSchema),s=await Ns(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Cs(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(p=>setTimeout(p,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(si)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(si,async e=>{switch(e.params.ref.type){case"ref/prompt":return Dm(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Lm(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 Qo;let s=Qt(n.argsSchema)?.[e.params.argument.name];if(!Fd(s))return Qo;let i=__(s);if(!i)return Qo;let a=await i(e.params.argument.value,e.params.context);return b_(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 Qo;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 Qo;let s=await o(e.params.argument.value,e.params.context);return b_(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(lr(Qs)),this.server.assertCanSetRequestHandler(lr(Xs)),this.server.assertCanSetRequestHandler(lr(ei)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Qs,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(Xs,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(ei,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(ti)),this.server.assertCanSetRequestHandler(lr(ri)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(ti,()=>({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(ri,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=fn(n.argsSchema),s=await Ns(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Cs(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 He?c._def?.innerType:c;return Fd(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Bd(e);let l={title:r,description:n,inputSchema:v_(o),outputSchema:v_(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"&&Bd(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(Hd(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Hd(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 w_(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function $_(t){return"_def"in t||"_zod"in t||w_(t)}function Hd(t){return typeof t!="object"||t===null||$_(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(w_)}function v_(t){if(t){if(Hd(t))return jr(t);if(!$_(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=rm(n),s=nm(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=As(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function b_(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Qo={completion:{values:[],hasMore:!1}};import k_ from"node:process";var Wi=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 po.parse(JSON.parse(t))}function x_(t){return JSON.stringify(t)+`
43
- `}var Yi=class{constructor(e=k_.stdin,r=k_.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new Wi,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=x_(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{Http2ServerRequest as R_,constants as qP}from"http2";import{Http2ServerRequest as Jd}from"http2";import{Readable as S_}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,Xo=class extends LP{constructor(t,e){typeof t=="object"&&Ln in t&&(t=t[Ln]()),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)},T_=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 Xo(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[T_]){let i;s.body=new ReadableStream({async pull(a){try{i||=S_.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=S_.toWeb(n);return new Xo(e,s)},Ln=Symbol("getRequestCache"),P_=Symbol("requestCache"),Qi=Symbol("incomingKey"),Xi=Symbol("urlKey"),FP=Symbol("headersKey"),Dn=Symbol("abortControllerKey"),BP=Symbol("getAbortController"),es={get method(){return this[Qi].method||"GET"},get url(){return this[Xi]},get headers(){return this[FP]||=VP(this[Qi])},[BP](){return this[Ln](),this[Dn]},[Ln](){return this[Dn]||=new AbortController,this[P_]||=UP(this.method,this[Xi],this.headers,this[Qi],this[Dn])}};["body","bodyUsed","cache","credentials","destination","integrity","mode","redirect","referrer","referrerPolicy","signal","keepalive"].forEach(t=>{Object.defineProperty(es,t,{get(){return this[Ln]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(es,t,{value:function(){return this[Ln]()[t]()}})});Object.defineProperty(es,Symbol.for("nodejs.util.inspect.custom"),{value:function(t,e,r){let n={method:this.method,url:this.url,headers:this.headers,nativeRequest:this[P_]};return`Request (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(es,Xo.prototype);var HP=(t,e)=>{let r=Object.create(es);r[Qi]=t;let n=t.url||"";if(n[0]!=="/"&&(n.startsWith("http://")||n.startsWith("https://"))){if(t instanceof Jd)throw new Gr("Absolute URL for :path is not allowed in HTTP/2");try{let a=new URL(n);r[Xi]=a.href}catch(a){throw new Gr("Invalid absolute URL",{cause:a})}return r}let o=(t instanceof Jd?t.authority:t.headers.host)||e;if(!o)throw new Gr("Missing host header");let s;if(t instanceof Jd){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[Xi]=i.href,r},Kd=Symbol("responseCache"),qn=Symbol("getResponseCache"),Kr=Symbol("cache"),Qd=global.Response,Vn=class E_{#t;#e;[qn](){return delete this[Kr],this[Kd]||=new Qd(this.#t,this.#e)}constructor(e,r){let n;if(this.#t=e,r instanceof E_){let o=r[Kd];if(o){this.#e=o,this[qn]();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[qn]().headers}get status(){return this[Kr]?.[0]??this[qn]().status}get ok(){let e=this.status;return e>=200&&e<300}};["body","bodyUsed","redirected","statusText","trailers","type","url"].forEach(t=>{Object.defineProperty(Vn.prototype,t,{get(){return this[qn]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(Vn.prototype,t,{value:function(){return this[qn]()[t]()}})});Object.defineProperty(Vn.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[Kd]};return`Response (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(Vn,Qd);Object.setPrototypeOf(Vn.prototype,Qd.prototype);async function JP(t){return Promise.race([t,Promise.resolve().then(()=>Promise.resolve(void 0))])}function I_(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:I_(t.getReader(),e)}var Wd=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 Xd=Symbol("outgoingEnded"),z_=Symbol("incomingDraining"),YP=500,QP=64*1024*1024,Gd=t=>{let e=t;if(t.destroyed||e[z_])return;if(e[z_]=!0,t instanceof R_){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}),O_=t=>new Response(null,{status:t instanceof Error&&(t.name==="TimeoutError"||t.constructor.name==="TimeoutError")?504:500}),Yd=(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))},N_=t=>{"flushHeaders"in t&&t.writable&&t.flushHeaders()},C_=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=Wd(o);else if(Array.isArray(o)){let i=new Headers(o);s=i.has("content-length"),o=Wd(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())):(N_(e),await GP(n,e)?.catch(i=>Yd(i,e))),e[Xd]?.()},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(O_);if(Kr in t)return C_(t,e);let n=Wd(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&&N_(e),await I_(o,e,a))}else n[KP]||(e.writeHead(t.status,n),e.end());e[Xd]?.()},ep=(t,e={})=>{let r=e.autoCleanupIncoming??!0;return e.overrideGlobalObjects!==!1&&global.Request!==Xo&&(Object.defineProperty(global,"Request",{value:Xo}),Object.defineProperty(global,"Response",{value:Vn})),async(n,o)=>{let s,i;try{i=HP(n,e.hostname);let a=!r||n.method==="GET"||n.method==="HEAD";if(a||(n[T_]=!0,n.on("end",()=>{a=!0}),n instanceof R_&&(o[Xd]=()=>{a||setTimeout(()=>{a||setTimeout(()=>{Gd(n)})})}),o.on("finish",()=>{a||Gd(n)})),o.on("close",()=>{i[Dn]&&(n.errored?i[Dn].abort(n.errored.toString()):o.writableFinished||i[Dn].abort("Client connection prematurely closed.")),a||setTimeout(()=>{a||setTimeout(()=>{Gd(n)})})}),s=t(i,{incoming:n,outgoing:o}),Kr in s)return C_(s,o)}catch(a){if(s)return Yd(a,o);if(e.errorHandler){if(s=await e.errorHandler(i?a:DP(a)),!s)return}else i?s=O_(a):s=XP()}try{return await tE(s,o,e)}catch(a){return Yd(a,o)}}};var ea=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 ui(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}=ci(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}=ai(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function nh(t,e){if(e.mapStrategy==="record")return ui(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 oh(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 sh(t){return t.target==="openAi"?void 0:{not:be({...t,currentPath:[...t.currentPath,"not"]})}}function ih(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var $o={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function ch(t,e){if(e.target==="openApi3")return ah(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in $o&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=$o[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 ah(t,e)}var ah=(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 uh(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:$o[t.innerType._def.typeName],nullable:!0}:{type:[$o[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 lh(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",Fu(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 dh(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=z0(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=S0(t,e);return i!==void 0&&(n.additionalProperties=i),n}function S0(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 z0(t){try{return t.isOptional()}catch{return!0}}var ph=(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 fh=(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 mh(t,e){return D(t.type._def,e)}function hh(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 gh(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 yh(t){return{not:be(t)}}function _h(t){return be(t)}var vh=(t,e)=>D(t.innerType._def,e);var bh=(t,e,r)=>{switch(e){case x.ZodString:return ci(t,r);case x.ZodNumber:return lh(t,r);case x.ZodObject:return dh(t,r);case x.ZodBigInt:return Jm(t,r);case x.ZodBoolean:return Km();case x.ZodDate:return Bu(t,r);case x.ZodUndefined:return yh(r);case x.ZodNull:return ih(r);case x.ZodArray:return Gm(t,r);case x.ZodUnion:case x.ZodDiscriminatedUnion:return ch(t,r);case x.ZodIntersection:return eh(t,r);case x.ZodTuple:return gh(t,r);case x.ZodRecord:return ui(t,r);case x.ZodLiteral:return th(t,r);case x.ZodEnum:return Xm(t);case x.ZodNativeEnum:return oh(t);case x.ZodNullable:return uh(t,r);case x.ZodOptional:return ph(t,r);case x.ZodMap:return nh(t,r);case x.ZodSet:return hh(t,r);case x.ZodLazy:return()=>t.getter()._def;case x.ZodPromise:return mh(t,r);case x.ZodNaN:case x.ZodNever:return sh(r);case x.ZodEffects:return Qm(t,r);case x.ZodAny:return be(r);case x.ZodUnknown:return _h(r);case x.ZodDefault:return Ym(t,r);case x.ZodBranded:return ai(t,r);case x.ZodReadonly:return vh(t,r);case x.ZodCatch:return Wm(t,r);case x.ZodPipeline:return fh(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!==Fm)return a}if(n&&!r){let a=R0(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=bh(t,t.typeName,e),i=typeof s=="function"?D(s(),e):s;if(i&&T0(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var R0=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:ii(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}},T0=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var Ju=(t,e)=>{let r=Hm(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 P0(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Ku(t,e){return ut(t)?vu(t,{target:P0(e?.target),io:e?.pipeStrategy??"input"}):Ju(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Wu(t){let r=er(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=As(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Yu(t,e){let r=Xt(t,e);if(!r.success)throw r.error;return r.data}var E0=6e4,li=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(Bs,r=>{this._onprogress(r)}),this.setRequestHandler(Fs,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Hs,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,p=new O(d.error.code,d.error.message,d.error.data);l(p)}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(!nr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(nr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[tr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Ks,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(Ys,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(nr(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),Vt(s)||gn(s)?this._onresponse(s):rr(s)?this._onrequest(s,i):Nm(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?.[tr]?.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=Em(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,p)=>{if(i.signal.aborted)throw new O(A.ConnectionClosed,"Request was cancelled");let f={...p,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let m=f.relatedTask?.taskId??s;return m&&c&&await c.updateTaskStatus(m,"input_required"),await this.request(l,d,f)},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),Vt(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(Vt(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),Vt(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,yn,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},nr(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=v=>{l(v)};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(v){d(v);return}n?.signal?.throwIfAborted();let p=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:p};n?.onprogress&&(this._progressHandlers.set(p,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:p}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[tr]:c}});let m=v=>{this._responseHandlers.delete(p),this._progressHandlers.delete(p),this._cleanupTimeout(p),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:p,reason:String(v)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(S=>this._onerror(new Error(`Failed to send cancellation: ${S}`)));let w=v instanceof O?v:new O(A.RequestTimeout,String(v));l(w)};this._responseHandlers.set(p,v=>{if(!n?.signal?.aborted){if(v instanceof Error)return l(v);try{let w=Xt(r,v.result);w.success?u(w.data):l(w.error)}catch(w){l(w)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let h=n?.timeout??E0,g=()=>m(O.fromError(A.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let v=w=>{let S=this._responseHandlers.get(p);S?S(w):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,v),this._enqueueTaskMessage(y,{type:"request",message:f,timestamp:Date.now()}).catch(w=>{this._cleanupTimeout(p),l(w)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(v=>{this._cleanupTimeout(p),l(v)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Gs,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},Ws,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Am,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||{},[tr]: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||{},[tr]: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||{},[tr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=Wu(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Yu(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=Wu(e);this._notificationHandlers.set(n,o=>{let s=Yu(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"&&rr(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=_o.parse({method:"notifications/tasks/status",params:a});await this.notification(c),nr(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(nr(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=_o.parse({method:"notifications/tasks/status",params:c});await this.notification(u),nr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function wh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function $h(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];wh(i)&&wh(s)?r[o]={...i,...s}:r[o]=s}return r}var f_=Tp(Zd(),1),m_=Tp(p_(),1);function NP(){let t=new f_.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,m_.default)(t),t}var Bi=class{constructor(e){this._ajv=e??NP()}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 Hi=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(p=>p.type==="tool_use").map(p=>p.id)),d=new Set(s.filter(p=>p.type==="tool_result").map(p=>p.toolUseId));if(l.size!==d.size||![...l].every(p=>d.has(p)))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},wo,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},bn,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 h_(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 g_(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 Gi=class extends li{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(bo.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 Bi,this.setRequestHandler(Us,n=>this._oninitialize(n)),this.setNotificationHandler(Cu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Vu,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=bo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Hi(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=$h(this._capabilities,e)}setRequestHandler(e,r){let o=er(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(ut(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=Xt(vn,c);if(!l.success){let m=l.error instanceof Error?l.error.message:String(l.error);throw new O(A.InvalidParams,`Invalid tools/call request: ${m}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let m=Xt(yn,p);if(!m.success){let h=m.error instanceof Error?m.error.message:String(m.error);throw new O(A.InvalidParams,`Invalid task creation result: ${h}`)}return m.data}let f=Xt(oi,p);if(!f.success){let m=f.error instanceof Error?f.error.message:String(f.error);throw new O(A.InvalidParams,`Invalid tools/call result: ${m}`)}return f.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){g_(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&h_(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:hn.includes(r)?r:Eu,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"},Vs)}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},Lu,r):this.request({method:"sampling/createMessage",params:e},wo,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},bn,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},bn,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},Uu,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 __=Symbol.for("mcp.completable");function Bd(t){return!!t&&typeof t=="object"&&__ in t}function v_(t){return t[__]?.complete}var y_;(function(t){t.Completable="McpCompletable"})(y_||(y_={}));var CP=/^[A-Za-z0-9._-]{1,128}$/;function AP(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"),!CP.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 jP(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 Hd(t){let e=AP(t);return jP(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 Ki=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 Gi(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(pr(ni)),this.server.assertCanSetRequestHandler(pr(vn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ni,()=>({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=fn(r.inputSchema);return o?Ku(o,{strictUnions:!0,pipeStrategy:"input"}):ZP})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=fn(r.outputSchema);o&&(n.outputSchema=Ku(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(vn,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=fn(e.inputSchema)??e.inputSchema,i=await Ns(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Cs(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=fn(e.outputSchema),s=await Ns(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Cs(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(p=>setTimeout(p,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(pr(si)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(si,async e=>{switch(e.params.ref.type){case"ref/prompt":return Vm(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Lm(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 Qo;let s=er(n.argsSchema)?.[e.params.argument.name];if(!Bd(s))return Qo;let i=v_(s);if(!i)return Qo;let a=await i(e.params.argument.value,e.params.context);return w_(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 Qo;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 Qo;let s=await o(e.params.argument.value,e.params.context);return w_(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(pr(Qs)),this.server.assertCanSetRequestHandler(pr(Xs)),this.server.assertCanSetRequestHandler(pr(ei)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Qs,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(Xs,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(ei,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(pr(ti)),this.server.assertCanSetRequestHandler(pr(ri)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(ti,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?MP(r.argsSchema):void 0}))})),this.server.setRequestHandler(ri,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=fn(n.argsSchema),s=await Ns(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Cs(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 He?c._def?.innerType:c;return Bd(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Hd(e);let l={title:r,description:n,inputSchema:b_(o),outputSchema:b_(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"&&Hd(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(Gd(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Gd(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 ZP={type:"object",properties:{}};function $_(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function x_(t){return"_def"in t||"_zod"in t||$_(t)}function Gd(t){return typeof t!="object"||t===null||x_(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some($_)}function b_(t){if(t){if(Gd(t))return jr(t);if(!x_(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function MP(t){let e=er(t);return e?Object.entries(e).map(([r,n])=>{let o=nm(n),s=om(n);return{name:r,description:o,required:!s}}):[]}function pr(t){let r=er(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=As(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function w_(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Qo={completion:{values:[],hasMore:!1}};import S_ from"node:process";var Wi=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),qP(r)}clear(){this._buffer=void 0}};function qP(t){return po.parse(JSON.parse(t))}function k_(t){return JSON.stringify(t)+`
43
+ `}var Yi=class{constructor(e=S_.stdin,r=S_.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new Wi,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=k_(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{Http2ServerRequest as T_,constants as DP}from"http2";import{Http2ServerRequest as Jd}from"http2";import{Readable as z_}from"stream";import YP from"crypto";var Jr=class extends Error{constructor(t,e){super(t,e),this.name="RequestError"}},VP=t=>t instanceof Jr?t:new Jr(t.message,{cause:t}),LP=global.Request,Xo=class extends LP{constructor(t,e){typeof t=="object"&&Vn in t&&(t=t[Vn]()),typeof e?.body?.getReader<"u"&&(e.duplex??="half"),super(t,e)}},UP=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)},P_=Symbol("wrapBodyStream"),FP=(t,e,r,n,o)=>{let s={method:t,headers:r,signal:o.signal};if(t==="TRACE"){s.method="GET";let i=new Xo(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[P_]){let i;s.body=new ReadableStream({async pull(a){try{i||=z_.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=z_.toWeb(n);return new Xo(e,s)},Vn=Symbol("getRequestCache"),E_=Symbol("requestCache"),Qi=Symbol("incomingKey"),Xi=Symbol("urlKey"),BP=Symbol("headersKey"),Dn=Symbol("abortControllerKey"),HP=Symbol("getAbortController"),es={get method(){return this[Qi].method||"GET"},get url(){return this[Xi]},get headers(){return this[BP]||=UP(this[Qi])},[HP](){return this[Vn](),this[Dn]},[Vn](){return this[Dn]||=new AbortController,this[E_]||=FP(this.method,this[Xi],this.headers,this[Qi],this[Dn])}};["body","bodyUsed","cache","credentials","destination","integrity","mode","redirect","referrer","referrerPolicy","signal","keepalive"].forEach(t=>{Object.defineProperty(es,t,{get(){return this[Vn]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(es,t,{value:function(){return this[Vn]()[t]()}})});Object.defineProperty(es,Symbol.for("nodejs.util.inspect.custom"),{value:function(t,e,r){let n={method:this.method,url:this.url,headers:this.headers,nativeRequest:this[E_]};return`Request (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(es,Xo.prototype);var GP=(t,e)=>{let r=Object.create(es);r[Qi]=t;let n=t.url||"";if(n[0]!=="/"&&(n.startsWith("http://")||n.startsWith("https://"))){if(t instanceof Jd)throw new Jr("Absolute URL for :path is not allowed in HTTP/2");try{let a=new URL(n);r[Xi]=a.href}catch(a){throw new Jr("Invalid absolute URL",{cause:a})}return r}let o=(t instanceof Jd?t.authority:t.headers.host)||e;if(!o)throw new Jr("Missing host header");let s;if(t instanceof Jd){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[Xi]=i.href,r},Wd=Symbol("responseCache"),qn=Symbol("getResponseCache"),Kr=Symbol("cache"),Xd=global.Response,Ln=class I_{#t;#e;[qn](){return delete this[Kr],this[Wd]||=new Xd(this.#t,this.#e)}constructor(e,r){let n;if(this.#t=e,r instanceof I_){let o=r[Wd];if(o){this.#e=o,this[qn]();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[qn]().headers}get status(){return this[Kr]?.[0]??this[qn]().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[qn]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(Ln.prototype,t,{value:function(){return this[qn]()[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[Wd]};return`Response (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(Ln,Xd);Object.setPrototypeOf(Ln.prototype,Xd.prototype);async function JP(t){return Promise.race([t,Promise.resolve().then(()=>Promise.resolve(void 0))])}function O_(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 KP(t,e){if(t.locked)throw new TypeError("ReadableStream is locked.");return e.destroyed?void 0:O_(t.getReader(),e)}var Yd=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},WP="x-hono-already-sent";typeof global.crypto>"u"&&(global.crypto=YP);var ep=Symbol("outgoingEnded"),R_=Symbol("incomingDraining"),QP=500,XP=64*1024*1024,Kd=t=>{let e=t;if(t.destroyed||e[R_])return;if(e[R_]=!0,t instanceof T_){try{t.stream?.close?.(DP.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,QP);s.unref?.();let i=a=>{r+=a.length,r>XP&&o()};t.on("data",i),t.on("end",n),t.on("error",n),t.resume()},eE=()=>new Response(null,{status:400}),N_=t=>new Response(null,{status:t instanceof Error&&(t.name==="TimeoutError"||t.constructor.name==="TimeoutError")?504:500}),Qd=(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))},C_=t=>{"flushHeaders"in t&&t.writable&&t.flushHeaders()},A_=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=Yd(o);else if(Array.isArray(o)){let i=new Headers(o);s=i.has("content-length"),o=Yd(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())):(C_(e),await KP(n,e)?.catch(i=>Qd(i,e))),e[ep]?.()},tE=t=>typeof t.then=="function",rE=async(t,e,r={})=>{if(tE(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(N_);if(Kr in t)return A_(t,e);let n=Yd(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&&C_(e),await O_(o,e,a))}else n[WP]||(e.writeHead(t.status,n),e.end());e[ep]?.()},tp=(t,e={})=>{let r=e.autoCleanupIncoming??!0;return e.overrideGlobalObjects!==!1&&global.Request!==Xo&&(Object.defineProperty(global,"Request",{value:Xo}),Object.defineProperty(global,"Response",{value:Ln})),async(n,o)=>{let s,i;try{i=GP(n,e.hostname);let a=!r||n.method==="GET"||n.method==="HEAD";if(a||(n[P_]=!0,n.on("end",()=>{a=!0}),n instanceof T_&&(o[ep]=()=>{a||setTimeout(()=>{a||setTimeout(()=>{Kd(n)})})}),o.on("finish",()=>{a||Kd(n)})),o.on("close",()=>{i[Dn]&&(n.errored?i[Dn].abort(n.errored.toString()):o.writableFinished||i[Dn].abort("Client connection prematurely closed.")),a||setTimeout(()=>{a||setTimeout(()=>{Kd(n)})})}),s=t(i,{incoming:n,outgoing:o}),Kr in s)return A_(s,o)}catch(a){if(s)return Qd(a,o);if(e.errorHandler){if(s=await e.errorHandler(i?a:VP(a)),!s)return}else i?s=N_(a):s=eE()}try{return await rE(s,o,e)}catch(a){return Qd(a,o)}}};var ea=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,51 +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(_=>po.parse(_)):a=[po.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(mo);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(_=>mo(_)),p=d?d.params.protocolVersion:e.headers.get("mcp-protocol-version")??zm;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,f,h=new ReadableStream({start:_=>{f=_},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:f,encoder:m,cleanup:()=>{this._streamMapping.delete(l);try{f.close()}catch{}}}),this._requestToStreamMapping.set(_.id,l));await this.writePrimingEvent(f,m,l,p);for(let _ of a){let b,w;er(_)&&this._eventStore&&p>="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&&!hn.includes(r))return this.onerror?.(new Error(`Bad Request: Unsupported protocol version: ${r} (supported versions: ${hn.join(", ")})`)),this.createJsonErrorResponse(400,-32e3,`Bad Request: Unsupported protocol version: ${r} (supported versions: ${hn.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)||gn(e))&&(n=e.id),n===void 0){if(Dt(e)||gn(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)||gn(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 ta=class{constructor(e={}){this._requestContext=new WeakMap,this._webStandardTransport=new ea(e),this._requestListener=ep(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 ep(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 Te,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 bp}from"@adapt-toolkit/sdk/common";import*as nt from"node:fs";import{randomBytes as rE}from"node:crypto";import{homedir as Z_}from"node:os";import{resolve as ra,join as tp,dirname as M_,basename as nE}from"node:path";var q_=["owner","shared","open"],Un={brokerUrl:"wss://broker1.ours.network",port:3050,stateDir:ra(Z_(),".ours"),gcIntervalMs:36e5,autoStart:!1,apiVisibility:"owner"};function oE(){return process.env.OURS_CONFIG??tp(Z_(),".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=ra(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"&&q_.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&&q_.includes(t)?t:void 0}function aE(t){let e=process.env[t];if(e!==void 0)return e==="1"||e.toLowerCase()==="true"}function A_(t){let e=process.env[t];if(e===void 0)return;let r=parseInt(e,10);return Number.isNaN(r)?void 0:r}function D_(){let t=sE();return{brokerUrl:process.env.OURS_BROKER_URL??t.brokerUrl??Un.brokerUrl,port:A_("OURS_PORT")??t.port??Un.port,stateDir:ra(process.env.OURS_STATE_DIR??t.stateDir??Un.stateDir),gcIntervalMs:A_("OURS_GC_INTERVAL_MS")??t.gcIntervalMs??Un.gcIntervalMs,autoStart:aE("OURS_AUTOSTART")??t.autoStart??Un.autoStart,apiVisibility:iE()??t.apiVisibility??Un.apiVisibility,apiToken:process.env.OURS_API_TOKEN?.trim()||t.apiToken}}var cE="daemon-token";function rp(t){return tp(t.stateDir,cE)}function L_(t){let e=process.env.OURS_API_TOKEN?.trim();return e||t.apiToken?.trim()||void 0}function V_(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=rp(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(M_(o),{recursive:!0}),nt.writeFileSync(o,s+`
55
- `,{mode:384}),nt.chmodSync(o,384)}catch{}return{token:s,source:"generated"}}var j_=".ours-identity";function np(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=ra(t);return nE(e)===j_?e:tp(e,j_)}function U_(t,e,r=!1){let n=np(e),o=uE(t);if(!r&&nt.existsSync(o))throw new Error(`${o} already exists \u2014 pass overwrite to replace it`);return nt.mkdirSync(M_(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 F_(t){return pE[dE(t).toLowerCase()]??"application/octet-stream"}function B_(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 ts="0.11.2",fr=D_(),qe=fr.stateDir,aa=fr.brokerUrl,PE=process.env.OURS_TRANSPORT??"http",op=fr.port,J_=fr.gcIntervalMs,dp=fr.apiVisibility,E=(...t)=>process.stderr.write(`ours: ${t.join(" ")}
57
- `);function EE(){if(dp==="open")return null;if(dp==="shared"){let t=L_(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 (${rp(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 V_(fr,{generate:!0}).token}var G_=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(G_===null)return!0;let e=IE(t);if(!e)return!1;let r=Buffer.from(e),n=Buffer.from(G_);return r.length===n.length&&bE(r,n)}function na(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}$/,ca="contact-book";function ua(t){return NE.test(t)?t==="."||t===".."||t.includes("/")||t.includes("\\")?"invalid name":t===ca?`"${ca}" 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)]:[Te(t,"mufl_code"),Te(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(Te(n,o)));return{dir:n,hash:s,contents:i}}}throw new Error(`no compiled .muflo packet found (looked in: ${r.join(", ")})`)}var rs,ns,G=new Map,ht=null,pp=null,Re=new Map,pa=new Set,ot=new Map;function fp(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 K_=()=>Te(qe,"bindings.json");function as(){try{j.mkdirSync(qe,{recursive:!0});let t=`${K_()}.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,K_())}catch(t){E("failed to persist bindings snapshot:",String(t))}}var av=t=>Te(qe,t),wp=t=>Te(t,"identity.key"),Qr=t=>Te(t,"state_data.bin"),cv=t=>Te(t,"notifications.log"),mp=t=>Te(t,"unread.json"),AE=t=>Te(t.dir,"files");function jE(){return j.existsSync(qe)?j.readdirSync(qe,{withFileTypes:!0}).filter(t=>t.isDirectory()&&j.existsSync(wp(Te(qe,t.name)))).map(t=>t.name):[]}var ss=()=>Te(qe,ca),W_=()=>Te(ss(),"registrar.key"),hp=()=>Te(ss(),"book.json");function fa(){try{let t=JSON.parse(j.readFileSync(hp(),"utf8"));return t&&typeof t.entries=="object"?t.entries:{}}catch{return{}}}function uv(t){j.mkdirSync(ss(),{recursive:!0});let e=`${hp()}.tmp`;j.writeFileSync(e,JSON.stringify({v:1,entries:t},null,2),{mode:384}),j.renameSync(e,hp())}function Bn(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(!ht)throw new Error("registrar is not available");let e=Bn(t),r=await X(async o=>{let s=await U(ht,"::actor::sign_book_entry",{name:t.name,ad:ht.pw.packet.NewBinaryFromBuffer(e).Attach(o)},o);return Buffer.from(s.Reduce("sig").GetBinary()).toString("base64url")}),n=fa();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),E(`[${t.name}] published to the local contact book`)}function pv(t){let e=fa();t in e&&(delete e[t],uv(e),E(`[${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 la=()=>Te(qe,"root.json"),le=null;function ZE(){try{let t=JSON.parse(j.readFileSync(la(),"utf8"));return typeof t.name=="string"?t.name:null}catch{return null}}function ME(t){j.mkdirSync(qe,{recursive:!0});let e=`${la()}.tmp`;j.writeFileSync(e,JSON.stringify({v:1,name:t})),j.renameSync(e,la())}function mv(){j.rmSync(la(),{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 oa(t,e){await X(async r=>{let n=Bn(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=Bn(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)}),E(`[${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=Bn(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(!ht)throw new Error(`"${e}" is not a contact, and the local contact book is unavailable.`);let n=fa(),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=Bn(t);return await X(async c=>{let u=await U(ht,"::actor::mint_introduction",{joiner_ad:ht.pw.packet.NewBinaryFromBuffer(a).Attach(c),target_ad:ht.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 cs(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 os(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:cs(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{ns.remove_packet(t.cid)}catch(e){E(`remove_packet(${t.cid}) failed:`,String(e))}G.delete(t.name);try{pv(t.name)}catch(e){E(`failed to unpublish "${t.name}" from the contact book:`,String(e))}Re.has(t.name)&&(Re.delete(t.name),as()),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 $p=!0,yv=$p?2:1,FE=6e5,gp=new Map,yp=(t,e)=>`${t}:${e}`;function _v(t,e,r){e&&gp.set(yp(t,e),{response:r,at:Date.now()})}function BE(t,e){if(!e)return;let r=gp.get(yp(t,e));if(r){if(Date.now()-r.at>FE){gp.delete(yp(t,e));return}return r.response}}async function HE(t,e,r){let n=is(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 os(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{E(`[${t.name}] dropping unparseable control payload from ${n}`);return}if(i.v===1){i.t==="get_manifest"?await os(t,r,{v:1,t:"res",id:i.id??null,ok:!0,manifest:{...VE(t),protocol_version:yv}}):await os(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 os(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 p;try{p=await U(t,"::actor::process_control_envelope",{sender_id:e,sender_name:n,envelope:l,date:s},d)}catch(m){E(`[${t.name}] dispatch of "${l.cap}.${l.verb}" from ${n} failed:`,String(m));return}if(await HE(t,r,p),l.cap==="core.monitoring"&&l.verb==="bind")try{let m=is(p);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 Xr=new Map;function ma(t){return[...G.values()].find(e=>e.cid===t)}async function us(t,e){let r=e.Reduce("target").Visualize(),n=is(e.Reduce("response"));if(!n||typeof n!="object")return;await os(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)){E(`[${t.name}] host_provision_child("${e}") rejected: name exists (settles via sweep timeout)`);return}let o=await vp(e);await X(async s=>{r&&await U(o,"::a2a_messaging::set_my_bio",{bio:r},s),await oa(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 us(t,c)})}catch(o){E(`[${t.name}] host_provision_child("${e}") failed (settles via sweep timeout):`,String(o))}}async function YE(t,e,r){try{let n=ma(e.Visualize());if(n){let o=gv(n);o&&E(`[${t.name}] host_destroy_child teardown warning:`,o)}Xr.delete(e.Visualize()),await X(async o=>{let s=await U(t,"::a2a_cluster::confirm_child_destroyed",{pending_handle:r,cid:e},o);await us(t,s)})}catch(n){E(`[${t.name}] host_destroy_child failed (settles via sweep timeout):`,String(n))}}async function QE(t,e,r){try{let n=ma(e.Visualize());if(!n){E(`[${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 us(t,a)})}catch(n){E(`[${t.name}] host_mint_child_invite failed (settles via sweep timeout):`,String(n))}}async function _p(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),Xr.set(t.cid,r??"")}else await U(t,"::a2a_messaging::host_clear_child_monitoring",{},o),Xr.delete(t.cid)})}async function Y_(t,e,r,n,o,s){try{let i=ma(e.Visualize());if(!i){E(`[${t.name}] host_set_child_monitoring: unknown child ${e.Visualize()} (settles via sweep timeout)`);return}r?await _p(i,!0,o?.Visualize(),s):await _p(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 us(t,c)})}catch(i){E(`[${t.name}] host_set_child_monitoring failed (settles via sweep timeout):`,String(i))}}async function XE(t,e){for(let[r,n]of[...Xr.entries()]){if(n===e)continue;let o=ma(r);if(!o){Xr.delete(r);continue}await _p(o,!1).catch(s=>E(`[${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 sp=new Set;async function vv(t){if(!sp.has(t.name)){sp.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 us(t,n.Reduce(s))})}catch(e){E(`[${t.name}] cluster sweep failed:`,String(e))}finally{sp.delete(t.name)}}}var tI=6e4;function rI(){setInterval(()=>{if($p)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=cs(t).proxyCid;e&&Xr.set(t.cid,e)}catch(e){Xr.set(t.cid,""),E(`[${t.name}] monitoredChildren rebuild read failed (added clear-on-repoint):`,String(e))}}var ip=new Set;async function xp(t){if(!ip.has(t.name)){ip.add(t.name);try{await GE(t)}catch(e){E(`[${t.name}] control dispatch failed:`,String(e))}finally{ip.delete(t.name)}if(G.has(t.name)&&cs(t).controlQueued>0)return xp(t)}}async function oI(){j.mkdirSync(ss(),{recursive:!0});let t;try{t=j.readFileSync(W_(),"utf8").trim()}catch{}let e=nv(24).toString("hex");ht=await kp(ca,e,ss(),!1,t),t||j.writeFileSync(W_(),lv(ht),{mode:384}),pp=Bn(ht),E(`contact-book registrar ready (${ht.cid})`)}function sI(t){try{return j.existsSync(Qr(t))&&j.statSync(Qr(t)).size>0}catch{return!1}}function da(t){try{let e=Xe(n=>Buffer.from(xe(t,"::actor::export_state",n).Serialize()));j.mkdirSync(t.dir,{recursive:!0});let r=`${Qr(t.dir)}.tmp`;j.writeFileSync(r,e),j.renameSync(r,Qr(t.dir))}catch(e){E(`[${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&&E(`[${t.name}] flushed ${r} deferred message(s) to ${e.slice(0,12)}\u2026`)}catch(r){E(`[${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&&E(`[${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){E(`[${t.name}] contact-restore sweep failed:`,String(e))}}var sa=new Map;function cI(t){let e=sa.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=sa.get(t);n||(n=new Set,sa.set(t,n));let o=!1,s=()=>{o||(o=!0,n.delete(i),n.size===0&&sa.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){E(`[${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 ap(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(Te(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(ap(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=ap(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(ap(o),[])}function Yr(t){try{let{unread:e,unreadFiles:r}=Xe(s=>{let a=ia(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=`${mp(t.dir)}.tmp`;j.writeFileSync(o,JSON.stringify(n)),j.renameSync(o,mp(t.dir))}catch(e){E(`[${t.name}] failed to refresh unread snapshot:`,String(e))}}function mI(){let t=[],e=[];try{e=j.readdirSync(qe,{withFileTypes:!0})}catch{return{identities:t}}for(let r of e){if(!r.isDirectory()||ua(r.name)!==null)continue;let n;try{n=JSON.parse(j.readFileSync(mp(Te(qe,r.name)),"utf8"))}catch{continue}let o=Number.isSafeInteger(n.count)&&Number(n.count)>=0?Number(n.count):0,s=Number.isSafeInteger(n.files)&&Number(n.files)>=0?Number(n.files):0;if(o===0&&s===0)continue;let i=Array.isArray(n.recent)?n.recent.slice(-10).flatMap(c=>{if(!c||typeof c!="object")return[];let u=c;return typeof u.from!="string"||!["string","number"].includes(typeof u.msg_id)||typeof u.date!="string"?[]:[{from:u.from,msg_id:u.msg_id,date:u.date}]}):[],a=Array.isArray(n.unread_files)?n.unread_files.slice(-10).flatMap(c=>{if(!c||typeof c!="object")return[];let u=c;return typeof u.from!="string"||typeof u.filename!="string"||typeof u.mime!="string"||typeof u.wire_id!="string"?[]:[{from:u.from,filename:u.filename,mime:u.mime,wire_id:u.wire_id}]}):[];t.push({name:r.name,count:o,recent:i,files:s,unread_files:a})}return t.sort((r,n)=>String(r.name).localeCompare(String(n.name))),{identities:t}}var Wr=new Map,$v=t=>`ours://inbox/${encodeURIComponent(t)}`;function dr(t,e){E(`[${t}] notify:`,e);let r=Re.get(t)?.sid;if(!r)return;let n=Wr.get(r);if(n){try{n.sendLoggingMessage({level:"info",logger:"ours",data:e})}catch(o){E("sendLoggingMessage failed:",String(o))}try{n.server.sendResourceUpdated({uri:$v(t)})}catch{}}}function Xe(t){let e=new bp;try{return t(e)}finally{e.Finalize()}}async function X(t){let e=new bp;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 hI(t,e){let r=t.lock,n;t.lock=new Promise(o=>n=o),await r;try{return await e()}finally{n()}}function gI(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 hI(t,()=>gI(t,s,o)).then(i=>(s.Destroy(),n?i.Attach(n):i),i=>{try{s.Destroy()}catch{}throw i})}function yI(t){t.pw.on_return_data=e=>{let r=new bp;e.Attach(r);try{let n=e.Reduce("kind").Visualize();if(n==="save_state"){da(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}),Yr(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(),p=s.Reduce("date").Visualize();pr(t,{event:"file_received",from:a,file_id:c,filename:u,mime:l,bytes:d,date:p}),Yr(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}),E(`[${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();E(`[${t.name}] control request queued by ${a}`),process.nextTick(()=>void xp(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))):(E(`[${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 kp(t,e,r,n=!0,o){let s=new TE,i=["--unit_hash",rs.hash,"--seed_phrase",e,"--unit_dir_path",rs.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);ns.packet_manager.create_packet(s,l=>{clearTimeout(u);let d={name:t,cid:Xe(p=>l.packet.GetContainerID().Attach(p).Visualize()),pw:l,dir:r,pending:[],lock:Promise.resolve()};yI(d),n&&G.set(t,d),E(`[${t}] packet created \u2014 container id ${d.cid}`),a(d)},rs.contents)})}async function vp(t,e={exposeLocal:!0,localAutoAccept:!0}){let r=av(t);j.mkdirSync(r,{recursive:!0});let n=nv(24).toString("hex"),o=await kp(t,n,r);return j.writeFileSync(wp(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),da(o),o}async function _I(t){let e=av(t),r=j.readFileSync(wp(e),"utf8").trim(),n=await kp(t,"",e,!0,r);if(sI(e))try{let o=j.readFileSync(Qr(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){E(`[${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(Qr(e),`${Qr(e)}.failed-${Date.now()}`),E(`[${t}] unreadable state blob preserved as state_data.bin.failed-*`)}catch{}}return await wv(n),Yr(n),n}async function Q_(){rs=CE();let t=["--broker_address",aa,"--test_mode","--logger_config","--level","INFO","--stdout","stderr","--logger_config_end"];E(`booting wrapper (unit ${rs.hash.slice(0,12)}\u2026, broker ${aa})`),ns=await RE.start(t),ns.on_packet_created_cb=n=>E(`wrapper: packet ready ${n.slice(0,12)}\u2026`),ns.start();try{await oI()}catch(n){E("failed to start the contact-book registrar (local contact book disabled):",String(n))}let e=jE();if(e.length===0)E("no persisted identities \u2014 start with create_identity");else{E(`restoring ${e.length} identit${e.length===1?"y":"ies"}: ${e.join(", ")}`);for(let n of e)try{let o=await _I(n);ht&&await fv(o)}catch(o){E(`failed to restore "${n}":`,String(o))}}nI(),rI(),le=ZE(),le&&!G.has(le)&&(E(`root marker names a missing identity "${le}" \u2014 clearing it`),le=null,mv()),le&&E(`root identity: ${le}`);let r=le?G.get(le):void 0;if(r)try{cs(r).controlQueued>0&&xp(r)}catch(n){E("boot-time monitoring/control drain failed:",String(n))}as()}function X_(t){let e=ot.get(t)?.token;if(!e)return{error:"No identity bound to this session. Call choose_identity (or create_identity) first."};if(pa.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),as(),{error:`The bound identity "${r.identity}" no longer exists. Choose another with choose_identity.`};r.sid=t;let o=ot.get(t)?.pid;return o&&(r.pid=o),{id:n}}function cp(t,e){let r=ot.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()}),pa.delete(n),as()}function vI(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 ia(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 bI(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(y=>po.parse(y)):a=[po.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(mo);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 y=this.validateSession(e);if(y)return y;let v=this.validateProtocolVersion(e);if(v)return v}if(!a.some(rr)){for(let y of a)this.onmessage?.(y,{authInfo:r?.authInfo,requestInfo:s});return new Response(null,{status:202})}let l=crypto.randomUUID(),d=a.find(y=>mo(y)),p=d?d.params.protocolVersion:e.headers.get("mcp-protocol-version")??Rm;if(this._enableJsonResponse)return new Promise(y=>{this._streamMapping.set(l,{resolveJson:y,cleanup:()=>{this._streamMapping.delete(l)}});for(let v of a)rr(v)&&this._requestToStreamMapping.set(v.id,l);for(let v of a)this.onmessage?.(v,{authInfo:r?.authInfo,requestInfo:s})});let f=new TextEncoder,m,h=new ReadableStream({start:y=>{m=y},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 y of a)rr(y)&&(this._streamMapping.set(l,{controller:m,encoder:f,cleanup:()=>{this._streamMapping.delete(l);try{m.close()}catch{}}}),this._requestToStreamMapping.set(y.id,l));await this.writePrimingEvent(m,f,l,p);for(let y of a){let v,w;rr(y)&&this._eventStore&&p>="2025-11-25"&&(v=()=>{this.closeSSEStream(y.id)},w=()=>{this.closeStandaloneSSEStream()}),this.onmessage?.(y,{authInfo:r?.authInfo,requestInfo:s,closeSSEStream:v,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&&!hn.includes(r))return this.onerror?.(new Error(`Bad Request: Unsupported protocol version: ${r} (supported versions: ${hn.join(", ")})`)),this.createJsonErrorResponse(400,-32e3,`Bad Request: Unsupported protocol version: ${r} (supported versions: ${hn.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((Vt(e)||gn(e))&&(n=e.id),n===void 0){if(Vt(e)||gn(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(Vt(e)||gn(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 ta=class{constructor(e={}){this._requestContext=new WeakMap,this._webStandardTransport=new ea(e),this._requestListener=tp(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 tp(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 hE,join as Te,dirname as gE,isAbsolute as yE,basename as _E}from"node:path";import{fileURLToPath as vE}from"node:url";import{randomBytes as ov,randomInt as sv,randomUUID as bE,timingSafeEqual as wE}from"node:crypto";import{createServer as $E}from"node:http";import{brotliCompressSync as xE,brotliDecompressSync as kE}from"node:zlib";import*as j from"node:fs";import{readFile as SE,mkdir as zE,writeFile as RE}from"node:fs/promises";import{adapt_wrapper as TE}from"@adapt-toolkit/sdk/executables";import{PacketWrapperConfigurator as PE}from"@adapt-toolkit/sdk/wrappers";import{object_to_adapt_value as iv}from"@adapt-toolkit/sdk/wrapper";import{AdaptObjectLifetime as wp}from"@adapt-toolkit/sdk/common";import*as ot from"node:fs";import{randomBytes as nE}from"node:crypto";import{homedir as M_}from"node:os";import{resolve as ra,join as rp,dirname as q_,basename as oE}from"node:path";var D_=["owner","shared","open"],Un={brokerUrl:"wss://broker1.ours.network",port:3050,stateDir:ra(M_(),".ours"),gcIntervalMs:36e5,autoStart:!1,apiVisibility:"owner"};function sE(){return process.env.OURS_CONFIG??rp(M_(),".ours","config.json")}function iE(){let t;try{t=ot.readFileSync(sE(),"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=ra(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"&&D_.includes(e.apiVisibility)&&(r.apiVisibility=e.apiVisibility),typeof e.apiToken=="string"&&e.apiToken.trim()&&(r.apiToken=e.apiToken.trim()),r}function aE(){let t=process.env.OURS_API_VISIBILITY?.trim().toLowerCase();return t&&D_.includes(t)?t:void 0}function cE(t){let e=process.env[t];if(e!==void 0)return e==="1"||e.toLowerCase()==="true"}function j_(t){let e=process.env[t];if(e===void 0)return;let r=parseInt(e,10);return Number.isNaN(r)?void 0:r}function V_(){let t=iE();return{brokerUrl:process.env.OURS_BROKER_URL??t.brokerUrl??Un.brokerUrl,port:j_("OURS_PORT")??t.port??Un.port,stateDir:ra(process.env.OURS_STATE_DIR??t.stateDir??Un.stateDir),gcIntervalMs:j_("OURS_GC_INTERVAL_MS")??t.gcIntervalMs??Un.gcIntervalMs,autoStart:cE("OURS_AUTOSTART")??t.autoStart??Un.autoStart,apiVisibility:aE()??t.apiVisibility??Un.apiVisibility,apiToken:process.env.OURS_API_TOKEN?.trim()||t.apiToken}}var uE="daemon-token";function np(t){return rp(t.stateDir,uE)}function L_(t){let e=process.env.OURS_API_TOKEN?.trim();return e||t.apiToken?.trim()||void 0}function U_(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=np(t);try{let i=ot.readFileSync(o,"utf8").trim();if(i)return{token:i,source:"file"}}catch{}if(!e.generate)return null;let s=nE(32).toString("hex");try{ot.mkdirSync(q_(o),{recursive:!0}),ot.writeFileSync(o,s+`
55
+ `,{mode:384}),ot.chmodSync(o,384)}catch{}return{token:s,source:"generated"}}var Z_=".ours-identity";function op(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 lE(t){let e=ra(t);return oE(e)===Z_?e:rp(e,Z_)}function F_(t,e,r=!1){let n=op(e),o=lE(t);if(!r&&ot.existsSync(o))throw new Error(`${o} already exists \u2014 pass overwrite to replace it`);return ot.mkdirSync(q_(o),{recursive:!0}),ot.writeFileSync(o,JSON.stringify(n,null,2)+`
56
+ `),o}import{basename as dE,extname as pE}from"node:path";var fE={".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 B_(t){return fE[pE(t).toLowerCase()]??"application/octet-stream"}function H_(t){let e=dE(t).replace(/[^A-Za-z0-9._-]/g,"_");return e.length?e.slice(0,200):"file"}function mE(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 ts="0.12.0-nightly.2",fr=V_(),qe=fr.stateDir,ca=fr.brokerUrl,EE=process.env.OURS_TRANSPORT??"http",sp=fr.port,J_=fr.gcIntervalMs,pp=fr.apiVisibility,R=(...t)=>process.stderr.write(`ours: ${t.join(" ")}
57
+ `);function IE(){if(pp==="open")return null;if(pp==="shared"){let t=L_(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 (${np(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 U_(fr,{generate:!0}).token}var K_=IE();function OE(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 NE(t){if(K_===null)return!0;let e=OE(t);if(!e)return!1;let r=Buffer.from(e),n=Buffer.from(K_);return r.length===n.length&&wE(r,n)}function na(t,e){return NE(t)?!0:(e.writeHead(401,{"Content-Type":"application/json"}),e.end(JSON.stringify({error:"unauthorized"})),!1)}var CE=/^[A-Za-z0-9 _.@-]{1,64}$/,ua="contact-book";function la(t){return CE.test(t)?t==="."||t===".."||t.includes("/")||t.includes("\\")?"invalid name":t===ua?`"${ua}" 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 AE(){let t=gE(vE(import.meta.url)),e=process.env.OURS_UNIT_DIR,r=process.env.OURS_ADVERTISE_MIGRATE==="0",n=s=>r?[`${s}-nocap`]:[s],o=e?n(hE(e)):[Te(t,"mufl_code"),Te(t,"..","mufl_code")].flatMap(n);for(let s of o){if(!j.existsSync(s))continue;let i=j.readdirSync(s).find(a=>a.endsWith(".muflo"));if(i){let a=i.slice(0,-6),c=new Uint8Array(j.readFileSync(Te(s,i)));return{dir:s,hash:a,contents:c}}}throw new Error(`no compiled .muflo packet found (looked in: ${o.join(", ")})`+(r?' \u2014 OURS_ADVERTISE_MIGRATE=0 requires a "<dir>-nocap" packet variant (compiled with $advertise = [core.e2e] only); build it or unset the env.':""))}var rs,ns,J=new Map,gt=null,fp=null,Re=new Map,fa=new Set,st=new Map;function mp(t){if(!Number.isInteger(t)||t<=0)return!1;try{return process.kill(t,0),!0}catch(e){return e.code==="EPERM"}}function av(t){for(let e of Re.values())if(e.token===t)return e}var W_=()=>Te(qe,"bindings.json");function as(){try{j.mkdirSync(qe,{recursive:!0});let t=`${W_()}.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,W_())}catch(t){R("failed to persist bindings snapshot:",String(t))}}var cv=t=>Te(qe,t),$p=t=>Te(t,"identity.key"),Qr=t=>Te(t,"state_data.bin"),uv=t=>Te(t,"notifications.log"),hp=t=>Te(t,"unread.json"),jE=t=>Te(t.dir,"files");function ZE(){return j.existsSync(qe)?j.readdirSync(qe,{withFileTypes:!0}).filter(t=>t.isDirectory()&&j.existsSync($p(Te(qe,t.name)))).map(t=>t.name):[]}var ss=()=>Te(qe,ua),Y_=()=>Te(ss(),"registrar.key"),gp=()=>Te(ss(),"book.json");function ma(){try{let t=JSON.parse(j.readFileSync(gp(),"utf8"));return t&&typeof t.entries=="object"?t.entries:{}}catch{return{}}}function lv(t){j.mkdirSync(ss(),{recursive:!0});let e=`${gp()}.tmp`;j.writeFileSync(e,JSON.stringify({v:1,entries:t},null,2),{mode:384}),j.renameSync(e,gp())}function Bn(t){return et(e=>Buffer.from(xe(t,"::actor::export_address_document",e).GetBinary()))}function dv(t){return et(e=>Buffer.from(xe(t,"::actor::export_signing_secret",e).Serialize()).toString("hex"))}async function pv(t){if(!gt)throw new Error("registrar is not available");let e=Bn(t),r=await Q(async o=>{let s=await L(gt,"::actor::sign_book_entry",{name:t.name,ad:gt.pw.packet.NewBinaryFromBuffer(e).Attach(o)},o);return Buffer.from(s.Reduce("sig").GetBinary()).toString("base64url")}),n=ma();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},lv(n),R(`[${t.name}] published to the local contact book`)}function fv(t){let e=ma();t in e&&(delete e[t],lv(e),R(`[${t}] removed from the local contact book`))}async function mv(t){if(!fp)throw new Error("registrar is not available");await Q(async e=>{await L(t,"::actor::pin_registrar",{registrar_ad:t.pw.packet.NewBinaryFromBuffer(fp).Attach(e)},e)})}var da=()=>Te(qe,"root.json"),le=null;function ME(){try{let t=JSON.parse(j.readFileSync(da(),"utf8"));return typeof t.name=="string"?t.name:null}catch{return null}}function qE(t){j.mkdirSync(qe,{recursive:!0});let e=`${da()}.tmp`;j.writeFileSync(e,JSON.stringify({v:1,name:t})),j.renameSync(e,da())}function hv(){j.rmSync(da(),{force:!0})}function zt(t){return et(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 sa(t,e){await Q(async r=>{let n=Bn(e),o=await L(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 L(t,"::actor::export_root_profile",{},r),a=Buffer.from(i.Reduce("profile").GetBinary()),c=Bn(t);await L(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)}),R(`[${e.name}] delegated as a role under root "${t.name}"`)}function DE(t,e){if(!le||!J.has(le))return null;let r=J.get(e)??[...J.values()].find(o=>o.cid===e);if(!r||r.name===t.name)return null;let n=o=>o.name===le||zt(o).roleId!=="";return n(t)&&n(r)?r:null}async function VE(t,e,r){let n=Bn(e);return await Q(async o=>{await L(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(!gt)throw new Error(`"${e}" is not a contact, and the local contact book is unavailable.`);let n=ma(),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=Bn(t);return await Q(async c=>{let u=await L(gt,"::actor::mint_introduction",{joiner_ad:gt.pw.packet.NewBinaryFromBuffer(a).Attach(c),target_ad:gt.pw.packet.NewBinaryFromBuffer(s).Attach(c)},c),l=Buffer.from(u.Reduce("intro").GetBinary());await L(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 cs(t){return et(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 os(t,e,r){await Q(async n=>{await L(t,"::a2a_control::send_control",{contact:e,payload:JSON.stringify(r)},n)})}function gv(t){try{return et(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 UE(t){let e="",r="",n="",o="",s=[];try{et(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:cs(t).proxyCid?"bound":"unbound"}}function FE(t){let e=[];for(let r of J.values()){if(r.name===t.name)continue;let n=zt(r);n.rootCid===t.cid&&e.push({name:r.name,cid:r.cid,role_id:n.roleId,bio:n.bio,monitoring:n.monitoringEnabled,capabilities:gv(r)})}return e}function yv(t){try{ns.remove_packet(t.cid)}catch(e){R(`remove_packet(${t.cid}) failed:`,String(e))}J.delete(t.name);try{fv(t.name)}catch(e){R(`failed to unpublish "${t.name}" from the contact book:`,String(e))}Re.has(t.name)&&(Re.delete(t.name),as()),t.name===le&&(le=null,hv());try{j.rmSync(t.dir,{recursive:!0,force:!0})}catch(e){return`deleting ${t.dir} failed: ${String(e)}`}return null}var xp=!0,_v=xp?2:1,BE=6e5,yp=new Map,_p=(t,e)=>`${t}:${e}`;function vv(t,e,r){e&&yp.set(_p(t,e),{response:r,at:Date.now()})}function HE(t,e){if(!e)return;let r=yp.get(_p(t,e));if(r){if(Date.now()-r.at>BE){yp.delete(_p(t,e));return}return r.response}}async function GE(t,e,r){let n=is(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 os(t,e,o),vv(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{R(`[${t.name}] dropping unparseable control payload from ${n}`);return}if(i.v===1){i.t==="get_manifest"?await os(t,r,{v:1,t:"res",id:i.id??null,ok:!0,manifest:{...UE(t),protocol_version:_v}}):await os(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=HE(r,a);if(c){await os(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 Q(async d=>{let p;try{p=await L(t,"::actor::process_control_envelope",{sender_id:e,sender_name:n,envelope:l,date:s},d)}catch(f){R(`[${t.name}] dispatch of "${l.cap}.${l.verb}" from ${n} failed:`,String(f));return}if(await GE(t,r,p),l.cap==="core.monitoring"&&l.verb==="bind")try{let f=is(p);f&&(f.ok===!0||f.$ok===!0)&&eI(t,r)}catch{}})}async function KE(t){for(;;)if(await Q(async r=>{let o=(await L(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 WE(){return String(sv(0,1e6)).padStart(6,"0")}var Xr=new Map;function ha(t){return[...J.values()].find(e=>e.cid===t)}async function us(t,e){let r=e.Reduce("target").Visualize(),n=is(e.Reduce("response"));if(!n||typeof n!="object")return;await os(t,r,n);let o=String(n.req_id??"");o&&vv(r,o,n)}async function YE(t,e,r,n){try{if(J.has(e)){R(`[${t.name}] host_provision_child("${e}") rejected: name exists (settles via sweep timeout)`);return}let o=await bp(e);await Q(async s=>{r&&await L(o,"::a2a_messaging::set_my_bio",{bio:r},s),await sa(t,o);let i=zt(o).roleId,a=xe(o,"::actor::export_address_document_native",s),c=await L(t,"::a2a_cluster::register_provisioned_child",{pending_handle:n,role_id:i,child_ad:a},s);await us(t,c)})}catch(o){R(`[${t.name}] host_provision_child("${e}") failed (settles via sweep timeout):`,String(o))}}async function QE(t,e,r){try{let n=ha(e.Visualize());if(n){let o=yv(n);o&&R(`[${t.name}] host_destroy_child teardown warning:`,o)}Xr.delete(e.Visualize()),await Q(async o=>{let s=await L(t,"::a2a_cluster::confirm_child_destroyed",{pending_handle:r,cid:e},o);await us(t,s)})}catch(n){R(`[${t.name}] host_destroy_child failed (settles via sweep timeout):`,String(n))}}async function XE(t,e,r){try{let n=ha(e.Visualize());if(!n){R(`[${t.name}] host_mint_child_invite: unknown child ${e.Visualize()} (settles via sweep timeout)`);return}await Q(async o=>{let s=await L(n,"::a2a_messaging::generate_invite",{},o),i=t.pw.packet.NewBinaryFromBuffer(Buffer.from(s.Reduce("invite").GetBinary())).Attach(o),a=await L(t,"::a2a_cluster::register_child_invite",{pending_handle:r,invite:i},o);await us(t,a)})}catch(n){R(`[${t.name}] host_mint_child_invite failed (settles via sweep timeout):`,String(n))}}async function vp(t,e,r,n){await Q(async o=>{if(e){n&&await L(t,"::a2a_messaging::host_register_monitoring_cp",{cp_ad:n},o);let s=WE();await L(t,"::a2a_messaging::set_proxy_pending",{code:s,proxy:r},o),await L(t,"::a2a_messaging::verify_proxy_code",{code:s,sender:r},o),Xr.set(t.cid,r??"")}else await L(t,"::a2a_messaging::host_clear_child_monitoring",{},o),Xr.delete(t.cid)})}async function Q_(t,e,r,n,o,s){try{let i=ha(e.Visualize());if(!i){R(`[${t.name}] host_set_child_monitoring: unknown child ${e.Visualize()} (settles via sweep timeout)`);return}r?await vp(i,!0,o?.Visualize(),s):await vp(i,!1),await Q(async a=>{let c=await L(t,"::a2a_cluster::confirm_child_monitoring",{pending_handle:n,cid:e,enabled:r},a);await us(t,c)})}catch(i){R(`[${t.name}] host_set_child_monitoring failed (settles via sweep timeout):`,String(i))}}async function eI(t,e){for(let[r,n]of[...Xr.entries()]){if(n===e)continue;let o=ha(r);if(!o){Xr.delete(r);continue}await vp(o,!1).catch(s=>R(`[${t.name}] CP-rebind clear of child ${r} failed:`,String(s)))}}function tI(t,e){let r=[];for(let n of J.values()){if(n.name===t.name)continue;let o=zt(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:gv(n),child_ad:s})}return r}var ip=new Set;async function bv(t){if(!ip.has(t.name)){ip.add(t.name);try{await Q(async e=>{await L(t,"::a2a_cluster::reconcile",{pending_handle:"",children:tI(t,e)},e);let n=(await L(t,"::a2a_cluster::sweep_and_settle",{},e)).Reduce("settled"),o=n.GetKeys();for(let s=0;s<o.length;s++)await us(t,n.Reduce(s))})}catch(e){R(`[${t.name}] cluster sweep failed:`,String(e))}finally{ip.delete(t.name)}}}var rI=6e4;function nI(){setInterval(()=>{if(xp)for(let t of J.values())zt(t).roleId===""&&bv(t)},rI).unref()}function oI(){for(let t of J.values())if(zt(t).roleId!=="")try{let e=cs(t).proxyCid;e&&Xr.set(t.cid,e)}catch(e){Xr.set(t.cid,""),R(`[${t.name}] monitoredChildren rebuild read failed (added clear-on-repoint):`,String(e))}}var ap=new Set;async function kp(t){if(!ap.has(t.name)){ap.add(t.name);try{await KE(t)}catch(e){R(`[${t.name}] control dispatch failed:`,String(e))}finally{ap.delete(t.name)}if(J.has(t.name)&&cs(t).controlQueued>0)return kp(t)}}async function sI(){j.mkdirSync(ss(),{recursive:!0});let t;try{t=j.readFileSync(Y_(),"utf8").trim()}catch{}let e=ov(24).toString("hex");gt=await Sp(ua,e,ss(),!1,t),t||j.writeFileSync(Y_(),dv(gt),{mode:384}),fp=Bn(gt),R(`contact-book registrar ready (${gt.cid})`)}function iI(t){try{return j.existsSync(Qr(t))&&j.statSync(Qr(t)).size>0}catch{return!1}}function pa(t){try{let e=et(n=>Buffer.from(xe(t,"::actor::export_state",n).Serialize()));j.mkdirSync(t.dir,{recursive:!0});let r=`${Qr(t.dir)}.tmp`;j.writeFileSync(r,e),j.renameSync(r,Qr(t.dir))}catch(e){R(`[${t.name}] failed to save state:`,String(e))}}function aI(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 cI(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 wv(t,e){try{let r=await Q(async n=>{let o=await L(t,"::a2a_messaging::flush_deferred",{contact:e},n);return Number(o.Reduce("flushed").Visualize())});r>0&&R(`[${t.name}] flushed ${r} deferred message(s) to ${e.slice(0,12)}\u2026`)}catch(r){R(`[${t.name}] deferred flush to ${e.slice(0,12)}\u2026 failed:`,String(r))}}async function $v(t){try{let e=await Q(async n=>{let o=await L(t,"::a2a_messaging::restore_degraded_contacts",{},n);return Number(o.Reduce("requested").Visualize())});e>0&&R(`[${t.name}] contact restore requested for ${e} degraded contact(s)`);let r=et(n=>cI(xe(t,"::a2a_messaging::list_deferred_queues",n)));for(let n of r)n.degraded||await wv(t,n.cid)}catch(e){R(`[${t.name}] contact-restore sweep failed:`,String(e))}}var ia=new Map;function uI(t){let e=ia.get(t);if(!(!e||e.size===0))for(let r of[...e])try{r()}catch{}}function lI(t,e){return new Promise(r=>{let n=ia.get(t);n||(n=new Set,ia.set(t,n));let o=!1,s=()=>{o||(o=!0,n.delete(i),n.size===0&&ia.delete(t),clearTimeout(a),r())},i=s,a=setTimeout(s,e);n.add(i)})}function Xe(t,e){try{j.mkdirSync(t.dir,{recursive:!0}),j.appendFileSync(uv(t.dir),JSON.stringify(e)+`
58
+ `)}catch(r){R(`[${t.name}] failed to append notifications.log:`,String(r))}uI(t.name)}function oa(t,e){let r=t.Reduce(e);return r.IsNil()?"":Buffer.from(r.GetBinary()).toString("hex")}var dI=Number(process.env.OURS_NOTIFY_LONGPOLL_MS)>0?Number(process.env.OURS_NOTIFY_LONGPOLL_MS):25e3,pI=250;function cp(t){try{return j.statSync(t).size}catch{return 0}}function fI(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 mI(t,e,r,n){let o=uv(Te(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(cp(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()+dI;for(;!a;){let u=cp(o);if(i>u&&(i=0),u>i){let{events:l,cursor:d}=fI(o,i,u);if(l.length>0){s(d,l);return}i=d}if(Date.now()>=c)break;await lI(r,Math.min(pI,c-Date.now()))}a||s(cp(o),[])}function Yr(t){try{let{unread:e,unreadFiles:r}=et(s=>{let a=aa(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=`${hp(t.dir)}.tmp`;j.writeFileSync(o,JSON.stringify(n)),j.renameSync(o,hp(t.dir))}catch(e){R(`[${t.name}] failed to refresh unread snapshot:`,String(e))}}function hI(){let t=[],e=[];try{e=j.readdirSync(qe,{withFileTypes:!0})}catch{return{identities:t}}for(let r of e){if(!r.isDirectory()||la(r.name)!==null)continue;let n;try{n=JSON.parse(j.readFileSync(hp(Te(qe,r.name)),"utf8"))}catch{continue}let o=Number.isSafeInteger(n.count)&&Number(n.count)>=0?Number(n.count):0,s=Number.isSafeInteger(n.files)&&Number(n.files)>=0?Number(n.files):0;if(o===0&&s===0)continue;let i=Array.isArray(n.recent)?n.recent.slice(-10).flatMap(c=>{if(!c||typeof c!="object")return[];let u=c;return typeof u.from!="string"||!["string","number"].includes(typeof u.msg_id)||typeof u.date!="string"?[]:[{from:u.from,msg_id:u.msg_id,date:u.date}]}):[],a=Array.isArray(n.unread_files)?n.unread_files.slice(-10).flatMap(c=>{if(!c||typeof c!="object")return[];let u=c;return typeof u.from!="string"||typeof u.filename!="string"||typeof u.mime!="string"||typeof u.wire_id!="string"?[]:[{from:u.from,filename:u.filename,mime:u.mime,wire_id:u.wire_id}]}):[];t.push({name:r.name,count:o,recent:i,files:s,unread_files:a})}return t.sort((r,n)=>String(r.name).localeCompare(String(n.name))),{identities:t}}var Wr=new Map,xv=t=>`ours://inbox/${encodeURIComponent(t)}`;function Ht(t,e){R(`[${t}] notify:`,e);let r=Re.get(t)?.sid;if(!r)return;let n=Wr.get(r);if(n){try{n.sendLoggingMessage({level:"info",logger:"ours",data:e})}catch(o){R("sendLoggingMessage failed:",String(o))}try{n.server.sendResourceUpdated({uri:xv(t)})}catch{}}}function et(t){let e=new wp;try{return t(e)}finally{e.Finalize()}}async function Q(t){let e=new wp;try{return await t(e)}finally{e.Finalize()}}function xe(t,e,r){let n=iv({name:e,targ:void 0}),o=t.pw.packet.ExecuteTransaction(n);return n.Destroy(),r?o.Attach(r):o}async function gI(t,e){let r=t.lock,n;t.lock=new Promise(o=>n=o),await r;try{return await e()}finally{n()}}function yI(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 L(t,e,r,n,o){let s=iv({name:e,targ:r});return gI(t,()=>yI(t,s,o)).then(i=>(s.Destroy(),n?i.Attach(n):i),i=>{try{s.Destroy()}catch{}throw i})}function _I(t){t.pw.on_return_data=e=>{let r=new wp;e.Attach(r);try{let n=e.Reduce("kind").Visualize();if(n==="save_state"){pa(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();Xe(t,{event:"message_received",from:a,msg_id:c,date:u}),Yr(t),process.nextTick(()=>Ht(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(),p=s.Reduce("date").Visualize();Xe(t,{event:"file_received",from:a,file_id:c,filename:u,mime:l,bytes:d,date:p}),Yr(t),process.nextTick(()=>Ht(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(()=>Ht(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(()=>Ht(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();Xe(t,{event:"sibling_contact_added",from:a}),process.nextTick(()=>Ht(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();Xe(t,{event:"local_contact_request",from:a}),process.nextTick(()=>Ht(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();Xe(t,{event:"pending_message",from:a,queued:c}),process.nextTick(()=>Ht(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();Xe(t,{event:"contact_restored",from:a}),R(`[${t.name}] contact "${a}" restored (re-keyed)`),process.nextTick(()=>void wv(t,String(c)))}else if(i==="migration_active"){let a=s.Reduce("cid").Visualize(),c=s.Reduce("role").Visualize(),u=oa(s,"epoch"),l=oa(s,"session_id");Xe(t,{event:"migration_active",cid:String(a),role:String(c),...u?{epoch:u}:{},...l?{session_id:l}:{}}),R(`[migration] active cid=${a} role=${c}${u?` epoch=${u}`:""}${l?` session_id=${l}`:""}`)}else if(i==="e2e_app_send"){let a=s.Reduce("cid").Visualize(),c=oa(s,"session_id"),u=s.Reduce("olm_type").Visualize(),l=s.Reduce("wire_id").Visualize();Xe(t,{event:"e2e_app_send",cid:String(a),session_id:c,olm_type:String(u),wire_id:String(l)}),R(`[e2e-app] send cid=${a} session_id=${c} olm_type=${u} wire_id=${l}`)}else if(i==="e2e_app_recv"){let a=s.Reduce("cid").Visualize(),c=oa(s,"session_id"),u=s.Reduce("ok").GetBoolean(),l=s.Reduce("wire_id").Visualize();Xe(t,{event:"e2e_app_recv",cid:String(a),session_id:c,ok:u,wire_id:String(l)}),R(`[e2e-app] recv cid=${a} session_id=${c} ok=${u} wire_id=${l}`)}else if(i==="migration_deferred_flush"){let a=s.Reduce("cid").Visualize(),c=s.Reduce("wire_id").Visualize();Xe(t,{event:"migration_deferred_flush",cid:String(a),wire_id:String(c)}),R(`[migration] flush-notify cid=${a} wire_id=${c} (deferred\u2192e2e; core delivers)`)}else if(i==="migration_stalled"){let a=s.Reduce("cid").Visualize(),c=s.Reduce("phase").Visualize(),u=s.Reduce("attempts").Visualize();Xe(t,{event:"migration_stalled",cid:String(a),phase:String(c),attempts:String(u)}),R(`[migration] stalled-notify cid=${a} phase=${c} attempts=${u} (core re-drives via sweep)`)}else if(i==="downgrade_refused"){let a=s.Reduce("cid").Visualize(),c=s.Reduce("wire_id"),u=c.IsNil()?"":String(c.Visualize());Xe(t,{event:"downgrade_refused",cid:String(a),...u?{wire_id:u}:{}}),R(`[e2e-route] downgrade-dropped cid=${a}${u?` wire_id=${u}`:""} (legacy plaintext from a migrated peer \u2014 dropped by core)`),process.nextTick(()=>Ht(t.name,`[${t.name}] a message from a migrated contact was rejected as an unsafe downgrade (dropped).`))}else if(i==="control_request"){let a=s.Reduce("sender_name").Visualize();R(`[${t.name}] control request queued by ${a}`),process.nextTick(()=>void kp(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 YE(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 QE(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 XE(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 Q_(t,a,!0,u,l,d).finally(()=>{a.Destroy(),l.Destroy(),d.Destroy()}))}else process.nextTick(()=>void Q_(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))):(R(`[${t.name}] inbound transaction rejected:`,e),Xe(t,{event:"inbound_error",message:e}),process.nextTick(()=>Ht(t.name,`[${t.name}] inbound transaction rejected: ${e}`)))}}function Sp(t,e,r,n=!0,o){let s=new PE,i=["--unit_hash",rs.hash,"--seed_phrase",e,"--unit_dir_path",rs.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);ns.packet_manager.create_packet(s,l=>{clearTimeout(u);let d={name:t,cid:et(p=>l.packet.GetContainerID().Attach(p).Visualize()),pw:l,dir:r,pending:[],lock:Promise.resolve()};_I(d),n&&J.set(t,d),R(`[${t}] packet created \u2014 container id ${d.cid}`),a(d)},rs.contents)})}async function bp(t,e={exposeLocal:!0,localAutoAccept:!0}){let r=cv(t);j.mkdirSync(r,{recursive:!0});let n=ov(24).toString("hex"),o=await Sp(t,n,r);return j.writeFileSync($p(r),dv(o),{mode:384}),await Q(async s=>{await L(o,"::a2a_messaging::set_my_name",{name:t},s)}),await mv(o),e.localAutoAccept||await Q(async s=>{await L(o,"::actor::set_local_policy",{auto_accept:!1},s)}),e.exposeLocal&&await pv(o),pa(o),o}async function vI(t){let e=cv(t),r=j.readFileSync($p(e),"utf8").trim(),n=await Sp(t,"",e,!0,r);if(iI(e))try{let o=j.readFileSync(Qr(e));await Q(async s=>{let i=n.pw.packet.ParseValue(new Uint8Array(o)).Attach(s);await L(n,"::actor::import_state",i,s)})}catch(o){R(`[${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)),Xe(n,{event:"state_import_failed",error:String(o).slice(0,300)});try{j.renameSync(Qr(e),`${Qr(e)}.failed-${Date.now()}`),R(`[${t}] unreadable state blob preserved as state_data.bin.failed-*`)}catch{}}return await $v(n),Yr(n),n}async function X_(){rs=AE();let t=["--broker_address",ca,"--test_mode","--logger_config","--level","INFO","--stdout","stderr","--logger_config_end"];R(`booting wrapper (unit ${rs.hash.slice(0,12)}\u2026, broker ${ca})`),ns=await TE.start(t),ns.on_packet_created_cb=n=>R(`wrapper: packet ready ${n.slice(0,12)}\u2026`),ns.start();try{await sI()}catch(n){R("failed to start the contact-book registrar (local contact book disabled):",String(n))}let e=ZE();if(e.length===0)R("no persisted identities \u2014 start with create_identity");else{R(`restoring ${e.length} identit${e.length===1?"y":"ies"}: ${e.join(", ")}`);for(let n of e)try{let o=await vI(n);gt&&await mv(o)}catch(o){R(`failed to restore "${n}":`,String(o))}}oI(),nI(),le=ME(),le&&!J.has(le)&&(R(`root marker names a missing identity "${le}" \u2014 clearing it`),le=null,hv()),le&&R(`root identity: ${le}`);let r=le?J.get(le):void 0;if(r)try{cs(r).controlQueued>0&&kp(r)}catch(n){R("boot-time monitoring/control drain failed:",String(n))}as()}function ev(t){let e=st.get(t)?.token;if(!e)return{error:"No identity bound to this session. Call choose_identity (or create_identity) first."};if(fa.has(e))return{error:"Your identity binding was reassigned to another session. Call choose_identity again to continue."};let r=av(e);if(!r)return{error:"No identity bound to this session. Call choose_identity (or create_identity) first."};let n=J.get(r.identity);if(!n)return Re.delete(r.identity),as(),{error:`The bound identity "${r.identity}" no longer exists. Choose another with choose_identity.`};r.sid=t;let o=st.get(t)?.pid;return o&&(r.pid=o),{id:n}}function up(t,e){let r=st.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()}),fa.delete(n),as()}function bI(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 aa(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 wI(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):
60
60
  ${e.join(`
61
- `)}`}async function wI(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=Te(r,`${u}-${B_(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):
61
+ `)}`}async function $I(t,e){if(e.IsNil())return"No new files.";let r=jE(t),n=[];for(let o=0;;o++){let s=e.Reduce(o);if(s.IsNil())break;n.length===0&&await zE(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=Te(r,`${u}-${H_(i)}`);await RE(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):
62
62
  ${n.join(`
63
- `)}`}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({container_id:typeof r=="string"?r:r.Visualize(),name:n.Reduce("name").Visualize(),queued:parseInt(n.Reduce("queued").Visualize(),10)||0})}return e}function xI(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 kI(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 z(t,e=!1){return{content:[{type:"text",text:t}],isError:e}}function xv(t){return $E(t).toString("base64url")}function SI(t){return xE(Buffer.from(t.replace(/\s+/g,""),"base64url"))}var zI=new Set(["members","caps"]);function RI(t){try{let e=t.GetNumber();return Number.isInteger(e)?e:NaN}catch{return NaN}}function is(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(RI).every((i,a)=>i===a))return r.map((i,a)=>is(t.Reduce(a)));let s={};for(let i of r)s[i.Visualize()]=is(t.Reduce(i),i.Visualize());return s}return e!==void 0&&zI.has(e)?[]:{}}function up(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 Ki({name:"ours",version:ts},{capabilities:{logging:{},resources:{}}}),r=()=>{let o=X_(t());return"error"in o?{err:z(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=ua(o);if(c)return z(`create_identity failed: ${c}`,!0);if(G.has(o))return z(`create_identity failed: an identity named "${o}" already exists.`,!0);try{let u=await vp(o,{exposeLocal:i,localAutoAccept:a});s&&await X(async f=>{await U(u,"::a2a_messaging::set_my_bio",{bio:s},f)});let l="",d=le?G.get(le):void 0;d?(await oa(d,u),l=` Delegated as a role under root "${d.name}".`,$p&&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.",cp(t(),o);let p=i?` Published to the local contact book${a?"":" (introductions require approval)"}.`:" Not exposed in the local contact book.",m=`
63
+ `)}`}function xI(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 kI(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 SI(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 k(t,e=!1){return{content:[{type:"text",text:t}],isError:e}}function kv(t){return xE(t).toString("base64url")}function zI(t){return kE(Buffer.from(t.replace(/\s+/g,""),"base64url"))}var RI=new Set(["members","caps"]);function TI(t){try{let e=t.GetNumber();return Number.isInteger(e)?e:NaN}catch{return NaN}}function is(t,e){if(t.IsNil())return null;let r;try{r=t.GetKeys()}catch{try{return kv(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(TI).every((i,a)=>i===a))return r.map((i,a)=>is(t.Reduce(a)));let s={};for(let i of r)s[i.Visualize()]=is(t.Reduce(i),i.Visualize());return s}return e!==void 0&&RI.has(e)?[]:{}}function lp(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 tv(t){let e=new Ki({name:"ours",version:ts},{capabilities:{logging:{},resources:{}}}),r=()=>{let s=ev(t());return"error"in s?{err:k(s.error,!0)}:{id:s.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:U.string().min(1).describe('Display name for the new identity, e.g. "Alice".'),bio:U.string().default("").describe("Optional free-text bio for the identity profile."),expose_local:U.boolean().default(!0).describe("Publish this identity in the host-local contact book."),local_auto_accept:U.boolean().default(!0).describe("Auto-accept local contact-book introductions (false = they queue for approval).")},async({name:s,bio:i,expose_local:a,local_auto_accept:c})=>{let u=la(s);if(u)return k(`create_identity failed: ${u}`,!0);if(J.has(s))return k(`create_identity failed: an identity named "${s}" already exists.`,!0);try{let l=await bp(s,{exposeLocal:a,localAutoAccept:c});i&&await Q(async h=>{await L(l,"::a2a_messaging::set_my_bio",{bio:i},h)});let d="",p=le?J.get(le):void 0;p?(await sa(p,l),d=` Delegated as a role under root "${p.name}".`,xp&&bv(p)):d=" 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.",up(t(),s);let f=a?` Published to the local contact book${c?"":" (introductions require approval)"}.`:" Not exposed in the local contact book.",m=`
64
64
 
65
- Ask the user whether to enable this harness's live mail monitor for "${o}". Never enable monitoring without explicit consent.`;return z(`Created identity "${o}" (${u.cid}) and bound it to this session.${l}${p}${m}`)}catch(u){return z(`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=ua(o);if(u)return z(`create_root_identity failed: ${u}`,!0);if(G.has(o))return z(`create_root_identity failed: an identity named "${o}" already exists.`,!0);if(le&&G.has(le))return z(`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 vp(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=[],p=[];if(c){for(let g of G.values())if(g.name!==o)try{await oa(l,g),d.push(g.name)}catch(_){E(`failed to adopt "${g.name}" as a role:`,String(_)),p.push(g.name)}}cp(t(),o);let m=d.length>0?` Adopted ${d.length} existing identit${d.length===1?"y":"ies"} as role(s): ${d.join(", ")}.`:"",f=p.length>0?` FAILED to adopt: ${p.join(", ")} (see daemon log).`:"",h=`
65
+ Ask the user whether to enable this harness's live mail monitor for "${s}". Never enable monitoring without explicit consent.`;return k(`Created identity "${s}" (${l.cid}) and bound it to this session.${d}${f}${m}`)}catch(l){return k(`create_identity failed: ${String(l)}`,!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:U.string().min(1).describe(`The person's name, e.g. "Vitalii Shakhmatov".`),bio:U.string().default("").describe("Free-text bio describing the person (carried in role invites)."),expose_local:U.boolean().default(!0).describe("Publish the root in the host-local contact book."),local_auto_accept:U.boolean().default(!0).describe("Auto-accept local contact-book introductions (false = they queue for approval)."),adopt_existing:U.boolean().default(!0).describe("Adopt all existing identities on this host as roles under the new root.")},async({name:s,bio:i,expose_local:a,local_auto_accept:c,adopt_existing:u})=>{let l=la(s);if(l)return k(`create_root_identity failed: ${l}`,!0);if(J.has(s))return k(`create_root_identity failed: an identity named "${s}" already exists.`,!0);if(le&&J.has(le))return k(`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 d=await bp(s,{exposeLocal:a,localAutoAccept:c});i&&await Q(async y=>{await L(d,"::a2a_messaging::set_my_bio",{bio:i},y)}),le=s,qE(s);let p=[],f=[];if(u){for(let y of J.values())if(y.name!==s)try{await sa(d,y),p.push(y.name)}catch(v){R(`failed to adopt "${y.name}" as a role:`,String(v)),f.push(y.name)}}up(t(),s);let m=p.length>0?` Adopted ${p.length} existing identit${p.length===1?"y":"ies"} as role(s): ${p.join(", ")}.`:"",h=f.length>0?` FAILED to adopt: ${f.join(", ")} (see daemon log).`:"",g=`
66
66
 
67
- Ask the user whether to enable this harness's live mail monitor for "${o}". Never enable monitoring without explicit consent.`;return z(`Created root identity "${o}" (${l.cid}) and bound it to this session.${m}${f}${h}`)}catch(l){return z(`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 z(`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=U_(s,l,u),p=JSON.stringify(np(l),null,2);return z(`Wrote ${d}:
68
- ${p}`)}catch(d){return z(`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 z(`choose_identity failed: no identity named "${o}". Create it with create_identity.`,!0);let i=t(),a=ot.get(i)?.token;if(!a)return z("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(!fp(c.pid))E(`auto-reclaiming "${o}" from dead client pid ${c.pid}`),Re.delete(o);else if(s)pa.add(c.token),Re.delete(o);else return z(`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);cp(i,o);let d=G.get(o),p=`Bound to identity "${o}" (${d.cid}).`;return l&&(p+=`
67
+ Ask the user whether to enable this harness's live mail monitor for "${s}". Never enable monitoring without explicit consent.`;return k(`Created root identity "${s}" (${d.cid}) and bound it to this session.${m}${h}${g}`)}catch(d){return k(`create_root_identity failed: ${String(d)}`,!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:U.string().min(1).describe("Identity name the workspace belongs to."),path:U.string().min(1).describe("Absolute target: a directory (file is created inside it) or a full path ending in .ours-identity."),force:U.boolean().default(!1).describe("Once the user approves binding, eviction of another holder is pre-approved (no second confirmation)."),expose_local:U.boolean().default(!0).describe("Publish this identity in the host-local contact book."),local_auto_accept:U.boolean().default(!0).describe("Auto-accept local contact-book introductions (false = they queue for approval)."),overwrite:U.boolean().default(!1).describe("Replace an existing .ours-identity file.")},async({name:s,path:i,force:a,expose_local:c,local_auto_accept:u,overwrite:l})=>{if(!yE(i))return k(`define_local_identity_file failed: path must be absolute (got "${i}").`,!0);let d={name:s,force:a,exposeLocal:c,localAutoAccept:u};try{let p=F_(i,d,l),f=JSON.stringify(op(d),null,2);return k(`Wrote ${p}:
68
+ ${f}`)}catch(p){return k(`define_local_identity_file failed: ${String(p)}`,!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:U.string().min(1).describe("Name of the identity to bind."),force:U.boolean().default(!1).describe("Evict another session that holds this identity.")},async({name:s,force:i})=>{if(!J.has(s))return k(`choose_identity failed: no identity named "${s}". Create it with create_identity.`,!0);let a=t(),c=st.get(a)?.token;if(!c)return k("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 u=Re.get(s);if(u&&u.token!==c)if(!mp(u.pid))R(`auto-reclaiming "${s}" from dead client pid ${u.pid}`),Re.delete(s);else if(i)fa.add(u.token),Re.delete(s);else return k(`choose_identity declined: "${s}" 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 l=[...Re.values()].find(m=>m.token===c&&m.identity!==s)?.identity,d=l&&J.has(l);up(a,s);let p=J.get(s),f=`Bound to identity "${s}" (${p.cid}).`;return d&&(f+=`
69
69
 
70
- Switched away from "${u}" \u2014 disable any live monitor previously armed for it.`),p+=`
70
+ Switched away from "${l}" \u2014 disable any live monitor previously armed for it.`),f+=`
71
71
 
72
- Ask the user whether to enable this harness's live mail monitor for "${o}". Never enable monitoring without explicit consent.`,z(p)}),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 z("No identities yet. Create a root with create_root_identity (or a flat identity with create_identity).");let o=t(),s=ot.get(o)?.token,i=u=>{let l=Re.get(u);return l?l.token===s?" \u2190 this session":fp(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 z(`Identities (${G.size}):
73
- ${c.join(`
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 z(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?`
75
- Bio: ${s.bio}`:"",c=s.persona?`
76
- Persona: ${s.persona}`:"";return z(`Bound to "${o.id.name}" (${o.id.cid})${i}.${a}${c}`)}catch{return z(`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 z(`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 z(`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?z(`Identity "${o}" removed from memory, but ${i}`,!0):z(`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=>ia(xe(o,"::actor::list_incoming_messages",u))),c=a.length===0?"Inbox is empty.":`Inbox (${a.length}):
77
- ${a.map(u=>up(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 z(`${u} Share this blob out-of-band (they paste it into add_contact):
72
+ Ask the user whether to enable this harness's live mail monitor for "${s}". Never enable monitoring without explicit consent.`,k(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(J.size===0)return k("No identities yet. Create a root with create_root_identity (or a flat identity with create_identity).");let s=t(),i=st.get(s)?.token,a=l=>{let d=Re.get(l);return d?d.token===i?" \u2190 this session":mp(d.pid)?" (in use by another session)":"":""},c=le?J.get(le):void 0,u=[];if(c){u.push(`\u2605 ${c.name} \u2014 ${c.cid} (root)${a(c.name)}`);for(let l of J.values())l.name!==c.name&&zt(l).roleId!==""&&u.push(` \u2514 ${l.name} \u2014 ${l.cid} (role)${a(l.name)}`);for(let l of J.values())l.name===c.name||zt(l).roleId!==""||u.push(`\u2022 ${l.name} \u2014 ${l.cid} (flat, no delegation)${a(l.name)}`)}else{for(let l of J.values())u.push(`\u2022 ${l.name} \u2014 ${l.cid}${a(l.name)}`);u.push("(no root identity yet \u2014 create_root_identity establishes the hierarchy)")}return k(`Identities (${J.size}):
73
+ ${u.join(`
74
+ `)}`)}),e.tool("current_identity","Report the identity currently bound to this session (if any), including its place in the identity hierarchy.",{},async()=>{let s=ev(t());if("error"in s)return k(s.error);try{let i=zt(s.id),a=s.id.name===le?" \u2014 the ROOT identity of this host":i.roleId!==""?` \u2014 role "${i.roleId}" under root "${i.rootName}"`:"",c=i.bio?`
75
+ Bio: ${i.bio}`:"",u=i.persona?`
76
+ Persona: ${i.persona}`:"";return k(`Bound to "${s.id.name}" (${s.id.cid})${a}.${c}${u}`)}catch{return k(`Bound to "${s.id.name}" (${s.id.cid}).`)}}),e.tool("remove_identity","Permanently delete a persisted identity \u2014 its packet and all on-disk state. This cannot be undone.",{name:U.string().min(1).describe("Name of the identity to delete.")},async({name:s})=>{let i=J.get(s);if(!i)return k(`remove_identity failed: no identity named "${s}".`,!0);if(s===le){let c=[...J.values()].filter(u=>u.name!==s&&zt(u).rootCid===i.cid);if(c.length>0)return k(`remove_identity failed: "${s}" is the root identity and still has ${c.length} role(s): ${c.map(u=>u.name).join(", ")}. Remove the roles first.`,!0)}let a=yv(i);return a?k(`Identity "${s}" removed from memory, but ${a}`,!0):k(`Removed identity "${s}" 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:s,err:i}=r(),a=s?xv(s.name):"ours://inbox";if(i||!s)return{contents:[{uri:a,mimeType:"text/plain",text:"No identity bound to this session."}]};let c=et(l=>aa(xe(s,"::actor::list_incoming_messages",l))),u=c.length===0?"Inbox is empty.":`Inbox (${c.length}):
77
+ ${c.map(l=>lp(l)).join(`
78
+ `)}`;return{contents:[{uri:a,mimeType:"text/plain",text:u}]}}),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:U.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:s})=>{let{id:i,err:a}=r();if(a)return a;try{let c={};s&&(c.name=s);let u=await Q(async d=>{let p=await L(i,"::a2a_messaging::generate_invite",c,d);return kv(Buffer.from(p.Reduce("invite").GetBinary()))}),l=s?`Invite for "${s}" created.`:"Invite created \u2014 the contact will be registered under the name the recipient announces when accepting.";return k(`${l} Share this blob out-of-band (they paste it into add_contact):
79
79
 
80
- ${c}`)}catch(a){return z(`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=SI(o),c.length===0)throw new Error("the invite blob is empty")}catch(u){return z(`add_contact failed: ${u instanceof Error?u.message:"the invite blob is not valid."}`,!0)}try{let u=await X(async l=>{let p={invite:i.pw.packet.NewBinaryFromBuffer(c).Attach(l)};s&&(p.name=s);let m=await U(i,"::a2a_messaging::add_contact",p,l),f=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)?f:g:h}" (${f}).`});return z(u)}catch(u){return z(`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(p=>({contacts:vI(xe(o,"::a2a_messaging::list_contacts",p)),pending:$I(xe(o,"::actor::list_pending_introductions",p)),roots:xI(xe(o,"::a2a_messaging::list_contact_roots",p)),degraded:iI(xe(o,"::a2a_messaging::list_degraded_contacts",p))})),l=new Map(u.map(p=>[p.cid,p])),d=[];return d.push(i.length===0?"No contacts yet.":`Contacts (${i.length}):
81
- ${i.map(p=>`\u2022 ${p.name} \u2014 ${p.container_id}${kI(c[p.container_id])}${l.has(p.container_id)?` \u2014 \u26A0 keys pending restore (${l.get(p.container_id).queued} queued)`:""}`).join(`
82
- `)}`),a.length>0&&d.push(`Pending local introductions (${a.length}) \u2014 approve/reject with respond_to_introduction:
83
- `+a.map(p=>`\u2022 ${p.name} \u2014 ${p.container_id} (${p.queued} queued message${p.queued===1?"":"s"})`).join(`
84
- `)),z(d.join(`
80
+ ${u}`)}catch(c){return k(`generate_invite failed: ${String(c)}`,!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:U.string().min(1).describe("The base64 invite blob to redeem."),name:U.string().min(1).optional().describe("Optional custom name for the inviter; defaults to their own name.")},async({invite:s,name:i})=>{let{id:a,err:c}=r();if(c)return c;let u;try{if(u=zI(s),u.length===0)throw new Error("the invite blob is empty")}catch(l){return k(`add_contact failed: ${l instanceof Error?l.message:"the invite blob is not valid."}`,!0)}try{let l=await Q(async d=>{let f={invite:a.pw.packet.NewBinaryFromBuffer(u).Attach(d)};i&&(f.name=i);let m=await L(a,"::a2a_messaging::add_contact",f,d),h=m.Reduce("container_id").Visualize(),g=m.Reduce("pending").Visualize(),y=m.Reduce("inviter_name").Visualize(),v=S=>!S||S==="%%NIL";return`Added contact "${v(g)?v(y)?h:y:g}" (${h}).`});return k(l)}catch(l){return k(`add_contact failed: ${String(l)}`,!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:s,err:i}=r();if(i)return i;try{let{contacts:a,pending:c,roots:u,degraded:l}=et(f=>({contacts:bI(xe(s,"::a2a_messaging::list_contacts",f)),pending:xI(xe(s,"::actor::list_pending_introductions",f)),roots:kI(xe(s,"::a2a_messaging::list_contact_roots",f)),degraded:aI(xe(s,"::a2a_messaging::list_degraded_contacts",f))})),d=new Map(l.map(f=>[f.cid,f])),p=[];return p.push(a.length===0?"No contacts yet.":`Contacts (${a.length}):
81
+ ${a.map(f=>`\u2022 ${f.name} \u2014 ${f.container_id}${SI(u[f.container_id])}${d.has(f.container_id)?` \u2014 \u26A0 keys pending restore (${d.get(f.container_id).queued} queued)`:""}`).join(`
82
+ `)}`),c.length>0&&p.push(`Pending local introductions (${c.length}) \u2014 approve/reject with respond_to_introduction:
83
+ `+c.map(f=>`\u2022 ${f.name} \u2014 ${f.container_id} (${f.queued} queued message${f.queued===1?"":"s"})`).join(`
84
+ `)),k(p.join(`
85
85
 
86
- `))}catch(i){return z(`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(fa());if(o.length===0)return z("The local contact book is empty.");let s=t(),i=ot.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 z(`Local contact book (${o.length}):
87
- ${c.join(`
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 z("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")),z(`Updated "${i.name}": ${c.join("; ")}.`)}catch(u){return z(`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 oa(s,u),a+=1}catch(l){E(`failed to refresh root profile in role "${u.name}":`,String(l))}}let c=a>0?` Root profile refreshed in ${a} role(s).`:"";return z(`Updated the bio of "${s.name}".${c}`)}catch(a){return z(`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)}),z(`Updated the persona of "${s.name}".`)}catch(a){return z(`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),p=d.Reduce("approved").Visualize(),m=d.Reduce("container_id").Visualize(),f=d.Reduce("flushed").Visualize();return`Approved "${p}" (${m}) \u2014 now a contact. ${f} queued message(s) moved to the inbox (read them with get_messages).`});return Yr(i),z(u)}let c=await X(async u=>{let l=await U(i,"::actor::reject_introduction",{contact:o},u),d=l.Reduce("rejected").Visualize(),p=l.Reduce("dropped_messages").Visualize();return`Rejected the introduction from "${d}" and dropped ${p} queued message(s).`});return z(c)}catch(c){return z(`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:p,queued:m}=await X(async f=>{let h=await U(c,"::a2a_messaging::send_message",{contact:o,text:s,...l?{reply_to:l}:{}},f),g=h.Reduce("deferred");return{wireId:h.Reduce("wire_id").Visualize(),deferred:!g.IsNil(),queued:g.IsNil()?0:Number(h.Reduce("queued").Visualize())}});return z(p?`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 z(`send_message failed: ${String(d)}`,!0);try{let p=qE(c,o),m=p?await DE(c,p,s):await LE(c,o,s);return z(m)}catch(p){return z(`send_message failed: ${String(p)}`,!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:p}=r();if(p)return p;if((s?1:0)+(i?1:0)!=1)return z("send_file: provide exactly one of `path` or `data_base64`.",!0);let m,f;try{if(s)m=await kE(s),f=a??yE(s);else{if(!a)return z("send_file: `filename` is required with `data_base64`.",!0);m=Buffer.from(i,"base64"),f=a}}catch(_){return z(`send_file: cannot read file: ${String(_)}`,!0)}let h=c??(s?F_(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:f,mime:h,data:w,...g?{reply_to:g}:{}},b)).Reduce("wire_id").Visualize()});return z(`File "${f}" (${m.length} B${h?`, ${h}`:""}) sent to "${o}" (wire_id ${_}).`)}catch(_){return z(`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 z(a)}catch(a){return z(`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=>ia(xe(o,"::actor::list_incoming_messages",c)));if(i.length===0)return z("Inbox is empty.");let a=i.filter(c=>c.status==="unread").length;return z(`Inbox (${i.length}, ${a} unread):
89
- ${i.map(c=>up(c)).join(`
90
- `)}`)}catch(i){return z(`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 ia(c.Reduce("messages"))});return Yr(o),i.length===0?z("No new messages."):z(`${i.length} new message(s):
91
- ${i.map(a=>up(a,!1)).join(`
86
+ `))}catch(a){return k(`list_contacts failed: ${String(a)}`,!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 s=Object.values(ma());if(s.length===0)return k("The local contact book is empty.");let i=t(),a=st.get(i)?.token,c=a?av(a)?.identity:void 0,u=s.map(l=>{let d=l.name===c?" \u2190 this session":"";return`\u2022 ${l.name} \u2014 ${l.container_id} (published ${l.published_at})${d}`});return k(`Local contact book (${s.length}):
87
+ ${u.join(`
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:U.boolean().optional().describe("Publish (true) or remove (false) this identity in the local contact book."),auto_accept:U.boolean().optional().describe("Auto-accept local introductions (false = queue them for approval).")},async({expose:s,auto_accept:i})=>{let{id:a,err:c}=r();if(c)return c;if(s===void 0&&i===void 0)return k("set_local_book_policy: pass expose and/or auto_accept.",!0);let u=[];try{return i!==void 0&&(await Q(async l=>{await L(a,"::actor::set_local_policy",{auto_accept:i},l)}),u.push(`auto_accept=${i}`)),s===!0?(await pv(a),u.push("published in the local contact book")):s===!1&&(fv(a.name),u.push("removed from the local contact book")),k(`Updated "${a.name}": ${u.join("; ")}.`)}catch(l){return k(`set_local_book_policy failed: ${String(l)}`,!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:U.string().describe("The new bio text (empty string clears it).")},async({bio:s})=>{let{id:i,err:a}=r();if(a)return a;try{await Q(async l=>{await L(i,"::a2a_messaging::set_my_bio",{bio:s},l)});let c=0;if(i.name===le){for(let l of J.values())if(l.name!==i.name&&zt(l).rootCid===i.cid)try{await sa(i,l),c+=1}catch(d){R(`failed to refresh root profile in role "${l.name}":`,String(d))}}let u=c>0?` Root profile refreshed in ${c} role(s).`:"";return k(`Updated the bio of "${i.name}".${u}`)}catch(c){return k(`set_bio failed: ${String(c)}`,!0)}}),e.tool("advertise_migrate","Enable the e2e-migration capability (core.e2e.migrate) at runtime on the bound identity and proactively offer migration to every already-known eligible e2e contact. This is the staged-advertise trigger: an identity booted WITHOUT the migrate cap (so it forms a plain e2e session first) calls this to start the SAME migrations a default-cap boot would \u2014 closing the already-e2e-pair gap where a pinned pair with no inbound traffic would otherwise never migrate. Idempotent: re-enabling is a no-op for the cap, and the offer election stays fail-closed. Returns how many migration offers were initiated.",{},async()=>{let{id:s,err:i}=r();if(i)return i;try{let{wasAdvertising:a,advertising:c,offers:u}=await Q(async d=>{let p=await L(s,"::a2a_messaging::advertise_migrate",{},d);return{wasAdvertising:p.Reduce("was_advertising").Visualize()==="true",advertising:p.Reduce("advertising").Visualize()==="true",offers:parseInt(p.Reduce("offers_initiated").Visualize(),10)||0}});return k(`advertise_migrate: core.e2e.migrate ${c?"advertised":"NOT advertised"}${a?" (already advertising \u2014 cap unchanged)":""}; ${u} migration offer(s) initiated to eligible e2e contact(s).`)}catch(a){return k(`advertise_migrate 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:U.string().describe("The new persona text (empty string clears it).")},async({persona:s})=>{let{id:i,err:a}=r();if(a)return a;try{return await Q(async c=>{await L(i,"::a2a_messaging::set_my_persona",{persona:s},c)}),k(`Updated the persona of "${i.name}".`)}catch(c){return k(`set_persona failed: ${String(c)}`,!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:U.string().min(1).describe("Pending introduction to act on (name or container id)."),action:U.enum(["approve","reject"]).describe("approve or reject.")},async({contact:s,action:i})=>{let{id:a,err:c}=r();if(c)return c;try{if(i==="approve"){let l=await Q(async d=>{let p=await L(a,"::actor::approve_introduction",{contact:s},d),f=p.Reduce("approved").Visualize(),m=p.Reduce("container_id").Visualize(),h=p.Reduce("flushed").Visualize();return`Approved "${f}" (${m}) \u2014 now a contact. ${h} queued message(s) moved to the inbox (read them with get_messages).`});return Yr(a),k(l)}let u=await Q(async l=>{let d=await L(a,"::actor::reject_introduction",{contact:s},l),p=d.Reduce("rejected").Visualize(),f=d.Reduce("dropped_messages").Visualize();return`Rejected the introduction from "${p}" and dropped ${f} queued message(s).`});return k(u)}catch(u){return k(`respond_to_introduction failed: ${String(u)}`,!0)}});let n=s=>{let i=u=>!s.Reduce(u).IsNil(),a=s.Reduce("wire_id").Visualize(),c=i("sent_to")?s.Reduce("sent_to").Visualize():"";return i("downgrade_refused")?{kind:"refused",wireId:a,cid:c}:i("migrating")?{kind:"migrating",wireId:a,cid:c,queued:i("queued")?Number(s.Reduce("queued").Visualize()):0}:i("route")?{kind:"e2e",wireId:a,cid:c}:i("deferred")?{kind:"deferred",wireId:a,queued:i("queued")?Number(s.Reduce("queued").Visualize()):0}:{kind:"sent",wireId:a}};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:U.string().min(1).describe("Contact name or container id to send to."),text:U.string().min(1).describe("The message text."),reply_to_wire_id:U.string().optional().describe("wire_id (from get_messages) of the message this replies to."),reply_to_sentence:U.number().int().positive().optional().describe("Optional 1-based sentence index in the replied-to message.")},async({contact:s,text:i,reply_to_wire_id:a,reply_to_sentence:c})=>{let{id:u,err:l}=r();if(l)return l;let d=a?c!==void 0?{wire_id:a,sentence:c}:{wire_id:a}:void 0;try{let p=await Q(async f=>n(await L(u,"::a2a_messaging::send_message",{contact:s,text:i,...d?{reply_to:d}:{}},f)));switch(p.kind){case"refused":return R(`[e2e-route] refused cid=${p.cid} wire_id=${p.wireId} (downgrade_refused)`),k(`Couldn't send to "${s}" (wire_id ${p.wireId}): their end-to-end encryption must be re-established after an upgrade before messages can go through. It was NOT sent and NOT downgraded to the old channel \u2014 the system re-offers the upgrade automatically; try again shortly.`,!0);case"migrating":return R(`[migration] queued cid=${p.cid} wire_id=${p.wireId} (migrating, ${p.queued} queued)`),k(`Message queued for "${s}" (wire_id ${p.wireId}) \u2014 an encryption upgrade is completing; it will send automatically the moment the migration goes active (${p.queued} message${p.queued===1?"":"s"} queued).`);case"e2e":return R(`[e2e-route] cid=${p.cid} wire_id=${p.wireId} verdict=e2e (core delivered over migrated session)`),k(`Message sent to "${s}" over the upgraded end-to-end session (wire_id ${p.wireId}).`);case"deferred":return k(`Message queued for "${s}" (wire_id ${p.wireId}) \u2014 the contact's encryption keys are being re-established after an upgrade (contact restore in progress); delivery is automatic once restored (${p.queued} message${p.queued===1?"":"s"} queued).`);default:return k(`Message sent to "${s}" (wire_id ${p.wireId}).`)}}catch(p){if(!/Unknown contact/.test(String(p)))return k(`send_message failed: ${String(p)}`,!0);try{let f=DE(u,s),m=f?await VE(u,f,i):await LE(u,s,i);return k(m)}catch(f){return k(`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:U.string().min(1).describe("Contact name or container id to send to."),path:U.string().min(1).optional().describe("Filesystem path to the file to send (preferred)."),data_base64:U.string().min(1).optional().describe("Inline file bytes, base64-encoded (alternative to path)."),filename:U.string().min(1).optional().describe("Filename to advertise (required with data_base64; defaults to basename of path)."),mime:U.string().optional().describe("MIME type (inferred from the path extension when omitted)."),reply_to_wire_id:U.string().optional().describe("wire_id (from get_messages/get_files) this file replies to."),reply_to_sentence:U.number().int().positive().optional().describe("Optional 1-based sentence index in the replied-to item.")},async({contact:s,path:i,data_base64:a,filename:c,mime:u,reply_to_wire_id:l,reply_to_sentence:d})=>{let{id:p,err:f}=r();if(f)return f;if((i?1:0)+(a?1:0)!=1)return k("send_file: provide exactly one of `path` or `data_base64`.",!0);let m,h;try{if(i)m=await SE(i),h=c??_E(i);else{if(!c)return k("send_file: `filename` is required with `data_base64`.",!0);m=Buffer.from(a,"base64"),h=c}}catch(v){return k(`send_file: cannot read file: ${String(v)}`,!0)}let g=u??(i?B_(i):""),y=l?d!==void 0?{wire_id:l,sentence:d}:{wire_id:l}:void 0;try{let v=await Q(async S=>{let Z=p.pw.packet.NewBinaryFromBuffer(m).Attach(S);return n(await L(p,"::a2a_messaging::send_file",{contact:s,filename:h,mime:g,data:Z,...y?{reply_to:y}:{}},S))}),w=`File "${h}" (${m.length} B${g?`, ${g}`:""})`;switch(v.kind){case"refused":return R(`[e2e-route] refused cid=${v.cid} wire_id=${v.wireId} (downgrade_refused, file)`),k(`Couldn't send ${w} to "${s}" (wire_id ${v.wireId}): their end-to-end encryption must be re-established after an upgrade first. It was NOT sent and NOT downgraded; the system re-offers the upgrade automatically \u2014 try again shortly.`,!0);case"migrating":return R(`[migration] file-defer cid=${v.cid} wire_id=${v.wireId} (migrating, not queued)`),k(`${w} not sent to "${s}" yet \u2014 an encryption upgrade is completing; retry the file once the migration goes active (files aren't auto-queued like messages).`,!0);case"e2e":return R(`[e2e-route] cid=${v.cid} wire_id=${v.wireId} verdict=e2e file (core delivered over migrated session)`),k(`${w} sent to "${s}" over the upgraded end-to-end session (wire_id ${v.wireId}).`);default:return k(`${w} sent to "${s}" (wire_id ${v.wireId}).`)}}catch(v){return k(`send_file failed: ${String(v)}`,!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:U.string().min(1).describe("Contact name or container id to remove.")},async({contact:s})=>{let{id:i,err:a}=r();if(a)return a;try{let c=await Q(async u=>{let l=await L(i,"::a2a_messaging::remove_contact",{contact:s},u),d=l.Reduce("removed").Visualize(),p=l.Reduce("container_id").Visualize();return`Removed contact "${d}" (${p}).`});return k(c)}catch(c){return k(`remove_contact failed: ${String(c)}`,!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:s,err:i}=r();if(i)return i;try{let a=et(u=>aa(xe(s,"::actor::list_incoming_messages",u)));if(a.length===0)return k("Inbox is empty.");let c=a.filter(u=>u.status==="unread").length;return k(`Inbox (${a.length}, ${c} unread):
89
+ ${a.map(u=>lp(u)).join(`
90
+ `)}`)}catch(a){return k(`list_incoming_messages failed: ${String(a)}`,!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:s,err:i}=r();if(i)return i;try{let a=await Q(async c=>{let u=await L(s,"::actor::get_messages",{},c);return aa(u.Reduce("messages"))});return Yr(s),a.length===0?k("No new messages."):k(`${a.length} new message(s):
91
+ ${a.map(c=>lp(c,!1)).join(`
92
92
  `)}
93
93
 
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 z(`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 Yr(s),z(`Deferred ${a} message(s) back to unread.`)}catch(a){return z(`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=>bI(xe(o,"::actor::list_incoming_files",a)));return z(i)}catch(i){return z(`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 wI(o,c.Reduce("files"))});return Yr(o),z(i)}catch(i){return z(`get_files failed: ${String(i)}`,!0)}});let n=()=>{let o=le?G.get(le):void 0;return o?{root:o}:{err:z("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 z(`Proxy binding started for contact "${o}" (${c}).
94
+ These are now marked processed (auto-GC'd later). To hand any back to another session: defer_messages({ msg_ids: [${a.map(c=>c.msg_id).join(", ")}] }).`)}catch(a){return k(`get_messages failed: ${String(a)}`,!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:U.array(U.number().int()).min(1).describe("Message ids (from get_messages) to defer back to unread.")},async({msg_ids:s})=>{let{id:i,err:a}=r();if(a)return a;try{let c=await Q(async u=>(await L(i,"::actor::defer_messages",{msg_ids:s},u)).Reduce("deferred").Visualize());return Yr(i),k(`Deferred ${c} message(s) back to unread.`)}catch(c){return k(`defer_messages failed: ${String(c)}`,!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:s,err:i}=r();if(i)return i;try{let a=et(c=>wI(xe(s,"::actor::list_incoming_files",c)));return k(a)}catch(a){return k(`list_incoming_files failed: ${String(a)}`,!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:s,err:i}=r();if(i)return i;try{let a=await Q(async c=>{let u=await L(s,"::actor::get_files",{},c);return await $I(s,u.Reduce("files"))});return Yr(s),k(a)}catch(a){return k(`get_files failed: ${String(a)}`,!0)}});let o=()=>{let s=le?J.get(le):void 0;return s?{root:s}:{err:k("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:U.string().min(1).describe("The root's contact (name or container id) to bind as the proxy.")},async({contact:s})=>{let{root:i,err:a}=o();if(a)return a;try{let c=String(sv(0,1e6)).padStart(6,"0"),u=await Q(async l=>(await L(i,"::a2a_messaging::set_proxy_pending",{code:c,proxy:s},l)).Reduce("proxy_cid").Visualize());return k(`Proxy binding started for contact "${s}" (${u}).
95
95
 
96
- Verification code: ${a}
96
+ Verification code: ${c}
97
97
 
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 z(`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=cs(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}):
99
- ${c.map(u=>`\u2022 ${u.name} \u2014 monitoring ${u.monitoring?"ON":"off"}${u.bio?` \u2014 ${u.bio}`:""}`).join(`
100
- `)}`),z(a.join(`
101
- `))}catch(i){return z(`get_monitoring_status failed: ${String(i)}`,!0)}}),e}function TI(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 Fn=null,lp=!1;function tv(){Fn||(Fn=setInterval(()=>{lp||(lp=!0,(async()=>{try{for(let t of G.values()){try{await X(async e=>{await U(t,"::actor::gc",{},e)})}catch(e){E(`gc(${t.name}) failed:`,String(e))}await wv(t)}}finally{lp=!1}})())},J_),Fn.unref?.(),E(`message GC timer armed (every ${J_}ms)`))}function rv(){Fn&&(clearInterval(Fn),Fn=null)}async function PI(){if(PE==="stdio"){let u=ev(()=>"stdio");Wr.set("stdio",u),ot.set("stdio",{token:"stdio-local",pid:process.pid});let l=new Yi;await u.connect(l),E("MCP stdio transport connected, booting wrapper\u2026"),await Q_(),tv(),E(`MCP server v${ts} ready (transport=stdio, identities=${G.size}, state=${qe}, broker=${aa})`);let d=()=>{rv();for(let p of G.values())da(p);process.exit(0)};process.on("SIGINT",d),process.on("SIGTERM",d);return}E("booting wrapper\u2026"),await Q_(),tv(),E(`wrapper ready (identities=${G.size}), starting HTTP server\u2026`);let t={},e=new Map,r=3e4,n=u=>{let l=e.get(u);l?l.n++:e.set(u,{n:1,since:Date.now()})},o=u=>{let l=e.get(u);l&&--l.n<=0&&e.delete(u)},s=()=>{let u=0;for(let l of[...Wr.keys()]){if(l==="stdio")continue;let d=ot.get(l)?.pid;if(d===void 0||d<=1||fp(d))continue;let p=e.get(l);if(p&&p.n>0&&Date.now()-p.since<r)continue;let m=Wr.get(l);Wr.delete(l),delete t[l],ot.delete(l),e.delete(l),m?.close().catch(()=>{}),u++,E(`session ${l.slice(0,8)}\u2026 reaped (client pid ${d} dead)`)}return u};setInterval(s,6e4).unref?.();let a=wE(async(u,l)=>{let d=new URL(u.url,`http://localhost:${op}`);if(u.method==="GET"&&d.pathname==="/state-dir"){l.writeHead(200,{"Content-Type":"application/json"}),l.end(JSON.stringify({stateDir:qe,version:ts,compat:1}));return}if(u.method==="GET"&&(d.pathname==="/version"||d.pathname==="/info")){l.writeHead(200,{"Content-Type":"application/json"}),l.end(JSON.stringify({name:"ours",version:ts,compat:1,protocol:yv,pid:process.pid,stateDir:qe}));return}if(u.method==="GET"&&d.pathname==="/identities"){if(!na(u,l))return;l.writeHead(200,{"Content-Type":"application/json"}),l.end(JSON.stringify({identities:[...G.values()].map(p=>({name:p.name}))}));return}if(u.method==="GET"&&d.pathname==="/unread"){if(!na(u,l))return;l.writeHead(200,{"Content-Type":"application/json"}),l.end(JSON.stringify(mI()));return}{let p=/^\/identities\/([^/]+)\/notifications$/.exec(d.pathname);if(u.method==="GET"&&p){if(!na(u,l))return;let m=decodeURIComponent(p[1]);if(ua(m)!==null){l.writeHead(400,{"Content-Type":"application/json"}),l.end(JSON.stringify({error:"invalid identity name"}));return}await fI(u,l,m,d.searchParams.get("since"));return}}if(d.pathname!=="/mcp"){l.writeHead(404,{"Content-Type":"text/plain"}),l.end("Not found");return}if(na(u,l))try{if(u.method==="POST"){let p=await TI(u),m=u.headers["mcp-session-id"],f=u.headers["x-ours-lease-token"],h=u.headers["x-ours-client-pid"],g=h?parseInt(h,10):void 0,_={token:f,pid:Number.isInteger(g)?g:void 0};if(m&&t[m]){ot.set(m,_),n(m);try{await t[m].handleRequest(u,l,p)}finally{o(m)}}else if(!m&&mo(p)){s();let b=new ta({sessionIdGenerator:()=>vE(),onsessioninitialized:S=>{t[S]=b,ot.set(S,_),Wr.set(S,w),E(`session ${S.slice(0,8)}\u2026 initialized`)}}),w=ev(()=>b.sessionId??"pending");b.onclose=()=>{let S=b.sessionId;S&&(delete t[S],Wr.delete(S),ot.delete(S),E(`session ${S.slice(0,8)}\u2026 closed (lease kept)`))},await w.connect(b),await b.handleRequest(u,l,p)}else l.writeHead(400,{"Content-Type":"application/json"}),l.end(JSON.stringify({jsonrpc:"2.0",error:{code:-32e3,message:"Bad Request: No valid session ID"},id:null}))}else if(u.method==="GET"){let p=u.headers["mcp-session-id"];if(!p||!t[p]){l.writeHead(400,{"Content-Type":"text/plain"}),l.end("Invalid or missing session ID");return}n(p);try{await t[p].handleRequest(u,l)}finally{o(p)}}else if(u.method==="DELETE"){let p=u.headers["mcp-session-id"];if(!p||!t[p]){l.writeHead(400,{"Content-Type":"text/plain"}),l.end("Invalid or missing session ID");return}let m=ot.get(p)?.token??u.headers["x-ours-lease-token"];if(m){for(let[f,h]of[...Re])h.token===m&&Re.delete(f);pa.delete(m),as(),E(`lease released by token \u2026${m.slice(-6)}`)}await t[p].handleRequest(u,l)}else l.writeHead(405,{"Content-Type":"text/plain"}),l.end("Method not allowed")}catch(p){E("HTTP handler error:",String(p)),l.headersSent||(l.writeHead(500,{"Content-Type":"application/json"}),l.end(JSON.stringify({jsonrpc:"2.0",error:{code:-32603,message:"Internal server error"},id:null})))}});a.requestTimeout=0,a.listen(op,"127.0.0.1",()=>{E(`MCP server v${ts} ready (transport=http, port=${op}, visibility=${dp}, identities=${G.size}, state=${qe}, broker=${aa})`)});let c=async()=>{E("shutting down\u2026"),rv();for(let u of Object.keys(t)){try{await t[u].close()}catch{}delete t[u]}for(let u of G.values())da(u);a.close(),process.exit(0)};process.on("SIGINT",c),process.on("SIGTERM",c)}PI().catch(t=>{E(`fatal startup error: ${t?.stack??t}`),process.exit(1)});export{fE as formatVersionAdvisory,ua as validateName};
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(c){return k(`bind_monitoring_proxy failed: ${String(c)}`,!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:s,err:i}=o();if(i)return i;try{let a=cs(s),c=[];c.push(`Root "${s.name}" (${s.cid}):`),c.push(a.proxyCid?`\u2022 monitoring proxy bound: ${a.proxyCid}`:"\u2022 no monitoring proxy bound"),a.proxyPending&&c.push("\u2022 a proxy code verification is pending"),a.copiesQueued>0&&c.push(`\u2022 ${a.copiesQueued} monitoring cop${a.copiesQueued===1?"y":"ies"} queued for forwarding`),a.controlQueued>0&&c.push(`\u2022 ${a.controlQueued} control request(s) queued`);let u=FE(s);return c.push(""),c.push(u.length===0?"No agents (roles) under this root.":`Agents (${u.length}):
99
+ ${u.map(l=>`\u2022 ${l.name} \u2014 monitoring ${l.monitoring?"ON":"off"}${l.bio?` \u2014 ${l.bio}`:""}`).join(`
100
+ `)}`),k(c.join(`
101
+ `))}catch(a){return k(`get_monitoring_status failed: ${String(a)}`,!0)}}),e}function PI(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 Fn=null,dp=!1;function rv(){Fn||(Fn=setInterval(()=>{dp||(dp=!0,(async()=>{try{for(let t of J.values()){try{await Q(async e=>{await L(t,"::actor::gc",{},e)})}catch(e){R(`gc(${t.name}) failed:`,String(e))}await $v(t)}}finally{dp=!1}})())},J_),Fn.unref?.(),R(`message GC timer armed (every ${J_}ms)`))}function nv(){Fn&&(clearInterval(Fn),Fn=null)}async function EI(){if(EE==="stdio"){let u=tv(()=>"stdio");Wr.set("stdio",u),st.set("stdio",{token:"stdio-local",pid:process.pid});let l=new Yi;await u.connect(l),R("MCP stdio transport connected, booting wrapper\u2026"),await X_(),rv(),R(`MCP server v${ts} ready (transport=stdio, identities=${J.size}, state=${qe}, broker=${ca})`);let d=()=>{nv();for(let p of J.values())pa(p);process.exit(0)};process.on("SIGINT",d),process.on("SIGTERM",d);return}R("booting wrapper\u2026"),await X_(),rv(),R(`wrapper ready (identities=${J.size}), starting HTTP server\u2026`);let t={},e=new Map,r=3e4,n=u=>{let l=e.get(u);l?l.n++:e.set(u,{n:1,since:Date.now()})},o=u=>{let l=e.get(u);l&&--l.n<=0&&e.delete(u)},s=()=>{let u=0;for(let l of[...Wr.keys()]){if(l==="stdio")continue;let d=st.get(l)?.pid;if(d===void 0||d<=1||mp(d))continue;let p=e.get(l);if(p&&p.n>0&&Date.now()-p.since<r)continue;let f=Wr.get(l);Wr.delete(l),delete t[l],st.delete(l),e.delete(l),f?.close().catch(()=>{}),u++,R(`session ${l.slice(0,8)}\u2026 reaped (client pid ${d} dead)`)}return u};setInterval(s,6e4).unref?.();let a=$E(async(u,l)=>{let d=new URL(u.url,`http://localhost:${sp}`);if(u.method==="GET"&&d.pathname==="/state-dir"){l.writeHead(200,{"Content-Type":"application/json"}),l.end(JSON.stringify({stateDir:qe,version:ts,compat:1}));return}if(u.method==="GET"&&(d.pathname==="/version"||d.pathname==="/info")){l.writeHead(200,{"Content-Type":"application/json"}),l.end(JSON.stringify({name:"ours",version:ts,compat:1,protocol:_v,pid:process.pid,stateDir:qe}));return}if(u.method==="GET"&&d.pathname==="/identities"){if(!na(u,l))return;l.writeHead(200,{"Content-Type":"application/json"}),l.end(JSON.stringify({identities:[...J.values()].map(p=>({name:p.name}))}));return}if(u.method==="GET"&&d.pathname==="/unread"){if(!na(u,l))return;l.writeHead(200,{"Content-Type":"application/json"}),l.end(JSON.stringify(hI()));return}{let p=/^\/identities\/([^/]+)\/notifications$/.exec(d.pathname);if(u.method==="GET"&&p){if(!na(u,l))return;let f=decodeURIComponent(p[1]);if(la(f)!==null){l.writeHead(400,{"Content-Type":"application/json"}),l.end(JSON.stringify({error:"invalid identity name"}));return}await mI(u,l,f,d.searchParams.get("since"));return}}if(d.pathname!=="/mcp"){l.writeHead(404,{"Content-Type":"text/plain"}),l.end("Not found");return}if(na(u,l))try{if(u.method==="POST"){let p=await PI(u),f=u.headers["mcp-session-id"],m=u.headers["x-ours-lease-token"],h=u.headers["x-ours-client-pid"],g=h?parseInt(h,10):void 0,y={token:m,pid:Number.isInteger(g)?g:void 0};if(f&&t[f]){st.set(f,y),n(f);try{await t[f].handleRequest(u,l,p)}finally{o(f)}}else if(!f&&mo(p)){s();let v=new ta({sessionIdGenerator:()=>bE(),onsessioninitialized:S=>{t[S]=v,st.set(S,y),Wr.set(S,w),R(`session ${S.slice(0,8)}\u2026 initialized`)}}),w=tv(()=>v.sessionId??"pending");v.onclose=()=>{let S=v.sessionId;S&&(delete t[S],Wr.delete(S),st.delete(S),R(`session ${S.slice(0,8)}\u2026 closed (lease kept)`))},await w.connect(v),await v.handleRequest(u,l,p)}else l.writeHead(400,{"Content-Type":"application/json"}),l.end(JSON.stringify({jsonrpc:"2.0",error:{code:-32e3,message:"Bad Request: No valid session ID"},id:null}))}else if(u.method==="GET"){let p=u.headers["mcp-session-id"];if(!p||!t[p]){l.writeHead(400,{"Content-Type":"text/plain"}),l.end("Invalid or missing session ID");return}n(p);try{await t[p].handleRequest(u,l)}finally{o(p)}}else if(u.method==="DELETE"){let p=u.headers["mcp-session-id"];if(!p||!t[p]){l.writeHead(400,{"Content-Type":"text/plain"}),l.end("Invalid or missing session ID");return}let f=st.get(p)?.token??u.headers["x-ours-lease-token"];if(f){for(let[m,h]of[...Re])h.token===f&&Re.delete(m);fa.delete(f),as(),R(`lease released by token \u2026${f.slice(-6)}`)}await t[p].handleRequest(u,l)}else l.writeHead(405,{"Content-Type":"text/plain"}),l.end("Method not allowed")}catch(p){R("HTTP handler error:",String(p)),l.headersSent||(l.writeHead(500,{"Content-Type":"application/json"}),l.end(JSON.stringify({jsonrpc:"2.0",error:{code:-32603,message:"Internal server error"},id:null})))}});a.requestTimeout=0,a.listen(sp,"127.0.0.1",()=>{R(`MCP server v${ts} ready (transport=http, port=${sp}, visibility=${pp}, identities=${J.size}, state=${qe}, broker=${ca})`)});let c=async()=>{R("shutting down\u2026"),nv();for(let u of Object.keys(t)){try{await t[u].close()}catch{}delete t[u]}for(let u of J.values())pa(u);a.close(),process.exit(0)};process.on("SIGINT",c),process.on("SIGTERM",c)}EI().catch(t=>{R(`fatal startup error: ${t?.stack??t}`),process.exit(1)});export{mE as formatVersionAdvisory,la as validateName};