@ours.network/mcp 0.12.0-nightly.12 → 0.12.0-nightly.13
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,46 +1,46 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { createRequire } from 'node:module'; const require = createRequire(import.meta.url);
|
|
3
|
-
var Ev=Object.create;var va=Object.defineProperty;var Iv=Object.getOwnPropertyDescriptor;var Ov=Object.getOwnPropertyNames;var Nv=Object.getPrototypeOf,Av=Object.prototype.hasOwnProperty;var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),ba=(t,e)=>{for(var r in e)va(t,r,{get:e[r],enumerable:!0})},Cv=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Ov(e))!Av.call(t,o)&&o!==r&&va(t,o,{get:()=>e[o],enumerable:!(n=Iv(e,o))||n.enumerable});return t};var Pp=(t,e,r)=>(r=t!=null?Ev(Nv(t)):{},Cv(e||!t||!t.__esModule?va(r,"default",{value:t,enumerable:!0}):r,t));var zo=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 ko=class{};se._CodeOrName=ko;se.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Zr=class extends ko{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 ko{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 kh(t,...e){let r=[t[0]],n=0;for(;n<e.length;)el(r,e[n]),r.push(t[++n]);return new pt(r)}se._=kh;var Xu=new pt("+");function Sh(t,...e){let r=[So(t[0])],n=0;for(;n<e.length;)r.push(Xu),el(r,e[n]),r.push(Xu,So(t[++n]));return C0(r),new pt(r)}se.str=Sh;function el(t,e){e instanceof pt?t.push(...e._items):e instanceof Zr?t.push(e):t.push(M0(e))}se.addCodeArg=el;function C0(t){let e=1;for(;e<t.length-1;){if(t[e]===Xu){let r=j0(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function j0(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 Z0(t,e){return e.emptyStr()?t:t.emptyStr()?e:Sh`${t}${e}`}se.strConcat=Z0;function M0(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:So(Array.isArray(t)?t.join(","):t)}function q0(t){return new pt(So(t))}se.stringify=q0;function So(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}se.safeStringify=So;function D0(t){return typeof t=="string"&&se.IDENTIFIER.test(t)?new pt(`.${t}`):kh`[${t}]`}se.getProperty=D0;function V0(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=V0;function L0(t){return new pt(t.toString())}se.regexpCode=L0});var nl=T(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.ValueScope=Ye.ValueScopeName=Ye.Scope=Ye.varKinds=Ye.UsedValueState=void 0;var We=zo(),tl=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},pi;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(pi||(Ye.UsedValueState=pi={}));Ye.varKinds={const:new We.Name("const"),let:new We.Name("let"),var:new We.Name("var")};var fi=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof We.Name?e:this.name(e)}name(e){return new We.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,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}}};Ye.Scope=fi;var mi=class extends We.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,We._)`.${new We.Name(r)}[${n}]`}};Ye.ValueScopeName=mi;var U0=(0,We._)`\n`,rl=class extends fi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?U0:We.nil}}get(){return this._scope}name(e){return new mi(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,We._)`${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=We.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,pi.Started);let l=r(u);if(l){let d=this.opts.es5?Ye.varKinds.var:Ye.varKinds.const;s=(0,We._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,We._)`${s}${l}${this.opts._n}`;else throw new tl(u);c.set(u,pi.Completed)})}return s}};Ye.ValueScope=rl});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=zo(),$t=nl(),or=zo();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 _i=nl();Object.defineProperty(K,"Scope",{enumerable:!0,get:function(){return _i.Scope}});Object.defineProperty(K,"ValueScope",{enumerable:!0,get:function(){return _i.ValueScope}});Object.defineProperty(K,"ValueScopeName",{enumerable:!0,get:function(){return _i.ValueScopeName}});Object.defineProperty(K,"varKinds",{enumerable:!0,get:function(){return _i.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}},ol=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?$t.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=$n(this.rhs,e,r)),this}get names(){return this.rhs instanceof re._CodeOrName?this.rhs.names:{}}},hi=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 yi(e,this.rhs)}},sl=class extends hi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},il=class extends Lt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},al=class extends Lt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},cl=class extends Lt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},ul=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:{}}},Ro=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)||(F0(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 Ro{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},ll=class extends Ro{},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(zh(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 yi(e,this.condition),this.else&&Dr(e,this.else.names),e}};Mr.kind="if";var qr=class extends Ut{};qr.kind="for";var dl=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)}},pl=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?$t.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=yi(super.names,this.from);return yi(e,this.to)}},gi=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)}},To=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)}};To.kind="func";var Po=class extends Ro{render(e){return"return "+super.render(e)}};Po.kind="return";var fl=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}},Eo=class extends Ut{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Eo.kind="catch";var Io=class extends Ut{render(e){return"finally"+super.render(e)}};Io.kind="finally";var ml=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
4
|
-
`:""},this._extScope=e,this._scope=new $t.Scope({parent:e}),this._nodes=[new ll]}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 ol(e,s,n)),s}const(e,r,n){return this._def($t.varKinds.const,e,r,n)}let(e,r,n){return this._def($t.varKinds.let,e,r,n)}var(e,r,n){return this._def($t.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new hi(e,r,n))}add(e,r){return this._leafNode(new sl(e,K.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==re.nil&&this._leafNode(new ul(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 dl(e),r)}forRange(e,r,n,o,s=this.opts.es5?$t.varKinds.var:$t.varKinds.let){let i=this._scope.toName(e);return this._for(new pl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=$t.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof re.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,re._)`${i}.length`,a=>{this.var(s,(0,re._)`${i}[${a}]`),n(s)})}return this._for(new gi("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?$t.varKinds.var:$t.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,re._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new gi("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(qr)}label(e){return this._leafNode(new il(e))}break(e){return this._leafNode(new al(e))}return(e){let r=new Po;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Po)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new fl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Eo(s),r(s)}return n&&(this._currNode=o.finally=new Io,this.code(n)),this._endBlockNode(Eo,Io)}throw(e){return this._leafNode(new cl(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 To(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(To)}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=ml;function Dr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function yi(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 F0(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function zh(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,re._)`!${hl(t)}`}K.not=zh;var B0=Rh(K.operators.AND);function H0(...t){return t.reduce(B0)}K.and=H0;var J0=Rh(K.operators.OR);function G0(...t){return t.reduce(J0)}K.or=G0;function Rh(t){return(e,r)=>e===re.nil?r:r===re.nil?e:(0,re._)`${hl(e)} ${t} ${hl(r)}`}function hl(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 le=G(),K0=zo();function W0(t){let e={};for(let r of t)e[r]=!0;return e}W.toHash=W0;function Y0(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Eh(t,e),!Ih(e,t.self.RULES.all))}W.alwaysValidSchema=Y0;function Eh(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]||Ah(t,`unknown keyword: "${s}"`)}W.checkUnknownRules=Eh;function Ih(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}W.schemaHasRules=Ih;function Q0(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=Q0;function X0({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,le._)`${r}`}return(0,le._)`${t}${e}${(0,le.getProperty)(n)}`}W.schemaRefOrVal=X0;function ek(t){return Oh(decodeURIComponent(t))}W.unescapeFragment=ek;function tk(t){return encodeURIComponent(yl(t))}W.escapeFragment=tk;function yl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}W.escapeJsonPointer=yl;function Oh(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}W.unescapeJsonPointer=Oh;function rk(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}W.eachItem=rk;function Th({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof le.Name?(s instanceof le.Name?t(o,s,i):e(o,s,i),i):s instanceof le.Name?(e(o,i,s),s):r(s,i);return a===le.Name&&!(c instanceof le.Name)?n(o,c):c}}W.mergeEvaluated={props:Th({mergeNames:(t,e,r)=>t.if((0,le._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,le._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,le._)`${r} || {}`).code((0,le._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,le._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,le._)`${r} || {}`),_l(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Nh}),items:Th({mergeNames:(t,e,r)=>t.if((0,le._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,le._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,le._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,le._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Nh(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,le._)`{}`);return e!==void 0&&_l(t,r,e),r}W.evaluatedPropsToName=Nh;function _l(t,e,r){Object.keys(r).forEach(n=>t.assign((0,le._)`${e}${(0,le.getProperty)(n)}`,!0))}W.setEvaluated=_l;var Ph={};function nk(t,e){return t.scopeValue("func",{ref:e,code:Ph[e.code]||(Ph[e.code]=new K0._Code(e.code))})}W.useFunc=nk;var gl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(gl||(W.Type=gl={}));function ok(t,e,r){if(t instanceof le.Name){let n=e===gl.Num;return r?n?(0,le._)`"[" + ${t} + "]"`:(0,le._)`"['" + ${t} + "']"`:n?(0,le._)`"/" + ${t}`:(0,le._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,le.getProperty)(t).toString():"/"+yl(t)}W.getErrorPath=ok;function Ah(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=Ah});var Ft=T(vl=>{"use strict";Object.defineProperty(vl,"__esModule",{value:!0});var je=G(),sk={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")};vl.default=sk});var Oo=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(),vi=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 ik(t,e=Ze.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Zh(t,e,r);n??(i||a)?Ch(s,c):jh(o,(0,oe._)`[${c}]`)}Ze.reportError=ik;function ak(t,e=Ze.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Zh(t,e,r);Ch(o,a),s||i||jh(n,Ue.default.vErrors)}Ze.reportExtraError=ak;function ck(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=ck;function uk({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=uk;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 jh(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 Zh(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,oe._)`{}`:lk(t,e,r)}function lk(t,e,r={}){let{gen:n,it:o}=t,s=[dk(o,r),pk(t,r)];return fk(t,e,s),n.object(...s)}function dk({errorPath:t},{instancePath:e}){let r=e?(0,oe.str)`${t}${(0,vi.getErrorPath)(e,vi.Type.Str)}`:t;return[Ue.default.instancePath,(0,oe.strConcat)(Ue.default.instancePath,r)]}function pk({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,vi.getErrorPath)(r,vi.Type.Str)}`),[Vr.schemaPath,o]}function fk(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 qh=T(xn=>{"use strict";Object.defineProperty(xn,"__esModule",{value:!0});xn.boolOrEmptySchema=xn.topBoolOrEmptySchema=void 0;var mk=Oo(),hk=G(),gk=Ft(),yk={message:"boolean schema is false"};function _k(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Mh(t,!1):typeof r=="object"&&r.$async===!0?e.return(gk.default.data):(e.assign((0,hk._)`${n}.errors`,null),e.return(!0))}xn.topBoolOrEmptySchema=_k;function vk(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Mh(t)):r.var(e,!0)}xn.boolOrEmptySchema=vk;function Mh(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,mk.reportError)(o,yk,void 0,e)}});var bl=T(kn=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});kn.getRules=kn.isJSONType=void 0;var bk=["string","number","integer","boolean","null","object","array"],wk=new Set(bk);function $k(t){return typeof t=="string"&&wk.has(t)}kn.isJSONType=$k;function xk(){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=xk});var wl=T(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.shouldUseRule=sr.shouldUseGroup=sr.schemaHasRulesForType=void 0;function kk({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Dh(t,n)}sr.schemaHasRulesForType=kk;function Dh(t,e){return e.rules.some(r=>Vh(t,r))}sr.shouldUseGroup=Dh;function Vh(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=Vh});var No=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 Sk=bl(),zk=wl(),Rk=Oo(),H=G(),Lh=ne(),Sn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Sn||(Me.DataType=Sn={}));function Tk(t){let e=Uh(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=Tk;function Uh(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(Sk.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Me.getJSONTypes=Uh;function Pk(t,e){let{gen:r,data:n,opts:o}=t,s=Ek(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,zk.schemaHasRulesForType)(t,e[0]));if(i){let a=xl(e,n,o.strictNumbers,Sn.Wrong);r.if(a,()=>{s.length?Ik(t,e,s):kl(t)})}return i}Me.coerceAndCheckDataType=Pk;var Fh=new Set(["string","number","integer","boolean","null"]);function Ek(t,e){return e?t.filter(r=>Fh.has(r)||e==="array"&&r==="array"):[]}function Ik(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,H._)`typeof ${o}`),a=n.let("coerced",(0,H._)`undefined`);s.coerceTypes==="array"&&n.if((0,H._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,H._)`${o}[0]`).assign(i,(0,H._)`typeof ${o}`).if(xl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,H._)`${a} !== undefined`);for(let u of r)(Fh.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),kl(t),n.endIf(),n.if((0,H._)`${a} !== undefined`,()=>{n.assign(o,a),Ok(t,a)});function c(u){switch(u){case"string":n.elseIf((0,H._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,H._)`"" + ${o}`).elseIf((0,H._)`${o} === null`).assign(a,(0,H._)`""`);return;case"number":n.elseIf((0,H._)`${i} == "boolean" || ${o} === null
|
|
5
|
-
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,
|
|
6
|
-
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,
|
|
7
|
-
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,H._)`[${o}]`)}}}function Ok({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,H._)`${e} !== undefined`,()=>t.assign((0,H._)`${e}[${r}]`,n))}function $l(t,e,r,n=Sn.Correct){let o=n===Sn.Correct?H.operators.EQ:H.operators.NEQ,s;switch(t){case"null":return(0,H._)`${e} ${o} null`;case"array":s=(0,H._)`Array.isArray(${e})`;break;case"object":s=(0,H._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,H._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,H._)`typeof ${e} ${o} ${t}`}return n===Sn.Correct?s:(0,H.not)(s);function i(a=H.nil){return(0,H.and)((0,H._)`typeof ${e} == "number"`,a,r?(0,H._)`isFinite(${e})`:H.nil)}}Me.checkDataType=$l;function xl(t,e,r,n){if(t.length===1)return $l(t[0],e,r,n);let o,s=(0,Lh.toHash)(t);if(s.array&&s.object){let i=(0,H._)`typeof ${e} != "object"`;o=s.null?i:(0,H._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=H.nil;s.number&&delete s.integer;for(let i in s)o=(0,H.and)(o,$l(i,e,r,n));return o}Me.checkDataTypes=xl;var Nk={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,H._)`{type: ${t}}`:(0,H._)`{type: ${e}}`};function kl(t){let e=Ak(t);(0,Rk.reportError)(e,Nk)}Me.reportTypeError=kl;function Ak(t){let{gen:e,data:r,schema:n}=t,o=(0,Lh.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Hh=T(bi=>{"use strict";Object.defineProperty(bi,"__esModule",{value:!0});bi.assignDefaults=void 0;var zn=G(),Ck=ne();function jk(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Bh(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Bh(t,s,o.default))}bi.assignDefaults=jk;function Bh(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,Ck.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(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.validateUnion=ue.validateArray=ue.usePattern=ue.callValidateCode=ue.schemaProperties=ue.allSchemaProperties=ue.noPropertyInData=ue.propertyInData=ue.isOwnProperty=ue.hasPropFunc=ue.reportMissingProp=ue.checkMissingProp=ue.checkReportMissingProp=void 0;var he=G(),Sl=ne(),ir=Ft(),Zk=ne();function Mk(t,e){let{gen:r,data:n,it:o}=t;r.if(Rl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,he._)`${e}`},!0),t.error()})}ue.checkReportMissingProp=Mk;function qk({gen:t,data:e,it:{opts:r}},n,o){return(0,he.or)(...n.map(s=>(0,he.and)(Rl(t,e,s,r.ownProperties),(0,he._)`${o} = ${s}`)))}ue.checkMissingProp=qk;function Dk(t,e){t.setParams({missingProperty:e},!0),t.error()}ue.reportMissingProp=Dk;function Jh(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,he._)`Object.prototype.hasOwnProperty`})}ue.hasPropFunc=Jh;function zl(t,e,r){return(0,he._)`${Jh(t)}.call(${e}, ${r})`}ue.isOwnProperty=zl;function Vk(t,e,r,n){let o=(0,he._)`${e}${(0,he.getProperty)(r)} !== undefined`;return n?(0,he._)`${o} && ${zl(t,e,r)}`:o}ue.propertyInData=Vk;function Rl(t,e,r,n){let o=(0,he._)`${e}${(0,he.getProperty)(r)} === undefined`;return n?(0,he.or)(o,(0,he.not)(zl(t,e,r))):o}ue.noPropertyInData=Rl;function Gh(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ue.allSchemaProperties=Gh;function Lk(t,e){return Gh(e).filter(r=>!(0,Sl.alwaysValidSchema)(t,e[r]))}ue.schemaProperties=Lk;function Uk({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})`}ue.callValidateCode=Uk;var Fk=(0,he._)`new RegExp`;function Bk({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"?Fk:(0,Zk.useFunc)(t,o)}(${r}, ${n})`})}ue.usePattern=Bk;function Hk(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:Sl.Type.Num},s),e.if((0,he.not)(s),a)})}}ue.validateArray=Hk;function Jk(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,Sl.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))}ue.validateUnion=Jk});var Yh=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(),Gk=ft(),Kk=Oo();function Wk(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Wh(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=Wk;function Yk(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;Xk(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Wh(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&&Kh(t),g(()=>t.error());else{let v=e.async?f():m();e.modifying&&Kh(t),g(()=>Qk(t,v))}}function f(){let v=n.let("ruleErrs",null);return n.try(()=>h((0,Fe._)`await `),_=>n.assign(d,!1).if((0,Fe._)`${_} instanceof ${c.ValidationError}`,()=>n.assign(v,(0,Fe._)`${_}.errors`),()=>n.throw(_))),v}function m(){let v=(0,Fe._)`${l}.errors`;return n.assign(v,null),h(Fe.nil),v}function h(v=e.async?(0,Fe._)`await `:Fe.nil){let _=c.opts.passContext?Lr.default.this:Lr.default.self,w=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Fe._)`${v}${(0,Gk.callValidateCode)(t,l,_,w)}`,e.modifying)}function g(v){var _;n.if((0,Fe.not)((_=e.valid)!==null&&_!==void 0?_:d),v)}}It.funcKeywordCode=Yk;function Kh(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Fe._)`${n.parentData}[${n.parentDataProperty}]`))}function Qk(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,Kk.extendErrors)(t)},()=>t.error())}function Xk({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Wh(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 eS(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=eS;function tS({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=tS});var Xh=T(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.extendSubschemaMode=ar.extendSubschemaData=ar.getSubschema=void 0;var Ot=G(),Qh=ne();function rS(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,Qh.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=rS;function nS(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,Qh.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=nS;function oS(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=oS});var Tl=T((ej,eg)=>{"use strict";eg.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 rg=T((tj,tg)=>{"use strict";var cr=tg.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(){};wi(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 wi(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++)wi(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)wi(t,e,r,d[f],o+"/"+l+"/"+sS(f),s,o,l,n,f)}else(l in cr.keywords||t.allKeys&&!(l in cr.skipKeywords))&&wi(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function sS(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Ao=T(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.getSchemaRefs=Qe.resolveUrl=Qe.normalizeId=Qe._getFullPath=Qe.getFullPath=Qe.inlineRef=void 0;var iS=ne(),aS=Tl(),cS=rg(),uS=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function lS(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Pl(t):e?ng(t)<=e:!1}Qe.inlineRef=lS;var dS=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Pl(t){for(let e in t){if(dS.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Pl)||typeof r=="object"&&Pl(r))return!0}return!1}function ng(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!uS.has(r)&&(typeof t[r]=="object"&&(0,iS.eachItem)(t[r],n=>e+=ng(n)),e===1/0))return 1/0}return e}function og(t,e="",r){r!==!1&&(e=Rn(e));let n=t.parse(e);return sg(t,n)}Qe.getFullPath=og;function sg(t,e){return t.serialize(e).split("#")[0]+"#"}Qe._getFullPath=sg;var pS=/#\/?$/;function Rn(t){return t?t.replace(pS,""):""}Qe.normalizeId=Rn;function fS(t,e,r){return r=Rn(r),t.resolve(e,r)}Qe.resolveUrl=fS;var mS=/^[a-z_][-a-z0-9._]*$/i;function hS(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Rn(t[r]||e),s={"":o},i=og(n,o,!1),a={},c=new Set;return cS(t,{allKeys:!0},(d,p,f,m)=>{if(m===void 0)return;let h=i+p,g=s[m];typeof d[r]=="string"&&(g=v.call(this,d[r])),_.call(this,d.$anchor),_.call(this,d.$dynamicAnchor),s[p]=g;function v(w){let z=this.opts.uriResolver.resolve;if(w=Rn(g?z(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 _(w){if(typeof w=="string"){if(!mS.test(w))throw new Error(`invalid anchor "${w}"`);v.call(this,`#${w}`)}}}),a;function u(d,p,f){if(p!==void 0&&!aS(d,p))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Qe.getSchemaRefs=hS});var Zo=T(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.getData=ur.KeywordCxt=ur.validateFunctionCode=void 0;var lg=qh(),ig=No(),Il=wl(),$i=No(),gS=Hh(),jo=Yh(),El=Xh(),A=G(),L=Ft(),yS=Ao(),Bt=ne(),Co=Oo();function _S(t){if(fg(t)&&(mg(t),pg(t))){wS(t);return}dg(t,()=>(0,lg.topBoolOrEmptySchema)(t))}ur.validateFunctionCode=_S;function dg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,A._)`${L.default.data}, ${L.default.valCxt}`,n.$async,()=>{t.code((0,A._)`"use strict"; ${ag(r,o)}`),bS(t,o),t.code(s)}):t.func(e,(0,A._)`${L.default.data}, ${vS(o)}`,n.$async,()=>t.code(ag(r,o)).code(s))}function vS(t){return(0,A._)`{${L.default.instancePath}="", ${L.default.parentData}, ${L.default.parentDataProperty}, ${L.default.rootData}=${L.default.data}${t.dynamicRef?(0,A._)`, ${L.default.dynamicAnchors}={}`:A.nil}}={}`}function bS(t,e){t.if(L.default.valCxt,()=>{t.var(L.default.instancePath,(0,A._)`${L.default.valCxt}.${L.default.instancePath}`),t.var(L.default.parentData,(0,A._)`${L.default.valCxt}.${L.default.parentData}`),t.var(L.default.parentDataProperty,(0,A._)`${L.default.valCxt}.${L.default.parentDataProperty}`),t.var(L.default.rootData,(0,A._)`${L.default.valCxt}.${L.default.rootData}`),e.dynamicRef&&t.var(L.default.dynamicAnchors,(0,A._)`${L.default.valCxt}.${L.default.dynamicAnchors}`)},()=>{t.var(L.default.instancePath,(0,A._)`""`),t.var(L.default.parentData,(0,A._)`undefined`),t.var(L.default.parentDataProperty,(0,A._)`undefined`),t.var(L.default.rootData,L.default.data),e.dynamicRef&&t.var(L.default.dynamicAnchors,(0,A._)`{}`)})}function wS(t){let{schema:e,opts:r,gen:n}=t;dg(t,()=>{r.$comment&&e.$comment&&gg(t),zS(t),n.let(L.default.vErrors,null),n.let(L.default.errors,0),r.unevaluated&&$S(t),hg(t),PS(t)})}function $S(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,A._)`${r}.evaluated`),e.if((0,A._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,A._)`${t.evaluated}.props`,(0,A._)`undefined`)),e.if((0,A._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,A._)`${t.evaluated}.items`,(0,A._)`undefined`))}function ag(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,A._)`/*# sourceURL=${r} */`:A.nil}function xS(t,e){if(fg(t)&&(mg(t),pg(t))){kS(t,e);return}(0,lg.boolOrEmptySchema)(t,e)}function pg({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 fg(t){return typeof t.schema!="boolean"}function kS(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&gg(t),RS(t),TS(t);let s=n.const("_errs",L.default.errors);hg(t,s),n.var(e,(0,A._)`${s} === ${L.default.errors}`)}function mg(t){(0,Bt.checkUnknownRules)(t),SS(t)}function hg(t,e){if(t.opts.jtd)return cg(t,[],!1,e);let r=(0,ig.getSchemaTypes)(t.schema),n=(0,ig.coerceAndCheckDataType)(t,r);cg(t,r,!n,e)}function SS(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 zS(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 RS(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,yS.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function TS(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function gg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,A._)`${L.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,A.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,A._)`${L.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function PS(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,A._)`${L.default.errors} === 0`,()=>e.return(L.default.data),()=>e.throw((0,A._)`new ${o}(${L.default.vErrors})`)):(e.assign((0,A._)`${n}.errors`,L.default.vErrors),s.unevaluated&&ES(t),e.return((0,A._)`${L.default.errors} === 0`))}function ES({gen:t,evaluated:e,props:r,items:n}){r instanceof A.Name&&t.assign((0,A._)`${e}.props`,r),n instanceof A.Name&&t.assign((0,A._)`${e}.items`,n)}function cg(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(()=>_g(t,"$ref",l.all.$ref.definition));return}c.jtd||IS(t,e),o.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,Il.shouldUseGroup)(s,p)&&(p.type?(o.if((0,$i.checkDataType)(p.type,i,c.strictNumbers)),ug(t,p),e.length===1&&e[0]===p.type&&r&&(o.else(),(0,$i.reportTypeError)(t)),o.endIf()):ug(t,p),a||o.if((0,A._)`${L.default.errors} === ${n||0}`))}}function ug(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,gS.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Il.shouldUseRule)(n,s)&&_g(t,s.keyword,s.definition,e.type)})}function IS(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(OS(t,e),t.opts.allowUnionTypes||NS(t,e),AS(t,t.dataTypes))}function OS(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{yg(t.dataTypes,r)||Ol(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),jS(t,e)}}function NS(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Ol(t,"use allowUnionTypes to allow union type keyword")}function AS(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Il.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>CS(e,i))&&Ol(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function CS(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function yg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function jS(t,e){let r=[];for(let n of t.dataTypes)yg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Ol(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Bt.checkStrictMode)(t,e,t.opts.strictTypes)}var xi=class{constructor(e,r,n){if((0,jo.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",vg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,jo.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,A.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,A.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,A._)`${r} !== undefined && (${(0,A.or)(this.invalid$data(),e)})`)}error(e,r,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=A.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=A.nil,r=A.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,A.or)((0,A._)`${o} === undefined`,r)),e!==A.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==A.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,A.or)(i(),a());function i(){if(n.length){if(!(r instanceof A.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,A._)`${(0,$i.checkDataTypes)(c,r,s.opts.strictNumbers,$i.DataType.Wrong)}`}return A.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,A._)`!${c}(${r})`}return A.nil}}subschema(e,r){let n=(0,El.getSubschema)(this.it,e);(0,El.extendSubschemaData)(n,this.it,e),(0,El.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return xS(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,A.Name)),!0}};ur.KeywordCxt=xi;function _g(t,e,r,n){let o=new xi(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,jo.funcKeywordCode)(o,r):"macro"in r?(0,jo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,jo.funcKeywordCode)(o,r)}var ZS=/^\/(?:[^~]|~0|~1)*$/,MS=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function vg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return L.default.rootData;if(t[0]==="/"){if(!ZS.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=L.default.rootData}else{let u=MS.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,A._)`${s}${(0,A.getProperty)((0,Bt.unescapeJsonPointer)(u))}`,i=(0,A._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}ur.getData=vg});var ki=T(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});var Nl=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Al.default=Nl});var Mo=T(Zl=>{"use strict";Object.defineProperty(Zl,"__esModule",{value:!0});var Cl=Ao(),jl=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))}};Zl.default=jl});var zi=T(mt=>{"use strict";Object.defineProperty(mt,"__esModule",{value:!0});mt.resolveSchema=mt.getCompilingSchema=mt.resolveRef=mt.compileSchema=mt.SchemaEnv=void 0;var xt=G(),qS=ki(),Ur=Ft(),kt=Ao(),bg=ne(),DS=Zo(),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,kt.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 ql(t){let e=wg.call(this,t);if(e)return e;let r=(0,kt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new xt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:qS.default,code:(0,xt._)`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:[xt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,xt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:xt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,xt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,DS.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 xt.Name?void 0:m,items:h instanceof xt.Name?void 0:h,dynamicProps:m instanceof xt.Name,dynamicItems:h instanceof xt.Name},f.source&&(f.source.evaluated=(0,xt.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=ql;function VS(t,e,r){var n;r=(0,kt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=FS.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]=LS.call(this,s)}mt.resolveRef=VS;function LS(t){return(0,kt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:ql.call(this,t)}function wg(t){for(let e of this._compilations)if(US(e,t))return e}mt.getCompilingSchema=wg;function US(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function FS(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Si.call(this,t,e)}function Si(t,e){let r=this.opts.uriResolver.parse(e),n=(0,kt._getFullPath)(this.opts.uriResolver,r),o=(0,kt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Ml.call(this,r,t);let s=(0,kt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Si.call(this,t,i);return typeof a?.schema!="object"?void 0:Ml.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||ql.call(this,i),s===(0,kt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,kt.resolveUrl)(this.opts.uriResolver,o,u)),new Tn({schema:a,schemaId:c,root:t,baseId:o})}return Ml.call(this,r,i)}}mt.resolveSchema=Si;var BS=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Ml(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,bg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!BS.has(a)&&u&&(e=(0,kt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,bg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,kt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Si.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 $g=T((aj,HS)=>{HS.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 Ll=T((cj,Tg)=>{"use strict";var JS=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),kg=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),Dl=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),Sg=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),GS=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function Vl(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 KS=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function xg(t){return t.length=0,!0}function WS(t,e,r){if(t.length){let n=Vl(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function YS(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=WS;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=xg}else{o.push(u);continue}}return o.length&&(a===xg?r.zone=o.join(""):i?n.push(o.join("")):n.push(Vl(o))),r.address=n.join(""),r}function zg(t){if(QS(t,":")<2)return{host:t,isIPV6:!1};let e=YS(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 QS(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function XS(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 ez={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},tz=/[@/?#:]/g,rz=/[@/?#]/g;function Rg(t,e){let r=e?rz:tz;return r.lastIndex=0,t.replace(r,n=>ez[n])}function nz(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(Dl(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));e&&Sg(i)?r+=i:r+="%"+s,n+=2;continue}}r+=t[n]}return r}function oz(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(Dl(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&Sg(s)?e+=s:e+="%"+o,r+=2;continue}}GS(t[r])?e+=t[r]:e+=escape(t[r])}return e}function sz(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(Dl(n)){e+="%"+n.toUpperCase(),r+=2;continue}}e+=escape(t[r])}return e}function iz(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!kg(r)){let n=zg(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=Rg(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}Tg.exports={nonSimpleDomain:KS,recomposeAuthority:iz,reescapeHostDelimiters:Rg,normalizePercentEncoding:nz,normalizePathEncoding:oz,escapePreservingEscapes:sz,removeDotSegments:XS,isIPv4:kg,isUUID:JS,normalizeIPv6:zg,stringArrayToHexStripped:Vl}});var Ng=T((uj,Og)=>{"use strict";var{isUUID:az}=Ll(),cz=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,uz=["http","https","ws","wss","urn","urn:uuid"];function lz(t){return uz.indexOf(t)!==-1}function Ul(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 Pg(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Eg(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 dz(t){return t.secure=Ul(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function pz(t){if((t.port===(Ul(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 fz(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(cz);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=Fl(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function mz(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=Fl(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 hz(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!az(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function gz(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Ig={scheme:"http",domainHost:!0,parse:Pg,serialize:Eg},yz={scheme:"https",domainHost:Ig.domainHost,parse:Pg,serialize:Eg},Ri={scheme:"ws",domainHost:!0,parse:dz,serialize:pz},_z={scheme:"wss",domainHost:Ri.domainHost,parse:Ri.parse,serialize:Ri.serialize},vz={scheme:"urn",parse:fz,serialize:mz,skipNormalize:!0},bz={scheme:"urn:uuid",parse:hz,serialize:gz,skipNormalize:!0},Ti={http:Ig,https:yz,ws:Ri,wss:_z,urn:vz,"urn:uuid":bz};Object.setPrototypeOf(Ti,null);function Fl(t){return t&&(Ti[t]||Ti[t.toLowerCase()])||void 0}Og.exports={wsIsSecure:Ul,SCHEMES:Ti,isValidSchemeName:lz,getSchemeHandler:Fl}});var qg=T((lj,Pi)=>{"use strict";var{normalizeIPv6:wz,removeDotSegments:qo,recomposeAuthority:$z,normalizePercentEncoding:xz,normalizePathEncoding:kz,escapePreservingEscapes:Sz,reescapeHostDelimiters:zz,isIPv4:Rz,nonSimpleDomain:Tz}=Ll(),{SCHEMES:Pz,getSchemeHandler:Cg}=Ng();function Ez(t,e){return typeof t=="string"?t=Cz(t,e):typeof t=="object"&&(t=Pn(Fr(t,e),e)),t}function Iz(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=jg(Pn(t,n),Pn(e,n),n,!0);return n.skipEscape=!0,Fr(o,n)}function jg(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=qo(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=qo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=qo(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=qo(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 Oz(t,e,r){let n=Ag(t,r),o=Ag(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=xz(r.path):(r.path=Sz(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=qo(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 Nz=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Az(t,e){if(e[2]!==void 0&&t.path&&t.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof t.port=="number"&&(t.port<0||t.port>65535))return"URI port is malformed."}function Zg(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,s=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let i=t.match(Nz);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=Az(n,i);if(a!==void 0&&(n.error=n.error||a,o=!0),n.host)if(Rz(n.host)===!1){let l=wz(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&&Tz(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=zz(unescape(n.host),s))),n.path&&(n.path=kz(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 Zg(t,e).parsed}function Cz(t,e){return Mg(t,e).normalized}function Mg(t,e){let{parsed:r,malformedAuthorityOrPort:n}=Zg(t,e);return{normalized:n?t:Fr(r,e),malformedAuthorityOrPort:n}}function Ag(t,e){if(typeof t=="string"){let{normalized:r,malformedAuthorityOrPort:n}=Mg(t,e);return n?void 0:r}if(typeof t=="object")return Fr(t,e)}var Bl={SCHEMES:Pz,normalize:Ez,resolve:Iz,resolveComponent:jg,equal:Oz,serialize:Fr,parse:Pn};Pi.exports=Bl;Pi.exports.default=Bl;Pi.exports.fastUri=Bl});var Vg=T(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});var Dg=qg();Dg.code='require("ajv/dist/runtime/uri").default';Hl.default=Dg});var Kg=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 jz=Zo();Object.defineProperty(Ne,"KeywordCxt",{enumerable:!0,get:function(){return jz.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 Zz=ki(),Hg=Mo(),Mz=bl(),Do=zi(),qz=G(),Vo=Ao(),Ei=No(),Gl=ne(),Lg=$g(),Dz=Vg(),Jg=(t,e)=>new RegExp(t,e);Jg.code="new RegExp";var Vz=["removeAdditional","useDefaults","coerceTypes"],Lz=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Uz={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."},Fz={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Ug=200;function Bz(t){var e,r,n,o,s,i,a,c,u,l,d,p,f,m,h,g,v,_,w,z,Z,De,it,en,ya;let Jn=t.strict,_a=(e=t.code)===null||e===void 0?void 0:e.optimize,Rp=_a===!0||_a===void 0?1:_a||0,Tp=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Jg,Pv=(o=t.uriResolver)!==null&&o!==void 0?o:Dz.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:Jn)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Jn)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:Jn)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:Jn)!==null&&p!==void 0?p:"log",strictRequired:(m=(f=t.strictRequired)!==null&&f!==void 0?f:Jn)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:Rp,regExp:Tp}:{optimize:Rp,regExp:Tp},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Ug,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Ug,meta:(v=t.meta)!==null&&v!==void 0?v:!0,messages:(_=t.messages)!==null&&_!==void 0?_:!0,inlineRefs:(w=t.inlineRefs)!==null&&w!==void 0?w:!0,schemaId:(z=t.schemaId)!==null&&z!==void 0?z:"$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:(ya=t.int32range)!==null&&ya!==void 0?ya:!0,uriResolver:Pv}}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,...Bz(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new qz.ValueScope({scope:{},prefixes:Lz,es5:r,lines:n}),this.logger=Yz(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,Mz.getRules)(),Fg.call(this,Uz,e,"NOT SUPPORTED"),Fg.call(this,Fz,e,"DEPRECATED","warn"),this._metaOpts=Kz.call(this),e.formats&&Jz.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&Gz.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),Hz.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=Lg;n==="id"&&(o={...Lg},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 Hg.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,Vo.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=Bg.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Do.SchemaEnv({schema:{},schemaId:n});if(r=Do.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=Bg.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,Vo.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(Xz.call(this,n,r),!r)return(0,Gl.eachItem)(n,s=>Jl.call(this,s)),this;tR.call(this,r);let o={...r,type:(0,Ei.getJSONTypes)(r.type),schemaType:(0,Ei.getJSONTypes)(r.schemaType)};return(0,Gl.eachItem)(n,o.type.length===0?s=>Jl.call(this,s,o):s=>o.type.forEach(i=>Jl.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,Vo.normalizeId)(i||n);let u=Vo.getSchemaRefs.call(this,e,n);return c=new Do.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):Do.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{Do.compileSchema.call(this,e)}finally{this.opts=r}}};Lo.ValidationError=Zz.default;Lo.MissingRefError=Hg.default;Ne.default=Lo;function Fg(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 Bg(t){return t=(0,Vo.normalizeId)(t),this.schemas[t]||this.refs[t]}function Hz(){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 Jz(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function Gz(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 Kz(){let t={...this.opts};for(let e of Vz)delete t[e];return t}var Wz={log(){},warn(){},error(){}};function Yz(t){if(t===!1)return Wz;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 Qz=/^[a-z_$][a-z0-9_$:-]*$/i;function Xz(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(!Qz.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 Jl(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,Ei.getJSONTypes)(e.type),schemaType:(0,Ei.getJSONTypes)(e.schemaType)}};e.before?eR.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 eR(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 tR(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Gg(e)),t.validateSchema=this.compile(e,!0))}var rR={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Gg(t){return{anyOf:[t,rR]}}});var Wg=T(Kl=>{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});var nR={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Kl.default=nR});var ey=T(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});Br.callRef=Br.getValidate=void 0;var oR=Mo(),Yg=ft(),Xe=G(),In=Ft(),Qg=zi(),Ii=ne(),sR={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=Qg.resolveRef.call(c,u,o,r);if(l===void 0)throw new oR.default(n.opts.uriResolver,o,r);if(l instanceof Qg.SchemaEnv)return p(l);return f(l);function d(){if(s===u)return Oi(t,i,s,s.$async);let m=e.scopeValue("root",{ref:u});return Oi(t,(0,Xe._)`${m}.validate`,u,u.$async)}function p(m){let h=Xg(t,m);Oi(t,h,m,m.$async)}function f(m){let h=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,Xe.stringify)(m)}:{ref:m}),g=e.name("valid"),v=t.subschema({schema:m,dataTypes:[],schemaPath:Xe.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(v),t.ok(g)}}};function Xg(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Xe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Br.getValidate=Xg;function Oi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?In.default.this:Xe.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,Xe._)`await ${(0,Yg.callValidateCode)(t,e,u)}`),f(e),i||o.assign(m,!0)},h=>{o.if((0,Xe._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),p(h),i||o.assign(m,!1)}),t.ok(m)}function d(){t.result((0,Yg.callValidateCode)(t,e,u),()=>f(e),()=>p(e))}function p(m){let h=(0,Xe._)`${m}.errors`;o.assign(In.default.vErrors,(0,Xe._)`${In.default.vErrors} === null ? ${h} : ${In.default.vErrors}.concat(${h})`),o.assign(In.default.errors,(0,Xe._)`${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=Ii.mergeEvaluated.props(o,g.props,s.props));else{let v=o.var("props",(0,Xe._)`${m}.evaluated.props`);s.props=Ii.mergeEvaluated.props(o,v,s.props,Xe.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Ii.mergeEvaluated.items(o,g.items,s.items));else{let v=o.var("items",(0,Xe._)`${m}.evaluated.items`);s.items=Ii.mergeEvaluated.items(o,v,s.items,Xe.Name)}}}Br.callRef=Oi;Br.default=sR});var ty=T(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});var iR=Wg(),aR=ey(),cR=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",iR.default,aR.default];Wl.default=cR});var ry=T(Yl=>{"use strict";Object.defineProperty(Yl,"__esModule",{value:!0});var Ni=G(),lr=Ni.operators,Ai={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}},uR={message:({keyword:t,schemaCode:e})=>(0,Ni.str)`must be ${Ai[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ni._)`{comparison: ${Ai[t].okStr}, limit: ${e}}`},lR={keyword:Object.keys(Ai),type:"number",schemaType:"number",$data:!0,error:uR,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Ni._)`${r} ${Ai[e].fail} ${n} || isNaN(${r})`)}};Yl.default=lR});var ny=T(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});var Uo=G(),dR={message:({schemaCode:t})=>(0,Uo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Uo._)`{multipleOf: ${t}}`},pR={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:dR,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Uo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Uo._)`${i} !== parseInt(${i})`;t.fail$data((0,Uo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Ql.default=pR});var sy=T(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});function oy(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}Xl.default=oy;oy.code='require("ajv/dist/runtime/ucs2length").default'});var iy=T(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var Hr=G(),fR=ne(),mR=sy(),hR={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}}`},gR={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:hR,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,fR.useFunc)(t.gen,mR.default)}(${r})`;t.fail$data((0,Hr._)`${i} ${s} ${n}`)}};ed.default=gR});var ay=T(td=>{"use strict";Object.defineProperty(td,"__esModule",{value:!0});var yR=ft(),_R=ne(),On=G(),vR={message:({schemaCode:t})=>(0,On.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,On._)`{pattern: ${t}}`},bR={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:vR,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,_R.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,yR.usePattern)(t,o);t.fail$data((0,On._)`!${c}.test(${r})`)}}};td.default=bR});var cy=T(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});var Fo=G(),wR={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Fo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Fo._)`{limit: ${t}}`},$R={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:wR,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Fo.operators.GT:Fo.operators.LT;t.fail$data((0,Fo._)`Object.keys(${r}).length ${o} ${n}`)}};rd.default=$R});var uy=T(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var Bo=ft(),Ho=G(),xR=ne(),kR={message:({params:{missingProperty:t}})=>(0,Ho.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Ho._)`{missingProperty: ${t}}`},SR={keyword:"required",type:"object",schemaType:"array",$data:!0,error:kR,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,v=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,xR.checkStrictMode)(i,v,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Ho.nil,d);else for(let f of r)(0,Bo.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,Bo.checkMissingProp)(t,r,f)),(0,Bo.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,Bo.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function p(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,Bo.propertyInData)(e,o,f,a.ownProperties)),e.if((0,Ho.not)(m),()=>{t.error(),e.break()})},Ho.nil)}}};nd.default=SR});var ly=T(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var Jo=G(),zR={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Jo.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Jo._)`{limit: ${t}}`},RR={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:zR,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?Jo.operators.GT:Jo.operators.LT;t.fail$data((0,Jo._)`${r}.length ${o} ${n}`)}};od.default=RR});var Ci=T(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});var dy=Tl();dy.code='require("ajv/dist/runtime/equal").default';sd.default=dy});var py=T(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var id=No(),Ae=G(),TR=ne(),PR=Ci(),ER={message:({params:{i:t,j:e}})=>(0,Ae.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ae._)`{i: ${t}, j: ${e}}`},IR={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:ER,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,id.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ae._)`${i} === false`),t.ok(c);function l(){let m=e.let("i",(0,Ae._)`${r}.length`),h=e.let("j");t.setParams({i:m,j:h}),e.assign(c,!0),e.if((0,Ae._)`${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"),v=(0,id.checkDataTypes)(u,g,a.opts.strictNumbers,id.DataType.Wrong),_=e.const("indices",(0,Ae._)`{}`);e.for((0,Ae._)`;${m}--;`,()=>{e.let(g,(0,Ae._)`${r}[${m}]`),e.if(v,(0,Ae._)`continue`),u.length>1&&e.if((0,Ae._)`typeof ${g} == "string"`,(0,Ae._)`${g} += "_"`),e.if((0,Ae._)`typeof ${_}[${g}] == "number"`,()=>{e.assign(h,(0,Ae._)`${_}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ae._)`${_}[${g}] = ${m}`)})}function f(m,h){let g=(0,TR.useFunc)(e,PR.default),v=e.name("outer");e.label(v).for((0,Ae._)`;${m}--;`,()=>e.for((0,Ae._)`${h} = ${m}; ${h}--;`,()=>e.if((0,Ae._)`${g}(${r}[${m}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(v)})))}}};ad.default=IR});var fy=T(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});var cd=G(),OR=ne(),NR=Ci(),AR={message:"must be equal to constant",params:({schemaCode:t})=>(0,cd._)`{allowedValue: ${t}}`},CR={keyword:"const",$data:!0,error:AR,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,cd._)`!${(0,OR.useFunc)(e,NR.default)}(${r}, ${o})`):t.fail((0,cd._)`${s} !== ${r}`)}};ud.default=CR});var my=T(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});var Go=G(),jR=ne(),ZR=Ci(),MR={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Go._)`{allowedValues: ${t}}`},qR={keyword:"enum",schemaType:"array",$data:!0,error:MR,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,jR.useFunc)(e,ZR.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}`}}};ld.default=qR});var hy=T(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var DR=ry(),VR=ny(),LR=iy(),UR=ay(),FR=cy(),BR=uy(),HR=ly(),JR=py(),GR=fy(),KR=my(),WR=[DR.default,VR.default,LR.default,UR.default,FR.default,BR.default,HR.default,JR.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},GR.default,KR.default];dd.default=WR});var fd=T(Ko=>{"use strict";Object.defineProperty(Ko,"__esModule",{value:!0});Ko.validateAdditionalItems=void 0;var Jr=G(),pd=ne(),YR={message:({params:{len:t}})=>(0,Jr.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Jr._)`{limit: ${t}}`},QR={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:YR,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,pd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}gy(t,n)}};function gy(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,pd.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:pd.Type.Num},u),i.allErrors||r.if((0,Jr.not)(u),()=>r.break())})}}Ko.validateAdditionalItems=gy;Ko.default=QR});var md=T(Wo=>{"use strict";Object.defineProperty(Wo,"__esModule",{value:!0});Wo.validateTuple=void 0;var yy=G(),ji=ne(),XR=ft(),eT={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return _y(t,"additionalItems",e);r.items=!0,!(0,ji.alwaysValidSchema)(r,e)&&t.ok((0,XR.validateArray)(t))}};function _y(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=ji.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,yy._)`${s}.length`);r.forEach((d,p)=>{(0,ji.alwaysValidSchema)(a,d)||(n.if((0,yy._)`${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,ji.checkStrictMode)(a,g,p.strictTuples)}}}Wo.validateTuple=_y;Wo.default=eT});var vy=T(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var tT=md(),rT={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,tT.validateTuple)(t,"items")};hd.default=rT});var wy=T(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var by=G(),nT=ne(),oT=ft(),sT=fd(),iT={message:({params:{len:t}})=>(0,by.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,by._)`{limit: ${t}}`},aT={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:iT,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,nT.alwaysValidSchema)(n,e)&&(o?(0,sT.validateAdditionalItems)(t,o):t.ok((0,oT.validateArray)(t)))}};gd.default=aT});var $y=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var ht=G(),Zi=ne(),cT={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}}`},uT={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:cT,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,Zi.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Zi.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Zi.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,v=>{t.subschema({keyword:"contains",dataProp:v,dataPropType:Zi.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)))}}};yd.default=uT});var Sy=T(Nt=>{"use strict";Object.defineProperty(Nt,"__esModule",{value:!0});Nt.validateSchemaDeps=Nt.validatePropertyDeps=Nt.error=void 0;var _d=G(),lT=ne(),Yo=ft();Nt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,_d.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,_d._)`{property: ${t},
|
|
3
|
+
var Av=Object.create;var ba=Object.defineProperty;var Cv=Object.getOwnPropertyDescriptor;var jv=Object.getOwnPropertyNames;var Zv=Object.getPrototypeOf,Mv=Object.prototype.hasOwnProperty;var E=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),wa=(t,e)=>{for(var r in e)ba(t,r,{get:e[r],enumerable:!0})},qv=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of jv(e))!Mv.call(t,o)&&o!==r&&ba(t,o,{get:()=>e[o],enumerable:!(n=Cv(e,o))||n.enumerable});return t};var Np=(t,e,r)=>(r=t!=null?Av(Zv(t)):{},qv(e||!t||!t.__esModule?ba(r,"default",{value:t,enumerable:!0}):r,t));var To=E(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 zo=class{};se._CodeOrName=zo;se.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Mr=class extends zo{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=Mr;var ft=class extends zo{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 Mr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};se._Code=ft;se.nil=new ft("");function Th(t,...e){let r=[t[0]],n=0;for(;n<e.length;)tl(r,e[n]),r.push(t[++n]);return new ft(r)}se._=Th;var el=new ft("+");function Eh(t,...e){let r=[Ro(t[0])],n=0;for(;n<e.length;)r.push(el),tl(r,e[n]),r.push(el,Ro(t[++n]));return q0(r),new ft(r)}se.str=Eh;function tl(t,e){e instanceof ft?t.push(...e._items):e instanceof Mr?t.push(e):t.push(L0(e))}se.addCodeArg=tl;function q0(t){let e=1;for(;e<t.length-1;){if(t[e]===el){let r=D0(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function D0(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Mr||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 Mr))return`"${t}${e.slice(1)}`}function V0(t,e){return e.emptyStr()?t:t.emptyStr()?e:Eh`${t}${e}`}se.strConcat=V0;function L0(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Ro(Array.isArray(t)?t.join(","):t)}function U0(t){return new ft(Ro(t))}se.stringify=U0;function Ro(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}se.safeStringify=Ro;function F0(t){return typeof t=="string"&&se.IDENTIFIER.test(t)?new ft(`.${t}`):Th`[${t}]`}se.getProperty=F0;function B0(t){if(typeof t=="string"&&se.IDENTIFIER.test(t))return new ft(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}se.getEsmExportName=B0;function H0(t){return new ft(t.toString())}se.regexpCode=H0});var ol=E(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.ValueScope=Xe.ValueScopeName=Xe.Scope=Xe.varKinds=Xe.UsedValueState=void 0;var Ye=To(),rl=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},hi;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(hi||(Xe.UsedValueState=hi={}));Xe.varKinds={const:new Ye.Name("const"),let:new Ye.Name("let"),var:new Ye.Name("var")};var gi=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ye.Name?e:this.name(e)}name(e){return new Ye.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}}};Xe.Scope=gi;var yi=class extends Ye.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ye._)`.${new Ye.Name(r)}[${n}]`}};Xe.ValueScopeName=yi;var G0=(0,Ye._)`\n`,nl=class extends gi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?G0:Ye.nil}}get(){return this._scope}name(e){return new yi(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,Ye._)`${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=Ye.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,hi.Started);let l=r(u);if(l){let d=this.opts.es5?Xe.varKinds.var:Xe.varKinds.const;s=(0,Ye._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ye._)`${s}${l}${this.opts._n}`;else throw new rl(u);c.set(u,hi.Completed)})}return s}};Xe.ValueScope=nl});var K=E(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});W.or=W.and=W.not=W.CodeGen=W.operators=W.varKinds=W.ValueScopeName=W.ValueScope=W.Scope=W.Name=W.regexpCode=W.stringify=W.getProperty=W.nil=W.strConcat=W.str=W._=void 0;var re=To(),xt=ol(),or=To();Object.defineProperty(W,"_",{enumerable:!0,get:function(){return or._}});Object.defineProperty(W,"str",{enumerable:!0,get:function(){return or.str}});Object.defineProperty(W,"strConcat",{enumerable:!0,get:function(){return or.strConcat}});Object.defineProperty(W,"nil",{enumerable:!0,get:function(){return or.nil}});Object.defineProperty(W,"getProperty",{enumerable:!0,get:function(){return or.getProperty}});Object.defineProperty(W,"stringify",{enumerable:!0,get:function(){return or.stringify}});Object.defineProperty(W,"regexpCode",{enumerable:!0,get:function(){return or.regexpCode}});Object.defineProperty(W,"Name",{enumerable:!0,get:function(){return or.Name}});var wi=ol();Object.defineProperty(W,"Scope",{enumerable:!0,get:function(){return wi.Scope}});Object.defineProperty(W,"ValueScope",{enumerable:!0,get:function(){return wi.ValueScope}});Object.defineProperty(W,"ValueScopeName",{enumerable:!0,get:function(){return wi.ValueScopeName}});Object.defineProperty(W,"varKinds",{enumerable:!0,get:function(){return wi.varKinds}});W.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 Ut=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},sl=class extends Ut{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?xt.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=kn(this.rhs,e,r)),this}get names(){return this.rhs instanceof re._CodeOrName?this.rhs.names:{}}},_i=class extends Ut{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=kn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof re.Name?{}:{...this.lhs.names};return bi(e,this.rhs)}},il=class extends _i{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},al=class extends Ut{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},cl=class extends Ut{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},ul=class extends Ut{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},ll=class extends Ut{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=kn(this.code,e,r),this}get names(){return this.code instanceof re._CodeOrName?this.code.names:{}}},Eo=class extends Ut{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)||(J0(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Vr(e,r.names),{})}},Ft=class extends Eo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},dl=class extends Eo{},xn=class extends Ft{};xn.kind="else";var qr=class t extends Ft{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 xn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Ih(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=kn(this.condition,e,r),this}get names(){let e=super.names;return bi(e,this.condition),this.else&&Vr(e,this.else.names),e}};qr.kind="if";var Dr=class extends Ft{};Dr.kind="for";var pl=class extends Dr{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=kn(this.iteration,e,r),this}get names(){return Vr(super.names,this.iteration.names)}},fl=class extends Dr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?xt.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=bi(super.names,this.from);return bi(e,this.to)}},vi=class extends Dr{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=kn(this.iterable,e,r),this}get names(){return Vr(super.names,this.iterable.names)}},Io=class extends Ft{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)}};Io.kind="func";var Po=class extends Eo{render(e){return"return "+super.render(e)}};Po.kind="return";var ml=class extends Ft{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&&Vr(e,this.catch.names),this.finally&&Vr(e,this.finally.names),e}},Oo=class extends Ft{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Oo.kind="catch";var No=class extends Ft{render(e){return"finally"+super.render(e)}};No.kind="finally";var hl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
4
|
+
`:""},this._extScope=e,this._scope=new xt.Scope({parent:e}),this._nodes=[new dl]}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 sl(e,s,n)),s}const(e,r,n){return this._def(xt.varKinds.const,e,r,n)}let(e,r,n){return this._def(xt.varKinds.let,e,r,n)}var(e,r,n){return this._def(xt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new _i(e,r,n))}add(e,r){return this._leafNode(new il(e,W.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==re.nil&&this._leafNode(new ll(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 qr(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 qr(e))}else(){return this._elseNode(new xn)}endIf(){return this._endBlockNode(qr,xn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new pl(e),r)}forRange(e,r,n,o,s=this.opts.es5?xt.varKinds.var:xt.varKinds.let){let i=this._scope.toName(e);return this._for(new fl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=xt.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 vi("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?xt.varKinds.var:xt.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 vi("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Dr)}label(e){return this._leafNode(new al(e))}break(e){return this._leafNode(new cl(e))}return(e){let r=new Po;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Po)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new ml;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Oo(s),r(s)}return n&&(this._currNode=o.finally=new No,this.code(n)),this._endBlockNode(Oo,No)}throw(e){return this._leafNode(new ul(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 Io(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Io)}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 qr))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}};W.CodeGen=hl;function Vr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function bi(t,e){return e instanceof re._CodeOrName?Vr(t,e.names):t}function kn(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 J0(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Ih(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,re._)`!${gl(t)}`}W.not=Ih;var K0=Ph(W.operators.AND);function W0(...t){return t.reduce(K0)}W.and=W0;var Y0=Ph(W.operators.OR);function X0(...t){return t.reduce(Y0)}W.or=X0;function Ph(t){return(e,r)=>e===re.nil?r:r===re.nil?e:(0,re._)`${gl(e)} ${t} ${gl(r)}`}function gl(t){return t instanceof re.Name?t:(0,re._)`(${t})`}});var ne=E(Y=>{"use strict";Object.defineProperty(Y,"__esModule",{value:!0});Y.checkStrictMode=Y.getErrorPath=Y.Type=Y.useFunc=Y.setEvaluated=Y.evaluatedPropsToName=Y.mergeEvaluated=Y.eachItem=Y.unescapeJsonPointer=Y.escapeJsonPointer=Y.escapeFragment=Y.unescapeFragment=Y.schemaRefOrVal=Y.schemaHasRulesButRef=Y.schemaHasRules=Y.checkUnknownRules=Y.alwaysValidSchema=Y.toHash=void 0;var le=K(),Q0=To();function ek(t){let e={};for(let r of t)e[r]=!0;return e}Y.toHash=ek;function tk(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Ah(t,e),!Ch(e,t.self.RULES.all))}Y.alwaysValidSchema=tk;function Ah(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]||Mh(t,`unknown keyword: "${s}"`)}Y.checkUnknownRules=Ah;function Ch(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}Y.schemaHasRules=Ch;function rk(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}Y.schemaHasRulesButRef=rk;function nk({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,le._)`${r}`}return(0,le._)`${t}${e}${(0,le.getProperty)(n)}`}Y.schemaRefOrVal=nk;function ok(t){return jh(decodeURIComponent(t))}Y.unescapeFragment=ok;function sk(t){return encodeURIComponent(_l(t))}Y.escapeFragment=sk;function _l(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}Y.escapeJsonPointer=_l;function jh(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}Y.unescapeJsonPointer=jh;function ik(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}Y.eachItem=ik;function Oh({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof le.Name?(s instanceof le.Name?t(o,s,i):e(o,s,i),i):s instanceof le.Name?(e(o,i,s),s):r(s,i);return a===le.Name&&!(c instanceof le.Name)?n(o,c):c}}Y.mergeEvaluated={props:Oh({mergeNames:(t,e,r)=>t.if((0,le._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,le._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,le._)`${r} || {}`).code((0,le._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,le._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,le._)`${r} || {}`),vl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Zh}),items:Oh({mergeNames:(t,e,r)=>t.if((0,le._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,le._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,le._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,le._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Zh(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,le._)`{}`);return e!==void 0&&vl(t,r,e),r}Y.evaluatedPropsToName=Zh;function vl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,le._)`${e}${(0,le.getProperty)(n)}`,!0))}Y.setEvaluated=vl;var Nh={};function ak(t,e){return t.scopeValue("func",{ref:e,code:Nh[e.code]||(Nh[e.code]=new Q0._Code(e.code))})}Y.useFunc=ak;var yl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(yl||(Y.Type=yl={}));function ck(t,e,r){if(t instanceof le.Name){let n=e===yl.Num;return r?n?(0,le._)`"[" + ${t} + "]"`:(0,le._)`"['" + ${t} + "']"`:n?(0,le._)`"/" + ${t}`:(0,le._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,le.getProperty)(t).toString():"/"+_l(t)}Y.getErrorPath=ck;function Mh(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}Y.checkStrictMode=Mh});var Bt=E(bl=>{"use strict";Object.defineProperty(bl,"__esModule",{value:!0});var Me=K(),uk={data:new Me.Name("data"),valCxt:new Me.Name("valCxt"),instancePath:new Me.Name("instancePath"),parentData:new Me.Name("parentData"),parentDataProperty:new Me.Name("parentDataProperty"),rootData:new Me.Name("rootData"),dynamicAnchors:new Me.Name("dynamicAnchors"),vErrors:new Me.Name("vErrors"),errors:new Me.Name("errors"),this:new Me.Name("this"),self:new Me.Name("self"),scope:new Me.Name("scope"),json:new Me.Name("json"),jsonPos:new Me.Name("jsonPos"),jsonLen:new Me.Name("jsonLen"),jsonPart:new Me.Name("jsonPart")};bl.default=uk});var Ao=E(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.extendErrors=qe.resetErrorsCount=qe.reportExtraError=qe.reportError=qe.keyword$DataError=qe.keywordError=void 0;var oe=K(),$i=ne(),Fe=Bt();qe.keywordError={message:({keyword:t})=>(0,oe.str)`must pass "${t}" keyword validation`};qe.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 lk(t,e=qe.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Vh(t,e,r);n??(i||a)?qh(s,c):Dh(o,(0,oe._)`[${c}]`)}qe.reportError=lk;function dk(t,e=qe.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Vh(t,e,r);qh(o,a),s||i||Dh(n,Fe.default.vErrors)}qe.reportExtraError=dk;function pk(t,e){t.assign(Fe.default.errors,e),t.if((0,oe._)`${Fe.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,oe._)`${Fe.default.vErrors}.length`,e),()=>t.assign(Fe.default.vErrors,null)))}qe.resetErrorsCount=pk;function fk({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,Fe.default.errors,a=>{t.const(i,(0,oe._)`${Fe.default.vErrors}[${a}]`),t.if((0,oe._)`${i}.instancePath === undefined`,()=>t.assign((0,oe._)`${i}.instancePath`,(0,oe.strConcat)(Fe.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))})}qe.extendErrors=fk;function qh(t,e){let r=t.const("err",e);t.if((0,oe._)`${Fe.default.vErrors} === null`,()=>t.assign(Fe.default.vErrors,(0,oe._)`[${r}]`),(0,oe._)`${Fe.default.vErrors}.push(${r})`),t.code((0,oe._)`${Fe.default.errors}++`)}function Dh(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 Vh(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,oe._)`{}`:mk(t,e,r)}function mk(t,e,r={}){let{gen:n,it:o}=t,s=[hk(o,r),gk(t,r)];return yk(t,e,s),n.object(...s)}function hk({errorPath:t},{instancePath:e}){let r=e?(0,oe.str)`${t}${(0,$i.getErrorPath)(e,$i.Type.Str)}`:t;return[Fe.default.instancePath,(0,oe.strConcat)(Fe.default.instancePath,r)]}function gk({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 yk(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}`],[Fe.default.data,s]),u&&n.push([Lr.propertyName,u])}});var Uh=E(Sn=>{"use strict";Object.defineProperty(Sn,"__esModule",{value:!0});Sn.boolOrEmptySchema=Sn.topBoolOrEmptySchema=void 0;var _k=Ao(),vk=K(),bk=Bt(),wk={message:"boolean schema is false"};function $k(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Lh(t,!1):typeof r=="object"&&r.$async===!0?e.return(bk.default.data):(e.assign((0,vk._)`${n}.errors`,null),e.return(!0))}Sn.topBoolOrEmptySchema=$k;function xk(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Lh(t)):r.var(e,!0)}Sn.boolOrEmptySchema=xk;function Lh(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,_k.reportError)(o,wk,void 0,e)}});var wl=E(zn=>{"use strict";Object.defineProperty(zn,"__esModule",{value:!0});zn.getRules=zn.isJSONType=void 0;var kk=["string","number","integer","boolean","null","object","array"],Sk=new Set(kk);function zk(t){return typeof t=="string"&&Sk.has(t)}zn.isJSONType=zk;function Rk(){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:{}}}zn.getRules=Rk});var $l=E(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.shouldUseRule=sr.shouldUseGroup=sr.schemaHasRulesForType=void 0;function Tk({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Fh(t,n)}sr.schemaHasRulesForType=Tk;function Fh(t,e){return e.rules.some(r=>Bh(t,r))}sr.shouldUseGroup=Fh;function Bh(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=Bh});var Co=E(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.reportTypeError=De.checkDataTypes=De.checkDataType=De.coerceAndCheckDataType=De.getJSONTypes=De.getSchemaTypes=De.DataType=void 0;var Ek=wl(),Ik=$l(),Pk=Ao(),G=K(),Hh=ne(),Rn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Rn||(De.DataType=Rn={}));function Ok(t){let e=Gh(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}De.getSchemaTypes=Ok;function Gh(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(Ek.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}De.getJSONTypes=Gh;function Nk(t,e){let{gen:r,data:n,opts:o}=t,s=Ak(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,Ik.schemaHasRulesForType)(t,e[0]));if(i){let a=kl(e,n,o.strictNumbers,Rn.Wrong);r.if(a,()=>{s.length?Ck(t,e,s):Sl(t)})}return i}De.coerceAndCheckDataType=Nk;var Jh=new Set(["string","number","integer","boolean","null"]);function Ak(t,e){return e?t.filter(r=>Jh.has(r)||e==="array"&&r==="array"):[]}function Ck(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,G._)`typeof ${o}`),a=n.let("coerced",(0,G._)`undefined`);s.coerceTypes==="array"&&n.if((0,G._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,G._)`${o}[0]`).assign(i,(0,G._)`typeof ${o}`).if(kl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,G._)`${a} !== undefined`);for(let u of r)(Jh.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Sl(t),n.endIf(),n.if((0,G._)`${a} !== undefined`,()=>{n.assign(o,a),jk(t,a)});function c(u){switch(u){case"string":n.elseIf((0,G._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,G._)`"" + ${o}`).elseIf((0,G._)`${o} === null`).assign(a,(0,G._)`""`);return;case"number":n.elseIf((0,G._)`${i} == "boolean" || ${o} === null
|
|
5
|
+
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,G._)`+${o}`);return;case"integer":n.elseIf((0,G._)`${i} === "boolean" || ${o} === null
|
|
6
|
+
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,G._)`+${o}`);return;case"boolean":n.elseIf((0,G._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,G._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,G._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,G._)`${i} === "string" || ${i} === "number"
|
|
7
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,G._)`[${o}]`)}}}function jk({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,G._)`${e} !== undefined`,()=>t.assign((0,G._)`${e}[${r}]`,n))}function xl(t,e,r,n=Rn.Correct){let o=n===Rn.Correct?G.operators.EQ:G.operators.NEQ,s;switch(t){case"null":return(0,G._)`${e} ${o} null`;case"array":s=(0,G._)`Array.isArray(${e})`;break;case"object":s=(0,G._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,G._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,G._)`typeof ${e} ${o} ${t}`}return n===Rn.Correct?s:(0,G.not)(s);function i(a=G.nil){return(0,G.and)((0,G._)`typeof ${e} == "number"`,a,r?(0,G._)`isFinite(${e})`:G.nil)}}De.checkDataType=xl;function kl(t,e,r,n){if(t.length===1)return xl(t[0],e,r,n);let o,s=(0,Hh.toHash)(t);if(s.array&&s.object){let i=(0,G._)`typeof ${e} != "object"`;o=s.null?i:(0,G._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=G.nil;s.number&&delete s.integer;for(let i in s)o=(0,G.and)(o,xl(i,e,r,n));return o}De.checkDataTypes=kl;var Zk={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,G._)`{type: ${t}}`:(0,G._)`{type: ${e}}`};function Sl(t){let e=Mk(t);(0,Pk.reportError)(e,Zk)}De.reportTypeError=Sl;function Mk(t){let{gen:e,data:r,schema:n}=t,o=(0,Hh.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Wh=E(xi=>{"use strict";Object.defineProperty(xi,"__esModule",{value:!0});xi.assignDefaults=void 0;var Tn=K(),qk=ne();function Dk(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Kh(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Kh(t,s,o.default))}xi.assignDefaults=Dk;function Kh(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Tn._)`${s}${(0,Tn.getProperty)(e)}`;if(o){(0,qk.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Tn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Tn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Tn._)`${a} = ${(0,Tn.stringify)(r)}`)}});var mt=E(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.validateUnion=ue.validateArray=ue.usePattern=ue.callValidateCode=ue.schemaProperties=ue.allSchemaProperties=ue.noPropertyInData=ue.propertyInData=ue.isOwnProperty=ue.hasPropFunc=ue.reportMissingProp=ue.checkMissingProp=ue.checkReportMissingProp=void 0;var ge=K(),zl=ne(),ir=Bt(),Vk=ne();function Lk(t,e){let{gen:r,data:n,it:o}=t;r.if(Tl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ge._)`${e}`},!0),t.error()})}ue.checkReportMissingProp=Lk;function Uk({gen:t,data:e,it:{opts:r}},n,o){return(0,ge.or)(...n.map(s=>(0,ge.and)(Tl(t,e,s,r.ownProperties),(0,ge._)`${o} = ${s}`)))}ue.checkMissingProp=Uk;function Fk(t,e){t.setParams({missingProperty:e},!0),t.error()}ue.reportMissingProp=Fk;function Yh(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ge._)`Object.prototype.hasOwnProperty`})}ue.hasPropFunc=Yh;function Rl(t,e,r){return(0,ge._)`${Yh(t)}.call(${e}, ${r})`}ue.isOwnProperty=Rl;function Bk(t,e,r,n){let o=(0,ge._)`${e}${(0,ge.getProperty)(r)} !== undefined`;return n?(0,ge._)`${o} && ${Rl(t,e,r)}`:o}ue.propertyInData=Bk;function Tl(t,e,r,n){let o=(0,ge._)`${e}${(0,ge.getProperty)(r)} === undefined`;return n?(0,ge.or)(o,(0,ge.not)(Rl(t,e,r))):o}ue.noPropertyInData=Tl;function Xh(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ue.allSchemaProperties=Xh;function Hk(t,e){return Xh(e).filter(r=>!(0,zl.alwaysValidSchema)(t,e[r]))}ue.schemaProperties=Hk;function Gk({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,ge._)`${t}, ${e}, ${n}${o}`:e,d=[[ir.default.instancePath,(0,ge.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,ge._)`${l}, ${r.object(...d)}`;return c!==ge.nil?(0,ge._)`${a}.call(${c}, ${p})`:(0,ge._)`${a}(${p})`}ue.callValidateCode=Gk;var Jk=(0,ge._)`new RegExp`;function Kk({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,ge._)`${o.code==="new RegExp"?Jk:(0,Vk.useFunc)(t,o)}(${r}, ${n})`})}ue.usePattern=Kk;function Wk(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,ge._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:zl.Type.Num},s),e.if((0,ge.not)(s),a)})}}ue.validateArray=Wk;function Yk(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,zl.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,ge._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,ge.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}ue.validateUnion=Yk});var tg=E(Ot=>{"use strict";Object.defineProperty(Ot,"__esModule",{value:!0});Ot.validateKeywordUsage=Ot.validSchemaType=Ot.funcKeywordCode=Ot.macroKeywordCode=void 0;var Be=K(),Ur=Bt(),Xk=mt(),Qk=Ao();function eS(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=eg(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Be.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Ot.macroKeywordCode=eS;function tS(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;nS(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=eg(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&&Qh(t),g(()=>t.error());else{let v=e.async?f():m();e.modifying&&Qh(t),g(()=>rS(t,v))}}function f(){let v=n.let("ruleErrs",null);return n.try(()=>h((0,Be._)`await `),y=>n.assign(d,!1).if((0,Be._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(v,(0,Be._)`${y}.errors`),()=>n.throw(y))),v}function m(){let v=(0,Be._)`${l}.errors`;return n.assign(v,null),h(Be.nil),v}function h(v=e.async?(0,Be._)`await `:Be.nil){let y=c.opts.passContext?Ur.default.this:Ur.default.self,$=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Be._)`${v}${(0,Xk.callValidateCode)(t,l,y,$)}`,e.modifying)}function g(v){var y;n.if((0,Be.not)((y=e.valid)!==null&&y!==void 0?y:d),v)}}Ot.funcKeywordCode=tS;function Qh(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Be._)`${n.parentData}[${n.parentDataProperty}]`))}function rS(t,e){let{gen:r}=t;r.if((0,Be._)`Array.isArray(${e})`,()=>{r.assign(Ur.default.vErrors,(0,Be._)`${Ur.default.vErrors} === null ? ${e} : ${Ur.default.vErrors}.concat(${e})`).assign(Ur.default.errors,(0,Be._)`${Ur.default.vErrors}.length`),(0,Qk.extendErrors)(t)},()=>t.error())}function nS({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function eg(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,Be.stringify)(r)})}function oS(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")}Ot.validSchemaType=oS;function sS({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)}}Ot.validateKeywordUsage=sS});var ng=E(ar=>{"use strict";Object.defineProperty(ar,"__esModule",{value:!0});ar.extendSubschemaMode=ar.extendSubschemaData=ar.getSubschema=void 0;var Nt=K(),rg=ne();function iS(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,Nt._)`${t.schemaPath}${(0,Nt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Nt._)`${t.schemaPath}${(0,Nt.getProperty)(e)}${(0,Nt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,rg.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=iS;function aS(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,Nt._)`${e.data}${(0,Nt.getProperty)(r)}`,!0);c(p),t.errorPath=(0,Nt.str)`${u}${(0,rg.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Nt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Nt.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=aS;function cS(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=cS});var El=E((sj,og)=>{"use strict";og.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 ig=E((ij,sg)=>{"use strict";var cr=sg.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(){};ki(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 ki(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++)ki(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)ki(t,e,r,d[f],o+"/"+l+"/"+uS(f),s,o,l,n,f)}else(l in cr.keywords||t.allKeys&&!(l in cr.skipKeywords))&&ki(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function uS(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var jo=E(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.getSchemaRefs=Qe.resolveUrl=Qe.normalizeId=Qe._getFullPath=Qe.getFullPath=Qe.inlineRef=void 0;var lS=ne(),dS=El(),pS=ig(),fS=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function mS(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Il(t):e?ag(t)<=e:!1}Qe.inlineRef=mS;var hS=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Il(t){for(let e in t){if(hS.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Il)||typeof r=="object"&&Il(r))return!0}return!1}function ag(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!fS.has(r)&&(typeof t[r]=="object"&&(0,lS.eachItem)(t[r],n=>e+=ag(n)),e===1/0))return 1/0}return e}function cg(t,e="",r){r!==!1&&(e=En(e));let n=t.parse(e);return ug(t,n)}Qe.getFullPath=cg;function ug(t,e){return t.serialize(e).split("#")[0]+"#"}Qe._getFullPath=ug;var gS=/#\/?$/;function En(t){return t?t.replace(gS,""):""}Qe.normalizeId=En;function yS(t,e,r){return r=En(r),t.resolve(e,r)}Qe.resolveUrl=yS;var _S=/^[a-z_][-a-z0-9._]*$/i;function vS(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=En(t[r]||e),s={"":o},i=cg(n,o,!1),a={},c=new Set;return pS(t,{allKeys:!0},(d,p,f,m)=>{if(m===void 0)return;let h=i+p,g=s[m];typeof d[r]=="string"&&(g=v.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[p]=g;function v($){let z=this.opts.uriResolver.resolve;if($=En(g?z(g,$):$),c.has($))throw l($);c.add($);let M=this.refs[$];return typeof M=="string"&&(M=this.refs[M]),typeof M=="object"?u(d,M.schema,$):$!==En(h)&&($[0]==="#"?(u(d,a[$],$),a[$]=d):this.refs[$]=h),$}function y($){if(typeof $=="string"){if(!_S.test($))throw new Error(`invalid anchor "${$}"`);v.call(this,`#${$}`)}}}),a;function u(d,p,f){if(p!==void 0&&!dS(d,p))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Qe.getSchemaRefs=vS});var qo=E(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.getData=ur.KeywordCxt=ur.validateFunctionCode=void 0;var mg=Uh(),lg=Co(),Ol=$l(),Si=Co(),bS=Wh(),Mo=tg(),Pl=ng(),C=K(),U=Bt(),wS=jo(),Ht=ne(),Zo=Ao();function $S(t){if(yg(t)&&(_g(t),gg(t))){SS(t);return}hg(t,()=>(0,mg.topBoolOrEmptySchema)(t))}ur.validateFunctionCode=$S;function hg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,C._)`${U.default.data}, ${U.default.valCxt}`,n.$async,()=>{t.code((0,C._)`"use strict"; ${dg(r,o)}`),kS(t,o),t.code(s)}):t.func(e,(0,C._)`${U.default.data}, ${xS(o)}`,n.$async,()=>t.code(dg(r,o)).code(s))}function xS(t){return(0,C._)`{${U.default.instancePath}="", ${U.default.parentData}, ${U.default.parentDataProperty}, ${U.default.rootData}=${U.default.data}${t.dynamicRef?(0,C._)`, ${U.default.dynamicAnchors}={}`:C.nil}}={}`}function kS(t,e){t.if(U.default.valCxt,()=>{t.var(U.default.instancePath,(0,C._)`${U.default.valCxt}.${U.default.instancePath}`),t.var(U.default.parentData,(0,C._)`${U.default.valCxt}.${U.default.parentData}`),t.var(U.default.parentDataProperty,(0,C._)`${U.default.valCxt}.${U.default.parentDataProperty}`),t.var(U.default.rootData,(0,C._)`${U.default.valCxt}.${U.default.rootData}`),e.dynamicRef&&t.var(U.default.dynamicAnchors,(0,C._)`${U.default.valCxt}.${U.default.dynamicAnchors}`)},()=>{t.var(U.default.instancePath,(0,C._)`""`),t.var(U.default.parentData,(0,C._)`undefined`),t.var(U.default.parentDataProperty,(0,C._)`undefined`),t.var(U.default.rootData,U.default.data),e.dynamicRef&&t.var(U.default.dynamicAnchors,(0,C._)`{}`)})}function SS(t){let{schema:e,opts:r,gen:n}=t;hg(t,()=>{r.$comment&&e.$comment&&bg(t),IS(t),n.let(U.default.vErrors,null),n.let(U.default.errors,0),r.unevaluated&&zS(t),vg(t),NS(t)})}function zS(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 dg(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 RS(t,e){if(yg(t)&&(_g(t),gg(t))){TS(t,e);return}(0,mg.boolOrEmptySchema)(t,e)}function gg({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 yg(t){return typeof t.schema!="boolean"}function TS(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&bg(t),PS(t),OS(t);let s=n.const("_errs",U.default.errors);vg(t,s),n.var(e,(0,C._)`${s} === ${U.default.errors}`)}function _g(t){(0,Ht.checkUnknownRules)(t),ES(t)}function vg(t,e){if(t.opts.jtd)return pg(t,[],!1,e);let r=(0,lg.getSchemaTypes)(t.schema),n=(0,lg.coerceAndCheckDataType)(t,r);pg(t,r,!n,e)}function ES(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ht.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function IS(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ht.checkStrictMode)(t,"default is ignored in the schema root")}function PS(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,wS.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function OS(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function bg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,C._)`${U.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._)`${U.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function NS(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,C._)`${U.default.errors} === 0`,()=>e.return(U.default.data),()=>e.throw((0,C._)`new ${o}(${U.default.vErrors})`)):(e.assign((0,C._)`${n}.errors`,U.default.vErrors),s.unevaluated&&AS(t),e.return((0,C._)`${U.default.errors} === 0`))}function AS({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 pg(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,Ht.schemaHasRulesButRef)(s,l))){o.block(()=>$g(t,"$ref",l.all.$ref.definition));return}c.jtd||CS(t,e),o.block(()=>{for(let p of l.rules)d(p);d(l.post)});function d(p){(0,Ol.shouldUseGroup)(s,p)&&(p.type?(o.if((0,Si.checkDataType)(p.type,i,c.strictNumbers)),fg(t,p),e.length===1&&e[0]===p.type&&r&&(o.else(),(0,Si.reportTypeError)(t)),o.endIf()):fg(t,p),a||o.if((0,C._)`${U.default.errors} === ${n||0}`))}}function fg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,bS.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Ol.shouldUseRule)(n,s)&&$g(t,s.keyword,s.definition,e.type)})}function CS(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(jS(t,e),t.opts.allowUnionTypes||ZS(t,e),MS(t,t.dataTypes))}function jS(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{wg(t.dataTypes,r)||Nl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),DS(t,e)}}function ZS(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Nl(t,"use allowUnionTypes to allow union type keyword")}function MS(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Ol.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>qS(e,i))&&Nl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function qS(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function wg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function DS(t,e){let r=[];for(let n of t.dataTypes)wg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Nl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ht.checkStrictMode)(t,e,t.opts.strictTypes)}var zi=class{constructor(e,r,n){if((0,Mo.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,Ht.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",xg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Mo.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",U.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?Zo.reportExtraError:Zo.reportError)(this,this.def.error,r)}$dataError(){(0,Zo.reportError)(this,this.def.$dataError||Zo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Zo.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,Si.checkDataTypes)(c,r,s.opts.strictNumbers,Si.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 RS(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ht.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ht.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=zi;function $g(t,e,r,n){let o=new zi(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Mo.funcKeywordCode)(o,r):"macro"in r?(0,Mo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Mo.funcKeywordCode)(o,r)}var VS=/^\/(?:[^~]|~0|~1)*$/,LS=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function xg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return U.default.rootData;if(t[0]==="/"){if(!VS.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=U.default.rootData}else{let u=LS.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,Ht.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=xg});var Ri=E(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});var Al=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Cl.default=Al});var Do=E(Ml=>{"use strict";Object.defineProperty(Ml,"__esModule",{value:!0});var jl=jo(),Zl=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,jl.resolveUrl)(e,r,n),this.missingSchema=(0,jl.normalizeId)((0,jl.getFullPath)(e,this.missingRef))}};Ml.default=Zl});var Ei=E(ht=>{"use strict";Object.defineProperty(ht,"__esModule",{value:!0});ht.resolveSchema=ht.getCompilingSchema=ht.resolveRef=ht.compileSchema=ht.SchemaEnv=void 0;var kt=K(),US=Ri(),Fr=Bt(),St=jo(),kg=ne(),FS=qo(),In=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,St.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ht.SchemaEnv=In;function Dl(t){let e=Sg.call(this,t);if(e)return e;let r=(0,St.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new kt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:US.default,code:(0,kt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Fr.default.data,parentData:Fr.default.parentData,parentDataProperty:Fr.default.parentDataProperty,dataNames:[Fr.default.data],dataPathArr:[kt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,kt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:kt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,kt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,FS.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Fr.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let f=new Function(`${Fr.default.self}`,`${Fr.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 kt.Name?void 0:m,items:h instanceof kt.Name?void 0:h,dynamicProps:m instanceof kt.Name,dynamicItems:h instanceof kt.Name},f.source&&(f.source.evaluated=(0,kt.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)}}ht.compileSchema=Dl;function BS(t,e,r){var n;r=(0,St.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=JS.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 In({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=HS.call(this,s)}ht.resolveRef=BS;function HS(t){return(0,St.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Dl.call(this,t)}function Sg(t){for(let e of this._compilations)if(GS(e,t))return e}ht.getCompilingSchema=Sg;function GS(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function JS(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Ti.call(this,t,e)}function Ti(t,e){let r=this.opts.uriResolver.parse(e),n=(0,St._getFullPath)(this.opts.uriResolver,r),o=(0,St.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return ql.call(this,r,t);let s=(0,St.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Ti.call(this,t,i);return typeof a?.schema!="object"?void 0:ql.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Dl.call(this,i),s===(0,St.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,St.resolveUrl)(this.opts.uriResolver,o,u)),new In({schema:a,schemaId:c,root:t,baseId:o})}return ql.call(this,r,i)}}ht.resolveSchema=Ti;var KS=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function ql(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,kg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!KS.has(a)&&u&&(e=(0,St.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,kg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,St.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Ti.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new In({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var zg=E((pj,WS)=>{WS.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 Ul=E((fj,Og)=>{"use strict";var YS=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Tg=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),Vl=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),Eg=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),XS=RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);function Ll(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 QS=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Rg(t){return t.length=0,!0}function ez(t,e,r){if(t.length){let n=Ll(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function tz(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=ez;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=Rg}else{o.push(u);continue}}return o.length&&(a===Rg?r.zone=o.join(""):i?n.push(o.join("")):n.push(Ll(o))),r.address=n.join(""),r}function Ig(t){if(rz(t,":")<2)return{host:t,isIPV6:!1};let e=tz(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 rz(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function nz(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 oz={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},sz=/[@/?#:]/g,iz=/[@/?#]/g;function Pg(t,e){let r=e?iz:sz;return r.lastIndex=0,t.replace(r,n=>oz[n])}function az(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(Vl(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));e&&Eg(i)?r+=i:r+="%"+s,n+=2;continue}}r+=t[n]}return r}function cz(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(Vl(n)){let o=n.toUpperCase(),s=String.fromCharCode(parseInt(o,16));s!=="."&&Eg(s)?e+=s:e+="%"+o,r+=2;continue}}XS(t[r])?e+=t[r]:e+=escape(t[r])}return e}function uz(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(Vl(n)){e+="%"+n.toUpperCase(),r+=2;continue}}e+=escape(t[r])}return e}function lz(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!Tg(r)){let n=Ig(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=Pg(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}Og.exports={nonSimpleDomain:QS,recomposeAuthority:lz,reescapeHostDelimiters:Pg,normalizePercentEncoding:az,normalizePathEncoding:cz,escapePreservingEscapes:uz,removeDotSegments:nz,isIPv4:Tg,isUUID:YS,normalizeIPv6:Ig,stringArrayToHexStripped:Ll}});var Zg=E((mj,jg)=>{"use strict";var{isUUID:dz}=Ul(),pz=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,fz=["http","https","ws","wss","urn","urn:uuid"];function mz(t){return fz.indexOf(t)!==-1}function Fl(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 Ng(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Ag(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 hz(t){return t.secure=Fl(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function gz(t){if((t.port===(Fl(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 yz(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(pz);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=Bl(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function _z(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=Bl(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 vz(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!dz(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function bz(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var Cg={scheme:"http",domainHost:!0,parse:Ng,serialize:Ag},wz={scheme:"https",domainHost:Cg.domainHost,parse:Ng,serialize:Ag},Ii={scheme:"ws",domainHost:!0,parse:hz,serialize:gz},$z={scheme:"wss",domainHost:Ii.domainHost,parse:Ii.parse,serialize:Ii.serialize},xz={scheme:"urn",parse:yz,serialize:_z,skipNormalize:!0},kz={scheme:"urn:uuid",parse:vz,serialize:bz,skipNormalize:!0},Pi={http:Cg,https:wz,ws:Ii,wss:$z,urn:xz,"urn:uuid":kz};Object.setPrototypeOf(Pi,null);function Bl(t){return t&&(Pi[t]||Pi[t.toLowerCase()])||void 0}jg.exports={wsIsSecure:Fl,SCHEMES:Pi,isValidSchemeName:mz,getSchemeHandler:Bl}});var Ug=E((hj,Oi)=>{"use strict";var{normalizeIPv6:Sz,removeDotSegments:Vo,recomposeAuthority:zz,normalizePercentEncoding:Rz,normalizePathEncoding:Tz,escapePreservingEscapes:Ez,reescapeHostDelimiters:Iz,isIPv4:Pz,nonSimpleDomain:Oz}=Ul(),{SCHEMES:Nz,getSchemeHandler:qg}=Zg();function Az(t,e){return typeof t=="string"?t=Dz(t,e):typeof t=="object"&&(t=Pn(Br(t,e),e)),t}function Cz(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Dg(Pn(t,n),Pn(e,n),n,!0);return n.skipEscape=!0,Br(o,n)}function Dg(t,e,r,n){let o={};return n||(t=Pn(Br(t,r),r),e=Pn(Br(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=Vo(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=Vo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Vo(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=Vo(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 jz(t,e,r){let n=Mg(t,r),o=Mg(e,r);return n!==void 0&&o!==void 0&&n.toLowerCase()===o.toLowerCase()}function Br(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=qg(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=Rz(r.path):(r.path=Ez(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=zz(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=Vo(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 Zz=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,Mz=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/;function qz(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 Vg(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(Mz);i!==null&&i[1].indexOf("\\")!==-1&&(n.error="URI authority must not contain a literal backslash.",o=!0);let a=t.match(Zz);if(a){n.scheme=a[1],n.userinfo=a[3],n.host=a[4],n.port=parseInt(a[5],10),n.path=a[6]||"",n.query=a[7],n.fragment=a[8],isNaN(n.port)&&(n.port=a[5]);let c=qz(n,a);if(c!==void 0&&(n.error=n.error||c,o=!0),n.host)if(Pz(n.host)===!1){let d=Sz(n.host);n.host=d.host.toLowerCase(),s=d.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 u=qg(r.scheme||n.scheme);if(!r.unicodeSupport&&(!u||!u.unicodeSupport)&&n.host&&(r.domainHost||u&&u.domainHost)&&s===!1&&Oz(n.host))try{n.host=new URL("http://"+n.host).hostname}catch(l){n.error=n.error||"Host's domain name can not be converted to ASCII: "+l}if((!u||u&&!u.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=Iz(unescape(n.host),s))),n.path&&(n.path=Tz(n.path)),n.fragment))try{n.fragment=encodeURI(decodeURIComponent(n.fragment))}catch{n.error=n.error||"URI malformed"}u&&u.parse&&u.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o}}function Pn(t,e){return Vg(t,e).parsed}function Dz(t,e){return Lg(t,e).normalized}function Lg(t,e){let{parsed:r,malformedAuthorityOrPort:n}=Vg(t,e);return{normalized:n?t:Br(r,e),malformedAuthorityOrPort:n}}function Mg(t,e){if(typeof t=="string"){let{normalized:r,malformedAuthorityOrPort:n}=Lg(t,e);return n?void 0:r}if(typeof t=="object")return Br(t,e)}var Hl={SCHEMES:Nz,normalize:Az,resolve:Cz,resolveComponent:Dg,equal:jz,serialize:Br,parse:Pn};Oi.exports=Hl;Oi.exports.default=Hl;Oi.exports.fastUri=Hl});var Bg=E(Gl=>{"use strict";Object.defineProperty(Gl,"__esModule",{value:!0});var Fg=Ug();Fg.code='require("ajv/dist/runtime/uri").default';Gl.default=Fg});var Qg=E(Ae=>{"use strict";Object.defineProperty(Ae,"__esModule",{value:!0});Ae.CodeGen=Ae.Name=Ae.nil=Ae.stringify=Ae.str=Ae._=Ae.KeywordCxt=void 0;var Vz=qo();Object.defineProperty(Ae,"KeywordCxt",{enumerable:!0,get:function(){return Vz.KeywordCxt}});var On=K();Object.defineProperty(Ae,"_",{enumerable:!0,get:function(){return On._}});Object.defineProperty(Ae,"str",{enumerable:!0,get:function(){return On.str}});Object.defineProperty(Ae,"stringify",{enumerable:!0,get:function(){return On.stringify}});Object.defineProperty(Ae,"nil",{enumerable:!0,get:function(){return On.nil}});Object.defineProperty(Ae,"Name",{enumerable:!0,get:function(){return On.Name}});Object.defineProperty(Ae,"CodeGen",{enumerable:!0,get:function(){return On.CodeGen}});var Lz=Ri(),Wg=Do(),Uz=wl(),Lo=Ei(),Fz=K(),Uo=jo(),Ni=Co(),Kl=ne(),Hg=zg(),Bz=Bg(),Yg=(t,e)=>new RegExp(t,e);Yg.code="new RegExp";var Hz=["removeAdditional","useDefaults","coerceTypes"],Gz=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Jz={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."},Kz={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Gg=200;function Wz(t){var e,r,n,o,s,i,a,c,u,l,d,p,f,m,h,g,v,y,$,z,M,Ve,at,rn,_a;let Kn=t.strict,va=(e=t.code)===null||e===void 0?void 0:e.optimize,Pp=va===!0||va===void 0?1:va||0,Op=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Yg,Nv=(o=t.uriResolver)!==null&&o!==void 0?o:Bz.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:Kn)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Kn)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:Kn)!==null&&l!==void 0?l:"log",strictTuples:(p=(d=t.strictTuples)!==null&&d!==void 0?d:Kn)!==null&&p!==void 0?p:"log",strictRequired:(m=(f=t.strictRequired)!==null&&f!==void 0?f:Kn)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:Pp,regExp:Op}:{optimize:Pp,regExp:Op},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Gg,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Gg,meta:(v=t.meta)!==null&&v!==void 0?v:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:($=t.inlineRefs)!==null&&$!==void 0?$:!0,schemaId:(z=t.schemaId)!==null&&z!==void 0?z:"$id",addUsedSchema:(M=t.addUsedSchema)!==null&&M!==void 0?M:!0,validateSchema:(Ve=t.validateSchema)!==null&&Ve!==void 0?Ve:!0,validateFormats:(at=t.validateFormats)!==null&&at!==void 0?at:!0,unicodeRegExp:(rn=t.unicodeRegExp)!==null&&rn!==void 0?rn:!0,int32range:(_a=t.int32range)!==null&&_a!==void 0?_a:!0,uriResolver:Nv}}var Fo=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,...Wz(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new Fz.ValueScope({scope:{},prefixes:Gz,es5:r,lines:n}),this.logger=rR(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,Uz.getRules)(),Jg.call(this,Jz,e,"NOT SUPPORTED"),Jg.call(this,Kz,e,"DEPRECATED","warn"),this._metaOpts=eR.call(this),e.formats&&Xz.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&Qz.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),Yz.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=Hg;n==="id"&&(o={...Hg},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 Wg.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,Uo.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=Kg.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Lo.SchemaEnv({schema:{},schemaId:n});if(r=Lo.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=Kg.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,Uo.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(oR.call(this,n,r),!r)return(0,Kl.eachItem)(n,s=>Jl.call(this,s)),this;iR.call(this,r);let o={...r,type:(0,Ni.getJSONTypes)(r.type),schemaType:(0,Ni.getJSONTypes)(r.schemaType)};return(0,Kl.eachItem)(n,o.type.length===0?s=>Jl.call(this,s,o):s=>o.type.forEach(i=>Jl.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]=Xg(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,Uo.normalizeId)(i||n);let u=Uo.getSchemaRefs.call(this,e,n);return c=new Lo.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):Lo.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{Lo.compileSchema.call(this,e)}finally{this.opts=r}}};Fo.ValidationError=Lz.default;Fo.MissingRefError=Wg.default;Ae.default=Fo;function Jg(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 Kg(t){return t=(0,Uo.normalizeId)(t),this.schemas[t]||this.refs[t]}function Yz(){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 Xz(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function Qz(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 eR(){let t={...this.opts};for(let e of Hz)delete t[e];return t}var tR={log(){},warn(){},error(){}};function rR(t){if(t===!1)return tR;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 nR=/^[a-z_$][a-z0-9_$:-]*$/i;function oR(t,e){let{RULES:r}=this;if((0,Kl.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!nR.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 Jl(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,Ni.getJSONTypes)(e.type),schemaType:(0,Ni.getJSONTypes)(e.schemaType)}};e.before?sR.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 sR(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 iR(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Xg(e)),t.validateSchema=this.compile(e,!0))}var aR={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Xg(t){return{anyOf:[t,aR]}}});var ey=E(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});var cR={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Wl.default=cR});var oy=E(Hr=>{"use strict";Object.defineProperty(Hr,"__esModule",{value:!0});Hr.callRef=Hr.getValidate=void 0;var uR=Do(),ty=mt(),et=K(),Nn=Bt(),ry=Ei(),Ai=ne(),lR={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=ry.resolveRef.call(c,u,o,r);if(l===void 0)throw new uR.default(n.opts.uriResolver,o,r);if(l instanceof ry.SchemaEnv)return p(l);return f(l);function d(){if(s===u)return Ci(t,i,s,s.$async);let m=e.scopeValue("root",{ref:u});return Ci(t,(0,et._)`${m}.validate`,u,u.$async)}function p(m){let h=ny(t,m);Ci(t,h,m,m.$async)}function f(m){let h=e.scopeValue("schema",a.code.source===!0?{ref:m,code:(0,et.stringify)(m)}:{ref:m}),g=e.name("valid"),v=t.subschema({schema:m,dataTypes:[],schemaPath:et.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(v),t.ok(g)}}};function ny(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,et._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Hr.getValidate=ny;function Ci(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Nn.default.this:et.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,et._)`await ${(0,ty.callValidateCode)(t,e,u)}`),f(e),i||o.assign(m,!0)},h=>{o.if((0,et._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),p(h),i||o.assign(m,!1)}),t.ok(m)}function d(){t.result((0,ty.callValidateCode)(t,e,u),()=>f(e),()=>p(e))}function p(m){let h=(0,et._)`${m}.errors`;o.assign(Nn.default.vErrors,(0,et._)`${Nn.default.vErrors} === null ? ${h} : ${Nn.default.vErrors}.concat(${h})`),o.assign(Nn.default.errors,(0,et._)`${Nn.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=Ai.mergeEvaluated.props(o,g.props,s.props));else{let v=o.var("props",(0,et._)`${m}.evaluated.props`);s.props=Ai.mergeEvaluated.props(o,v,s.props,et.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Ai.mergeEvaluated.items(o,g.items,s.items));else{let v=o.var("items",(0,et._)`${m}.evaluated.items`);s.items=Ai.mergeEvaluated.items(o,v,s.items,et.Name)}}}Hr.callRef=Ci;Hr.default=lR});var sy=E(Yl=>{"use strict";Object.defineProperty(Yl,"__esModule",{value:!0});var dR=ey(),pR=oy(),fR=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",dR.default,pR.default];Yl.default=fR});var iy=E(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});var ji=K(),lr=ji.operators,Zi={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}},mR={message:({keyword:t,schemaCode:e})=>(0,ji.str)`must be ${Zi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,ji._)`{comparison: ${Zi[t].okStr}, limit: ${e}}`},hR={keyword:Object.keys(Zi),type:"number",schemaType:"number",$data:!0,error:mR,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,ji._)`${r} ${Zi[e].fail} ${n} || isNaN(${r})`)}};Xl.default=hR});var ay=E(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});var Bo=K(),gR={message:({schemaCode:t})=>(0,Bo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Bo._)`{multipleOf: ${t}}`},yR={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:gR,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Bo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Bo._)`${i} !== parseInt(${i})`;t.fail$data((0,Bo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Ql.default=yR});var uy=E(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});function cy(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}ed.default=cy;cy.code='require("ajv/dist/runtime/ucs2length").default'});var ly=E(td=>{"use strict";Object.defineProperty(td,"__esModule",{value:!0});var Gr=K(),_R=ne(),vR=uy(),bR={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Gr.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Gr._)`{limit: ${t}}`},wR={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:bR,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Gr.operators.GT:Gr.operators.LT,i=o.opts.unicode===!1?(0,Gr._)`${r}.length`:(0,Gr._)`${(0,_R.useFunc)(t.gen,vR.default)}(${r})`;t.fail$data((0,Gr._)`${i} ${s} ${n}`)}};td.default=wR});var dy=E(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});var $R=mt(),xR=ne(),An=K(),kR={message:({schemaCode:t})=>(0,An.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,An._)`{pattern: ${t}}`},SR={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:kR,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,An._)`new RegExp`:(0,xR.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,An._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,An._)`!${l}`)}else{let c=(0,$R.usePattern)(t,o);t.fail$data((0,An._)`!${c}.test(${r})`)}}};rd.default=SR});var py=E(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var Ho=K(),zR={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Ho.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Ho._)`{limit: ${t}}`},RR={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:zR,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Ho.operators.GT:Ho.operators.LT;t.fail$data((0,Ho._)`Object.keys(${r}).length ${o} ${n}`)}};nd.default=RR});var fy=E(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var Go=mt(),Jo=K(),TR=ne(),ER={message:({params:{missingProperty:t}})=>(0,Jo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Jo._)`{missingProperty: ${t}}`},IR={keyword:"required",type:"object",schemaType:"array",$data:!0,error:ER,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,v=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,TR.checkStrictMode)(i,v,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Jo.nil,d);else for(let f of r)(0,Go.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,Go.checkMissingProp)(t,r,f)),(0,Go.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,Go.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function p(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,Go.propertyInData)(e,o,f,a.ownProperties)),e.if((0,Jo.not)(m),()=>{t.error(),e.break()})},Jo.nil)}}};od.default=IR});var my=E(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});var Ko=K(),PR={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,Ko.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,Ko._)`{limit: ${t}}`},OR={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:PR,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?Ko.operators.GT:Ko.operators.LT;t.fail$data((0,Ko._)`${r}.length ${o} ${n}`)}};sd.default=OR});var Mi=E(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var hy=El();hy.code='require("ajv/dist/runtime/equal").default';id.default=hy});var gy=E(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});var ad=Co(),Ce=K(),NR=ne(),AR=Mi(),CR={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}}`},jR={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:CR,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,ad.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"),v=(0,ad.checkDataTypes)(u,g,a.opts.strictNumbers,ad.DataType.Wrong),y=e.const("indices",(0,Ce._)`{}`);e.for((0,Ce._)`;${m}--;`,()=>{e.let(g,(0,Ce._)`${r}[${m}]`),e.if(v,(0,Ce._)`continue`),u.length>1&&e.if((0,Ce._)`typeof ${g} == "string"`,(0,Ce._)`${g} += "_"`),e.if((0,Ce._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(h,(0,Ce._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ce._)`${y}[${g}] = ${m}`)})}function f(m,h){let g=(0,NR.useFunc)(e,AR.default),v=e.name("outer");e.label(v).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(v)})))}}};cd.default=jR});var yy=E(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});var ud=K(),ZR=ne(),MR=Mi(),qR={message:"must be equal to constant",params:({schemaCode:t})=>(0,ud._)`{allowedValue: ${t}}`},DR={keyword:"const",$data:!0,error:qR,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,ud._)`!${(0,ZR.useFunc)(e,MR.default)}(${r}, ${o})`):t.fail((0,ud._)`${s} !== ${r}`)}};ld.default=DR});var _y=E(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var Wo=K(),VR=ne(),LR=Mi(),UR={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Wo._)`{allowedValues: ${t}}`},FR={keyword:"enum",schemaType:"array",$data:!0,error:UR,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,VR.useFunc)(e,LR.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,Wo.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,Wo._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function p(f,m){let h=o[m];return typeof h=="object"&&h!==null?(0,Wo._)`${u()}(${r}, ${f}[${m}])`:(0,Wo._)`${r} === ${h}`}}};dd.default=FR});var vy=E(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var BR=iy(),HR=ay(),GR=ly(),JR=dy(),KR=py(),WR=fy(),YR=my(),XR=gy(),QR=yy(),eT=_y(),tT=[BR.default,HR.default,GR.default,JR.default,KR.default,WR.default,YR.default,XR.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},QR.default,eT.default];pd.default=tT});var md=E(Yo=>{"use strict";Object.defineProperty(Yo,"__esModule",{value:!0});Yo.validateAdditionalItems=void 0;var Jr=K(),fd=ne(),rT={message:({params:{len:t}})=>(0,Jr.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Jr._)`{limit: ${t}}`},nT={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:rT,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,fd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}by(t,n)}};function by(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,fd.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:fd.Type.Num},u),i.allErrors||r.if((0,Jr.not)(u),()=>r.break())})}}Yo.validateAdditionalItems=by;Yo.default=nT});var hd=E(Xo=>{"use strict";Object.defineProperty(Xo,"__esModule",{value:!0});Xo.validateTuple=void 0;var wy=K(),qi=ne(),oT=mt(),sT={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return $y(t,"additionalItems",e);r.items=!0,!(0,qi.alwaysValidSchema)(r,e)&&t.ok((0,oT.validateArray)(t))}};function $y(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=qi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,wy._)`${s}.length`);r.forEach((d,p)=>{(0,qi.alwaysValidSchema)(a,d)||(n.if((0,wy._)`${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,qi.checkStrictMode)(a,g,p.strictTuples)}}}Xo.validateTuple=$y;Xo.default=sT});var xy=E(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var iT=hd(),aT={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,iT.validateTuple)(t,"items")};gd.default=aT});var Sy=E(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var ky=K(),cT=ne(),uT=mt(),lT=md(),dT={message:({params:{len:t}})=>(0,ky.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ky._)`{limit: ${t}}`},pT={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:dT,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,cT.alwaysValidSchema)(n,e)&&(o?(0,lT.validateAdditionalItems)(t,o):t.ok((0,uT.validateArray)(t)))}};yd.default=pT});var zy=E(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var gt=K(),Di=ne(),fT={message:({params:{min:t,max:e}})=>e===void 0?(0,gt.str)`must contain at least ${t} valid item(s)`:(0,gt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,gt._)`{minContains: ${t}}`:(0,gt._)`{minContains: ${t}, maxContains: ${e}}`},mT={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:fT,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,gt._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Di.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Di.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Di.alwaysValidSchema)(s,r)){let h=(0,gt._)`${l} >= ${i}`;a!==void 0&&(h=(0,gt._)`${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,gt._)`${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,v=>{t.subschema({keyword:"contains",dataProp:v,dataPropType:Di.Type.Num,compositeRule:!0},h),g()})}function m(h){e.code((0,gt._)`${h}++`),a===void 0?e.if((0,gt._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,gt._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,gt._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};_d.default=mT});var Ey=E(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.validateSchemaDeps=At.validatePropertyDeps=At.error=void 0;var vd=K(),hT=ne(),Qo=mt();At.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,vd.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,vd._)`{property: ${t},
|
|
8
8
|
missingProperty: ${n},
|
|
9
9
|
depsCount: ${e},
|
|
10
|
-
deps: ${r}}`};var dT={keyword:"dependencies",type:"object",schemaType:"object",error:Nt.error,code(t){let[e,r]=pT(t);xy(t,e),ky(t,r)}};function pT({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 xy(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,Yo.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,Yo.checkReportMissingProp)(t,u)}):(r.if((0,_d._)`${c} && (${(0,Yo.checkMissingProp)(t,a,s)})`),(0,Yo.reportMissingProp)(t,s),r.else())}}Nt.validatePropertyDeps=xy;function ky(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,lT.alwaysValidSchema)(s,e[a])||(r.if((0,Yo.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=ky;Nt.default=dT});var Ry=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var zy=G(),fT=ne(),mT={message:"property name must be valid",params:({params:t})=>(0,zy._)`{propertyName: ${t.propertyName}}`},hT={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:mT,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,fT.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,zy.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};vd.default=hT});var wd=T(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var Mi=ft(),St=G(),gT=Ft(),qi=ne(),yT={message:"must NOT have additional properties",params:({params:t})=>(0,St._)`{additionalProperty: ${t.additionalProperty}}`},_T={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:yT,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,qi.alwaysValidSchema)(i,r))return;let u=(0,Mi.allSchemaProperties)(n.properties),l=(0,Mi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,St._)`${s} === ${gT.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 v;if(u.length>8){let _=(0,qi.schemaRefOrVal)(i,n.properties,"properties");v=(0,Mi.isOwnProperty)(e,_,g)}else u.length?v=(0,St.or)(...u.map(_=>(0,St._)`${g} === ${_}`)):v=St.nil;return l.length&&(v=(0,St.or)(v,...l.map(_=>(0,St._)`${(0,Mi.usePattern)(t,_)}.test(${g})`))),(0,St.not)(v)}function f(g){e.code((0,St._)`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,qi.alwaysValidSchema)(i,r)){let v=e.name("valid");c.removeAdditional==="failing"?(h(g,v,!1),e.if((0,St.not)(v),()=>{t.reset(),f(g)})):(h(g,v),a||e.if((0,St.not)(v),()=>e.break()))}}function h(g,v,_){let w={keyword:"additionalProperties",dataProp:g,dataPropType:qi.Type.Str};_===!1&&Object.assign(w,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(w,v)}}};bd.default=_T});var Ey=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var vT=Zo(),Ty=ft(),$d=ne(),Py=wd(),bT={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&&Py.default.code(new vT.KeywordCxt(s,Py.default,"additionalProperties"));let i=(0,Ty.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=$d.mergeEvaluated.props(e,(0,$d.toHash)(i),s.props));let a=i.filter(d=>!(0,$d.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,Ty.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)}}};xd.default=bT});var Ay=T(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var Iy=ft(),Di=G(),Oy=ne(),Ny=ne(),wT={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,Iy.allSchemaProperties)(r),c=a.filter(h=>(0,Oy.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 Di.Name)&&(s.props=(0,Ny.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,Oy.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,g=>{e.if((0,Di._)`${(0,Iy.usePattern)(t,h)}.test(${g})`,()=>{let v=c.includes(h);v||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:Ny.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Di._)`${d}[${g}]`,!0):!v&&!s.allErrors&&e.if((0,Di.not)(l),()=>e.break())})})}}};kd.default=wT});var Cy=T(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var $T=ne(),xT={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"}};Sd.default=xT});var jy=T(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var kT=ft(),ST={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:kT.validateUnion,error:{message:"must match a schema in anyOf"}};zd.default=ST});var Zy=T(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var Vi=G(),zT=ne(),RT={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Vi._)`{passingSchemas: ${t.passing}}`},TT={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:RT,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,zT.alwaysValidSchema)(o,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Vi._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Vi._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Vi.Name)})})}}};Rd.default=TT});var My=T(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var PT=ne(),ET={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,PT.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Td.default=ET});var Vy=T(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var Li=G(),Dy=ne(),IT={message:({params:t})=>(0,Li.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Li._)`{failingKeyword: ${t.ifClause}}`},OT={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:IT,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Dy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=qy(n,"then"),s=qy(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 qy(t,e){let r=t.schema[e];return r!==void 0&&!(0,Dy.alwaysValidSchema)(t,r)}Pd.default=OT});var Ly=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var NT=ne(),AT={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,NT.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Ed.default=AT});var Uy=T(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var CT=fd(),jT=vy(),ZT=md(),MT=wy(),qT=$y(),DT=Sy(),VT=Ry(),LT=wd(),UT=Ey(),FT=Ay(),BT=Cy(),HT=jy(),JT=Zy(),GT=My(),KT=Vy(),WT=Ly();function YT(t=!1){let e=[BT.default,HT.default,JT.default,GT.default,KT.default,WT.default,VT.default,LT.default,DT.default,UT.default,FT.default];return t?e.push(jT.default,MT.default):e.push(CT.default,ZT.default),e.push(qT.default),e}Id.default=YT});var Fy=T(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var $e=G(),QT={message:({schemaCode:t})=>(0,$e.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,$e._)`{format: ${t}}`},XT={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:QT,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"),v=r.let("format");r.if((0,$e._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,$e._)`${h}.type || "string"`).assign(v,(0,$e._)`${h}.validate`),()=>r.assign(g,(0,$e._)`"string"`).assign(v,h)),t.fail$data((0,$e.or)(_(),w()));function _(){return c.strictSchema===!1?$e.nil:(0,$e._)`${i} && !${v}`}function w(){let z=l.$async?(0,$e._)`(${h}.async ? await ${v}(${n}) : ${v}(${n}))`:(0,$e._)`${v}(${n})`,Z=(0,$e._)`(typeof ${v} == "function" ? ${z} : ${v}.test(${n}))`;return(0,$e._)`${v} && ${v} !== true && ${g} === ${e} && !${Z}`}}function f(){let m=d.formats[s];if(!m){_();return}if(m===!0)return;let[h,g,v]=w(m);h===e&&t.pass(z());function _(){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 z(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,$e._)`await ${v}(${n})`}return typeof g=="function"?(0,$e._)`${v}(${n})`:(0,$e._)`${v}.test(${n})`}}}};Od.default=XT});var By=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var eP=Fy(),tP=[eP.default];Nd.default=tP});var Hy=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(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var rP=ty(),nP=hy(),oP=Uy(),sP=By(),Jy=Hy(),iP=[rP.default,nP.default,(0,oP.default)(),sP.default,Jy.metadataVocabulary,Jy.contentVocabulary];Ad.default=iP});var Wy=T(Ui=>{"use strict";Object.defineProperty(Ui,"__esModule",{value:!0});Ui.DiscrError=void 0;var Ky;(function(t){t.Tag="tag",t.Mapping="mapping"})(Ky||(Ui.DiscrError=Ky={}))});var Qy=T(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});var An=G(),Cd=Wy(),Yy=zi(),aP=Mo(),cP=ne(),uP={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,An._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},lP={keyword:"discriminator",type:"object",schemaType:"object",error:uP,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,An._)`${r}${(0,An.getProperty)(a)}`);e.if((0,An._)`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,An._)`${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,An.Name),m}function p(){var f;let m={},h=v(o),g=!0;for(let z=0;z<i.length;z++){let Z=i[z];if(Z?.$ref&&!(0,cP.schemaHasRulesButRef)(Z,s.self.RULES)){let it=Z.$ref;if(Z=Yy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,it),Z instanceof Yy.SchemaEnv&&(Z=Z.schema),Z===void 0)throw new aP.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||v(Z)),_(De,z)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return m;function v({required:z}){return Array.isArray(z)&&z.includes(a)}function _(z,Z){if(z.const)w(z.const,Z);else if(z.enum)for(let De of z.enum)w(De,Z);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function w(z,Z){if(typeof z!="string"||z in m)throw new Error(`discriminator: "${a}" values must be unique strings`);m[z]=Z}}}};jd.default=lP});var Xy=T((Qj,dP)=>{dP.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 Md=T((ge,Zd)=>{"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 pP=Kg(),fP=Gy(),mP=Qy(),e_=Xy(),hP=["/properties"],Fi="http://json-schema.org/draft-07/schema",Cn=class extends pP.default{_addVocabularies(){super._addVocabularies(),fP.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(mP.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(e_,hP):e_;this.addMetaSchema(e,Fi,!1),this.refs["http://json-schema.org/schema"]=Fi}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Fi)?Fi:void 0)}};ge.Ajv=Cn;Zd.exports=ge=Cn;Zd.exports.Ajv=Cn;Object.defineProperty(ge,"__esModule",{value:!0});ge.default=Cn;var gP=Zo();Object.defineProperty(ge,"KeywordCxt",{enumerable:!0,get:function(){return gP.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 yP=ki();Object.defineProperty(ge,"ValidationError",{enumerable:!0,get:function(){return yP.default}});var _P=Mo();Object.defineProperty(ge,"MissingRefError",{enumerable:!0,get:function(){return _P.default}})});var c_=T(Ct=>{"use strict";Object.defineProperty(Ct,"__esModule",{value:!0});Ct.formatNames=Ct.fastFormats=Ct.fullFormats=void 0;function At(t,e){return{validate:t,compare:e}}Ct.fullFormats={date:At(o_,Ld),time:At(Dd(!0),Ud),"date-time":At(t_(!0),i_),"iso-time":At(Dd(),s_),"iso-date-time":At(t_(),a_),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:kP,"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:IP,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:SP,int32:{type:"number",validate:TP},int64:{type:"number",validate:PP},float:{type:"number",validate:n_},double:{type:"number",validate:n_},password:!0,binary:!0};Ct.fastFormats={...Ct.fullFormats,date:At(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Ld),time:At(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Ud),"date-time":At(/^\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,i_),"iso-time":At(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,s_),"iso-date-time":At(/^\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,a_),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 vP(t){return t%4===0&&(t%100!==0||t%400===0)}var bP=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,wP=[0,31,28,31,30,31,30,31,31,30,31,30,31];function o_(t){let e=bP.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&&vP(r)?29:wP[n])}function Ld(t,e){if(t&&e)return t>e?1:t<e?-1:0}var qd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Dd(t){return function(r){let n=qd.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 Ud(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 s_(t,e){if(!(t&&e))return;let r=qd.exec(t),n=qd.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 Vd=/t|\s/i;function t_(t){let e=Dd(t);return function(n){let o=n.split(Vd);return o.length===2&&o_(o[0])&&e(o[1])}}function i_(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function a_(t,e){if(!(t&&e))return;let[r,n]=t.split(Vd),[o,s]=e.split(Vd),i=Ld(r,o);if(i!==void 0)return i||Ud(n,s)}var $P=/\/|:/,xP=/^(?:[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 kP(t){return $P.test(t)&&xP.test(t)}var r_=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function SP(t){return r_.lastIndex=0,r_.test(t)}var zP=-(2**31),RP=2**31-1;function TP(t){return Number.isInteger(t)&&t<=RP&&t>=zP}function PP(t){return Number.isInteger(t)}function n_(){return!0}var EP=/[^\\]\\Z/;function IP(t){if(EP.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var u_=T(Zn=>{"use strict";Object.defineProperty(Zn,"__esModule",{value:!0});Zn.formatLimitDefinition=void 0;var OP=Md(),zt=G(),dr=zt.operators,Bi={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}},NP={message:({keyword:t,schemaCode:e})=>(0,zt.str)`should be ${Bi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,zt._)`{comparison: ${Bi[t].okStr}, limit: ${e}}`};Zn.formatLimitDefinition={keyword:Object.keys(Bi),type:"string",schemaType:"string",$data:!0,error:NP,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 OP.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,zt._)`${p}[${c.schemaCode}]`);t.fail$data((0,zt.or)((0,zt._)`typeof ${f} != "object"`,(0,zt._)`${f} instanceof RegExp`,(0,zt._)`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,zt._)`${i.code.formats}${(0,zt.getProperty)(p)}`:void 0});t.fail$data(d(m))}function d(p){return(0,zt._)`${p}.compare(${r}, ${n}) ${Bi[o].fail} 0`}},dependencies:["format"]};var AP=t=>(t.addKeyword(Zn.formatLimitDefinition),t);Zn.default=AP});var f_=T((Qo,p_)=>{"use strict";Object.defineProperty(Qo,"__esModule",{value:!0});var Mn=c_(),CP=u_(),Fd=G(),l_=new Fd.Name("fullFormats"),jP=new Fd.Name("fastFormats"),Bd=(t,e={keywords:!0})=>{if(Array.isArray(e))return d_(t,e,Mn.fullFormats,l_),t;let[r,n]=e.mode==="fast"?[Mn.fastFormats,jP]:[Mn.fullFormats,l_],o=e.formats||Mn.formatNames;return d_(t,o,r,n),e.keywords&&(0,CP.default)(t),t};Bd.get=(t,e="full")=>{let n=(e==="fast"?Mn.fastFormats:Mn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function d_(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Fd._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}p_.exports=Qo=Bd;Object.defineProperty(Qo,"__esModule",{value:!0});Qo.default=Bd});var U={};ba(U,{BRAND:()=>ab,DIRTY:()=>mr,EMPTY_PATH:()=>qv,INVALID:()=>M,NEVER:()=>Fb,OK:()=>Ce,ParseStatus:()=>Pe,Schema:()=>J,ZodAny:()=>Kt,ZodArray:()=>qt,ZodBigInt:()=>gr,ZodBoolean:()=>yr,ZodBranded:()=>Kn,ZodCatch:()=>Tr,ZodDate:()=>_r,ZodDefault:()=>Rr,ZodDiscriminatedUnion:()=>fs,ZodEffects:()=>ct,ZodEnum:()=>Sr,ZodError:()=>He,ZodFirstPartyTypeKind:()=>x,ZodFunction:()=>hs,ZodIntersection:()=>$r,ZodIssueCode:()=>$,ZodLazy:()=>xr,ZodLiteral:()=>kr,ZodMap:()=>an,ZodNaN:()=>un,ZodNativeEnum:()=>zr,ZodNever:()=>_t,ZodNull:()=>br,ZodNullable:()=>Pt,ZodNumber:()=>hr,ZodObject:()=>Ge,ZodOptional:()=>Je,ZodParsedType:()=>P,ZodPipeline:()=>Wn,ZodPromise:()=>Wt,ZodReadonly:()=>Pr,ZodRecord:()=>ms,ZodSchema:()=>J,ZodSet:()=>cn,ZodString:()=>Gt,ZodSymbol:()=>on,ZodTransformer:()=>ct,ZodTuple:()=>Tt,ZodType:()=>J,ZodUndefined:()=>vr,ZodUnion:()=>wr,ZodUnknown:()=>Mt,ZodVoid:()=>sn,addIssueToContext:()=>R,any:()=>gb,array:()=>bb,bigint:()=>db,boolean:()=>Dp,coerce:()=>Ub,custom:()=>Zp,date:()=>pb,datetimeRegex:()=>Cp,defaultErrorMap:()=>jt,discriminatedUnion:()=>xb,effect:()=>Cb,enum:()=>Ob,function:()=>Pb,getErrorMap:()=>tn,getParsedType:()=>Rt,instanceof:()=>ub,intersection:()=>kb,isAborted:()=>ds,isAsync:()=>rn,isDirty:()=>ps,isValid:()=>Jt,late:()=>cb,lazy:()=>Eb,literal:()=>Ib,makeIssue:()=>Gn,map:()=>Rb,nan:()=>lb,nativeEnum:()=>Nb,never:()=>_b,null:()=>hb,nullable:()=>Zb,number:()=>qp,object:()=>ka,objectUtil:()=>wa,oboolean:()=>Lb,onumber:()=>Vb,optional:()=>jb,ostring:()=>Db,pipeline:()=>qb,preprocess:()=>Mb,promise:()=>Ab,quotelessJson:()=>jv,record:()=>zb,set:()=>Tb,setErrorMap:()=>Mv,strictObject:()=>wb,string:()=>Mp,symbol:()=>fb,transformer:()=>Cb,tuple:()=>Sb,undefined:()=>mb,union:()=>$b,unknown:()=>yb,util:()=>Q,void:()=>vb});var Q;(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})(Q||(Q={}));var wa;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(wa||(wa={}));var P=Q.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 $=Q.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"]),jv=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),He=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,Q.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()}};He.create=t=>new He(t);var Zv=(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,Q.jsonStringifyReplacer)}`;break;case $.unrecognized_keys:r=`Unrecognized key(s) in object: ${Q.joinValues(t.keys,", ")}`;break;case $.invalid_union:r="Invalid input";break;case $.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${Q.joinValues(t.options)}`;break;case $.invalid_enum_value:r=`Invalid enum value. Expected ${Q.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}"`:Q.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,Q.assertNever(t)}return{message:r}},jt=Zv;var Ep=jt;function Mv(t){Ep=t}function tn(){return Ep}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}},qv=[];function R(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}),Ce=t=>({status:"valid",value:t}),ds=t=>t.status==="aborted",ps=t=>t.status==="dirty",Jt=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}},Ip=(t,e)=>{if(Jt(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 He(t.common.issues);return this._error=r,this._error}}};function B(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 J=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 Ip(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 Jt(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=>Jt(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 Ip(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 Je.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({...B(this._def),schema:this,typeName:x.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Rr({...B(this._def),innerType:this,defaultValue:r,typeName:x.ZodDefault})}brand(){return new Kn({typeName:x.ZodBranded,type:this,...B(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Tr({...B(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 Wn.create(this,e)}readonly(){return Pr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Dv=/^c[^\s-]{8,}$/i,Vv=/^[0-9a-z]+$/,Lv=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Uv=/^[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,Fv=/^[a-z0-9_-]{21}$/i,Bv=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Hv=/^[-+]?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)?)??$/,Jv=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Gv="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",$a,Kv=/^(?:(?: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])$/,Wv=/^(?:(?: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])$/,Yv=/^(([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]))$/,Qv=/^(([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])$/,Xv=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,eb=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Np="((\\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])))",tb=new RegExp(`^${Np}$`);function Ap(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 rb(t){return new RegExp(`^${Ap(t)}$`)}function Cp(t){let e=`${Np}T${Ap(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 nb(t,e){return!!((e==="v4"||!e)&&Kv.test(t)||(e==="v6"||!e)&&Yv.test(t))}function ob(t,e){if(!Bv.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 sb(t,e){return!!((e==="v4"||!e)&&Wv.test(t)||(e==="v6"||!e)&&Qv.test(t))}var Gt=class t extends J{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==P.string){let s=this._getOrReturnCtx(e);return R(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),R(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),R(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?R(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&R(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")Jv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"email",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")$a||($a=new RegExp(Gv,"u")),$a.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"emoji",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")Uv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"uuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")Fv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"nanoid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")Dv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Vv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid2",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")Lv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(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),R(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),R(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),R(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),R(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),R(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),R(o,{code:$.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?tb.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:$.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?rb(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:$.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?Hv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"duration",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?nb(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"ip",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?ob(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"jwt",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?sb(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cidr",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?Xv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?eb.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64url",code:$.invalid_string,message:s.message}),n.dirty()):Q.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}};Gt.create=t=>new Gt({checks:[],typeName:x.ZodString,coerce:t?.coerce??!1,...B(t)});function ib(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 J{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 R(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"?Q.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),R(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),R(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),R(n,{code:$.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?ib(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),R(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),R(n,{code:$.not_finite,message:s.message}),o.dirty()):Q.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"&&Q.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,...B(t)});var gr=class t extends J{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),R(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),R(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),R(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):Q.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return R(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,...B(t)});var yr=class extends J{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==P.boolean){let n=this._getOrReturnCtx(e);return R(n,{code:$.invalid_type,expected:P.boolean,received:n.parsedType}),M}return Ce(e.data)}};yr.create=t=>new yr({typeName:x.ZodBoolean,coerce:t?.coerce||!1,...B(t)});var _r=class t extends J{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==P.date){let s=this._getOrReturnCtx(e);return R(s,{code:$.invalid_type,expected:P.date,received:s.parsedType}),M}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return R(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),R(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),R(o,{code:$.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):Q.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,...B(t)});var on=class extends J{_parse(e){if(this._getType(e)!==P.symbol){let n=this._getOrReturnCtx(e);return R(n,{code:$.invalid_type,expected:P.symbol,received:n.parsedType}),M}return Ce(e.data)}};on.create=t=>new on({typeName:x.ZodSymbol,...B(t)});var vr=class extends J{_parse(e){if(this._getType(e)!==P.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:$.invalid_type,expected:P.undefined,received:n.parsedType}),M}return Ce(e.data)}};vr.create=t=>new vr({typeName:x.ZodUndefined,...B(t)});var br=class extends J{_parse(e){if(this._getType(e)!==P.null){let n=this._getOrReturnCtx(e);return R(n,{code:$.invalid_type,expected:P.null,received:n.parsedType}),M}return Ce(e.data)}};br.create=t=>new br({typeName:x.ZodNull,...B(t)});var Kt=class extends J{constructor(){super(...arguments),this._any=!0}_parse(e){return Ce(e.data)}};Kt.create=t=>new Kt({typeName:x.ZodAny,...B(t)});var Mt=class extends J{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ce(e.data)}};Mt.create=t=>new Mt({typeName:x.ZodUnknown,...B(t)});var _t=class extends J{_parse(e){let r=this._getOrReturnCtx(e);return R(r,{code:$.invalid_type,expected:P.never,received:r.parsedType}),M}};_t.create=t=>new _t({typeName:x.ZodNever,...B(t)});var sn=class extends J{_parse(e){if(this._getType(e)!==P.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:$.invalid_type,expected:P.void,received:n.parsedType}),M}return Ce(e.data)}};sn.create=t=>new sn({typeName:x.ZodVoid,...B(t)});var qt=class t extends J{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==P.array)return R(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)&&(R(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&&(R(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&&(R(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,...B(e)});function nn(t){if(t instanceof Ge){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Je.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 Je?Je.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 J{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=Q.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 R(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 _t&&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 _t){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&&(R(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 Q.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 Q.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 Q.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 Q.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Je;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return jp(Q.objectKeys(this.shape))}};Ge.create=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strip",catchall:_t.create(),typeName:x.ZodObject,...B(e)});Ge.strictCreate=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strict",catchall:_t.create(),typeName:x.ZodObject,...B(e)});Ge.lazycreate=(t,e)=>new Ge({shape:t,unknownKeys:"strip",catchall:_t.create(),typeName:x.ZodObject,...B(e)});var wr=class extends J{_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 He(a.ctx.common.issues));return R(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 He(c));return R(r,{code:$.invalid_union,unionErrors:a}),M}}get options(){return this._def.options}};wr.create=(t,e)=>new wr({options:t,typeName:x.ZodUnion,...B(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?Q.objectValues(t.enum):t instanceof Rr?Zt(t._def.innerType):t instanceof vr?[void 0]:t instanceof br?[null]:t instanceof Je?[void 0,...Zt(t.unwrap())]:t instanceof Pt?[null,...Zt(t.unwrap())]:t instanceof Kn||t instanceof Pr?Zt(t.unwrap()):t instanceof Tr?Zt(t._def.innerType):[],fs=class t extends J{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==P.object)return R(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}):(R(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,...B(n)})}};function xa(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=Q.objectKeys(e),s=Q.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=xa(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=xa(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 J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(ds(s)||ds(i))return M;let a=xa(s.value,i.value);return a.valid?((ps(s)||ps(i))&&r.dirty(),{status:r.value,value:a.data}):(R(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,...B(r)});var Tt=class t extends J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==P.array)return R(n,{code:$.invalid_type,expected:P.array,received:n.parsedType}),M;if(n.data.length<this._def.items.length)return R(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&&(R(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,...B(e)})};var ms=class t extends J{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 R(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 J?new t({keyType:e,valueType:r,typeName:x.ZodRecord,...B(n)}):new t({keyType:Gt.create(),valueType:e,typeName:x.ZodRecord,...B(r)})}},an=class extends J{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 R(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,...B(r)});var cn=class t extends J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==P.set)return R(n,{code:$.invalid_type,expected:P.set,received:n.parsedType}),M;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(R(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&&(R(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,...B(e)});var hs=class t extends J{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==P.function)return R(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 Ce(async function(...c){let u=new He([]),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 Ce(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new He([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new He([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,...B(n)})}},xr=class extends J{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,...B(e)});var kr=class extends J{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return R(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,...B(e)});function jp(t,e){return new Sr({values:t,typeName:x.ZodEnum,...B(e)})}var Sr=class t extends J{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return R(r,{expected:Q.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 R(r,{received:r.data,code:$.invalid_enum_value,options:n}),M}return Ce(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};Sr.create=jp;var zr=class extends J{_parse(e){let r=Q.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==P.string&&n.parsedType!==P.number){let o=Q.objectValues(r);return R(n,{expected:Q.joinValues(o),received:n.parsedType,code:$.invalid_type}),M}if(this._cache||(this._cache=new Set(Q.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=Q.objectValues(r);return R(n,{received:n.data,code:$.invalid_enum_value,options:o}),M}return Ce(e.data)}get enum(){return this._def.values}};zr.create=(t,e)=>new zr({values:t,typeName:x.ZodNativeEnum,...B(e)});var Wt=class extends J{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==P.promise&&r.common.async===!1)return R(r,{code:$.invalid_type,expected:P.promise,received:r.parsedType}),M;let n=r.parsedType===P.promise?r.data:Promise.resolve(r.data);return Ce(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,...B(e)});var ct=class extends J{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=>{R(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(!Jt(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=>Jt(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):M);Q.assertNever(o)}};ct.create=(t,e,r)=>new ct({schema:t,typeName:x.ZodEffects,effect:e,...B(r)});ct.createWithPreprocess=(t,e,r)=>new ct({schema:e,effect:{type:"preprocess",transform:t},typeName:x.ZodEffects,...B(r)});var Je=class extends J{_parse(e){return this._getType(e)===P.undefined?Ce(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Je.create=(t,e)=>new Je({innerType:t,typeName:x.ZodOptional,...B(e)});var Pt=class extends J{_parse(e){return this._getType(e)===P.null?Ce(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Pt.create=(t,e)=>new Pt({innerType:t,typeName:x.ZodNullable,...B(e)});var Rr=class extends J{_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,...B(e)});var Tr=class extends J{_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 He(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new He(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,...B(e)});var un=class extends J{_parse(e){if(this._getType(e)!==P.nan){let n=this._getOrReturnCtx(e);return R(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,...B(t)});var ab=Symbol("zod_brand"),Kn=class extends J{_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}},Wn=class t extends J{_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 J{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Jt(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,...B(e)});function Op(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Zp(t,e={},r){return t?Kt.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Op(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Op(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Kt.create()}var cb={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 ub=(t,e={message:`Input not instance of ${t.name}`})=>Zp(r=>r instanceof t,e),Mp=Gt.create,qp=hr.create,lb=un.create,db=gr.create,Dp=yr.create,pb=_r.create,fb=on.create,mb=vr.create,hb=br.create,gb=Kt.create,yb=Mt.create,_b=_t.create,vb=sn.create,bb=qt.create,ka=Ge.create,wb=Ge.strictCreate,$b=wr.create,xb=fs.create,kb=$r.create,Sb=Tt.create,zb=ms.create,Rb=an.create,Tb=cn.create,Pb=hs.create,Eb=xr.create,Ib=kr.create,Ob=Sr.create,Nb=zr.create,Ab=Wt.create,Cb=ct.create,jb=Je.create,Zb=Pt.create,Mb=ct.createWithPreprocess,qb=Wn.create,Db=()=>Mp().optional(),Vb=()=>qp().optional(),Lb=()=>Dp().optional(),Ub={string:t=>Gt.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 Fb=M;var Bb=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 Hb=Symbol("zod_brand"),Dt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},gs={};function tt(t){return t&&Object.assign(gs,t),gs}var X={};ba(X,{BIGINT_FORMAT_RANGES:()=>Lp,Class:()=>za,NUMBER_FORMAT_RANGES:()=>Na,aborted:()=>Ir,allowsEval:()=>Ea,assert:()=>Yb,assertEqual:()=>Jb,assertIs:()=>Kb,assertNever:()=>Wb,assertNotEqual:()=>Gb,assignProp:()=>Pa,cached:()=>Xn,captureStackTrace:()=>_s,cleanEnum:()=>lw,cleanRegex:()=>to,clone:()=>rt,createTransparentProxy:()=>nw,defineLazy:()=>de,esc:()=>Er,escapeRegex:()=>Yt,extend:()=>iw,finalizeIssue:()=>vt,floatSafeRemainder:()=>Ta,getElementAtPath:()=>Qb,getEnumValues:()=>Qn,getLengthableOrigin:()=>ro,getParsedType:()=>rw,getSizableOrigin:()=>Up,isObject:()=>ln,isPlainObject:()=>dn,issue:()=>Aa,joinValues:()=>ys,jsonStringifyReplacer:()=>Ra,merge:()=>aw,normalizeParams:()=>q,nullish:()=>eo,numKeys:()=>tw,omit:()=>sw,optionalKeys:()=>Oa,partial:()=>cw,pick:()=>ow,prefixIssues:()=>Et,primitiveTypes:()=>Vp,promiseAllObject:()=>Xb,propertyKeyTypes:()=>Ia,randomString:()=>ew,required:()=>uw,stringifyPrimitive:()=>vs,unwrapMessage:()=>Yn});function Jb(t){return t}function Gb(t){return t}function Kb(t){}function Wb(t){throw new Error}function Yb(t){}function Qn(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 ys(t,e="|"){return t.map(r=>vs(r)).join(e)}function Ra(t,e){return typeof e=="bigint"?e.toString():e}function Xn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function eo(t){return t==null}function to(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Ta(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 Pa(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Qb(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Xb(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 ew(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 _s=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function ln(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ea=Xn(()=>{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 tw(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var rw=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}`)}},Ia=new Set(["string","number","symbol"]),Vp=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 nw(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 vs(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Oa(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Na={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]},Lp={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function ow(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 sw(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 iw(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 Pa(this,"shape",n),n},checks:[]};return rt(t,r)}function aw(t,e){return rt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Pa(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function cw(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 uw(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 Yn(t){return typeof t=="string"?t:t?.message}function vt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Yn(t.inst?._zod.def?.error?.(t))??Yn(e?.error?.(t))??Yn(r.customError?.(t))??Yn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Up(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function ro(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Aa(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function lw(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var za=class{constructor(...e){}};var Fp=(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,Ra,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},bs=b("$ZodError",Fp),no=b("$ZodError",Fp,{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 ja(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 Za=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=>vt(c,s,tt())));throw _s(a,o?.callee),a}return i.value},Ma=Za(no),qa=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=>vt(c,s,tt())));throw _s(a,o?.callee),a}return i.value},Da=qa(no),Va=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??bs)(s.issues.map(i=>vt(i,o,tt())))}:{success:!0,data:s.value}},Or=Va(no),La=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=>vt(i,o,tt())))}:{success:!0,data:s.value}},Nr=La(no);var Bp=/^[cC][^\s-]{8,}$/,Hp=/^[0-9a-z]+$/,Jp=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Gp=/^[0-9a-vA-V]{20}$/,Kp=/^[A-Za-z0-9]{27}$/,Wp=/^[a-zA-Z0-9_-]{21}$/,Yp=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Qp=/^([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})$/,Ua=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 Xp=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var pw="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function ef(){return new RegExp(pw,"u")}var 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])$/,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})$/,nf=/^((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])$/,of=/^(([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])$/,sf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Fa=/^[A-Za-z0-9_-]*$/,af=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var cf=/^\+(?:[0-9]){6,14}[0-9]$/,uf="(?:(?:\\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])))",lf=new RegExp(`^${uf}$`);function df(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 pf(t){return new RegExp(`^${df(t)}$`)}function ff(t){let e=df({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(`^${uf}T(?:${n})$`)}var mf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var hf=/^\d+$/,gf=/^-?\d+(?:\.\d+)?/i,yf=/true|false/i,_f=/null/i;var vf=/^[^A-Z]*$/,bf=/^[^a-z]*$/;var Ee=b("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),wf={number:"number",bigint:"bigint",object:"date"},Ba=b("$ZodCheckLessThan",(t,e)=>{Ee.init(t,e);let r=wf[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})}}),Ha=b("$ZodCheckGreaterThan",(t,e)=>{Ee.init(t,e);let r=wf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),$f=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):Ta(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})}}),xf=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]=Na[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=hf)}),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 kf=b("$ZodCheckMaxLength",(t,e)=>{var r;Ee.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!eo(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=ro(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Sf=b("$ZodCheckMinLength",(t,e)=>{var r;Ee.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!eo(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=ro(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),zf=b("$ZodCheckLengthEquals",(t,e)=>{var r;Ee.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!eo(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=ro(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})}}),oo=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=()=>{})}),Rf=b("$ZodCheckRegex",(t,e)=>{oo.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})}}),Tf=b("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=vf),oo.init(t,e)}),Pf=b("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=bf),oo.init(t,e)}),Ef=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})}}),If=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})}}),Of=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 Nf=b("$ZodCheckOverwrite",(t,e)=>{Ee.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var $s=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 gT={keyword:"dependencies",type:"object",schemaType:"object",error:At.error,code(t){let[e,r]=yT(t);Ry(t,e),Ty(t,r)}};function yT({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 Ry(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,Qo.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,Qo.checkReportMissingProp)(t,u)}):(r.if((0,vd._)`${c} && (${(0,Qo.checkMissingProp)(t,a,s)})`),(0,Qo.reportMissingProp)(t,s),r.else())}}At.validatePropertyDeps=Ry;function Ty(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,hT.alwaysValidSchema)(s,e[a])||(r.if((0,Qo.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))}At.validateSchemaDeps=Ty;At.default=gT});var Py=E(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var Iy=K(),_T=ne(),vT={message:"property name must be valid",params:({params:t})=>(0,Iy._)`{propertyName: ${t.propertyName}}`},bT={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:vT,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,_T.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,Iy.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};bd.default=bT});var $d=E(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var Vi=mt(),zt=K(),wT=Bt(),Li=ne(),$T={message:"must NOT have additional properties",params:({params:t})=>(0,zt._)`{additionalProperty: ${t.additionalProperty}}`},xT={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:$T,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,Li.alwaysValidSchema)(i,r))return;let u=(0,Vi.allSchemaProperties)(n.properties),l=(0,Vi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,zt._)`${s} === ${wT.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 v;if(u.length>8){let y=(0,Li.schemaRefOrVal)(i,n.properties,"properties");v=(0,Vi.isOwnProperty)(e,y,g)}else u.length?v=(0,zt.or)(...u.map(y=>(0,zt._)`${g} === ${y}`)):v=zt.nil;return l.length&&(v=(0,zt.or)(v,...l.map(y=>(0,zt._)`${(0,Vi.usePattern)(t,y)}.test(${g})`))),(0,zt.not)(v)}function f(g){e.code((0,zt._)`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,Li.alwaysValidSchema)(i,r)){let v=e.name("valid");c.removeAdditional==="failing"?(h(g,v,!1),e.if((0,zt.not)(v),()=>{t.reset(),f(g)})):(h(g,v),a||e.if((0,zt.not)(v),()=>e.break()))}}function h(g,v,y){let $={keyword:"additionalProperties",dataProp:g,dataPropType:Li.Type.Str};y===!1&&Object.assign($,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema($,v)}}};wd.default=xT});var Ay=E(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var kT=qo(),Oy=mt(),xd=ne(),Ny=$d(),ST={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&&Ny.default.code(new kT.KeywordCxt(s,Ny.default,"additionalProperties"));let i=(0,Oy.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=xd.mergeEvaluated.props(e,(0,xd.toHash)(i),s.props));let a=i.filter(d=>!(0,xd.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,Oy.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)}}};kd.default=ST});var My=E(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var Cy=mt(),Ui=K(),jy=ne(),Zy=ne(),zT={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,Cy.allSchemaProperties)(r),c=a.filter(h=>(0,jy.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 Ui.Name)&&(s.props=(0,Zy.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,jy.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function m(h){e.forIn("key",n,g=>{e.if((0,Ui._)`${(0,Cy.usePattern)(t,h)}.test(${g})`,()=>{let v=c.includes(h);v||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:Zy.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Ui._)`${d}[${g}]`,!0):!v&&!s.allErrors&&e.if((0,Ui.not)(l),()=>e.break())})})}}};Sd.default=zT});var qy=E(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var RT=ne(),TT={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,RT.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"}};zd.default=TT});var Dy=E(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var ET=mt(),IT={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:ET.validateUnion,error:{message:"must match a schema in anyOf"}};Rd.default=IT});var Vy=E(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var Fi=K(),PT=ne(),OT={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Fi._)`{passingSchemas: ${t.passing}}`},NT={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:OT,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,PT.alwaysValidSchema)(o,l)?e.var(c,!0):p=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Fi._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Fi._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),p&&t.mergeEvaluated(p,Fi.Name)})})}}};Td.default=NT});var Ly=E(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var AT=ne(),CT={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,AT.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Ed.default=CT});var By=E(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var Bi=K(),Fy=ne(),jT={message:({params:t})=>(0,Bi.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Bi._)`{failingKeyword: ${t.ifClause}}`},ZT={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:jT,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Fy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Uy(n,"then"),s=Uy(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,Bi.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,Bi._)`${l}`):t.setParams({ifClause:l})}}}};function Uy(t,e){let r=t.schema[e];return r!==void 0&&!(0,Fy.alwaysValidSchema)(t,r)}Id.default=ZT});var Hy=E(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var MT=ne(),qT={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,MT.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Pd.default=qT});var Gy=E(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var DT=md(),VT=xy(),LT=hd(),UT=Sy(),FT=zy(),BT=Ey(),HT=Py(),GT=$d(),JT=Ay(),KT=My(),WT=qy(),YT=Dy(),XT=Vy(),QT=Ly(),eE=By(),tE=Hy();function rE(t=!1){let e=[WT.default,YT.default,XT.default,QT.default,eE.default,tE.default,HT.default,GT.default,BT.default,JT.default,KT.default];return t?e.push(VT.default,UT.default):e.push(DT.default,LT.default),e.push(FT.default),e}Od.default=rE});var Jy=E(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var xe=K(),nE={message:({schemaCode:t})=>(0,xe.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,xe._)`{format: ${t}}`},oE={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:nE,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,xe._)`${m}[${i}]`),g=r.let("fType"),v=r.let("format");r.if((0,xe._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,xe._)`${h}.type || "string"`).assign(v,(0,xe._)`${h}.validate`),()=>r.assign(g,(0,xe._)`"string"`).assign(v,h)),t.fail$data((0,xe.or)(y(),$()));function y(){return c.strictSchema===!1?xe.nil:(0,xe._)`${i} && !${v}`}function $(){let z=l.$async?(0,xe._)`(${h}.async ? await ${v}(${n}) : ${v}(${n}))`:(0,xe._)`${v}(${n})`,M=(0,xe._)`(typeof ${v} == "function" ? ${z} : ${v}.test(${n}))`;return(0,xe._)`${v} && ${v} !== true && ${g} === ${e} && !${M}`}}function f(){let m=d.formats[s];if(!m){y();return}if(m===!0)return;let[h,g,v]=$(m);h===e&&t.pass(z());function y(){if(c.strictSchema===!1){d.logger.warn(M());return}throw new Error(M());function M(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function $(M){let Ve=M instanceof RegExp?(0,xe.regexpCode)(M):c.code.formats?(0,xe._)`${c.code.formats}${(0,xe.getProperty)(s)}`:void 0,at=r.scopeValue("formats",{key:s,ref:M,code:Ve});return typeof M=="object"&&!(M instanceof RegExp)?[M.type||"string",M.validate,(0,xe._)`${at}.validate`]:["string",M,at]}function z(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!l.$async)throw new Error("async format in sync schema");return(0,xe._)`await ${v}(${n})`}return typeof g=="function"?(0,xe._)`${v}(${n})`:(0,xe._)`${v}.test(${n})`}}}};Nd.default=oE});var Ky=E(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var sE=Jy(),iE=[sE.default];Ad.default=iE});var Wy=E(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.contentVocabulary=Cn.metadataVocabulary=void 0;Cn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Cn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Xy=E(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var aE=sy(),cE=vy(),uE=Gy(),lE=Ky(),Yy=Wy(),dE=[aE.default,cE.default,(0,uE.default)(),lE.default,Yy.metadataVocabulary,Yy.contentVocabulary];Cd.default=dE});var e_=E(Hi=>{"use strict";Object.defineProperty(Hi,"__esModule",{value:!0});Hi.DiscrError=void 0;var Qy;(function(t){t.Tag="tag",t.Mapping="mapping"})(Qy||(Hi.DiscrError=Qy={}))});var r_=E(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var jn=K(),jd=e_(),t_=Ei(),pE=Do(),fE=ne(),mE={message:({params:{discrError:t,tagName:e}})=>t===jd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,jn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},hE={keyword:"discriminator",type:"object",schemaType:"object",error:mE,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,jn._)`${r}${(0,jn.getProperty)(a)}`);e.if((0,jn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:jd.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,jn._)`${u} === ${m}`),e.assign(c,d(f[m]));e.else(),t.error(!1,{discrError:jd.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,jn.Name),m}function p(){var f;let m={},h=v(o),g=!0;for(let z=0;z<i.length;z++){let M=i[z];if(M?.$ref&&!(0,fE.schemaHasRulesButRef)(M,s.self.RULES)){let at=M.$ref;if(M=t_.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,at),M instanceof t_.SchemaEnv&&(M=M.schema),M===void 0)throw new pE.default(s.opts.uriResolver,s.baseId,at)}let Ve=(f=M?.properties)===null||f===void 0?void 0:f[a];if(typeof Ve!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||v(M)),y(Ve,z)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return m;function v({required:z}){return Array.isArray(z)&&z.includes(a)}function y(z,M){if(z.const)$(z.const,M);else if(z.enum)for(let Ve of z.enum)$(Ve,M);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function $(z,M){if(typeof z!="string"||z in m)throw new Error(`discriminator: "${a}" values must be unique strings`);m[z]=M}}}};Zd.default=hE});var n_=E((nZ,gE)=>{gE.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 qd=E((ye,Md)=>{"use strict";Object.defineProperty(ye,"__esModule",{value:!0});ye.MissingRefError=ye.ValidationError=ye.CodeGen=ye.Name=ye.nil=ye.stringify=ye.str=ye._=ye.KeywordCxt=ye.Ajv=void 0;var yE=Qg(),_E=Xy(),vE=r_(),o_=n_(),bE=["/properties"],Gi="http://json-schema.org/draft-07/schema",Zn=class extends yE.default{_addVocabularies(){super._addVocabularies(),_E.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(vE.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(o_,bE):o_;this.addMetaSchema(e,Gi,!1),this.refs["http://json-schema.org/schema"]=Gi}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(Gi)?Gi:void 0)}};ye.Ajv=Zn;Md.exports=ye=Zn;Md.exports.Ajv=Zn;Object.defineProperty(ye,"__esModule",{value:!0});ye.default=Zn;var wE=qo();Object.defineProperty(ye,"KeywordCxt",{enumerable:!0,get:function(){return wE.KeywordCxt}});var Mn=K();Object.defineProperty(ye,"_",{enumerable:!0,get:function(){return Mn._}});Object.defineProperty(ye,"str",{enumerable:!0,get:function(){return Mn.str}});Object.defineProperty(ye,"stringify",{enumerable:!0,get:function(){return Mn.stringify}});Object.defineProperty(ye,"nil",{enumerable:!0,get:function(){return Mn.nil}});Object.defineProperty(ye,"Name",{enumerable:!0,get:function(){return Mn.Name}});Object.defineProperty(ye,"CodeGen",{enumerable:!0,get:function(){return Mn.CodeGen}});var $E=Ri();Object.defineProperty(ye,"ValidationError",{enumerable:!0,get:function(){return $E.default}});var xE=Do();Object.defineProperty(ye,"MissingRefError",{enumerable:!0,get:function(){return xE.default}})});var p_=E(jt=>{"use strict";Object.defineProperty(jt,"__esModule",{value:!0});jt.formatNames=jt.fastFormats=jt.fullFormats=void 0;function Ct(t,e){return{validate:t,compare:e}}jt.fullFormats={date:Ct(c_,Ud),time:Ct(Vd(!0),Fd),"date-time":Ct(s_(!0),l_),"iso-time":Ct(Vd(),u_),"iso-date-time":Ct(s_(),d_),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:EE,"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:jE,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:IE,int32:{type:"number",validate:NE},int64:{type:"number",validate:AE},float:{type:"number",validate:a_},double:{type:"number",validate:a_},password:!0,binary:!0};jt.fastFormats={...jt.fullFormats,date:Ct(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Ud),time:Ct(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Fd),"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,l_),"iso-time":Ct(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,u_),"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,d_),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};jt.formatNames=Object.keys(jt.fullFormats);function kE(t){return t%4===0&&(t%100!==0||t%400===0)}var SE=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,zE=[0,31,28,31,30,31,30,31,31,30,31,30,31];function c_(t){let e=SE.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&&kE(r)?29:zE[n])}function Ud(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Dd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Vd(t){return function(r){let n=Dd.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 Fd(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 u_(t,e){if(!(t&&e))return;let r=Dd.exec(t),n=Dd.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 Ld=/t|\s/i;function s_(t){let e=Vd(t);return function(n){let o=n.split(Ld);return o.length===2&&c_(o[0])&&e(o[1])}}function l_(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function d_(t,e){if(!(t&&e))return;let[r,n]=t.split(Ld),[o,s]=e.split(Ld),i=Ud(r,o);if(i!==void 0)return i||Fd(n,s)}var RE=/\/|:/,TE=/^(?:[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 EE(t){return RE.test(t)&&TE.test(t)}var i_=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function IE(t){return i_.lastIndex=0,i_.test(t)}var PE=-(2**31),OE=2**31-1;function NE(t){return Number.isInteger(t)&&t<=OE&&t>=PE}function AE(t){return Number.isInteger(t)}function a_(){return!0}var CE=/[^\\]\\Z/;function jE(t){if(CE.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var f_=E(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.formatLimitDefinition=void 0;var ZE=qd(),Rt=K(),dr=Rt.operators,Ji={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}},ME={message:({keyword:t,schemaCode:e})=>(0,Rt.str)`should be ${Ji[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Rt._)`{comparison: ${Ji[t].okStr}, limit: ${e}}`};qn.formatLimitDefinition={keyword:Object.keys(Ji),type:"string",schemaType:"string",$data:!0,error:ME,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 ZE.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,Rt._)`${p}[${c.schemaCode}]`);t.fail$data((0,Rt.or)((0,Rt._)`typeof ${f} != "object"`,(0,Rt._)`${f} instanceof RegExp`,(0,Rt._)`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,Rt._)`${i.code.formats}${(0,Rt.getProperty)(p)}`:void 0});t.fail$data(d(m))}function d(p){return(0,Rt._)`${p}.compare(${r}, ${n}) ${Ji[o].fail} 0`}},dependencies:["format"]};var qE=t=>(t.addKeyword(qn.formatLimitDefinition),t);qn.default=qE});var y_=E((es,g_)=>{"use strict";Object.defineProperty(es,"__esModule",{value:!0});var Dn=p_(),DE=f_(),Bd=K(),m_=new Bd.Name("fullFormats"),VE=new Bd.Name("fastFormats"),Hd=(t,e={keywords:!0})=>{if(Array.isArray(e))return h_(t,e,Dn.fullFormats,m_),t;let[r,n]=e.mode==="fast"?[Dn.fastFormats,VE]:[Dn.fullFormats,m_],o=e.formats||Dn.formatNames;return h_(t,o,r,n),e.keywords&&(0,DE.default)(t),t};Hd.get=(t,e="full")=>{let n=(e==="fast"?Dn.fastFormats:Dn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function h_(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Bd._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}g_.exports=es=Hd;Object.defineProperty(es,"__esModule",{value:!0});es.default=Hd});var F={};wa(F,{BRAND:()=>db,DIRTY:()=>hr,EMPTY_PATH:()=>Uv,INVALID:()=>q,NEVER:()=>Jb,OK:()=>Ze,ParseStatus:()=>Ie,Schema:()=>J,ZodAny:()=>Kt,ZodArray:()=>Dt,ZodBigInt:()=>yr,ZodBoolean:()=>_r,ZodBranded:()=>Yn,ZodCatch:()=>Er,ZodDate:()=>vr,ZodDefault:()=>Tr,ZodDiscriminatedUnion:()=>gs,ZodEffects:()=>ut,ZodEnum:()=>zr,ZodError:()=>Ge,ZodFirstPartyTypeKind:()=>k,ZodFunction:()=>_s,ZodIntersection:()=>xr,ZodIssueCode:()=>x,ZodLazy:()=>kr,ZodLiteral:()=>Sr,ZodMap:()=>un,ZodNaN:()=>dn,ZodNativeEnum:()=>Rr,ZodNever:()=>vt,ZodNull:()=>wr,ZodNullable:()=>It,ZodNumber:()=>gr,ZodObject:()=>Ke,ZodOptional:()=>Je,ZodParsedType:()=>I,ZodPipeline:()=>Xn,ZodPromise:()=>Wt,ZodReadonly:()=>Ir,ZodRecord:()=>ys,ZodSchema:()=>J,ZodSet:()=>ln,ZodString:()=>Jt,ZodSymbol:()=>an,ZodTransformer:()=>ut,ZodTuple:()=>Et,ZodType:()=>J,ZodUndefined:()=>br,ZodUnion:()=>$r,ZodUnknown:()=>qt,ZodVoid:()=>cn,addIssueToContext:()=>R,any:()=>bb,array:()=>kb,bigint:()=>hb,boolean:()=>Fp,coerce:()=>Gb,custom:()=>Vp,date:()=>gb,datetimeRegex:()=>qp,defaultErrorMap:()=>Zt,discriminatedUnion:()=>Rb,effect:()=>qb,enum:()=>jb,function:()=>Nb,getErrorMap:()=>nn,getParsedType:()=>Tt,instanceof:()=>fb,intersection:()=>Tb,isAborted:()=>ms,isAsync:()=>on,isDirty:()=>hs,isValid:()=>Gt,late:()=>pb,lazy:()=>Ab,literal:()=>Cb,makeIssue:()=>Wn,map:()=>Pb,nan:()=>mb,nativeEnum:()=>Zb,never:()=>$b,null:()=>vb,nullable:()=>Vb,number:()=>Up,object:()=>Sa,objectUtil:()=>$a,oboolean:()=>Hb,onumber:()=>Bb,optional:()=>Db,ostring:()=>Fb,pipeline:()=>Ub,preprocess:()=>Lb,promise:()=>Mb,quotelessJson:()=>Dv,record:()=>Ib,set:()=>Ob,setErrorMap:()=>Lv,strictObject:()=>Sb,string:()=>Lp,symbol:()=>yb,transformer:()=>qb,tuple:()=>Eb,undefined:()=>_b,union:()=>zb,unknown:()=>wb,util:()=>X,void:()=>xb});var X;(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})(X||(X={}));var $a;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})($a||($a={}));var I=X.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Tt=t=>{switch(typeof t){case"undefined":return I.undefined;case"string":return I.string;case"number":return Number.isNaN(t)?I.nan:I.number;case"boolean":return I.boolean;case"function":return I.function;case"bigint":return I.bigint;case"symbol":return I.symbol;case"object":return Array.isArray(t)?I.array:t===null?I.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?I.promise:typeof Map<"u"&&t instanceof Map?I.map:typeof Set<"u"&&t instanceof Set?I.set:typeof Date<"u"&&t instanceof Date?I.date:I.object;default:return I.unknown}};var x=X.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"]),Dv=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Ge=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,X.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()}};Ge.create=t=>new Ge(t);var Vv=(t,e)=>{let r;switch(t.code){case x.invalid_type:t.received===I.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case x.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,X.jsonStringifyReplacer)}`;break;case x.unrecognized_keys:r=`Unrecognized key(s) in object: ${X.joinValues(t.keys,", ")}`;break;case x.invalid_union:r="Invalid input";break;case x.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${X.joinValues(t.options)}`;break;case x.invalid_enum_value:r=`Invalid enum value. Expected ${X.joinValues(t.options)}, received '${t.received}'`;break;case x.invalid_arguments:r="Invalid function arguments";break;case x.invalid_return_type:r="Invalid function return type";break;case x.invalid_date:r="Invalid date";break;case x.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}"`:X.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case x.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 x.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 x.custom:r="Invalid input";break;case x.invalid_intersection_types:r="Intersection results could not be merged";break;case x.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case x.not_finite:r="Number must be finite";break;default:r=e.defaultError,X.assertNever(t)}return{message:r}},Zt=Vv;var Ap=Zt;function Lv(t){Ap=t}function nn(){return Ap}var Wn=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}},Uv=[];function R(t,e){let r=nn(),n=Wn({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Zt?void 0:Zt].filter(o=>!!o)});t.common.issues.push(n)}var Ie=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 q;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 q;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}}},q=Object.freeze({status:"aborted"}),hr=t=>({status:"dirty",value:t}),Ze=t=>({status:"valid",value:t}),ms=t=>t.status==="aborted",hs=t=>t.status==="dirty",Gt=t=>t.status==="valid",on=t=>typeof Promise<"u"&&t instanceof Promise;var O;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(O||(O={}));var ct=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}},Cp=(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 Ge(t.common.issues);return this._error=r,this._error}}};function H(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 J=class{get description(){return this._def.description}_getType(e){return Tt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Tt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ie,ctx:{common:e.parent.common,data:e.data,parsedType:Tt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(on(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:Tt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return Cp(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Tt(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:Tt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(on(o)?o:Promise.resolve(o));return Cp(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:x.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 ut({schema:this,typeName:k.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 Je.create(this,this._def)}nullable(){return It.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Dt.create(this)}promise(){return Wt.create(this,this._def)}or(e){return $r.create([this,e],this._def)}and(e){return xr.create(this,e,this._def)}transform(e){return new ut({...H(this._def),schema:this,typeName:k.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Tr({...H(this._def),innerType:this,defaultValue:r,typeName:k.ZodDefault})}brand(){return new Yn({typeName:k.ZodBranded,type:this,...H(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Er({...H(this._def),innerType:this,catchValue:r,typeName:k.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Xn.create(this,e)}readonly(){return Ir.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Fv=/^c[^\s-]{8,}$/i,Bv=/^[0-9a-z]+$/,Hv=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Gv=/^[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,Jv=/^[a-z0-9_-]{21}$/i,Kv=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Wv=/^[-+]?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)?)??$/,Yv=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,Xv="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",xa,Qv=/^(?:(?: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])$/,eb=/^(?:(?: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])$/,tb=/^(([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]))$/,rb=/^(([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])$/,nb=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,ob=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Zp="((\\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])))",sb=new RegExp(`^${Zp}$`);function Mp(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 ib(t){return new RegExp(`^${Mp(t)}$`)}function qp(t){let e=`${Zp}T${Mp(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 ab(t,e){return!!((e==="v4"||!e)&&Qv.test(t)||(e==="v6"||!e)&&tb.test(t))}function cb(t,e){if(!Kv.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 ub(t,e){return!!((e==="v4"||!e)&&eb.test(t)||(e==="v6"||!e)&&rb.test(t))}var Jt=class t extends J{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==I.string){let s=this._getOrReturnCtx(e);return R(s,{code:x.invalid_type,expected:I.string,received:s.parsedType}),q}let n=new Ie,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:x.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),R(o,{code:x.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?R(o,{code:x.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&R(o,{code:x.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")Yv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"email",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")xa||(xa=new RegExp(Xv,"u")),xa.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"emoji",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")Gv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"uuid",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")Jv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"nanoid",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")Fv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Bv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cuid2",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")Hv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"ulid",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),R(o,{validation:"url",code:x.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),R(o,{validation:"regex",code:x.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),R(o,{code:x.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),R(o,{code:x.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),R(o,{code:x.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?qp(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:x.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?sb.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:x.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?ib(s).test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{code:x.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?Wv.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"duration",code:x.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?ab(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"ip",code:x.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?cb(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"jwt",code:x.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?ub(e.data,s.version)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"cidr",code:x.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?nb.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64",code:x.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?ob.test(e.data)||(o=this._getOrReturnCtx(e,o),R(o,{validation:"base64url",code:x.invalid_string,message:s.message}),n.dirty()):X.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:x.invalid_string,...O.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...O.errToObj(e)})}url(e){return this._addCheck({kind:"url",...O.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...O.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...O.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...O.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...O.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...O.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...O.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...O.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...O.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...O.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...O.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...O.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,...O.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,...O.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...O.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...O.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...O.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...O.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...O.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...O.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...O.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...O.errToObj(r)})}nonempty(e){return this.min(1,O.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:k.ZodString,coerce:t?.coerce??!1,...H(t)});function lb(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 gr=class t extends J{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)!==I.number){let s=this._getOrReturnCtx(e);return R(s,{code:x.invalid_type,expected:I.number,received:s.parsedType}),q}let n,o=new Ie;for(let s of this._def.checks)s.kind==="int"?X.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),R(n,{code:x.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),R(n,{code:x.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),R(n,{code:x.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?lb(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),R(n,{code:x.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),R(n,{code:x.not_finite,message:s.message}),o.dirty()):X.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:O.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:O.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:O.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:O.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"&&X.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)}};gr.create=t=>new gr({checks:[],typeName:k.ZodNumber,coerce:t?.coerce||!1,...H(t)});var yr=class t extends J{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)!==I.bigint)return this._getInvalidInput(e);let n,o=new Ie;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),R(n,{code:x.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),R(n,{code:x.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),R(n,{code:x.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):X.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return R(r,{code:x.invalid_type,expected:I.bigint,received:r.parsedType}),q}gte(e,r){return this.setLimit("min",e,!0,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.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:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.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}};yr.create=t=>new yr({checks:[],typeName:k.ZodBigInt,coerce:t?.coerce??!1,...H(t)});var _r=class extends J{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==I.boolean){let n=this._getOrReturnCtx(e);return R(n,{code:x.invalid_type,expected:I.boolean,received:n.parsedType}),q}return Ze(e.data)}};_r.create=t=>new _r({typeName:k.ZodBoolean,coerce:t?.coerce||!1,...H(t)});var vr=class t extends J{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==I.date){let s=this._getOrReturnCtx(e);return R(s,{code:x.invalid_type,expected:I.date,received:s.parsedType}),q}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return R(s,{code:x.invalid_date}),q}let n=new Ie,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),R(o,{code:x.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),R(o,{code:x.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):X.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:O.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:O.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}};vr.create=t=>new vr({checks:[],coerce:t?.coerce||!1,typeName:k.ZodDate,...H(t)});var an=class extends J{_parse(e){if(this._getType(e)!==I.symbol){let n=this._getOrReturnCtx(e);return R(n,{code:x.invalid_type,expected:I.symbol,received:n.parsedType}),q}return Ze(e.data)}};an.create=t=>new an({typeName:k.ZodSymbol,...H(t)});var br=class extends J{_parse(e){if(this._getType(e)!==I.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:x.invalid_type,expected:I.undefined,received:n.parsedType}),q}return Ze(e.data)}};br.create=t=>new br({typeName:k.ZodUndefined,...H(t)});var wr=class extends J{_parse(e){if(this._getType(e)!==I.null){let n=this._getOrReturnCtx(e);return R(n,{code:x.invalid_type,expected:I.null,received:n.parsedType}),q}return Ze(e.data)}};wr.create=t=>new wr({typeName:k.ZodNull,...H(t)});var Kt=class extends J{constructor(){super(...arguments),this._any=!0}_parse(e){return Ze(e.data)}};Kt.create=t=>new Kt({typeName:k.ZodAny,...H(t)});var qt=class extends J{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ze(e.data)}};qt.create=t=>new qt({typeName:k.ZodUnknown,...H(t)});var vt=class extends J{_parse(e){let r=this._getOrReturnCtx(e);return R(r,{code:x.invalid_type,expected:I.never,received:r.parsedType}),q}};vt.create=t=>new vt({typeName:k.ZodNever,...H(t)});var cn=class extends J{_parse(e){if(this._getType(e)!==I.undefined){let n=this._getOrReturnCtx(e);return R(n,{code:x.invalid_type,expected:I.void,received:n.parsedType}),q}return Ze(e.data)}};cn.create=t=>new cn({typeName:k.ZodVoid,...H(t)});var Dt=class t extends J{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==I.array)return R(r,{code:x.invalid_type,expected:I.array,received:r.parsedType}),q;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(R(r,{code:i?x.too_big:x.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&&(R(r,{code:x.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&&(R(r,{code:x.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 ct(r,i,r.path,a)))).then(i=>Ie.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new ct(r,i,r.path,a)));return Ie.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:O.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:O.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:O.toString(r)}})}nonempty(e){return this.min(1,e)}};Dt.create=(t,e)=>new Dt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:k.ZodArray,...H(e)});function sn(t){if(t instanceof Ke){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Je.create(sn(n))}return new Ke({...t._def,shape:()=>e})}else return t instanceof Dt?new Dt({...t._def,type:sn(t.element)}):t instanceof Je?Je.create(sn(t.unwrap())):t instanceof It?It.create(sn(t.unwrap())):t instanceof Et?Et.create(t.items.map(e=>sn(e))):t}var Ke=class t extends J{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=X.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==I.object){let u=this._getOrReturnCtx(e);return R(u,{code:x.invalid_type,expected:I.object,received:u.parsedType}),q}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof vt&&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 ct(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof vt){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&&(R(o,{code:x.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 ct(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=>Ie.mergeObjectSync(n,u)):Ie.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return O.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:O.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:k.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 X.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 X.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return sn(this)}partial(e){let r={};for(let n of X.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 X.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Je;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Dp(X.objectKeys(this.shape))}};Ke.create=(t,e)=>new Ke({shape:()=>t,unknownKeys:"strip",catchall:vt.create(),typeName:k.ZodObject,...H(e)});Ke.strictCreate=(t,e)=>new Ke({shape:()=>t,unknownKeys:"strict",catchall:vt.create(),typeName:k.ZodObject,...H(e)});Ke.lazycreate=(t,e)=>new Ke({shape:t,unknownKeys:"strip",catchall:vt.create(),typeName:k.ZodObject,...H(e)});var $r=class extends J{_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 Ge(a.ctx.common.issues));return R(r,{code:x.invalid_union,unionErrors:i}),q}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 Ge(c));return R(r,{code:x.invalid_union,unionErrors:a}),q}}get options(){return this._def.options}};$r.create=(t,e)=>new $r({options:t,typeName:k.ZodUnion,...H(e)});var Mt=t=>t instanceof kr?Mt(t.schema):t instanceof ut?Mt(t.innerType()):t instanceof Sr?[t.value]:t instanceof zr?t.options:t instanceof Rr?X.objectValues(t.enum):t instanceof Tr?Mt(t._def.innerType):t instanceof br?[void 0]:t instanceof wr?[null]:t instanceof Je?[void 0,...Mt(t.unwrap())]:t instanceof It?[null,...Mt(t.unwrap())]:t instanceof Yn||t instanceof Ir?Mt(t.unwrap()):t instanceof Er?Mt(t._def.innerType):[],gs=class t extends J{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==I.object)return R(r,{code:x.invalid_type,expected:I.object,received:r.parsedType}),q;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}):(R(r,{code:x.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),q)}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=Mt(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:k.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...H(n)})}};function ka(t,e){let r=Tt(t),n=Tt(e);if(t===e)return{valid:!0,data:t};if(r===I.object&&n===I.object){let o=X.objectKeys(e),s=X.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=ka(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===I.array&&n===I.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=ka(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===I.date&&n===I.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var xr=class extends J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(ms(s)||ms(i))return q;let a=ka(s.value,i.value);return a.valid?((hs(s)||hs(i))&&r.dirty(),{status:r.value,value:a.data}):(R(n,{code:x.invalid_intersection_types}),q)};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}))}};xr.create=(t,e,r)=>new xr({left:t,right:e,typeName:k.ZodIntersection,...H(r)});var Et=class t extends J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==I.array)return R(n,{code:x.invalid_type,expected:I.array,received:n.parsedType}),q;if(n.data.length<this._def.items.length)return R(n,{code:x.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),q;!this._def.rest&&n.data.length>this._def.items.length&&(R(n,{code:x.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 ct(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Ie.mergeArray(r,i)):Ie.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Et.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Et({items:t,typeName:k.ZodTuple,rest:null,...H(e)})};var ys=class t extends J{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!==I.object)return R(n,{code:x.invalid_type,expected:I.object,received:n.parsedType}),q;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new ct(n,a,n.path,a)),value:i._parse(new ct(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Ie.mergeObjectAsync(r,o):Ie.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof J?new t({keyType:e,valueType:r,typeName:k.ZodRecord,...H(n)}):new t({keyType:Jt.create(),valueType:e,typeName:k.ZodRecord,...H(r)})}},un=class extends J{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!==I.map)return R(n,{code:x.invalid_type,expected:I.map,received:n.parsedType}),q;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new ct(n,a,n.path,[u,"key"])),value:s._parse(new ct(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 q;(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 q;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};un.create=(t,e,r)=>new un({valueType:e,keyType:t,typeName:k.ZodMap,...H(r)});var ln=class t extends J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==I.set)return R(n,{code:x.invalid_type,expected:I.set,received:n.parsedType}),q;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(R(n,{code:x.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&&(R(n,{code:x.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 q;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 ct(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:O.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:O.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};ln.create=(t,e)=>new ln({valueType:t,minSize:null,maxSize:null,typeName:k.ZodSet,...H(e)});var _s=class t extends J{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==I.function)return R(r,{code:x.invalid_type,expected:I.function,received:r.parsedType}),q;function n(a,c){return Wn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,nn(),Zt].filter(u=>!!u),issueData:{code:x.invalid_arguments,argumentsError:c}})}function o(a,c){return Wn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,nn(),Zt].filter(u=>!!u),issueData:{code:x.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof Wt){let a=this;return Ze(async function(...c){let u=new Ge([]),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 Ze(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Ge([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Ge([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:Et.create(e).rest(qt.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||Et.create([]).rest(qt.create()),returns:r||qt.create(),typeName:k.ZodFunction,...H(n)})}},kr=class extends J{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})}};kr.create=(t,e)=>new kr({getter:t,typeName:k.ZodLazy,...H(e)});var Sr=class extends J{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return R(r,{received:r.data,code:x.invalid_literal,expected:this._def.value}),q}return{status:"valid",value:e.data}}get value(){return this._def.value}};Sr.create=(t,e)=>new Sr({value:t,typeName:k.ZodLiteral,...H(e)});function Dp(t,e){return new zr({values:t,typeName:k.ZodEnum,...H(e)})}var zr=class t extends J{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return R(r,{expected:X.joinValues(n),received:r.parsedType,code:x.invalid_type}),q}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 R(r,{received:r.data,code:x.invalid_enum_value,options:n}),q}return Ze(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})}};zr.create=Dp;var Rr=class extends J{_parse(e){let r=X.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==I.string&&n.parsedType!==I.number){let o=X.objectValues(r);return R(n,{expected:X.joinValues(o),received:n.parsedType,code:x.invalid_type}),q}if(this._cache||(this._cache=new Set(X.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=X.objectValues(r);return R(n,{received:n.data,code:x.invalid_enum_value,options:o}),q}return Ze(e.data)}get enum(){return this._def.values}};Rr.create=(t,e)=>new Rr({values:t,typeName:k.ZodNativeEnum,...H(e)});var Wt=class extends J{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==I.promise&&r.common.async===!1)return R(r,{code:x.invalid_type,expected:I.promise,received:r.parsedType}),q;let n=r.parsedType===I.promise?r.data:Promise.resolve(r.data);return Ze(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Wt.create=(t,e)=>new Wt({type:t,typeName:k.ZodPromise,...H(e)});var ut=class extends J{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===k.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=>{R(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 q;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?q:c.status==="dirty"?hr(c.value):r.value==="dirty"?hr(c.value):c});{if(r.value==="aborted")return q;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?q:a.status==="dirty"?hr(a.value):r.value==="dirty"?hr(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"?q:(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"?q:(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 q;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})):q);X.assertNever(o)}};ut.create=(t,e,r)=>new ut({schema:t,typeName:k.ZodEffects,effect:e,...H(r)});ut.createWithPreprocess=(t,e,r)=>new ut({schema:e,effect:{type:"preprocess",transform:t},typeName:k.ZodEffects,...H(r)});var Je=class extends J{_parse(e){return this._getType(e)===I.undefined?Ze(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Je.create=(t,e)=>new Je({innerType:t,typeName:k.ZodOptional,...H(e)});var It=class extends J{_parse(e){return this._getType(e)===I.null?Ze(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};It.create=(t,e)=>new It({innerType:t,typeName:k.ZodNullable,...H(e)});var Tr=class extends J{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===I.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Tr.create=(t,e)=>new Tr({innerType:t,typeName:k.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...H(e)});var Er=class extends J{_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 on(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Ge(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ge(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Er.create=(t,e)=>new Er({innerType:t,typeName:k.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...H(e)});var dn=class extends J{_parse(e){if(this._getType(e)!==I.nan){let n=this._getOrReturnCtx(e);return R(n,{code:x.invalid_type,expected:I.nan,received:n.parsedType}),q}return{status:"valid",value:e.data}}};dn.create=t=>new dn({typeName:k.ZodNaN,...H(t)});var db=Symbol("zod_brand"),Yn=class extends J{_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}},Xn=class t extends J{_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"?q:s.status==="dirty"?(r.dirty(),hr(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"?q: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:k.ZodPipeline})}},Ir=class extends J{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Gt(o)&&(o.value=Object.freeze(o.value)),o);return on(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Ir.create=(t,e)=>new Ir({innerType:t,typeName:k.ZodReadonly,...H(e)});function jp(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Vp(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=jp(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=jp(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Kt.create()}var pb={object:Ke.lazycreate},k;(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"})(k||(k={}));var fb=(t,e={message:`Input not instance of ${t.name}`})=>Vp(r=>r instanceof t,e),Lp=Jt.create,Up=gr.create,mb=dn.create,hb=yr.create,Fp=_r.create,gb=vr.create,yb=an.create,_b=br.create,vb=wr.create,bb=Kt.create,wb=qt.create,$b=vt.create,xb=cn.create,kb=Dt.create,Sa=Ke.create,Sb=Ke.strictCreate,zb=$r.create,Rb=gs.create,Tb=xr.create,Eb=Et.create,Ib=ys.create,Pb=un.create,Ob=ln.create,Nb=_s.create,Ab=kr.create,Cb=Sr.create,jb=zr.create,Zb=Rr.create,Mb=Wt.create,qb=ut.create,Db=Je.create,Vb=It.create,Lb=ut.createWithPreprocess,Ub=Xn.create,Fb=()=>Lp().optional(),Bb=()=>Up().optional(),Hb=()=>Fp().optional(),Gb={string:t=>Jt.create({...t,coerce:!0}),number:t=>gr.create({...t,coerce:!0}),boolean:t=>_r.create({...t,coerce:!0}),bigint:t=>yr.create({...t,coerce:!0}),date:t=>vr.create({...t,coerce:!0})};var Jb=q;var Kb=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 Wb=Symbol("zod_brand"),Vt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},vs={};function rt(t){return t&&Object.assign(vs,t),vs}var Q={};wa(Q,{BIGINT_FORMAT_RANGES:()=>Hp,Class:()=>Ra,NUMBER_FORMAT_RANGES:()=>Aa,aborted:()=>Or,allowsEval:()=>Pa,assert:()=>tw,assertEqual:()=>Yb,assertIs:()=>Qb,assertNever:()=>ew,assertNotEqual:()=>Xb,assignProp:()=>Ia,cached:()=>to,captureStackTrace:()=>ws,cleanEnum:()=>mw,cleanRegex:()=>no,clone:()=>nt,createTransparentProxy:()=>aw,defineLazy:()=>de,esc:()=>Pr,escapeRegex:()=>Yt,extend:()=>lw,finalizeIssue:()=>bt,floatSafeRemainder:()=>Ea,getElementAtPath:()=>rw,getEnumValues:()=>eo,getLengthableOrigin:()=>oo,getParsedType:()=>iw,getSizableOrigin:()=>Gp,isObject:()=>pn,isPlainObject:()=>fn,issue:()=>Ca,joinValues:()=>bs,jsonStringifyReplacer:()=>Ta,merge:()=>dw,normalizeParams:()=>D,nullish:()=>ro,numKeys:()=>sw,omit:()=>uw,optionalKeys:()=>Na,partial:()=>pw,pick:()=>cw,prefixIssues:()=>Pt,primitiveTypes:()=>Bp,promiseAllObject:()=>nw,propertyKeyTypes:()=>Oa,randomString:()=>ow,required:()=>fw,stringifyPrimitive:()=>$s,unwrapMessage:()=>Qn});function Yb(t){return t}function Xb(t){return t}function Qb(t){}function ew(t){throw new Error}function tw(t){}function eo(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 bs(t,e="|"){return t.map(r=>$s(r)).join(e)}function Ta(t,e){return typeof e=="bigint"?e.toString():e}function to(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function ro(t){return t==null}function no(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Ea(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 Ia(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function rw(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function nw(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 ow(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Pr(t){return JSON.stringify(t)}var ws=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function pn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Pa=to(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function fn(t){if(pn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(pn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function sw(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var iw=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}`)}},Oa=new Set(["string","number","symbol"]),Bp=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Yt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function nt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function D(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 aw(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 Na(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Aa={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]},Hp={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function cw(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 nt(t,{...t._zod.def,shape:r,checks:[]})}function uw(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 nt(t,{...t._zod.def,shape:r,checks:[]})}function lw(t,e){if(!fn(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 Ia(this,"shape",n),n},checks:[]};return nt(t,r)}function dw(t,e){return nt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ia(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function pw(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 nt(e,{...e._zod.def,shape:o,checks:[]})}function fw(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 nt(e,{...e._zod.def,shape:o,checks:[]})}function Or(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 Qn(t){return typeof t=="string"?t:t?.message}function bt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Qn(t.inst?._zod.def?.error?.(t))??Qn(e?.error?.(t))??Qn(r.customError?.(t))??Qn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Gp(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function oo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Ca(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function mw(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ra=class{constructor(...e){}};var Jp=(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,Ta,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},xs=b("$ZodError",Jp),so=b("$ZodError",Jp,{Parent:Error});function ja(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 Za(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 Ma=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 Vt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>bt(c,s,rt())));throw ws(a,o?.callee),a}return i.value},qa=Ma(so),Da=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=>bt(c,s,rt())));throw ws(a,o?.callee),a}return i.value},Va=Da(so),La=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 Vt;return s.issues.length?{success:!1,error:new(t??xs)(s.issues.map(i=>bt(i,o,rt())))}:{success:!0,data:s.value}},Nr=La(so),Ua=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=>bt(i,o,rt())))}:{success:!0,data:s.value}},Ar=Ua(so);var Kp=/^[cC][^\s-]{8,}$/,Wp=/^[0-9a-z]+$/,Yp=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Xp=/^[0-9a-vA-V]{20}$/,Qp=/^[A-Za-z0-9]{27}$/,ef=/^[a-zA-Z0-9_-]{21}$/,tf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var rf=/^([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})$/,Fa=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 nf=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var gw="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function of(){return new RegExp(gw,"u")}var sf=/^(?:(?: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])$/,af=/^(([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})$/,cf=/^((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])$/,uf=/^(([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])$/,lf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ba=/^[A-Za-z0-9_-]*$/,df=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var pf=/^\+(?:[0-9]){6,14}[0-9]$/,ff="(?:(?:\\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])))",mf=new RegExp(`^${ff}$`);function hf(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 gf(t){return new RegExp(`^${hf(t)}$`)}function yf(t){let e=hf({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(`^${ff}T(?:${n})$`)}var _f=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var vf=/^\d+$/,bf=/^-?\d+(?:\.\d+)?/i,wf=/true|false/i,$f=/null/i;var xf=/^[^A-Z]*$/,kf=/^[^a-z]*$/;var Pe=b("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Sf={number:"number",bigint:"bigint",object:"date"},Ha=b("$ZodCheckLessThan",(t,e)=>{Pe.init(t,e);let r=Sf[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})}}),Ga=b("$ZodCheckGreaterThan",(t,e)=>{Pe.init(t,e);let r=Sf[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})}}),zf=b("$ZodCheckMultipleOf",(t,e)=>{Pe.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):Ea(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})}}),Rf=b("$ZodCheckNumberFormat",(t,e)=>{Pe.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Aa[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=vf)}),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 Tf=b("$ZodCheckMaxLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!ro(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=oo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Ef=b("$ZodCheckMinLength",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!ro(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=oo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),If=b("$ZodCheckLengthEquals",(t,e)=>{var r;Pe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!ro(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=oo(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})}}),io=b("$ZodCheckStringFormat",(t,e)=>{var r,n;Pe.init(t,e),t._zod.onattach.push(o=>{let s=o._zod.bag;s.format=e.format,e.pattern&&(s.patterns??(s.patterns=new Set),s.patterns.add(e.pattern))}),e.pattern?(r=t._zod).check??(r.check=o=>{e.pattern.lastIndex=0,!e.pattern.test(o.value)&&o.issues.push({origin:"string",code:"invalid_format",format:e.format,input:o.value,...e.pattern?{pattern:e.pattern.toString()}:{},inst:t,continue:!e.abort})}):(n=t._zod).check??(n.check=()=>{})}),Pf=b("$ZodCheckRegex",(t,e)=>{io.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})}}),Of=b("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=xf),io.init(t,e)}),Nf=b("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=kf),io.init(t,e)}),Af=b("$ZodCheckIncludes",(t,e)=>{Pe.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})}}),Cf=b("$ZodCheckStartsWith",(t,e)=>{Pe.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})}}),jf=b("$ZodCheckEndsWith",(t,e)=>{Pe.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 Zf=b("$ZodCheckOverwrite",(t,e)=>{Pe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Ss=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
|
|
13
|
-
if (${
|
|
12
|
+
`))}};var qf={major:4,minor:0,patch:0};var ce=b("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=qf;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=Or(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 Vt;if(u||p instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await p,s.issues.length!==d&&(c||(c=Or(s,d)))});else{if(s.issues.length===d)continue;c||(c=Or(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 Vt;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Nr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Ar(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),ao=b("$ZodString",(t,e)=>{ce.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??_f(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)=>{io.init(t,e),ao.init(t,e)}),Ka=b("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=rf),pe.init(t,e)}),Wa=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=Fa(n))}else e.pattern??(e.pattern=Fa());pe.init(t,e)}),Ya=b("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=nf),pe.init(t,e)}),Xa=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:df.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})}}}),Qa=b("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=of()),pe.init(t,e)}),ec=b("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=ef),pe.init(t,e)}),tc=b("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Kp),pe.init(t,e)}),rc=b("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Wp),pe.init(t,e)}),nc=b("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Yp),pe.init(t,e)}),oc=b("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Xp),pe.init(t,e)}),sc=b("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Qp),pe.init(t,e)}),Kf=b("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=yf(e)),pe.init(t,e)}),Wf=b("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=mf),pe.init(t,e)}),Yf=b("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=gf(e)),pe.init(t,e)}),Xf=b("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=tf),pe.init(t,e)}),ic=b("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=sf),pe.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),ac=b("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=af),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})}}}),cc=b("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=cf),pe.init(t,e)}),uc=b("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=uf),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 Qf(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var lc=b("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=lf),pe.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Qf(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function yw(t){if(!Ba.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Qf(r)}var dc=b("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Ba),pe.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{yw(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),pc=b("$ZodE164",(t,e)=>{e.pattern??(e.pattern=pf),pe.init(t,e)});function _w(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 fc=b("$ZodJWT",(t,e)=>{pe.init(t,e),t._zod.check=r=>{_w(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Rs=b("$ZodNumber",(t,e)=>{ce.init(t,e),t._zod.pattern=t._zod.bag.pattern??bf,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}}),mc=b("$ZodNumber",(t,e)=>{Rf.init(t,e),Rs.init(t,e)}),hc=b("$ZodBoolean",(t,e)=>{ce.init(t,e),t._zod.pattern=wf,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 gc=b("$ZodNull",(t,e)=>{ce.init(t,e),t._zod.pattern=$f,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 yc=b("$ZodUnknown",(t,e)=>{ce.init(t,e),t._zod.parse=r=>r}),_c=b("$ZodNever",(t,e)=>{ce.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Df(t,e,r){t.issues.length&&e.issues.push(...Pt(r,t.issues)),e.value[r]=t.value}var vc=b("$ZodArray",(t,e)=>{ce.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=>Df(u,r,i))):Df(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function zs(t,e,r){t.issues.length&&e.issues.push(...Pt(r,t.issues)),e.value[r]=t.value}function Vf(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 Ts=b("$ZodObject",(t,e)=>{ce.init(t,e);let r=to(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof ce))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let p=Na(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 Ss(["shape","payload","ctx"]),f=r.value,m=y=>{let $=Pr(y);return`shape[${$}]._zod.run({ value: input[${$}], issues: [] }, ctx)`};p.write("const input = payload.value;");let h=Object.create(null),g=0;for(let y of f.keys)h[y]=`key_${g++}`;p.write("const newResult = {}");for(let y of f.keys)if(f.optionalKeys.has(y)){let $=h[y];p.write(`const ${$} = ${m(y)};`);let z=Pr(y);p.write(`
|
|
13
|
+
if (${$}.issues.length) {
|
|
14
14
|
if (input[${z}] === undefined) {
|
|
15
15
|
if (${z} in input) {
|
|
16
16
|
newResult[${z}] = undefined;
|
|
17
17
|
}
|
|
18
18
|
} else {
|
|
19
19
|
payload.issues = payload.issues.concat(
|
|
20
|
-
${
|
|
20
|
+
${$}.issues.map((iss) => ({
|
|
21
21
|
...iss,
|
|
22
22
|
path: iss.path ? [${z}, ...iss.path] : [${z}],
|
|
23
23
|
}))
|
|
24
24
|
);
|
|
25
25
|
}
|
|
26
|
-
} else if (${
|
|
26
|
+
} else if (${$}.value === undefined) {
|
|
27
27
|
if (${z} in input) newResult[${z}] = undefined;
|
|
28
28
|
} else {
|
|
29
|
-
newResult[${z}] = ${
|
|
29
|
+
newResult[${z}] = ${$}.value;
|
|
30
30
|
}
|
|
31
|
-
`)}else{let
|
|
32
|
-
if (${
|
|
31
|
+
`)}else{let $=h[y];p.write(`const ${$} = ${m(y)};`),p.write(`
|
|
32
|
+
if (${$}.issues.length) payload.issues = payload.issues.concat(${$}.issues.map(iss => ({
|
|
33
33
|
...iss,
|
|
34
|
-
path: iss.path ? [${
|
|
35
|
-
})));`),p.write(`newResult[${Er(_)}] = ${w}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let v=p.compile();return(_,w)=>v(d,_,w)},o,s=ln,i=!gs.jitless,c=i&&Ea.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 z of l.keys){let Z=w[z],De=Z._zod.run({value:f[z],issues:[]},p),it=Z._zod.optin==="optional"&&Z._zod.optout==="optional";De instanceof Promise?m.push(De.then(en=>it?Zf(en,d,z,f):xs(en,d,z))):it?Zf(De,d,z,f):xs(De,d,z)}}if(!u)return m.length?Promise.all(m).then(()=>d):d;let h=[],g=l.keySet,v=u._zod,_=v.def.type;for(let w of Object.keys(f)){if(g.has(w))continue;if(_==="never"){h.push(w);continue}let z=v.run({value:f[w],issues:[]},p);z instanceof Promise?m.push(z.then(Z=>xs(Z,d,w))):xs(z,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 Mf(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=>vt(s,n,tt())))}),e}var zs=b("$ZodUnion",(t,e)=>{ce.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=>to(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=>Mf(i,r,t,n)):Mf(s,r,t,n)}}),vc=b("$ZodDiscriminatedUnion",(t,e)=>{zs.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=Xn(()=>{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)}}),bc=b("$ZodIntersection",(t,e)=>{ce.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])=>qf(r,c,u)):qf(r,s,i)}});function Ja(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=Ja(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=Ja(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 qf(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=Ja(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 wc=b("$ZodRecord",(t,e)=>{ce.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=>vt(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 $c=b("$ZodEnum",(t,e)=>{ce.init(t,e);let r=Qn(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ia.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}}),xc=b("$ZodLiteral",(t,e)=>{ce.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 kc=b("$ZodTransform",(t,e)=>{ce.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}}),Sc=b("$ZodOptional",(t,e)=>{ce.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(`^(${to(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)}),zc=b("$ZodNullable",(t,e)=>{ce.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(`^(${to(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)}),Rc=b("$ZodDefault",(t,e)=>{ce.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=>Df(s,e)):Df(o,e)}});function Df(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Tc=b("$ZodPrefault",(t,e)=>{ce.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))}),Pc=b("$ZodNonOptional",(t,e)=>{ce.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=>Vf(s,t)):Vf(o,t)}});function Vf(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 Ec=b("$ZodCatch",(t,e)=>{ce.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=>vt(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=>vt(s,n,tt()))},input:r.value}),r.issues=[]),r)}});var Ic=b("$ZodPipe",(t,e)=>{ce.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=>Lf(s,e,n)):Lf(o,e,n)}});function Lf(t,e,r){return Ir(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Oc=b("$ZodReadonly",(t,e)=>{ce.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(Uf):Uf(o)}});function Uf(t){return t.value=Object.freeze(t.value),t}var Nc=b("$ZodCustom",(t,e)=>{Ee.init(t,e),ce.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=>Ff(s,r,n,t));Ff(o,r,n,t)}});function Ff(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(Aa(o))}}var hw=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},gw=()=>{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 ${hw(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${vs(n.values[0])}`:`Invalid option: expected one of ${ys(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":""}: ${ys(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 Wf(){return{localeError:gw()}}var yw=Symbol("ZodOutput"),_w=Symbol("ZodInput"),io=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 Yf(){return new io}var Qt=Yf();function Ac(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 Rs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...q(e)})}function jc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...q(e)})}function Zc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...q(e)})}function Mc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...q(e)})}function qc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...q(e)})}function Dc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...q(e)})}function Vc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...q(e)})}function Lc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...q(e)})}function Uc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...q(e)})}function Fc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...q(e)})}function Bc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...q(e)})}function Hc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...q(e)})}function Jc(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 Kc(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...q(e)})}function Wc(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...q(e)})}function Yc(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...q(e)})}function Qc(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...q(e)})}function Xc(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...q(e)})}function eu(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...q(e)})}function tu(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...q(e)})}function Qf(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...q(e)})}function Xf(t,e){return new t({type:"string",format:"date",check:"string_format",...q(e)})}function em(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...q(e)})}function tm(t,e){return new t({type:"string",format:"duration",check:"string_format",...q(e)})}function ru(t,e){return new t({type:"number",checks:[],...q(e)})}function nu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...q(e)})}function ou(t,e){return new t({type:"boolean",...q(e)})}function su(t,e){return new t({type:"null",...q(e)})}function iu(t){return new t({type:"unknown"})}function au(t,e){return new t({type:"never",...q(e)})}function Ts(t,e){return new Ba({check:"less_than",...q(e),value:t,inclusive:!1})}function ao(t,e){return new Ba({check:"less_than",...q(e),value:t,inclusive:!0})}function Ps(t,e){return new Ha({check:"greater_than",...q(e),value:t,inclusive:!1})}function co(t,e){return new Ha({check:"greater_than",...q(e),value:t,inclusive:!0})}function Es(t,e){return new $f({check:"multiple_of",...q(e),value:t})}function Is(t,e){return new kf({check:"max_length",...q(e),maximum:t})}function pn(t,e){return new Sf({check:"min_length",...q(e),minimum:t})}function Os(t,e){return new zf({check:"length_equals",...q(e),length:t})}function cu(t,e){return new Rf({check:"string_format",format:"regex",...q(e),pattern:t})}function uu(t){return new Tf({check:"string_format",format:"lowercase",...q(t)})}function lu(t){return new Pf({check:"string_format",format:"uppercase",...q(t)})}function du(t,e){return new Ef({check:"string_format",format:"includes",...q(e),includes:t})}function pu(t,e){return new If({check:"string_format",format:"starts_with",...q(e),prefix:t})}function fu(t,e){return new Of({check:"string_format",format:"ends_with",...q(e),suffix:t})}function Ar(t){return new Nf({check:"overwrite",tx:t})}function mu(t){return Ar(e=>e.normalize(t))}function hu(){return Ar(t=>t.trim())}function gu(){return Ar(t=>t.toLowerCase())}function yu(){return Ar(t=>t.toUpperCase())}function rm(t,e,r){return new t({type:"array",element:e,...q(r)})}function _u(t,e,r){let n=q(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function vu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...q(r)})}var Ns=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:v,patterns:_,contentEncoding:w}=e._zod.bag;if(typeof h=="number"&&(m.minLength=h),typeof g=="number"&&(m.maxLength=g),v&&(m.format=s[v]??v,m.format===""&&delete m.format),w&&(m.contentEncoding=w),_&&_.size>0){let z=[..._];z.length===1?m.pattern=z[0].source:z.length>1&&(a.schema.allOf=[...z.map(Z=>({...this.target==="draft-7"?{type:"string"}:{},pattern:Z.source}))])}break}case"number":{let m=f,{minimum:h,maximum:g,format:v,multipleOf:_,exclusiveMaximum:w,exclusiveMinimum:z}=e._zod.bag;typeof v=="string"&&v.includes("int")?m.type="integer":m.type="number",typeof z=="number"&&(m.exclusiveMinimum=z),typeof h=="number"&&(m.minimum=h,typeof z=="number"&&(z>=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 _=="number"&&(m.multipleOf=_);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 _ in h)m.properties[_]=this.process(h[_],{...d,path:[...d.path,"properties",_]});let g=new Set(Object.keys(h)),v=new Set([...g].filter(_=>{let w=o.shape[_]._zod;return this.io==="input"?w.optin===void 0:w.optout===void 0}));v.size>0&&(m.required=Array.from(v)),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]}),v=w=>"allOf"in w&&Object.keys(w).length===1,_=[...v(h)?h.allOf:[h],...v(g)?g.allOf:[g]];m.allOf=_;break}case"tuple":{let m=f;m.type="array";let h=o.items.map((_,w)=>this.process(_,{...d,path:[...d.path,"prefixItems",w]}));if(this.target==="draft-2020-12"?m.prefixItems=h:m.items=h,o.rest){let _=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?m.items=_:m.additionalItems=_}o.rest&&(m.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:v}=e._zod.bag;typeof g=="number"&&(m.minItems=g),typeof v=="number"&&(m.maxItems=v);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=Qn(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:v,mime:_}=e._zod.bag;g!==void 0&&(h.minLength=g),v!==void 0&&(h.maxLength=v),_?_.length===1?(h.contentMediaType=_[0],Object.assign(m,h)):m.anyOf=_.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??(_=>_);if(h)return{ref:g(h)};let v=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=v,{defId:v,ref:`${g("__shared")}#/${d}/${v}`}}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>
|
|
34
|
+
path: iss.path ? [${Pr(y)}, ...iss.path] : [${Pr(y)}]
|
|
35
|
+
})));`),p.write(`newResult[${Pr(y)}] = ${$}.value`)}p.write("payload.value = newResult;"),p.write("return payload;");let v=p.compile();return(y,$)=>v(d,y,$)},o,s=pn,i=!vs.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 $=l.shape;for(let z of l.keys){let M=$[z],Ve=M._zod.run({value:f[z],issues:[]},p),at=M._zod.optin==="optional"&&M._zod.optout==="optional";Ve instanceof Promise?m.push(Ve.then(rn=>at?Vf(rn,d,z,f):zs(rn,d,z))):at?Vf(Ve,d,z,f):zs(Ve,d,z)}}if(!u)return m.length?Promise.all(m).then(()=>d):d;let h=[],g=l.keySet,v=u._zod,y=v.def.type;for(let $ of Object.keys(f)){if(g.has($))continue;if(y==="never"){h.push($);continue}let z=v.run({value:f[$],issues:[]},p);z instanceof Promise?m.push(z.then(M=>zs(M,d,$))):zs(z,d,$)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),m.length?Promise.all(m).then(()=>d):d}});function Lf(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=>bt(s,n,rt())))}),e}var Es=b("$ZodUnion",(t,e)=>{ce.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=>no(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=>Lf(i,r,t,n)):Lf(s,r,t,n)}}),bc=b("$ZodDiscriminatedUnion",(t,e)=>{Es.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=to(()=>{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(!pn(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)}}),wc=b("$ZodIntersection",(t,e)=>{ce.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])=>Uf(r,c,u)):Uf(r,s,i)}});function Ja(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(fn(t)&&fn(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=Ja(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=Ja(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 Uf(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Or(t))return t;let n=Ja(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 $c=b("$ZodRecord",(t,e)=>{ce.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!fn(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=>bt(u,n,rt())),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 xc=b("$ZodEnum",(t,e)=>{ce.init(t,e);let r=eo(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Oa.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}}),kc=b("$ZodLiteral",(t,e)=>{ce.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 Sc=b("$ZodTransform",(t,e)=>{ce.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 Vt;return r.value=o,r}}),zc=b("$ZodOptional",(t,e)=>{ce.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(`^(${no(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)}),Rc=b("$ZodNullable",(t,e)=>{ce.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(`^(${no(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)}),Tc=b("$ZodDefault",(t,e)=>{ce.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=>Ff(s,e)):Ff(o,e)}});function Ff(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Ec=b("$ZodPrefault",(t,e)=>{ce.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))}),Ic=b("$ZodNonOptional",(t,e)=>{ce.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=>Bf(s,t)):Bf(o,t)}});function Bf(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)=>{ce.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=>bt(i,n,rt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>bt(s,n,rt()))},input:r.value}),r.issues=[]),r)}});var Oc=b("$ZodPipe",(t,e)=>{ce.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=>Hf(s,e,n)):Hf(o,e,n)}});function Hf(t,e,r){return Or(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Nc=b("$ZodReadonly",(t,e)=>{ce.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(Gf):Gf(o)}});function Gf(t){return t.value=Object.freeze(t.value),t}var Ac=b("$ZodCustom",(t,e)=>{Pe.init(t,e),ce.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=>Jf(s,r,n,t));Jf(o,r,n,t)}});function Jf(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(Ca(o))}}var vw=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},bw=()=>{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 ${vw(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${$s(n.values[0])}`:`Invalid option: expected one of ${bs(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":""}: ${bs(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 em(){return{localeError:bw()}}var ww=Symbol("ZodOutput"),$w=Symbol("ZodInput"),co=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 tm(){return new co}var Xt=tm();function Cc(t,e){return new t({type:"string",...D(e)})}function jc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...D(e)})}function Is(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...D(e)})}function Zc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...D(e)})}function Mc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...D(e)})}function qc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...D(e)})}function Dc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...D(e)})}function Vc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...D(e)})}function Lc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...D(e)})}function Uc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...D(e)})}function Fc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...D(e)})}function Bc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...D(e)})}function Hc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...D(e)})}function Gc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...D(e)})}function Jc(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...D(e)})}function Kc(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...D(e)})}function Wc(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...D(e)})}function Yc(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...D(e)})}function Xc(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...D(e)})}function Qc(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...D(e)})}function eu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...D(e)})}function tu(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...D(e)})}function ru(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...D(e)})}function rm(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...D(e)})}function nm(t,e){return new t({type:"string",format:"date",check:"string_format",...D(e)})}function om(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...D(e)})}function sm(t,e){return new t({type:"string",format:"duration",check:"string_format",...D(e)})}function nu(t,e){return new t({type:"number",checks:[],...D(e)})}function ou(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...D(e)})}function su(t,e){return new t({type:"boolean",...D(e)})}function iu(t,e){return new t({type:"null",...D(e)})}function au(t){return new t({type:"unknown"})}function cu(t,e){return new t({type:"never",...D(e)})}function Ps(t,e){return new Ha({check:"less_than",...D(e),value:t,inclusive:!1})}function uo(t,e){return new Ha({check:"less_than",...D(e),value:t,inclusive:!0})}function Os(t,e){return new Ga({check:"greater_than",...D(e),value:t,inclusive:!1})}function lo(t,e){return new Ga({check:"greater_than",...D(e),value:t,inclusive:!0})}function Ns(t,e){return new zf({check:"multiple_of",...D(e),value:t})}function As(t,e){return new Tf({check:"max_length",...D(e),maximum:t})}function mn(t,e){return new Ef({check:"min_length",...D(e),minimum:t})}function Cs(t,e){return new If({check:"length_equals",...D(e),length:t})}function uu(t,e){return new Pf({check:"string_format",format:"regex",...D(e),pattern:t})}function lu(t){return new Of({check:"string_format",format:"lowercase",...D(t)})}function du(t){return new Nf({check:"string_format",format:"uppercase",...D(t)})}function pu(t,e){return new Af({check:"string_format",format:"includes",...D(e),includes:t})}function fu(t,e){return new Cf({check:"string_format",format:"starts_with",...D(e),prefix:t})}function mu(t,e){return new jf({check:"string_format",format:"ends_with",...D(e),suffix:t})}function Cr(t){return new Zf({check:"overwrite",tx:t})}function hu(t){return Cr(e=>e.normalize(t))}function gu(){return Cr(t=>t.trim())}function yu(){return Cr(t=>t.toLowerCase())}function _u(){return Cr(t=>t.toUpperCase())}function im(t,e,r){return new t({type:"array",element:e,...D(r)})}function vu(t,e,r){let n=D(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function bu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...D(r)})}var js=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Xt,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:v,patterns:y,contentEncoding:$}=e._zod.bag;if(typeof h=="number"&&(m.minLength=h),typeof g=="number"&&(m.maxLength=g),v&&(m.format=s[v]??v,m.format===""&&delete m.format),$&&(m.contentEncoding=$),y&&y.size>0){let z=[...y];z.length===1?m.pattern=z[0].source:z.length>1&&(a.schema.allOf=[...z.map(M=>({...this.target==="draft-7"?{type:"string"}:{},pattern:M.source}))])}break}case"number":{let m=f,{minimum:h,maximum:g,format:v,multipleOf:y,exclusiveMaximum:$,exclusiveMinimum:z}=e._zod.bag;typeof v=="string"&&v.includes("int")?m.type="integer":m.type="number",typeof z=="number"&&(m.exclusiveMinimum=z),typeof h=="number"&&(m.minimum=h,typeof z=="number"&&(z>=h?delete m.minimum:delete m.exclusiveMinimum)),typeof $=="number"&&(m.exclusiveMaximum=$),typeof g=="number"&&(m.maximum=g,typeof $=="number"&&($<=g?delete m.maximum:delete m.exclusiveMaximum)),typeof y=="number"&&(m.multipleOf=y);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 y in h)m.properties[y]=this.process(h[y],{...d,path:[...d.path,"properties",y]});let g=new Set(Object.keys(h)),v=new Set([...g].filter(y=>{let $=o.shape[y]._zod;return this.io==="input"?$.optin===void 0:$.optout===void 0}));v.size>0&&(m.required=Array.from(v)),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]}),v=$=>"allOf"in $&&Object.keys($).length===1,y=[...v(h)?h.allOf:[h],...v(g)?g.allOf:[g]];m.allOf=y;break}case"tuple":{let m=f;m.type="array";let h=o.items.map((y,$)=>this.process(y,{...d,path:[...d.path,"prefixItems",$]}));if(this.target==="draft-2020-12"?m.prefixItems=h:m.items=h,o.rest){let y=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?m.items=y:m.additionalItems=y}o.rest&&(m.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:v}=e._zod.bag;typeof g=="number"&&(m.minItems=g),typeof v=="number"&&(m.maxItems=v);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=eo(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:v,mime:y}=e._zod.bag;g!==void 0&&(h.minLength=g),v!==void 0&&(h.maxLength=v),y?y.length===1?(h.contentMediaType=y[0],Object.assign(m,h)):m.anyOf=y.map($=>({...h,contentMediaType:$})):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"&&Se(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??(y=>y);if(h)return{ref:g(h)};let v=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=v,{defId:v,ref:`${g("__shared")}#/${d}/${v}`}}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 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 bu(t,e){if(t instanceof io){let n=new Ns(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 Ns(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 Xw=b("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ce.init(t,e),t.def=e,t.parse=(r,n)=>Ma(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Or(t,r,n),t.parseAsync=async(r,n)=>Da(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 e$=b("ZodMiniObject",(t,e)=>{Ss.init(t,e),Xw.init(t,e),X.defineLazy(t,"shape",()=>e.shape)});function wu(t,e){let r={type:"object",get shape(){return X.assignProp(this,"shape",{...t}),this.shape},...X.normalizeParams(e)};return new e$(r)}function ut(t){return!!t._zod}function jr(t){let e=Object.values(t);if(e.length===0)return wu({});let r=e.every(ut),n=e.every(o=>!ut(o));if(r)return wu(t);if(n)return ka(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 As(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 om(t){return t.description}function sm(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 js(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 uo={};ba(uo,{ZodISODate:()=>am,ZodISODateTime:()=>im,ZodISODuration:()=>um,ZodISOTime:()=>cm,date:()=>xu,datetime:()=>$u,duration:()=>Su,time:()=>ku});var im=b("ZodISODateTime",(t,e)=>{Bf.init(t,e),ye.init(t,e)});function $u(t){return Qf(im,t)}var am=b("ZodISODate",(t,e)=>{Hf.init(t,e),ye.init(t,e)});function xu(t){return Xf(am,t)}var cm=b("ZodISOTime",(t,e)=>{Jf.init(t,e),ye.init(t,e)});function ku(t){return em(cm,t)}var um=b("ZodISODuration",(t,e)=>{Gf.init(t,e),ye.init(t,e)});function Su(t){return tm(um,t)}var lm=(t,e)=>{bs.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>ja(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}}})},mN=b("ZodError",lm),lo=b("ZodError",lm,{Parent:Error});var dm=Za(lo),pm=qa(lo),fm=Va(lo),mm=La(lo);var we=b("ZodType",(t,e)=>(ce.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)=>dm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>fm(t,r,n),t.parseAsync=async(r,n)=>pm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>mm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(Y$(r,n)),t.superRefine=r=>t.check(Q$(r)),t.overwrite=r=>t.check(Ar(r)),t.optional=()=>ve(t),t.nullable=()=>ym(t),t.nullish=()=>ve(ym(t)),t.nonoptional=r=>F$(t,r),t.array=()=>ee(t),t.or=r=>me([t,r]),t.and=r=>Ms(t,r),t.transform=r=>Ru(t,xm(r)),t.default=r=>V$(t,r),t.prefault=r=>U$(t,r),t.catch=r=>H$(t,r),t.pipe=r=>Ru(t,r),t.readonly=()=>K$(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)),_m=b("_ZodString",(t,e)=>{so.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(cu(...n)),t.includes=(...n)=>t.check(du(...n)),t.startsWith=(...n)=>t.check(pu(...n)),t.endsWith=(...n)=>t.check(fu(...n)),t.min=(...n)=>t.check(pn(...n)),t.max=(...n)=>t.check(Is(...n)),t.length=(...n)=>t.check(Os(...n)),t.nonempty=(...n)=>t.check(pn(1,...n)),t.lowercase=n=>t.check(uu(n)),t.uppercase=n=>t.check(lu(n)),t.trim=()=>t.check(hu()),t.normalize=(...n)=>t.check(mu(...n)),t.toLowerCase=()=>t.check(gu()),t.toUpperCase=()=>t.check(yu())}),u$=b("ZodString",(t,e)=>{so.init(t,e),_m.init(t,e),t.email=r=>t.check(Cc(l$,r)),t.url=r=>t.check(Dc(d$,r)),t.jwt=r=>t.check(tu(z$,r)),t.emoji=r=>t.check(Vc(p$,r)),t.guid=r=>t.check(Rs(hm,r)),t.uuid=r=>t.check(jc(Zs,r)),t.uuidv4=r=>t.check(Zc(Zs,r)),t.uuidv6=r=>t.check(Mc(Zs,r)),t.uuidv7=r=>t.check(qc(Zs,r)),t.nanoid=r=>t.check(Lc(f$,r)),t.guid=r=>t.check(Rs(hm,r)),t.cuid=r=>t.check(Uc(m$,r)),t.cuid2=r=>t.check(Fc(h$,r)),t.ulid=r=>t.check(Bc(g$,r)),t.base64=r=>t.check(Qc(x$,r)),t.base64url=r=>t.check(Xc(k$,r)),t.xid=r=>t.check(Hc(y$,r)),t.ksuid=r=>t.check(Jc(_$,r)),t.ipv4=r=>t.check(Gc(v$,r)),t.ipv6=r=>t.check(Kc(b$,r)),t.cidrv4=r=>t.check(Wc(w$,r)),t.cidrv6=r=>t.check(Yc($$,r)),t.e164=r=>t.check(eu(S$,r)),t.datetime=r=>t.check($u(r)),t.date=r=>t.check(xu(r)),t.time=r=>t.check(ku(r)),t.duration=r=>t.check(Su(r))});function y(t){return Ac(u$,t)}var ye=b("ZodStringFormat",(t,e)=>{pe.init(t,e),_m.init(t,e)}),l$=b("ZodEmail",(t,e)=>{Wa.init(t,e),ye.init(t,e)});var hm=b("ZodGUID",(t,e)=>{Ga.init(t,e),ye.init(t,e)});var Zs=b("ZodUUID",(t,e)=>{Ka.init(t,e),ye.init(t,e)});var d$=b("ZodURL",(t,e)=>{Ya.init(t,e),ye.init(t,e)});var p$=b("ZodEmoji",(t,e)=>{Qa.init(t,e),ye.init(t,e)});var f$=b("ZodNanoID",(t,e)=>{Xa.init(t,e),ye.init(t,e)});var m$=b("ZodCUID",(t,e)=>{ec.init(t,e),ye.init(t,e)});var h$=b("ZodCUID2",(t,e)=>{tc.init(t,e),ye.init(t,e)});var g$=b("ZodULID",(t,e)=>{rc.init(t,e),ye.init(t,e)});var y$=b("ZodXID",(t,e)=>{nc.init(t,e),ye.init(t,e)});var _$=b("ZodKSUID",(t,e)=>{oc.init(t,e),ye.init(t,e)});var v$=b("ZodIPv4",(t,e)=>{sc.init(t,e),ye.init(t,e)});var b$=b("ZodIPv6",(t,e)=>{ic.init(t,e),ye.init(t,e)});var w$=b("ZodCIDRv4",(t,e)=>{ac.init(t,e),ye.init(t,e)});var $$=b("ZodCIDRv6",(t,e)=>{cc.init(t,e),ye.init(t,e)});var x$=b("ZodBase64",(t,e)=>{uc.init(t,e),ye.init(t,e)});var k$=b("ZodBase64URL",(t,e)=>{lc.init(t,e),ye.init(t,e)});var S$=b("ZodE164",(t,e)=>{dc.init(t,e),ye.init(t,e)});var z$=b("ZodJWT",(t,e)=>{pc.init(t,e),ye.init(t,e)});var vm=b("ZodNumber",(t,e)=>{ks.init(t,e),we.init(t,e),t.gt=(n,o)=>t.check(Ps(n,o)),t.gte=(n,o)=>t.check(co(n,o)),t.min=(n,o)=>t.check(co(n,o)),t.lt=(n,o)=>t.check(Ts(n,o)),t.lte=(n,o)=>t.check(ao(n,o)),t.max=(n,o)=>t.check(ao(n,o)),t.int=n=>t.check(gm(n)),t.safe=n=>t.check(gm(n)),t.positive=n=>t.check(Ps(0,n)),t.nonnegative=n=>t.check(co(0,n)),t.negative=n=>t.check(Ts(0,n)),t.nonpositive=n=>t.check(ao(0,n)),t.multipleOf=(n,o)=>t.check(Es(n,o)),t.step=(n,o)=>t.check(Es(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 ae(t){return ru(vm,t)}var R$=b("ZodNumberFormat",(t,e)=>{fc.init(t,e),vm.init(t,e)});function gm(t){return nu(R$,t)}var T$=b("ZodBoolean",(t,e)=>{mc.init(t,e),we.init(t,e)});function ze(t){return ou(T$,t)}var P$=b("ZodNull",(t,e)=>{hc.init(t,e),we.init(t,e)});function bm(t){return su(P$,t)}var E$=b("ZodUnknown",(t,e)=>{gc.init(t,e),we.init(t,e)});function _e(){return iu(E$)}var I$=b("ZodNever",(t,e)=>{yc.init(t,e),we.init(t,e)});function O$(t){return au(I$,t)}var N$=b("ZodArray",(t,e)=>{_c.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(Is(r,n)),t.length=(r,n)=>t.check(Os(r,n)),t.unwrap=()=>t.element});function ee(t,e){return rm(N$,t,e)}var wm=b("ZodObject",(t,e)=>{Ss.init(t,e),we.init(t,e),X.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ke(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:O$()}),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(km,t,r[0]),t.required=(...r)=>X.required(Sm,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 wm(r)}function Ve(t,e){return new wm({type:"object",get shape(){return X.assignProp(this,"shape",{...t}),this.shape},catchall:_e(),...X.normalizeParams(e)})}var $m=b("ZodUnion",(t,e)=>{zs.init(t,e),we.init(t,e),t.options=e.options});function me(t,e){return new $m({type:"union",options:t,...X.normalizeParams(e)})}var A$=b("ZodDiscriminatedUnion",(t,e)=>{$m.init(t,e),vc.init(t,e)});function Tu(t,e,r){return new A$({type:"union",options:e,discriminator:t,...X.normalizeParams(r)})}var C$=b("ZodIntersection",(t,e)=>{bc.init(t,e),we.init(t,e)});function Ms(t,e){return new C$({type:"intersection",left:t,right:e})}var j$=b("ZodRecord",(t,e)=>{wc.init(t,e),we.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function fe(t,e,r){return new j$({type:"record",keyType:t,valueType:e,...X.normalizeParams(r)})}var zu=b("ZodEnum",(t,e)=>{$c.init(t,e),we.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new zu({...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 zu({...e,checks:[],...X.normalizeParams(o),entries:s})}});function Ke(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new zu({type:"enum",entries:r,...X.normalizeParams(e)})}var Z$=b("ZodLiteral",(t,e)=>{xc.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 Z$({type:"literal",values:Array.isArray(t)?t:[t],...X.normalizeParams(e)})}var M$=b("ZodTransform",(t,e)=>{kc.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 xm(t){return new M$({type:"transform",transform:t})}var km=b("ZodOptional",(t,e)=>{Sc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ve(t){return new km({type:"optional",innerType:t})}var q$=b("ZodNullable",(t,e)=>{zc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ym(t){return new q$({type:"nullable",innerType:t})}var D$=b("ZodDefault",(t,e)=>{Rc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function V$(t,e){return new D$({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var L$=b("ZodPrefault",(t,e)=>{Tc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function U$(t,e){return new L$({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Sm=b("ZodNonOptional",(t,e)=>{Pc.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType});function F$(t,e){return new Sm({type:"nonoptional",innerType:t,...X.normalizeParams(e)})}var B$=b("ZodCatch",(t,e)=>{Ec.init(t,e),we.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function H$(t,e){return new B$({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var J$=b("ZodPipe",(t,e)=>{Ic.init(t,e),we.init(t,e),t.in=e.in,t.out=e.out});function Ru(t,e){return new J$({type:"pipe",in:t,out:e})}var G$=b("ZodReadonly",(t,e)=>{Oc.init(t,e),we.init(t,e)});function K$(t){return new G$({type:"readonly",innerType:t})}var zm=b("ZodCustom",(t,e)=>{Nc.init(t,e),we.init(t,e)});function W$(t){let e=new Ee({check:"custom"});return e._zod.check=t,e}function Rm(t,e){return _u(zm,t??(()=>!0),e)}function Y$(t,e={}){return vu(zm,t,e)}function Q$(t){let e=W$(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 Pu(t,e){return Ru(xm(t),e)}tt(Wf());var Iu="2025-11-25",Tm="2025-03-26",hn=[Iu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],tr="io.modelcontextprotocol/related-task",Ds="2.0",Se=Rm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Pm=me([y(),ae().int()]),Em=y(),TN=Ve({ttl:ae().optional(),pollInterval:ae().optional()}),X$=E({ttl:ae().optional()}),ex=E({taskId:y()}),Ou=Ve({progressToken:Pm.optional(),[tr]:ex.optional()}),nt=E({_meta:Ou.optional()}),po=nt.extend({task:X$.optional()}),Im=t=>po.safeParse(t).success,Ie=E({method:y(),params:nt.loose().optional()}),lt=E({_meta:Ou.optional()}),dt=E({method:y(),params:lt.loose().optional()}),Oe=Ve({_meta:Ou.optional()}),Vs=me([y(),ae().int()]),Om=E({jsonrpc:N(Ds),id:Vs,...Ie.shape}).strict(),rr=t=>Om.safeParse(t).success,Nm=E({jsonrpc:N(Ds),...dt.shape}).strict(),Am=t=>Nm.safeParse(t).success,Nu=E({jsonrpc:N(Ds),id:Vs,result:Oe}).strict(),Vt=t=>Nu.safeParse(t).success;var j;(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"})(j||(j={}));var Au=E({jsonrpc:N(Ds),id:Vs.optional(),error:E({code:ae().int(),message:y(),data:_e().optional()})}).strict();var gn=t=>Au.safeParse(t).success;var fo=me([Om,Nm,Nu,Au]),PN=me([Nu,Au]),Ls=Oe.strict(),tx=lt.extend({requestId:Vs.optional(),reason:y().optional()}),Us=dt.extend({method:N("notifications/cancelled"),params:tx}),rx=E({src:y(),mimeType:y().optional(),sizes:ee(y()).optional(),theme:Ke(["light","dark"]).optional()}),mo=E({icons:ee(rx).optional()}),mn=E({name:y(),title:y().optional()}),Cm=mn.extend({...mn.shape,...mo.shape,version:y(),websiteUrl:y().optional(),description:y().optional()}),nx=Ms(E({applyDefaults:ze().optional()}),fe(y(),_e())),ox=Pu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Ms(E({form:nx.optional(),url:Se.optional()}),fe(y(),_e()).optional())),sx=Ve({list:Se.optional(),cancel:Se.optional(),requests:Ve({sampling:Ve({createMessage:Se.optional()}).optional(),elicitation:Ve({create:Se.optional()}).optional()}).optional()}),ix=Ve({list:Se.optional(),cancel:Se.optional(),requests:Ve({tools:Ve({call:Se.optional()}).optional()}).optional()}),ax=E({experimental:fe(y(),Se).optional(),sampling:E({context:Se.optional(),tools:Se.optional()}).optional(),elicitation:ox.optional(),roots:E({listChanged:ze().optional()}).optional(),tasks:sx.optional(),extensions:fe(y(),Se).optional()}),cx=nt.extend({protocolVersion:y(),capabilities:ax,clientInfo:Cm}),Fs=Ie.extend({method:N("initialize"),params:cx}),ho=t=>Fs.safeParse(t).success,ux=E({experimental:fe(y(),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:ix.optional(),extensions:fe(y(),Se).optional()}),lx=Oe.extend({protocolVersion:y(),capabilities:ux,serverInfo:Cm,instructions:y().optional()}),Cu=dt.extend({method:N("notifications/initialized"),params:lt.optional()});var Bs=Ie.extend({method:N("ping"),params:nt.optional()}),dx=E({progress:ae(),total:ve(ae()),message:ve(y())}),px=E({...lt.shape,...dx.shape,progressToken:Pm}),Hs=dt.extend({method:N("notifications/progress"),params:px}),fx=nt.extend({cursor:Em.optional()}),go=Ie.extend({params:fx.optional()}),yo=Oe.extend({nextCursor:Em.optional()}),mx=Ke(["working","input_required","completed","failed","cancelled"]),_o=E({taskId:y(),status:mx,ttl:me([ae(),bm()]),createdAt:y(),lastUpdatedAt:y(),pollInterval:ve(ae()),statusMessage:ve(y())}),yn=Oe.extend({task:_o}),hx=lt.merge(_o),vo=dt.extend({method:N("notifications/tasks/status"),params:hx}),Js=Ie.extend({method:N("tasks/get"),params:nt.extend({taskId:y()})}),Gs=Oe.merge(_o),Ks=Ie.extend({method:N("tasks/result"),params:nt.extend({taskId:y()})}),EN=Oe.loose(),Ws=go.extend({method:N("tasks/list")}),Ys=yo.extend({tasks:ee(_o)}),Qs=Ie.extend({method:N("tasks/cancel"),params:nt.extend({taskId:y()})}),jm=Oe.merge(_o),Zm=E({uri:y(),mimeType:ve(y()),_meta:fe(y(),_e()).optional()}),Mm=Zm.extend({text:y()}),ju=y().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),qm=Zm.extend({blob:ju}),bo=Ke(["user","assistant"]),_n=E({audience:ee(bo).optional(),priority:ae().min(0).max(1).optional(),lastModified:uo.datetime({offset:!0}).optional()}),Dm=E({...mn.shape,...mo.shape,uri:y(),description:ve(y()),mimeType:ve(y()),size:ve(ae()),annotations:_n.optional(),_meta:ve(Ve({}))}),gx=E({...mn.shape,...mo.shape,uriTemplate:y(),description:ve(y()),mimeType:ve(y()),annotations:_n.optional(),_meta:ve(Ve({}))}),Xs=go.extend({method:N("resources/list")}),yx=yo.extend({resources:ee(Dm)}),ei=go.extend({method:N("resources/templates/list")}),_x=yo.extend({resourceTemplates:ee(gx)}),Zu=nt.extend({uri:y()}),vx=Zu,ti=Ie.extend({method:N("resources/read"),params:vx}),bx=Oe.extend({contents:ee(me([Mm,qm]))}),wx=dt.extend({method:N("notifications/resources/list_changed"),params:lt.optional()}),$x=Zu,xx=Ie.extend({method:N("resources/subscribe"),params:$x}),kx=Zu,Sx=Ie.extend({method:N("resources/unsubscribe"),params:kx}),zx=lt.extend({uri:y()}),Rx=dt.extend({method:N("notifications/resources/updated"),params:zx}),Tx=E({name:y(),description:ve(y()),required:ve(ze())}),Px=E({...mn.shape,...mo.shape,description:ve(y()),arguments:ve(ee(Tx)),_meta:ve(Ve({}))}),ri=go.extend({method:N("prompts/list")}),Ex=yo.extend({prompts:ee(Px)}),Ix=nt.extend({name:y(),arguments:fe(y(),y()).optional()}),ni=Ie.extend({method:N("prompts/get"),params:Ix}),Mu=E({type:N("text"),text:y(),annotations:_n.optional(),_meta:fe(y(),_e()).optional()}),qu=E({type:N("image"),data:ju,mimeType:y(),annotations:_n.optional(),_meta:fe(y(),_e()).optional()}),Du=E({type:N("audio"),data:ju,mimeType:y(),annotations:_n.optional(),_meta:fe(y(),_e()).optional()}),Ox=E({type:N("tool_use"),name:y(),id:y(),input:fe(y(),_e()),_meta:fe(y(),_e()).optional()}),Nx=E({type:N("resource"),resource:me([Mm,qm]),annotations:_n.optional(),_meta:fe(y(),_e()).optional()}),Ax=Dm.extend({type:N("resource_link")}),Vu=me([Mu,qu,Du,Ax,Nx]),Cx=E({role:bo,content:Vu}),jx=Oe.extend({description:y().optional(),messages:ee(Cx)}),Zx=dt.extend({method:N("notifications/prompts/list_changed"),params:lt.optional()}),Mx=E({title:y().optional(),readOnlyHint:ze().optional(),destructiveHint:ze().optional(),idempotentHint:ze().optional(),openWorldHint:ze().optional()}),qx=E({taskSupport:Ke(["required","optional","forbidden"]).optional()}),Vm=E({...mn.shape,...mo.shape,description:y().optional(),inputSchema:E({type:N("object"),properties:fe(y(),Se).optional(),required:ee(y()).optional()}).catchall(_e()),outputSchema:E({type:N("object"),properties:fe(y(),Se).optional(),required:ee(y()).optional()}).catchall(_e()).optional(),annotations:Mx.optional(),execution:qx.optional(),_meta:fe(y(),_e()).optional()}),oi=go.extend({method:N("tools/list")}),Dx=yo.extend({tools:ee(Vm)}),si=Oe.extend({content:ee(Vu).default([]),structuredContent:fe(y(),_e()).optional(),isError:ze().optional()}),IN=si.or(Oe.extend({toolResult:_e()})),Vx=po.extend({name:y(),arguments:fe(y(),_e()).optional()}),vn=Ie.extend({method:N("tools/call"),params:Vx}),Lx=dt.extend({method:N("notifications/tools/list_changed"),params:lt.optional()}),ON=E({autoRefresh:ze().default(!0),debounceMs:ae().int().nonnegative().default(300)}),wo=Ke(["debug","info","notice","warning","error","critical","alert","emergency"]),Ux=nt.extend({level:wo}),Lu=Ie.extend({method:N("logging/setLevel"),params:Ux}),Fx=lt.extend({level:wo,logger:y().optional(),data:_e()}),Bx=dt.extend({method:N("notifications/message"),params:Fx}),Hx=E({name:y().optional()}),Jx=E({hints:ee(Hx).optional(),costPriority:ae().min(0).max(1).optional(),speedPriority:ae().min(0).max(1).optional(),intelligencePriority:ae().min(0).max(1).optional()}),Gx=E({mode:Ke(["auto","required","none"]).optional()}),Kx=E({type:N("tool_result"),toolUseId:y().describe("The unique identifier for the corresponding tool call."),content:ee(Vu).default([]),structuredContent:E({}).loose().optional(),isError:ze().optional(),_meta:fe(y(),_e()).optional()}),Wx=Tu("type",[Mu,qu,Du]),qs=Tu("type",[Mu,qu,Du,Ox,Kx]),Yx=E({role:bo,content:me([qs,ee(qs)]),_meta:fe(y(),_e()).optional()}),Qx=po.extend({messages:ee(Yx),modelPreferences:Jx.optional(),systemPrompt:y().optional(),includeContext:Ke(["none","thisServer","allServers"]).optional(),temperature:ae().optional(),maxTokens:ae().int(),stopSequences:ee(y()).optional(),metadata:Se.optional(),tools:ee(Vm).optional(),toolChoice:Gx.optional()}),Xx=Ie.extend({method:N("sampling/createMessage"),params:Qx}),$o=Oe.extend({model:y(),stopReason:ve(Ke(["endTurn","stopSequence","maxTokens"]).or(y())),role:bo,content:Wx}),Uu=Oe.extend({model:y(),stopReason:ve(Ke(["endTurn","stopSequence","maxTokens","toolUse"]).or(y())),role:bo,content:me([qs,ee(qs)])}),e0=E({type:N("boolean"),title:y().optional(),description:y().optional(),default:ze().optional()}),t0=E({type:N("string"),title:y().optional(),description:y().optional(),minLength:ae().optional(),maxLength:ae().optional(),format:Ke(["email","uri","date","date-time"]).optional(),default:y().optional()}),r0=E({type:Ke(["number","integer"]),title:y().optional(),description:y().optional(),minimum:ae().optional(),maximum:ae().optional(),default:ae().optional()}),n0=E({type:N("string"),title:y().optional(),description:y().optional(),enum:ee(y()),default:y().optional()}),o0=E({type:N("string"),title:y().optional(),description:y().optional(),oneOf:ee(E({const:y(),title:y()})),default:y().optional()}),s0=E({type:N("string"),title:y().optional(),description:y().optional(),enum:ee(y()),enumNames:ee(y()).optional(),default:y().optional()}),i0=me([n0,o0]),a0=E({type:N("array"),title:y().optional(),description:y().optional(),minItems:ae().optional(),maxItems:ae().optional(),items:E({type:N("string"),enum:ee(y())}),default:ee(y()).optional()}),c0=E({type:N("array"),title:y().optional(),description:y().optional(),minItems:ae().optional(),maxItems:ae().optional(),items:E({anyOf:ee(E({const:y(),title:y()}))}),default:ee(y()).optional()}),u0=me([a0,c0]),l0=me([s0,i0,u0]),d0=me([l0,e0,t0,r0]),p0=po.extend({mode:N("form").optional(),message:y(),requestedSchema:E({type:N("object"),properties:fe(y(),d0),required:ee(y()).optional()})}),f0=po.extend({mode:N("url"),message:y(),elicitationId:y(),url:y().url()}),m0=me([p0,f0]),h0=Ie.extend({method:N("elicitation/create"),params:m0}),g0=lt.extend({elicitationId:y()}),y0=dt.extend({method:N("notifications/elicitation/complete"),params:g0}),bn=Oe.extend({action:Ke(["accept","decline","cancel"]),content:Pu(t=>t===null?void 0:t,fe(y(),me([y(),ae(),ze(),ee(y())])).optional())}),_0=E({type:N("ref/resource"),uri:y()});var v0=E({type:N("ref/prompt"),name:y()}),b0=nt.extend({ref:me([v0,_0]),argument:E({name:y(),value:y()}),context:E({arguments:fe(y(),y()).optional()}).optional()}),ii=Ie.extend({method:N("completion/complete"),params:b0});function Lm(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Um(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var w0=Oe.extend({completion:Ve({values:ee(y()).max(100),total:ve(ae().int()),hasMore:ve(ze())})}),$0=E({uri:y().startsWith("file://"),name:y().optional(),_meta:fe(y(),_e()).optional()}),x0=Ie.extend({method:N("roots/list"),params:nt.optional()}),Fu=Oe.extend({roots:ee($0)}),k0=dt.extend({method:N("notifications/roots/list_changed"),params:lt.optional()}),NN=me([Bs,Fs,ii,Lu,ni,ri,Xs,ei,ti,xx,Sx,vn,oi,Js,Ks,Ws,Qs]),AN=me([Us,Hs,Cu,k0,vo]),CN=me([Ls,$o,Uu,bn,Fu,Gs,Ys,yn]),jN=me([Bs,Xx,h0,x0,Js,Ks,Ws,Qs]),ZN=me([Us,Hs,Bx,Rx,wx,Lx,Zx,vo,y0]),MN=me([Ls,lx,w0,jx,Ex,yx,_x,bx,si,Dx,Gs,Ys,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===j.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Eu(o.elicitations,r)}return new t(e,r,n)}},Eu=class extends O{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(j.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function nr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Bm=Symbol("Let zodToJsonSchema decide on which parser to use");var Fm={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"},Hm=t=>typeof t=="string"?{...Fm,name:t}:{...Fm,...t};var Jm=t=>{let e=Hm(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 Bu(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function te(t,e,r,n,o){t[e]=r,Bu(t,e,n,o)}var ai=(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"?ai(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 Km(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 Wm(){return{type:"boolean"}}function ci(t,e){return D(t.type._def,e)}var Ym=(t,e)=>D(t.innerType._def,e);function Hu(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Hu(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 S0(t,e)}}var S0=(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 Qm(t,e){return{...D(t.innerType._def,e),default:t.defaultValue()}}function Xm(t,e){return e.effectStrategy==="input"?D(t.schema._def,e):be(e)}function eh(t){return{type:"string",enum:Array.from(t.values)}}var z0=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function th(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(z0(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 rh(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 Ju,bt={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:()=>(Ju===void 0&&(Ju=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Ju),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 ui(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":wt(r,"email",n.message,e);break;case"format:idn-email":wt(r,"idn-email",n.message,e);break;case"pattern:zod":Le(r,bt.email,n.message,e);break}break;case"url":wt(r,"uri",n.message,e);break;case"uuid":wt(r,"uuid",n.message,e);break;case"regex":Le(r,n.regex,n.message,e);break;case"cuid":Le(r,bt.cuid,n.message,e);break;case"cuid2":Le(r,bt.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":wt(r,"date-time",n.message,e);break;case"date":wt(r,"date",n.message,e);break;case"time":wt(r,"time",n.message,e);break;case"duration":wt(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"&&wt(r,"ipv4",n.message,e),n.version!=="v4"&&wt(r,"ipv6",n.message,e);break}case"base64url":Le(r,bt.base64url,n.message,e);break;case"jwt":Le(r,bt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Le(r,bt.ipv4Cidr,n.message,e),n.version!=="v4"&&Le(r,bt.ipv6Cidr,n.message,e);break}case"emoji":Le(r,bt.emoji(),n.message,e);break;case"ulid":{Le(r,bt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{wt(r,"binary",n.message,e);break}case"contentEncoding:base64":{te(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Le(r,bt.base64,n.message,e);break}}break}case"nanoid":Le(r,bt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Gu(t,e){return e.patternStrategy==="escape"?T0(t):t}var R0=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function T0(t){let e="";for(let r=0;r<t.length;r++)R0.has(t[r])||(e+="\\"),e+=t[r];return e}function wt(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:nh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):te(t,"pattern",nh(e,n),r,n)}function nh(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 wu(t,e){if(t instanceof co){let n=new js(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 js(e);return r.process(t),r.emit(t,e)}function Se(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 Se(o.element,r);case"object":{for(let s in o.shape)if(Se(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Se(s,r))return!0;return!1}case"intersection":return Se(o.left,r)||Se(o.right,r);case"tuple":{for(let s of o.items)if(Se(s,r))return!0;return!!(o.rest&&Se(o.rest,r))}case"record":return Se(o.keyType,r)||Se(o.valueType,r);case"map":return Se(o.keyType,r)||Se(o.valueType,r);case"set":return Se(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Se(o.innerType,r);case"lazy":return Se(o.getter(),r);case"default":return Se(o.innerType,r);case"prefault":return Se(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Se(o.in,r)||Se(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var n$=b("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ce.init(t,e),t.def=e,t.parse=(r,n)=>qa(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Nr(t,r,n),t.parseAsync=async(r,n)=>Va(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Ar(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)=>nt(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t)});var o$=b("ZodMiniObject",(t,e)=>{Ts.init(t,e),n$.init(t,e),Q.defineLazy(t,"shape",()=>e.shape)});function $u(t,e){let r={type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},...Q.normalizeParams(e)};return new o$(r)}function lt(t){return!!t._zod}function Zr(t){let e=Object.values(t);if(e.length===0)return $u({});let r=e.every(lt),n=e.every(o=>!lt(o));if(r)return $u(t);if(n)return Sa(t);throw new Error("Mixed Zod versions detected in object shape.")}function Qt(t,e){return lt(t)?Nr(t,e):t.safeParse(e)}async function Zs(t,e){return lt(t)?await Ar(t,e):await t.safeParseAsync(e)}function er(t){if(!t)return;let e;if(lt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function hn(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 Zr(t)}}if(lt(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 Ms(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 cm(t){return t.description}function um(t){if(lt(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function qs(t){if(lt(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 po={};wa(po,{ZodISODate:()=>dm,ZodISODateTime:()=>lm,ZodISODuration:()=>fm,ZodISOTime:()=>pm,date:()=>ku,datetime:()=>xu,duration:()=>zu,time:()=>Su});var lm=b("ZodISODateTime",(t,e)=>{Kf.init(t,e),_e.init(t,e)});function xu(t){return rm(lm,t)}var dm=b("ZodISODate",(t,e)=>{Wf.init(t,e),_e.init(t,e)});function ku(t){return nm(dm,t)}var pm=b("ZodISOTime",(t,e)=>{Yf.init(t,e),_e.init(t,e)});function Su(t){return om(pm,t)}var fm=b("ZodISODuration",(t,e)=>{Xf.init(t,e),_e.init(t,e)});function zu(t){return sm(fm,t)}var mm=(t,e)=>{xs.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Za(t,r)},flatten:{value:r=>ja(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},vN=b("ZodError",mm),fo=b("ZodError",mm,{Parent:Error});var hm=Ma(fo),gm=Da(fo),ym=La(fo),_m=Ua(fo);var $e=b("ZodType",(t,e)=>(ce.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)=>nt(t,r,n),t.brand=()=>t,t.register=(r,n)=>(r.add(t,n),t),t.parse=(r,n)=>hm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>ym(t,r,n),t.parseAsync=async(r,n)=>gm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>_m(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(tx(r,n)),t.superRefine=r=>t.check(rx(r)),t.overwrite=r=>t.check(Cr(r)),t.optional=()=>be(t),t.nullable=()=>wm(t),t.nullish=()=>be(wm(t)),t.nonoptional=r=>J$(t,r),t.array=()=>ee(t),t.or=r=>he([t,r]),t.and=r=>Vs(t,r),t.transform=r=>Tu(t,Rm(r)),t.default=r=>B$(t,r),t.prefault=r=>G$(t,r),t.catch=r=>W$(t,r),t.pipe=r=>Tu(t,r),t.readonly=()=>Q$(t),t.describe=r=>{let n=t.clone();return Xt.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Xt.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Xt.get(t);let n=t.clone();return Xt.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),$m=b("_ZodString",(t,e)=>{ao.init(t,e),$e.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(uu(...n)),t.includes=(...n)=>t.check(pu(...n)),t.startsWith=(...n)=>t.check(fu(...n)),t.endsWith=(...n)=>t.check(mu(...n)),t.min=(...n)=>t.check(mn(...n)),t.max=(...n)=>t.check(As(...n)),t.length=(...n)=>t.check(Cs(...n)),t.nonempty=(...n)=>t.check(mn(1,...n)),t.lowercase=n=>t.check(lu(n)),t.uppercase=n=>t.check(du(n)),t.trim=()=>t.check(gu()),t.normalize=(...n)=>t.check(hu(...n)),t.toLowerCase=()=>t.check(yu()),t.toUpperCase=()=>t.check(_u())}),f$=b("ZodString",(t,e)=>{ao.init(t,e),$m.init(t,e),t.email=r=>t.check(jc(m$,r)),t.url=r=>t.check(Vc(h$,r)),t.jwt=r=>t.check(ru(I$,r)),t.emoji=r=>t.check(Lc(g$,r)),t.guid=r=>t.check(Is(vm,r)),t.uuid=r=>t.check(Zc(Ds,r)),t.uuidv4=r=>t.check(Mc(Ds,r)),t.uuidv6=r=>t.check(qc(Ds,r)),t.uuidv7=r=>t.check(Dc(Ds,r)),t.nanoid=r=>t.check(Uc(y$,r)),t.guid=r=>t.check(Is(vm,r)),t.cuid=r=>t.check(Fc(_$,r)),t.cuid2=r=>t.check(Bc(v$,r)),t.ulid=r=>t.check(Hc(b$,r)),t.base64=r=>t.check(Qc(R$,r)),t.base64url=r=>t.check(eu(T$,r)),t.xid=r=>t.check(Gc(w$,r)),t.ksuid=r=>t.check(Jc($$,r)),t.ipv4=r=>t.check(Kc(x$,r)),t.ipv6=r=>t.check(Wc(k$,r)),t.cidrv4=r=>t.check(Yc(S$,r)),t.cidrv6=r=>t.check(Xc(z$,r)),t.e164=r=>t.check(tu(E$,r)),t.datetime=r=>t.check(xu(r)),t.date=r=>t.check(ku(r)),t.time=r=>t.check(Su(r)),t.duration=r=>t.check(zu(r))});function _(t){return Cc(f$,t)}var _e=b("ZodStringFormat",(t,e)=>{pe.init(t,e),$m.init(t,e)}),m$=b("ZodEmail",(t,e)=>{Ya.init(t,e),_e.init(t,e)});var vm=b("ZodGUID",(t,e)=>{Ka.init(t,e),_e.init(t,e)});var Ds=b("ZodUUID",(t,e)=>{Wa.init(t,e),_e.init(t,e)});var h$=b("ZodURL",(t,e)=>{Xa.init(t,e),_e.init(t,e)});var g$=b("ZodEmoji",(t,e)=>{Qa.init(t,e),_e.init(t,e)});var y$=b("ZodNanoID",(t,e)=>{ec.init(t,e),_e.init(t,e)});var _$=b("ZodCUID",(t,e)=>{tc.init(t,e),_e.init(t,e)});var v$=b("ZodCUID2",(t,e)=>{rc.init(t,e),_e.init(t,e)});var b$=b("ZodULID",(t,e)=>{nc.init(t,e),_e.init(t,e)});var w$=b("ZodXID",(t,e)=>{oc.init(t,e),_e.init(t,e)});var $$=b("ZodKSUID",(t,e)=>{sc.init(t,e),_e.init(t,e)});var x$=b("ZodIPv4",(t,e)=>{ic.init(t,e),_e.init(t,e)});var k$=b("ZodIPv6",(t,e)=>{ac.init(t,e),_e.init(t,e)});var S$=b("ZodCIDRv4",(t,e)=>{cc.init(t,e),_e.init(t,e)});var z$=b("ZodCIDRv6",(t,e)=>{uc.init(t,e),_e.init(t,e)});var R$=b("ZodBase64",(t,e)=>{lc.init(t,e),_e.init(t,e)});var T$=b("ZodBase64URL",(t,e)=>{dc.init(t,e),_e.init(t,e)});var E$=b("ZodE164",(t,e)=>{pc.init(t,e),_e.init(t,e)});var I$=b("ZodJWT",(t,e)=>{fc.init(t,e),_e.init(t,e)});var xm=b("ZodNumber",(t,e)=>{Rs.init(t,e),$e.init(t,e),t.gt=(n,o)=>t.check(Os(n,o)),t.gte=(n,o)=>t.check(lo(n,o)),t.min=(n,o)=>t.check(lo(n,o)),t.lt=(n,o)=>t.check(Ps(n,o)),t.lte=(n,o)=>t.check(uo(n,o)),t.max=(n,o)=>t.check(uo(n,o)),t.int=n=>t.check(bm(n)),t.safe=n=>t.check(bm(n)),t.positive=n=>t.check(Os(0,n)),t.nonnegative=n=>t.check(lo(0,n)),t.negative=n=>t.check(Ps(0,n)),t.nonpositive=n=>t.check(uo(0,n)),t.multipleOf=(n,o)=>t.check(Ns(n,o)),t.step=(n,o)=>t.check(Ns(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 ae(t){return nu(xm,t)}var P$=b("ZodNumberFormat",(t,e)=>{mc.init(t,e),xm.init(t,e)});function bm(t){return ou(P$,t)}var O$=b("ZodBoolean",(t,e)=>{hc.init(t,e),$e.init(t,e)});function Te(t){return su(O$,t)}var N$=b("ZodNull",(t,e)=>{gc.init(t,e),$e.init(t,e)});function km(t){return iu(N$,t)}var A$=b("ZodUnknown",(t,e)=>{yc.init(t,e),$e.init(t,e)});function ve(){return au(A$)}var C$=b("ZodNever",(t,e)=>{_c.init(t,e),$e.init(t,e)});function j$(t){return cu(C$,t)}var Z$=b("ZodArray",(t,e)=>{vc.init(t,e),$e.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(mn(r,n)),t.nonempty=r=>t.check(mn(1,r)),t.max=(r,n)=>t.check(As(r,n)),t.length=(r,n)=>t.check(Cs(r,n)),t.unwrap=()=>t.element});function ee(t,e){return im(Z$,t,e)}var Sm=b("ZodObject",(t,e)=>{Ts.init(t,e),$e.init(t,e),Q.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>We(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:ve()}),t.loose=()=>t.clone({...t._zod.def,catchall:ve()}),t.strict=()=>t.clone({...t._zod.def,catchall:j$()}),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(Tm,t,r[0]),t.required=(...r)=>Q.required(Em,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 Sm(r)}function Le(t,e){return new Sm({type:"object",get shape(){return Q.assignProp(this,"shape",{...t}),this.shape},catchall:ve(),...Q.normalizeParams(e)})}var zm=b("ZodUnion",(t,e)=>{Es.init(t,e),$e.init(t,e),t.options=e.options});function he(t,e){return new zm({type:"union",options:t,...Q.normalizeParams(e)})}var M$=b("ZodDiscriminatedUnion",(t,e)=>{zm.init(t,e),bc.init(t,e)});function Eu(t,e,r){return new M$({type:"union",options:e,discriminator:t,...Q.normalizeParams(r)})}var q$=b("ZodIntersection",(t,e)=>{wc.init(t,e),$e.init(t,e)});function Vs(t,e){return new q$({type:"intersection",left:t,right:e})}var D$=b("ZodRecord",(t,e)=>{$c.init(t,e),$e.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function fe(t,e,r){return new D$({type:"record",keyType:t,valueType:e,...Q.normalizeParams(r)})}var Ru=b("ZodEnum",(t,e)=>{xc.init(t,e),$e.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 Ru({...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 Ru({...e,checks:[],...Q.normalizeParams(o),entries:s})}});function We(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Ru({type:"enum",entries:r,...Q.normalizeParams(e)})}var V$=b("ZodLiteral",(t,e)=>{kc.init(t,e),$e.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 A(t,e){return new V$({type:"literal",values:Array.isArray(t)?t:[t],...Q.normalizeParams(e)})}var L$=b("ZodTransform",(t,e)=>{Sc.init(t,e),$e.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 Rm(t){return new L$({type:"transform",transform:t})}var Tm=b("ZodOptional",(t,e)=>{zc.init(t,e),$e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function be(t){return new Tm({type:"optional",innerType:t})}var U$=b("ZodNullable",(t,e)=>{Rc.init(t,e),$e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function wm(t){return new U$({type:"nullable",innerType:t})}var F$=b("ZodDefault",(t,e)=>{Tc.init(t,e),$e.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function B$(t,e){return new F$({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var H$=b("ZodPrefault",(t,e)=>{Ec.init(t,e),$e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function G$(t,e){return new H$({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Em=b("ZodNonOptional",(t,e)=>{Ic.init(t,e),$e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function J$(t,e){return new Em({type:"nonoptional",innerType:t,...Q.normalizeParams(e)})}var K$=b("ZodCatch",(t,e)=>{Pc.init(t,e),$e.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function W$(t,e){return new K$({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Y$=b("ZodPipe",(t,e)=>{Oc.init(t,e),$e.init(t,e),t.in=e.in,t.out=e.out});function Tu(t,e){return new Y$({type:"pipe",in:t,out:e})}var X$=b("ZodReadonly",(t,e)=>{Nc.init(t,e),$e.init(t,e)});function Q$(t){return new X$({type:"readonly",innerType:t})}var Im=b("ZodCustom",(t,e)=>{Ac.init(t,e),$e.init(t,e)});function ex(t){let e=new Pe({check:"custom"});return e._zod.check=t,e}function Pm(t,e){return vu(Im,t??(()=>!0),e)}function tx(t,e={}){return bu(Im,t,e)}function rx(t){let e=ex(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 Iu(t,e){return Tu(Rm(t),e)}rt(em());var Ou="2025-11-25",Om="2025-03-26",yn=[Ou,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],tr="io.modelcontextprotocol/related-task",Us="2.0",ze=Pm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Nm=he([_(),ae().int()]),Am=_(),NN=Le({ttl:ae().optional(),pollInterval:ae().optional()}),nx=P({ttl:ae().optional()}),ox=P({taskId:_()}),Nu=Le({progressToken:Nm.optional(),[tr]:ox.optional()}),ot=P({_meta:Nu.optional()}),mo=ot.extend({task:nx.optional()}),Cm=t=>mo.safeParse(t).success,Oe=P({method:_(),params:ot.loose().optional()}),dt=P({_meta:Nu.optional()}),pt=P({method:_(),params:dt.loose().optional()}),Ne=Le({_meta:Nu.optional()}),Fs=he([_(),ae().int()]),jm=P({jsonrpc:A(Us),id:Fs,...Oe.shape}).strict(),rr=t=>jm.safeParse(t).success,Zm=P({jsonrpc:A(Us),...pt.shape}).strict(),Mm=t=>Zm.safeParse(t).success,Au=P({jsonrpc:A(Us),id:Fs,result:Ne}).strict(),Lt=t=>Au.safeParse(t).success;var j;(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"})(j||(j={}));var Cu=P({jsonrpc:A(Us),id:Fs.optional(),error:P({code:ae().int(),message:_(),data:ve().optional()})}).strict();var _n=t=>Cu.safeParse(t).success;var ho=he([jm,Zm,Au,Cu]),AN=he([Au,Cu]),Bs=Ne.strict(),sx=dt.extend({requestId:Fs.optional(),reason:_().optional()}),Hs=pt.extend({method:A("notifications/cancelled"),params:sx}),ix=P({src:_(),mimeType:_().optional(),sizes:ee(_()).optional(),theme:We(["light","dark"]).optional()}),go=P({icons:ee(ix).optional()}),gn=P({name:_(),title:_().optional()}),qm=gn.extend({...gn.shape,...go.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),ax=Vs(P({applyDefaults:Te().optional()}),fe(_(),ve())),cx=Iu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Vs(P({form:ax.optional(),url:ze.optional()}),fe(_(),ve()).optional())),ux=Le({list:ze.optional(),cancel:ze.optional(),requests:Le({sampling:Le({createMessage:ze.optional()}).optional(),elicitation:Le({create:ze.optional()}).optional()}).optional()}),lx=Le({list:ze.optional(),cancel:ze.optional(),requests:Le({tools:Le({call:ze.optional()}).optional()}).optional()}),dx=P({experimental:fe(_(),ze).optional(),sampling:P({context:ze.optional(),tools:ze.optional()}).optional(),elicitation:cx.optional(),roots:P({listChanged:Te().optional()}).optional(),tasks:ux.optional(),extensions:fe(_(),ze).optional()}),px=ot.extend({protocolVersion:_(),capabilities:dx,clientInfo:qm}),Gs=Oe.extend({method:A("initialize"),params:px}),yo=t=>Gs.safeParse(t).success,fx=P({experimental:fe(_(),ze).optional(),logging:ze.optional(),completions:ze.optional(),prompts:P({listChanged:Te().optional()}).optional(),resources:P({subscribe:Te().optional(),listChanged:Te().optional()}).optional(),tools:P({listChanged:Te().optional()}).optional(),tasks:lx.optional(),extensions:fe(_(),ze).optional()}),mx=Ne.extend({protocolVersion:_(),capabilities:fx,serverInfo:qm,instructions:_().optional()}),ju=pt.extend({method:A("notifications/initialized"),params:dt.optional()});var Js=Oe.extend({method:A("ping"),params:ot.optional()}),hx=P({progress:ae(),total:be(ae()),message:be(_())}),gx=P({...dt.shape,...hx.shape,progressToken:Nm}),Ks=pt.extend({method:A("notifications/progress"),params:gx}),yx=ot.extend({cursor:Am.optional()}),_o=Oe.extend({params:yx.optional()}),vo=Ne.extend({nextCursor:Am.optional()}),_x=We(["working","input_required","completed","failed","cancelled"]),bo=P({taskId:_(),status:_x,ttl:he([ae(),km()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:be(ae()),statusMessage:be(_())}),vn=Ne.extend({task:bo}),vx=dt.merge(bo),wo=pt.extend({method:A("notifications/tasks/status"),params:vx}),Ws=Oe.extend({method:A("tasks/get"),params:ot.extend({taskId:_()})}),Ys=Ne.merge(bo),Xs=Oe.extend({method:A("tasks/result"),params:ot.extend({taskId:_()})}),CN=Ne.loose(),Qs=_o.extend({method:A("tasks/list")}),ei=vo.extend({tasks:ee(bo)}),ti=Oe.extend({method:A("tasks/cancel"),params:ot.extend({taskId:_()})}),Dm=Ne.merge(bo),Vm=P({uri:_(),mimeType:be(_()),_meta:fe(_(),ve()).optional()}),Lm=Vm.extend({text:_()}),Zu=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Um=Vm.extend({blob:Zu}),$o=We(["user","assistant"]),bn=P({audience:ee($o).optional(),priority:ae().min(0).max(1).optional(),lastModified:po.datetime({offset:!0}).optional()}),Fm=P({...gn.shape,...go.shape,uri:_(),description:be(_()),mimeType:be(_()),size:be(ae()),annotations:bn.optional(),_meta:be(Le({}))}),bx=P({...gn.shape,...go.shape,uriTemplate:_(),description:be(_()),mimeType:be(_()),annotations:bn.optional(),_meta:be(Le({}))}),ri=_o.extend({method:A("resources/list")}),wx=vo.extend({resources:ee(Fm)}),ni=_o.extend({method:A("resources/templates/list")}),$x=vo.extend({resourceTemplates:ee(bx)}),Mu=ot.extend({uri:_()}),xx=Mu,oi=Oe.extend({method:A("resources/read"),params:xx}),kx=Ne.extend({contents:ee(he([Lm,Um]))}),Sx=pt.extend({method:A("notifications/resources/list_changed"),params:dt.optional()}),zx=Mu,Rx=Oe.extend({method:A("resources/subscribe"),params:zx}),Tx=Mu,Ex=Oe.extend({method:A("resources/unsubscribe"),params:Tx}),Ix=dt.extend({uri:_()}),Px=pt.extend({method:A("notifications/resources/updated"),params:Ix}),Ox=P({name:_(),description:be(_()),required:be(Te())}),Nx=P({...gn.shape,...go.shape,description:be(_()),arguments:be(ee(Ox)),_meta:be(Le({}))}),si=_o.extend({method:A("prompts/list")}),Ax=vo.extend({prompts:ee(Nx)}),Cx=ot.extend({name:_(),arguments:fe(_(),_()).optional()}),ii=Oe.extend({method:A("prompts/get"),params:Cx}),qu=P({type:A("text"),text:_(),annotations:bn.optional(),_meta:fe(_(),ve()).optional()}),Du=P({type:A("image"),data:Zu,mimeType:_(),annotations:bn.optional(),_meta:fe(_(),ve()).optional()}),Vu=P({type:A("audio"),data:Zu,mimeType:_(),annotations:bn.optional(),_meta:fe(_(),ve()).optional()}),jx=P({type:A("tool_use"),name:_(),id:_(),input:fe(_(),ve()),_meta:fe(_(),ve()).optional()}),Zx=P({type:A("resource"),resource:he([Lm,Um]),annotations:bn.optional(),_meta:fe(_(),ve()).optional()}),Mx=Fm.extend({type:A("resource_link")}),Lu=he([qu,Du,Vu,Mx,Zx]),qx=P({role:$o,content:Lu}),Dx=Ne.extend({description:_().optional(),messages:ee(qx)}),Vx=pt.extend({method:A("notifications/prompts/list_changed"),params:dt.optional()}),Lx=P({title:_().optional(),readOnlyHint:Te().optional(),destructiveHint:Te().optional(),idempotentHint:Te().optional(),openWorldHint:Te().optional()}),Ux=P({taskSupport:We(["required","optional","forbidden"]).optional()}),Bm=P({...gn.shape,...go.shape,description:_().optional(),inputSchema:P({type:A("object"),properties:fe(_(),ze).optional(),required:ee(_()).optional()}).catchall(ve()),outputSchema:P({type:A("object"),properties:fe(_(),ze).optional(),required:ee(_()).optional()}).catchall(ve()).optional(),annotations:Lx.optional(),execution:Ux.optional(),_meta:fe(_(),ve()).optional()}),ai=_o.extend({method:A("tools/list")}),Fx=vo.extend({tools:ee(Bm)}),ci=Ne.extend({content:ee(Lu).default([]),structuredContent:fe(_(),ve()).optional(),isError:Te().optional()}),jN=ci.or(Ne.extend({toolResult:ve()})),Bx=mo.extend({name:_(),arguments:fe(_(),ve()).optional()}),wn=Oe.extend({method:A("tools/call"),params:Bx}),Hx=pt.extend({method:A("notifications/tools/list_changed"),params:dt.optional()}),ZN=P({autoRefresh:Te().default(!0),debounceMs:ae().int().nonnegative().default(300)}),xo=We(["debug","info","notice","warning","error","critical","alert","emergency"]),Gx=ot.extend({level:xo}),Uu=Oe.extend({method:A("logging/setLevel"),params:Gx}),Jx=dt.extend({level:xo,logger:_().optional(),data:ve()}),Kx=pt.extend({method:A("notifications/message"),params:Jx}),Wx=P({name:_().optional()}),Yx=P({hints:ee(Wx).optional(),costPriority:ae().min(0).max(1).optional(),speedPriority:ae().min(0).max(1).optional(),intelligencePriority:ae().min(0).max(1).optional()}),Xx=P({mode:We(["auto","required","none"]).optional()}),Qx=P({type:A("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:ee(Lu).default([]),structuredContent:P({}).loose().optional(),isError:Te().optional(),_meta:fe(_(),ve()).optional()}),e0=Eu("type",[qu,Du,Vu]),Ls=Eu("type",[qu,Du,Vu,jx,Qx]),t0=P({role:$o,content:he([Ls,ee(Ls)]),_meta:fe(_(),ve()).optional()}),r0=mo.extend({messages:ee(t0),modelPreferences:Yx.optional(),systemPrompt:_().optional(),includeContext:We(["none","thisServer","allServers"]).optional(),temperature:ae().optional(),maxTokens:ae().int(),stopSequences:ee(_()).optional(),metadata:ze.optional(),tools:ee(Bm).optional(),toolChoice:Xx.optional()}),n0=Oe.extend({method:A("sampling/createMessage"),params:r0}),ko=Ne.extend({model:_(),stopReason:be(We(["endTurn","stopSequence","maxTokens"]).or(_())),role:$o,content:e0}),Fu=Ne.extend({model:_(),stopReason:be(We(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:$o,content:he([Ls,ee(Ls)])}),o0=P({type:A("boolean"),title:_().optional(),description:_().optional(),default:Te().optional()}),s0=P({type:A("string"),title:_().optional(),description:_().optional(),minLength:ae().optional(),maxLength:ae().optional(),format:We(["email","uri","date","date-time"]).optional(),default:_().optional()}),i0=P({type:We(["number","integer"]),title:_().optional(),description:_().optional(),minimum:ae().optional(),maximum:ae().optional(),default:ae().optional()}),a0=P({type:A("string"),title:_().optional(),description:_().optional(),enum:ee(_()),default:_().optional()}),c0=P({type:A("string"),title:_().optional(),description:_().optional(),oneOf:ee(P({const:_(),title:_()})),default:_().optional()}),u0=P({type:A("string"),title:_().optional(),description:_().optional(),enum:ee(_()),enumNames:ee(_()).optional(),default:_().optional()}),l0=he([a0,c0]),d0=P({type:A("array"),title:_().optional(),description:_().optional(),minItems:ae().optional(),maxItems:ae().optional(),items:P({type:A("string"),enum:ee(_())}),default:ee(_()).optional()}),p0=P({type:A("array"),title:_().optional(),description:_().optional(),minItems:ae().optional(),maxItems:ae().optional(),items:P({anyOf:ee(P({const:_(),title:_()}))}),default:ee(_()).optional()}),f0=he([d0,p0]),m0=he([u0,l0,f0]),h0=he([m0,o0,s0,i0]),g0=mo.extend({mode:A("form").optional(),message:_(),requestedSchema:P({type:A("object"),properties:fe(_(),h0),required:ee(_()).optional()})}),y0=mo.extend({mode:A("url"),message:_(),elicitationId:_(),url:_().url()}),_0=he([g0,y0]),v0=Oe.extend({method:A("elicitation/create"),params:_0}),b0=dt.extend({elicitationId:_()}),w0=pt.extend({method:A("notifications/elicitation/complete"),params:b0}),$n=Ne.extend({action:We(["accept","decline","cancel"]),content:Iu(t=>t===null?void 0:t,fe(_(),he([_(),ae(),Te(),ee(_())])).optional())}),$0=P({type:A("ref/resource"),uri:_()});var x0=P({type:A("ref/prompt"),name:_()}),k0=ot.extend({ref:he([x0,$0]),argument:P({name:_(),value:_()}),context:P({arguments:fe(_(),_()).optional()}).optional()}),ui=Oe.extend({method:A("completion/complete"),params:k0});function Hm(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Gm(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var S0=Ne.extend({completion:Le({values:ee(_()).max(100),total:be(ae().int()),hasMore:be(Te())})}),z0=P({uri:_().startsWith("file://"),name:_().optional(),_meta:fe(_(),ve()).optional()}),R0=Oe.extend({method:A("roots/list"),params:ot.optional()}),Bu=Ne.extend({roots:ee(z0)}),T0=pt.extend({method:A("notifications/roots/list_changed"),params:dt.optional()}),MN=he([Js,Gs,ui,Uu,ii,si,ri,ni,oi,Rx,Ex,wn,ai,Ws,Xs,Qs,ti]),qN=he([Hs,Ks,ju,T0,wo]),DN=he([Bs,ko,Fu,$n,Bu,Ys,ei,vn]),VN=he([Js,n0,v0,R0,Ws,Xs,Qs,ti]),LN=he([Hs,Ks,Kx,Px,Sx,Hx,Vx,wo,w0]),UN=he([Bs,mx,S0,Dx,Ax,wx,$x,kx,ci,Fx,Ys,ei,vn]),N=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===j.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Pu(o.elicitations,r)}return new t(e,r,n)}},Pu=class extends N{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(j.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function nr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Km=Symbol("Let zodToJsonSchema decide on which parser to use");var Jm={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"},Wm=t=>typeof t=="string"?{...Jm,name:t}:{...Jm,...t};var Ym=t=>{let e=Wm(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 Hu(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function te(t,e,r,n,o){t[e]=r,Hu(t,e,n,o)}var li=(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 we(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?li(e,t.currentPath):e.join("/")}}function Xm(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==k.ZodAny&&(r.items=V(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 Qm(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 eh(){return{type:"boolean"}}function di(t,e){return V(t.type._def,e)}var th=(t,e)=>V(t.innerType._def,e);function Gu(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Gu(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 E0(t,e)}}var E0=(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 rh(t,e){return{...V(t.innerType._def,e),default:t.defaultValue()}}function nh(t,e){return e.effectStrategy==="input"?V(t.schema._def,e):we(e)}function oh(t){return{type:"string",enum:Array.from(t.values)}}var I0=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function sh(t,e){let r=[V(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),V(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(I0(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 ih(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 Ju,wt={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:()=>(Ju===void 0&&(Ju=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Ju),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 pi(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":te(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":te(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":$t(r,"email",n.message,e);break;case"format:idn-email":$t(r,"idn-email",n.message,e);break;case"pattern:zod":Ue(r,wt.email,n.message,e);break}break;case"url":$t(r,"uri",n.message,e);break;case"uuid":$t(r,"uuid",n.message,e);break;case"regex":Ue(r,n.regex,n.message,e);break;case"cuid":Ue(r,wt.cuid,n.message,e);break;case"cuid2":Ue(r,wt.cuid2,n.message,e);break;case"startsWith":Ue(r,RegExp(`^${Ku(n.value,e)}`),n.message,e);break;case"endsWith":Ue(r,RegExp(`${Ku(n.value,e)}$`),n.message,e);break;case"datetime":$t(r,"date-time",n.message,e);break;case"date":$t(r,"date",n.message,e);break;case"time":$t(r,"time",n.message,e);break;case"duration":$t(r,"duration",n.message,e);break;case"length":te(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),te(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Ue(r,RegExp(Ku(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&$t(r,"ipv4",n.message,e),n.version!=="v4"&&$t(r,"ipv6",n.message,e);break}case"base64url":Ue(r,wt.base64url,n.message,e);break;case"jwt":Ue(r,wt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ue(r,wt.ipv4Cidr,n.message,e),n.version!=="v4"&&Ue(r,wt.ipv6Cidr,n.message,e);break}case"emoji":Ue(r,wt.emoji(),n.message,e);break;case"ulid":{Ue(r,wt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{$t(r,"binary",n.message,e);break}case"contentEncoding:base64":{te(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ue(r,wt.base64,n.message,e);break}}break}case"nanoid":Ue(r,wt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Ku(t,e){return e.patternStrategy==="escape"?O0(t):t}var P0=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function O0(t){let e="";for(let r=0;r<t.length;r++)P0.has(t[r])||(e+="\\"),e+=t[r];return e}function $t(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):te(t,"format",e,r,n)}function Ue(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:ah(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):te(t,"pattern",ah(e,n),r,n)}function ah(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 li(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}=ui(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}=ci(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function oh(t,e){if(e.mapStrategy==="record")return li(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 sh(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 ih(t){return t.target==="openAi"?void 0:{not:be({...t,currentPath:[...t.currentPath,"not"]})}}function ah(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var xo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function uh(t,e){if(e.target==="openApi3")return ch(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in xo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=xo[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 ch(t,e)}var ch=(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 lh(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:xo[t.innerType._def.typeName],nullable:!0}:{type:[xo[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 dh(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",Bu(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 ph(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=E0(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=P0(t,e);return i!==void 0&&(n.additionalProperties=i),n}function P0(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 E0(t){try{return t.isOptional()}catch{return!0}}var fh=(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 mh=(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 hh(t,e){return D(t.type._def,e)}function gh(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 yh(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 _h(t){return{not:be(t)}}function vh(t){return be(t)}var bh=(t,e)=>D(t.innerType._def,e);var wh=(t,e,r)=>{switch(e){case x.ZodString:return ui(t,r);case x.ZodNumber:return dh(t,r);case x.ZodObject:return ph(t,r);case x.ZodBigInt:return Km(t,r);case x.ZodBoolean:return Wm();case x.ZodDate:return Hu(t,r);case x.ZodUndefined:return _h(r);case x.ZodNull:return ah(r);case x.ZodArray:return Gm(t,r);case x.ZodUnion:case x.ZodDiscriminatedUnion:return uh(t,r);case x.ZodIntersection:return th(t,r);case x.ZodTuple:return yh(t,r);case x.ZodRecord:return li(t,r);case x.ZodLiteral:return rh(t,r);case x.ZodEnum:return eh(t);case x.ZodNativeEnum:return sh(t);case x.ZodNullable:return lh(t,r);case x.ZodOptional:return fh(t,r);case x.ZodMap:return oh(t,r);case x.ZodSet:return gh(t,r);case x.ZodLazy:return()=>t.getter()._def;case x.ZodPromise:return hh(t,r);case x.ZodNaN:case x.ZodNever:return ih(r);case x.ZodEffects:return Xm(t,r);case x.ZodAny:return be(r);case x.ZodUnknown:return vh(r);case x.ZodDefault:return Qm(t,r);case x.ZodBranded:return ci(t,r);case x.ZodReadonly:return bh(t,r);case x.ZodCatch:return Ym(t,r);case x.ZodPipeline:return mh(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!==Bm)return a}if(n&&!r){let a=I0(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=wh(t,t.typeName,e),i=typeof s=="function"?D(s(),e):s;if(i&&O0(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var I0=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:ai(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}},O0=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var Ku=(t,e)=>{let r=Jm(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 N0(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Wu(t,e){return ut(t)?bu(t,{target:N0(e?.target),io:e?.pipeStrategy??"input"}):Ku(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Yu(t){let r=er(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=js(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Qu(t,e){let r=Xt(t,e);if(!r.success)throw r.error;return r.data}var A0=6e4,di=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(Us,r=>{this._oncancel(r)}),this.setNotificationHandler(Hs,r=>{this._onprogress(r)}),this.setRequestHandler(Bs,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Js,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(j.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Ks,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(j.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(Ws,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(j.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Qs,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(j.InvalidParams,`Task not found: ${r.params.taskId}`);if(nr(o.status))throw new O(j.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(j.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof O?o:new O(j.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(j.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):Am(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(j.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:j.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=Im(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(j.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:j.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(j.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(j.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(j.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new O(j.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(j.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=_=>{l(_)};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(_){d(_);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=_=>{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(_)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(z=>this._onerror(new Error(`Failed to send cancellation: ${z}`)));let w=_ instanceof O?_:new O(j.RequestTimeout,String(_));l(w)};this._responseHandlers.set(p,_=>{if(!n?.signal?.aborted){if(_ instanceof Error)return l(_);try{let w=Xt(r,_.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??A0,g=()=>m(O.fromError(j.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let v=c?.taskId;if(v){let _=w=>{let z=this._responseHandlers.get(p);z?z(w):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,_),this._enqueueTaskMessage(v,{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(_=>{this._cleanupTimeout(p),l(_)})})}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},Ys,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},jm,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=Yu(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Qu(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=Yu(e);this._notificationHandlers.set(n,o=>{let s=Qu(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(j.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(j.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new O(j.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(j.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=vo.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(j.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(nr(a.status))throw new O(j.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=vo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),nr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function $h(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function xh(t,e){let r={...t};for(let n in e){let o=n,s=e[o];if(s===void 0)continue;let i=r[o];$h(i)&&$h(s)?r[o]={...i,...s}:r[o]=s}return r}var m_=Pp(Md(),1),h_=Pp(f_(),1);function ZP(){let t=new m_.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,h_.default)(t),t}var Hi=class{constructor(e){this._ajv=e??ZP()}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 Ji=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},$o,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},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 g_(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 y_(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 di{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(wo.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 Hi,this.setRequestHandler(Fs,n=>this._oninitialize(n)),this.setNotificationHandler(Cu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Lu,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=wo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Ji(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=xh(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(j.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(j.InvalidParams,`Invalid task creation result: ${h}`)}return m.data}let f=Xt(si,p);if(!f.success){let m=f.error instanceof Error?f.error.message:String(f.error);throw new O(j.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){y_(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&g_(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:Iu,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},Uu,r):this.request({method:"sampling/createMessage",params:e},$o,r)}async elicitInput(e,r){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let o=e;return this.request({method:"elicitation/create",params:o},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(j.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof O?i:new O(j.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},Fu,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 v_=Symbol.for("mcp.completable");function Hd(t){return!!t&&typeof t=="object"&&v_ in t}function b_(t){return t[v_]?.complete}var __;(function(t){t.Completable="McpCompletable"})(__||(__={}));var MP=/^[A-Za-z0-9._-]{1,128}$/;function qP(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"),!MP.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 DP(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 Jd(t){let e=qP(t);return DP(t,e.warnings),e.isValid}var Ki=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 Wi=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 Ki(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(oi)),this.server.assertCanSetRequestHandler(pr(vn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(oi,()=>({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?Wu(o,{strictUnions:!0,pipeStrategy:"input"}):VP})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=fn(r.outputSchema);o&&(n.outputSchema=Wu(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(j.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new O(j.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(j.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new O(j.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===j.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 As(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Cs(a);throw new O(j.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(j.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=fn(e.outputSchema),s=await As(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Cs(i);throw new O(j.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(j.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(pr(ii)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(ii,async e=>{switch(e.params.ref.type){case"ref/prompt":return Lm(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Um(e),this.handleResourceCompletion(e,e.params.ref);default:throw new O(j.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(j.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new O(j.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return Xo;let s=er(n.argsSchema)?.[e.params.argument.name];if(!Hd(s))return Xo;let i=b_(s);if(!i)return Xo;let a=await i(e.params.argument.value,e.params.context);return $_(a)}async handleResourceCompletion(e,r){let n=Object.values(this._registeredResourceTemplates).find(i=>i.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return Xo;throw new O(j.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return Xo;let s=await o(e.params.argument.value,e.params.context);return $_(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(pr(Xs)),this.server.assertCanSetRequestHandler(pr(ei)),this.server.assertCanSetRequestHandler(pr(ti)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Xs,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(ei,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(ti,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new O(j.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(j.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(pr(ri)),this.server.assertCanSetRequestHandler(pr(ni)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(ri,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?LP(r.argsSchema):void 0}))})),this.server.setRequestHandler(ni,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new O(j.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new O(j.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=fn(n.argsSchema),s=await As(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Cs(c);throw new O(j.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 Je?c._def?.innerType:c;return Hd(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Jd(e);let l={title:r,description:n,inputSchema:w_(o),outputSchema:w_(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"&&Jd(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 VP={type:"object",properties:{}};function x_(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function k_(t){return"_def"in t||"_zod"in t||x_(t)}function Gd(t){return typeof t!="object"||t===null||k_(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(x_)}function w_(t){if(t){if(Gd(t))return jr(t);if(!k_(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function LP(t){let e=er(t);return e?Object.entries(e).map(([r,n])=>{let o=om(n),s=sm(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=js(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function $_(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Xo={completion:{values:[],hasMore:!1}};import z_ from"node:process";var Yi=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
|
|
42
|
-
`);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),
|
|
43
|
-
`}var Qi=class{constructor(e=z_.stdin,r=z_.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new Yi,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=S_(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{Http2ServerRequest as P_,constants as FP}from"http2";import{Http2ServerRequest as Kd}from"http2";import{Readable as R_}from"stream";import tE from"crypto";var Gr=class extends Error{constructor(t,e){super(t,e),this.name="RequestError"}},BP=t=>t instanceof Gr?t:new Gr(t.message,{cause:t}),HP=global.Request,es=class extends HP{constructor(t,e){typeof t=="object"&&Vn in t&&(t=t[Vn]()),typeof e?.body?.getReader<"u"&&(e.duplex??="half"),super(t,e)}},JP=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)},E_=Symbol("wrapBodyStream"),GP=(t,e,r,n,o)=>{let s={method:t,headers:r,signal:o.signal};if(t==="TRACE"){s.method="GET";let i=new es(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[E_]){let i;s.body=new ReadableStream({async pull(a){try{i||=R_.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=R_.toWeb(n);return new es(e,s)},Vn=Symbol("getRequestCache"),I_=Symbol("requestCache"),Xi=Symbol("incomingKey"),ea=Symbol("urlKey"),KP=Symbol("headersKey"),Dn=Symbol("abortControllerKey"),WP=Symbol("getAbortController"),ts={get method(){return this[Xi].method||"GET"},get url(){return this[ea]},get headers(){return this[KP]||=JP(this[Xi])},[WP](){return this[Vn](),this[Dn]},[Vn](){return this[Dn]||=new AbortController,this[I_]||=GP(this.method,this[ea],this.headers,this[Xi],this[Dn])}};["body","bodyUsed","cache","credentials","destination","integrity","mode","redirect","referrer","referrerPolicy","signal","keepalive"].forEach(t=>{Object.defineProperty(ts,t,{get(){return this[Vn]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(ts,t,{value:function(){return this[Vn]()[t]()}})});Object.defineProperty(ts,Symbol.for("nodejs.util.inspect.custom"),{value:function(t,e,r){let n={method:this.method,url:this.url,headers:this.headers,nativeRequest:this[I_]};return`Request (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(ts,es.prototype);var YP=(t,e)=>{let r=Object.create(ts);r[Xi]=t;let n=t.url||"";if(n[0]!=="/"&&(n.startsWith("http://")||n.startsWith("https://"))){if(t instanceof Kd)throw new Gr("Absolute URL for :path is not allowed in HTTP/2");try{let a=new URL(n);r[ea]=a.href}catch(a){throw new Gr("Invalid absolute URL",{cause:a})}return r}let o=(t instanceof Kd?t.authority:t.headers.host)||e;if(!o)throw new Gr("Missing host header");let s;if(t instanceof Kd){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[ea]=i.href,r},Yd=Symbol("responseCache"),qn=Symbol("getResponseCache"),Kr=Symbol("cache"),ep=global.Response,Ln=class O_{#t;#e;[qn](){return delete this[Kr],this[Yd]||=new ep(this.#t,this.#e)}constructor(e,r){let n;if(this.#t=e,r instanceof O_){let o=r[Yd];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[Yd]};return`Response (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(Ln,ep);Object.setPrototypeOf(Ln.prototype,ep.prototype);async function QP(t){return Promise.race([t,Promise.resolve().then(()=>Promise.resolve(void 0))])}function N_(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 XP(t,e){if(t.locked)throw new TypeError("ReadableStream is locked.");return e.destroyed?void 0:N_(t.getReader(),e)}var Qd=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},eE="x-hono-already-sent";typeof global.crypto>"u"&&(global.crypto=tE);var tp=Symbol("outgoingEnded"),T_=Symbol("incomingDraining"),rE=500,nE=64*1024*1024,Wd=t=>{let e=t;if(t.destroyed||e[T_])return;if(e[T_]=!0,t instanceof P_){try{t.stream?.close?.(FP.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,rE);s.unref?.();let i=a=>{r+=a.length,r>nE&&o()};t.on("data",i),t.on("end",n),t.on("error",n),t.resume()},oE=()=>new Response(null,{status:400}),A_=t=>new Response(null,{status:t instanceof Error&&(t.name==="TimeoutError"||t.constructor.name==="TimeoutError")?504:500}),Xd=(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()},j_=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=Qd(o);else if(Array.isArray(o)){let i=new Headers(o);s=i.has("content-length"),o=Qd(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 XP(n,e)?.catch(i=>Xd(i,e))),e[tp]?.()},sE=t=>typeof t.then=="function",iE=async(t,e,r={})=>{if(sE(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(A_);if(Kr in t)return j_(t,e);let n=Qd(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 QP(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 N_(o,e,a))}else n[eE]||(e.writeHead(t.status,n),e.end());e[tp]?.()},rp=(t,e={})=>{let r=e.autoCleanupIncoming??!0;return e.overrideGlobalObjects!==!1&&global.Request!==es&&(Object.defineProperty(global,"Request",{value:es}),Object.defineProperty(global,"Response",{value:Ln})),async(n,o)=>{let s,i;try{i=YP(n,e.hostname);let a=!r||n.method==="GET"||n.method==="HEAD";if(a||(n[E_]=!0,n.on("end",()=>{a=!0}),n instanceof P_&&(o[tp]=()=>{a||setTimeout(()=>{a||setTimeout(()=>{Wd(n)})})}),o.on("finish",()=>{a||Wd(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(()=>{Wd(n)})})}),s=t(i,{incoming:n,outgoing:o}),Kr in s)return j_(s,o)}catch(a){if(s)return Xd(a,o);if(e.errorHandler){if(s=await e.errorHandler(i?a:BP(a)),!s)return}else i?s=A_(a):s=oE()}try{return await iE(s,o,e)}catch(a){return Xd(a,o)}}};var ta=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 fi(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===k.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:V(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??we(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:V(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===k.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=pi(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===k.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===k.ZodBranded&&t.keyType._def.type._def.typeName===k.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=di(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function ch(t,e){if(e.mapStrategy==="record")return fi(t,e);let r=V(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||we(e),n=V(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||we(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function uh(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 lh(t){return t.target==="openAi"?void 0:{not:we({...t,currentPath:[...t.currentPath,"not"]})}}function dh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var So={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function fh(t,e){if(e.target==="openApi3")return ph(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in So&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=So[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 ph(t,e)}var ph=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>V(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 mh(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:So[t.innerType._def.typeName],nullable:!0}:{type:[So[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=V(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=V(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function hh(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",Hu(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 gh(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=A0(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=V(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=N0(t,e);return i!==void 0&&(n.additionalProperties=i),n}function N0(t,e){if(t.catchall._def.typeName!=="ZodNever")return V(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 A0(t){try{return t.isOptional()}catch{return!0}}var yh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return V(t.innerType._def,e);let r=V(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:we(e)},r]}:we(e)};var _h=(t,e)=>{if(e.pipeStrategy==="input")return V(t.in._def,e);if(e.pipeStrategy==="output")return V(t.out._def,e);let r=V(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=V(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function vh(t,e){return V(t.type._def,e)}function bh(t,e){let n={type:"array",uniqueItems:!0,items:V(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 wh(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>V(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:V(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>V(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function $h(t){return{not:we(t)}}function xh(t){return we(t)}var kh=(t,e)=>V(t.innerType._def,e);var Sh=(t,e,r)=>{switch(e){case k.ZodString:return pi(t,r);case k.ZodNumber:return hh(t,r);case k.ZodObject:return gh(t,r);case k.ZodBigInt:return Qm(t,r);case k.ZodBoolean:return eh();case k.ZodDate:return Gu(t,r);case k.ZodUndefined:return $h(r);case k.ZodNull:return dh(r);case k.ZodArray:return Xm(t,r);case k.ZodUnion:case k.ZodDiscriminatedUnion:return fh(t,r);case k.ZodIntersection:return sh(t,r);case k.ZodTuple:return wh(t,r);case k.ZodRecord:return fi(t,r);case k.ZodLiteral:return ih(t,r);case k.ZodEnum:return oh(t);case k.ZodNativeEnum:return uh(t);case k.ZodNullable:return mh(t,r);case k.ZodOptional:return yh(t,r);case k.ZodMap:return ch(t,r);case k.ZodSet:return bh(t,r);case k.ZodLazy:return()=>t.getter()._def;case k.ZodPromise:return vh(t,r);case k.ZodNaN:case k.ZodNever:return lh(r);case k.ZodEffects:return nh(t,r);case k.ZodAny:return we(r);case k.ZodUnknown:return xh(r);case k.ZodDefault:return rh(t,r);case k.ZodBranded:return di(t,r);case k.ZodReadonly:return kh(t,r);case k.ZodCatch:return th(t,r);case k.ZodPipeline:return _h(t,r);case k.ZodFunction:case k.ZodVoid:case k.ZodSymbol:return;default:return(n=>{})(e)}};function V(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Km)return a}if(n&&!r){let a=C0(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=Sh(t,t.typeName,e),i=typeof s=="function"?V(s(),e):s;if(i&&j0(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var C0=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:li(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`),we(e)):e.$refStrategy==="seen"?we(e):void 0}},j0=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var Wu=(t,e)=>{let r=Ym(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:V(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??we(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=V(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??we(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 Z0(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Yu(t,e){return lt(t)?wu(t,{target:Z0(e?.target),io:e?.pipeStrategy??"input"}):Wu(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Xu(t){let r=er(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=qs(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Qu(t,e){let r=Qt(t,e);if(!r.success)throw r.error;return r.data}var M0=6e4,mi=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(Hs,r=>{this._oncancel(r)}),this.setNotificationHandler(Ks,r=>{this._onprogress(r)}),this.setRequestHandler(Js,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Ws,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(j.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Xs,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 N(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 N(j.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(Qs,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 N(j.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(ti,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new N(j.InvalidParams,`Task not found: ${r.params.taskId}`);if(nr(o.status))throw new N(j.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 N(j.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof N?o:new N(j.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),N.fromError(j.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),Lt(s)||_n(s)?this._onresponse(s):rr(s)?this._onrequest(s,i):Mm(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=N.fromError(j.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:j.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=Cm(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 N(j.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:j.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),Lt(e))n(e);else{let i=new N(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(Lt(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),Lt(e))o(e);else{let i=N.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 N?i:new N(j.InternalError,String(i))}}return}let s;try{let i=await this.request(e,vn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new N(j.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 N(j.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new N(j.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 N?i:new N(j.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=y=>{l(y)};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(y){d(y);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=y=>{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(y)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(z=>this._onerror(new Error(`Failed to send cancellation: ${z}`)));let $=y instanceof N?y:new N(j.RequestTimeout,String(y));l($)};this._responseHandlers.set(p,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return l(y);try{let $=Qt(r,y.result);$.success?u($.data):l($.error)}catch($){l($)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let h=n?.timeout??M0,g=()=>m(N.fromError(j.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(p,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let v=c?.taskId;if(v){let y=$=>{let z=this._responseHandlers.get(p);z?z($):this._onerror(new Error(`Response handler missing for side-channeled request ${p}`))};this._requestResolvers.set(p,y),this._enqueueTaskMessage(v,{type:"request",message:f,timestamp:Date.now()}).catch($=>{this._cleanupTimeout(p),l($)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(y=>{this._cleanupTimeout(p),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},Ys,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},ei,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Dm,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=Xu(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Qu(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=Xu(e);this._notificationHandlers.set(n,o=>{let s=Qu(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 N(j.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 N(j.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new N(j.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 N(j.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=wo.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 N(j.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(nr(a.status))throw new N(j.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=wo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),nr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function zh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Rh(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];zh(i)&&zh(s)?r[o]={...i,...s}:r[o]=s}return r}var __=Np(qd(),1),v_=Np(y_(),1);function LE(){let t=new __.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,v_.default)(t),t}var Ki=class{constructor(e){this._ajv=e??LE()}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 Wi=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},ko,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},$n,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function b_(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 w_(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 Yi=class extends mi{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(xo.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 Ki,this.setRequestHandler(Gs,n=>this._oninitialize(n)),this.setNotificationHandler(ju,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Uu,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=xo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Wi(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Rh(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(lt(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=Qt(wn,c);if(!l.success){let m=l.error instanceof Error?l.error.message:String(l.error);throw new N(j.InvalidParams,`Invalid tools/call request: ${m}`)}let{params:d}=l.data,p=await Promise.resolve(r(c,u));if(d.task){let m=Qt(vn,p);if(!m.success){let h=m.error instanceof Error?m.error.message:String(m.error);throw new N(j.InvalidParams,`Invalid task creation result: ${h}`)}return m.data}let f=Qt(ci,p);if(!f.success){let m=f.error instanceof Error?f.error.message:String(f.error);throw new N(j.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){w_(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&b_(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:yn.includes(r)?r:Ou,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"},Bs)}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},Fu,r):this.request({method:"sampling/createMessage",params:e},ko,r)}async elicitInput(e,r){switch(e.mode??"form"){case"url":{if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support url elicitation.");let o=e;return this.request({method:"elicitation/create",params:o},$n,r)}case"form":{if(!this._clientCapabilities?.elicitation?.form)throw new Error("Client does not support form elicitation.");let o=e.mode==="form"?e:{...e,mode:"form"},s=await this.request({method:"elicitation/create",params:o},$n,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new N(j.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof N?i:new N(j.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},Bu,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 x_=Symbol.for("mcp.completable");function Gd(t){return!!t&&typeof t=="object"&&x_ in t}function k_(t){return t[x_]?.complete}var $_;(function(t){t.Completable="McpCompletable"})($_||($_={}));var UE=/^[A-Za-z0-9._-]{1,128}$/;function FE(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"),!UE.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 BE(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 Jd(t){let e=FE(t);return BE(t,e.warnings),e.isValid}var Xi=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 Qi=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 Yi(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Xi(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(ai)),this.server.assertCanSetRequestHandler(pr(wn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ai,()=>({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=hn(r.inputSchema);return o?Yu(o,{strictUnions:!0,pipeStrategy:"input"}):HE})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=hn(r.outputSchema);o&&(n.outputSchema=Yu(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(wn,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new N(j.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new N(j.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 N(j.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new N(j.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 N&&n.code===j.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=hn(e.inputSchema)??e.inputSchema,i=await Zs(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Ms(a);throw new N(j.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 N(j.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=hn(e.outputSchema),s=await Zs(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Ms(i);throw new N(j.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 N(j.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(pr(ui)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(ui,async e=>{switch(e.params.ref.type){case"ref/prompt":return Hm(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Gm(e),this.handleResourceCompletion(e,e.params.ref);default:throw new N(j.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new N(j.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new N(j.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return ts;let s=er(n.argsSchema)?.[e.params.argument.name];if(!Gd(s))return ts;let i=k_(s);if(!i)return ts;let a=await i(e.params.argument.value,e.params.context);return z_(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 ts;throw new N(j.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return ts;let s=await o(e.params.argument.value,e.params.context);return z_(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(pr(ri)),this.server.assertCanSetRequestHandler(pr(ni)),this.server.assertCanSetRequestHandler(pr(oi)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(ri,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(ni,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(oi,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new N(j.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 N(j.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(pr(si)),this.server.assertCanSetRequestHandler(pr(ii)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(si,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?GE(r.argsSchema):void 0}))})),this.server.setRequestHandler(ii,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new N(j.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new N(j.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=hn(n.argsSchema),s=await Zs(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Ms(c);throw new N(j.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:Zr(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=Zr(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 Je?c._def?.innerType:c;return Gd(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){Jd(e);let l={title:r,description:n,inputSchema:S_(o),outputSchema:S_(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"&&Jd(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=Zr(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Zr(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(Kd(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Kd(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 HE={type:"object",properties:{}};function R_(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function T_(t){return"_def"in t||"_zod"in t||R_(t)}function Kd(t){return typeof t!="object"||t===null||T_(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(R_)}function S_(t){if(t){if(Kd(t))return Zr(t);if(!T_(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function GE(t){let e=er(t);return e?Object.entries(e).map(([r,n])=>{let o=cm(n),s=um(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=qs(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function z_(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var ts={completion:{values:[],hasMore:!1}};import I_ from"node:process";var ea=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),JE(r)}clear(){this._buffer=void 0}};function JE(t){return ho.parse(JSON.parse(t))}function E_(t){return JSON.stringify(t)+`
|
|
43
|
+
`}var ta=class{constructor(e=I_.stdin,r=I_.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ea,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=E_(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{Http2ServerRequest as N_,constants as KE}from"http2";import{Http2ServerRequest as Wd}from"http2";import{Readable as P_}from"stream";import iI from"crypto";var Kr=class extends Error{constructor(t,e){super(t,e),this.name="RequestError"}},WE=t=>t instanceof Kr?t:new Kr(t.message,{cause:t}),YE=global.Request,rs=class extends YE{constructor(t,e){typeof t=="object"&&Un in t&&(t=t[Un]()),typeof e?.body?.getReader<"u"&&(e.duplex??="half"),super(t,e)}},XE=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)},A_=Symbol("wrapBodyStream"),QE=(t,e,r,n,o)=>{let s={method:t,headers:r,signal:o.signal};if(t==="TRACE"){s.method="GET";let i=new rs(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[A_]){let i;s.body=new ReadableStream({async pull(a){try{i||=P_.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=P_.toWeb(n);return new rs(e,s)},Un=Symbol("getRequestCache"),C_=Symbol("requestCache"),ra=Symbol("incomingKey"),na=Symbol("urlKey"),eI=Symbol("headersKey"),Ln=Symbol("abortControllerKey"),tI=Symbol("getAbortController"),ns={get method(){return this[ra].method||"GET"},get url(){return this[na]},get headers(){return this[eI]||=XE(this[ra])},[tI](){return this[Un](),this[Ln]},[Un](){return this[Ln]||=new AbortController,this[C_]||=QE(this.method,this[na],this.headers,this[ra],this[Ln])}};["body","bodyUsed","cache","credentials","destination","integrity","mode","redirect","referrer","referrerPolicy","signal","keepalive"].forEach(t=>{Object.defineProperty(ns,t,{get(){return this[Un]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(ns,t,{value:function(){return this[Un]()[t]()}})});Object.defineProperty(ns,Symbol.for("nodejs.util.inspect.custom"),{value:function(t,e,r){let n={method:this.method,url:this.url,headers:this.headers,nativeRequest:this[C_]};return`Request (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(ns,rs.prototype);var rI=(t,e)=>{let r=Object.create(ns);r[ra]=t;let n=t.url||"";if(n[0]!=="/"&&(n.startsWith("http://")||n.startsWith("https://"))){if(t instanceof Wd)throw new Kr("Absolute URL for :path is not allowed in HTTP/2");try{let a=new URL(n);r[na]=a.href}catch(a){throw new Kr("Invalid absolute URL",{cause:a})}return r}let o=(t instanceof Wd?t.authority:t.headers.host)||e;if(!o)throw new Kr("Missing host header");let s;if(t instanceof Wd){if(s=t.scheme,!(s==="http"||s==="https"))throw new Kr("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 Kr("Invalid host header");return r[na]=i.href,r},Xd=Symbol("responseCache"),Vn=Symbol("getResponseCache"),Wr=Symbol("cache"),tp=global.Response,Fn=class j_{#t;#e;[Vn](){return delete this[Wr],this[Xd]||=new tp(this.#t,this.#e)}constructor(e,r){let n;if(this.#t=e,r instanceof j_){let o=r[Xd];if(o){this.#e=o,this[Vn]();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[Wr]=[r?.status||200,e,n||r?.headers])}get headers(){let e=this[Wr];return e?(e[2]instanceof Headers||(e[2]=new Headers(e[2]||{"content-type":"text/plain; charset=UTF-8"})),e[2]):this[Vn]().headers}get status(){return this[Wr]?.[0]??this[Vn]().status}get ok(){let e=this.status;return e>=200&&e<300}};["body","bodyUsed","redirected","statusText","trailers","type","url"].forEach(t=>{Object.defineProperty(Fn.prototype,t,{get(){return this[Vn]()[t]}})});["arrayBuffer","blob","clone","formData","json","text"].forEach(t=>{Object.defineProperty(Fn.prototype,t,{value:function(){return this[Vn]()[t]()}})});Object.defineProperty(Fn.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[Xd]};return`Response (lightweight) ${r(n,{...e,depth:t==null?null:t-1})}`}});Object.setPrototypeOf(Fn,tp);Object.setPrototypeOf(Fn.prototype,tp.prototype);async function nI(t){return Promise.race([t,Promise.resolve().then(()=>Promise.resolve(void 0))])}function Z_(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 oI(t,e){if(t.locked)throw new TypeError("ReadableStream is locked.");return e.destroyed?void 0:Z_(t.getReader(),e)}var Qd=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},sI="x-hono-already-sent";typeof global.crypto>"u"&&(global.crypto=iI);var rp=Symbol("outgoingEnded"),O_=Symbol("incomingDraining"),aI=500,cI=64*1024*1024,Yd=t=>{let e=t;if(t.destroyed||e[O_])return;if(e[O_]=!0,t instanceof N_){try{t.stream?.close?.(KE.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,aI);s.unref?.();let i=a=>{r+=a.length,r>cI&&o()};t.on("data",i),t.on("end",n),t.on("error",n),t.resume()},uI=()=>new Response(null,{status:400}),M_=t=>new Response(null,{status:t instanceof Error&&(t.name==="TimeoutError"||t.constructor.name==="TimeoutError")?504:500}),ep=(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))},q_=t=>{"flushHeaders"in t&&t.writable&&t.flushHeaders()},D_=async(t,e)=>{let[r,n,o]=t[Wr],s=!1;if(!o)o={"content-type":"text/plain; charset=UTF-8"};else if(o instanceof Headers)s=o.has("content-length"),o=Qd(o);else if(Array.isArray(o)){let i=new Headers(o);s=i.has("content-length"),o=Qd(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())):(q_(e),await oI(n,e)?.catch(i=>ep(i,e))),e[rp]?.()},lI=t=>typeof t.then=="function",dI=async(t,e,r={})=>{if(lI(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(M_);if(Wr in t)return D_(t,e);let n=Qd(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 nI(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&&q_(e),await Z_(o,e,a))}else n[sI]||(e.writeHead(t.status,n),e.end());e[rp]?.()},np=(t,e={})=>{let r=e.autoCleanupIncoming??!0;return e.overrideGlobalObjects!==!1&&global.Request!==rs&&(Object.defineProperty(global,"Request",{value:rs}),Object.defineProperty(global,"Response",{value:Fn})),async(n,o)=>{let s,i;try{i=rI(n,e.hostname);let a=!r||n.method==="GET"||n.method==="HEAD";if(a||(n[A_]=!0,n.on("end",()=>{a=!0}),n instanceof N_&&(o[rp]=()=>{a||setTimeout(()=>{a||setTimeout(()=>{Yd(n)})})}),o.on("finish",()=>{a||Yd(n)})),o.on("close",()=>{i[Ln]&&(n.errored?i[Ln].abort(n.errored.toString()):o.writableFinished||i[Ln].abort("Client connection prematurely closed.")),a||setTimeout(()=>{a||setTimeout(()=>{Yd(n)})})}),s=t(i,{incoming:n,outgoing:o}),Wr in s)return D_(s,o)}catch(a){if(s)return ep(a,o);if(e.errorHandler){if(s=await e.errorHandler(i?a:WE(a)),!s)return}else i?s=M_(a):s=uI()}try{return await dI(s,o,e)}catch(a){return ep(a,o)}}};var oa=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,48 +51,48 @@ 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(v=>fo.parse(v)):a=[fo.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(ho);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 v=this.validateSession(e);if(v)return v;let _=this.validateProtocolVersion(e);if(_)return _}if(!a.some(rr)){for(let v of a)this.onmessage?.(v,{authInfo:r?.authInfo,requestInfo:s});return new Response(null,{status:202})}let l=crypto.randomUUID(),d=a.find(v=>ho(v)),p=d?d.params.protocolVersion:e.headers.get("mcp-protocol-version")??Tm;if(this._enableJsonResponse)return new Promise(v=>{this._streamMapping.set(l,{resolveJson:v,cleanup:()=>{this._streamMapping.delete(l)}});for(let _ of a)rr(_)&&this._requestToStreamMapping.set(_.id,l);for(let _ of a)this.onmessage?.(_,{authInfo:r?.authInfo,requestInfo:s})});let f=new TextEncoder,m,h=new ReadableStream({start:v=>{m=v},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 v of a)rr(v)&&(this._streamMapping.set(l,{controller:m,encoder:f,cleanup:()=>{this._streamMapping.delete(l);try{m.close()}catch{}}}),this._requestToStreamMapping.set(v.id,l));await this.writePrimingEvent(m,f,l,p);for(let v of a){let _,w;rr(v)&&this._eventStore&&p>="2025-11-25"&&(_=()=>{this.closeSSEStream(v.id)},w=()=>{this.closeStandaloneSSEStream()}),this.onmessage?.(v,{authInfo:r?.authInfo,requestInfo:s,closeSSEStream:_,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 ra=class{constructor(e={}){this._requestContext=new WeakMap,this._webStandardTransport=new ta(e),this._requestListener=rp(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 rp(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 $E,join as Te,dirname as xE,isAbsolute as kE,basename as SE}from"node:path";import{fileURLToPath as zE}from"node:url";import{randomBytes as uv,randomInt as lv,randomUUID as RE,timingSafeEqual as TE}from"node:crypto";import{createServer as PE}from"node:http";import{brotliCompressSync as EE,brotliDecompressSync as IE}from"node:zlib";import*as C from"node:fs";import{readFile as OE,mkdir as NE,writeFile as AE}from"node:fs/promises";import{adapt_wrapper as CE}from"@adapt-toolkit/sdk/executables";import{PacketWrapperConfigurator as jE}from"@adapt-toolkit/sdk/wrappers";import{object_to_adapt_value as dv}from"@adapt-toolkit/sdk/wrapper";import{AdaptObjectLifetime as wp}from"@adapt-toolkit/sdk/common";import*as ot from"node:fs";import{randomBytes as aE}from"node:crypto";import{homedir as q_}from"node:os";import{resolve as na,join as np,dirname as D_,basename as cE}from"node:path";var V_=["owner","shared","open"],Un={brokerUrl:"wss://broker1.ours.network",port:3050,stateDir:na(q_(),".ours"),gcIntervalMs:36e5,autoStart:!1,apiVisibility:"owner"};function uE(){return process.env.OURS_CONFIG??np(q_(),".ours","config.json")}function lE(){let t;try{t=ot.readFileSync(uE(),"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=na(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"&&V_.includes(e.apiVisibility)&&(r.apiVisibility=e.apiVisibility),typeof e.apiToken=="string"&&e.apiToken.trim()&&(r.apiToken=e.apiToken.trim()),r}function dE(){let t=process.env.OURS_API_VISIBILITY?.trim().toLowerCase();return t&&V_.includes(t)?t:void 0}function pE(t){let e=process.env[t];if(e!==void 0)return e==="1"||e.toLowerCase()==="true"}function Z_(t){let e=process.env[t];if(e===void 0)return;let r=parseInt(e,10);return Number.isNaN(r)?void 0:r}function L_(){let t=lE();return{brokerUrl:process.env.OURS_BROKER_URL??t.brokerUrl??Un.brokerUrl,port:Z_("OURS_PORT")??t.port??Un.port,stateDir:na(process.env.OURS_STATE_DIR??t.stateDir??Un.stateDir),gcIntervalMs:Z_("OURS_GC_INTERVAL_MS")??t.gcIntervalMs??Un.gcIntervalMs,autoStart:pE("OURS_AUTOSTART")??t.autoStart??Un.autoStart,apiVisibility:dE()??t.apiVisibility??Un.apiVisibility,apiToken:process.env.OURS_API_TOKEN?.trim()||t.apiToken}}var fE="daemon-token";function op(t){return np(t.stateDir,fE)}function U_(t){let e=process.env.OURS_API_TOKEN?.trim();return e||t.apiToken?.trim()||void 0}function F_(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=op(t);try{let i=ot.readFileSync(o,"utf8").trim();if(i)return{token:i,source:"file"}}catch{}if(!e.generate)return null;let s=aE(32).toString("hex");try{ot.mkdirSync(D_(o),{recursive:!0}),ot.writeFileSync(o,s+`
|
|
55
|
-
`,{mode:384}),
|
|
56
|
-
`),o}import{basename as
|
|
57
|
-
`);function ME(){if(dp==="open")return null;if(dp==="shared"){let t=U_(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 (${op(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 F_(fr,{generate:!0}).token}var Q_=ME();function qE(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 DE(t){if(Q_===null)return!0;let e=qE(t);if(!e)return!1;let r=Buffer.from(e),n=Buffer.from(Q_);return r.length===n.length&&TE(r,n)}function oa(t,e){return DE(t)?!0:(e.writeHead(401,{"Content-Type":"application/json"}),e.end(JSON.stringify({error:"unauthorized"})),!1)}var VE=/^[A-Za-z0-9 _.@-]{1,64}$/,la="contact-book";function da(t){return VE.test(t)?t==="."||t===".."||t.includes("/")||t.includes("\\")?"invalid name":t===la?`"${la}" 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 LE(){let t=xE(zE(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($E(e)):[Te(t,"mufl_code"),Te(t,"..","mufl_code")].flatMap(n);for(let s of o){if(!C.existsSync(s))continue;let i=C.readdirSync(s).find(a=>a.endsWith(".muflo"));if(i){let a=i.slice(0,-6),c=new Uint8Array(C.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 ns,os,F=new Map,yt=null,pp=null,Re=new Map,ma=new Set,st=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 pv(t){for(let e of Re.values())if(e.token===t)return e}var X_=()=>Te(qe,"bindings.json");function cs(){try{C.mkdirSync(qe,{recursive:!0});let t=`${X_()}.tmp`;C.writeFileSync(t,JSON.stringify({pid:process.pid,bound:[...Re.keys()],holders:[...Re.values()].map(e=>({identity:e.identity,pid:e.pid}))})),C.renameSync(t,X_())}catch(t){S("failed to persist bindings snapshot:",String(t))}}var fv=t=>Te(qe,t),$p=t=>Te(t,"identity.key"),Qr=t=>Te(t,"state_data.bin"),xp=t=>Te(t,"notifications.log"),mp=t=>Te(t,"unread.json"),UE=t=>Te(t.dir,"files");function FE(){return C.existsSync(qe)?C.readdirSync(qe,{withFileTypes:!0}).filter(t=>t.isDirectory()&&C.existsSync($p(Te(qe,t.name)))).map(t=>t.name):[]}var is=()=>Te(qe,la),ev=()=>Te(is(),"registrar.key"),hp=()=>Te(is(),"book.json");function ha(){try{let t=JSON.parse(C.readFileSync(hp(),"utf8"));return t&&typeof t.entries=="object"?t.entries:{}}catch{return{}}}function mv(t){C.mkdirSync(is(),{recursive:!0});let e=`${hp()}.tmp`;C.writeFileSync(e,JSON.stringify({v:1,entries:t},null,2),{mode:384}),C.renameSync(e,hp())}function Hn(t){return et(e=>Buffer.from(xe(t,"::actor::export_address_document",e).GetBinary()))}function hv(t){return et(e=>Buffer.from(xe(t,"::actor::export_signing_secret",e).Serialize()).toString("hex"))}async function gv(t){if(!yt)throw new Error("registrar is not available");let e=Hn(t),r=await Y(async o=>{let s=await V(yt,"::actor::sign_book_entry",{name:t.name,ad:yt.pw.packet.NewBinaryFromBuffer(e).Attach(o)},o);return Buffer.from(s.Reduce("sig").GetBinary()).toString("base64url")}),n=ha();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},mv(n),S(`[${t.name}] published to the local contact book`)}function yv(t){let e=ha();t in e&&(delete e[t],mv(e),S(`[${t}] removed from the local contact book`))}async function _v(t){if(!pp)throw new Error("registrar is not available");await Y(async e=>{await V(t,"::actor::pin_registrar",{registrar_ad:t.pw.packet.NewBinaryFromBuffer(pp).Attach(e)},e)})}var pa=()=>Te(qe,"root.json"),ie=null;function BE(){try{let t=JSON.parse(C.readFileSync(pa(),"utf8"));return typeof t.name=="string"?t.name:null}catch{return null}}function HE(t){C.mkdirSync(qe,{recursive:!0});let e=`${pa()}.tmp`;C.writeFileSync(e,JSON.stringify({v:1,name:t})),C.renameSync(e,pa())}function vv(){C.rmSync(pa(),{force:!0})}function gt(t){return et(e=>{let r=xe(t,"::actor::describe_identity",e);return{bio:r.Reduce("bio").Visualize(),persona:r.Reduce("persona").Visualize(),hasCert:r.Reduce("has_cert").GetBoolean(),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 Fn(t,e){await Y(async r=>{let n=Hn(e),o=await V(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 V(t,"::actor::export_root_profile",{},r),a=Buffer.from(i.Reduce("profile").GetBinary()),c=Hn(t),u=Buffer.from((await V(e,"::actor::export_v1_address_document",{},r)).Reduce("ad").GetBinary()),l=await V(t,"::actor::sign_delegation",{role_ad:t.pw.packet.NewBinaryFromBuffer(u).Attach(r),role_id:e.name},r),d=Buffer.from(l.Reduce("cert").GetBinary());await V(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),cert_v1:e.pw.packet.NewBinaryFromBuffer(d).Attach(r)},r)}),S(`[${e.name}] delegated as a role under root "${t.name}"`)}async function tv(t){ie=t.name,HE(t.name);let e=[],r=[];for(let n of F.values())if(n.name!==t.name)try{await Fn(t,n),e.push(n.name)}catch(o){S(`failed to adopt "${n.name}" as a role under new root "${t.name}":`,String(o)),r.push(n.name)}return S(`[${t.name}] established as the host root${e.length?` (adopted ${e.length} role(s))`:""}`),{adopted:e,failed:r}}function JE(t,e){if(!ie||!F.has(ie))return null;let r=F.get(e)??[...F.values()].find(o=>o.cid===e);if(!r||r.name===t.name)return null;let n=o=>o.name===ie||gt(o).roleId!=="";return n(t)&&n(r)?r:null}async function GE(t,e,r){let n=Hn(e);return await Y(async o=>{await V(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 KE(t,e,r){if(!yt)throw new Error(`"${e}" is not a contact, and the local contact book is unavailable.`);let n=ha(),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=Hn(t);return await Y(async c=>{let u=await V(yt,"::actor::mint_introduction",{joiner_ad:yt.pw.packet.NewBinaryFromBuffer(a).Attach(c),target_ad:yt.pw.packet.NewBinaryFromBuffer(s).Attach(c)},c),l=Buffer.from(u.Reduce("intro").GetBinary());await V(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 us(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 ss(t,e,r){await Y(async n=>{await V(t,"::a2a_control::send_control",{contact:e,payload:JSON.stringify(r)},n)})}function bv(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 WE(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:us(t).proxyCid?"bound":"unbound"}}function YE(t){let e=[];for(let r of F.values()){if(r.name===t.name)continue;let n=gt(r);n.rootCid===t.cid&&e.push({name:r.name,cid:r.cid,role_id:n.roleId,bio:n.bio,monitoring:n.monitoringEnabled,capabilities:bv(r)})}return e}function wv(t){try{os.remove_packet(t.cid)}catch(e){S(`remove_packet(${t.cid}) failed:`,String(e))}F.delete(t.name);try{yv(t.name)}catch(e){S(`failed to unpublish "${t.name}" from the contact book:`,String(e))}Re.has(t.name)&&(Re.delete(t.name),cs()),t.name===ie&&(ie=null,vv());try{C.rmSync(t.dir,{recursive:!0,force:!0})}catch(e){return`deleting ${t.dir} failed: ${String(e)}`}return null}var kp=!0,$v=kp?2:1,QE=6e5,gp=new Map,yp=(t,e)=>`${t}:${e}`;function xv(t,e,r){e&&gp.set(yp(t,e),{response:r,at:Date.now()})}function XE(t,e){if(!e)return;let r=gp.get(yp(t,e));if(r){if(Date.now()-r.at>QE){gp.delete(yp(t,e));return}return r.response}}async function eI(t,e,r){let n=as(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 ss(t,e,o),xv(e,i,o))}async function tI(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{S(`[${t.name}] dropping unparseable control payload from ${n}`);return}if(i.v===1){i.t==="get_manifest"?await ss(t,r,{v:1,t:"res",id:i.id??null,ok:!0,manifest:{...WE(t),protocol_version:$v}}):await ss(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=XE(r,a);if(c){await ss(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 Y(async d=>{let p;try{p=await V(t,"::actor::process_control_envelope",{sender_id:e,sender_name:n,envelope:l,date:s},d)}catch(f){S(`[${t.name}] dispatch of "${l.cap}.${l.verb}" from ${n} failed:`,String(f));return}if(await eI(t,r,p),l.cap==="core.monitoring"&&l.verb==="bind")try{let f=as(p);f&&(f.ok===!0||f.$ok===!0)&&aI(t,r)}catch{}})}async function rI(t){for(;;)if(await Y(async r=>{let o=(await V(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 tI(t,c,c.Visualize(),a.Reduce("sender_name").Visualize(),a.Reduce("payload").Visualize(),a.Reduce("date"))}return!1}))return}function nI(){return String(lv(0,1e6)).padStart(6,"0")}var Xr=new Map;function ga(t){return[...F.values()].find(e=>e.cid===t)}async function ls(t,e){let r=e.Reduce("target").Visualize(),n=as(e.Reduce("response"));if(!n||typeof n!="object")return;await ss(t,r,n);let o=String(n.req_id??"");o&&xv(r,o,n)}async function oI(t,e,r,n){try{if(F.has(e)){S(`[${t.name}] host_provision_child("${e}") rejected: name exists (settles via sweep timeout)`);return}let o=await bp(e);await Y(async s=>{r&&await V(o,"::a2a_messaging::set_my_bio",{bio:r},s),await Fn(t,o);let i=gt(o).roleId,a=xe(o,"::actor::export_address_document_native",s),c=await V(t,"::a2a_cluster::register_provisioned_child",{pending_handle:n,role_id:i,child_ad:a},s);await ls(t,c)})}catch(o){S(`[${t.name}] host_provision_child("${e}") failed (settles via sweep timeout):`,String(o))}}async function sI(t,e,r){try{let n=ga(e.Visualize());if(n){let o=wv(n);o&&S(`[${t.name}] host_destroy_child teardown warning:`,o)}Xr.delete(e.Visualize()),await Y(async o=>{let s=await V(t,"::a2a_cluster::confirm_child_destroyed",{pending_handle:r,cid:e},o);await ls(t,s)})}catch(n){S(`[${t.name}] host_destroy_child failed (settles via sweep timeout):`,String(n))}}async function iI(t,e,r){try{let n=ga(e.Visualize());if(!n){S(`[${t.name}] host_mint_child_invite: unknown child ${e.Visualize()} (settles via sweep timeout)`);return}await Y(async o=>{let s=await V(n,"::a2a_messaging::generate_invite",{},o),i=t.pw.packet.NewBinaryFromBuffer(Buffer.from(s.Reduce("invite").GetBinary())).Attach(o),a=await V(t,"::a2a_cluster::register_child_invite",{pending_handle:r,invite:i},o);await ls(t,a)})}catch(n){S(`[${t.name}] host_mint_child_invite failed (settles via sweep timeout):`,String(n))}}async function _p(t,e,r,n){await Y(async o=>{if(e){n&&await V(t,"::a2a_messaging::host_register_monitoring_cp",{cp_ad:n},o);let s=nI();await V(t,"::a2a_messaging::set_proxy_pending",{code:s,proxy:r},o),await V(t,"::a2a_messaging::verify_proxy_code",{code:s,sender:r},o),Xr.set(t.cid,r??"")}else await V(t,"::a2a_messaging::host_clear_child_monitoring",{},o),Xr.delete(t.cid)})}async function rv(t,e,r,n,o,s){try{let i=ga(e.Visualize());if(!i){S(`[${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 Y(async a=>{let c=await V(t,"::a2a_cluster::confirm_child_monitoring",{pending_handle:n,cid:e,enabled:r},a);await ls(t,c)})}catch(i){S(`[${t.name}] host_set_child_monitoring failed (settles via sweep timeout):`,String(i))}}async function aI(t,e){for(let[r,n]of[...Xr.entries()]){if(n===e)continue;let o=ga(r);if(!o){Xr.delete(r);continue}await _p(o,!1).catch(s=>S(`[${t.name}] CP-rebind clear of child ${r} failed:`,String(s)))}}function cI(t,e){let r=[];for(let n of F.values()){if(n.name===t.name)continue;let o=gt(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:bv(n),child_ad:s})}return r}var ap=new Set;async function kv(t){if(!ap.has(t.name)){ap.add(t.name);try{await Y(async e=>{await V(t,"::a2a_cluster::reconcile",{pending_handle:"",children:cI(t,e)},e);let n=(await V(t,"::a2a_cluster::sweep_and_settle",{},e)).Reduce("settled"),o=n.GetKeys();for(let s=0;s<o.length;s++)await ls(t,n.Reduce(s))})}catch(e){S(`[${t.name}] cluster sweep failed:`,String(e))}finally{ap.delete(t.name)}}}var uI=6e4;function lI(){setInterval(()=>{if(kp)for(let t of F.values())gt(t).roleId===""&&kv(t)},uI).unref()}function dI(){for(let t of F.values())if(gt(t).roleId!=="")try{let e=us(t).proxyCid;e&&Xr.set(t.cid,e)}catch(e){Xr.set(t.cid,""),S(`[${t.name}] monitoredChildren rebuild read failed (added clear-on-repoint):`,String(e))}}var cp=new Set;async function Sp(t){if(!cp.has(t.name)){cp.add(t.name);try{await rI(t)}catch(e){S(`[${t.name}] control dispatch failed:`,String(e))}finally{cp.delete(t.name)}if(F.has(t.name)&&us(t).controlQueued>0)return Sp(t)}}async function pI(){C.mkdirSync(is(),{recursive:!0});let t;try{t=C.readFileSync(ev(),"utf8").trim()}catch{}let e=uv(24).toString("hex");yt=await zp(la,e,is(),!1,t),t||C.writeFileSync(ev(),hv(yt),{mode:384}),pp=Hn(yt),S(`contact-book registrar ready (${yt.cid})`)}function fI(t){try{return C.existsSync(Qr(t))&&C.statSync(Qr(t)).size>0}catch{return!1}}function fa(t){try{let e=et(n=>Buffer.from(xe(t,"::actor::export_state",n).Serialize()));C.mkdirSync(t.dir,{recursive:!0});let r=`${Qr(t.dir)}.tmp`;C.writeFileSync(r,e),C.renameSync(r,Qr(t.dir))}catch(e){S(`[${t.name}] failed to save state:`,String(e))}}function mI(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 hI(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 Sv(t,e){try{let r=await Y(async n=>{let o=await V(t,"::a2a_messaging::flush_deferred",{contact:e},n);return Number(o.Reduce("flushed").Visualize())});r>0&&S(`[${t.name}] flushed ${r} deferred message(s) to ${e.slice(0,12)}\u2026`)}catch(r){S(`[${t.name}] deferred flush to ${e.slice(0,12)}\u2026 failed:`,String(r))}}async function zv(t){try{let e=await Y(async n=>{let o=await V(t,"::a2a_messaging::restore_degraded_contacts",{},n);return Number(o.Reduce("requested").Visualize())});e>0&&S(`[${t.name}] contact restore requested for ${e} degraded contact(s)`);let r=et(n=>hI(xe(t,"::a2a_messaging::list_deferred_queues",n)));for(let n of r)n.degraded||await Sv(t,n.cid)}catch(e){S(`[${t.name}] contact-restore sweep failed:`,String(e))}}async function vp(t){try{let e=await Y(async r=>{let n=await V(t,"::a2a_messaging::readvertise_on_upgrade",{},r);return Number(n.Reduce("readvertised").Visualize())});e>0&&S(`[${t.name}] re-advertised v2 AD to ${e} pre-existing legacy contact(s) (migration bootstrap)`)}catch(e){S(`[${t.name}] readvertise-on-upgrade sweep failed:`,String(e))}}var aa=new Map;function gI(t){let e=aa.get(t);if(!(!e||e.size===0))for(let r of[...e])try{r()}catch{}}function yI(t,e){return new Promise(r=>{let n=aa.get(t);n||(n=new Set,aa.set(t,n));let o=!1,s=()=>{o||(o=!0,n.delete(i),n.size===0&&aa.delete(t),clearTimeout(a),r())},i=s,a=setTimeout(s,e);n.add(i)})}function Be(t,e){try{C.mkdirSync(t.dir,{recursive:!0}),C.appendFileSync(xp(t.dir),JSON.stringify(e)+`
|
|
58
|
-
`)}catch(r){
|
|
59
|
-
`))if(o.trim())try{n.push(JSON.parse(o))}catch{}return
|
|
60
|
-
`))if(c.trim())try{a.push(JSON.parse(c))}catch{}return{events:a,cursor:e+i+1}}async function $I(t,e,r,n){let o=xp(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(up(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()+vI;for(;!a;){let u=up(o);if(i>u&&(i=0),u>i){let{events:l,cursor:d}=wI(o,i,u);if(l.length>0){s(d,l);return}i=d}if(Date.now()>=c)break;await yI(r,Math.min(bI,c-Date.now()))}a||s(up(o),[])}function Yr(t){try{let{unread:e,unreadFiles:r}=et(s=>{let a=ca(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)};C.mkdirSync(t.dir,{recursive:!0});let o=`${mp(t.dir)}.tmp`;C.writeFileSync(o,JSON.stringify(n)),C.renameSync(o,mp(t.dir))}catch(e){S(`[${t.name}] failed to refresh unread snapshot:`,String(e))}}function xI(){let t=[],e=[];try{e=C.readdirSync(qe,{withFileTypes:!0})}catch{return{identities:t}}for(let r of e){if(!r.isDirectory()||da(r.name)!==null)continue;let n;try{n=JSON.parse(C.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,Rv=t=>`ours://inbox/${encodeURIComponent(t)}`;function Ht(t,e){S(`[${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){S("sendLoggingMessage failed:",String(o))}try{n.server.sendResourceUpdated({uri:Rv(t)})}catch{}}}function et(t){let e=new wp;try{return t(e)}finally{e.Finalize()}}async function Y(t){let e=new wp;try{return await t(e)}finally{e.Finalize()}}function xe(t,e,r){let n=dv({name:e,targ:void 0}),o=t.pw.packet.ExecuteTransaction(n);return n.Destroy(),r?o.Attach(r):o}async function kI(t,e){let r=t.lock,n;t.lock=new Promise(o=>n=o),await r;try{return await e()}finally{n()}}function SI(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 V(t,e,r,n,o){let s=dv({name:e,targ:r});return kI(t,()=>SI(t,s,o)).then(i=>(s.Destroy(),n?i.Attach(n):i),i=>{try{s.Destroy()}catch{}throw i})}function zI(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"){fa(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();Be(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();Be(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();Be(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();Be(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();Be(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();Be(t,{event:"contact_restored",from:a}),S(`[${t.name}] contact "${a}" restored (re-keyed)`),process.nextTick(()=>void Sv(t,String(c)))}else if(i==="migration_active"){let a=s.Reduce("cid").Visualize(),c=s.Reduce("role").Visualize(),u=sa(s,"epoch"),l=sa(s,"session_id");Be(t,{event:"migration_active",cid:String(a),role:String(c),...u?{epoch:u}:{},...l?{session_id:l}:{}}),S(`[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=sa(s,"session_id"),u=s.Reduce("olm_type").Visualize(),l=s.Reduce("wire_id").Visualize();Be(t,{event:"e2e_app_send",cid:String(a),session_id:c,olm_type:String(u),wire_id:String(l)}),S(`[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=sa(s,"session_id"),u=s.Reduce("ok").GetBoolean(),l=s.Reduce("wire_id").Visualize();Be(t,{event:"e2e_app_recv",cid:String(a),session_id:c,ok:u,wire_id:String(l)}),S(`[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();Be(t,{event:"migration_deferred_flush",cid:String(a),wire_id:String(c)}),S(`[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();Be(t,{event:"migration_stalled",cid:String(a),phase:String(c),attempts:String(u)}),S(`[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());Be(t,{event:"downgrade_refused",cid:String(a),...u?{wire_id:u}:{}}),S(`[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();S(`[${t.name}] control request queued by ${a}`),process.nextTick(()=>void Sp(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 oI(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 sI(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 iI(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 rv(t,a,!0,u,l,d).finally(()=>{a.Destroy(),l.Destroy(),d.Destroy()}))}else process.nextTick(()=>void rv(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))):(S(`[${t.name}] inbound transaction rejected:`,e),Be(t,{event:"inbound_error",message:e}),process.nextTick(()=>Ht(t.name,`[${t.name}] inbound transaction rejected: ${e}`)))}}function zp(t,e,r,n=!0,o){let s=new jE,i=["--unit_hash",ns.hash,"--seed_phrase",e,"--unit_dir_path",ns.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);os.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()};zI(d),n&&F.set(t,d),S(`[${t}] packet created \u2014 container id ${d.cid}`),a(d)},ns.contents)})}async function bp(t,e={exposeLocal:!0,localAutoAccept:!0}){let r=fv(t);C.mkdirSync(r,{recursive:!0});let n=uv(24).toString("hex"),o=await zp(t,n,r);return C.writeFileSync($p(r),hv(o),{mode:384}),await Y(async s=>{await V(o,"::a2a_messaging::set_my_name",{name:t},s)}),await _v(o),e.localAutoAccept||await Y(async s=>{await V(o,"::actor::set_local_policy",{auto_accept:!1},s)}),e.exposeLocal&&await gv(o),fa(o),o}async function RI(t){let e=fv(t),r=C.readFileSync($p(e),"utf8").trim(),n=await zp(t,"",e,!0,r);if(fI(e))try{let o=C.readFileSync(Qr(e));await Y(async s=>{let i=n.pw.packet.ParseValue(new Uint8Array(o)).Attach(s);await V(n,"::actor::import_state",i,s)})}catch(o){S(`[${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)),Be(n,{event:"state_import_failed",error:String(o).slice(0,300)});try{C.renameSync(Qr(e),`${Qr(e)}.failed-${Date.now()}`),S(`[${t}] unreadable state blob preserved as state_data.bin.failed-*`)}catch{}}return await zv(n),Yr(n),n}async function nv(){ns=LE();let t=["--broker_address",ua,"--test_mode","--logger_config","--level","INFO","--stdout","stderr","--logger_config_end"];S(`booting wrapper (unit ${ns.hash.slice(0,12)}\u2026, broker ${ua})`),os=await CE.start(t),os.on_packet_created_cb=n=>S(`wrapper: packet ready ${n.slice(0,12)}\u2026`),os.start();try{await pI()}catch(n){S("failed to start the contact-book registrar (local contact book disabled):",String(n))}let e=FE();if(e.length===0)S("no persisted identities \u2014 start with create_identity");else{S(`restoring ${e.length} identit${e.length===1?"y":"ies"}: ${e.join(", ")}`);for(let n of e)try{let o=await RI(n);yt&&await _v(o)}catch(o){S(`failed to restore "${n}":`,String(o))}}dI(),lI(),ie=BE(),ie&&!F.has(ie)&&(S(`root marker names a missing identity "${ie}" \u2014 clearing it`),ie=null,vv()),ie&&S(`root identity: ${ie}`);{let n=ie?F.get(ie):void 0;ie&&!n&&S(`re-delegation on upgrade DEGRADED: root "${ie}" is not among the restored identities \u2014 role certs not refreshed this boot`);let o=[];if(n)for(let s of F.values()){if(s.name===n.name)continue;let i;try{i=gt(s)}catch{i=void 0}if(!(!i||!i.hasCert)){if(i.rootCid!==n.cid){S(`[${s.name}] re-delegation skipped: delegated by a different root (${i.rootCid.slice(0,12)}\u2026), not this host root \u2014 left as-is`);continue}try{await Fn(n,s),o.push(s)}catch(a){Be(s,{event:"redelegation_failed",error:String(a).slice(0,300)}),S(`[${s.name}] boot re-delegation (upgrade cert refresh) failed:`,String(a))}}}for(let s of F.values()){await vp(s);for(let i of[1e4,3e4,9e4])setTimeout(()=>{vp(s).catch(()=>{})},i)}o.length>0&&S(`refreshed ${o.length} role delegation cert(s) against the live AD on boot`)}let r=ie?F.get(ie):void 0;if(r)try{us(r).controlQueued>0&&Sp(r)}catch(n){S("boot-time monitoring/control drain failed:",String(n))}cs()}function ov(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(ma.has(e))return{error:"Your identity binding was reassigned to another session. Call choose_identity again to continue."};let r=pv(e);if(!r)return{error:"No identity bound to this session. Call choose_identity (or create_identity) first."};let n=F.get(r.identity);if(!n)return Re.delete(r.identity),cs(),{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 ia(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()}),ma.delete(n),cs()}function TI(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 ca(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 PI(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(v=>ho.parse(v)):a=[ho.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(yo);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 v=this.validateSession(e);if(v)return v;let y=this.validateProtocolVersion(e);if(y)return y}if(!a.some(rr)){for(let v of a)this.onmessage?.(v,{authInfo:r?.authInfo,requestInfo:s});return new Response(null,{status:202})}let l=crypto.randomUUID(),d=a.find(v=>yo(v)),p=d?d.params.protocolVersion:e.headers.get("mcp-protocol-version")??Om;if(this._enableJsonResponse)return new Promise(v=>{this._streamMapping.set(l,{resolveJson:v,cleanup:()=>{this._streamMapping.delete(l)}});for(let y of a)rr(y)&&this._requestToStreamMapping.set(y.id,l);for(let y of a)this.onmessage?.(y,{authInfo:r?.authInfo,requestInfo:s})});let f=new TextEncoder,m,h=new ReadableStream({start:v=>{m=v},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 v of a)rr(v)&&(this._streamMapping.set(l,{controller:m,encoder:f,cleanup:()=>{this._streamMapping.delete(l);try{m.close()}catch{}}}),this._requestToStreamMapping.set(v.id,l));await this.writePrimingEvent(m,f,l,p);for(let v of a){let y,$;rr(v)&&this._eventStore&&p>="2025-11-25"&&(y=()=>{this.closeSSEStream(v.id)},$=()=>{this.closeStandaloneSSEStream()}),this.onmessage?.(v,{authInfo:r?.authInfo,requestInfo:s,closeSSEStream:y,closeStandaloneSSEStream:$})}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&&!yn.includes(r))return this.onerror?.(new Error(`Bad Request: Unsupported protocol version: ${r} (supported versions: ${yn.join(", ")})`)),this.createJsonErrorResponse(400,-32e3,`Bad Request: Unsupported protocol version: ${r} (supported versions: ${yn.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((Lt(e)||_n(e))&&(n=e.id),n===void 0){if(Lt(e)||_n(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(Lt(e)||_n(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 sa=class{constructor(e={}){this._requestContext=new WeakMap,this._webStandardTransport=new oa(e),this._requestListener=np(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 np(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 RI,join as Re,dirname as TI,isAbsolute as EI,basename as II}from"node:path";import{fileURLToPath as PI}from"node:url";import{randomBytes as fv,randomInt as mv,randomUUID as OI,timingSafeEqual as NI}from"node:crypto";import{createServer as AI}from"node:http";import{brotliCompressSync as CI,brotliDecompressSync as jI}from"node:zlib";import*as T from"node:fs";import{readFile as ZI,mkdir as MI,writeFile as qI}from"node:fs/promises";import{adapt_wrapper as DI}from"@adapt-toolkit/sdk/executables";import{PacketWrapperConfigurator as VI}from"@adapt-toolkit/sdk/wrappers";import{object_to_adapt_value as hv}from"@adapt-toolkit/sdk/wrapper";import{AdaptObjectLifetime as kp}from"@adapt-toolkit/sdk/common";import*as st from"node:fs";import{randomBytes as pI}from"node:crypto";import{homedir as U_}from"node:os";import{resolve as ia,join as op,dirname as F_,basename as fI}from"node:path";var B_=["owner","shared","open"],Bn={brokerUrl:"wss://broker1.ours.network",port:3050,stateDir:ia(U_(),".ours"),gcIntervalMs:36e5,autoStart:!1,apiVisibility:"owner"};function mI(){return process.env.OURS_CONFIG??op(U_(),".ours","config.json")}function hI(){let t;try{t=st.readFileSync(mI(),"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=ia(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"&&B_.includes(e.apiVisibility)&&(r.apiVisibility=e.apiVisibility),typeof e.apiToken=="string"&&e.apiToken.trim()&&(r.apiToken=e.apiToken.trim()),r}function gI(){let t=process.env.OURS_API_VISIBILITY?.trim().toLowerCase();return t&&B_.includes(t)?t:void 0}function yI(t){let e=process.env[t];if(e!==void 0)return e==="1"||e.toLowerCase()==="true"}function V_(t){let e=process.env[t];if(e===void 0)return;let r=parseInt(e,10);return Number.isNaN(r)?void 0:r}function H_(){let t=hI();return{brokerUrl:process.env.OURS_BROKER_URL??t.brokerUrl??Bn.brokerUrl,port:V_("OURS_PORT")??t.port??Bn.port,stateDir:ia(process.env.OURS_STATE_DIR??t.stateDir??Bn.stateDir),gcIntervalMs:V_("OURS_GC_INTERVAL_MS")??t.gcIntervalMs??Bn.gcIntervalMs,autoStart:yI("OURS_AUTOSTART")??t.autoStart??Bn.autoStart,apiVisibility:gI()??t.apiVisibility??Bn.apiVisibility,apiToken:process.env.OURS_API_TOKEN?.trim()||t.apiToken}}var _I="daemon-token";function sp(t){return op(t.stateDir,_I)}function G_(t){let e=process.env.OURS_API_TOKEN?.trim();return e||t.apiToken?.trim()||void 0}function J_(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=sp(t);try{let i=st.readFileSync(o,"utf8").trim();if(i)return{token:i,source:"file"}}catch{}if(!e.generate)return null;let s=pI(32).toString("hex");try{st.mkdirSync(F_(o),{recursive:!0}),st.writeFileSync(o,s+`
|
|
55
|
+
`,{mode:384}),st.chmodSync(o,384)}catch{}return{token:s,source:"generated"}}var L_=".ours-identity";function ip(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 vI(t){let e=ia(t);return fI(e)===L_?e:op(e,L_)}function K_(t,e,r=!1){let n=ip(e),o=vI(t);if(!r&&st.existsSync(o))throw new Error(`${o} already exists \u2014 pass overwrite to replace it`);return st.mkdirSync(F_(o),{recursive:!0}),st.writeFileSync(o,JSON.stringify(n,null,2)+`
|
|
56
|
+
`),o}import{basename as bI,extname as wI}from"node:path";var $I={".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 W_(t){return $I[wI(t).toLowerCase()]??"application/octet-stream"}function Y_(t){let e=bI(t).replace(/[^A-Za-z0-9._-]/g,"_");return e.length?e.slice(0,200):"file"}var xI=new Set(["e2e_app_recv","migration_deferred_flush"]);function X_(t){let e=new Set;for(let r of t){if(!r||typeof r!="object")continue;let n=r.event;if(typeof n!="string"||!xI.has(n))continue;let o=r.wire_id;typeof o=="string"&&o.length>0&&e.add(o)}return e}function kI(t,e){return t&&e.has(t)?"e2e":"legacy"}function SI(t,e){let r=kI(t.wire_id,e);return{msg_id:t.msg_id,wire_id:t.wire_id,from:{id:t.sender_id,name:t.sender_name},encryption:r,transport:r==="e2e"?"double_ratchet":"legacy_box",text:t.text,date:t.date,status:t.status,reply_to:t.reply_to}}function Q_(t,e){let r=t.map(n=>SI(n,e));return{count:r.length,messages:r}}function zI(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 ss="0.12.0-nightly.13",fr=H_(),je=fr.stateDir,da=fr.brokerUrl,LI=process.env.OURS_TRANSPORT??"http",ap=fr.port,tv=fr.gcIntervalMs,pp=fr.apiVisibility,w=(...t)=>process.stderr.write(`ours: ${t.join(" ")}
|
|
57
|
+
`);function UI(){if(pp==="open")return null;if(pp==="shared"){let t=G_(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 (${sp(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 J_(fr,{generate:!0}).token}var rv=UI();function FI(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 BI(t){if(rv===null)return!0;let e=FI(t);if(!e)return!1;let r=Buffer.from(e),n=Buffer.from(rv);return r.length===n.length&&NI(r,n)}function aa(t,e){return BI(t)?!0:(e.writeHead(401,{"Content-Type":"application/json"}),e.end(JSON.stringify({error:"unauthorized"})),!1)}var HI=/^[A-Za-z0-9 _.@-]{1,64}$/,pa="contact-book";function fa(t){return HI.test(t)?t==="."||t===".."||t.includes("/")||t.includes("\\")?"invalid name":t===pa?`"${pa}" 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 GI(){let t=TI(PI(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(RI(e)):[Re(t,"mufl_code"),Re(t,"..","mufl_code")].flatMap(n);for(let s of o){if(!T.existsSync(s))continue;let i=T.readdirSync(s).find(a=>a.endsWith(".muflo"));if(i){let a=i.slice(0,-6),c=new Uint8Array(T.readFileSync(Re(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 is,Qr,L=new Map,_t=null,fp=null,Ee=new Map,ha=new Set,it=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 gv(t){for(let e of Ee.values())if(e.token===t)return e}var nv=()=>Re(je,"bindings.json");function ls(){try{T.mkdirSync(je,{recursive:!0});let t=`${nv()}.tmp`;T.writeFileSync(t,JSON.stringify({pid:process.pid,bound:[...Ee.keys()],holders:[...Ee.values()].map(e=>({identity:e.identity,pid:e.pid}))})),T.renameSync(t,nv())}catch(t){w("failed to persist bindings snapshot:",String(t))}}var yv=t=>Re(je,t),ds=t=>Re(t,"identity.key"),en=t=>Re(t,"state_data.bin"),Sp=t=>Re(t,"notifications.log"),hp=t=>Re(t,"unread.json"),JI=t=>Re(t.dir,"files");function KI(){for(let t of zp()){let e=Re(je,t);try{T.chmodSync(e,448)}catch(r){w(`[${t}] chmod 0700 failed:`,String(r))}for(let r of[en(e),ds(e)])if(T.existsSync(r))try{T.chmodSync(r,384)}catch(n){w(`[${t}] chmod 0600 ${r} failed:`,String(n))}}}function zp(){return T.existsSync(je)?T.readdirSync(je,{withFileTypes:!0}).filter(t=>t.isDirectory()&&T.existsSync(ds(Re(je,t.name)))).map(t=>t.name):[]}var cs=()=>Re(je,pa),ov=()=>Re(cs(),"registrar.key"),gp=()=>Re(cs(),"book.json");function ga(){try{let t=JSON.parse(T.readFileSync(gp(),"utf8"));return t&&typeof t.entries=="object"?t.entries:{}}catch{return{}}}function _v(t){T.mkdirSync(cs(),{recursive:!0});let e=`${gp()}.tmp`;T.writeFileSync(e,JSON.stringify({v:1,entries:t},null,2),{mode:384}),T.renameSync(e,gp())}function Jn(t){return He(e=>Buffer.from(ke(t,"::actor::export_address_document",e).GetBinary()))}function vv(t){return He(e=>Buffer.from(ke(t,"::actor::export_signing_secret",e).Serialize()).toString("hex"))}async function bv(t){if(!_t)throw new Error("registrar is not available");let e=Jn(t),r=await B(async o=>{let s=await Z(_t,"::actor::sign_book_entry",{name:t.name,ad:_t.pw.packet.NewBinaryFromBuffer(e).Attach(o)},o);return Buffer.from(s.Reduce("sig").GetBinary()).toString("base64url")}),n=ga();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},_v(n),w(`[${t.name}] published to the local contact book`)}function wv(t){let e=ga();t in e&&(delete e[t],_v(e),w(`[${t}] removed from the local contact book`))}async function $v(t){if(!fp)throw new Error("registrar is not available");await B(async e=>{await Z(t,"::actor::pin_registrar",{registrar_ad:t.pw.packet.NewBinaryFromBuffer(fp).Attach(e)},e)})}var ma=()=>Re(je,"root.json"),ie=null;function WI(){try{let t=JSON.parse(T.readFileSync(ma(),"utf8"));return typeof t.name=="string"?t.name:null}catch{return null}}function YI(t){T.mkdirSync(je,{recursive:!0});let e=`${ma()}.tmp`;T.writeFileSync(e,JSON.stringify({v:1,name:t})),T.renameSync(e,ma())}function xv(){T.rmSync(ma(),{force:!0})}function yt(t){return He(e=>{let r=ke(t,"::actor::describe_identity",e);return{bio:r.Reduce("bio").Visualize(),persona:r.Reduce("persona").Visualize(),hasCert:r.Reduce("has_cert").GetBoolean(),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 Hn(t,e){await B(async r=>{let n=Jn(e),o=await Z(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 Z(t,"::actor::export_root_profile",{},r),a=Buffer.from(i.Reduce("profile").GetBinary()),c=Jn(t),u=Buffer.from((await Z(e,"::actor::export_v1_address_document",{},r)).Reduce("ad").GetBinary()),l=await Z(t,"::actor::sign_delegation",{role_ad:t.pw.packet.NewBinaryFromBuffer(u).Attach(r),role_id:e.name},r),d=Buffer.from(l.Reduce("cert").GetBinary());await Z(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),cert_v1:e.pw.packet.NewBinaryFromBuffer(d).Attach(r)},r)}),w(`[${e.name}] delegated as a role under root "${t.name}"`)}async function sv(t){ie=t.name,YI(t.name);let e=[],r=[];for(let n of L.values())if(n.name!==t.name)try{await Hn(t,n),e.push(n.name)}catch(o){w(`failed to adopt "${n.name}" as a role under new root "${t.name}":`,String(o)),r.push(n.name)}return w(`[${t.name}] established as the host root${e.length?` (adopted ${e.length} role(s))`:""}`),{adopted:e,failed:r}}function XI(t,e){if(!ie||!L.has(ie))return null;let r=L.get(e)??[...L.values()].find(o=>o.cid===e);if(!r||r.name===t.name)return null;let n=o=>o.name===ie||yt(o).roleId!=="";return n(t)&&n(r)?r:null}async function QI(t,e,r){let n=Jn(e);return await B(async o=>{await Z(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 eP(t,e,r){if(!_t)throw new Error(`"${e}" is not a contact, and the local contact book is unavailable.`);let n=ga(),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=Jn(t);return await B(async c=>{let u=await Z(_t,"::actor::mint_introduction",{joiner_ad:_t.pw.packet.NewBinaryFromBuffer(a).Attach(c),target_ad:_t.pw.packet.NewBinaryFromBuffer(s).Attach(c)},c),l=Buffer.from(u.Reduce("intro").GetBinary());await Z(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 ps(t){return He(e=>{let r=ke(t,"::a2a_messaging::get_monitoring_status",e),n=ke(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 as(t,e,r){await B(async n=>{await Z(t,"::a2a_control::send_control",{contact:e,payload:JSON.stringify(r)},n)})}function kv(t){try{return He(e=>{let r=ke(t,"::a2a_capabilities::get_manifest",e).Reduce("capabilities");return r.IsNil()?[]:[...r.GetKeys()].map(n=>typeof n=="string"?n:n.Visualize())})}catch{return[]}}function tP(t){let e="",r="",n="",o="",s=[];try{He(i=>{let a=ke(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:ps(t).proxyCid?"bound":"unbound"}}function rP(t){let e=[];for(let r of L.values()){if(r.name===t.name)continue;let n=yt(r);n.rootCid===t.cid&&e.push({name:r.name,cid:r.cid,role_id:n.roleId,bio:n.bio,monitoring:n.monitoringEnabled,capabilities:kv(r)})}return e}function Sv(t){try{Qr.remove_packet(t.cid)}catch(e){w(`remove_packet(${t.cid}) failed:`,String(e))}L.delete(t.name);try{wv(t.name)}catch(e){w(`failed to unpublish "${t.name}" from the contact book:`,String(e))}Ee.has(t.name)&&(Ee.delete(t.name),ls()),t.name===ie&&(ie=null,xv());try{T.rmSync(t.dir,{recursive:!0,force:!0}),mr.delete(t.name)}catch(e){return`deleting ${t.dir} failed: ${String(e)}`}return null}var Rp=!0,zv=Rp?2:1,nP=6e5,yp=new Map,_p=(t,e)=>`${t}:${e}`;function Rv(t,e,r){e&&yp.set(_p(t,e),{response:r,at:Date.now()})}function oP(t,e){if(!e)return;let r=yp.get(_p(t,e));if(r){if(Date.now()-r.at>nP){yp.delete(_p(t,e));return}return r.response}}async function sP(t,e,r){let n=us(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 as(t,e,o),Rv(e,i,o))}async function iP(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{w(`[${t.name}] dropping unparseable control payload from ${n}`);return}if(i.v===1){i.t==="get_manifest"?await as(t,r,{v:1,t:"res",id:i.id??null,ok:!0,manifest:{...tP(t),protocol_version:zv}}):await as(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=oP(r,a);if(c){await as(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 B(async d=>{let p;try{p=await Z(t,"::actor::process_control_envelope",{sender_id:e,sender_name:n,envelope:l,date:s},d)}catch(f){w(`[${t.name}] dispatch of "${l.cap}.${l.verb}" from ${n} failed:`,String(f));return}if(await sP(t,r,p),l.cap==="core.monitoring"&&l.verb==="bind")try{let f=us(p);f&&(f.ok===!0||f.$ok===!0)&&pP(t,r)}catch{}})}async function aP(t){for(;;)if(await B(async r=>{let o=(await Z(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 iP(t,c,c.Visualize(),a.Reduce("sender_name").Visualize(),a.Reduce("payload").Visualize(),a.Reduce("date"))}return!1}))return}function cP(){return String(mv(0,1e6)).padStart(6,"0")}var tn=new Map;function ya(t){return[...L.values()].find(e=>e.cid===t)}async function fs(t,e){let r=e.Reduce("target").Visualize(),n=us(e.Reduce("response"));if(!n||typeof n!="object")return;await as(t,r,n);let o=String(n.req_id??"");o&&Rv(r,o,n)}async function uP(t,e,r,n){try{if(L.has(e)){w(`[${t.name}] host_provision_child("${e}") rejected: name exists (settles via sweep timeout)`);return}let o=await xp(e);await B(async s=>{r&&await Z(o,"::a2a_messaging::set_my_bio",{bio:r},s),await Hn(t,o);let i=yt(o).roleId,a=ke(o,"::actor::export_address_document_native",s),c=await Z(t,"::a2a_cluster::register_provisioned_child",{pending_handle:n,role_id:i,child_ad:a},s);await fs(t,c)})}catch(o){w(`[${t.name}] host_provision_child("${e}") failed (settles via sweep timeout):`,String(o))}}async function lP(t,e,r){try{let n=ya(e.Visualize());if(n){let o=Sv(n);o&&w(`[${t.name}] host_destroy_child teardown warning:`,o)}tn.delete(e.Visualize()),await B(async o=>{let s=await Z(t,"::a2a_cluster::confirm_child_destroyed",{pending_handle:r,cid:e},o);await fs(t,s)})}catch(n){w(`[${t.name}] host_destroy_child failed (settles via sweep timeout):`,String(n))}}async function dP(t,e,r){try{let n=ya(e.Visualize());if(!n){w(`[${t.name}] host_mint_child_invite: unknown child ${e.Visualize()} (settles via sweep timeout)`);return}await B(async o=>{let s=await Z(n,"::a2a_messaging::generate_invite",{},o),i=t.pw.packet.NewBinaryFromBuffer(Buffer.from(s.Reduce("invite").GetBinary())).Attach(o),a=await Z(t,"::a2a_cluster::register_child_invite",{pending_handle:r,invite:i},o);await fs(t,a)})}catch(n){w(`[${t.name}] host_mint_child_invite failed (settles via sweep timeout):`,String(n))}}async function vp(t,e,r,n){await B(async o=>{if(e){n&&await Z(t,"::a2a_messaging::host_register_monitoring_cp",{cp_ad:n},o);let s=cP();await Z(t,"::a2a_messaging::set_proxy_pending",{code:s,proxy:r},o),await Z(t,"::a2a_messaging::verify_proxy_code",{code:s,sender:r},o),tn.set(t.cid,r??"")}else await Z(t,"::a2a_messaging::host_clear_child_monitoring",{},o),tn.delete(t.cid)})}async function iv(t,e,r,n,o,s){try{let i=ya(e.Visualize());if(!i){w(`[${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 B(async a=>{let c=await Z(t,"::a2a_cluster::confirm_child_monitoring",{pending_handle:n,cid:e,enabled:r},a);await fs(t,c)})}catch(i){w(`[${t.name}] host_set_child_monitoring failed (settles via sweep timeout):`,String(i))}}async function pP(t,e){for(let[r,n]of[...tn.entries()]){if(n===e)continue;let o=ya(r);if(!o){tn.delete(r);continue}await vp(o,!1).catch(s=>w(`[${t.name}] CP-rebind clear of child ${r} failed:`,String(s)))}}function fP(t,e){let r=[];for(let n of L.values()){if(n.name===t.name)continue;let o=yt(n);if(o.rootCid!==t.cid)continue;let s=ke(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:kv(n),child_ad:s})}return r}var cp=new Set;async function Tv(t){if(!cp.has(t.name)){cp.add(t.name);try{await B(async e=>{await Z(t,"::a2a_cluster::reconcile",{pending_handle:"",children:fP(t,e)},e);let n=(await Z(t,"::a2a_cluster::sweep_and_settle",{},e)).Reduce("settled"),o=n.GetKeys();for(let s=0;s<o.length;s++)await fs(t,n.Reduce(s))})}catch(e){w(`[${t.name}] cluster sweep failed:`,String(e))}finally{cp.delete(t.name)}}}var mP=6e4;function hP(){setInterval(()=>{if(Rp)for(let t of L.values())yt(t).roleId===""&&Tv(t)},mP).unref()}function gP(){for(let t of L.values())if(yt(t).roleId!=="")try{let e=ps(t).proxyCid;e&&tn.set(t.cid,e)}catch(e){tn.set(t.cid,""),w(`[${t.name}] monitoredChildren rebuild read failed (added clear-on-repoint):`,String(e))}}var up=new Set;async function Tp(t){if(!up.has(t.name)){up.add(t.name);try{await aP(t)}catch(e){w(`[${t.name}] control dispatch failed:`,String(e))}finally{up.delete(t.name)}if(L.has(t.name)&&ps(t).controlQueued>0)return Tp(t)}}async function yP(){T.mkdirSync(cs(),{recursive:!0});let t;try{t=T.readFileSync(ov(),"utf8").trim()}catch{}let e=fv(24).toString("hex");_t=await Ip(pa,e,cs(),!1,t),t||T.writeFileSync(ov(),vv(_t),{mode:384}),fp=Jn(_t),w(`contact-book registrar ready (${_t.cid})`)}function _P(t){try{return T.existsSync(en(t))&&T.statSync(en(t)).size>0}catch{return!1}}function bp(t){let e=He(s=>Buffer.from(ke(t,"::actor::export_state",s).Serialize()));T.mkdirSync(t.dir,{recursive:!0,mode:448});let r=en(t.dir),n=`${r}.tmp`,o;try{o=T.openSync(n,"w",384),T.fchmodSync(o,384),T.writeFileSync(o,e),T.fsyncSync(o),T.closeSync(o),o=void 0,T.renameSync(n,r),T.chmodSync(r,384);try{T.chmodSync(ds(t.dir),384)}catch{}let s=T.openSync(t.dir,"r");try{T.fsyncSync(s)}finally{T.closeSync(s)}}catch(s){if(o!==void 0)try{T.closeSync(o)}catch{}try{T.rmSync(n,{force:!0})}catch{}throw s}}function Ep(t){try{bp(t),t.persistFailed&&(t.persistFailed=!1,w(`[${t.name}] persist recovered \u2014 quarantine lifted`),me(t,{event:"persist_recovered"}))}catch(e){t.persistFailed=!0,w(`[${t.name}] PERSIST FAILED \u2014 identity quarantined (fail-closed), outbound of this txn withheld:`,String(e));try{me(t,{event:"persist_failed",error:String(e).slice(0,300)})}catch{}throw process.nextTick(()=>tt(t.name,`[${t.name}] PERSIST FAILED \u2014 messaging quarantined until the state file is writable again`)),e}}function vP(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 bP(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 Ev(t,e){try{let r=await B(async n=>{let o=await Z(t,"::a2a_messaging::flush_deferred",{contact:e},n);return Number(o.Reduce("flushed").Visualize())});r>0&&w(`[${t.name}] flushed ${r} deferred message(s) to ${e.slice(0,12)}\u2026`)}catch(r){w(`[${t.name}] deferred flush to ${e.slice(0,12)}\u2026 failed:`,String(r))}}async function Iv(t){try{let e=await B(async n=>{let o=await Z(t,"::a2a_messaging::restore_degraded_contacts",{},n);return Number(o.Reduce("requested").Visualize())});e>0&&w(`[${t.name}] contact restore requested for ${e} degraded contact(s)`);let r=He(n=>bP(ke(t,"::a2a_messaging::list_deferred_queues",n)));for(let n of r)n.degraded||await Ev(t,n.cid)}catch(e){w(`[${t.name}] contact-restore sweep failed:`,String(e))}}async function wp(t){try{let e=await B(async r=>{let n=await Z(t,"::a2a_messaging::readvertise_on_upgrade",{},r);return Number(n.Reduce("readvertised").Visualize())});e>0&&w(`[${t.name}] re-advertised v2 AD to ${e} pre-existing legacy contact(s) (migration bootstrap)`)}catch(e){w(`[${t.name}] readvertise-on-upgrade sweep failed:`,String(e))}}async function $p(t){try{let e=await B(async r=>{let n=await Z(t,"::a2a_messaging::readvertise_e2e_recovery",{},r);return Number(n.Reduce("readvertised").Visualize())});e>0&&w(`[${t.name}] re-advertised fresh AD to ${e} e2e contact(s) (session recovery)`)}catch(e){w(`[${t.name}] e2e recovery re-advertise failed:`,String(e))}try{await B(async e=>{await Z(t,"::a2a_messaging::sweep_e2e_migrations",{},e)})}catch(e){w(`[${t.name}] e2e migration sweep failed:`,String(e))}try{let e=await B(async r=>{let n=await Z(t,"::a2a_messaging::redrive_unacked_sweep",{},r),o=s=>n.Reduce(s).IsNil()?0:Number(n.Reduce(s).Visualize());return{redriven:o("redriven_contacts"),purged:o("purged_contacts"),deferred:o("deferred_contacts")}});(e.redriven>0||e.purged>0||e.deferred>0)&&w(`[${t.name}] unacked sweep: redriven=${e.redriven} ttl_purged=${e.purged} deferred=${e.deferred} contact(s)`)}catch(e){w(`[${t.name}] unacked redrive sweep failed:`,String(e))}}var ua=new Map;function wP(t){let e=ua.get(t);if(!(!e||e.size===0))for(let r of[...e])try{r()}catch{}}function $P(t,e){return new Promise(r=>{let n=ua.get(t);n||(n=new Set,ua.set(t,n));let o=!1,s=()=>{o||(o=!0,n.delete(i),n.size===0&&ua.delete(t),clearTimeout(a),r())},i=s,a=setTimeout(s,e);n.add(i)})}function me(t,e){try{T.mkdirSync(t.dir,{recursive:!0,mode:448}),T.appendFileSync(Sp(t.dir),JSON.stringify(e)+`
|
|
58
|
+
`)}catch(r){w(`[${t.name}] failed to append notifications.log:`,String(r))}wP(t.name)}function xP(t){let e=Sp(t.dir),r="";try{r=T.readFileSync(e,"utf8")}catch{return new Set}let n=[];for(let o of r.split(`
|
|
59
|
+
`))if(o.trim())try{n.push(JSON.parse(o))}catch{}return X_(n)}function os(t,e){let r=t.Reduce(e);return r.IsNil()?"":Buffer.from(r.GetBinary()).toString("hex")}var kP=Number(process.env.OURS_NOTIFY_LONGPOLL_MS)>0?Number(process.env.OURS_NOTIFY_LONGPOLL_MS):25e3,SP=250;function lp(t){try{return T.statSync(t).size}catch{return 0}}function zP(t,e,r){if(r<=e)return{events:[],cursor:e};let n=Buffer.alloc(r-e),o=0;try{let c=T.openSync(t,"r");try{o=T.readSync(c,n,0,n.length,e)}finally{T.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(`
|
|
60
|
+
`))if(c.trim())try{a.push(JSON.parse(c))}catch{}return{events:a,cursor:e+i+1}}async function RP(t,e,r,n){let o=Sp(Re(je,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(lp(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()+kP;for(;!a;){let u=lp(o);if(i>u&&(i=0),u>i){let{events:l,cursor:d}=zP(o,i,u);if(l.length>0){s(d,l);return}i=d}if(Date.now()>=c)break;await $P(r,Math.min(SP,c-Date.now()))}a||s(lp(o),[])}function Xr(t){try{let{unread:e,unreadFiles:r}=He(s=>{let a=la(ke(t,"::actor::list_incoming_messages",s)).filter(l=>l.status==="unread"),c=ke(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)};T.mkdirSync(t.dir,{recursive:!0,mode:448});let o=`${hp(t.dir)}.tmp`;T.writeFileSync(o,JSON.stringify(n)),T.renameSync(o,hp(t.dir))}catch(e){w(`[${t.name}] failed to refresh unread snapshot:`,String(e))}}function TP(){let t=[],e=[];try{e=T.readdirSync(je,{withFileTypes:!0})}catch{return{identities:t}}for(let r of e){if(!r.isDirectory()||fa(r.name)!==null)continue;let n;try{n=JSON.parse(T.readFileSync(hp(Re(je,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 Yr=new Map,Pv=t=>`ours://inbox/${encodeURIComponent(t)}`;function tt(t,e){w(`[${t}] notify:`,e);let r=Ee.get(t)?.sid;if(!r)return;let n=Yr.get(r);if(n){try{n.sendLoggingMessage({level:"info",logger:"ours",data:e})}catch(o){w("sendLoggingMessage failed:",String(o))}try{n.server.sendResourceUpdated({uri:Pv(t)})}catch{}}}function He(t){let e=new kp;try{return t(e)}finally{e.Finalize()}}async function B(t){let e=new kp;try{return await t(e)}finally{e.Finalize()}}function ke(t,e,r){let n=hv({name:e,targ:void 0}),o=t.pw.packet.ExecuteTransaction(n);return n.Destroy(),r?o.Attach(r):o}async function EP(t,e){let r=t.lock,n;t.lock=new Promise(o=>n=o),await r;try{return await e()}finally{n()}}function IP(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 Z(t,e,r,n,o){if(t.persistFailed)try{Ep(t)}catch(i){return Promise.reject(new Error(`identity "${t.name}" is quarantined: state persist is failing (${String(i)}) \u2014 mutations are rejected until state_data.bin is writable again`))}let s=hv({name:e,targ:r});return EP(t,()=>IP(t,s,o)).then(i=>{if(s.Destroy(),t.persistFailed){try{i.Destroy()}catch{}throw new Error(`identity "${t.name}": state persist FAILED \u2014 this transaction's outbound was withheld (fail-closed); fix the state directory and retry`)}return n?i.Attach(n):i},i=>{try{s.Destroy()}catch{}throw i})}function PP(t){t.pw.on_return_data=e=>{let r=new kp;e.Attach(r);try{let n=e.Reduce("kind").Visualize();if(n==="save_state"){Ep(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();me(t,{event:"message_received",from:a,msg_id:c,date:u}),Xr(t),process.nextTick(()=>tt(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();me(t,{event:"file_received",from:a,file_id:c,filename:u,mime:l,bytes:d,date:p}),Xr(t),process.nextTick(()=>tt(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(()=>tt(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(()=>tt(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();me(t,{event:"sibling_contact_added",from:a}),process.nextTick(()=>tt(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();me(t,{event:"local_contact_request",from:a}),process.nextTick(()=>tt(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();me(t,{event:"pending_message",from:a,queued:c}),process.nextTick(()=>tt(t.name,`[${t.name}] "${a}" queued a message awaiting introduction approval (${c} queued).`))}else if(i==="e2e_restore_rejected")me(t,{event:"e2e_restore_rejected"}),w(`[${t.name}] E2E RESTORE REJECTED \u2014 corrupt session blob failed pickle_key validation; reset to empty e2e state, self-heal fallback will re-establish`),process.nextTick(()=>tt(t.name,`[${t.name}] persisted e2e sessions were corrupt \u2014 rejected cleanly, sessions re-establishing`));else if(i==="contact_restored"){let a=s.Reduce("name").Visualize(),c=s.Reduce("container_id").Visualize();me(t,{event:"contact_restored",from:a}),w(`[${t.name}] contact "${a}" restored (re-keyed)`),process.nextTick(()=>void Ev(t,String(c)))}else if(i==="migration_active"){let a=s.Reduce("cid").Visualize(),c=s.Reduce("role").Visualize(),u=os(s,"epoch"),l=os(s,"session_id");me(t,{event:"migration_active",cid:String(a),role:String(c),...u?{epoch:u}:{},...l?{session_id:l}:{}}),w(`[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=os(s,"session_id"),u=s.Reduce("olm_type").Visualize(),l=s.Reduce("wire_id").Visualize(),d=s.Reduce("retained").IsNil()?void 0:s.Reduce("retained").GetBoolean(),p=[],f=s.Reduce("evicted");if(!f.IsNil())for(let m=0;;m++){let h=f.Reduce(m);if(h.IsNil())break;p.push(String(h.Visualize()))}me(t,{event:"e2e_app_send",cid:String(a),session_id:c,olm_type:String(u),wire_id:String(l),...d===!1?{retained:!1}:{},...p.length?{evicted:p}:{}}),w(`[${t.name}] [e2e-app] send cid=${a} session_id=${c} olm_type=${u} wire_id=${l}${d===!1?" retained=false":""}${p.length?` evicted=${p.join(",")}`:""}`),p.length&&process.nextTick(()=>tt(t.name,`[${t.name}] redrive window overflow: ${p.length} older unacked send(s) lost their auto-resend guarantee (${p.join(", ")})`))}else if(i==="dedup_degraded"){let a=s.Reduce("cid").Visualize(),c=s.Reduce("dropped_wire_id").Visualize();me(t,{event:"dedup_degraded",cid:String(a),dropped_wire_id:String(c)}),w(`[${t.name}] [e2e-app] DEDUP DEGRADED cid=${a} dropped_wire_id=${c} (storage ceiling \u2014 a late redrive of that id could re-deposit)`),process.nextTick(()=>tt(t.name,`[${t.name}] dedup window overflowed for ${String(a).slice(0,12)}\u2026 \u2014 one oldest entry dropped (guarantee loss surfaced)`))}else if(i==="e2e_delivery_expired"){let a=s.Reduce("cid").Visualize(),c=[],u=s.Reduce("wire_ids");if(!u.IsNil())for(let l=0;;l++){let d=u.Reduce(l);if(d.IsNil())break;c.push(String(d.Visualize()))}me(t,{event:"e2e_delivery_expired",cid:String(a),wire_ids:c}),w(`[${t.name}] [e2e-app] delivery EXPIRED (2-day TTL, receipt never arrived) cid=${a} wire_ids=${c.join(",")}`),process.nextTick(()=>tt(t.name,`[${t.name}] ${c.length} message(s)/file(s) to ${String(a).slice(0,12)}\u2026 expired undelivered (no receipt within 2 days)`))}else if(i==="e2e_app_recv"){let a=s.Reduce("cid").Visualize(),c=os(s,"session_id"),u=s.Reduce("ok").GetBoolean(),l=s.Reduce("wire_id").Visualize(),d=s.Reduce("code").IsNil()?void 0:String(s.Reduce("code").Visualize()),p=!s.Reduce("duplicate").IsNil(),f=!s.Reduce("file").IsNil();me(t,{event:"e2e_app_recv",cid:String(a),session_id:c,ok:u,wire_id:String(l),...d?{code:d}:{},...p?{duplicate:!0}:{},...f?{file:!0}:{}}),w(`[${t.name}] [e2e-app] recv cid=${a} session_id=${c} ok=${u} wire_id=${l}${d?` code=${d}`:""}${p?" duplicate=true":""}${f?" file=true":""}`)}else if(i==="e2e_rekey"){let a=s.Reduce("cid").Visualize(),c=s.Reduce("role").Visualize(),u=os(s,"session_id"),l=s.Reduce("attempts").IsNil()?void 0:String(s.Reduce("attempts").Visualize()),d=s.Reduce("peer_supports").IsNil()?void 0:String(s.Reduce("peer_supports").Visualize()),p=s.Reduce("rejected").IsNil()?void 0:String(s.Reduce("rejected").Visualize());me(t,{event:"e2e_rekey",cid:String(a),role:String(c),...u?{session_id:u}:{},...l?{attempts:l}:{},...d?{peer_supports:d}:{},...p?{rejected:p}:{}}),w(`[${t.name}] [e2e-rekey] cid=${a} role=${c}${u?` session_id=${u}`:""}${l?` attempts=${l}`:""}${d?` peer_supports=${d}`:""}${p?` rejected=${p}`:""}`)}else if(i==="migration_deferred_flush"){let a=s.Reduce("cid").Visualize(),c=s.Reduce("wire_id").Visualize();me(t,{event:"migration_deferred_flush",cid:String(a),wire_id:String(c)}),w(`[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();me(t,{event:"migration_stalled",cid:String(a),phase:String(c),attempts:String(u)}),w(`[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());me(t,{event:"downgrade_refused",cid:String(a),...u?{wire_id:u}:{}}),w(`[e2e-route] downgrade-dropped cid=${a}${u?` wire_id=${u}`:""} (legacy plaintext from a migrated peer \u2014 dropped by core)`),process.nextTick(()=>tt(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();w(`[${t.name}] control request queued by ${a}`),process.nextTick(()=>void Tp(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 uP(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 lP(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 dP(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 iv(t,a,!0,u,l,d).finally(()=>{a.Destroy(),l.Destroy(),d.Destroy()}))}else process.nextTick(()=>void iv(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))):(w(`[${t.name}] inbound transaction rejected:`,e),me(t,{event:"inbound_error",message:e}),process.nextTick(()=>tt(t.name,`[${t.name}] inbound transaction rejected: ${e}`)))}}function Ip(t,e,r,n=!0,o,s=!1){let i=new VI;i.deferred_exposure=s;let a=["--unit_hash",is.hash,"--seed_phrase",e,"--unit_dir_path",is.dir];return o&&a.push("--init_trn_argument",JSON.stringify(o)),i.process_arguments(a),new Promise((c,u)=>{let l=setTimeout(()=>u(new Error(`packet creation for "${t}" timed out`)),3e4);Qr.packet_manager.create_packet(i,d=>{clearTimeout(l);let p={name:t,cid:He(f=>d.packet.GetContainerID().Attach(f).Visualize()),pw:d,dir:r,pending:[],lock:Promise.resolve()};PP(p),n&&L.set(t,p),w(`[${t}] packet created \u2014 container id ${p.cid}`),c(p)},is.contents)})}var mr=new Set(zp());mr.size>0&&w(`reserved ${mr.size} persisted identity name(s) at module load: ${[...mr].join(", ")}`);async function xp(t,e={exposeLocal:!0,localAutoAccept:!0}){if(mr.has(t)||L.has(t))throw new Error(`identity name "${t}" is reserved \u2014 a persisted identity with this name is restoring, present, or being provisioned; refusing to provision over it`);mr.add(t);try{let r=yv(t);T.mkdirSync(r,{recursive:!0,mode:448});let n=fv(24).toString("hex"),o=await Ip(t,n,r);return T.writeFileSync(ds(r),vv(o),{mode:384}),await B(async s=>{await Z(o,"::a2a_messaging::set_my_name",{name:t},s)}),await $v(o),e.localAutoAccept||await B(async s=>{await Z(o,"::actor::set_local_policy",{auto_accept:!1},s)}),e.exposeLocal&&await bv(o),Ep(o),o}catch(r){throw mr.delete(t),r}}async function OP(t){let e=yv(t),r=T.readFileSync(ds(e),"utf8").trim(),n=await Ip(t,"",e,!1,r,!0);w(`[${t}] created QUARANTINED (no routing/broker registration, not client-bindable) \u2014 importing state before exposure`);let o=Number(process.env.OURS_TEST_RESTORE_HOLD_MS||"")||0;o>0&&(w(`[${t}] TEST HOLD: keeping restore open ${o}ms (OURS_TEST_RESTORE_HOLD_MS)`),await new Promise(c=>setTimeout(c,o)));let s=c=>/timed out waiting for the transaction result/.test(String(c)),i=(c,u,l)=>{w(`[${t}] ${c} ${u} \u2014 identity left UNEXPOSED and UNTRACKED (fail-closed)`);try{me(n,{event:"restore_fail_closed",step:c,error:String(l).slice(0,300)})}catch{}L.delete(t);try{Qr.remove_packet(n.cid)}catch(d){w(`[${t}] quarantined-packet teardown failed:`,String(d))}throw new Error(`identity "${t}": ${c} failed during restore (${u}) \u2014 left unexposed (fail-closed)`)},a=(c,u)=>i(c,"outcome UNKNOWN (timeout): the transaction may still execute and exposure would race it",u);if(_P(e)){let c=!1;try{if(process.env.OURS_TEST_FORCE_IMPORT_TIMEOUT==="1")throw new Error("timed out waiting for the transaction result (forced by OURS_TEST_FORCE_IMPORT_TIMEOUT)");let u=T.readFileSync(en(e));await B(async l=>{let d=n.pw.packet.ParseValue(new Uint8Array(u)).Attach(l),p=Number(process.env.OURS_IMPORT_TIMEOUT_MS||"")||void 0;await Z(n,"::actor::import_state",d,l,p)}),c=!0,w(`[${t}] state import completed (positively observed)`)}catch(u){s(u)&&a("import_state",u),w(`[${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(u)),me(n,{event:"state_import_failed",error:String(u).slice(0,300)});try{let l=`${en(e)}.failed-${Date.now()}`;T.renameSync(en(e),l),T.chmodSync(l,384),w(`[${t}] unreadable state blob preserved as state_data.bin.failed-*`)}catch{}}if(c){try{let d=await B(async p=>{let f=await Z(n,"::a2a_messaging::commit_e2e_restore",{},p),m=f.Reduce("status").Visualize(),h=f.Reduce("sessions").IsNil()?"0":f.Reduce("sessions").Visualize();return{status:String(m),sessions:String(h)}});w(`[${t}] e2e restore commit: status=${d.status} sessions=${d.sessions}`)}catch(d){s(d)&&a("commit_e2e_restore",d),w(`[${t}] E2E RESTORE REJECTED \u2014 staged session blob failed pickle_key validation; discarding it, fresh account + self-heal fallback take over: ${String(d).slice(0,260)}`),me(n,{event:"e2e_restore_rejected",error:String(d).slice(0,300)});try{await B(async p=>{await Z(n,"::a2a_messaging::reject_e2e_restore",{},p)})}catch(p){s(p)&&a("reject_e2e_restore",p),w(`[${t}] reject_e2e_restore failed (staging is transient; continuing):`,String(p))}}try{n.pw.refresh_identity_proof_document(),w(`[${t}] transport IPD refreshed from post-import state`)}catch(d){i("ipd_refresh","FAILED (IPD would advertise a stale bundle)",d)}let u=!1,l="";try{if(process.env.OURS_TEST_FORCE_IPD_INCOHERENT==="1")throw new Error("forced incoherent (OURS_TEST_FORCE_IPD_INCOHERENT)");let d=He(m=>String(ke(n,"::a2a_messaging::e2e_self_fp",m).Reduce("ik").Visualize())),p=n.pw.identity_proof_document.Visualize(),f=d.replace(/^0x/i,"");u=f.length>=32&&p.toLowerCase().includes(f.toLowerCase()),l=d.slice(0,18),me(n,{event:"ipd_coherence",ik:d,coherent:u})}catch(d){i("ipd_coherence","probe FAILED (coherence unprovable)",d)}w(`[${t}] IPD/e2e coherence: account_ik=${l}\u2026 ipd_advertises_it=${u}`),u||i("ipd_coherence","IPD does NOT advertise the live account ik",new Error("incoherent transport IPD"))}}return Qr.expose_packet(n.cid),L.set(t,n),w(`[${t}] EXPOSED (routing + broker registration) \u2014 import phase complete`),await Iv(n),Xr(n),n}async function av(){is=GI();let t=["--broker_address",da,"--test_mode","--logger_config","--level","INFO","--stdout","stderr","--logger_config_end"];w(`booting wrapper (unit ${is.hash.slice(0,12)}\u2026, broker ${da})`),Qr=await DI.start(t),Qr.on_packet_created_cb=o=>w(`wrapper: packet ready ${o.slice(0,12)}\u2026`),Qr.start();let e=Number(process.env.OURS_TEST_BOOT_HOLD_MS||"")||0;e>0&&(w(`TEST HOLD: boot window open ${e}ms (OURS_TEST_BOOT_HOLD_MS)`),await new Promise(o=>setTimeout(o,e)));try{await yP()}catch(o){w("failed to start the contact-book registrar (local contact book disabled):",String(o))}KI();let r=zp();for(let o of r)mr.add(o);if(r.length===0)w("no persisted identities \u2014 start with create_identity");else{w(`restoring ${r.length} identit${r.length===1?"y":"ies"}: ${r.join(", ")}`);for(let o of r)try{let s=await OP(o);_t&&await $v(s)}catch(s){w(`failed to restore "${o}":`,String(s))}}gP(),hP(),ie=WI(),ie&&!L.has(ie)&&(w(`root marker names a missing identity "${ie}" \u2014 clearing it`),ie=null,xv()),ie&&w(`root identity: ${ie}`);{let o=ie?L.get(ie):void 0;ie&&!o&&w(`re-delegation on upgrade DEGRADED: root "${ie}" is not among the restored identities \u2014 role certs not refreshed this boot`);let s=[];if(o)for(let i of L.values()){if(i.name===o.name)continue;let a;try{a=yt(i)}catch{a=void 0}if(!(!a||!a.hasCert)){if(a.rootCid!==o.cid){w(`[${i.name}] re-delegation skipped: delegated by a different root (${a.rootCid.slice(0,12)}\u2026), not this host root \u2014 left as-is`);continue}try{await Hn(o,i),s.push(i)}catch(c){me(i,{event:"redelegation_failed",error:String(c).slice(0,300)}),w(`[${i.name}] boot re-delegation (upgrade cert refresh) failed:`,String(c))}}}for(let i of L.values()){await wp(i),await $p(i);for(let a of[1e4,3e4,9e4])setTimeout(()=>{wp(i).catch(()=>{})},a),setTimeout(()=>{$p(i).catch(()=>{})},a)}s.length>0&&w(`refreshed ${s.length} role delegation cert(s) against the live AD on boot`)}let n=ie?L.get(ie):void 0;if(n)try{ps(n).controlQueued>0&&Tp(n)}catch(o){w("boot-time monitoring/control drain failed:",String(o))}ls()}function cv(t){let e=it.get(t)?.token;if(!e)return{error:"No identity bound to this session. Call choose_identity (or create_identity) first."};if(ha.has(e))return{error:"Your identity binding was reassigned to another session. Call choose_identity again to continue."};let r=gv(e);if(!r)return{error:"No identity bound to this session. Call choose_identity (or create_identity) first."};let n=L.get(r.identity);if(!n)return Ee.delete(r.identity),ls(),{error:`The bound identity "${r.identity}" no longer exists. Choose another with choose_identity.`};r.sid=t;let o=it.get(t)?.pid;return o&&(r.pid=o),{id:n}}function ca(t,e){let r=it.get(t),n=r?.token;if(!n)return;for(let[s,i]of[...Ee])i.token===n&&s!==e&&Ee.delete(s);let o=Ee.get(e)?.epoch??0;Ee.set(e,{identity:e,token:n,pid:r?.pid??0,sid:t,epoch:o+1,boundAt:Date.now()}),ha.delete(n),ls()}function NP(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 la(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 AP(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):
|
|
61
61
|
${e.join(`
|
|
62
|
-
`)}`}async function
|
|
62
|
+
`)}`}async function CP(t,e){if(e.IsNil())return"No new files.";let r=JI(t),n=[];for(let o=0;;o++){let s=e.Reduce(o);if(s.IsNil())break;n.length===0&&await MI(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=Re(r,`${u}-${Y_(i)}`);await qI(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):
|
|
63
63
|
${n.join(`
|
|
64
|
-
`)}`}function
|
|
64
|
+
`)}`}function jP(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 ZP(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 MP(t){if(!t)return"";let e=t.root_name||t.root_cid;return t.role_id?` [role "${t.role_id}" of ${e}]`:` [root identity of ${e}]`}function S(t,e=!1){return{content:[{type:"text",text:t}],isError:e}}function Ov(t){return CI(t).toString("base64url")}function qP(t){return jI(Buffer.from(t.replace(/\s+/g,""),"base64url"))}var DP=new Set(["members","caps"]);function VP(t){try{let e=t.GetNumber();return Number.isInteger(e)?e:NaN}catch{return NaN}}function us(t,e){if(t.IsNil())return null;let r;try{r=t.GetKeys()}catch{try{return Ov(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(VP).every((i,a)=>i===a))return r.map((i,a)=>us(t.Reduce(a)));let s={};for(let i of r)s[i.Visualize()]=us(t.Reduce(i),i.Visualize());return s}return e!==void 0&&DP.has(e)?[]:{}}function uv(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 lv(t){let e=new Qi({name:"ours",version:ss},{capabilities:{logging:{},resources:{}}}),r=()=>{let s=cv(t());return"error"in s?{err:S(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:F.string().min(1).describe('Display name for the new identity, e.g. "Alice".'),bio:F.string().default("").describe("Optional free-text bio for the identity profile."),expose_local:F.boolean().default(!0).describe("Publish this identity in the host-local contact book."),local_auto_accept:F.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=fa(s);if(u)return S(`create_identity failed: ${u}`,!0);if(L.has(s))return S(`create_identity failed: an identity named "${s}" already exists.`,!0);try{let l=await xp(s,{exposeLocal:a,localAutoAccept:c});i&&await B(async h=>{await Z(l,"::a2a_messaging::set_my_bio",{bio:i},h)});let d="",p=ie?L.get(ie):void 0;if(p)await Hn(p,l),d=` Delegated as a role under root "${p.name}".`,Rp&&Tv(p);else{let{adopted:h}=await sv(l);d=" No host root existed yet, so this identity is now the host ROOT (the person behind all roles); create more with create_identity and they become roles under it."+(h.length?` Adopted ${h.length} pre-existing identit${h.length===1?"y":"ies"} as role(s): ${h.join(", ")}.`:"")}ca(t(),s);let f=a?` Published to the local contact book${c?"":" (introductions require approval)"}.`:" Not exposed in the local contact book.",m=`
|
|
65
65
|
|
|
66
|
-
Ask the user whether to enable this harness's live mail monitor for "${s}". Never enable monitoring without explicit consent.`;return
|
|
66
|
+
Ask the user whether to enable this harness's live mail monitor for "${s}". Never enable monitoring without explicit consent.`;return S(`Created identity "${s}" (${l.cid}) and bound it to this session.${d}${f}${m}`)}catch(l){return S(`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). Single-root policy: exactly one root per host. If a root already exists, the named identity is instead created as a ROLE under it (no second root; no error). When establishing the root, every pre-existing identity is adopted as a role (each receives a delegation certificate). The root is directly messageable like any identity.",{name:F.string().min(1).describe(`The person's name, e.g. "Vitalii Shakhmatov".`),bio:F.string().default("").describe("Free-text bio describing the person (carried in role invites)."),expose_local:F.boolean().default(!0).describe("Publish the root in the host-local contact book."),local_auto_accept:F.boolean().default(!0).describe("Auto-accept local contact-book introductions (false = they queue for approval)."),skip_if_root_exists:F.boolean().default(!1).describe('Installer seam: if a root already exists, do NOTHING (fail with "a root identity already exists") instead of adopting the name as a role. The ours-mcp create-root CLI sets this so re-runs stay idempotent; leave false for the interactive tool.')},async({name:s,bio:i,expose_local:a,local_auto_accept:c,skip_if_root_exists:u})=>{let l=fa(s);if(l)return S(`create_root_identity failed: ${l}`,!0);if(u&&ie&&L.has(ie))return S(`create_root_identity failed: a root identity already exists ("${ie}") \u2014 one root per host. Nothing to do.`,!0);if(L.has(s))return S(`create_root_identity failed: an identity named "${s}" already exists.`,!0);let d=`
|
|
67
67
|
|
|
68
|
-
Ask the user whether to enable this harness's live mail monitor for "${s}". Never enable monitoring without explicit consent.`;try{let p=await
|
|
69
|
-
${f}`)}catch(p){return
|
|
68
|
+
Ask the user whether to enable this harness's live mail monitor for "${s}". Never enable monitoring without explicit consent.`;try{let p=await xp(s,{exposeLocal:a,localAutoAccept:c});i&&await B(async y=>{await Z(p,"::a2a_messaging::set_my_bio",{bio:i},y)});let f=ie?L.get(ie):void 0;if(f&&f.name!==s)return await Hn(f,p),ca(t(),s),S(`A host root already exists ("${f.name}") \u2014 one root per host, so "${s}" (${p.cid}) was created as a ROLE under it instead and bound to this session.${d}`);let{adopted:m,failed:h}=await sv(p);ca(t(),s);let g=m.length>0?` Adopted ${m.length} existing identit${m.length===1?"y":"ies"} as role(s): ${m.join(", ")}.`:"",v=h.length>0?` FAILED to adopt: ${h.join(", ")} (see daemon log).`:"";return S(`Created root identity "${s}" (${p.cid}) and bound it to this session.${g}${v}${d}`)}catch(p){return S(`create_root_identity failed: ${String(p)}`,!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:F.string().min(1).describe("Identity name the workspace belongs to."),path:F.string().min(1).describe("Absolute target: a directory (file is created inside it) or a full path ending in .ours-identity."),force:F.boolean().default(!1).describe("Once the user approves binding, eviction of another holder is pre-approved (no second confirmation)."),expose_local:F.boolean().default(!0).describe("Publish this identity in the host-local contact book."),local_auto_accept:F.boolean().default(!0).describe("Auto-accept local contact-book introductions (false = they queue for approval)."),overwrite:F.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(!EI(i))return S(`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=K_(i,d,l),f=JSON.stringify(ip(d),null,2);return S(`Wrote ${p}:
|
|
69
|
+
${f}`)}catch(p){return S(`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:F.string().min(1).describe("Name of the identity to bind."),force:F.boolean().default(!1).describe("Evict another session that holds this identity.")},async({name:s,force:i})=>{if(!L.has(s))return S(`choose_identity failed: no identity named "${s}". Create it with create_identity.`,!0);let a=t(),c=it.get(a)?.token;if(!c)return S("choose_identity failed: this client is not connected through the ours connector (no lease token header). Launch ours via the connector (`ours-mcp proxy`).",!0);let u=Ee.get(s);if(u&&u.token!==c)if(!mp(u.pid))w(`auto-reclaiming "${s}" from dead client pid ${u.pid}`),Ee.delete(s);else if(i)ha.add(u.token),Ee.delete(s);else return S(`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=[...Ee.values()].find(m=>m.token===c&&m.identity!==s)?.identity,d=l&&L.has(l);ca(a,s);let p=L.get(s),f=`Bound to identity "${s}" (${p.cid}).`;return d&&(f+=`
|
|
70
70
|
|
|
71
71
|
Switched away from "${l}" \u2014 disable any live monitor previously armed for it.`),f+=`
|
|
72
72
|
|
|
73
|
-
Ask the user whether to enable this harness's live mail monitor for "${s}". Never enable monitoring without explicit consent.`,
|
|
73
|
+
Ask the user whether to enable this harness's live mail monitor for "${s}". Never enable monitoring without explicit consent.`,S(f)}),e.tool("list_identities","List all identities hosted by this node (name + container id) as a hierarchy \u2014 the root identity first with its roles indented under it \u2014 marking which one is bound to this session and which are in use elsewhere.",{},async()=>{if(L.size===0)return S("No identities yet. Create a root with create_root_identity (or a flat identity with create_identity).");let s=t(),i=it.get(s)?.token,a=l=>{let d=Ee.get(l);return d?d.token===i?" \u2190 this session":mp(d.pid)?" (in use by another session)":"":""},c=ie?L.get(ie):void 0,u=[];if(c){u.push(`\u2605 ${c.name} \u2014 ${c.cid} (root)${a(c.name)}`);for(let l of L.values())l.name!==c.name&&yt(l).roleId!==""&&u.push(` \u2514 ${l.name} \u2014 ${l.cid} (role)${a(l.name)}`);for(let l of L.values())l.name===c.name||yt(l).roleId!==""||u.push(`\u2022 ${l.name} \u2014 ${l.cid} (flat, no delegation)${a(l.name)}`)}else{for(let l of L.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 S(`Identities (${L.size}):
|
|
74
74
|
${u.join(`
|
|
75
|
-
`)}`)}),e.tool("current_identity","Report the identity currently bound to this session (if any), including its place in the identity hierarchy.",{},async()=>{let s=
|
|
75
|
+
`)}`)}),e.tool("current_identity","Report the identity currently bound to this session (if any), including its place in the identity hierarchy.",{},async()=>{let s=cv(t());if("error"in s)return S(s.error);try{let i=yt(s.id),a=s.id.name===ie?" \u2014 the ROOT identity of this host":i.roleId!==""?` \u2014 role "${i.roleId}" under root "${i.rootName}"`:"",c=i.bio?`
|
|
76
76
|
Bio: ${i.bio}`:"",u=i.persona?`
|
|
77
|
-
Persona: ${i.persona}`:"";return
|
|
78
|
-
${c.map(l=>
|
|
79
|
-
`)}`;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:
|
|
77
|
+
Persona: ${i.persona}`:"";return S(`Bound to "${s.id.name}" (${s.id.cid})${a}.${c}${u}`)}catch{return S(`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:F.string().min(1).describe("Name of the identity to delete.")},async({name:s})=>{let i=L.get(s);if(!i)return S(`remove_identity failed: no identity named "${s}".`,!0);if(s===ie){let c=[...L.values()].filter(u=>u.name!==s&&yt(u).rootCid===i.cid);if(c.length>0)return S(`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=Sv(i);return a?S(`Identity "${s}" removed from memory, but ${a}`,!0):S(`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?Pv(s.name):"ours://inbox";if(i||!s)return{contents:[{uri:a,mimeType:"text/plain",text:"No identity bound to this session."}]};let c=He(l=>la(ke(s,"::actor::list_incoming_messages",l))),u=c.length===0?"Inbox is empty.":`Inbox (${c.length}):
|
|
78
|
+
${c.map(l=>uv(l)).join(`
|
|
79
|
+
`)}`;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:F.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 B(async d=>{let p=await Z(i,"::a2a_messaging::generate_invite",c,d);return Ov(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 S(`${l} Share this blob out-of-band (they paste it into add_contact):
|
|
80
80
|
|
|
81
|
-
${u}`)}catch(c){return
|
|
82
|
-
${a.map(f=>`\u2022 ${f.name} \u2014 ${f.container_id}${
|
|
81
|
+
${u}`)}catch(c){return S(`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:F.string().min(1).describe("The base64 invite blob to redeem."),name:F.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=qP(s),u.length===0)throw new Error("the invite blob is empty")}catch(l){return S(`add_contact failed: ${l instanceof Error?l.message:"the invite blob is not valid."}`,!0)}try{let l=await B(async d=>{let f={invite:a.pw.packet.NewBinaryFromBuffer(u).Attach(d)};i&&(f.name=i);let m=await Z(a,"::a2a_messaging::add_contact",f,d),h=m.Reduce("container_id").Visualize(),g=m.Reduce("pending").Visualize(),v=m.Reduce("inviter_name").Visualize(),y=z=>!z||z==="%%NIL";return`Added contact "${y(g)?y(v)?h:v:g}" (${h}).`});return S(l)}catch(l){return S(`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}=He(f=>({contacts:NP(ke(s,"::a2a_messaging::list_contacts",f)),pending:jP(ke(s,"::actor::list_pending_introductions",f)),roots:ZP(ke(s,"::a2a_messaging::list_contact_roots",f)),degraded:vP(ke(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}):
|
|
82
|
+
${a.map(f=>`\u2022 ${f.name} \u2014 ${f.container_id}${MP(u[f.container_id])}${d.has(f.container_id)?` \u2014 \u26A0 keys pending restore (${d.get(f.container_id).queued} queued)`:""}`).join(`
|
|
83
83
|
`)}`),c.length>0&&p.push(`Pending local introductions (${c.length}) \u2014 approve/reject with respond_to_introduction:
|
|
84
84
|
`+c.map(f=>`\u2022 ${f.name} \u2014 ${f.container_id} (${f.queued} queued message${f.queued===1?"":"s"})`).join(`
|
|
85
|
-
`)),
|
|
85
|
+
`)),S(p.join(`
|
|
86
86
|
|
|
87
|
-
`))}catch(a){return
|
|
87
|
+
`))}catch(a){return S(`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(ga());if(s.length===0)return S("The local contact book is empty.");let i=t(),a=it.get(i)?.token,c=a?gv(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 S(`Local contact book (${s.length}):
|
|
88
88
|
${u.join(`
|
|
89
|
-
`)}`)}),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 Y(async l=>{await V(a,"::actor::set_local_policy",{auto_accept:i},l)}),u.push(`auto_accept=${i}`)),s===!0?(await gv(a),u.push("published in the local contact book")):s===!1&&(yv(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 Y(async l=>{await V(i,"::a2a_messaging::set_my_bio",{bio:s},l)});let c=0;if(i.name===ie){for(let l of F.values())if(l.name!==i.name&>(l).rootCid===i.cid)try{await Fn(i,l),c+=1}catch(d){S(`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 Y(async d=>{let p=await V(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 Y(async c=>{await V(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 Y(async d=>{let p=await V(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 Y(async l=>{let d=await V(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 Y(async f=>n(await V(u,"::a2a_messaging::send_message",{contact:s,text:i,...d?{reply_to:d}:{}},f)));switch(p.kind){case"refused":return S(`[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 S(`[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 S(`[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=JE(u,s),m=f?await GE(u,f,i):await KE(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 OE(i),h=c??SE(i);else{if(!c)return k("send_file: `filename` is required with `data_base64`.",!0);m=Buffer.from(a,"base64"),h=c}}catch(_){return k(`send_file: cannot read file: ${String(_)}`,!0)}let g=u??(i?H_(i):""),v=l?d!==void 0?{wire_id:l,sentence:d}:{wire_id:l}:void 0;try{let _=await Y(async z=>{let Z=p.pw.packet.NewBinaryFromBuffer(m).Attach(z);return n(await V(p,"::a2a_messaging::send_file",{contact:s,filename:h,mime:g,data:Z,...v?{reply_to:v}:{}},z))}),w=`File "${h}" (${m.length} B${g?`, ${g}`:""})`;switch(_.kind){case"refused":return S(`[e2e-route] refused cid=${_.cid} wire_id=${_.wireId} (downgrade_refused, file)`),k(`Couldn't send ${w} to "${s}" (wire_id ${_.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 S(`[migration] file-defer cid=${_.cid} wire_id=${_.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 S(`[e2e-route] cid=${_.cid} wire_id=${_.wireId} verdict=e2e file (core delivered over migrated session)`),k(`${w} sent to "${s}" over the upgraded end-to-end session (wire_id ${_.wireId}).`);default:return k(`${w} sent to "${s}" (wire_id ${_.wireId}).`)}}catch(_){return k(`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: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 Y(async u=>{let l=await V(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=>ca(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):
|
|
90
|
-
${a.map(u=>
|
|
91
|
-
`)}`)}catch(a){return
|
|
89
|
+
`)}`)}),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:F.boolean().optional().describe("Publish (true) or remove (false) this identity in the local contact book."),auto_accept:F.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 S("set_local_book_policy: pass expose and/or auto_accept.",!0);let u=[];try{return i!==void 0&&(await B(async l=>{await Z(a,"::actor::set_local_policy",{auto_accept:i},l)}),u.push(`auto_accept=${i}`)),s===!0?(await bv(a),u.push("published in the local contact book")):s===!1&&(wv(a.name),u.push("removed from the local contact book")),S(`Updated "${a.name}": ${u.join("; ")}.`)}catch(l){return S(`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:F.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 B(async l=>{await Z(i,"::a2a_messaging::set_my_bio",{bio:s},l)});let c=0;if(i.name===ie){for(let l of L.values())if(l.name!==i.name&&yt(l).rootCid===i.cid)try{await Hn(i,l),c+=1}catch(d){w(`failed to refresh root profile in role "${l.name}":`,String(d))}}let u=c>0?` Root profile refreshed in ${c} role(s).`:"";return S(`Updated the bio of "${i.name}".${u}`)}catch(c){return S(`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 B(async d=>{let p=await Z(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 S(`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 S(`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:F.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 B(async c=>{await Z(i,"::a2a_messaging::set_my_persona",{persona:s},c)}),S(`Updated the persona of "${i.name}".`)}catch(c){return S(`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:F.string().min(1).describe("Pending introduction to act on (name or container id)."),action:F.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 B(async d=>{let p=await Z(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 Xr(a),S(l)}let u=await B(async l=>{let d=await Z(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 S(u)}catch(u){return S(`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():"";if(i("downgrade_refused"))return{kind:"refused",wireId:a,cid:c};if(i("migrating"))return{kind:"migrating",wireId:a,cid:c,queued:i("queued")?Number(s.Reduce("queued").Visualize()):0};if(i("route")){let u=i("retained")&&!s.Reduce("retained").GetBoolean();return{kind:"e2e",wireId:a,cid:c,notRetained:u}}return 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:F.string().min(1).describe("Contact name or container id to send to."),text:F.string().min(1).describe("The message text."),reply_to_wire_id:F.string().optional().describe("wire_id (from get_messages) of the message this replies to."),reply_to_sentence:F.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 B(async f=>n(await Z(u,"::a2a_messaging::send_message",{contact:s,text:i,...d?{reply_to:d}:{}},f)));switch(p.kind){case"refused":return w(`[e2e-route] refused cid=${p.cid} wire_id=${p.wireId} (downgrade_refused)`),S(`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 w(`[migration] queued cid=${p.cid} wire_id=${p.wireId} (migrating, ${p.queued} queued)`),S(`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 w(`[e2e-route] cid=${p.cid} wire_id=${p.wireId} verdict=e2e (core delivered over migrated session)${p.notRetained?" NOT RETAINED (oversized)":""}`),p.notRetained?(me(u,{event:"send_not_retained",wire_id:p.wireId,kind:"message"}),S(`Message sent to "${s}" over the end-to-end session (wire_id ${p.wireId}) \u2014 WARNING: the message body exceeds the redrive budget, so it is NOT retained for automatic resend. If the recipient loses its session, this message will NOT re-deliver automatically \u2014 confirm receipt or resend once the contact is confirmed back.`)):S(`Message sent to "${s}" over the upgraded end-to-end session (wire_id ${p.wireId}).`);case"deferred":return S(`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 S(`Message sent to "${s}" (wire_id ${p.wireId}).`)}}catch(p){if(!/Unknown contact/.test(String(p)))return S(`send_message failed: ${String(p)}`,!0);try{let f=XI(u,s),m=f?await QI(u,f,i):await eP(u,s,i);return S(m)}catch(f){return S(`send_message failed: ${String(f)}`,!0)}}}),e.tool("send_file","Send a file to a known contact (by name or container id). Provide EITHER `path` (the server reads the file from disk) OR `data_base64` + `filename` (inline bytes). Files and text are distinct messages \u2014 to caption a file, also send_message. Requires a bound identity.",{contact:F.string().min(1).describe("Contact name or container id to send to."),path:F.string().min(1).optional().describe("Filesystem path to the file to send (preferred)."),data_base64:F.string().min(1).optional().describe("Inline file bytes, base64-encoded (alternative to path)."),filename:F.string().min(1).optional().describe("Filename to advertise (required with data_base64; defaults to basename of path)."),mime:F.string().optional().describe("MIME type (inferred from the path extension when omitted)."),reply_to_wire_id:F.string().optional().describe("wire_id (from get_messages/get_files) this file replies to."),reply_to_sentence:F.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 S("send_file: provide exactly one of `path` or `data_base64`.",!0);let m,h;try{if(i)m=await ZI(i),h=c??II(i);else{if(!c)return S("send_file: `filename` is required with `data_base64`.",!0);m=Buffer.from(a,"base64"),h=c}}catch(y){return S(`send_file: cannot read file: ${String(y)}`,!0)}let g=u??(i?W_(i):""),v=l?d!==void 0?{wire_id:l,sentence:d}:{wire_id:l}:void 0;try{let y=await B(async z=>{let M=p.pw.packet.NewBinaryFromBuffer(m).Attach(z);return n(await Z(p,"::a2a_messaging::send_file",{contact:s,filename:h,mime:g,data:M,...v?{reply_to:v}:{}},z))}),$=`File "${h}" (${m.length} B${g?`, ${g}`:""})`;switch(y.kind){case"refused":return w(`[e2e-route] refused cid=${y.cid} wire_id=${y.wireId} (downgrade_refused, file)`),S(`Couldn't send ${$} to "${s}" (wire_id ${y.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 w(`[migration] file-defer cid=${y.cid} wire_id=${y.wireId} (migrating, not queued)`),S(`${$} 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 w(`[e2e-route] cid=${y.cid} wire_id=${y.wireId} verdict=e2e file (core delivered over migrated session)${y.notRetained?" NOT RETAINED (oversized)":""}`),y.notRetained?(me(p,{event:"send_not_retained",wire_id:y.wireId,kind:"file"}),S(`${$} sent to "${s}" over the end-to-end session (wire_id ${y.wireId}) \u2014 WARNING: the file exceeds the 2 MiB redrive budget, so it is NOT retained for automatic resend. If the recipient loses its session (e.g. it was mid-restart), this file will NOT re-deliver automatically \u2014 confirm receipt or resend it once the contact is confirmed back.`)):S(`${$} sent to "${s}" over the upgraded end-to-end session (wire_id ${y.wireId}).`);default:return S(`${$} sent to "${s}" (wire_id ${y.wireId}).`)}}catch(y){return S(`send_file failed: ${String(y)}`,!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:F.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 B(async u=>{let l=await Z(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 S(c)}catch(c){return S(`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=He(u=>la(ke(s,"::actor::list_incoming_messages",u)));if(a.length===0)return S("Inbox is empty.");let c=a.filter(u=>u.status==="unread").length;return S(`Inbox (${a.length}, ${c} unread):
|
|
90
|
+
${a.map(u=>uv(u)).join(`
|
|
91
|
+
`)}`)}catch(a){return S(`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. Returns ALWAYS-JSON: { count, messages: [{ msg_id, wire_id, from:{id,name}, encryption ("legacy" for a legacy box | "e2e" for the double-ratchet path), transport, text, date, status, reply_to }] } \u2014 so you can tell HOW each message arrived (ask the agent "how did you receive this"). Pass a message's wire_id as reply_to_wire_id in send_message to reply to it specifically.`,{},async()=>{let{id:s,err:i}=r();if(i)return i;try{let a=await B(async l=>{let d=await Z(s,"::actor::get_messages",{},l);return la(d.Reduce("messages"))});Xr(s);let c=xP(s),u=Q_(a,c);return S(JSON.stringify(u,null,2))}catch(a){return S(`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:F.array(F.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 B(async u=>(await Z(i,"::actor::defer_messages",{msg_ids:s},u)).Reduce("deferred").Visualize());return Xr(i),S(`Deferred ${c} message(s) back to unread.`)}catch(c){return S(`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=He(c=>AP(ke(s,"::actor::list_incoming_files",c)));return S(a)}catch(a){return S(`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 B(async c=>{let u=await Z(s,"::actor::get_files",{},c);return await CP(s,u.Reduce("files"))});return Xr(s),S(a)}catch(a){return S(`get_files failed: ${String(a)}`,!0)}});let o=()=>{let s=ie?L.get(ie):void 0;return s?{root:s}:{err:S("No root identity exists on this host \u2014 create one with create_root_identity first.",!0)}};return e.tool("bind_monitoring_proxy","Start binding a browser (messenger) account as this host's monitoring & control proxy. PREREQUISITE: the browser account must already be a contact of the ROOT identity (invite exchange). This generates a 6-digit code (5-minute expiry, 3 attempts) bound to that contact and shows it HERE \u2014 read it to the user, who enters it in the messenger's Control Panel. On a successful code verification the contact becomes the monitoring proxy: it receives the monitoring feed and may manage agents (create, edit bios, toggle monitoring, request invites) through the root.",{contact:F.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(mv(0,1e6)).padStart(6,"0"),u=await B(async l=>(await Z(i,"::a2a_messaging::set_proxy_pending",{code:c,proxy:s},l)).Reduce("proxy_cid").Visualize());return S(`Proxy binding started for contact "${s}" (${u}).
|
|
92
92
|
|
|
93
93
|
Verification code: ${c}
|
|
94
94
|
|
|
95
|
-
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
|
|
95
|
+
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 S(`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=ps(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=rP(s);return c.push(""),c.push(u.length===0?"No agents (roles) under this root.":`Agents (${u.length}):
|
|
96
96
|
${u.map(l=>`\u2022 ${l.name} \u2014 monitoring ${l.monitoring?"ON":"off"}${l.bio?` \u2014 ${l.bio}`:""}`).join(`
|
|
97
|
-
`)}`),
|
|
98
|
-
`))}catch(a){return
|
|
97
|
+
`)}`),S(c.join(`
|
|
98
|
+
`))}catch(a){return S(`get_monitoring_status failed: ${String(a)}`,!0)}}),e}function LP(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 Gn=null,dp=!1;function dv(){Gn||(Gn=setInterval(()=>{dp||(dp=!0,(async()=>{try{for(let t of L.values()){try{await B(async e=>{await Z(t,"::actor::gc",{},e)})}catch(e){w(`gc(${t.name}) failed:`,String(e))}await Iv(t),await wp(t),await $p(t)}}finally{dp=!1}})())},tv),Gn.unref?.(),w(`message GC timer armed (every ${tv}ms)`))}function pv(){Gn&&(clearInterval(Gn),Gn=null)}async function UP(){if(LI==="stdio"){let u=lv(()=>"stdio");Yr.set("stdio",u),it.set("stdio",{token:"stdio-local",pid:process.pid});let l=new ta;await u.connect(l),w("MCP stdio transport connected, booting wrapper\u2026"),await av(),dv(),w(`MCP server v${ss} ready (transport=stdio, identities=${L.size}, state=${je}, broker=${da})`);let d=()=>{pv();for(let p of L.values())try{bp(p)}catch(f){w(`[${p.name}] shutdown save failed:`,String(f))}process.exit(0)};process.on("SIGINT",d),process.on("SIGTERM",d);return}w("booting wrapper\u2026"),await av(),dv(),w(`wrapper ready (identities=${L.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[...Yr.keys()]){if(l==="stdio")continue;let d=it.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=Yr.get(l);Yr.delete(l),delete t[l],it.delete(l),e.delete(l),f?.close().catch(()=>{}),u++,w(`session ${l.slice(0,8)}\u2026 reaped (client pid ${d} dead)`)}return u};setInterval(s,6e4).unref?.();let a=AI(async(u,l)=>{let d=new URL(u.url,`http://localhost:${ap}`);if(u.method==="GET"&&d.pathname==="/state-dir"){l.writeHead(200,{"Content-Type":"application/json"}),l.end(JSON.stringify({stateDir:je,version:ss,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:ss,compat:1,protocol:zv,pid:process.pid,stateDir:je}));return}if(u.method==="GET"&&d.pathname==="/identities"){if(!aa(u,l))return;l.writeHead(200,{"Content-Type":"application/json"}),l.end(JSON.stringify({identities:[...L.values()].map(p=>({name:p.name}))}));return}if(u.method==="GET"&&d.pathname==="/unread"){if(!aa(u,l))return;l.writeHead(200,{"Content-Type":"application/json"}),l.end(JSON.stringify(TP()));return}{let p=/^\/identities\/([^/]+)\/notifications$/.exec(d.pathname);if(u.method==="GET"&&p){if(!aa(u,l))return;let f=decodeURIComponent(p[1]);if(fa(f)!==null){l.writeHead(400,{"Content-Type":"application/json"}),l.end(JSON.stringify({error:"invalid identity name"}));return}await RP(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(aa(u,l))try{if(u.method==="POST"){let p=await LP(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,v={token:m,pid:Number.isInteger(g)?g:void 0};if(f&&t[f]){it.set(f,v),n(f);try{await t[f].handleRequest(u,l,p)}finally{o(f)}}else if(!f&&yo(p)){s();let y=new sa({sessionIdGenerator:()=>OI(),onsessioninitialized:z=>{t[z]=y,it.set(z,v),Yr.set(z,$),w(`session ${z.slice(0,8)}\u2026 initialized`)}}),$=lv(()=>y.sessionId??"pending");y.onclose=()=>{let z=y.sessionId;z&&(delete t[z],Yr.delete(z),it.delete(z),w(`session ${z.slice(0,8)}\u2026 closed (lease kept)`))},await $.connect(y),await y.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=it.get(p)?.token??u.headers["x-ours-lease-token"];if(f){for(let[m,h]of[...Ee])h.token===f&&Ee.delete(m);ha.delete(f),ls(),w(`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){w("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(ap,"127.0.0.1",()=>{w(`MCP server v${ss} ready (transport=http, port=${ap}, visibility=${pp}, identities=${L.size}, state=${je}, broker=${da})`)});let c=async()=>{w("shutting down\u2026"),pv();for(let u of Object.keys(t)){try{await t[u].close()}catch{}delete t[u]}for(let u of L.values())try{bp(u)}catch(l){w(`[${u.name}] shutdown save failed:`,String(l))}a.close(),process.exit(0)};process.on("SIGINT",c),process.on("SIGTERM",c)}UP().catch(t=>{w(`fatal startup error: ${t?.stack??t}`),process.exit(1)});export{zI as formatVersionAdvisory,fa as validateName};
|