@linzumi/cli 1.0.48 → 1.0.50
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/README.md +1 -1
- package/dist/cloud-supervisor.mjs +8 -8
- package/dist/index.js +374 -364
- package/dist/mcp-server.mjs +48 -39
- package/package.json +1 -1
package/dist/mcp-server.mjs
CHANGED
|
@@ -1,57 +1,54 @@
|
|
|
1
1
|
import { createRequire } from 'node:module';
|
|
2
2
|
const require = createRequire(import.meta.url);
|
|
3
|
-
var My=Object.create;var va=Object.defineProperty;var Zy=Object.getOwnPropertyDescriptor;var Ly=Object.getOwnPropertyNames;var qy=Object.getPrototypeOf,Dy=Object.prototype.hasOwnProperty;var z=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),wa=(t,e)=>{for(var r in e)va(t,r,{get:e[r],enumerable:!0})},Uy=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Ly(e))!Dy.call(t,o)&&o!==r&&va(t,o,{get:()=>e[o],enumerable:!(n=Zy(e,o))||n.enumerable});return t};var md=(t,e,r)=>(r=t!=null?My(qy(t)):{},Uy(e||!t||!t.__esModule?va(r,"default",{value:t,enumerable:!0}):r,t));var Gn=z(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});Q.regexpCode=Q.getEsmExportName=Q.getProperty=Q.safeStringify=Q.stringify=Q.strConcat=Q.addCodeArg=Q.str=Q._=Q.nil=Q._Code=Q.Name=Q.IDENTIFIER=Q._CodeOrName=void 0;var Wn=class{};Q._CodeOrName=Wn;Q.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Sr=class extends Wn{constructor(e){if(super(),!Q.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}}};Q.Name=Sr;var et=class extends Wn{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 Sr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};Q._Code=et;Q.nil=new et("");function lf(t,...e){let r=[t[0]],n=0;for(;n<e.length;)nu(r,e[n]),r.push(t[++n]);return new et(r)}Q._=lf;var ru=new et("+");function df(t,...e){let r=[Kn(t[0])],n=0;for(;n<e.length;)r.push(ru),nu(r,e[n]),r.push(ru,Kn(t[++n]));return qk(r),new et(r)}Q.str=df;function nu(t,e){e instanceof et?t.push(...e._items):e instanceof Sr?t.push(e):t.push(Jk(e))}Q.addCodeArg=nu;function qk(t){let e=1;for(;e<t.length-1;){if(t[e]===ru){let r=Dk(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function Dk(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Sr||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 Sr))return`"${t}${e.slice(1)}`}function Uk(t,e){return e.emptyStr()?t:t.emptyStr()?e:df`${t}${e}`}Q.strConcat=Uk;function Jk(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Kn(Array.isArray(t)?t.join(","):t)}function Fk(t){return new et(Kn(t))}Q.stringify=Fk;function Kn(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Q.safeStringify=Kn;function Vk(t){return typeof t=="string"&&Q.IDENTIFIER.test(t)?new et(`.${t}`):lf`[${t}]`}Q.getProperty=Vk;function Hk(t){if(typeof t=="string"&&Q.IDENTIFIER.test(t))return new et(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Q.getEsmExportName=Hk;function Bk(t){return new et(t.toString())}Q.regexpCode=Bk});var au=z(Ue=>{"use strict";Object.defineProperty(Ue,"__esModule",{value:!0});Ue.ValueScope=Ue.ValueScopeName=Ue.Scope=Ue.varKinds=Ue.UsedValueState=void 0;var De=Gn(),ou=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},zs;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(zs||(Ue.UsedValueState=zs={}));Ue.varKinds={const:new De.Name("const"),let:new De.Name("let"),var:new De.Name("var")};var Ts=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof De.Name?e:this.name(e)}name(e){return new De.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}}};Ue.Scope=Ts;var Ps=class extends De.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,De._)`.${new De.Name(r)}[${n}]`}};Ue.ValueScopeName=Ps;var Wk=(0,De._)`\n`,su=class extends Ts{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?Wk:De.nil}}get(){return this._scope}name(e){return new Ps(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,a=(n=r.key)!==null&&n!==void 0?n:r.ref,i=this._values[s];if(i){let c=i.get(a);if(c)return c}else i=this._values[s]=new Map;i.set(a,o);let u=this._scope[s]||(this._scope[s]=[]),l=u.length;return u[l]=r.ref,o.setValue(r,{property:s,itemIndex:l}),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,De._)`${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=De.nil;for(let a in e){let i=e[a];if(!i)continue;let u=n[a]=n[a]||new Map;i.forEach(l=>{if(u.has(l))return;u.set(l,zs.Started);let c=r(l);if(c){let d=this.opts.es5?Ue.varKinds.var:Ue.varKinds.const;s=(0,De._)`${s}${d} ${l} = ${c};${this.opts._n}`}else if(c=o?.(l))s=(0,De._)`${s}${c}${this.opts._n}`;else throw new ou(l);u.set(l,zs.Completed)})}return s}};Ue.ValueScope=su});var F=z(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.or=V.and=V.not=V.CodeGen=V.operators=V.varKinds=V.ValueScopeName=V.ValueScope=V.Scope=V.Name=V.regexpCode=V.stringify=V.getProperty=V.nil=V.strConcat=V.str=V._=void 0;var X=Gn(),ct=au(),Ht=Gn();Object.defineProperty(V,"_",{enumerable:!0,get:function(){return Ht._}});Object.defineProperty(V,"str",{enumerable:!0,get:function(){return Ht.str}});Object.defineProperty(V,"strConcat",{enumerable:!0,get:function(){return Ht.strConcat}});Object.defineProperty(V,"nil",{enumerable:!0,get:function(){return Ht.nil}});Object.defineProperty(V,"getProperty",{enumerable:!0,get:function(){return Ht.getProperty}});Object.defineProperty(V,"stringify",{enumerable:!0,get:function(){return Ht.stringify}});Object.defineProperty(V,"regexpCode",{enumerable:!0,get:function(){return Ht.regexpCode}});Object.defineProperty(V,"Name",{enumerable:!0,get:function(){return Ht.Name}});var Es=au();Object.defineProperty(V,"Scope",{enumerable:!0,get:function(){return Es.Scope}});Object.defineProperty(V,"ValueScope",{enumerable:!0,get:function(){return Es.ValueScope}});Object.defineProperty(V,"ValueScopeName",{enumerable:!0,get:function(){return Es.ValueScopeName}});Object.defineProperty(V,"varKinds",{enumerable:!0,get:function(){return Es.varKinds}});V.operators={GT:new X._Code(">"),GTE:new X._Code(">="),LT:new X._Code("<"),LTE:new X._Code("<="),EQ:new X._Code("==="),NEQ:new X._Code("!=="),NOT:new X._Code("!"),OR:new X._Code("||"),AND:new X._Code("&&"),ADD:new X._Code("+")};var Ot=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},iu=class extends Ot{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?ct.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=nn(this.rhs,e,r)),this}get names(){return this.rhs instanceof X._CodeOrName?this.rhs.names:{}}},js=class extends Ot{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 X.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=nn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof X.Name?{}:{...this.lhs.names};return Os(e,this.rhs)}},cu=class extends js{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},uu=class extends Ot{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},lu=class extends Ot{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},du=class extends Ot{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},pu=class extends Ot{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=nn(this.code,e,r),this}get names(){return this.code instanceof X._CodeOrName?this.code.names:{}}},Xn=class extends Ot{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)||(Kk(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Pr(e,r.names),{})}},Et=class extends Xn{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},mu=class extends Xn{},rn=class extends Et{};rn.kind="else";var zr=class t extends Et{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 rn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(pf(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=nn(this.condition,e,r),this}get names(){let e=super.names;return Os(e,this.condition),this.else&&Pr(e,this.else.names),e}};zr.kind="if";var Tr=class extends Et{};Tr.kind="for";var fu=class extends Tr{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=nn(this.iteration,e,r),this}get names(){return Pr(super.names,this.iteration.names)}},hu=class extends Tr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?ct.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=Os(super.names,this.from);return Os(e,this.to)}},Rs=class extends Tr{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=nn(this.iterable,e,r),this}get names(){return Pr(super.names,this.iterable.names)}},Yn=class extends Et{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)}};Yn.kind="func";var Qn=class extends Xn{render(e){return"return "+super.render(e)}};Qn.kind="return";var gu=class extends Et{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&&Pr(e,this.catch.names),this.finally&&Pr(e,this.finally.names),e}},eo=class extends Et{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};eo.kind="catch";var to=class extends Et{render(e){return"finally"+super.render(e)}};to.kind="finally";var yu=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
4
|
-
`:""},this._extScope=e,this._scope=new ct.Scope({parent:e}),this._nodes=[new mu]}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 iu(e,s,n)),s}const(e,r,n){return this._def(ct.varKinds.const,e,r,n)}let(e,r,n){return this._def(ct.varKinds.let,e,r,n)}var(e,r,n){return this._def(ct.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new js(e,r,n))}add(e,r){return this._leafNode(new cu(e,V.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==X.nil&&this._leafNode(new pu(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,X.addCodeArg)(r,o));return r.push("}"),new X._Code(r)}if(e,r,n){if(this._blockNode(new zr(e)),r&&n)this.code(r).else().code(n).endIf();else if(r)this.code(r).endIf();else if(n)throw new Error('CodeGen: "else" body without "then" body');return this}elseIf(e){return this._elseNode(new zr(e))}else(){return this._elseNode(new rn)}endIf(){return this._endBlockNode(zr,rn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new fu(e),r)}forRange(e,r,n,o,s=this.opts.es5?ct.varKinds.var:ct.varKinds.let){let a=this._scope.toName(e);return this._for(new hu(s,a,r,n),()=>o(a))}forOf(e,r,n,o=ct.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let a=r instanceof X.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,X._)`${a}.length`,i=>{this.var(s,(0,X._)`${a}[${i}]`),n(s)})}return this._for(new Rs("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?ct.varKinds.var:ct.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,X._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Rs("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Tr)}label(e){return this._leafNode(new uu(e))}break(e){return this._leafNode(new lu(e))}return(e){let r=new Qn;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Qn)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new gu;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 to,this.code(n)),this._endBlockNode(eo,to)}throw(e){return this._leafNode(new du(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=X.nil,n,o){return this._blockNode(new Yn(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Yn)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof zr))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};V.CodeGen=yu;function Pr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Os(t,e){return e instanceof X._CodeOrName?Pr(t,e.names):t}function nn(t,e,r){if(t instanceof X.Name)return n(t);if(!o(t))return t;return new X._Code(t._items.reduce((s,a)=>(a instanceof X.Name&&(a=n(a)),a instanceof X._Code?s.push(...a._items):s.push(a),s),[]));function n(s){let a=r[s.str];return a===void 0||e[s.str]!==1?s:(delete e[s.str],a)}function o(s){return s instanceof X._Code&&s._items.some(a=>a instanceof X.Name&&e[a.str]===1&&r[a.str]!==void 0)}}function Kk(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function pf(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,X._)`!${_u(t)}`}V.not=pf;var Gk=mf(V.operators.AND);function Xk(...t){return t.reduce(Gk)}V.and=Xk;var Yk=mf(V.operators.OR);function Qk(...t){return t.reduce(Yk)}V.or=Qk;function mf(t){return(e,r)=>e===X.nil?r:r===X.nil?e:(0,X._)`${_u(e)} ${t} ${_u(r)}`}function _u(t){return t instanceof X.Name?t:(0,X._)`(${t})`}});var ee=z(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.checkStrictMode=H.getErrorPath=H.Type=H.useFunc=H.setEvaluated=H.evaluatedPropsToName=H.mergeEvaluated=H.eachItem=H.unescapeJsonPointer=H.escapeJsonPointer=H.escapeFragment=H.unescapeFragment=H.schemaRefOrVal=H.schemaHasRulesButRef=H.schemaHasRules=H.checkUnknownRules=H.alwaysValidSchema=H.toHash=void 0;var se=F(),ex=Gn();function tx(t){let e={};for(let r of t)e[r]=!0;return e}H.toHash=tx;function rx(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(gf(t,e),!yf(e,t.self.RULES.all))}H.alwaysValidSchema=rx;function gf(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]||vf(t,`unknown keyword: "${s}"`)}H.checkUnknownRules=gf;function yf(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}H.schemaHasRules=yf;function nx(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}H.schemaHasRulesButRef=nx;function ox({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,se._)`${r}`}return(0,se._)`${t}${e}${(0,se.getProperty)(n)}`}H.schemaRefOrVal=ox;function sx(t){return _f(decodeURIComponent(t))}H.unescapeFragment=sx;function ax(t){return encodeURIComponent(vu(t))}H.escapeFragment=ax;function vu(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}H.escapeJsonPointer=vu;function _f(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}H.unescapeJsonPointer=_f;function ix(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}H.eachItem=ix;function ff({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,a,i)=>{let u=a===void 0?s:a instanceof se.Name?(s instanceof se.Name?t(o,s,a):e(o,s,a),a):s instanceof se.Name?(e(o,a,s),s):r(s,a);return i===se.Name&&!(u instanceof se.Name)?n(o,u):u}}H.mergeEvaluated={props:ff({mergeNames:(t,e,r)=>t.if((0,se._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,se._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,se._)`${r} || {}`).code((0,se._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,se._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,se._)`${r} || {}`),wu(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:bf}),items:ff({mergeNames:(t,e,r)=>t.if((0,se._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,se._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,se._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,se._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function bf(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,se._)`{}`);return e!==void 0&&wu(t,r,e),r}H.evaluatedPropsToName=bf;function wu(t,e,r){Object.keys(r).forEach(n=>t.assign((0,se._)`${e}${(0,se.getProperty)(n)}`,!0))}H.setEvaluated=wu;var hf={};function cx(t,e){return t.scopeValue("func",{ref:e,code:hf[e.code]||(hf[e.code]=new ex._Code(e.code))})}H.useFunc=cx;var bu;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(bu||(H.Type=bu={}));function ux(t,e,r){if(t instanceof se.Name){let n=e===bu.Num;return r?n?(0,se._)`"[" + ${t} + "]"`:(0,se._)`"['" + ${t} + "']"`:n?(0,se._)`"/" + ${t}`:(0,se._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,se.getProperty)(t).toString():"/"+vu(t)}H.getErrorPath=ux;function vf(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}H.checkStrictMode=vf});var It=z(ku=>{"use strict";Object.defineProperty(ku,"__esModule",{value:!0});var je=F(),lx={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")};ku.default=lx});var ro=z(Re=>{"use strict";Object.defineProperty(Re,"__esModule",{value:!0});Re.extendErrors=Re.resetErrorsCount=Re.reportExtraError=Re.reportError=Re.keyword$DataError=Re.keywordError=void 0;var Y=F(),Is=ee(),Ae=It();Re.keywordError={message:({keyword:t})=>(0,Y.str)`must pass "${t}" keyword validation`};Re.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Y.str)`"${t}" keyword must be ${e} ($data)`:(0,Y.str)`"${t}" keyword is invalid ($data)`};function dx(t,e=Re.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:a,allErrors:i}=o,u=xf(t,e,r);n??(a||i)?wf(s,u):kf(o,(0,Y._)`[${u}]`)}Re.reportError=dx;function px(t,e=Re.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:a}=n,i=xf(t,e,r);wf(o,i),s||a||kf(n,Ae.default.vErrors)}Re.reportExtraError=px;function mx(t,e){t.assign(Ae.default.errors,e),t.if((0,Y._)`${Ae.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Y._)`${Ae.default.vErrors}.length`,e),()=>t.assign(Ae.default.vErrors,null)))}Re.resetErrorsCount=mx;function fx({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let a=t.name("err");t.forRange("i",o,Ae.default.errors,i=>{t.const(a,(0,Y._)`${Ae.default.vErrors}[${i}]`),t.if((0,Y._)`${a}.instancePath === undefined`,()=>t.assign((0,Y._)`${a}.instancePath`,(0,Y.strConcat)(Ae.default.instancePath,s.errorPath))),t.assign((0,Y._)`${a}.schemaPath`,(0,Y.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,Y._)`${a}.schema`,r),t.assign((0,Y._)`${a}.data`,n))})}Re.extendErrors=fx;function wf(t,e){let r=t.const("err",e);t.if((0,Y._)`${Ae.default.vErrors} === null`,()=>t.assign(Ae.default.vErrors,(0,Y._)`[${r}]`),(0,Y._)`${Ae.default.vErrors}.push(${r})`),t.code((0,Y._)`${Ae.default.errors}++`)}function kf(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,Y._)`new ${t.ValidationError}(${e})`):(r.assign((0,Y._)`${n}.errors`,e),r.return(!1))}var jr={keyword:new Y.Name("keyword"),schemaPath:new Y.Name("schemaPath"),params:new Y.Name("params"),propertyName:new Y.Name("propertyName"),message:new Y.Name("message"),schema:new Y.Name("schema"),parentSchema:new Y.Name("parentSchema")};function xf(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Y._)`{}`:hx(t,e,r)}function hx(t,e,r={}){let{gen:n,it:o}=t,s=[gx(o,r),yx(t,r)];return _x(t,e,s),n.object(...s)}function gx({errorPath:t},{instancePath:e}){let r=e?(0,Y.str)`${t}${(0,Is.getErrorPath)(e,Is.Type.Str)}`:t;return[Ae.default.instancePath,(0,Y.strConcat)(Ae.default.instancePath,r)]}function yx({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,Y.str)`${e}/${t}`;return r&&(o=(0,Y.str)`${o}${(0,Is.getErrorPath)(r,Is.Type.Str)}`),[jr.schemaPath,o]}function _x(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:a,it:i}=t,{opts:u,propertyName:l,topSchemaRef:c,schemaPath:d}=i;n.push([jr.keyword,o],[jr.params,typeof e=="function"?e(t):e||(0,Y._)`{}`]),u.messages&&n.push([jr.message,typeof r=="function"?r(t):r]),u.verbose&&n.push([jr.schema,a],[jr.parentSchema,(0,Y._)`${c}${d}`],[Ae.default.data,s]),l&&n.push([jr.propertyName,l])}});var Sf=z(on=>{"use strict";Object.defineProperty(on,"__esModule",{value:!0});on.boolOrEmptySchema=on.topBoolOrEmptySchema=void 0;var bx=ro(),vx=F(),wx=It(),kx={message:"boolean schema is false"};function xx(t){let{gen:e,schema:r,validateName:n}=t;r===!1?$f(t,!1):typeof r=="object"&&r.$async===!0?e.return(wx.default.data):(e.assign((0,vx._)`${n}.errors`,null),e.return(!0))}on.topBoolOrEmptySchema=xx;function $x(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),$f(t)):r.var(e,!0)}on.boolOrEmptySchema=$x;function $f(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,bx.reportError)(o,kx,void 0,e)}});var xu=z(sn=>{"use strict";Object.defineProperty(sn,"__esModule",{value:!0});sn.getRules=sn.isJSONType=void 0;var Sx=["string","number","integer","boolean","null","object","array"],zx=new Set(Sx);function Tx(t){return typeof t=="string"&&zx.has(t)}sn.isJSONType=Tx;function Px(){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:{}}}sn.getRules=Px});var $u=z(Bt=>{"use strict";Object.defineProperty(Bt,"__esModule",{value:!0});Bt.shouldUseRule=Bt.shouldUseGroup=Bt.schemaHasRulesForType=void 0;function jx({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&zf(t,n)}Bt.schemaHasRulesForType=jx;function zf(t,e){return e.rules.some(r=>Tf(t,r))}Bt.shouldUseGroup=zf;function Tf(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))}Bt.shouldUseRule=Tf});var no=z(Oe=>{"use strict";Object.defineProperty(Oe,"__esModule",{value:!0});Oe.reportTypeError=Oe.checkDataTypes=Oe.checkDataType=Oe.coerceAndCheckDataType=Oe.getJSONTypes=Oe.getSchemaTypes=Oe.DataType=void 0;var Rx=xu(),Ox=$u(),Ex=ro(),U=F(),Pf=ee(),an;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(an||(Oe.DataType=an={}));function Ix(t){let e=jf(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}Oe.getSchemaTypes=Ix;function jf(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(Rx.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Oe.getJSONTypes=jf;function Cx(t,e){let{gen:r,data:n,opts:o}=t,s=Ax(e,o.coerceTypes),a=e.length>0&&!(s.length===0&&e.length===1&&(0,Ox.schemaHasRulesForType)(t,e[0]));if(a){let i=zu(e,n,o.strictNumbers,an.Wrong);r.if(i,()=>{s.length?Nx(t,e,s):Tu(t)})}return a}Oe.coerceAndCheckDataType=Cx;var Rf=new Set(["string","number","integer","boolean","null"]);function Ax(t,e){return e?t.filter(r=>Rf.has(r)||e==="array"&&r==="array"):[]}function Nx(t,e,r){let{gen:n,data:o,opts:s}=t,a=n.let("dataType",(0,U._)`typeof ${o}`),i=n.let("coerced",(0,U._)`undefined`);s.coerceTypes==="array"&&n.if((0,U._)`${a} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,U._)`${o}[0]`).assign(a,(0,U._)`typeof ${o}`).if(zu(e,o,s.strictNumbers),()=>n.assign(i,o))),n.if((0,U._)`${i} !== undefined`);for(let l of r)(Rf.has(l)||l==="array"&&s.coerceTypes==="array")&&u(l);n.else(),Tu(t),n.endIf(),n.if((0,U._)`${i} !== undefined`,()=>{n.assign(o,i),Mx(t,i)});function u(l){switch(l){case"string":n.elseIf((0,U._)`${a} == "number" || ${a} == "boolean"`).assign(i,(0,U._)`"" + ${o}`).elseIf((0,U._)`${o} === null`).assign(i,(0,U._)`""`);return;case"number":n.elseIf((0,U._)`${a} == "boolean" || ${o} === null
|
|
5
|
-
|| (${
|
|
6
|
-
|| (${
|
|
7
|
-
|| ${a} === "boolean" || ${o} === null`).assign(i,(0,U._)`[${o}]`)}}}function Mx({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,U._)`${e} !== undefined`,()=>t.assign((0,U._)`${e}[${r}]`,n))}function Su(t,e,r,n=an.Correct){let o=n===an.Correct?U.operators.EQ:U.operators.NEQ,s;switch(t){case"null":return(0,U._)`${e} ${o} null`;case"array":s=(0,U._)`Array.isArray(${e})`;break;case"object":s=(0,U._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=a((0,U._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=a();break;default:return(0,U._)`typeof ${e} ${o} ${t}`}return n===an.Correct?s:(0,U.not)(s);function a(i=U.nil){return(0,U.and)((0,U._)`typeof ${e} == "number"`,i,r?(0,U._)`isFinite(${e})`:U.nil)}}Oe.checkDataType=Su;function zu(t,e,r,n){if(t.length===1)return Su(t[0],e,r,n);let o,s=(0,Pf.toHash)(t);if(s.array&&s.object){let a=(0,U._)`typeof ${e} != "object"`;o=s.null?a:(0,U._)`!${e} || ${a}`,delete s.null,delete s.array,delete s.object}else o=U.nil;s.number&&delete s.integer;for(let a in s)o=(0,U.and)(o,Su(a,e,r,n));return o}Oe.checkDataTypes=zu;var Zx={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,U._)`{type: ${t}}`:(0,U._)`{type: ${e}}`};function Tu(t){let e=Lx(t);(0,Ex.reportError)(e,Zx)}Oe.reportTypeError=Tu;function Lx(t){let{gen:e,data:r,schema:n}=t,o=(0,Pf.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Ef=z(Cs=>{"use strict";Object.defineProperty(Cs,"__esModule",{value:!0});Cs.assignDefaults=void 0;var cn=F(),qx=ee();function Dx(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Of(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Of(t,s,o.default))}Cs.assignDefaults=Dx;function Of(t,e,r){let{gen:n,compositeRule:o,data:s,opts:a}=t;if(r===void 0)return;let i=(0,cn._)`${s}${(0,cn.getProperty)(e)}`;if(o){(0,qx.checkStrictMode)(t,`default is ignored for: ${i}`);return}let u=(0,cn._)`${i} === undefined`;a.useDefaults==="empty"&&(u=(0,cn._)`${u} || ${i} === null || ${i} === ""`),n.if(u,(0,cn._)`${i} = ${(0,cn.stringify)(r)}`)}});var tt=z(oe=>{"use strict";Object.defineProperty(oe,"__esModule",{value:!0});oe.validateUnion=oe.validateArray=oe.usePattern=oe.callValidateCode=oe.schemaProperties=oe.allSchemaProperties=oe.noPropertyInData=oe.propertyInData=oe.isOwnProperty=oe.hasPropFunc=oe.reportMissingProp=oe.checkMissingProp=oe.checkReportMissingProp=void 0;var le=F(),Pu=ee(),Wt=It(),Ux=ee();function Jx(t,e){let{gen:r,data:n,it:o}=t;r.if(Ru(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,le._)`${e}`},!0),t.error()})}oe.checkReportMissingProp=Jx;function Fx({gen:t,data:e,it:{opts:r}},n,o){return(0,le.or)(...n.map(s=>(0,le.and)(Ru(t,e,s,r.ownProperties),(0,le._)`${o} = ${s}`)))}oe.checkMissingProp=Fx;function Vx(t,e){t.setParams({missingProperty:e},!0),t.error()}oe.reportMissingProp=Vx;function If(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,le._)`Object.prototype.hasOwnProperty`})}oe.hasPropFunc=If;function ju(t,e,r){return(0,le._)`${If(t)}.call(${e}, ${r})`}oe.isOwnProperty=ju;function Hx(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} !== undefined`;return n?(0,le._)`${o} && ${ju(t,e,r)}`:o}oe.propertyInData=Hx;function Ru(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} === undefined`;return n?(0,le.or)(o,(0,le.not)(ju(t,e,r))):o}oe.noPropertyInData=Ru;function Cf(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}oe.allSchemaProperties=Cf;function Bx(t,e){return Cf(e).filter(r=>!(0,Pu.alwaysValidSchema)(t,e[r]))}oe.schemaProperties=Bx;function Wx({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:a},i,u,l){let c=l?(0,le._)`${t}, ${e}, ${n}${o}`:e,d=[[Wt.default.instancePath,(0,le.strConcat)(Wt.default.instancePath,s)],[Wt.default.parentData,a.parentData],[Wt.default.parentDataProperty,a.parentDataProperty],[Wt.default.rootData,Wt.default.rootData]];a.opts.dynamicRef&&d.push([Wt.default.dynamicAnchors,Wt.default.dynamicAnchors]);let h=(0,le._)`${c}, ${r.object(...d)}`;return u!==le.nil?(0,le._)`${i}.call(${u}, ${h})`:(0,le._)`${i}(${h})`}oe.callValidateCode=Wx;var Kx=(0,le._)`new RegExp`;function Gx({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,le._)`${o.code==="new RegExp"?Kx:(0,Ux.useFunc)(t,o)}(${r}, ${n})`})}oe.usePattern=Gx;function Xx(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let i=e.let("valid",!0);return a(()=>e.assign(i,!1)),i}return e.var(s,!0),a(()=>e.break()),s;function a(i){let u=e.const("len",(0,le._)`${r}.length`);e.forRange("i",0,u,l=>{t.subschema({keyword:n,dataProp:l,dataPropType:Pu.Type.Num},s),e.if((0,le.not)(s),i)})}}oe.validateArray=Xx;function Yx(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(u=>(0,Pu.alwaysValidSchema)(o,u))&&!o.opts.unevaluated)return;let a=e.let("valid",!1),i=e.name("_valid");e.block(()=>r.forEach((u,l)=>{let c=t.subschema({keyword:n,schemaProp:l,compositeRule:!0},i);e.assign(a,(0,le._)`${a} || ${i}`),t.mergeValidEvaluated(c,i)||e.if((0,le.not)(a))})),t.result(a,()=>t.reset(),()=>t.error(!0))}oe.validateUnion=Yx});var Mf=z(yt=>{"use strict";Object.defineProperty(yt,"__esModule",{value:!0});yt.validateKeywordUsage=yt.validSchemaType=yt.funcKeywordCode=yt.macroKeywordCode=void 0;var Ne=F(),Rr=It(),Qx=tt(),e0=ro();function t0(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:a}=t,i=e.macro.call(a.self,o,s,a),u=Nf(r,n,i);a.opts.validateSchema!==!1&&a.self.validateSchema(i,!0);let l=r.name("valid");t.subschema({schema:i,schemaPath:Ne.nil,errSchemaPath:`${a.errSchemaPath}/${n}`,topSchemaRef:u,compositeRule:!0},l),t.pass(l,()=>t.error(!0))}yt.macroKeywordCode=t0;function r0(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:a,$data:i,it:u}=t;o0(u,e);let l=!i&&e.compile?e.compile.call(u.self,s,a,u):e.validate,c=Nf(n,o,l),d=n.let("valid");t.block$data(d,h),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function h(){if(e.errors===!1)g(),e.modifying&&Af(t),y(()=>t.error());else{let v=e.async?f():m();e.modifying&&Af(t),y(()=>n0(t,v))}}function f(){let v=n.let("ruleErrs",null);return n.try(()=>g((0,Ne._)`await `),w=>n.assign(d,!1).if((0,Ne._)`${w} instanceof ${u.ValidationError}`,()=>n.assign(v,(0,Ne._)`${w}.errors`),()=>n.throw(w))),v}function m(){let v=(0,Ne._)`${c}.errors`;return n.assign(v,null),g(Ne.nil),v}function g(v=e.async?(0,Ne._)`await `:Ne.nil){let w=u.opts.passContext?Rr.default.this:Rr.default.self,x=!("compile"in e&&!i||e.schema===!1);n.assign(d,(0,Ne._)`${v}${(0,Qx.callValidateCode)(t,c,w,x)}`,e.modifying)}function y(v){var w;n.if((0,Ne.not)((w=e.valid)!==null&&w!==void 0?w:d),v)}}yt.funcKeywordCode=r0;function Af(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Ne._)`${n.parentData}[${n.parentDataProperty}]`))}function n0(t,e){let{gen:r}=t;r.if((0,Ne._)`Array.isArray(${e})`,()=>{r.assign(Rr.default.vErrors,(0,Ne._)`${Rr.default.vErrors} === null ? ${e} : ${Rr.default.vErrors}.concat(${e})`).assign(Rr.default.errors,(0,Ne._)`${Rr.default.vErrors}.length`),(0,e0.extendErrors)(t)},()=>t.error())}function o0({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Nf(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,Ne.stringify)(r)})}function s0(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")}yt.validSchemaType=s0;function a0({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 a=o.dependencies;if(a?.some(i=>!Object.prototype.hasOwnProperty.call(t,i)))throw new Error(`parent schema must have dependencies of ${s}: ${a.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let u=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(u);else throw new Error(u)}}yt.validateKeywordUsage=a0});var Lf=z(Kt=>{"use strict";Object.defineProperty(Kt,"__esModule",{value:!0});Kt.extendSubschemaMode=Kt.extendSubschemaData=Kt.getSubschema=void 0;var _t=F(),Zf=ee();function i0(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:a}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let i=t.schema[e];return r===void 0?{schema:i,schemaPath:(0,_t._)`${t.schemaPath}${(0,_t.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:i[r],schemaPath:(0,_t._)`${t.schemaPath}${(0,_t.getProperty)(e)}${(0,_t.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Zf.escapeFragment)(r)}`}}if(n!==void 0){if(o===void 0||s===void 0||a===void 0)throw new Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:n,schemaPath:o,topSchemaRef:a,errSchemaPath:s}}throw new Error('either "keyword" or "schema" must be passed')}Kt.getSubschema=i0;function c0(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:a}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:i}=e;if(r!==void 0){let{errorPath:l,dataPathArr:c,opts:d}=e,h=i.let("data",(0,_t._)`${e.data}${(0,_t.getProperty)(r)}`,!0);u(h),t.errorPath=(0,_t.str)`${l}${(0,Zf.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,_t._)`${r}`,t.dataPathArr=[...c,t.parentDataProperty]}if(o!==void 0){let l=o instanceof _t.Name?o:i.let("data",o,!0);u(l),a!==void 0&&(t.propertyName=a)}s&&(t.dataTypes=s);function u(l){t.data=l,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,l]}}Kt.extendSubschemaData=c0;function u0(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}Kt.extendSubschemaMode=u0});var Ou=z((_I,qf)=>{"use strict";qf.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 a=s[o];if(!t(e[a],r[a]))return!1}return!0}return e!==e&&r!==r}});var Uf=z((bI,Df)=>{"use strict";var Gt=Df.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(){};As(e,n,o,t,"",t)};Gt.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Gt.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Gt.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Gt.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 As(t,e,r,n,o,s,a,i,u,l){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,a,i,u,l);for(var c in n){var d=n[c];if(Array.isArray(d)){if(c in Gt.arrayKeywords)for(var h=0;h<d.length;h++)As(t,e,r,d[h],o+"/"+c+"/"+h,s,o,c,n,h)}else if(c in Gt.propsKeywords){if(d&&typeof d=="object")for(var f in d)As(t,e,r,d[f],o+"/"+c+"/"+l0(f),s,o,c,n,f)}else(c in Gt.keywords||t.allKeys&&!(c in Gt.skipKeywords))&&As(t,e,r,d,o+"/"+c,s,o,c,n)}r(n,o,s,a,i,u,l)}}function l0(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var oo=z(Je=>{"use strict";Object.defineProperty(Je,"__esModule",{value:!0});Je.getSchemaRefs=Je.resolveUrl=Je.normalizeId=Je._getFullPath=Je.getFullPath=Je.inlineRef=void 0;var d0=ee(),p0=Ou(),m0=Uf(),f0=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function h0(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Eu(t):e?Jf(t)<=e:!1}Je.inlineRef=h0;var g0=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Eu(t){for(let e in t){if(g0.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Eu)||typeof r=="object"&&Eu(r))return!0}return!1}function Jf(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!f0.has(r)&&(typeof t[r]=="object"&&(0,d0.eachItem)(t[r],n=>e+=Jf(n)),e===1/0))return 1/0}return e}function Ff(t,e="",r){r!==!1&&(e=un(e));let n=t.parse(e);return Vf(t,n)}Je.getFullPath=Ff;function Vf(t,e){return t.serialize(e).split("#")[0]+"#"}Je._getFullPath=Vf;var y0=/#\/?$/;function un(t){return t?t.replace(y0,""):""}Je.normalizeId=un;function _0(t,e,r){return r=un(r),t.resolve(e,r)}Je.resolveUrl=_0;var b0=/^[a-z_][-a-z0-9._]*$/i;function v0(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=un(t[r]||e),s={"":o},a=Ff(n,o,!1),i={},u=new Set;return m0(t,{allKeys:!0},(d,h,f,m)=>{if(m===void 0)return;let g=a+h,y=s[m];typeof d[r]=="string"&&(y=v.call(this,d[r])),w.call(this,d.$anchor),w.call(this,d.$dynamicAnchor),s[h]=y;function v(x){let j=this.opts.uriResolver.resolve;if(x=un(y?j(y,x):x),u.has(x))throw c(x);u.add(x);let N=this.refs[x];return typeof N=="string"&&(N=this.refs[N]),typeof N=="object"?l(d,N.schema,x):x!==un(g)&&(x[0]==="#"?(l(d,i[x],x),i[x]=d):this.refs[x]=g),x}function w(x){if(typeof x=="string"){if(!b0.test(x))throw new Error(`invalid anchor "${x}"`);v.call(this,`#${x}`)}}}),i;function l(d,h,f){if(h!==void 0&&!p0(d,h))throw c(f)}function c(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Je.getSchemaRefs=v0});var io=z(Xt=>{"use strict";Object.defineProperty(Xt,"__esModule",{value:!0});Xt.getData=Xt.KeywordCxt=Xt.validateFunctionCode=void 0;var Gf=Sf(),Hf=no(),Cu=$u(),Ns=no(),w0=Ef(),ao=Mf(),Iu=Lf(),I=F(),q=It(),k0=oo(),Ct=ee(),so=ro();function x0(t){if(Qf(t)&&(eh(t),Yf(t))){z0(t);return}Xf(t,()=>(0,Gf.topBoolOrEmptySchema)(t))}Xt.validateFunctionCode=x0;function Xf({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,I._)`${q.default.data}, ${q.default.valCxt}`,n.$async,()=>{t.code((0,I._)`"use strict"; ${Bf(r,o)}`),S0(t,o),t.code(s)}):t.func(e,(0,I._)`${q.default.data}, ${$0(o)}`,n.$async,()=>t.code(Bf(r,o)).code(s))}function $0(t){return(0,I._)`{${q.default.instancePath}="", ${q.default.parentData}, ${q.default.parentDataProperty}, ${q.default.rootData}=${q.default.data}${t.dynamicRef?(0,I._)`, ${q.default.dynamicAnchors}={}`:I.nil}}={}`}function S0(t,e){t.if(q.default.valCxt,()=>{t.var(q.default.instancePath,(0,I._)`${q.default.valCxt}.${q.default.instancePath}`),t.var(q.default.parentData,(0,I._)`${q.default.valCxt}.${q.default.parentData}`),t.var(q.default.parentDataProperty,(0,I._)`${q.default.valCxt}.${q.default.parentDataProperty}`),t.var(q.default.rootData,(0,I._)`${q.default.valCxt}.${q.default.rootData}`),e.dynamicRef&&t.var(q.default.dynamicAnchors,(0,I._)`${q.default.valCxt}.${q.default.dynamicAnchors}`)},()=>{t.var(q.default.instancePath,(0,I._)`""`),t.var(q.default.parentData,(0,I._)`undefined`),t.var(q.default.parentDataProperty,(0,I._)`undefined`),t.var(q.default.rootData,q.default.data),e.dynamicRef&&t.var(q.default.dynamicAnchors,(0,I._)`{}`)})}function z0(t){let{schema:e,opts:r,gen:n}=t;Xf(t,()=>{r.$comment&&e.$comment&&rh(t),O0(t),n.let(q.default.vErrors,null),n.let(q.default.errors,0),r.unevaluated&&T0(t),th(t),C0(t)})}function T0(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,I._)`${r}.evaluated`),e.if((0,I._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,I._)`${t.evaluated}.props`,(0,I._)`undefined`)),e.if((0,I._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,I._)`${t.evaluated}.items`,(0,I._)`undefined`))}function Bf(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,I._)`/*# sourceURL=${r} */`:I.nil}function P0(t,e){if(Qf(t)&&(eh(t),Yf(t))){j0(t,e);return}(0,Gf.boolOrEmptySchema)(t,e)}function Yf({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 Qf(t){return typeof t.schema!="boolean"}function j0(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&rh(t),E0(t),I0(t);let s=n.const("_errs",q.default.errors);th(t,s),n.var(e,(0,I._)`${s} === ${q.default.errors}`)}function eh(t){(0,Ct.checkUnknownRules)(t),R0(t)}function th(t,e){if(t.opts.jtd)return Wf(t,[],!1,e);let r=(0,Hf.getSchemaTypes)(t.schema),n=(0,Hf.coerceAndCheckDataType)(t,r);Wf(t,r,!n,e)}function R0(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ct.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function O0(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ct.checkStrictMode)(t,"default is ignored in the schema root")}function E0(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,k0.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function I0(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function rh({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,I._)`${q.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let a=(0,I.str)`${n}/$comment`,i=t.scopeValue("root",{ref:e.root});t.code((0,I._)`${q.default.self}.opts.$comment(${s}, ${a}, ${i}.schema)`)}}function C0(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,I._)`${q.default.errors} === 0`,()=>e.return(q.default.data),()=>e.throw((0,I._)`new ${o}(${q.default.vErrors})`)):(e.assign((0,I._)`${n}.errors`,q.default.vErrors),s.unevaluated&&A0(t),e.return((0,I._)`${q.default.errors} === 0`))}function A0({gen:t,evaluated:e,props:r,items:n}){r instanceof I.Name&&t.assign((0,I._)`${e}.props`,r),n instanceof I.Name&&t.assign((0,I._)`${e}.items`,n)}function Wf(t,e,r,n){let{gen:o,schema:s,data:a,allErrors:i,opts:u,self:l}=t,{RULES:c}=l;if(s.$ref&&(u.ignoreKeywordsWithRef||!(0,Ct.schemaHasRulesButRef)(s,c))){o.block(()=>oh(t,"$ref",c.all.$ref.definition));return}u.jtd||N0(t,e),o.block(()=>{for(let h of c.rules)d(h);d(c.post)});function d(h){(0,Cu.shouldUseGroup)(s,h)&&(h.type?(o.if((0,Ns.checkDataType)(h.type,a,u.strictNumbers)),Kf(t,h),e.length===1&&e[0]===h.type&&r&&(o.else(),(0,Ns.reportTypeError)(t)),o.endIf()):Kf(t,h),i||o.if((0,I._)`${q.default.errors} === ${n||0}`))}}function Kf(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,w0.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Cu.shouldUseRule)(n,s)&&oh(t,s.keyword,s.definition,e.type)})}function N0(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(M0(t,e),t.opts.allowUnionTypes||Z0(t,e),L0(t,t.dataTypes))}function M0(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{nh(t.dataTypes,r)||Au(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),D0(t,e)}}function Z0(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Au(t,"use allowUnionTypes to allow union type keyword")}function L0(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Cu.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(a=>q0(e,a))&&Au(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function q0(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function nh(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function D0(t,e){let r=[];for(let n of t.dataTypes)nh(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Au(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ct.checkStrictMode)(t,e,t.opts.strictTypes)}var Ms=class{constructor(e,r,n){if((0,ao.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Ct.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",sh(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,ao.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",q.default.errors))}result(e,r,n){this.failResult((0,I.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,I.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,I._)`${r} !== undefined && (${(0,I.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?so.reportExtraError:so.reportError)(this,this.def.error,r)}$dataError(){(0,so.reportError)(this,this.def.$dataError||so.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,so.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=I.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=I.nil,r=I.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:a}=this;n.if((0,I.or)((0,I._)`${o} === undefined`,r)),e!==I.nil&&n.assign(e,!0),(s.length||a.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==I.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,I.or)(a(),i());function a(){if(n.length){if(!(r instanceof I.Name))throw new Error("ajv implementation error");let u=Array.isArray(n)?n:[n];return(0,I._)`${(0,Ns.checkDataTypes)(u,r,s.opts.strictNumbers,Ns.DataType.Wrong)}`}return I.nil}function i(){if(o.validateSchema){let u=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,I._)`!${u}(${r})`}return I.nil}}subschema(e,r){let n=(0,Iu.getSubschema)(this.it,e);(0,Iu.extendSubschemaData)(n,this.it,e),(0,Iu.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return P0(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ct.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ct.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,I.Name)),!0}};Xt.KeywordCxt=Ms;function oh(t,e,r,n){let o=new Ms(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,ao.funcKeywordCode)(o,r):"macro"in r?(0,ao.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,ao.funcKeywordCode)(o,r)}var U0=/^\/(?:[^~]|~0|~1)*$/,J0=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function sh(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return q.default.rootData;if(t[0]==="/"){if(!U0.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=q.default.rootData}else{let l=J0.exec(t);if(!l)throw new Error(`Invalid JSON-pointer: ${t}`);let c=+l[1];if(o=l[2],o==="#"){if(c>=e)throw new Error(u("property/index",c));return n[e-c]}if(c>e)throw new Error(u("data",c));if(s=r[e-c],!o)return s}let a=s,i=o.split("/");for(let l of i)l&&(s=(0,I._)`${s}${(0,I.getProperty)((0,Ct.unescapeJsonPointer)(l))}`,a=(0,I._)`${a} && ${s}`);return a;function u(l,c){return`Cannot access ${l} ${c} levels up, current level is ${e}`}}Xt.getData=sh});var Zs=z(Mu=>{"use strict";Object.defineProperty(Mu,"__esModule",{value:!0});var Nu=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Mu.default=Nu});var co=z(qu=>{"use strict";Object.defineProperty(qu,"__esModule",{value:!0});var Zu=oo(),Lu=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Zu.resolveUrl)(e,r,n),this.missingSchema=(0,Zu.normalizeId)((0,Zu.getFullPath)(e,this.missingRef))}};qu.default=Lu});var qs=z(rt=>{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.resolveSchema=rt.getCompilingSchema=rt.resolveRef=rt.compileSchema=rt.SchemaEnv=void 0;var ut=F(),F0=Zs(),Or=It(),lt=oo(),ah=ee(),V0=io(),ln=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,lt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};rt.SchemaEnv=ln;function Uu(t){let e=ih.call(this,t);if(e)return e;let r=(0,lt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,a=new ut.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),i;t.$async&&(i=a.scopeValue("Error",{ref:F0.default,code:(0,ut._)`require("ajv/dist/runtime/validation_error").default`}));let u=a.scopeName("validate");t.validateName=u;let l={gen:a,allErrors:this.opts.allErrors,data:Or.default.data,parentData:Or.default.parentData,parentDataProperty:Or.default.parentDataProperty,dataNames:[Or.default.data],dataPathArr:[ut.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:a.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,ut.stringify)(t.schema)}:{ref:t.schema}),validateName:u,ValidationError:i,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:ut.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,ut._)`""`,opts:this.opts,self:this},c;try{this._compilations.add(t),(0,V0.validateFunctionCode)(l),a.optimize(this.opts.code.optimize);let d=a.toString();c=`${a.scopeRefs(Or.default.scope)}return ${d}`,this.opts.code.process&&(c=this.opts.code.process(c,t));let f=new Function(`${Or.default.self}`,`${Or.default.scope}`,c)(this,this.scope.get());if(this.scope.value(u,{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:u,validateCode:d,scopeValues:a._values}),this.opts.unevaluated){let{props:m,items:g}=l;f.evaluated={props:m instanceof ut.Name?void 0:m,items:g instanceof ut.Name?void 0:g,dynamicProps:m instanceof ut.Name,dynamicItems:g instanceof ut.Name},f.source&&(f.source.evaluated=(0,ut.stringify)(f.evaluated))}return t.validate=f,t}catch(d){throw delete t.validate,delete t.validateName,c&&this.logger.error("Error compiling schema, function code:",c),d}finally{this._compilations.delete(t)}}rt.compileSchema=Uu;function H0(t,e,r){var n;r=(0,lt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=K0.call(this,t,r);if(s===void 0){let a=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:i}=this.opts;a&&(s=new ln({schema:a,schemaId:i,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=B0.call(this,s)}rt.resolveRef=H0;function B0(t){return(0,lt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Uu.call(this,t)}function ih(t){for(let e of this._compilations)if(W0(e,t))return e}rt.getCompilingSchema=ih;function W0(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function K0(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Ls.call(this,t,e)}function Ls(t,e){let r=this.opts.uriResolver.parse(e),n=(0,lt._getFullPath)(this.opts.uriResolver,r),o=(0,lt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Du.call(this,r,t);let s=(0,lt.normalizeId)(n),a=this.refs[s]||this.schemas[s];if(typeof a=="string"){let i=Ls.call(this,t,a);return typeof i?.schema!="object"?void 0:Du.call(this,r,i)}if(typeof a?.schema=="object"){if(a.validate||Uu.call(this,a),s===(0,lt.normalizeId)(e)){let{schema:i}=a,{schemaId:u}=this.opts,l=i[u];return l&&(o=(0,lt.resolveUrl)(this.opts.uriResolver,o,l)),new ln({schema:i,schemaId:u,root:t,baseId:o})}return Du.call(this,r,a)}}rt.resolveSchema=Ls;var G0=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Du(t,{baseId:e,schema:r,root:n}){var o;if(((o=t.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let i of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let u=r[(0,ah.unescapeFragment)(i)];if(u===void 0)return;r=u;let l=typeof r=="object"&&r[this.opts.schemaId];!G0.has(i)&&l&&(e=(0,lt.resolveUrl)(this.opts.uriResolver,e,l))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,ah.schemaHasRulesButRef)(r,this.RULES)){let i=(0,lt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Ls.call(this,n,i)}let{schemaId:a}=this.opts;if(s=s||new ln({schema:r,schemaId:a,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var ch=z((SI,X0)=>{X0.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 Fu=z((zI,ph)=>{"use strict";var Y0=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),lh=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function Ju(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 Q0=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function uh(t){return t.length=0,!0}function e$(t,e,r){if(t.length){let n=Ju(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function t$(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,a=!1,i=e$;for(let u=0;u<t.length;u++){let l=t[u];if(!(l==="["||l==="]"))if(l===":"){if(s===!0&&(a=!0),!i(o,n,r))break;if(++e>7){r.error=!0;break}u>0&&t[u-1]===":"&&(s=!0),n.push(":");continue}else if(l==="%"){if(!i(o,n,r))break;i=uh}else{o.push(l);continue}}return o.length&&(i===uh?r.zone=o.join(""):a?n.push(o.join("")):n.push(Ju(o))),r.address=n.join(""),r}function dh(t){if(r$(t,":")<2)return{host:t,isIPV6:!1};let e=t$(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 r$(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function n$(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("")}function o$(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function s$(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!lh(r)){let n=dh(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}ph.exports={nonSimpleDomain:Q0,recomposeAuthority:s$,normalizeComponentEncoding:o$,removeDotSegments:n$,isIPv4:lh,isUUID:Y0,normalizeIPv6:dh,stringArrayToHexStripped:Ju}});var yh=z((TI,gh)=>{"use strict";var{isUUID:a$}=Fu(),i$=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,c$=["http","https","ws","wss","urn","urn:uuid"];function u$(t){return c$.indexOf(t)!==-1}function Vu(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 mh(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function fh(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 l$(t){return t.secure=Vu(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function d$(t){if((t.port===(Vu(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 p$(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(i$);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=Hu(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function m$(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=Hu(o);s&&(t=s.serialize(t,e));let a=t,i=t.nss;return a.path=`${n||e.nid}:${i}`,e.skipEscape=!0,a}function f$(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!a$(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function h$(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var hh={scheme:"http",domainHost:!0,parse:mh,serialize:fh},g$={scheme:"https",domainHost:hh.domainHost,parse:mh,serialize:fh},Ds={scheme:"ws",domainHost:!0,parse:l$,serialize:d$},y$={scheme:"wss",domainHost:Ds.domainHost,parse:Ds.parse,serialize:Ds.serialize},_$={scheme:"urn",parse:p$,serialize:m$,skipNormalize:!0},b$={scheme:"urn:uuid",parse:f$,serialize:h$,skipNormalize:!0},Us={http:hh,https:g$,ws:Ds,wss:y$,urn:_$,"urn:uuid":b$};Object.setPrototypeOf(Us,null);function Hu(t){return t&&(Us[t]||Us[t.toLowerCase()])||void 0}gh.exports={wsIsSecure:Vu,SCHEMES:Us,isValidSchemeName:u$,getSchemeHandler:Hu}});var vh=z((PI,Fs)=>{"use strict";var{normalizeIPv6:v$,removeDotSegments:uo,recomposeAuthority:w$,normalizeComponentEncoding:Js,isIPv4:k$,nonSimpleDomain:x$}=Fu(),{SCHEMES:$$,getSchemeHandler:_h}=yh();function S$(t,e){return typeof t=="string"?t=bt(At(t,e),e):typeof t=="object"&&(t=At(bt(t,e),e)),t}function z$(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=bh(At(t,n),At(e,n),n,!0);return n.skipEscape=!0,bt(o,n)}function bh(t,e,r,n){let o={};return n||(t=At(bt(t,r),r),e=At(bt(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=uo(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=uo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=uo(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=uo(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 T$(t,e,r){return typeof t=="string"?(t=unescape(t),t=bt(Js(At(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=bt(Js(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=bt(Js(At(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=bt(Js(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function bt(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=_h(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let a=w$(r);if(a!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(a),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let i=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(i=uo(i)),a===void 0&&i[0]==="/"&&i[1]==="/"&&(i="/%2F"+i.slice(2)),o.push(i)}return r.query!==void 0&&o.push("?",r.query),r.fragment!==void 0&&o.push("#",r.fragment),o.join("")}var P$=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function At(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;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(P$);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if(k$(n.host)===!1){let u=v$(n.host);n.host=u.host.toLowerCase(),o=u.isIPV6}else o=!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 a=_h(r.scheme||n.scheme);if(!r.unicodeSupport&&(!a||!a.unicodeSupport)&&n.host&&(r.domainHost||a&&a.domainHost)&&o===!1&&x$(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(i){n.error=n.error||"Host's domain name can not be converted to ASCII: "+i}(!a||a&&!a.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),a&&a.parse&&a.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var Bu={SCHEMES:$$,normalize:S$,resolve:z$,resolveComponent:bh,equal:T$,serialize:bt,parse:At};Fs.exports=Bu;Fs.exports.default=Bu;Fs.exports.fastUri=Bu});var kh=z(Wu=>{"use strict";Object.defineProperty(Wu,"__esModule",{value:!0});var wh=vh();wh.code='require("ajv/dist/runtime/uri").default';Wu.default=wh});var Rh=z(ze=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.CodeGen=ze.Name=ze.nil=ze.stringify=ze.str=ze._=ze.KeywordCxt=void 0;var j$=io();Object.defineProperty(ze,"KeywordCxt",{enumerable:!0,get:function(){return j$.KeywordCxt}});var dn=F();Object.defineProperty(ze,"_",{enumerable:!0,get:function(){return dn._}});Object.defineProperty(ze,"str",{enumerable:!0,get:function(){return dn.str}});Object.defineProperty(ze,"stringify",{enumerable:!0,get:function(){return dn.stringify}});Object.defineProperty(ze,"nil",{enumerable:!0,get:function(){return dn.nil}});Object.defineProperty(ze,"Name",{enumerable:!0,get:function(){return dn.Name}});Object.defineProperty(ze,"CodeGen",{enumerable:!0,get:function(){return dn.CodeGen}});var R$=Zs(),Th=co(),O$=xu(),lo=qs(),E$=F(),po=oo(),Vs=no(),Gu=ee(),xh=ch(),I$=kh(),Ph=(t,e)=>new RegExp(t,e);Ph.code="new RegExp";var C$=["removeAdditional","useDefaults","coerceTypes"],A$=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),N$={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."},M$={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},$h=200;function Z$(t){var e,r,n,o,s,a,i,u,l,c,d,h,f,m,g,y,v,w,x,j,N,Ee,We,Nr,_a;let bn=t.strict,ba=(e=t.code)===null||e===void 0?void 0:e.optimize,dd=ba===!0||ba===void 0?1:ba||0,pd=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Ph,Ny=(o=t.uriResolver)!==null&&o!==void 0?o:I$.default;return{strictSchema:(a=(s=t.strictSchema)!==null&&s!==void 0?s:bn)!==null&&a!==void 0?a:!0,strictNumbers:(u=(i=t.strictNumbers)!==null&&i!==void 0?i:bn)!==null&&u!==void 0?u:!0,strictTypes:(c=(l=t.strictTypes)!==null&&l!==void 0?l:bn)!==null&&c!==void 0?c:"log",strictTuples:(h=(d=t.strictTuples)!==null&&d!==void 0?d:bn)!==null&&h!==void 0?h:"log",strictRequired:(m=(f=t.strictRequired)!==null&&f!==void 0?f:bn)!==null&&m!==void 0?m:!1,code:t.code?{...t.code,optimize:dd,regExp:pd}:{optimize:dd,regExp:pd},loopRequired:(g=t.loopRequired)!==null&&g!==void 0?g:$h,loopEnum:(y=t.loopEnum)!==null&&y!==void 0?y:$h,meta:(v=t.meta)!==null&&v!==void 0?v:!0,messages:(w=t.messages)!==null&&w!==void 0?w:!0,inlineRefs:(x=t.inlineRefs)!==null&&x!==void 0?x:!0,schemaId:(j=t.schemaId)!==null&&j!==void 0?j:"$id",addUsedSchema:(N=t.addUsedSchema)!==null&&N!==void 0?N:!0,validateSchema:(Ee=t.validateSchema)!==null&&Ee!==void 0?Ee:!0,validateFormats:(We=t.validateFormats)!==null&&We!==void 0?We:!0,unicodeRegExp:(Nr=t.unicodeRegExp)!==null&&Nr!==void 0?Nr:!0,int32range:(_a=t.int32range)!==null&&_a!==void 0?_a:!0,uriResolver:Ny}}var mo=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...Z$(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new E$.ValueScope({scope:{},prefixes:A$,es5:r,lines:n}),this.logger=F$(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,O$.getRules)(),Sh.call(this,N$,e,"NOT SUPPORTED"),Sh.call(this,M$,e,"DEPRECATED","warn"),this._metaOpts=U$.call(this),e.formats&&q$.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&D$.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),L$.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=xh;n==="id"&&(o={...xh},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(c,d){await s.call(this,c.$schema);let h=this._addSchema(c,d);return h.validate||a.call(this,h)}async function s(c){c&&!this.getSchema(c)&&await o.call(this,{$ref:c},!0)}async function a(c){try{return this._compileSchemaEnv(c)}catch(d){if(!(d instanceof Th.default))throw d;return i.call(this,d),await u.call(this,d.missingSchema),a.call(this,c)}}function i({missingSchema:c,missingRef:d}){if(this.refs[c])throw new Error(`AnySchema ${c} is loaded but ${d} cannot be resolved`)}async function u(c){let d=await l.call(this,c);this.refs[c]||await s.call(this,d.$schema),this.refs[c]||this.addSchema(d,c,r)}async function l(c){let d=this._loading[c];if(d)return d;try{return await(this._loading[c]=n(c))}finally{delete this._loading[c]}}}addSchema(e,r,n,o=this.opts.validateSchema){if(Array.isArray(e)){for(let a of e)this.addSchema(a,void 0,n,o);return this}let s;if(typeof e=="object"){let{schemaId:a}=this.opts;if(s=e[a],s!==void 0&&typeof s!="string")throw new Error(`schema ${a} must be string`)}return r=(0,po.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=zh.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=zh.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,po.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(H$.call(this,n,r),!r)return(0,Gu.eachItem)(n,s=>Ku.call(this,s)),this;W$.call(this,r);let o={...r,type:(0,Vs.getJSONTypes)(r.type),schemaType:(0,Vs.getJSONTypes)(r.schemaType)};return(0,Gu.eachItem)(n,o.type.length===0?s=>Ku.call(this,s,o):s=>o.type.forEach(a=>Ku.call(this,s,o,a))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let 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),a=e;for(let i of s)a=a[i];for(let i in n){let u=n[i];if(typeof u!="object")continue;let{$data:l}=u.definition,c=a[i];l&&c&&(a[i]=jh(c))}}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 a,{schemaId:i}=this.opts;if(typeof e=="object")a=e[i];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 u=this._cache.get(e);if(u!==void 0)return u;n=(0,po.normalizeId)(a||n);let l=po.getSchemaRefs.call(this,e,n);return u=new lo.SchemaEnv({schema:e,schemaId:i,meta:r,baseId:n,localRefs:l}),this._cache.set(u.schema,u),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=u),o&&this.validateSchema(e,!0),u}_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}}};mo.ValidationError=R$.default;mo.MissingRefError=Th.default;ze.default=mo;function Sh(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 zh(t){return t=(0,po.normalizeId)(t),this.schemas[t]||this.refs[t]}function L$(){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 q$(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function D$(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 U$(){let t={...this.opts};for(let e of C$)delete t[e];return t}var J$={log(){},warn(){},error(){}};function F$(t){if(t===!1)return J$;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 V$=/^[a-z_$][a-z0-9_$:-]*$/i;function H$(t,e){let{RULES:r}=this;if((0,Gu.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!V$.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 Ku(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,a=o?s.post:s.rules.find(({type:u})=>u===r);if(a||(a={type:r,rules:[]},s.rules.push(a)),s.keywords[t]=!0,!e)return;let i={keyword:t,definition:{...e,type:(0,Vs.getJSONTypes)(e.type),schemaType:(0,Vs.getJSONTypes)(e.schemaType)}};e.before?B$.call(this,a,i,e.before):a.rules.push(i),s.all[t]=i,(n=e.implements)===null||n===void 0||n.forEach(u=>this.addKeyword(u))}function B$(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 W$(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=jh(e)),t.validateSchema=this.compile(e,!0))}var K$={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function jh(t){return{anyOf:[t,K$]}}});var Oh=z(Xu=>{"use strict";Object.defineProperty(Xu,"__esModule",{value:!0});var G$={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Xu.default=G$});var Ah=z(Er=>{"use strict";Object.defineProperty(Er,"__esModule",{value:!0});Er.callRef=Er.getValidate=void 0;var X$=co(),Eh=tt(),Fe=F(),pn=It(),Ih=qs(),Hs=ee(),Y$={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:o,schemaEnv:s,validateName:a,opts:i,self:u}=n,{root:l}=s;if((r==="#"||r==="#/")&&o===l.baseId)return d();let c=Ih.resolveRef.call(u,l,o,r);if(c===void 0)throw new X$.default(n.opts.uriResolver,o,r);if(c instanceof Ih.SchemaEnv)return h(c);return f(c);function d(){if(s===l)return Bs(t,a,s,s.$async);let m=e.scopeValue("root",{ref:l});return Bs(t,(0,Fe._)`${m}.validate`,l,l.$async)}function h(m){let g=Ch(t,m);Bs(t,g,m,m.$async)}function f(m){let g=e.scopeValue("schema",i.code.source===!0?{ref:m,code:(0,Fe.stringify)(m)}:{ref:m}),y=e.name("valid"),v=t.subschema({schema:m,dataTypes:[],schemaPath:Fe.nil,topSchemaRef:g,errSchemaPath:r},y);t.mergeEvaluated(v),t.ok(y)}}};function Ch(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Fe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Er.getValidate=Ch;function Bs(t,e,r,n){let{gen:o,it:s}=t,{allErrors:a,schemaEnv:i,opts:u}=s,l=u.passContext?pn.default.this:Fe.nil;n?c():d();function c(){if(!i.$async)throw new Error("async schema referenced by sync schema");let m=o.let("valid");o.try(()=>{o.code((0,Fe._)`await ${(0,Eh.callValidateCode)(t,e,l)}`),f(e),a||o.assign(m,!0)},g=>{o.if((0,Fe._)`!(${g} instanceof ${s.ValidationError})`,()=>o.throw(g)),h(g),a||o.assign(m,!1)}),t.ok(m)}function d(){t.result((0,Eh.callValidateCode)(t,e,l),()=>f(e),()=>h(e))}function h(m){let g=(0,Fe._)`${m}.errors`;o.assign(pn.default.vErrors,(0,Fe._)`${pn.default.vErrors} === null ? ${g} : ${pn.default.vErrors}.concat(${g})`),o.assign(pn.default.errors,(0,Fe._)`${pn.default.vErrors}.length`)}function f(m){var g;if(!s.opts.unevaluated)return;let y=(g=r?.validate)===null||g===void 0?void 0:g.evaluated;if(s.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(s.props=Hs.mergeEvaluated.props(o,y.props,s.props));else{let v=o.var("props",(0,Fe._)`${m}.evaluated.props`);s.props=Hs.mergeEvaluated.props(o,v,s.props,Fe.Name)}if(s.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(s.items=Hs.mergeEvaluated.items(o,y.items,s.items));else{let v=o.var("items",(0,Fe._)`${m}.evaluated.items`);s.items=Hs.mergeEvaluated.items(o,v,s.items,Fe.Name)}}}Er.callRef=Bs;Er.default=Y$});var Nh=z(Yu=>{"use strict";Object.defineProperty(Yu,"__esModule",{value:!0});var Q$=Oh(),eS=Ah(),tS=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",Q$.default,eS.default];Yu.default=tS});var Mh=z(Qu=>{"use strict";Object.defineProperty(Qu,"__esModule",{value:!0});var Ws=F(),Yt=Ws.operators,Ks={maximum:{okStr:"<=",ok:Yt.LTE,fail:Yt.GT},minimum:{okStr:">=",ok:Yt.GTE,fail:Yt.LT},exclusiveMaximum:{okStr:"<",ok:Yt.LT,fail:Yt.GTE},exclusiveMinimum:{okStr:">",ok:Yt.GT,fail:Yt.LTE}},rS={message:({keyword:t,schemaCode:e})=>(0,Ws.str)`must be ${Ks[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ws._)`{comparison: ${Ks[t].okStr}, limit: ${e}}`},nS={keyword:Object.keys(Ks),type:"number",schemaType:"number",$data:!0,error:rS,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Ws._)`${r} ${Ks[e].fail} ${n} || isNaN(${r})`)}};Qu.default=nS});var Zh=z(el=>{"use strict";Object.defineProperty(el,"__esModule",{value:!0});var fo=F(),oS={message:({schemaCode:t})=>(0,fo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,fo._)`{multipleOf: ${t}}`},sS={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:oS,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,a=e.let("res"),i=s?(0,fo._)`Math.abs(Math.round(${a}) - ${a}) > 1e-${s}`:(0,fo._)`${a} !== parseInt(${a})`;t.fail$data((0,fo._)`(${n} === 0 || (${a} = ${r}/${n}, ${i}))`)}};el.default=sS});var qh=z(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});function Lh(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}tl.default=Lh;Lh.code='require("ajv/dist/runtime/ucs2length").default'});var Dh=z(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});var Ir=F(),aS=ee(),iS=qh(),cS={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Ir.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Ir._)`{limit: ${t}}`},uS={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:cS,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Ir.operators.GT:Ir.operators.LT,a=o.opts.unicode===!1?(0,Ir._)`${r}.length`:(0,Ir._)`${(0,aS.useFunc)(t.gen,iS.default)}(${r})`;t.fail$data((0,Ir._)`${a} ${s} ${n}`)}};rl.default=uS});var Uh=z(nl=>{"use strict";Object.defineProperty(nl,"__esModule",{value:!0});var lS=tt(),Gs=F(),dS={message:({schemaCode:t})=>(0,Gs.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Gs._)`{pattern: ${t}}`},pS={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:dS,code(t){let{data:e,$data:r,schema:n,schemaCode:o,it:s}=t,a=s.opts.unicodeRegExp?"u":"",i=r?(0,Gs._)`(new RegExp(${o}, ${a}))`:(0,lS.usePattern)(t,n);t.fail$data((0,Gs._)`!${i}.test(${e})`)}};nl.default=pS});var Jh=z(ol=>{"use strict";Object.defineProperty(ol,"__esModule",{value:!0});var ho=F(),mS={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}}`},fS={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:mS,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}`)}};ol.default=fS});var Fh=z(sl=>{"use strict";Object.defineProperty(sl,"__esModule",{value:!0});var go=tt(),yo=F(),hS=ee(),gS={message:({params:{missingProperty:t}})=>(0,yo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,yo._)`{missingProperty: ${t}}`},yS={keyword:"required",type:"object",schemaType:"array",$data:!0,error:gS,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:a}=t,{opts:i}=a;if(!s&&r.length===0)return;let u=r.length>=i.loopRequired;if(a.allErrors?l():c(),i.strictRequired){let f=t.parentSchema.properties,{definedProperties:m}=t.it;for(let g of r)if(f?.[g]===void 0&&!m.has(g)){let y=a.schemaEnv.baseId+a.errSchemaPath,v=`required property "${g}" is not defined at "${y}" (strictRequired)`;(0,hS.checkStrictMode)(a,v,a.opts.strictRequired)}}function l(){if(u||s)t.block$data(yo.nil,d);else for(let f of r)(0,go.checkReportMissingProp)(t,f)}function c(){let f=e.let("missing");if(u||s){let m=e.let("valid",!0);t.block$data(m,()=>h(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,i.ownProperties),()=>t.error())})}function h(f,m){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(m,(0,go.propertyInData)(e,o,f,i.ownProperties)),e.if((0,yo.not)(m),()=>{t.error(),e.break()})},yo.nil)}}};sl.default=yS});var Vh=z(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});var _o=F(),_S={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,_o.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,_o._)`{limit: ${t}}`},bS={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:_S,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?_o.operators.GT:_o.operators.LT;t.fail$data((0,_o._)`${r}.length ${o} ${n}`)}};al.default=bS});var Xs=z(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});var Hh=Ou();Hh.code='require("ajv/dist/runtime/equal").default';il.default=Hh});var Bh=z(ul=>{"use strict";Object.defineProperty(ul,"__esModule",{value:!0});var cl=no(),Te=F(),vS=ee(),wS=Xs(),kS={message:({params:{i:t,j:e}})=>(0,Te.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Te._)`{i: ${t}, j: ${e}}`},xS={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:kS,code(t){let{gen:e,data:r,$data:n,schema:o,parentSchema:s,schemaCode:a,it:i}=t;if(!n&&!o)return;let u=e.let("valid"),l=s.items?(0,cl.getSchemaTypes)(s.items):[];t.block$data(u,c,(0,Te._)`${a} === false`),t.ok(u);function c(){let m=e.let("i",(0,Te._)`${r}.length`),g=e.let("j");t.setParams({i:m,j:g}),e.assign(u,!0),e.if((0,Te._)`${m} > 1`,()=>(d()?h:f)(m,g))}function d(){return l.length>0&&!l.some(m=>m==="object"||m==="array")}function h(m,g){let y=e.name("item"),v=(0,cl.checkDataTypes)(l,y,i.opts.strictNumbers,cl.DataType.Wrong),w=e.const("indices",(0,Te._)`{}`);e.for((0,Te._)`;${m}--;`,()=>{e.let(y,(0,Te._)`${r}[${m}]`),e.if(v,(0,Te._)`continue`),l.length>1&&e.if((0,Te._)`typeof ${y} == "string"`,(0,Te._)`${y} += "_"`),e.if((0,Te._)`typeof ${w}[${y}] == "number"`,()=>{e.assign(g,(0,Te._)`${w}[${y}]`),t.error(),e.assign(u,!1).break()}).code((0,Te._)`${w}[${y}] = ${m}`)})}function f(m,g){let y=(0,vS.useFunc)(e,wS.default),v=e.name("outer");e.label(v).for((0,Te._)`;${m}--;`,()=>e.for((0,Te._)`${g} = ${m}; ${g}--;`,()=>e.if((0,Te._)`${y}(${r}[${m}], ${r}[${g}])`,()=>{t.error(),e.assign(u,!1).break(v)})))}}};ul.default=xS});var Wh=z(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});var ll=F(),$S=ee(),SS=Xs(),zS={message:"must be equal to constant",params:({schemaCode:t})=>(0,ll._)`{allowedValue: ${t}}`},TS={keyword:"const",$data:!0,error:zS,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,ll._)`!${(0,$S.useFunc)(e,SS.default)}(${r}, ${o})`):t.fail((0,ll._)`${s} !== ${r}`)}};dl.default=TS});var Kh=z(pl=>{"use strict";Object.defineProperty(pl,"__esModule",{value:!0});var bo=F(),PS=ee(),jS=Xs(),RS={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,bo._)`{allowedValues: ${t}}`},OS={keyword:"enum",schemaType:"array",$data:!0,error:RS,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:a}=t;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let i=o.length>=a.opts.loopEnum,u,l=()=>u??(u=(0,PS.useFunc)(e,jS.default)),c;if(i||n)c=e.let("valid"),t.block$data(c,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let f=e.const("vSchema",s);c=(0,bo.or)(...o.map((m,g)=>h(f,g)))}t.pass(c);function d(){e.assign(c,!1),e.forOf("v",s,f=>e.if((0,bo._)`${l()}(${r}, ${f})`,()=>e.assign(c,!0).break()))}function h(f,m){let g=o[m];return typeof g=="object"&&g!==null?(0,bo._)`${l()}(${r}, ${f}[${m}])`:(0,bo._)`${r} === ${g}`}}};pl.default=OS});var Gh=z(ml=>{"use strict";Object.defineProperty(ml,"__esModule",{value:!0});var ES=Mh(),IS=Zh(),CS=Dh(),AS=Uh(),NS=Jh(),MS=Fh(),ZS=Vh(),LS=Bh(),qS=Wh(),DS=Kh(),US=[ES.default,IS.default,CS.default,AS.default,NS.default,MS.default,ZS.default,LS.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},qS.default,DS.default];ml.default=US});var hl=z(vo=>{"use strict";Object.defineProperty(vo,"__esModule",{value:!0});vo.validateAdditionalItems=void 0;var Cr=F(),fl=ee(),JS={message:({params:{len:t}})=>(0,Cr.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Cr._)`{limit: ${t}}`},FS={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:JS,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,fl.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Xh(t,n)}};function Xh(t,e){let{gen:r,schema:n,data:o,keyword:s,it:a}=t;a.items=!0;let i=r.const("len",(0,Cr._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Cr._)`${i} <= ${e.length}`);else if(typeof n=="object"&&!(0,fl.alwaysValidSchema)(a,n)){let l=r.var("valid",(0,Cr._)`${i} <= ${e.length}`);r.if((0,Cr.not)(l),()=>u(l)),t.ok(l)}function u(l){r.forRange("i",e.length,i,c=>{t.subschema({keyword:s,dataProp:c,dataPropType:fl.Type.Num},l),a.allErrors||r.if((0,Cr.not)(l),()=>r.break())})}}vo.validateAdditionalItems=Xh;vo.default=FS});var gl=z(wo=>{"use strict";Object.defineProperty(wo,"__esModule",{value:!0});wo.validateTuple=void 0;var Yh=F(),Ys=ee(),VS=tt(),HS={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Qh(t,"additionalItems",e);r.items=!0,!(0,Ys.alwaysValidSchema)(r,e)&&t.ok((0,VS.validateArray)(t))}};function Qh(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:a,it:i}=t;c(o),i.opts.unevaluated&&r.length&&i.items!==!0&&(i.items=Ys.mergeEvaluated.items(n,r.length,i.items));let u=n.name("valid"),l=n.const("len",(0,Yh._)`${s}.length`);r.forEach((d,h)=>{(0,Ys.alwaysValidSchema)(i,d)||(n.if((0,Yh._)`${l} > ${h}`,()=>t.subschema({keyword:a,schemaProp:h,dataProp:h},u)),t.ok(u))});function c(d){let{opts:h,errSchemaPath:f}=i,m=r.length,g=m===d.minItems&&(m===d.maxItems||d[e]===!1);if(h.strictTuples&&!g){let y=`"${a}" is ${m}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,Ys.checkStrictMode)(i,y,h.strictTuples)}}}wo.validateTuple=Qh;wo.default=HS});var eg=z(yl=>{"use strict";Object.defineProperty(yl,"__esModule",{value:!0});var BS=gl(),WS={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,BS.validateTuple)(t,"items")};yl.default=WS});var rg=z(_l=>{"use strict";Object.defineProperty(_l,"__esModule",{value:!0});var tg=F(),KS=ee(),GS=tt(),XS=hl(),YS={message:({params:{len:t}})=>(0,tg.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,tg._)`{limit: ${t}}`},QS={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:YS,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,KS.alwaysValidSchema)(n,e)&&(o?(0,XS.validateAdditionalItems)(t,o):t.ok((0,GS.validateArray)(t)))}};_l.default=QS});var ng=z(bl=>{"use strict";Object.defineProperty(bl,"__esModule",{value:!0});var nt=F(),Qs=ee(),e1={message:({params:{min:t,max:e}})=>e===void 0?(0,nt.str)`must contain at least ${t} valid item(s)`:(0,nt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,nt._)`{minContains: ${t}}`:(0,nt._)`{minContains: ${t}, maxContains: ${e}}`},t1={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:e1,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,a,i,{minContains:u,maxContains:l}=n;s.opts.next?(a=u===void 0?1:u,i=l):a=1;let c=e.const("len",(0,nt._)`${o}.length`);if(t.setParams({min:a,max:i}),i===void 0&&a===0){(0,Qs.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(i!==void 0&&a>i){(0,Qs.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Qs.alwaysValidSchema)(s,r)){let g=(0,nt._)`${c} >= ${a}`;i!==void 0&&(g=(0,nt._)`${g} && ${c} <= ${i}`),t.pass(g);return}s.items=!0;let d=e.name("valid");i===void 0&&a===1?f(d,()=>e.if(d,()=>e.break())):a===0?(e.let(d,!0),i!==void 0&&e.if((0,nt._)`${o}.length > 0`,h)):(e.let(d,!1),h()),t.result(d,()=>t.reset());function h(){let g=e.name("_valid"),y=e.let("count",0);f(g,()=>e.if(g,()=>m(y)))}function f(g,y){e.forRange("i",0,c,v=>{t.subschema({keyword:"contains",dataProp:v,dataPropType:Qs.Type.Num,compositeRule:!0},g),y()})}function m(g){e.code((0,nt._)`${g}++`),i===void 0?e.if((0,nt._)`${g} >= ${a}`,()=>e.assign(d,!0).break()):(e.if((0,nt._)`${g} > ${i}`,()=>e.assign(d,!1).break()),a===1?e.assign(d,!0):e.if((0,nt._)`${g} >= ${a}`,()=>e.assign(d,!0)))}}};bl.default=t1});var ag=z(vt=>{"use strict";Object.defineProperty(vt,"__esModule",{value:!0});vt.validateSchemaDeps=vt.validatePropertyDeps=vt.error=void 0;var vl=F(),r1=ee(),ko=tt();vt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,vl.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,vl._)`{property: ${t},
|
|
3
|
+
var b_=Object.create;var $i=Object.defineProperty;var v_=Object.getOwnPropertyDescriptor;var w_=Object.getOwnPropertyNames;var k_=Object.getPrototypeOf,x_=Object.prototype.hasOwnProperty;var z=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Si=(t,e)=>{for(var r in e)$i(t,r,{get:e[r],enumerable:!0})},$_=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of w_(e))!x_.call(t,o)&&o!==r&&$i(t,o,{get:()=>e[o],enumerable:!(n=v_(e,o))||n.enumerable});return t};var $d=(t,e,r)=>(r=t!=null?b_(k_(t)):{},$_(e||!t||!t.__esModule?$i(r,"default",{value:t,enumerable:!0}):r,t));var Yn=z(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});Q.regexpCode=Q.getEsmExportName=Q.getProperty=Q.safeStringify=Q.stringify=Q.strConcat=Q.addCodeArg=Q.str=Q._=Q.nil=Q._Code=Q.Name=Q.IDENTIFIER=Q._CodeOrName=void 0;var Gn=class{};Q._CodeOrName=Gn;Q.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var zr=class extends Gn{constructor(e){if(super(),!Q.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}}};Q.Name=zr;var tt=class extends Gn{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),{})}};Q._Code=tt;Q.nil=new tt("");function wm(t,...e){let r=[t[0]],n=0;for(;n<e.length;)au(r,e[n]),r.push(t[++n]);return new tt(r)}Q._=wm;var iu=new tt("+");function km(t,...e){let r=[Xn(t[0])],n=0;for(;n<e.length;)r.push(iu),au(r,e[n]),r.push(iu,Xn(t[++n]));return kx(r),new tt(r)}Q.str=km;function au(t,e){e instanceof tt?t.push(...e._items):e instanceof zr?t.push(e):t.push(Sx(e))}Q.addCodeArg=au;function kx(t){let e=1;for(;e<t.length-1;){if(t[e]===iu){let r=xx(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function xx(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 $x(t,e){return e.emptyStr()?t:t.emptyStr()?e:km`${t}${e}`}Q.strConcat=$x;function Sx(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Xn(Array.isArray(t)?t.join(","):t)}function zx(t){return new tt(Xn(t))}Q.stringify=zx;function Xn(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}Q.safeStringify=Xn;function Tx(t){return typeof t=="string"&&Q.IDENTIFIER.test(t)?new tt(`.${t}`):wm`[${t}]`}Q.getProperty=Tx;function Px(t){if(typeof t=="string"&&Q.IDENTIFIER.test(t))return new tt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}Q.getEsmExportName=Px;function jx(t){return new tt(t.toString())}Q.regexpCode=jx});var lu=z(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.ValueScope=qe.ValueScopeName=qe.Scope=qe.varKinds=qe.UsedValueState=void 0;var Ue=Yn(),cu=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Rs;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Rs||(qe.UsedValueState=Rs={}));qe.varKinds={const:new Ue.Name("const"),let:new Ue.Name("let"),var:new Ue.Name("var")};var Os=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ue.Name?e:this.name(e)}name(e){return new Ue.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}}};qe.Scope=Os;var Is=class extends Ue.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ue._)`.${new Ue.Name(r)}[${n}]`}};qe.ValueScopeName=Is;var Rx=(0,Ue._)`\n`,uu=class extends Os{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?Rx:Ue.nil}}get(){return this._scope}name(e){return new Is(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 c=a.get(i);if(c)return c}else a=this._values[s]=new Map;a.set(i,o);let u=this._scope[s]||(this._scope[s]=[]),l=u.length;return u[l]=r.ref,o.setValue(r,{property:s,itemIndex:l}),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,Ue._)`${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=Ue.nil;for(let i in e){let a=e[i];if(!a)continue;let u=n[i]=n[i]||new Map;a.forEach(l=>{if(u.has(l))return;u.set(l,Rs.Started);let c=r(l);if(c){let d=this.opts.es5?qe.varKinds.var:qe.varKinds.const;s=(0,Ue._)`${s}${d} ${l} = ${c};${this.opts._n}`}else if(c=o?.(l))s=(0,Ue._)`${s}${c}${this.opts._n}`;else throw new cu(l);u.set(l,Rs.Completed)})}return s}};qe.ValueScope=uu});var F=z(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.or=V.and=V.not=V.CodeGen=V.operators=V.varKinds=V.ValueScopeName=V.ValueScope=V.Scope=V.Name=V.regexpCode=V.stringify=V.getProperty=V.nil=V.strConcat=V.str=V._=void 0;var X=Yn(),ut=lu(),Bt=Yn();Object.defineProperty(V,"_",{enumerable:!0,get:function(){return Bt._}});Object.defineProperty(V,"str",{enumerable:!0,get:function(){return Bt.str}});Object.defineProperty(V,"strConcat",{enumerable:!0,get:function(){return Bt.strConcat}});Object.defineProperty(V,"nil",{enumerable:!0,get:function(){return Bt.nil}});Object.defineProperty(V,"getProperty",{enumerable:!0,get:function(){return Bt.getProperty}});Object.defineProperty(V,"stringify",{enumerable:!0,get:function(){return Bt.stringify}});Object.defineProperty(V,"regexpCode",{enumerable:!0,get:function(){return Bt.regexpCode}});Object.defineProperty(V,"Name",{enumerable:!0,get:function(){return Bt.Name}});var Ns=lu();Object.defineProperty(V,"Scope",{enumerable:!0,get:function(){return Ns.Scope}});Object.defineProperty(V,"ValueScope",{enumerable:!0,get:function(){return Ns.ValueScope}});Object.defineProperty(V,"ValueScopeName",{enumerable:!0,get:function(){return Ns.ValueScopeName}});Object.defineProperty(V,"varKinds",{enumerable:!0,get:function(){return Ns.varKinds}});V.operators={GT:new X._Code(">"),GTE:new X._Code(">="),LT:new X._Code("<"),LTE:new X._Code("<="),EQ:new X._Code("==="),NEQ:new X._Code("!=="),NOT:new X._Code("!"),OR:new X._Code("||"),AND:new X._Code("&&"),ADD:new X._Code("+")};var Ot=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},du=class extends Ot{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?ut.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=on(this.rhs,e,r)),this}get names(){return this.rhs instanceof X._CodeOrName?this.rhs.names:{}}},Es=class extends Ot{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 X.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=on(this.rhs,e,r),this}get names(){let e=this.lhs instanceof X.Name?{}:{...this.lhs.names};return As(e,this.rhs)}},pu=class extends Es{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},fu=class extends Ot{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},mu=class extends Ot{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},hu=class extends Ot{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},gu=class extends Ot{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=on(this.code,e,r),this}get names(){return this.code instanceof X._CodeOrName?this.code.names:{}}},Qn=class extends Ot{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)||(Ox(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>jr(e,r.names),{})}},It=class extends Qn{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},yu=class extends Qn{},nn=class extends It{};nn.kind="else";var Tr=class t extends It{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 nn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(xm(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=on(this.condition,e,r),this}get names(){let e=super.names;return As(e,this.condition),this.else&&jr(e,this.else.names),e}};Tr.kind="if";var Pr=class extends It{};Pr.kind="for";var _u=class extends Pr{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=on(this.iteration,e,r),this}get names(){return jr(super.names,this.iteration.names)}},bu=class extends Pr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?ut.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=As(super.names,this.from);return As(e,this.to)}},Cs=class extends Pr{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=on(this.iterable,e,r),this}get names(){return jr(super.names,this.iterable.names)}},eo=class extends It{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)}};eo.kind="func";var to=class extends Qn{render(e){return"return "+super.render(e)}};to.kind="return";var vu=class extends It{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&&jr(e,this.catch.names),this.finally&&jr(e,this.finally.names),e}},ro=class extends It{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};ro.kind="catch";var no=class extends It{render(e){return"finally"+super.render(e)}};no.kind="finally";var wu=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
4
|
+
`:""},this._extScope=e,this._scope=new ut.Scope({parent:e}),this._nodes=[new yu]}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 du(e,s,n)),s}const(e,r,n){return this._def(ut.varKinds.const,e,r,n)}let(e,r,n){return this._def(ut.varKinds.let,e,r,n)}var(e,r,n){return this._def(ut.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Es(e,r,n))}add(e,r){return this._leafNode(new pu(e,V.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==X.nil&&this._leafNode(new gu(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,X.addCodeArg)(r,o));return r.push("}"),new X._Code(r)}if(e,r,n){if(this._blockNode(new Tr(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 Tr(e))}else(){return this._elseNode(new nn)}endIf(){return this._endBlockNode(Tr,nn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new _u(e),r)}forRange(e,r,n,o,s=this.opts.es5?ut.varKinds.var:ut.varKinds.let){let i=this._scope.toName(e);return this._for(new bu(s,i,r,n),()=>o(i))}forOf(e,r,n,o=ut.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof X.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,X._)`${i}.length`,a=>{this.var(s,(0,X._)`${i}[${a}]`),n(s)})}return this._for(new Cs("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?ut.varKinds.var:ut.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,X._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Cs("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Pr)}label(e){return this._leafNode(new fu(e))}break(e){return this._leafNode(new mu(e))}return(e){let r=new to;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(to)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new vu;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new ro(s),r(s)}return n&&(this._currNode=o.finally=new no,this.code(n)),this._endBlockNode(ro,no)}throw(e){return this._leafNode(new hu(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=X.nil,n,o){return this._blockNode(new eo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(eo)}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 Tr))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}};V.CodeGen=wu;function jr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function As(t,e){return e instanceof X._CodeOrName?jr(t,e.names):t}function on(t,e,r){if(t instanceof X.Name)return n(t);if(!o(t))return t;return new X._Code(t._items.reduce((s,i)=>(i instanceof X.Name&&(i=n(i)),i instanceof X._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 X._Code&&s._items.some(i=>i instanceof X.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function Ox(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function xm(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,X._)`!${ku(t)}`}V.not=xm;var Ix=$m(V.operators.AND);function Ex(...t){return t.reduce(Ix)}V.and=Ex;var Cx=$m(V.operators.OR);function Ax(...t){return t.reduce(Cx)}V.or=Ax;function $m(t){return(e,r)=>e===X.nil?r:r===X.nil?e:(0,X._)`${ku(e)} ${t} ${ku(r)}`}function ku(t){return t instanceof X.Name?t:(0,X._)`(${t})`}});var ee=z(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.checkStrictMode=H.getErrorPath=H.Type=H.useFunc=H.setEvaluated=H.evaluatedPropsToName=H.mergeEvaluated=H.eachItem=H.unescapeJsonPointer=H.escapeJsonPointer=H.escapeFragment=H.unescapeFragment=H.schemaRefOrVal=H.schemaHasRulesButRef=H.schemaHasRules=H.checkUnknownRules=H.alwaysValidSchema=H.toHash=void 0;var se=F(),Nx=Yn();function Mx(t){let e={};for(let r of t)e[r]=!0;return e}H.toHash=Mx;function Zx(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Tm(t,e),!Pm(e,t.self.RULES.all))}H.alwaysValidSchema=Zx;function Tm(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]||Om(t,`unknown keyword: "${s}"`)}H.checkUnknownRules=Tm;function Pm(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}H.schemaHasRules=Pm;function Lx(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}H.schemaHasRulesButRef=Lx;function Dx({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,se._)`${r}`}return(0,se._)`${t}${e}${(0,se.getProperty)(n)}`}H.schemaRefOrVal=Dx;function Ux(t){return jm(decodeURIComponent(t))}H.unescapeFragment=Ux;function qx(t){return encodeURIComponent($u(t))}H.escapeFragment=qx;function $u(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}H.escapeJsonPointer=$u;function jm(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}H.unescapeJsonPointer=jm;function Jx(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}H.eachItem=Jx;function Sm({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let u=i===void 0?s:i instanceof se.Name?(s instanceof se.Name?t(o,s,i):e(o,s,i),i):s instanceof se.Name?(e(o,i,s),s):r(s,i);return a===se.Name&&!(u instanceof se.Name)?n(o,u):u}}H.mergeEvaluated={props:Sm({mergeNames:(t,e,r)=>t.if((0,se._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,se._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,se._)`${r} || {}`).code((0,se._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,se._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,se._)`${r} || {}`),Su(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Rm}),items:Sm({mergeNames:(t,e,r)=>t.if((0,se._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,se._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,se._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,se._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Rm(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,se._)`{}`);return e!==void 0&&Su(t,r,e),r}H.evaluatedPropsToName=Rm;function Su(t,e,r){Object.keys(r).forEach(n=>t.assign((0,se._)`${e}${(0,se.getProperty)(n)}`,!0))}H.setEvaluated=Su;var zm={};function Fx(t,e){return t.scopeValue("func",{ref:e,code:zm[e.code]||(zm[e.code]=new Nx._Code(e.code))})}H.useFunc=Fx;var xu;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(xu||(H.Type=xu={}));function Vx(t,e,r){if(t instanceof se.Name){let n=e===xu.Num;return r?n?(0,se._)`"[" + ${t} + "]"`:(0,se._)`"['" + ${t} + "']"`:n?(0,se._)`"/" + ${t}`:(0,se._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,se.getProperty)(t).toString():"/"+$u(t)}H.getErrorPath=Vx;function Om(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}H.checkStrictMode=Om});var Et=z(zu=>{"use strict";Object.defineProperty(zu,"__esModule",{value:!0});var je=F(),Hx={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")};zu.default=Hx});var oo=z(Re=>{"use strict";Object.defineProperty(Re,"__esModule",{value:!0});Re.extendErrors=Re.resetErrorsCount=Re.reportExtraError=Re.reportError=Re.keyword$DataError=Re.keywordError=void 0;var Y=F(),Ms=ee(),Ae=Et();Re.keywordError={message:({keyword:t})=>(0,Y.str)`must pass "${t}" keyword validation`};Re.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Y.str)`"${t}" keyword must be ${e} ($data)`:(0,Y.str)`"${t}" keyword is invalid ($data)`};function Bx(t,e=Re.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,u=Cm(t,e,r);n??(i||a)?Im(s,u):Em(o,(0,Y._)`[${u}]`)}Re.reportError=Bx;function Wx(t,e=Re.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Cm(t,e,r);Im(o,a),s||i||Em(n,Ae.default.vErrors)}Re.reportExtraError=Wx;function Kx(t,e){t.assign(Ae.default.errors,e),t.if((0,Y._)`${Ae.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Y._)`${Ae.default.vErrors}.length`,e),()=>t.assign(Ae.default.vErrors,null)))}Re.resetErrorsCount=Kx;function Gx({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,Ae.default.errors,a=>{t.const(i,(0,Y._)`${Ae.default.vErrors}[${a}]`),t.if((0,Y._)`${i}.instancePath === undefined`,()=>t.assign((0,Y._)`${i}.instancePath`,(0,Y.strConcat)(Ae.default.instancePath,s.errorPath))),t.assign((0,Y._)`${i}.schemaPath`,(0,Y.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,Y._)`${i}.schema`,r),t.assign((0,Y._)`${i}.data`,n))})}Re.extendErrors=Gx;function Im(t,e){let r=t.const("err",e);t.if((0,Y._)`${Ae.default.vErrors} === null`,()=>t.assign(Ae.default.vErrors,(0,Y._)`[${r}]`),(0,Y._)`${Ae.default.vErrors}.push(${r})`),t.code((0,Y._)`${Ae.default.errors}++`)}function Em(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,Y._)`new ${t.ValidationError}(${e})`):(r.assign((0,Y._)`${n}.errors`,e),r.return(!1))}var Rr={keyword:new Y.Name("keyword"),schemaPath:new Y.Name("schemaPath"),params:new Y.Name("params"),propertyName:new Y.Name("propertyName"),message:new Y.Name("message"),schema:new Y.Name("schema"),parentSchema:new Y.Name("parentSchema")};function Cm(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Y._)`{}`:Xx(t,e,r)}function Xx(t,e,r={}){let{gen:n,it:o}=t,s=[Yx(o,r),Qx(t,r)];return e0(t,e,s),n.object(...s)}function Yx({errorPath:t},{instancePath:e}){let r=e?(0,Y.str)`${t}${(0,Ms.getErrorPath)(e,Ms.Type.Str)}`:t;return[Ae.default.instancePath,(0,Y.strConcat)(Ae.default.instancePath,r)]}function Qx({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,Y.str)`${e}/${t}`;return r&&(o=(0,Y.str)`${o}${(0,Ms.getErrorPath)(r,Ms.Type.Str)}`),[Rr.schemaPath,o]}function e0(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:u,propertyName:l,topSchemaRef:c,schemaPath:d}=a;n.push([Rr.keyword,o],[Rr.params,typeof e=="function"?e(t):e||(0,Y._)`{}`]),u.messages&&n.push([Rr.message,typeof r=="function"?r(t):r]),u.verbose&&n.push([Rr.schema,i],[Rr.parentSchema,(0,Y._)`${c}${d}`],[Ae.default.data,s]),l&&n.push([Rr.propertyName,l])}});var Nm=z(sn=>{"use strict";Object.defineProperty(sn,"__esModule",{value:!0});sn.boolOrEmptySchema=sn.topBoolOrEmptySchema=void 0;var t0=oo(),r0=F(),n0=Et(),o0={message:"boolean schema is false"};function s0(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Am(t,!1):typeof r=="object"&&r.$async===!0?e.return(n0.default.data):(e.assign((0,r0._)`${n}.errors`,null),e.return(!0))}sn.topBoolOrEmptySchema=s0;function i0(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Am(t)):r.var(e,!0)}sn.boolOrEmptySchema=i0;function Am(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,t0.reportError)(o,o0,void 0,e)}});var Tu=z(an=>{"use strict";Object.defineProperty(an,"__esModule",{value:!0});an.getRules=an.isJSONType=void 0;var a0=["string","number","integer","boolean","null","object","array"],c0=new Set(a0);function u0(t){return typeof t=="string"&&c0.has(t)}an.isJSONType=u0;function l0(){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:{}}}an.getRules=l0});var Pu=z(Wt=>{"use strict";Object.defineProperty(Wt,"__esModule",{value:!0});Wt.shouldUseRule=Wt.shouldUseGroup=Wt.schemaHasRulesForType=void 0;function d0({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Mm(t,n)}Wt.schemaHasRulesForType=d0;function Mm(t,e){return e.rules.some(r=>Zm(t,r))}Wt.shouldUseGroup=Mm;function Zm(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))}Wt.shouldUseRule=Zm});var so=z(Oe=>{"use strict";Object.defineProperty(Oe,"__esModule",{value:!0});Oe.reportTypeError=Oe.checkDataTypes=Oe.checkDataType=Oe.coerceAndCheckDataType=Oe.getJSONTypes=Oe.getSchemaTypes=Oe.DataType=void 0;var p0=Tu(),f0=Pu(),m0=oo(),q=F(),Lm=ee(),cn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(cn||(Oe.DataType=cn={}));function h0(t){let e=Dm(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}Oe.getSchemaTypes=h0;function Dm(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(p0.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Oe.getJSONTypes=Dm;function g0(t,e){let{gen:r,data:n,opts:o}=t,s=y0(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,f0.schemaHasRulesForType)(t,e[0]));if(i){let a=Ru(e,n,o.strictNumbers,cn.Wrong);r.if(a,()=>{s.length?_0(t,e,s):Ou(t)})}return i}Oe.coerceAndCheckDataType=g0;var Um=new Set(["string","number","integer","boolean","null"]);function y0(t,e){return e?t.filter(r=>Um.has(r)||e==="array"&&r==="array"):[]}function _0(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,q._)`typeof ${o}`),a=n.let("coerced",(0,q._)`undefined`);s.coerceTypes==="array"&&n.if((0,q._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,q._)`${o}[0]`).assign(i,(0,q._)`typeof ${o}`).if(Ru(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,q._)`${a} !== undefined`);for(let l of r)(Um.has(l)||l==="array"&&s.coerceTypes==="array")&&u(l);n.else(),Ou(t),n.endIf(),n.if((0,q._)`${a} !== undefined`,()=>{n.assign(o,a),b0(t,a)});function u(l){switch(l){case"string":n.elseIf((0,q._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,q._)`"" + ${o}`).elseIf((0,q._)`${o} === null`).assign(a,(0,q._)`""`);return;case"number":n.elseIf((0,q._)`${i} == "boolean" || ${o} === null
|
|
5
|
+
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,q._)`+${o}`);return;case"integer":n.elseIf((0,q._)`${i} === "boolean" || ${o} === null
|
|
6
|
+
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,q._)`+${o}`);return;case"boolean":n.elseIf((0,q._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,q._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,q._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,q._)`${i} === "string" || ${i} === "number"
|
|
7
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,q._)`[${o}]`)}}}function b0({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,q._)`${e} !== undefined`,()=>t.assign((0,q._)`${e}[${r}]`,n))}function ju(t,e,r,n=cn.Correct){let o=n===cn.Correct?q.operators.EQ:q.operators.NEQ,s;switch(t){case"null":return(0,q._)`${e} ${o} null`;case"array":s=(0,q._)`Array.isArray(${e})`;break;case"object":s=(0,q._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,q._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,q._)`typeof ${e} ${o} ${t}`}return n===cn.Correct?s:(0,q.not)(s);function i(a=q.nil){return(0,q.and)((0,q._)`typeof ${e} == "number"`,a,r?(0,q._)`isFinite(${e})`:q.nil)}}Oe.checkDataType=ju;function Ru(t,e,r,n){if(t.length===1)return ju(t[0],e,r,n);let o,s=(0,Lm.toHash)(t);if(s.array&&s.object){let i=(0,q._)`typeof ${e} != "object"`;o=s.null?i:(0,q._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=q.nil;s.number&&delete s.integer;for(let i in s)o=(0,q.and)(o,ju(i,e,r,n));return o}Oe.checkDataTypes=Ru;var v0={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,q._)`{type: ${t}}`:(0,q._)`{type: ${e}}`};function Ou(t){let e=w0(t);(0,m0.reportError)(e,v0)}Oe.reportTypeError=Ou;function w0(t){let{gen:e,data:r,schema:n}=t,o=(0,Lm.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Jm=z(Zs=>{"use strict";Object.defineProperty(Zs,"__esModule",{value:!0});Zs.assignDefaults=void 0;var un=F(),k0=ee();function x0(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)qm(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>qm(t,s,o.default))}Zs.assignDefaults=x0;function qm(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,un._)`${s}${(0,un.getProperty)(e)}`;if(o){(0,k0.checkStrictMode)(t,`default is ignored for: ${a}`);return}let u=(0,un._)`${a} === undefined`;i.useDefaults==="empty"&&(u=(0,un._)`${u} || ${a} === null || ${a} === ""`),n.if(u,(0,un._)`${a} = ${(0,un.stringify)(r)}`)}});var rt=z(oe=>{"use strict";Object.defineProperty(oe,"__esModule",{value:!0});oe.validateUnion=oe.validateArray=oe.usePattern=oe.callValidateCode=oe.schemaProperties=oe.allSchemaProperties=oe.noPropertyInData=oe.propertyInData=oe.isOwnProperty=oe.hasPropFunc=oe.reportMissingProp=oe.checkMissingProp=oe.checkReportMissingProp=void 0;var le=F(),Iu=ee(),Kt=Et(),$0=ee();function S0(t,e){let{gen:r,data:n,it:o}=t;r.if(Cu(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,le._)`${e}`},!0),t.error()})}oe.checkReportMissingProp=S0;function z0({gen:t,data:e,it:{opts:r}},n,o){return(0,le.or)(...n.map(s=>(0,le.and)(Cu(t,e,s,r.ownProperties),(0,le._)`${o} = ${s}`)))}oe.checkMissingProp=z0;function T0(t,e){t.setParams({missingProperty:e},!0),t.error()}oe.reportMissingProp=T0;function Fm(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,le._)`Object.prototype.hasOwnProperty`})}oe.hasPropFunc=Fm;function Eu(t,e,r){return(0,le._)`${Fm(t)}.call(${e}, ${r})`}oe.isOwnProperty=Eu;function P0(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} !== undefined`;return n?(0,le._)`${o} && ${Eu(t,e,r)}`:o}oe.propertyInData=P0;function Cu(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} === undefined`;return n?(0,le.or)(o,(0,le.not)(Eu(t,e,r))):o}oe.noPropertyInData=Cu;function Vm(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}oe.allSchemaProperties=Vm;function j0(t,e){return Vm(e).filter(r=>!(0,Iu.alwaysValidSchema)(t,e[r]))}oe.schemaProperties=j0;function R0({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,u,l){let c=l?(0,le._)`${t}, ${e}, ${n}${o}`:e,d=[[Kt.default.instancePath,(0,le.strConcat)(Kt.default.instancePath,s)],[Kt.default.parentData,i.parentData],[Kt.default.parentDataProperty,i.parentDataProperty],[Kt.default.rootData,Kt.default.rootData]];i.opts.dynamicRef&&d.push([Kt.default.dynamicAnchors,Kt.default.dynamicAnchors]);let g=(0,le._)`${c}, ${r.object(...d)}`;return u!==le.nil?(0,le._)`${a}.call(${u}, ${g})`:(0,le._)`${a}(${g})`}oe.callValidateCode=R0;var O0=(0,le._)`new RegExp`;function I0({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,le._)`${o.code==="new RegExp"?O0:(0,$0.useFunc)(t,o)}(${r}, ${n})`})}oe.usePattern=I0;function E0(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 u=e.const("len",(0,le._)`${r}.length`);e.forRange("i",0,u,l=>{t.subschema({keyword:n,dataProp:l,dataPropType:Iu.Type.Num},s),e.if((0,le.not)(s),a)})}}oe.validateArray=E0;function C0(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(u=>(0,Iu.alwaysValidSchema)(o,u))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((u,l)=>{let c=t.subschema({keyword:n,schemaProp:l,compositeRule:!0},a);e.assign(i,(0,le._)`${i} || ${a}`),t.mergeValidEvaluated(c,a)||e.if((0,le.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}oe.validateUnion=C0});var Wm=z(_t=>{"use strict";Object.defineProperty(_t,"__esModule",{value:!0});_t.validateKeywordUsage=_t.validSchemaType=_t.funcKeywordCode=_t.macroKeywordCode=void 0;var Ne=F(),Or=Et(),A0=rt(),N0=oo();function M0(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),u=Bm(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let l=r.name("valid");t.subschema({schema:a,schemaPath:Ne.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:u,compositeRule:!0},l),t.pass(l,()=>t.error(!0))}_t.macroKeywordCode=M0;function Z0(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:u}=t;D0(u,e);let l=!a&&e.compile?e.compile.call(u.self,s,i,u):e.validate,c=Bm(n,o,l),d=n.let("valid");t.block$data(d,g),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function g(){if(e.errors===!1)m(),e.modifying&&Hm(t),y(()=>t.error());else{let v=e.async?h():f();e.modifying&&Hm(t),y(()=>L0(t,v))}}function h(){let v=n.let("ruleErrs",null);return n.try(()=>m((0,Ne._)`await `),w=>n.assign(d,!1).if((0,Ne._)`${w} instanceof ${u.ValidationError}`,()=>n.assign(v,(0,Ne._)`${w}.errors`),()=>n.throw(w))),v}function f(){let v=(0,Ne._)`${c}.errors`;return n.assign(v,null),m(Ne.nil),v}function m(v=e.async?(0,Ne._)`await `:Ne.nil){let w=u.opts.passContext?Or.default.this:Or.default.self,k=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Ne._)`${v}${(0,A0.callValidateCode)(t,c,w,k)}`,e.modifying)}function y(v){var w;n.if((0,Ne.not)((w=e.valid)!==null&&w!==void 0?w:d),v)}}_t.funcKeywordCode=Z0;function Hm(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Ne._)`${n.parentData}[${n.parentDataProperty}]`))}function L0(t,e){let{gen:r}=t;r.if((0,Ne._)`Array.isArray(${e})`,()=>{r.assign(Or.default.vErrors,(0,Ne._)`${Or.default.vErrors} === null ? ${e} : ${Or.default.vErrors}.concat(${e})`).assign(Or.default.errors,(0,Ne._)`${Or.default.vErrors}.length`),(0,N0.extendErrors)(t)},()=>t.error())}function D0({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Bm(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,Ne.stringify)(r)})}function U0(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")}_t.validSchemaType=U0;function q0({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 u=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(u);else throw new Error(u)}}_t.validateKeywordUsage=q0});var Gm=z(Gt=>{"use strict";Object.defineProperty(Gt,"__esModule",{value:!0});Gt.extendSubschemaMode=Gt.extendSubschemaData=Gt.getSubschema=void 0;var bt=F(),Km=ee();function J0(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,bt._)`${t.schemaPath}${(0,bt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,bt._)`${t.schemaPath}${(0,bt.getProperty)(e)}${(0,bt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Km.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')}Gt.getSubschema=J0;function F0(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:l,dataPathArr:c,opts:d}=e,g=a.let("data",(0,bt._)`${e.data}${(0,bt.getProperty)(r)}`,!0);u(g),t.errorPath=(0,bt.str)`${l}${(0,Km.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,bt._)`${r}`,t.dataPathArr=[...c,t.parentDataProperty]}if(o!==void 0){let l=o instanceof bt.Name?o:a.let("data",o,!0);u(l),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function u(l){t.data=l,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,l]}}Gt.extendSubschemaData=F0;function V0(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}Gt.extendSubschemaMode=V0});var Au=z((jC,Xm)=>{"use strict";Xm.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 Qm=z((RC,Ym)=>{"use strict";var Xt=Ym.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(){};Ls(e,n,o,t,"",t)};Xt.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Xt.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Xt.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Xt.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 Ls(t,e,r,n,o,s,i,a,u,l){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,u,l);for(var c in n){var d=n[c];if(Array.isArray(d)){if(c in Xt.arrayKeywords)for(var g=0;g<d.length;g++)Ls(t,e,r,d[g],o+"/"+c+"/"+g,s,o,c,n,g)}else if(c in Xt.propsKeywords){if(d&&typeof d=="object")for(var h in d)Ls(t,e,r,d[h],o+"/"+c+"/"+H0(h),s,o,c,n,h)}else(c in Xt.keywords||t.allKeys&&!(c in Xt.skipKeywords))&&Ls(t,e,r,d,o+"/"+c,s,o,c,n)}r(n,o,s,i,a,u,l)}}function H0(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var io=z(Je=>{"use strict";Object.defineProperty(Je,"__esModule",{value:!0});Je.getSchemaRefs=Je.resolveUrl=Je.normalizeId=Je._getFullPath=Je.getFullPath=Je.inlineRef=void 0;var B0=ee(),W0=Au(),K0=Qm(),G0=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function X0(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Nu(t):e?eh(t)<=e:!1}Je.inlineRef=X0;var Y0=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Nu(t){for(let e in t){if(Y0.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Nu)||typeof r=="object"&&Nu(r))return!0}return!1}function eh(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!G0.has(r)&&(typeof t[r]=="object"&&(0,B0.eachItem)(t[r],n=>e+=eh(n)),e===1/0))return 1/0}return e}function th(t,e="",r){r!==!1&&(e=ln(e));let n=t.parse(e);return rh(t,n)}Je.getFullPath=th;function rh(t,e){return t.serialize(e).split("#")[0]+"#"}Je._getFullPath=rh;var Q0=/#\/?$/;function ln(t){return t?t.replace(Q0,""):""}Je.normalizeId=ln;function e$(t,e,r){return r=ln(r),t.resolve(e,r)}Je.resolveUrl=e$;var t$=/^[a-z_][-a-z0-9._]*$/i;function r$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=ln(t[r]||e),s={"":o},i=th(n,o,!1),a={},u=new Set;return K0(t,{allKeys:!0},(d,g,h,f)=>{if(f===void 0)return;let m=i+g,y=s[f];typeof d[r]=="string"&&(y=v.call(this,d[r])),w.call(this,d.$anchor),w.call(this,d.$dynamicAnchor),s[g]=y;function v(k){let j=this.opts.uriResolver.resolve;if(k=ln(y?j(y,k):k),u.has(k))throw c(k);u.add(k);let N=this.refs[k];return typeof N=="string"&&(N=this.refs[N]),typeof N=="object"?l(d,N.schema,k):k!==ln(m)&&(k[0]==="#"?(l(d,a[k],k),a[k]=d):this.refs[k]=m),k}function w(k){if(typeof k=="string"){if(!t$.test(k))throw new Error(`invalid anchor "${k}"`);v.call(this,`#${k}`)}}}),a;function l(d,g,h){if(g!==void 0&&!W0(d,g))throw c(h)}function c(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Je.getSchemaRefs=r$});var uo=z(Yt=>{"use strict";Object.defineProperty(Yt,"__esModule",{value:!0});Yt.getData=Yt.KeywordCxt=Yt.validateFunctionCode=void 0;var ah=Nm(),nh=so(),Zu=Pu(),Ds=so(),n$=Jm(),co=Wm(),Mu=Gm(),E=F(),D=Et(),o$=io(),Ct=ee(),ao=oo();function s$(t){if(lh(t)&&(dh(t),uh(t))){c$(t);return}ch(t,()=>(0,ah.topBoolOrEmptySchema)(t))}Yt.validateFunctionCode=s$;function ch({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,E._)`${D.default.data}, ${D.default.valCxt}`,n.$async,()=>{t.code((0,E._)`"use strict"; ${oh(r,o)}`),a$(t,o),t.code(s)}):t.func(e,(0,E._)`${D.default.data}, ${i$(o)}`,n.$async,()=>t.code(oh(r,o)).code(s))}function i$(t){return(0,E._)`{${D.default.instancePath}="", ${D.default.parentData}, ${D.default.parentDataProperty}, ${D.default.rootData}=${D.default.data}${t.dynamicRef?(0,E._)`, ${D.default.dynamicAnchors}={}`:E.nil}}={}`}function a$(t,e){t.if(D.default.valCxt,()=>{t.var(D.default.instancePath,(0,E._)`${D.default.valCxt}.${D.default.instancePath}`),t.var(D.default.parentData,(0,E._)`${D.default.valCxt}.${D.default.parentData}`),t.var(D.default.parentDataProperty,(0,E._)`${D.default.valCxt}.${D.default.parentDataProperty}`),t.var(D.default.rootData,(0,E._)`${D.default.valCxt}.${D.default.rootData}`),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,E._)`${D.default.valCxt}.${D.default.dynamicAnchors}`)},()=>{t.var(D.default.instancePath,(0,E._)`""`),t.var(D.default.parentData,(0,E._)`undefined`),t.var(D.default.parentDataProperty,(0,E._)`undefined`),t.var(D.default.rootData,D.default.data),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,E._)`{}`)})}function c$(t){let{schema:e,opts:r,gen:n}=t;ch(t,()=>{r.$comment&&e.$comment&&fh(t),f$(t),n.let(D.default.vErrors,null),n.let(D.default.errors,0),r.unevaluated&&u$(t),ph(t),g$(t)})}function u$(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,E._)`${r}.evaluated`),e.if((0,E._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,E._)`${t.evaluated}.props`,(0,E._)`undefined`)),e.if((0,E._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,E._)`${t.evaluated}.items`,(0,E._)`undefined`))}function oh(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,E._)`/*# sourceURL=${r} */`:E.nil}function l$(t,e){if(lh(t)&&(dh(t),uh(t))){d$(t,e);return}(0,ah.boolOrEmptySchema)(t,e)}function uh({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 lh(t){return typeof t.schema!="boolean"}function d$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&fh(t),m$(t),h$(t);let s=n.const("_errs",D.default.errors);ph(t,s),n.var(e,(0,E._)`${s} === ${D.default.errors}`)}function dh(t){(0,Ct.checkUnknownRules)(t),p$(t)}function ph(t,e){if(t.opts.jtd)return sh(t,[],!1,e);let r=(0,nh.getSchemaTypes)(t.schema),n=(0,nh.coerceAndCheckDataType)(t,r);sh(t,r,!n,e)}function p$(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ct.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function f$(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ct.checkStrictMode)(t,"default is ignored in the schema root")}function m$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,o$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function h$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function fh({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,E._)`${D.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,E.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,E._)`${D.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function g$(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,E._)`${D.default.errors} === 0`,()=>e.return(D.default.data),()=>e.throw((0,E._)`new ${o}(${D.default.vErrors})`)):(e.assign((0,E._)`${n}.errors`,D.default.vErrors),s.unevaluated&&y$(t),e.return((0,E._)`${D.default.errors} === 0`))}function y$({gen:t,evaluated:e,props:r,items:n}){r instanceof E.Name&&t.assign((0,E._)`${e}.props`,r),n instanceof E.Name&&t.assign((0,E._)`${e}.items`,n)}function sh(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:u,self:l}=t,{RULES:c}=l;if(s.$ref&&(u.ignoreKeywordsWithRef||!(0,Ct.schemaHasRulesButRef)(s,c))){o.block(()=>hh(t,"$ref",c.all.$ref.definition));return}u.jtd||_$(t,e),o.block(()=>{for(let g of c.rules)d(g);d(c.post)});function d(g){(0,Zu.shouldUseGroup)(s,g)&&(g.type?(o.if((0,Ds.checkDataType)(g.type,i,u.strictNumbers)),ih(t,g),e.length===1&&e[0]===g.type&&r&&(o.else(),(0,Ds.reportTypeError)(t)),o.endIf()):ih(t,g),a||o.if((0,E._)`${D.default.errors} === ${n||0}`))}}function ih(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,n$.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Zu.shouldUseRule)(n,s)&&hh(t,s.keyword,s.definition,e.type)})}function _$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(b$(t,e),t.opts.allowUnionTypes||v$(t,e),w$(t,t.dataTypes))}function b$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{mh(t.dataTypes,r)||Lu(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),x$(t,e)}}function v$(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Lu(t,"use allowUnionTypes to allow union type keyword")}function w$(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Zu.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>k$(e,i))&&Lu(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function k$(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function mh(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function x$(t,e){let r=[];for(let n of t.dataTypes)mh(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Lu(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ct.checkStrictMode)(t,e,t.opts.strictTypes)}var Us=class{constructor(e,r,n){if((0,co.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Ct.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",gh(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,co.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",D.default.errors))}result(e,r,n){this.failResult((0,E.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,E.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,E._)`${r} !== undefined && (${(0,E.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?ao.reportExtraError:ao.reportError)(this,this.def.error,r)}$dataError(){(0,ao.reportError)(this,this.def.$dataError||ao.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,ao.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=E.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=E.nil,r=E.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,E.or)((0,E._)`${o} === undefined`,r)),e!==E.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==E.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,E.or)(i(),a());function i(){if(n.length){if(!(r instanceof E.Name))throw new Error("ajv implementation error");let u=Array.isArray(n)?n:[n];return(0,E._)`${(0,Ds.checkDataTypes)(u,r,s.opts.strictNumbers,Ds.DataType.Wrong)}`}return E.nil}function a(){if(o.validateSchema){let u=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,E._)`!${u}(${r})`}return E.nil}}subschema(e,r){let n=(0,Mu.getSubschema)(this.it,e);(0,Mu.extendSubschemaData)(n,this.it,e),(0,Mu.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return l$(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ct.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ct.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,E.Name)),!0}};Yt.KeywordCxt=Us;function hh(t,e,r,n){let o=new Us(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,co.funcKeywordCode)(o,r):"macro"in r?(0,co.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,co.funcKeywordCode)(o,r)}var $$=/^\/(?:[^~]|~0|~1)*$/,S$=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function gh(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return D.default.rootData;if(t[0]==="/"){if(!$$.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=D.default.rootData}else{let l=S$.exec(t);if(!l)throw new Error(`Invalid JSON-pointer: ${t}`);let c=+l[1];if(o=l[2],o==="#"){if(c>=e)throw new Error(u("property/index",c));return n[e-c]}if(c>e)throw new Error(u("data",c));if(s=r[e-c],!o)return s}let i=s,a=o.split("/");for(let l of a)l&&(s=(0,E._)`${s}${(0,E.getProperty)((0,Ct.unescapeJsonPointer)(l))}`,i=(0,E._)`${i} && ${s}`);return i;function u(l,c){return`Cannot access ${l} ${c} levels up, current level is ${e}`}}Yt.getData=gh});var qs=z(Uu=>{"use strict";Object.defineProperty(Uu,"__esModule",{value:!0});var Du=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Uu.default=Du});var lo=z(Fu=>{"use strict";Object.defineProperty(Fu,"__esModule",{value:!0});var qu=io(),Ju=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,qu.resolveUrl)(e,r,n),this.missingSchema=(0,qu.normalizeId)((0,qu.getFullPath)(e,this.missingRef))}};Fu.default=Ju});var Fs=z(nt=>{"use strict";Object.defineProperty(nt,"__esModule",{value:!0});nt.resolveSchema=nt.getCompilingSchema=nt.resolveRef=nt.compileSchema=nt.SchemaEnv=void 0;var lt=F(),z$=qs(),Ir=Et(),dt=io(),yh=ee(),T$=uo(),dn=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,dt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};nt.SchemaEnv=dn;function Hu(t){let e=_h.call(this,t);if(e)return e;let r=(0,dt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new lt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:z$.default,code:(0,lt._)`require("ajv/dist/runtime/validation_error").default`}));let u=i.scopeName("validate");t.validateName=u;let l={gen:i,allErrors:this.opts.allErrors,data:Ir.default.data,parentData:Ir.default.parentData,parentDataProperty:Ir.default.parentDataProperty,dataNames:[Ir.default.data],dataPathArr:[lt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,lt.stringify)(t.schema)}:{ref:t.schema}),validateName:u,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:lt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,lt._)`""`,opts:this.opts,self:this},c;try{this._compilations.add(t),(0,T$.validateFunctionCode)(l),i.optimize(this.opts.code.optimize);let d=i.toString();c=`${i.scopeRefs(Ir.default.scope)}return ${d}`,this.opts.code.process&&(c=this.opts.code.process(c,t));let h=new Function(`${Ir.default.self}`,`${Ir.default.scope}`,c)(this,this.scope.get());if(this.scope.value(u,{ref:h}),h.errors=null,h.schema=t.schema,h.schemaEnv=t,t.$async&&(h.$async=!0),this.opts.code.source===!0&&(h.source={validateName:u,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:f,items:m}=l;h.evaluated={props:f instanceof lt.Name?void 0:f,items:m instanceof lt.Name?void 0:m,dynamicProps:f instanceof lt.Name,dynamicItems:m instanceof lt.Name},h.source&&(h.source.evaluated=(0,lt.stringify)(h.evaluated))}return t.validate=h,t}catch(d){throw delete t.validate,delete t.validateName,c&&this.logger.error("Error compiling schema, function code:",c),d}finally{this._compilations.delete(t)}}nt.compileSchema=Hu;function P$(t,e,r){var n;r=(0,dt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=O$.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 dn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=j$.call(this,s)}nt.resolveRef=P$;function j$(t){return(0,dt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Hu.call(this,t)}function _h(t){for(let e of this._compilations)if(R$(e,t))return e}nt.getCompilingSchema=_h;function R$(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function O$(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Js.call(this,t,e)}function Js(t,e){let r=this.opts.uriResolver.parse(e),n=(0,dt._getFullPath)(this.opts.uriResolver,r),o=(0,dt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Vu.call(this,r,t);let s=(0,dt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Js.call(this,t,i);return typeof a?.schema!="object"?void 0:Vu.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Hu.call(this,i),s===(0,dt.normalizeId)(e)){let{schema:a}=i,{schemaId:u}=this.opts,l=a[u];return l&&(o=(0,dt.resolveUrl)(this.opts.uriResolver,o,l)),new dn({schema:a,schemaId:u,root:t,baseId:o})}return Vu.call(this,r,i)}}nt.resolveSchema=Js;var I$=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Vu(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 u=r[(0,yh.unescapeFragment)(a)];if(u===void 0)return;r=u;let l=typeof r=="object"&&r[this.opts.schemaId];!I$.has(a)&&l&&(e=(0,dt.resolveUrl)(this.opts.uriResolver,e,l))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,yh.schemaHasRulesButRef)(r,this.RULES)){let a=(0,dt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Js.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new dn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var bh=z((NC,E$)=>{E$.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 Wu=z((MC,xh)=>{"use strict";var C$=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),wh=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function Bu(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 A$=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function vh(t){return t.length=0,!0}function N$(t,e,r){if(t.length){let n=Bu(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function M$(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=N$;for(let u=0;u<t.length;u++){let l=t[u];if(!(l==="["||l==="]"))if(l===":"){if(s===!0&&(i=!0),!a(o,n,r))break;if(++e>7){r.error=!0;break}u>0&&t[u-1]===":"&&(s=!0),n.push(":");continue}else if(l==="%"){if(!a(o,n,r))break;a=vh}else{o.push(l);continue}}return o.length&&(a===vh?r.zone=o.join(""):i?n.push(o.join("")):n.push(Bu(o))),r.address=n.join(""),r}function kh(t){if(Z$(t,":")<2)return{host:t,isIPV6:!1};let e=M$(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 Z$(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function L$(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("")}function D$(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function U$(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!wh(r)){let n=kh(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}xh.exports={nonSimpleDomain:A$,recomposeAuthority:U$,normalizeComponentEncoding:D$,removeDotSegments:L$,isIPv4:wh,isUUID:C$,normalizeIPv6:kh,stringArrayToHexStripped:Bu}});var Ph=z((ZC,Th)=>{"use strict";var{isUUID:q$}=Wu(),J$=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,F$=["http","https","ws","wss","urn","urn:uuid"];function V$(t){return F$.indexOf(t)!==-1}function Ku(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 $h(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Sh(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 H$(t){return t.secure=Ku(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function B$(t){if((t.port===(Ku(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 W$(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(J$);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=Gu(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function K$(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=Gu(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 G$(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!q$(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function X$(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var zh={scheme:"http",domainHost:!0,parse:$h,serialize:Sh},Y$={scheme:"https",domainHost:zh.domainHost,parse:$h,serialize:Sh},Vs={scheme:"ws",domainHost:!0,parse:H$,serialize:B$},Q$={scheme:"wss",domainHost:Vs.domainHost,parse:Vs.parse,serialize:Vs.serialize},eS={scheme:"urn",parse:W$,serialize:K$,skipNormalize:!0},tS={scheme:"urn:uuid",parse:G$,serialize:X$,skipNormalize:!0},Hs={http:zh,https:Y$,ws:Vs,wss:Q$,urn:eS,"urn:uuid":tS};Object.setPrototypeOf(Hs,null);function Gu(t){return t&&(Hs[t]||Hs[t.toLowerCase()])||void 0}Th.exports={wsIsSecure:Ku,SCHEMES:Hs,isValidSchemeName:V$,getSchemeHandler:Gu}});var Oh=z((LC,Ws)=>{"use strict";var{normalizeIPv6:rS,removeDotSegments:po,recomposeAuthority:nS,normalizeComponentEncoding:Bs,isIPv4:oS,nonSimpleDomain:sS}=Wu(),{SCHEMES:iS,getSchemeHandler:jh}=Ph();function aS(t,e){return typeof t=="string"?t=vt(At(t,e),e):typeof t=="object"&&(t=At(vt(t,e),e)),t}function cS(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Rh(At(t,n),At(e,n),n,!0);return n.skipEscape=!0,vt(o,n)}function Rh(t,e,r,n){let o={};return n||(t=At(vt(t,r),r),e=At(vt(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=po(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=po(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=po(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=po(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 uS(t,e,r){return typeof t=="string"?(t=unescape(t),t=vt(Bs(At(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=vt(Bs(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=vt(Bs(At(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=vt(Bs(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function vt(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=jh(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=nS(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=po(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 lS=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function At(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;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(lS);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if(oS(n.host)===!1){let u=rS(n.host);n.host=u.host.toLowerCase(),o=u.isIPV6}else o=!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 i=jh(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&sS(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(a){n.error=n.error||"Host's domain name can not be converted to ASCII: "+a}(!i||i&&!i.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),i&&i.parse&&i.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var Xu={SCHEMES:iS,normalize:aS,resolve:cS,resolveComponent:Rh,equal:uS,serialize:vt,parse:At};Ws.exports=Xu;Ws.exports.default=Xu;Ws.exports.fastUri=Xu});var Eh=z(Yu=>{"use strict";Object.defineProperty(Yu,"__esModule",{value:!0});var Ih=Oh();Ih.code='require("ajv/dist/runtime/uri").default';Yu.default=Ih});var Uh=z(ze=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.CodeGen=ze.Name=ze.nil=ze.stringify=ze.str=ze._=ze.KeywordCxt=void 0;var dS=uo();Object.defineProperty(ze,"KeywordCxt",{enumerable:!0,get:function(){return dS.KeywordCxt}});var pn=F();Object.defineProperty(ze,"_",{enumerable:!0,get:function(){return pn._}});Object.defineProperty(ze,"str",{enumerable:!0,get:function(){return pn.str}});Object.defineProperty(ze,"stringify",{enumerable:!0,get:function(){return pn.stringify}});Object.defineProperty(ze,"nil",{enumerable:!0,get:function(){return pn.nil}});Object.defineProperty(ze,"Name",{enumerable:!0,get:function(){return pn.Name}});Object.defineProperty(ze,"CodeGen",{enumerable:!0,get:function(){return pn.CodeGen}});var pS=qs(),Zh=lo(),fS=Tu(),fo=Fs(),mS=F(),mo=io(),Ks=so(),el=ee(),Ch=bh(),hS=Eh(),Lh=(t,e)=>new RegExp(t,e);Lh.code="new RegExp";var gS=["removeAdditional","useDefaults","coerceTypes"],yS=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),_S={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."},bS={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Ah=200;function vS(t){var e,r,n,o,s,i,a,u,l,c,d,g,h,f,m,y,v,w,k,j,N,Ie,Ke,Mr,ki;let wn=t.strict,xi=(e=t.code)===null||e===void 0?void 0:e.optimize,kd=xi===!0||xi===void 0?1:xi||0,xd=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Lh,__=(o=t.uriResolver)!==null&&o!==void 0?o:hS.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:wn)!==null&&i!==void 0?i:!0,strictNumbers:(u=(a=t.strictNumbers)!==null&&a!==void 0?a:wn)!==null&&u!==void 0?u:!0,strictTypes:(c=(l=t.strictTypes)!==null&&l!==void 0?l:wn)!==null&&c!==void 0?c:"log",strictTuples:(g=(d=t.strictTuples)!==null&&d!==void 0?d:wn)!==null&&g!==void 0?g:"log",strictRequired:(f=(h=t.strictRequired)!==null&&h!==void 0?h:wn)!==null&&f!==void 0?f:!1,code:t.code?{...t.code,optimize:kd,regExp:xd}:{optimize:kd,regExp:xd},loopRequired:(m=t.loopRequired)!==null&&m!==void 0?m:Ah,loopEnum:(y=t.loopEnum)!==null&&y!==void 0?y:Ah,meta:(v=t.meta)!==null&&v!==void 0?v:!0,messages:(w=t.messages)!==null&&w!==void 0?w:!0,inlineRefs:(k=t.inlineRefs)!==null&&k!==void 0?k:!0,schemaId:(j=t.schemaId)!==null&&j!==void 0?j:"$id",addUsedSchema:(N=t.addUsedSchema)!==null&&N!==void 0?N:!0,validateSchema:(Ie=t.validateSchema)!==null&&Ie!==void 0?Ie:!0,validateFormats:(Ke=t.validateFormats)!==null&&Ke!==void 0?Ke:!0,unicodeRegExp:(Mr=t.unicodeRegExp)!==null&&Mr!==void 0?Mr:!0,int32range:(ki=t.int32range)!==null&&ki!==void 0?ki:!0,uriResolver:__}}var ho=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...vS(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new mS.ValueScope({scope:{},prefixes:yS,es5:r,lines:n}),this.logger=zS(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,fS.getRules)(),Nh.call(this,_S,e,"NOT SUPPORTED"),Nh.call(this,bS,e,"DEPRECATED","warn"),this._metaOpts=$S.call(this),e.formats&&kS.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&xS.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),wS.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=Ch;n==="id"&&(o={...Ch},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(c,d){await s.call(this,c.$schema);let g=this._addSchema(c,d);return g.validate||i.call(this,g)}async function s(c){c&&!this.getSchema(c)&&await o.call(this,{$ref:c},!0)}async function i(c){try{return this._compileSchemaEnv(c)}catch(d){if(!(d instanceof Zh.default))throw d;return a.call(this,d),await u.call(this,d.missingSchema),i.call(this,c)}}function a({missingSchema:c,missingRef:d}){if(this.refs[c])throw new Error(`AnySchema ${c} is loaded but ${d} cannot be resolved`)}async function u(c){let d=await l.call(this,c);this.refs[c]||await s.call(this,d.$schema),this.refs[c]||this.addSchema(d,c,r)}async function l(c){let d=this._loading[c];if(d)return d;try{return await(this._loading[c]=n(c))}finally{delete this._loading[c]}}}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,mo.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=Mh.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new fo.SchemaEnv({schema:{},schemaId:n});if(r=fo.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=Mh.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,mo.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(PS.call(this,n,r),!r)return(0,el.eachItem)(n,s=>Qu.call(this,s)),this;RS.call(this,r);let o={...r,type:(0,Ks.getJSONTypes)(r.type),schemaType:(0,Ks.getJSONTypes)(r.schemaType)};return(0,el.eachItem)(n,o.type.length===0?s=>Qu.call(this,s,o):s=>o.type.forEach(i=>Qu.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 u=n[a];if(typeof u!="object")continue;let{$data:l}=u.definition,c=i[a];l&&c&&(i[a]=Dh(c))}}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 u=this._cache.get(e);if(u!==void 0)return u;n=(0,mo.normalizeId)(i||n);let l=mo.getSchemaRefs.call(this,e,n);return u=new fo.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:l}),this._cache.set(u.schema,u),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=u),o&&this.validateSchema(e,!0),u}_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):fo.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{fo.compileSchema.call(this,e)}finally{this.opts=r}}};ho.ValidationError=pS.default;ho.MissingRefError=Zh.default;ze.default=ho;function Nh(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 Mh(t){return t=(0,mo.normalizeId)(t),this.schemas[t]||this.refs[t]}function wS(){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 kS(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function xS(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 $S(){let t={...this.opts};for(let e of gS)delete t[e];return t}var SS={log(){},warn(){},error(){}};function zS(t){if(t===!1)return SS;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 TS=/^[a-z_$][a-z0-9_$:-]*$/i;function PS(t,e){let{RULES:r}=this;if((0,el.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!TS.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 Qu(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:u})=>u===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,Ks.getJSONTypes)(e.type),schemaType:(0,Ks.getJSONTypes)(e.schemaType)}};e.before?jS.call(this,i,a,e.before):i.rules.push(a),s.all[t]=a,(n=e.implements)===null||n===void 0||n.forEach(u=>this.addKeyword(u))}function jS(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 RS(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=Dh(e)),t.validateSchema=this.compile(e,!0))}var OS={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Dh(t){return{anyOf:[t,OS]}}});var qh=z(tl=>{"use strict";Object.defineProperty(tl,"__esModule",{value:!0});var IS={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};tl.default=IS});var Hh=z(Er=>{"use strict";Object.defineProperty(Er,"__esModule",{value:!0});Er.callRef=Er.getValidate=void 0;var ES=lo(),Jh=rt(),Fe=F(),fn=Et(),Fh=Fs(),Gs=ee(),CS={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:u}=n,{root:l}=s;if((r==="#"||r==="#/")&&o===l.baseId)return d();let c=Fh.resolveRef.call(u,l,o,r);if(c===void 0)throw new ES.default(n.opts.uriResolver,o,r);if(c instanceof Fh.SchemaEnv)return g(c);return h(c);function d(){if(s===l)return Xs(t,i,s,s.$async);let f=e.scopeValue("root",{ref:l});return Xs(t,(0,Fe._)`${f}.validate`,l,l.$async)}function g(f){let m=Vh(t,f);Xs(t,m,f,f.$async)}function h(f){let m=e.scopeValue("schema",a.code.source===!0?{ref:f,code:(0,Fe.stringify)(f)}:{ref:f}),y=e.name("valid"),v=t.subschema({schema:f,dataTypes:[],schemaPath:Fe.nil,topSchemaRef:m,errSchemaPath:r},y);t.mergeEvaluated(v),t.ok(y)}}};function Vh(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Fe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Er.getValidate=Vh;function Xs(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:u}=s,l=u.passContext?fn.default.this:Fe.nil;n?c():d();function c(){if(!a.$async)throw new Error("async schema referenced by sync schema");let f=o.let("valid");o.try(()=>{o.code((0,Fe._)`await ${(0,Jh.callValidateCode)(t,e,l)}`),h(e),i||o.assign(f,!0)},m=>{o.if((0,Fe._)`!(${m} instanceof ${s.ValidationError})`,()=>o.throw(m)),g(m),i||o.assign(f,!1)}),t.ok(f)}function d(){t.result((0,Jh.callValidateCode)(t,e,l),()=>h(e),()=>g(e))}function g(f){let m=(0,Fe._)`${f}.errors`;o.assign(fn.default.vErrors,(0,Fe._)`${fn.default.vErrors} === null ? ${m} : ${fn.default.vErrors}.concat(${m})`),o.assign(fn.default.errors,(0,Fe._)`${fn.default.vErrors}.length`)}function h(f){var m;if(!s.opts.unevaluated)return;let y=(m=r?.validate)===null||m===void 0?void 0:m.evaluated;if(s.props!==!0)if(y&&!y.dynamicProps)y.props!==void 0&&(s.props=Gs.mergeEvaluated.props(o,y.props,s.props));else{let v=o.var("props",(0,Fe._)`${f}.evaluated.props`);s.props=Gs.mergeEvaluated.props(o,v,s.props,Fe.Name)}if(s.items!==!0)if(y&&!y.dynamicItems)y.items!==void 0&&(s.items=Gs.mergeEvaluated.items(o,y.items,s.items));else{let v=o.var("items",(0,Fe._)`${f}.evaluated.items`);s.items=Gs.mergeEvaluated.items(o,v,s.items,Fe.Name)}}}Er.callRef=Xs;Er.default=CS});var Bh=z(rl=>{"use strict";Object.defineProperty(rl,"__esModule",{value:!0});var AS=qh(),NS=Hh(),MS=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",AS.default,NS.default];rl.default=MS});var Wh=z(nl=>{"use strict";Object.defineProperty(nl,"__esModule",{value:!0});var Ys=F(),Qt=Ys.operators,Qs={maximum:{okStr:"<=",ok:Qt.LTE,fail:Qt.GT},minimum:{okStr:">=",ok:Qt.GTE,fail:Qt.LT},exclusiveMaximum:{okStr:"<",ok:Qt.LT,fail:Qt.GTE},exclusiveMinimum:{okStr:">",ok:Qt.GT,fail:Qt.LTE}},ZS={message:({keyword:t,schemaCode:e})=>(0,Ys.str)`must be ${Qs[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ys._)`{comparison: ${Qs[t].okStr}, limit: ${e}}`},LS={keyword:Object.keys(Qs),type:"number",schemaType:"number",$data:!0,error:ZS,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Ys._)`${r} ${Qs[e].fail} ${n} || isNaN(${r})`)}};nl.default=LS});var Kh=z(ol=>{"use strict";Object.defineProperty(ol,"__esModule",{value:!0});var go=F(),DS={message:({schemaCode:t})=>(0,go.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,go._)`{multipleOf: ${t}}`},US={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:DS,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,go._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,go._)`${i} !== parseInt(${i})`;t.fail$data((0,go._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};ol.default=US});var Xh=z(sl=>{"use strict";Object.defineProperty(sl,"__esModule",{value:!0});function Gh(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}sl.default=Gh;Gh.code='require("ajv/dist/runtime/ucs2length").default'});var Yh=z(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});var Cr=F(),qS=ee(),JS=Xh(),FS={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Cr.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Cr._)`{limit: ${t}}`},VS={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:FS,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Cr.operators.GT:Cr.operators.LT,i=o.opts.unicode===!1?(0,Cr._)`${r}.length`:(0,Cr._)`${(0,qS.useFunc)(t.gen,JS.default)}(${r})`;t.fail$data((0,Cr._)`${i} ${s} ${n}`)}};il.default=VS});var Qh=z(al=>{"use strict";Object.defineProperty(al,"__esModule",{value:!0});var HS=rt(),ei=F(),BS={message:({schemaCode:t})=>(0,ei.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,ei._)`{pattern: ${t}}`},WS={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:BS,code(t){let{data:e,$data:r,schema:n,schemaCode:o,it:s}=t,i=s.opts.unicodeRegExp?"u":"",a=r?(0,ei._)`(new RegExp(${o}, ${i}))`:(0,HS.usePattern)(t,n);t.fail$data((0,ei._)`!${a}.test(${e})`)}};al.default=WS});var eg=z(cl=>{"use strict";Object.defineProperty(cl,"__esModule",{value:!0});var yo=F(),KS={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,yo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,yo._)`{limit: ${t}}`},GS={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:KS,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?yo.operators.GT:yo.operators.LT;t.fail$data((0,yo._)`Object.keys(${r}).length ${o} ${n}`)}};cl.default=GS});var tg=z(ul=>{"use strict";Object.defineProperty(ul,"__esModule",{value:!0});var _o=rt(),bo=F(),XS=ee(),YS={message:({params:{missingProperty:t}})=>(0,bo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,bo._)`{missingProperty: ${t}}`},QS={keyword:"required",type:"object",schemaType:"array",$data:!0,error:YS,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 u=r.length>=a.loopRequired;if(i.allErrors?l():c(),a.strictRequired){let h=t.parentSchema.properties,{definedProperties:f}=t.it;for(let m of r)if(h?.[m]===void 0&&!f.has(m)){let y=i.schemaEnv.baseId+i.errSchemaPath,v=`required property "${m}" is not defined at "${y}" (strictRequired)`;(0,XS.checkStrictMode)(i,v,i.opts.strictRequired)}}function l(){if(u||s)t.block$data(bo.nil,d);else for(let h of r)(0,_o.checkReportMissingProp)(t,h)}function c(){let h=e.let("missing");if(u||s){let f=e.let("valid",!0);t.block$data(f,()=>g(h,f)),t.ok(f)}else e.if((0,_o.checkMissingProp)(t,r,h)),(0,_o.reportMissingProp)(t,h),e.else()}function d(){e.forOf("prop",n,h=>{t.setParams({missingProperty:h}),e.if((0,_o.noPropertyInData)(e,o,h,a.ownProperties),()=>t.error())})}function g(h,f){t.setParams({missingProperty:h}),e.forOf(h,n,()=>{e.assign(f,(0,_o.propertyInData)(e,o,h,a.ownProperties)),e.if((0,bo.not)(f),()=>{t.error(),e.break()})},bo.nil)}}};ul.default=QS});var rg=z(ll=>{"use strict";Object.defineProperty(ll,"__esModule",{value:!0});var vo=F(),ez={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,vo.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,vo._)`{limit: ${t}}`},tz={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:ez,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?vo.operators.GT:vo.operators.LT;t.fail$data((0,vo._)`${r}.length ${o} ${n}`)}};ll.default=tz});var ti=z(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});var ng=Au();ng.code='require("ajv/dist/runtime/equal").default';dl.default=ng});var og=z(fl=>{"use strict";Object.defineProperty(fl,"__esModule",{value:!0});var pl=so(),Te=F(),rz=ee(),nz=ti(),oz={message:({params:{i:t,j:e}})=>(0,Te.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Te._)`{i: ${t}, j: ${e}}`},sz={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:oz,code(t){let{gen:e,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=t;if(!n&&!o)return;let u=e.let("valid"),l=s.items?(0,pl.getSchemaTypes)(s.items):[];t.block$data(u,c,(0,Te._)`${i} === false`),t.ok(u);function c(){let f=e.let("i",(0,Te._)`${r}.length`),m=e.let("j");t.setParams({i:f,j:m}),e.assign(u,!0),e.if((0,Te._)`${f} > 1`,()=>(d()?g:h)(f,m))}function d(){return l.length>0&&!l.some(f=>f==="object"||f==="array")}function g(f,m){let y=e.name("item"),v=(0,pl.checkDataTypes)(l,y,a.opts.strictNumbers,pl.DataType.Wrong),w=e.const("indices",(0,Te._)`{}`);e.for((0,Te._)`;${f}--;`,()=>{e.let(y,(0,Te._)`${r}[${f}]`),e.if(v,(0,Te._)`continue`),l.length>1&&e.if((0,Te._)`typeof ${y} == "string"`,(0,Te._)`${y} += "_"`),e.if((0,Te._)`typeof ${w}[${y}] == "number"`,()=>{e.assign(m,(0,Te._)`${w}[${y}]`),t.error(),e.assign(u,!1).break()}).code((0,Te._)`${w}[${y}] = ${f}`)})}function h(f,m){let y=(0,rz.useFunc)(e,nz.default),v=e.name("outer");e.label(v).for((0,Te._)`;${f}--;`,()=>e.for((0,Te._)`${m} = ${f}; ${m}--;`,()=>e.if((0,Te._)`${y}(${r}[${f}], ${r}[${m}])`,()=>{t.error(),e.assign(u,!1).break(v)})))}}};fl.default=sz});var sg=z(hl=>{"use strict";Object.defineProperty(hl,"__esModule",{value:!0});var ml=F(),iz=ee(),az=ti(),cz={message:"must be equal to constant",params:({schemaCode:t})=>(0,ml._)`{allowedValue: ${t}}`},uz={keyword:"const",$data:!0,error:cz,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,ml._)`!${(0,iz.useFunc)(e,az.default)}(${r}, ${o})`):t.fail((0,ml._)`${s} !== ${r}`)}};hl.default=uz});var ig=z(gl=>{"use strict";Object.defineProperty(gl,"__esModule",{value:!0});var wo=F(),lz=ee(),dz=ti(),pz={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,wo._)`{allowedValues: ${t}}`},fz={keyword:"enum",schemaType:"array",$data:!0,error:pz,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,u,l=()=>u??(u=(0,lz.useFunc)(e,dz.default)),c;if(a||n)c=e.let("valid"),t.block$data(c,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let h=e.const("vSchema",s);c=(0,wo.or)(...o.map((f,m)=>g(h,m)))}t.pass(c);function d(){e.assign(c,!1),e.forOf("v",s,h=>e.if((0,wo._)`${l()}(${r}, ${h})`,()=>e.assign(c,!0).break()))}function g(h,f){let m=o[f];return typeof m=="object"&&m!==null?(0,wo._)`${l()}(${r}, ${h}[${f}])`:(0,wo._)`${r} === ${m}`}}};gl.default=fz});var ag=z(yl=>{"use strict";Object.defineProperty(yl,"__esModule",{value:!0});var mz=Wh(),hz=Kh(),gz=Yh(),yz=Qh(),_z=eg(),bz=tg(),vz=rg(),wz=og(),kz=sg(),xz=ig(),$z=[mz.default,hz.default,gz.default,yz.default,_z.default,bz.default,vz.default,wz.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},kz.default,xz.default];yl.default=$z});var bl=z(ko=>{"use strict";Object.defineProperty(ko,"__esModule",{value:!0});ko.validateAdditionalItems=void 0;var Ar=F(),_l=ee(),Sz={message:({params:{len:t}})=>(0,Ar.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Ar._)`{limit: ${t}}`},zz={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Sz,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,_l.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}cg(t,n)}};function cg(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Ar._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Ar._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,_l.alwaysValidSchema)(i,n)){let l=r.var("valid",(0,Ar._)`${a} <= ${e.length}`);r.if((0,Ar.not)(l),()=>u(l)),t.ok(l)}function u(l){r.forRange("i",e.length,a,c=>{t.subschema({keyword:s,dataProp:c,dataPropType:_l.Type.Num},l),i.allErrors||r.if((0,Ar.not)(l),()=>r.break())})}}ko.validateAdditionalItems=cg;ko.default=zz});var vl=z(xo=>{"use strict";Object.defineProperty(xo,"__esModule",{value:!0});xo.validateTuple=void 0;var ug=F(),ri=ee(),Tz=rt(),Pz={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return lg(t,"additionalItems",e);r.items=!0,!(0,ri.alwaysValidSchema)(r,e)&&t.ok((0,Tz.validateArray)(t))}};function lg(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;c(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=ri.mergeEvaluated.items(n,r.length,a.items));let u=n.name("valid"),l=n.const("len",(0,ug._)`${s}.length`);r.forEach((d,g)=>{(0,ri.alwaysValidSchema)(a,d)||(n.if((0,ug._)`${l} > ${g}`,()=>t.subschema({keyword:i,schemaProp:g,dataProp:g},u)),t.ok(u))});function c(d){let{opts:g,errSchemaPath:h}=a,f=r.length,m=f===d.minItems&&(f===d.maxItems||d[e]===!1);if(g.strictTuples&&!m){let y=`"${i}" is ${f}-tuple, but minItems or maxItems/${e} are not specified or different at path "${h}"`;(0,ri.checkStrictMode)(a,y,g.strictTuples)}}}xo.validateTuple=lg;xo.default=Pz});var dg=z(wl=>{"use strict";Object.defineProperty(wl,"__esModule",{value:!0});var jz=vl(),Rz={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,jz.validateTuple)(t,"items")};wl.default=Rz});var fg=z(kl=>{"use strict";Object.defineProperty(kl,"__esModule",{value:!0});var pg=F(),Oz=ee(),Iz=rt(),Ez=bl(),Cz={message:({params:{len:t}})=>(0,pg.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,pg._)`{limit: ${t}}`},Az={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Cz,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,Oz.alwaysValidSchema)(n,e)&&(o?(0,Ez.validateAdditionalItems)(t,o):t.ok((0,Iz.validateArray)(t)))}};kl.default=Az});var mg=z(xl=>{"use strict";Object.defineProperty(xl,"__esModule",{value:!0});var ot=F(),ni=ee(),Nz={message:({params:{min:t,max:e}})=>e===void 0?(0,ot.str)`must contain at least ${t} valid item(s)`:(0,ot.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ot._)`{minContains: ${t}}`:(0,ot._)`{minContains: ${t}, maxContains: ${e}}`},Mz={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:Nz,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:u,maxContains:l}=n;s.opts.next?(i=u===void 0?1:u,a=l):i=1;let c=e.const("len",(0,ot._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,ni.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,ni.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,ni.alwaysValidSchema)(s,r)){let m=(0,ot._)`${c} >= ${i}`;a!==void 0&&(m=(0,ot._)`${m} && ${c} <= ${a}`),t.pass(m);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?h(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ot._)`${o}.length > 0`,g)):(e.let(d,!1),g()),t.result(d,()=>t.reset());function g(){let m=e.name("_valid"),y=e.let("count",0);h(m,()=>e.if(m,()=>f(y)))}function h(m,y){e.forRange("i",0,c,v=>{t.subschema({keyword:"contains",dataProp:v,dataPropType:ni.Type.Num,compositeRule:!0},m),y()})}function f(m){e.code((0,ot._)`${m}++`),a===void 0?e.if((0,ot._)`${m} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ot._)`${m} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ot._)`${m} >= ${i}`,()=>e.assign(d,!0)))}}};xl.default=Mz});var yg=z(wt=>{"use strict";Object.defineProperty(wt,"__esModule",{value:!0});wt.validateSchemaDeps=wt.validatePropertyDeps=wt.error=void 0;var $l=F(),Zz=ee(),$o=rt();wt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,$l.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,$l._)`{property: ${t},
|
|
8
8
|
missingProperty: ${n},
|
|
9
9
|
depsCount: ${e},
|
|
10
|
-
deps: ${r}}`};var n1={keyword:"dependencies",type:"object",schemaType:"object",error:vt.error,code(t){let[e,r]=o1(t);og(t,e),sg(t,r)}};function o1({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 og(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 a in e){let i=e[a];if(i.length===0)continue;let u=(0,ko.propertyInData)(r,n,a,o.opts.ownProperties);t.setParams({property:a,depsCount:i.length,deps:i.join(", ")}),o.allErrors?r.if(u,()=>{for(let l of i)(0,ko.checkReportMissingProp)(t,l)}):(r.if((0,vl._)`${u} && (${(0,ko.checkMissingProp)(t,i,s)})`),(0,ko.reportMissingProp)(t,s),r.else())}}vt.validatePropertyDeps=og;function sg(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,a=r.name("valid");for(let i in e)(0,r1.alwaysValidSchema)(s,e[i])||(r.if((0,ko.propertyInData)(r,n,i,s.opts.ownProperties),()=>{let u=t.subschema({keyword:o,schemaProp:i},a);t.mergeValidEvaluated(u,a)},()=>r.var(a,!0)),t.ok(a))}vt.validateSchemaDeps=sg;vt.default=n1});var cg=z(wl=>{"use strict";Object.defineProperty(wl,"__esModule",{value:!0});var ig=F(),s1=ee(),a1={message:"property name must be valid",params:({params:t})=>(0,ig._)`{propertyName: ${t.propertyName}}`},i1={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:a1,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,s1.alwaysValidSchema)(o,r))return;let s=e.name("valid");e.forIn("key",n,a=>{t.setParams({propertyName:a}),t.subschema({keyword:"propertyNames",data:a,dataTypes:["string"],propertyName:a,compositeRule:!0},s),e.if((0,ig.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};wl.default=i1});var xl=z(kl=>{"use strict";Object.defineProperty(kl,"__esModule",{value:!0});var ea=tt(),dt=F(),c1=It(),ta=ee(),u1={message:"must NOT have additional properties",params:({params:t})=>(0,dt._)`{additionalProperty: ${t.additionalProperty}}`},l1={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:u1,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:a}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:i,opts:u}=a;if(a.props=!0,u.removeAdditional!=="all"&&(0,ta.alwaysValidSchema)(a,r))return;let l=(0,ea.allSchemaProperties)(n.properties),c=(0,ea.allSchemaProperties)(n.patternProperties);d(),t.ok((0,dt._)`${s} === ${c1.default.errors}`);function d(){e.forIn("key",o,y=>{!l.length&&!c.length?m(y):e.if(h(y),()=>m(y))})}function h(y){let v;if(l.length>8){let w=(0,ta.schemaRefOrVal)(a,n.properties,"properties");v=(0,ea.isOwnProperty)(e,w,y)}else l.length?v=(0,dt.or)(...l.map(w=>(0,dt._)`${y} === ${w}`)):v=dt.nil;return c.length&&(v=(0,dt.or)(v,...c.map(w=>(0,dt._)`${(0,ea.usePattern)(t,w)}.test(${y})`))),(0,dt.not)(v)}function f(y){e.code((0,dt._)`delete ${o}[${y}]`)}function m(y){if(u.removeAdditional==="all"||u.removeAdditional&&r===!1){f(y);return}if(r===!1){t.setParams({additionalProperty:y}),t.error(),i||e.break();return}if(typeof r=="object"&&!(0,ta.alwaysValidSchema)(a,r)){let v=e.name("valid");u.removeAdditional==="failing"?(g(y,v,!1),e.if((0,dt.not)(v),()=>{t.reset(),f(y)})):(g(y,v),i||e.if((0,dt.not)(v),()=>e.break()))}}function g(y,v,w){let x={keyword:"additionalProperties",dataProp:y,dataPropType:ta.Type.Str};w===!1&&Object.assign(x,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(x,v)}}};kl.default=l1});var dg=z(Sl=>{"use strict";Object.defineProperty(Sl,"__esModule",{value:!0});var d1=io(),ug=tt(),$l=ee(),lg=xl(),p1={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&&lg.default.code(new d1.KeywordCxt(s,lg.default,"additionalProperties"));let a=(0,ug.allSchemaProperties)(r);for(let d of a)s.definedProperties.add(d);s.opts.unevaluated&&a.length&&s.props!==!0&&(s.props=$l.mergeEvaluated.props(e,(0,$l.toHash)(a),s.props));let i=a.filter(d=>!(0,$l.alwaysValidSchema)(s,r[d]));if(i.length===0)return;let u=e.name("valid");for(let d of i)l(d)?c(d):(e.if((0,ug.propertyInData)(e,o,d,s.opts.ownProperties)),c(d),s.allErrors||e.else().var(u,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(u);function l(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function c(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},u)}}};Sl.default=p1});var hg=z(zl=>{"use strict";Object.defineProperty(zl,"__esModule",{value:!0});var pg=tt(),ra=F(),mg=ee(),fg=ee(),m1={keyword:"patternProperties",type:"object",schemaType:"object",code(t){let{gen:e,schema:r,data:n,parentSchema:o,it:s}=t,{opts:a}=s,i=(0,pg.allSchemaProperties)(r),u=i.filter(g=>(0,mg.alwaysValidSchema)(s,r[g]));if(i.length===0||u.length===i.length&&(!s.opts.unevaluated||s.props===!0))return;let l=a.strictSchema&&!a.allowMatchingProperties&&o.properties,c=e.name("valid");s.props!==!0&&!(s.props instanceof ra.Name)&&(s.props=(0,fg.evaluatedPropsToName)(e,s.props));let{props:d}=s;h();function h(){for(let g of i)l&&f(g),s.allErrors?m(g):(e.var(c,!0),m(g),e.if(c))}function f(g){for(let y in l)new RegExp(g).test(y)&&(0,mg.checkStrictMode)(s,`property ${y} matches pattern ${g} (use allowMatchingProperties)`)}function m(g){e.forIn("key",n,y=>{e.if((0,ra._)`${(0,pg.usePattern)(t,g)}.test(${y})`,()=>{let v=u.includes(g);v||t.subschema({keyword:"patternProperties",schemaProp:g,dataProp:y,dataPropType:fg.Type.Str},c),s.opts.unevaluated&&d!==!0?e.assign((0,ra._)`${d}[${y}]`,!0):!v&&!s.allErrors&&e.if((0,ra.not)(c),()=>e.break())})})}}};zl.default=m1});var gg=z(Tl=>{"use strict";Object.defineProperty(Tl,"__esModule",{value:!0});var f1=ee(),h1={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,f1.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"}};Tl.default=h1});var yg=z(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});var g1=tt(),y1={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:g1.validateUnion,error:{message:"must match a schema in anyOf"}};Pl.default=y1});var _g=z(jl=>{"use strict";Object.defineProperty(jl,"__esModule",{value:!0});var na=F(),_1=ee(),b1={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,na._)`{passingSchemas: ${t.passing}}`},v1={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:b1,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,a=e.let("valid",!1),i=e.let("passing",null),u=e.name("_valid");t.setParams({passing:i}),e.block(l),t.result(a,()=>t.reset(),()=>t.error(!0));function l(){s.forEach((c,d)=>{let h;(0,_1.alwaysValidSchema)(o,c)?e.var(u,!0):h=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},u),d>0&&e.if((0,na._)`${u} && ${a}`).assign(a,!1).assign(i,(0,na._)`[${i}, ${d}]`).else(),e.if(u,()=>{e.assign(a,!0),e.assign(i,d),h&&t.mergeEvaluated(h,na.Name)})})}}};jl.default=v1});var bg=z(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});var w1=ee(),k1={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,a)=>{if((0,w1.alwaysValidSchema)(n,s))return;let i=t.subschema({keyword:"allOf",schemaProp:a},o);t.ok(o),t.mergeEvaluated(i)})}};Rl.default=k1});var kg=z(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});var oa=F(),wg=ee(),x1={message:({params:t})=>(0,oa.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,oa._)`{failingKeyword: ${t.ifClause}}`},$1={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:x1,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,wg.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=vg(n,"then"),s=vg(n,"else");if(!o&&!s)return;let a=e.let("valid",!0),i=e.name("_valid");if(u(),t.reset(),o&&s){let c=e.let("ifClause");t.setParams({ifClause:c}),e.if(i,l("then",c),l("else",c))}else o?e.if(i,l("then")):e.if((0,oa.not)(i),l("else"));t.pass(a,()=>t.error(!0));function u(){let c=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},i);t.mergeEvaluated(c)}function l(c,d){return()=>{let h=t.subschema({keyword:c},i);e.assign(a,i),t.mergeValidEvaluated(h,a),d?e.assign(d,(0,oa._)`${c}`):t.setParams({ifClause:c})}}}};function vg(t,e){let r=t.schema[e];return r!==void 0&&!(0,wg.alwaysValidSchema)(t,r)}Ol.default=$1});var xg=z(El=>{"use strict";Object.defineProperty(El,"__esModule",{value:!0});var S1=ee(),z1={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,S1.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};El.default=z1});var $g=z(Il=>{"use strict";Object.defineProperty(Il,"__esModule",{value:!0});var T1=hl(),P1=eg(),j1=gl(),R1=rg(),O1=ng(),E1=ag(),I1=cg(),C1=xl(),A1=dg(),N1=hg(),M1=gg(),Z1=yg(),L1=_g(),q1=bg(),D1=kg(),U1=xg();function J1(t=!1){let e=[M1.default,Z1.default,L1.default,q1.default,D1.default,U1.default,I1.default,C1.default,E1.default,A1.default,N1.default];return t?e.push(P1.default,R1.default):e.push(T1.default,j1.default),e.push(O1.default),e}Il.default=J1});var Sg=z(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});var ye=F(),F1={message:({schemaCode:t})=>(0,ye.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ye._)`{format: ${t}}`},V1={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:F1,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:a,it:i}=t,{opts:u,errSchemaPath:l,schemaEnv:c,self:d}=i;if(!u.validateFormats)return;o?h():f();function h(){let m=r.scopeValue("formats",{ref:d.formats,code:u.code.formats}),g=r.const("fDef",(0,ye._)`${m}[${a}]`),y=r.let("fType"),v=r.let("format");r.if((0,ye._)`typeof ${g} == "object" && !(${g} instanceof RegExp)`,()=>r.assign(y,(0,ye._)`${g}.type || "string"`).assign(v,(0,ye._)`${g}.validate`),()=>r.assign(y,(0,ye._)`"string"`).assign(v,g)),t.fail$data((0,ye.or)(w(),x()));function w(){return u.strictSchema===!1?ye.nil:(0,ye._)`${a} && !${v}`}function x(){let j=c.$async?(0,ye._)`(${g}.async ? await ${v}(${n}) : ${v}(${n}))`:(0,ye._)`${v}(${n})`,N=(0,ye._)`(typeof ${v} == "function" ? ${j} : ${v}.test(${n}))`;return(0,ye._)`${v} && ${v} !== true && ${y} === ${e} && !${N}`}}function f(){let m=d.formats[s];if(!m){w();return}if(m===!0)return;let[g,y,v]=x(m);g===e&&t.pass(j());function w(){if(u.strictSchema===!1){d.logger.warn(N());return}throw new Error(N());function N(){return`unknown format "${s}" ignored in schema at path "${l}"`}}function x(N){let Ee=N instanceof RegExp?(0,ye.regexpCode)(N):u.code.formats?(0,ye._)`${u.code.formats}${(0,ye.getProperty)(s)}`:void 0,We=r.scopeValue("formats",{key:s,ref:N,code:Ee});return typeof N=="object"&&!(N instanceof RegExp)?[N.type||"string",N.validate,(0,ye._)`${We}.validate`]:["string",N,We]}function j(){if(typeof m=="object"&&!(m instanceof RegExp)&&m.async){if(!c.$async)throw new Error("async format in sync schema");return(0,ye._)`await ${v}(${n})`}return typeof y=="function"?(0,ye._)`${v}(${n})`:(0,ye._)`${v}.test(${n})`}}}};Cl.default=V1});var zg=z(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});var H1=Sg(),B1=[H1.default];Al.default=B1});var Tg=z(mn=>{"use strict";Object.defineProperty(mn,"__esModule",{value:!0});mn.contentVocabulary=mn.metadataVocabulary=void 0;mn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];mn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var jg=z(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});var W1=Nh(),K1=Gh(),G1=$g(),X1=zg(),Pg=Tg(),Y1=[W1.default,K1.default,(0,G1.default)(),X1.default,Pg.metadataVocabulary,Pg.contentVocabulary];Nl.default=Y1});var Og=z(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.DiscrError=void 0;var Rg;(function(t){t.Tag="tag",t.Mapping="mapping"})(Rg||(sa.DiscrError=Rg={}))});var Ig=z(Zl=>{"use strict";Object.defineProperty(Zl,"__esModule",{value:!0});var fn=F(),Ml=Og(),Eg=qs(),Q1=co(),ez=ee(),tz={message:({params:{discrError:t,tagName:e}})=>t===Ml.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,fn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},rz={keyword:"discriminator",type:"object",schemaType:"object",error:tz,code(t){let{gen:e,data:r,schema:n,parentSchema:o,it:s}=t,{oneOf:a}=o;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let i=n.propertyName;if(typeof i!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!a)throw new Error("discriminator: requires oneOf keyword");let u=e.let("valid",!1),l=e.const("tag",(0,fn._)`${r}${(0,fn.getProperty)(i)}`);e.if((0,fn._)`typeof ${l} == "string"`,()=>c(),()=>t.error(!1,{discrError:Ml.DiscrError.Tag,tag:l,tagName:i})),t.ok(u);function c(){let f=h();e.if(!1);for(let m in f)e.elseIf((0,fn._)`${l} === ${m}`),e.assign(u,d(f[m]));e.else(),t.error(!1,{discrError:Ml.DiscrError.Mapping,tag:l,tagName:i}),e.endIf()}function d(f){let m=e.name("valid"),g=t.subschema({keyword:"oneOf",schemaProp:f},m);return t.mergeEvaluated(g,fn.Name),m}function h(){var f;let m={},g=v(o),y=!0;for(let j=0;j<a.length;j++){let N=a[j];if(N?.$ref&&!(0,ez.schemaHasRulesButRef)(N,s.self.RULES)){let We=N.$ref;if(N=Eg.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,We),N instanceof Eg.SchemaEnv&&(N=N.schema),N===void 0)throw new Q1.default(s.opts.uriResolver,s.baseId,We)}let Ee=(f=N?.properties)===null||f===void 0?void 0:f[i];if(typeof Ee!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${i}"`);y=y&&(g||v(N)),w(Ee,j)}if(!y)throw new Error(`discriminator: "${i}" must be required`);return m;function v({required:j}){return Array.isArray(j)&&j.includes(i)}function w(j,N){if(j.const)x(j.const,N);else if(j.enum)for(let Ee of j.enum)x(Ee,N);else throw new Error(`discriminator: "properties/${i}" must have "const" or "enum"`)}function x(j,N){if(typeof j!="string"||j in m)throw new Error(`discriminator: "${i}" values must be unique strings`);m[j]=N}}}};Zl.default=rz});var Cg=z((g2,nz)=>{nz.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 ql=z((de,Ll)=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.MissingRefError=de.ValidationError=de.CodeGen=de.Name=de.nil=de.stringify=de.str=de._=de.KeywordCxt=de.Ajv=void 0;var oz=Rh(),sz=jg(),az=Ig(),Ag=Cg(),iz=["/properties"],aa="http://json-schema.org/draft-07/schema",hn=class extends oz.default{_addVocabularies(){super._addVocabularies(),sz.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(az.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Ag,iz):Ag;this.addMetaSchema(e,aa,!1),this.refs["http://json-schema.org/schema"]=aa}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(aa)?aa:void 0)}};de.Ajv=hn;Ll.exports=de=hn;Ll.exports.Ajv=hn;Object.defineProperty(de,"__esModule",{value:!0});de.default=hn;var cz=io();Object.defineProperty(de,"KeywordCxt",{enumerable:!0,get:function(){return cz.KeywordCxt}});var gn=F();Object.defineProperty(de,"_",{enumerable:!0,get:function(){return gn._}});Object.defineProperty(de,"str",{enumerable:!0,get:function(){return gn.str}});Object.defineProperty(de,"stringify",{enumerable:!0,get:function(){return gn.stringify}});Object.defineProperty(de,"nil",{enumerable:!0,get:function(){return gn.nil}});Object.defineProperty(de,"Name",{enumerable:!0,get:function(){return gn.Name}});Object.defineProperty(de,"CodeGen",{enumerable:!0,get:function(){return gn.CodeGen}});var uz=Zs();Object.defineProperty(de,"ValidationError",{enumerable:!0,get:function(){return uz.default}});var lz=co();Object.defineProperty(de,"MissingRefError",{enumerable:!0,get:function(){return lz.default}})});var Jg=z(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.formatNames=kt.fastFormats=kt.fullFormats=void 0;function wt(t,e){return{validate:t,compare:e}}kt.fullFormats={date:wt(Lg,Fl),time:wt(Ul(!0),Vl),"date-time":wt(Ng(!0),Dg),"iso-time":wt(Ul(),qg),"iso-date-time":wt(Ng(),Ug),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:gz,"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:xz,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:yz,int32:{type:"number",validate:vz},int64:{type:"number",validate:wz},float:{type:"number",validate:Zg},double:{type:"number",validate:Zg},password:!0,binary:!0};kt.fastFormats={...kt.fullFormats,date:wt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Fl),time:wt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Vl),"date-time":wt(/^\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,Dg),"iso-time":wt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,qg),"iso-date-time":wt(/^\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,Ug),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};kt.formatNames=Object.keys(kt.fullFormats);function dz(t){return t%4===0&&(t%100!==0||t%400===0)}var pz=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,mz=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Lg(t){let e=pz.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&&dz(r)?29:mz[n])}function Fl(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Dl=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Ul(t){return function(r){let n=Dl.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],a=+n[3],i=n[4],u=n[5]==="-"?-1:1,l=+(n[6]||0),c=+(n[7]||0);if(l>23||c>59||t&&!i)return!1;if(o<=23&&s<=59&&a<60)return!0;let d=s-c*u,h=o-l*u-(d<0?1:0);return(h===23||h===-1)&&(d===59||d===-1)&&a<61}}function Vl(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 qg(t,e){if(!(t&&e))return;let r=Dl.exec(t),n=Dl.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 Jl=/t|\s/i;function Ng(t){let e=Ul(t);return function(n){let o=n.split(Jl);return o.length===2&&Lg(o[0])&&e(o[1])}}function Dg(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Ug(t,e){if(!(t&&e))return;let[r,n]=t.split(Jl),[o,s]=e.split(Jl),a=Fl(r,o);if(a!==void 0)return a||Vl(n,s)}var fz=/\/|:/,hz=/^(?:[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 gz(t){return fz.test(t)&&hz.test(t)}var Mg=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function yz(t){return Mg.lastIndex=0,Mg.test(t)}var _z=-(2**31),bz=2**31-1;function vz(t){return Number.isInteger(t)&&t<=bz&&t>=_z}function wz(t){return Number.isInteger(t)}function Zg(){return!0}var kz=/[^\\]\\Z/;function xz(t){if(kz.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Fg=z(yn=>{"use strict";Object.defineProperty(yn,"__esModule",{value:!0});yn.formatLimitDefinition=void 0;var $z=ql(),pt=F(),Qt=pt.operators,ia={formatMaximum:{okStr:"<=",ok:Qt.LTE,fail:Qt.GT},formatMinimum:{okStr:">=",ok:Qt.GTE,fail:Qt.LT},formatExclusiveMaximum:{okStr:"<",ok:Qt.LT,fail:Qt.GTE},formatExclusiveMinimum:{okStr:">",ok:Qt.GT,fail:Qt.LTE}},Sz={message:({keyword:t,schemaCode:e})=>(0,pt.str)`should be ${ia[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,pt._)`{comparison: ${ia[t].okStr}, limit: ${e}}`};yn.formatLimitDefinition={keyword:Object.keys(ia),type:"string",schemaType:"string",$data:!0,error:Sz,code(t){let{gen:e,data:r,schemaCode:n,keyword:o,it:s}=t,{opts:a,self:i}=s;if(!a.validateFormats)return;let u=new $z.KeywordCxt(s,i.RULES.all.format.definition,"format");u.$data?l():c();function l(){let h=e.scopeValue("formats",{ref:i.formats,code:a.code.formats}),f=e.const("fmt",(0,pt._)`${h}[${u.schemaCode}]`);t.fail$data((0,pt.or)((0,pt._)`typeof ${f} != "object"`,(0,pt._)`${f} instanceof RegExp`,(0,pt._)`typeof ${f}.compare != "function"`,d(f)))}function c(){let h=u.schema,f=i.formats[h];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${h}" does not define "compare" function`);let m=e.scopeValue("formats",{key:h,ref:f,code:a.code.formats?(0,pt._)`${a.code.formats}${(0,pt.getProperty)(h)}`:void 0});t.fail$data(d(m))}function d(h){return(0,pt._)`${h}.compare(${r}, ${n}) ${ia[o].fail} 0`}},dependencies:["format"]};var zz=t=>(t.addKeyword(yn.formatLimitDefinition),t);yn.default=zz});var Wg=z((xo,Bg)=>{"use strict";Object.defineProperty(xo,"__esModule",{value:!0});var _n=Jg(),Tz=Fg(),Hl=F(),Vg=new Hl.Name("fullFormats"),Pz=new Hl.Name("fastFormats"),Bl=(t,e={keywords:!0})=>{if(Array.isArray(e))return Hg(t,e,_n.fullFormats,Vg),t;let[r,n]=e.mode==="fast"?[_n.fastFormats,Pz]:[_n.fullFormats,Vg],o=e.formats||_n.formatNames;return Hg(t,o,r,n),e.keywords&&(0,Tz.default)(t),t};Bl.get=(t,e="full")=>{let n=(e==="fast"?_n.fastFormats:_n.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Hg(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Hl._)`require("ajv-formats/dist/formats").${n}`);for(let a of e)t.addFormat(a,r[a])}Bg.exports=xo=Bl;Object.defineProperty(xo,"__esModule",{value:!0});xo.default=Bl});import{pathToFileURL as GT}from"node:url";var p={};wa(p,{BRAND:()=>f_,DIRTY:()=>rr,EMPTY_PATH:()=>Hy,INVALID:()=>M,NEVER:()=>X_,OK:()=>Pe,ParseStatus:()=>ke,Schema:()=>J,ZodAny:()=>Zt,ZodArray:()=>jt,ZodBigInt:()=>or,ZodBoolean:()=>sr,ZodBranded:()=>wn,ZodCatch:()=>gr,ZodDate:()=>ar,ZodDefault:()=>hr,ZodDiscriminatedUnion:()=>Ro,ZodEffects:()=>Ge,ZodEnum:()=>mr,ZodError:()=>Me,ZodFirstPartyTypeKind:()=>$,ZodFunction:()=>Eo,ZodIntersection:()=>lr,ZodIssueCode:()=>k,ZodLazy:()=>dr,ZodLiteral:()=>pr,ZodMap:()=>Ur,ZodNaN:()=>Fr,ZodNativeEnum:()=>fr,ZodNever:()=>ot,ZodNull:()=>cr,ZodNullable:()=>ht,ZodNumber:()=>nr,ZodObject:()=>Le,ZodOptional:()=>Ze,ZodParsedType:()=>T,ZodPipeline:()=>kn,ZodPromise:()=>Lt,ZodReadonly:()=>yr,ZodRecord:()=>Oo,ZodSchema:()=>J,ZodSet:()=>Jr,ZodString:()=>Mt,ZodSymbol:()=>qr,ZodTransformer:()=>Ge,ZodTuple:()=>ft,ZodType:()=>J,ZodUndefined:()=>ir,ZodUnion:()=>ur,ZodUnknown:()=>Pt,ZodVoid:()=>Dr,addIssueToContext:()=>S,any:()=>x_,array:()=>T_,bigint:()=>__,boolean:()=>$d,coerce:()=>G_,custom:()=>wd,date:()=>b_,datetimeRegex:()=>bd,defaultErrorMap:()=>zt,discriminatedUnion:()=>R_,effect:()=>U_,enum:()=>L_,function:()=>N_,getErrorMap:()=>Mr,getParsedType:()=>mt,instanceof:()=>g_,intersection:()=>O_,isAborted:()=>Po,isAsync:()=>Zr,isDirty:()=>jo,isValid:()=>Nt,late:()=>h_,lazy:()=>M_,literal:()=>Z_,makeIssue:()=>vn,map:()=>C_,nan:()=>y_,nativeEnum:()=>q_,never:()=>S_,null:()=>k_,nullable:()=>F_,number:()=>xd,object:()=>Sa,objectUtil:()=>ka,oboolean:()=>K_,onumber:()=>W_,optional:()=>J_,ostring:()=>B_,pipeline:()=>H_,preprocess:()=>V_,promise:()=>D_,quotelessJson:()=>Jy,record:()=>I_,set:()=>A_,setErrorMap:()=>Vy,strictObject:()=>P_,string:()=>kd,symbol:()=>v_,transformer:()=>U_,tuple:()=>E_,undefined:()=>w_,union:()=>j_,unknown:()=>$_,util:()=>B,void:()=>z_});var B;(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 a of o)s[a]=a;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(i=>typeof o[o[i]]!="number"),a={};for(let i of s)a[i]=o[i];return t.objectValues(a)},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 a in o)Object.prototype.hasOwnProperty.call(o,a)&&s.push(a);return s},t.find=(o,s)=>{for(let a of o)if(s(a))return a},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(a=>typeof a=="string"?`'${a}'`:a).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(B||(B={}));var ka;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(ka||(ka={}));var T=B.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),mt=t=>{switch(typeof t){case"undefined":return T.undefined;case"string":return T.string;case"number":return Number.isNaN(t)?T.nan:T.number;case"boolean":return T.boolean;case"function":return T.function;case"bigint":return T.bigint;case"symbol":return T.symbol;case"object":return Array.isArray(t)?T.array:t===null?T.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?T.promise:typeof Map<"u"&&t instanceof Map?T.map:typeof Set<"u"&&t instanceof Set?T.set:typeof Date<"u"&&t instanceof Date?T.date:T.object;default:return T.unknown}};var k=B.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"]),Jy=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Me=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 a of s.issues)if(a.code==="invalid_union")a.unionErrors.map(o);else if(a.code==="invalid_return_type")o(a.returnTypeError);else if(a.code==="invalid_arguments")o(a.argumentsError);else if(a.path.length===0)n._errors.push(r(a));else{let i=n,u=0;for(;u<a.path.length;){let l=a.path[u];u===a.path.length-1?(i[l]=i[l]||{_errors:[]},i[l]._errors.push(r(a))):i[l]=i[l]||{_errors:[]},i=i[l],u++}}};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,B.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()}};Me.create=t=>new Me(t);var Fy=(t,e)=>{let r;switch(t.code){case k.invalid_type:t.received===T.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case k.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,B.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${B.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${B.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${B.joinValues(t.options)}, received '${t.received}'`;break;case k.invalid_arguments:r="Invalid function arguments";break;case k.invalid_return_type:r="Invalid function return type";break;case k.invalid_date:r="Invalid date";break;case k.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}"`:B.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case k.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 k.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 k.custom:r="Invalid input";break;case k.invalid_intersection_types:r="Intersection results could not be merged";break;case k.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case k.not_finite:r="Number must be finite";break;default:r=e.defaultError,B.assertNever(t)}return{message:r}},zt=Fy;var fd=zt;function Vy(t){fd=t}function Mr(){return fd}var vn=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],a={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let i="",u=n.filter(l=>!!l).slice().reverse();for(let l of u)i=l(a,{data:e,defaultError:i}).message;return{...o,path:s,message:i}},Hy=[];function S(t,e){let r=Mr(),n=vn({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 ke=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,a=await o.value;n.push({key:s,value:a})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:a}=o;if(s.status==="aborted"||a.status==="aborted")return M;s.status==="dirty"&&e.dirty(),a.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof a.value<"u"||o.alwaysSet)&&(n[s.value]=a.value)}return{status:e.value,value:n}}},M=Object.freeze({status:"aborted"}),rr=t=>({status:"dirty",value:t}),Pe=t=>({status:"valid",value:t}),Po=t=>t.status==="aborted",jo=t=>t.status==="dirty",Nt=t=>t.status==="valid",Zr=t=>typeof Promise<"u"&&t instanceof Promise;var R;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(R||(R={}));var Ke=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}},hd=(t,e)=>{if(Nt(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 Me(t.common.issues);return this._error=r,this._error}}};function D(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:(a,i)=>{let{message:u}=t;return a.code==="invalid_enum_value"?{message:u??i.defaultError}:typeof i.data>"u"?{message:u??n??i.defaultError}:a.code!=="invalid_type"?{message:i.defaultError}:{message:u??r??i.defaultError}},description:o}}var J=class{get description(){return this._def.description}_getType(e){return mt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:mt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new ke,ctx:{common:e.parent.common,data:e.data,parsedType:mt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Zr(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:mt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return hd(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:mt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Nt(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=>Nt(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:mt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(Zr(o)?o:Promise.resolve(o));return hd(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 a=e(o),i=()=>s.addIssue({code:k.custom,...n(o)});return typeof Promise<"u"&&a instanceof Promise?a.then(u=>u?!0:(i(),!1)):a?!0:(i(),!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 Ge({schema:this,typeName:$.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 Ze.create(this,this._def)}nullable(){return ht.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return jt.create(this)}promise(){return Lt.create(this,this._def)}or(e){return ur.create([this,e],this._def)}and(e){return lr.create(this,e,this._def)}transform(e){return new Ge({...D(this._def),schema:this,typeName:$.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new hr({...D(this._def),innerType:this,defaultValue:r,typeName:$.ZodDefault})}brand(){return new wn({typeName:$.ZodBranded,type:this,...D(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new gr({...D(this._def),innerType:this,catchValue:r,typeName:$.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return kn.create(this,e)}readonly(){return yr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},By=/^c[^\s-]{8,}$/i,Wy=/^[0-9a-z]+$/,Ky=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Gy=/^[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,Xy=/^[a-z0-9_-]{21}$/i,Yy=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,Qy=/^[-+]?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)?)??$/,e_=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,t_="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",xa,r_=/^(?:(?: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])$/,n_=/^(?:(?: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])$/,o_=/^(([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]))$/,s_=/^(([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])$/,a_=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,i_=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,yd="((\\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])))",c_=new RegExp(`^${yd}$`);function _d(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 u_(t){return new RegExp(`^${_d(t)}$`)}function bd(t){let e=`${yd}T${_d(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 l_(t,e){return!!((e==="v4"||!e)&&r_.test(t)||(e==="v6"||!e)&&o_.test(t))}function d_(t,e){if(!Yy.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 p_(t,e){return!!((e==="v4"||!e)&&n_.test(t)||(e==="v6"||!e)&&s_.test(t))}var Mt=class t extends J{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==T.string){let s=this._getOrReturnCtx(e);return S(s,{code:k.invalid_type,expected:T.string,received:s.parsedType}),M}let n=new ke,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),S(o,{code:k.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),S(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let a=e.data.length>s.value,i=e.data.length<s.value;(a||i)&&(o=this._getOrReturnCtx(e,o),a?S(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):i&&S(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")e_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"email",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")xa||(xa=new RegExp(t_,"u")),xa.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"emoji",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")Gy.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"uuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")Xy.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"nanoid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")By.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"cuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Wy.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"cuid2",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")Ky.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"ulid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),S(o,{validation:"url",code:k.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),S(o,{validation:"regex",code:k.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),S(o,{code:k.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),S(o,{code:k.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),S(o,{code:k.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?bd(s).test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{code:k.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?c_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?u_(s).test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{code:k.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?Qy.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?l_(e.data,s.version)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"ip",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?d_(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"jwt",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?p_(e.data,s.version)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"cidr",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?a_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?i_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):B.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:k.invalid_string,...R.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...R.errToObj(e)})}url(e){return this._addCheck({kind:"url",...R.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...R.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...R.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...R.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...R.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...R.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...R.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...R.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...R.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...R.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...R.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...R.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,...R.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,...R.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...R.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...R.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...R.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...R.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...R.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...R.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...R.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...R.errToObj(r)})}nonempty(e){return this.min(1,R.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}};Mt.create=t=>new Mt({checks:[],typeName:$.ZodString,coerce:t?.coerce??!1,...D(t)});function m_(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(".","")),a=Number.parseInt(e.toFixed(o).replace(".",""));return s%a/10**o}var nr=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)!==T.number){let s=this._getOrReturnCtx(e);return S(s,{code:k.invalid_type,expected:T.number,received:s.parsedType}),M}let n,o=new ke;for(let s of this._def.checks)s.kind==="int"?B.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),S(n,{code:k.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),S(n,{code:k.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),S(n,{code:k.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?m_(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),S(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),S(n,{code:k.not_finite,message:s.message}),o.dirty()):B.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,R.toString(r))}gt(e,r){return this.setLimit("min",e,!1,R.toString(r))}lte(e,r){return this.setLimit("max",e,!0,R.toString(r))}lt(e,r){return this.setLimit("max",e,!1,R.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:R.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:R.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:R.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:R.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:R.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:R.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:R.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:R.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:R.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:R.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"&&B.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)}};nr.create=t=>new nr({checks:[],typeName:$.ZodNumber,coerce:t?.coerce||!1,...D(t)});var or=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)!==T.bigint)return this._getInvalidInput(e);let n,o=new ke;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),S(n,{code:k.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),S(n,{code:k.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),S(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):B.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return S(r,{code:k.invalid_type,expected:T.bigint,received:r.parsedType}),M}gte(e,r){return this.setLimit("min",e,!0,R.toString(r))}gt(e,r){return this.setLimit("min",e,!1,R.toString(r))}lte(e,r){return this.setLimit("max",e,!0,R.toString(r))}lt(e,r){return this.setLimit("max",e,!1,R.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:R.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:R.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:R.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:R.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:R.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:R.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}};or.create=t=>new or({checks:[],typeName:$.ZodBigInt,coerce:t?.coerce??!1,...D(t)});var sr=class extends J{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==T.boolean){let n=this._getOrReturnCtx(e);return S(n,{code:k.invalid_type,expected:T.boolean,received:n.parsedType}),M}return Pe(e.data)}};sr.create=t=>new sr({typeName:$.ZodBoolean,coerce:t?.coerce||!1,...D(t)});var ar=class t extends J{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==T.date){let s=this._getOrReturnCtx(e);return S(s,{code:k.invalid_type,expected:T.date,received:s.parsedType}),M}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return S(s,{code:k.invalid_date}),M}let n=new ke,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),S(o,{code:k.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),S(o,{code:k.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):B.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:R.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:R.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}};ar.create=t=>new ar({checks:[],coerce:t?.coerce||!1,typeName:$.ZodDate,...D(t)});var qr=class extends J{_parse(e){if(this._getType(e)!==T.symbol){let n=this._getOrReturnCtx(e);return S(n,{code:k.invalid_type,expected:T.symbol,received:n.parsedType}),M}return Pe(e.data)}};qr.create=t=>new qr({typeName:$.ZodSymbol,...D(t)});var ir=class extends J{_parse(e){if(this._getType(e)!==T.undefined){let n=this._getOrReturnCtx(e);return S(n,{code:k.invalid_type,expected:T.undefined,received:n.parsedType}),M}return Pe(e.data)}};ir.create=t=>new ir({typeName:$.ZodUndefined,...D(t)});var cr=class extends J{_parse(e){if(this._getType(e)!==T.null){let n=this._getOrReturnCtx(e);return S(n,{code:k.invalid_type,expected:T.null,received:n.parsedType}),M}return Pe(e.data)}};cr.create=t=>new cr({typeName:$.ZodNull,...D(t)});var Zt=class extends J{constructor(){super(...arguments),this._any=!0}_parse(e){return Pe(e.data)}};Zt.create=t=>new Zt({typeName:$.ZodAny,...D(t)});var Pt=class extends J{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Pe(e.data)}};Pt.create=t=>new Pt({typeName:$.ZodUnknown,...D(t)});var ot=class extends J{_parse(e){let r=this._getOrReturnCtx(e);return S(r,{code:k.invalid_type,expected:T.never,received:r.parsedType}),M}};ot.create=t=>new ot({typeName:$.ZodNever,...D(t)});var Dr=class extends J{_parse(e){if(this._getType(e)!==T.undefined){let n=this._getOrReturnCtx(e);return S(n,{code:k.invalid_type,expected:T.void,received:n.parsedType}),M}return Pe(e.data)}};Dr.create=t=>new Dr({typeName:$.ZodVoid,...D(t)});var jt=class t extends J{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==T.array)return S(r,{code:k.invalid_type,expected:T.array,received:r.parsedType}),M;if(o.exactLength!==null){let a=r.data.length>o.exactLength.value,i=r.data.length<o.exactLength.value;(a||i)&&(S(r,{code:a?k.too_big:k.too_small,minimum:i?o.exactLength.value:void 0,maximum:a?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&&(S(r,{code:k.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&&(S(r,{code:k.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((a,i)=>o.type._parseAsync(new Ke(r,a,r.path,i)))).then(a=>ke.mergeArray(n,a));let s=[...r.data].map((a,i)=>o.type._parseSync(new Ke(r,a,r.path,i)));return ke.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:R.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:R.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:R.toString(r)}})}nonempty(e){return this.min(1,e)}};jt.create=(t,e)=>new jt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:$.ZodArray,...D(e)});function Lr(t){if(t instanceof Le){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ze.create(Lr(n))}return new Le({...t._def,shape:()=>e})}else return t instanceof jt?new jt({...t._def,type:Lr(t.element)}):t instanceof Ze?Ze.create(Lr(t.unwrap())):t instanceof ht?ht.create(Lr(t.unwrap())):t instanceof ft?ft.create(t.items.map(e=>Lr(e))):t}var Le=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=B.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==T.object){let l=this._getOrReturnCtx(e);return S(l,{code:k.invalid_type,expected:T.object,received:l.parsedType}),M}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:a}=this._getCached(),i=[];if(!(this._def.catchall instanceof ot&&this._def.unknownKeys==="strip"))for(let l in o.data)a.includes(l)||i.push(l);let u=[];for(let l of a){let c=s[l],d=o.data[l];u.push({key:{status:"valid",value:l},value:c._parse(new Ke(o,d,o.path,l)),alwaysSet:l in o.data})}if(this._def.catchall instanceof ot){let l=this._def.unknownKeys;if(l==="passthrough")for(let c of i)u.push({key:{status:"valid",value:c},value:{status:"valid",value:o.data[c]}});else if(l==="strict")i.length>0&&(S(o,{code:k.unrecognized_keys,keys:i}),n.dirty());else if(l!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let l=this._def.catchall;for(let c of i){let d=o.data[c];u.push({key:{status:"valid",value:c},value:l._parse(new Ke(o,d,o.path,c)),alwaysSet:c in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let l=[];for(let c of u){let d=await c.key,h=await c.value;l.push({key:d,value:h,alwaysSet:c.alwaysSet})}return l}).then(l=>ke.mergeObjectSync(n,l)):ke.mergeObjectSync(n,u)}get shape(){return this._def.shape()}strict(e){return R.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:R.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:$.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 B.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 B.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Lr(this)}partial(e){let r={};for(let n of B.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 B.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Ze;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return vd(B.objectKeys(this.shape))}};Le.create=(t,e)=>new Le({shape:()=>t,unknownKeys:"strip",catchall:ot.create(),typeName:$.ZodObject,...D(e)});Le.strictCreate=(t,e)=>new Le({shape:()=>t,unknownKeys:"strict",catchall:ot.create(),typeName:$.ZodObject,...D(e)});Le.lazycreate=(t,e)=>new Le({shape:t,unknownKeys:"strip",catchall:ot.create(),typeName:$.ZodObject,...D(e)});var ur=class extends J{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let i of s)if(i.result.status==="valid")return i.result;for(let i of s)if(i.result.status==="dirty")return r.common.issues.push(...i.ctx.common.issues),i.result;let a=s.map(i=>new Me(i.ctx.common.issues));return S(r,{code:k.invalid_union,unionErrors:a}),M}if(r.common.async)return Promise.all(n.map(async s=>{let a={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:a}),ctx:a}})).then(o);{let s,a=[];for(let u of n){let l={...r,common:{...r.common,issues:[]},parent:null},c=u._parseSync({data:r.data,path:r.path,parent:l});if(c.status==="valid")return c;c.status==="dirty"&&!s&&(s={result:c,ctx:l}),l.common.issues.length&&a.push(l.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let i=a.map(u=>new Me(u));return S(r,{code:k.invalid_union,unionErrors:i}),M}}get options(){return this._def.options}};ur.create=(t,e)=>new ur({options:t,typeName:$.ZodUnion,...D(e)});var Tt=t=>t instanceof dr?Tt(t.schema):t instanceof Ge?Tt(t.innerType()):t instanceof pr?[t.value]:t instanceof mr?t.options:t instanceof fr?B.objectValues(t.enum):t instanceof hr?Tt(t._def.innerType):t instanceof ir?[void 0]:t instanceof cr?[null]:t instanceof Ze?[void 0,...Tt(t.unwrap())]:t instanceof ht?[null,...Tt(t.unwrap())]:t instanceof wn||t instanceof yr?Tt(t.unwrap()):t instanceof gr?Tt(t._def.innerType):[],Ro=class t extends J{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.object)return S(r,{code:k.invalid_type,expected:T.object,received:r.parsedType}),M;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(S(r,{code:k.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 a=Tt(s.shape[e]);if(!a.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let i of a){if(o.has(i))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(i)}`);o.set(i,s)}}return new t({typeName:$.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...D(n)})}};function $a(t,e){let r=mt(t),n=mt(e);if(t===e)return{valid:!0,data:t};if(r===T.object&&n===T.object){let o=B.objectKeys(e),s=B.objectKeys(t).filter(i=>o.indexOf(i)!==-1),a={...t,...e};for(let i of s){let u=$a(t[i],e[i]);if(!u.valid)return{valid:!1};a[i]=u.data}return{valid:!0,data:a}}else if(r===T.array&&n===T.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let a=t[s],i=e[s],u=$a(a,i);if(!u.valid)return{valid:!1};o.push(u.data)}return{valid:!0,data:o}}else return r===T.date&&n===T.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var lr=class extends J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,a)=>{if(Po(s)||Po(a))return M;let i=$a(s.value,a.value);return i.valid?((jo(s)||jo(a))&&r.dirty(),{status:r.value,value:i.data}):(S(n,{code:k.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,a])=>o(s,a)):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}))}};lr.create=(t,e,r)=>new lr({left:t,right:e,typeName:$.ZodIntersection,...D(r)});var ft=class t extends J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==T.array)return S(n,{code:k.invalid_type,expected:T.array,received:n.parsedType}),M;if(n.data.length<this._def.items.length)return S(n,{code:k.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),M;!this._def.rest&&n.data.length>this._def.items.length&&(S(n,{code:k.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((a,i)=>{let u=this._def.items[i]||this._def.rest;return u?u._parse(new Ke(n,a,n.path,i)):null}).filter(a=>!!a);return n.common.async?Promise.all(s).then(a=>ke.mergeArray(r,a)):ke.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ft.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ft({items:t,typeName:$.ZodTuple,rest:null,...D(e)})};var Oo=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!==T.object)return S(n,{code:k.invalid_type,expected:T.object,received:n.parsedType}),M;let o=[],s=this._def.keyType,a=this._def.valueType;for(let i in n.data)o.push({key:s._parse(new Ke(n,i,n.path,i)),value:a._parse(new Ke(n,n.data[i],n.path,i)),alwaysSet:i in n.data});return n.common.async?ke.mergeObjectAsync(r,o):ke.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:$.ZodRecord,...D(n)}):new t({keyType:Mt.create(),valueType:e,typeName:$.ZodRecord,...D(r)})}},Ur=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!==T.map)return S(n,{code:k.invalid_type,expected:T.map,received:n.parsedType}),M;let o=this._def.keyType,s=this._def.valueType,a=[...n.data.entries()].map(([i,u],l)=>({key:o._parse(new Ke(n,i,n.path,[l,"key"])),value:s._parse(new Ke(n,u,n.path,[l,"value"]))}));if(n.common.async){let i=new Map;return Promise.resolve().then(async()=>{for(let u of a){let l=await u.key,c=await u.value;if(l.status==="aborted"||c.status==="aborted")return M;(l.status==="dirty"||c.status==="dirty")&&r.dirty(),i.set(l.value,c.value)}return{status:r.value,value:i}})}else{let i=new Map;for(let u of a){let l=u.key,c=u.value;if(l.status==="aborted"||c.status==="aborted")return M;(l.status==="dirty"||c.status==="dirty")&&r.dirty(),i.set(l.value,c.value)}return{status:r.value,value:i}}}};Ur.create=(t,e,r)=>new Ur({valueType:e,keyType:t,typeName:$.ZodMap,...D(r)});var Jr=class t extends J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==T.set)return S(n,{code:k.invalid_type,expected:T.set,received:n.parsedType}),M;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(S(n,{code:k.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&&(S(n,{code:k.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function a(u){let l=new Set;for(let c of u){if(c.status==="aborted")return M;c.status==="dirty"&&r.dirty(),l.add(c.value)}return{status:r.value,value:l}}let i=[...n.data.values()].map((u,l)=>s._parse(new Ke(n,u,n.path,l)));return n.common.async?Promise.all(i).then(u=>a(u)):a(i)}min(e,r){return new t({...this._def,minSize:{value:e,message:R.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:R.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Jr.create=(t,e)=>new Jr({valueType:t,minSize:null,maxSize:null,typeName:$.ZodSet,...D(e)});var Eo=class t extends J{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.function)return S(r,{code:k.invalid_type,expected:T.function,received:r.parsedType}),M;function n(i,u){return vn({data:i,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Mr(),zt].filter(l=>!!l),issueData:{code:k.invalid_arguments,argumentsError:u}})}function o(i,u){return vn({data:i,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Mr(),zt].filter(l=>!!l),issueData:{code:k.invalid_return_type,returnTypeError:u}})}let s={errorMap:r.common.contextualErrorMap},a=r.data;if(this._def.returns instanceof Lt){let i=this;return Pe(async function(...u){let l=new Me([]),c=await i._def.args.parseAsync(u,s).catch(f=>{throw l.addIssue(n(u,f)),l}),d=await Reflect.apply(a,this,c);return await i._def.returns._def.type.parseAsync(d,s).catch(f=>{throw l.addIssue(o(d,f)),l})})}else{let i=this;return Pe(function(...u){let l=i._def.args.safeParse(u,s);if(!l.success)throw new Me([n(u,l.error)]);let c=Reflect.apply(a,this,l.data),d=i._def.returns.safeParse(c,s);if(!d.success)throw new Me([o(c,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:ft.create(e).rest(Pt.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||ft.create([]).rest(Pt.create()),returns:r||Pt.create(),typeName:$.ZodFunction,...D(n)})}},dr=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})}};dr.create=(t,e)=>new dr({getter:t,typeName:$.ZodLazy,...D(e)});var pr=class extends J{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return S(r,{received:r.data,code:k.invalid_literal,expected:this._def.value}),M}return{status:"valid",value:e.data}}get value(){return this._def.value}};pr.create=(t,e)=>new pr({value:t,typeName:$.ZodLiteral,...D(e)});function vd(t,e){return new mr({values:t,typeName:$.ZodEnum,...D(e)})}var mr=class t extends J{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return S(r,{expected:B.joinValues(n),received:r.parsedType,code:k.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 S(r,{received:r.data,code:k.invalid_enum_value,options:n}),M}return Pe(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})}};mr.create=vd;var fr=class extends J{_parse(e){let r=B.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==T.string&&n.parsedType!==T.number){let o=B.objectValues(r);return S(n,{expected:B.joinValues(o),received:n.parsedType,code:k.invalid_type}),M}if(this._cache||(this._cache=new Set(B.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=B.objectValues(r);return S(n,{received:n.data,code:k.invalid_enum_value,options:o}),M}return Pe(e.data)}get enum(){return this._def.values}};fr.create=(t,e)=>new fr({values:t,typeName:$.ZodNativeEnum,...D(e)});var Lt=class extends J{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.promise&&r.common.async===!1)return S(r,{code:k.invalid_type,expected:T.promise,received:r.parsedType}),M;let n=r.parsedType===T.promise?r.data:Promise.resolve(r.data);return Pe(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Lt.create=(t,e)=>new Lt({type:t,typeName:$.ZodPromise,...D(e)});var Ge=class extends J{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===$.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:a=>{S(n,a),a.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let a=o.transform(n.data,s);if(n.common.async)return Promise.resolve(a).then(async i=>{if(r.value==="aborted")return M;let u=await this._def.schema._parseAsync({data:i,path:n.path,parent:n});return u.status==="aborted"?M:u.status==="dirty"?rr(u.value):r.value==="dirty"?rr(u.value):u});{if(r.value==="aborted")return M;let i=this._def.schema._parseSync({data:a,path:n.path,parent:n});return i.status==="aborted"?M:i.status==="dirty"?rr(i.value):r.value==="dirty"?rr(i.value):i}}if(o.type==="refinement"){let a=i=>{let u=o.refinement(i,s);if(n.common.async)return Promise.resolve(u);if(u instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return i};if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return i.status==="aborted"?M:(i.status==="dirty"&&r.dirty(),a(i.value),{status:r.value,value:i.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>i.status==="aborted"?M:(i.status==="dirty"&&r.dirty(),a(i.value).then(()=>({status:r.value,value:i.value}))))}if(o.type==="transform")if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Nt(a))return M;let i=o.transform(a.value,s);if(i instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:i}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>Nt(a)?Promise.resolve(o.transform(a.value,s)).then(i=>({status:r.value,value:i})):M);B.assertNever(o)}};Ge.create=(t,e,r)=>new Ge({schema:t,typeName:$.ZodEffects,effect:e,...D(r)});Ge.createWithPreprocess=(t,e,r)=>new Ge({schema:e,effect:{type:"preprocess",transform:t},typeName:$.ZodEffects,...D(r)});var Ze=class extends J{_parse(e){return this._getType(e)===T.undefined?Pe(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ze.create=(t,e)=>new Ze({innerType:t,typeName:$.ZodOptional,...D(e)});var ht=class extends J{_parse(e){return this._getType(e)===T.null?Pe(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};ht.create=(t,e)=>new ht({innerType:t,typeName:$.ZodNullable,...D(e)});var hr=class extends J{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===T.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};hr.create=(t,e)=>new hr({innerType:t,typeName:$.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...D(e)});var gr=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 Zr(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Me(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Me(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};gr.create=(t,e)=>new gr({innerType:t,typeName:$.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...D(e)});var Fr=class extends J{_parse(e){if(this._getType(e)!==T.nan){let n=this._getOrReturnCtx(e);return S(n,{code:k.invalid_type,expected:T.nan,received:n.parsedType}),M}return{status:"valid",value:e.data}}};Fr.create=t=>new Fr({typeName:$.ZodNaN,...D(t)});var f_=Symbol("zod_brand"),wn=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}},kn=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(),rr(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:$.ZodPipeline})}},yr=class extends J{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Nt(o)&&(o.value=Object.freeze(o.value)),o);return Zr(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};yr.create=(t,e)=>new yr({innerType:t,typeName:$.ZodReadonly,...D(e)});function gd(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function wd(t,e={},r){return t?Zt.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(a=>{if(!a){let i=gd(e,n),u=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:u})}});if(!s){let a=gd(e,n),i=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:i})}}):Zt.create()}var h_={object:Le.lazycreate},$;(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"})($||($={}));var g_=(t,e={message:`Input not instance of ${t.name}`})=>wd(r=>r instanceof t,e),kd=Mt.create,xd=nr.create,y_=Fr.create,__=or.create,$d=sr.create,b_=ar.create,v_=qr.create,w_=ir.create,k_=cr.create,x_=Zt.create,$_=Pt.create,S_=ot.create,z_=Dr.create,T_=jt.create,Sa=Le.create,P_=Le.strictCreate,j_=ur.create,R_=Ro.create,O_=lr.create,E_=ft.create,I_=Oo.create,C_=Ur.create,A_=Jr.create,N_=Eo.create,M_=dr.create,Z_=pr.create,L_=mr.create,q_=fr.create,D_=Lt.create,U_=Ge.create,J_=Ze.create,F_=ht.create,V_=Ge.createWithPreprocess,H_=kn.create,B_=()=>kd().optional(),W_=()=>xd().optional(),K_=()=>$d().optional(),G_={string:(t=>Mt.create({...t,coerce:!0})),number:(t=>nr.create({...t,coerce:!0})),boolean:(t=>sr.create({...t,coerce:!0})),bigint:(t=>or.create({...t,coerce:!0})),date:(t=>ar.create({...t,coerce:!0}))};var X_=M;var Q_=Object.freeze({status:"aborted"});function b(t,e,r){function n(i,u){var l;Object.defineProperty(i,"_zod",{value:i._zod??{},enumerable:!1}),(l=i._zod).traits??(l.traits=new Set),i._zod.traits.add(t),e(i,u);for(let c in a.prototype)c in i||Object.defineProperty(i,c,{value:a.prototype[c].bind(i)});i._zod.constr=a,i._zod.def=u}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function a(i){var u;let l=r?.Parent?new s:this;n(l,i),(u=l._zod).deferred??(u.deferred=[]);for(let c of l._zod.deferred)c();return l}return Object.defineProperty(a,"init",{value:n}),Object.defineProperty(a,Symbol.hasInstance,{value:i=>r?.Parent&&i instanceof r.Parent?!0:i?._zod?.traits?.has(t)}),Object.defineProperty(a,"name",{value:t}),a}var Rt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Io={};function Ve(t){return t&&Object.assign(Io,t),Io}var W={};wa(W,{BIGINT_FORMAT_RANGES:()=>zd,Class:()=>Ta,NUMBER_FORMAT_RANGES:()=>Ca,aborted:()=>br,allowsEval:()=>Oa,assert:()=>ob,assertEqual:()=>eb,assertIs:()=>rb,assertNever:()=>nb,assertNotEqual:()=>tb,assignProp:()=>Ra,cached:()=>Sn,captureStackTrace:()=>Ao,cleanEnum:()=>yb,cleanRegex:()=>Tn,clone:()=>He,createTransparentProxy:()=>lb,defineLazy:()=>ae,esc:()=>_r,escapeRegex:()=>qt,extend:()=>mb,finalizeIssue:()=>st,floatSafeRemainder:()=>ja,getElementAtPath:()=>sb,getEnumValues:()=>$n,getLengthableOrigin:()=>Pn,getParsedType:()=>ub,getSizableOrigin:()=>Td,isObject:()=>Vr,isPlainObject:()=>Hr,issue:()=>Aa,joinValues:()=>Co,jsonStringifyReplacer:()=>Pa,merge:()=>fb,normalizeParams:()=>Z,nullish:()=>zn,numKeys:()=>cb,omit:()=>pb,optionalKeys:()=>Ia,partial:()=>hb,pick:()=>db,prefixIssues:()=>gt,primitiveTypes:()=>Sd,promiseAllObject:()=>ab,propertyKeyTypes:()=>Ea,randomString:()=>ib,required:()=>gb,stringifyPrimitive:()=>No,unwrapMessage:()=>xn});function eb(t){return t}function tb(t){return t}function rb(t){}function nb(t){throw new Error}function ob(t){}function $n(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 Co(t,e="|"){return t.map(r=>No(r)).join(e)}function Pa(t,e){return typeof e=="bigint"?e.toString():e}function Sn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function zn(t){return t==null}function Tn(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function ja(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(".","")),a=Number.parseInt(e.toFixed(o).replace(".",""));return s%a/10**o}function ae(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Ra(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function sb(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function ab(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 ib(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function _r(t){return JSON.stringify(t)}var Ao=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function Vr(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Oa=Sn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Hr(t){if(Vr(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(Vr(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function cb(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var ub=t=>{let e=typeof t;switch(e){case"undefined":return"undefined";case"string":return"string";case"number":return Number.isNaN(t)?"nan":"number";case"boolean":return"boolean";case"function":return"function";case"bigint":return"bigint";case"symbol":return"symbol";case"object":return Array.isArray(t)?"array":t===null?"null":t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?"promise":typeof Map<"u"&&t instanceof Map?"map":typeof Set<"u"&&t instanceof Set?"set":typeof Date<"u"&&t instanceof Date?"date":typeof File<"u"&&t instanceof File?"file":"object";default:throw new Error(`Unknown data type: ${e}`)}},Ea=new Set(["string","number","symbol"]),Sd=new Set(["string","number","bigint","boolean","symbol","undefined"]);function qt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function He(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function Z(t){let e=t;if(!e)return{};if(typeof e=="string")return{error:()=>e};if(e?.message!==void 0){if(e?.error!==void 0)throw new Error("Cannot specify both `message` and `error` params");e.error=e.message}return delete e.message,typeof e.error=="string"?{...e,error:()=>e.error}:e}function lb(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function No(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ia(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Ca={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]},zd={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function db(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 He(t,{...t._zod.def,shape:r,checks:[]})}function pb(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 He(t,{...t._zod.def,shape:r,checks:[]})}function mb(t,e){if(!Hr(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return Ra(this,"shape",n),n},checks:[]};return He(t,r)}function fb(t,e){return He(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ra(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function hb(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return He(e,{...e._zod.def,shape:o,checks:[]})}function gb(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 He(e,{...e._zod.def,shape:o,checks:[]})}function br(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function gt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function xn(t){return typeof t=="string"?t:t?.message}function st(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=xn(t.inst?._zod.def?.error?.(t))??xn(e?.error?.(t))??xn(r.customError?.(t))??xn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Td(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Pn(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 yb(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ta=class{constructor(...e){}};var Pd=(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,Pa,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Mo=b("$ZodError",Pd),jn=b("$ZodError",Pd,{Parent:Error});function Na(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function Ma(t,e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let a of s.issues)if(a.code==="invalid_union"&&a.errors.length)a.errors.map(i=>o({issues:i}));else if(a.code==="invalid_key")o({issues:a.issues});else if(a.code==="invalid_element")o({issues:a.issues});else if(a.path.length===0)n._errors.push(r(a));else{let i=n,u=0;for(;u<a.path.length;){let l=a.path[u];u===a.path.length-1?(i[l]=i[l]||{_errors:[]},i[l]._errors.push(r(a))):i[l]=i[l]||{_errors:[]},i=i[l],u++}}};return o(t),n}var Za=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},a=e._zod.run({value:r,issues:[]},s);if(a instanceof Promise)throw new Rt;if(a.issues.length){let i=new(o?.Err??t)(a.issues.map(u=>st(u,s,Ve())));throw Ao(i,o?.callee),i}return a.value},La=Za(jn),qa=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},a=e._zod.run({value:r,issues:[]},s);if(a instanceof Promise&&(a=await a),a.issues.length){let i=new(o?.Err??t)(a.issues.map(u=>st(u,s,Ve())));throw Ao(i,o?.callee),i}return a.value},Da=qa(jn),Ua=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 Rt;return s.issues.length?{success:!1,error:new(t??Mo)(s.issues.map(a=>st(a,o,Ve())))}:{success:!0,data:s.value}},vr=Ua(jn),Ja=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(a=>st(a,o,Ve())))}:{success:!0,data:s.value}},wr=Ja(jn);var jd=/^[cC][^\s-]{8,}$/,Rd=/^[0-9a-z]+$/,Od=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Ed=/^[0-9a-vA-V]{20}$/,Id=/^[A-Za-z0-9]{27}$/,Cd=/^[a-zA-Z0-9_-]{21}$/,Ad=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Nd=/^([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 Md=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var bb="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Zd(){return new RegExp(bb,"u")}var Ld=/^(?:(?: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])$/,qd=/^(([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})$/,Dd=/^((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])$/,Ud=/^(([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])$/,Jd=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Va=/^[A-Za-z0-9_-]*$/,Fd=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Vd=/^\+(?:[0-9]){6,14}[0-9]$/,Hd="(?:(?:\\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])))",Bd=new RegExp(`^${Hd}$`);function Wd(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 Kd(t){return new RegExp(`^${Wd(t)}$`)}function Gd(t){let e=Wd({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(`^${Hd}T(?:${n})$`)}var Xd=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Yd=/^\d+$/,Qd=/^-?\d+(?:\.\d+)?/i,ep=/true|false/i,tp=/null/i;var rp=/^[^A-Z]*$/,np=/^[^a-z]*$/;var xe=b("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),op={number:"number",bigint:"bigint",object:"date"},Ha=b("$ZodCheckLessThan",(t,e)=>{xe.init(t,e);let r=op[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Ba=b("$ZodCheckGreaterThan",(t,e)=>{xe.init(t,e);let r=op[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})}}),sp=b("$ZodCheckMultipleOf",(t,e)=>{xe.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):ja(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})}}),ap=b("$ZodCheckNumberFormat",(t,e)=>{xe.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Ca[e.format];t._zod.onattach.push(a=>{let i=a._zod.bag;i.format=e.format,i.minimum=o,i.maximum=s,r&&(i.pattern=Yd)}),t._zod.check=a=>{let i=a.value;if(r){if(!Number.isInteger(i)){a.issues.push({expected:n,format:e.format,code:"invalid_type",input:i,inst:t});return}if(!Number.isSafeInteger(i)){i>0?a.issues.push({input:i,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):a.issues.push({input:i,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}}i<o&&a.issues.push({origin:"number",input:i,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),i>s&&a.issues.push({origin:"number",input:i,code:"too_big",maximum:s,inst:t})}});var ip=b("$ZodCheckMaxLength",(t,e)=>{var r;xe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!zn(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 a=Pn(o);n.issues.push({origin:a,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),cp=b("$ZodCheckMinLength",(t,e)=>{var r;xe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!zn(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 a=Pn(o);n.issues.push({origin:a,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),up=b("$ZodCheckLengthEquals",(t,e)=>{var r;xe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!zn(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 a=Pn(o),i=s>e.length;n.issues.push({origin:a,...i?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),Rn=b("$ZodCheckStringFormat",(t,e)=>{var r,n;xe.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=()=>{})}),lp=b("$ZodCheckRegex",(t,e)=>{Rn.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})}}),dp=b("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=rp),Rn.init(t,e)}),pp=b("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=np),Rn.init(t,e)}),mp=b("$ZodCheckIncludes",(t,e)=>{xe.init(t,e);let r=qt(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})}}),fp=b("$ZodCheckStartsWith",(t,e)=>{xe.init(t,e);let r=new RegExp(`^${qt(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})}}),hp=b("$ZodCheckEndsWith",(t,e)=>{xe.init(t,e);let r=new RegExp(`.*${qt(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 gp=b("$ZodCheckOverwrite",(t,e)=>{xe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Lo=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
|
-
`).filter(
|
|
12
|
-
`))}};var
|
|
13
|
-
if (${
|
|
10
|
+
deps: ${r}}`};var Lz={keyword:"dependencies",type:"object",schemaType:"object",error:wt.error,code(t){let[e,r]=Dz(t);hg(t,e),gg(t,r)}};function Dz({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 hg(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 u=(0,$o.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(u,()=>{for(let l of a)(0,$o.checkReportMissingProp)(t,l)}):(r.if((0,$l._)`${u} && (${(0,$o.checkMissingProp)(t,a,s)})`),(0,$o.reportMissingProp)(t,s),r.else())}}wt.validatePropertyDeps=hg;function gg(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,Zz.alwaysValidSchema)(s,e[a])||(r.if((0,$o.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let u=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(u,i)},()=>r.var(i,!0)),t.ok(i))}wt.validateSchemaDeps=gg;wt.default=Lz});var bg=z(Sl=>{"use strict";Object.defineProperty(Sl,"__esModule",{value:!0});var _g=F(),Uz=ee(),qz={message:"property name must be valid",params:({params:t})=>(0,_g._)`{propertyName: ${t.propertyName}}`},Jz={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:qz,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,Uz.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,_g.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Sl.default=Jz});var Tl=z(zl=>{"use strict";Object.defineProperty(zl,"__esModule",{value:!0});var oi=rt(),pt=F(),Fz=Et(),si=ee(),Vz={message:"must NOT have additional properties",params:({params:t})=>(0,pt._)`{additionalProperty: ${t.additionalProperty}}`},Hz={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Vz,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:u}=i;if(i.props=!0,u.removeAdditional!=="all"&&(0,si.alwaysValidSchema)(i,r))return;let l=(0,oi.allSchemaProperties)(n.properties),c=(0,oi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,pt._)`${s} === ${Fz.default.errors}`);function d(){e.forIn("key",o,y=>{!l.length&&!c.length?f(y):e.if(g(y),()=>f(y))})}function g(y){let v;if(l.length>8){let w=(0,si.schemaRefOrVal)(i,n.properties,"properties");v=(0,oi.isOwnProperty)(e,w,y)}else l.length?v=(0,pt.or)(...l.map(w=>(0,pt._)`${y} === ${w}`)):v=pt.nil;return c.length&&(v=(0,pt.or)(v,...c.map(w=>(0,pt._)`${(0,oi.usePattern)(t,w)}.test(${y})`))),(0,pt.not)(v)}function h(y){e.code((0,pt._)`delete ${o}[${y}]`)}function f(y){if(u.removeAdditional==="all"||u.removeAdditional&&r===!1){h(y);return}if(r===!1){t.setParams({additionalProperty:y}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,si.alwaysValidSchema)(i,r)){let v=e.name("valid");u.removeAdditional==="failing"?(m(y,v,!1),e.if((0,pt.not)(v),()=>{t.reset(),h(y)})):(m(y,v),a||e.if((0,pt.not)(v),()=>e.break()))}}function m(y,v,w){let k={keyword:"additionalProperties",dataProp:y,dataPropType:si.Type.Str};w===!1&&Object.assign(k,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(k,v)}}};zl.default=Hz});var kg=z(jl=>{"use strict";Object.defineProperty(jl,"__esModule",{value:!0});var Bz=uo(),vg=rt(),Pl=ee(),wg=Tl(),Wz={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&&wg.default.code(new Bz.KeywordCxt(s,wg.default,"additionalProperties"));let i=(0,vg.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Pl.mergeEvaluated.props(e,(0,Pl.toHash)(i),s.props));let a=i.filter(d=>!(0,Pl.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let u=e.name("valid");for(let d of a)l(d)?c(d):(e.if((0,vg.propertyInData)(e,o,d,s.opts.ownProperties)),c(d),s.allErrors||e.else().var(u,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(u);function l(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function c(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},u)}}};jl.default=Wz});var zg=z(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});var xg=rt(),ii=F(),$g=ee(),Sg=ee(),Kz={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,xg.allSchemaProperties)(r),u=a.filter(m=>(0,$g.alwaysValidSchema)(s,r[m]));if(a.length===0||u.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let l=i.strictSchema&&!i.allowMatchingProperties&&o.properties,c=e.name("valid");s.props!==!0&&!(s.props instanceof ii.Name)&&(s.props=(0,Sg.evaluatedPropsToName)(e,s.props));let{props:d}=s;g();function g(){for(let m of a)l&&h(m),s.allErrors?f(m):(e.var(c,!0),f(m),e.if(c))}function h(m){for(let y in l)new RegExp(m).test(y)&&(0,$g.checkStrictMode)(s,`property ${y} matches pattern ${m} (use allowMatchingProperties)`)}function f(m){e.forIn("key",n,y=>{e.if((0,ii._)`${(0,xg.usePattern)(t,m)}.test(${y})`,()=>{let v=u.includes(m);v||t.subschema({keyword:"patternProperties",schemaProp:m,dataProp:y,dataPropType:Sg.Type.Str},c),s.opts.unevaluated&&d!==!0?e.assign((0,ii._)`${d}[${y}]`,!0):!v&&!s.allErrors&&e.if((0,ii.not)(c),()=>e.break())})})}}};Rl.default=Kz});var Tg=z(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});var Gz=ee(),Xz={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,Gz.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"}};Ol.default=Xz});var Pg=z(Il=>{"use strict";Object.defineProperty(Il,"__esModule",{value:!0});var Yz=rt(),Qz={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:Yz.validateUnion,error:{message:"must match a schema in anyOf"}};Il.default=Qz});var jg=z(El=>{"use strict";Object.defineProperty(El,"__esModule",{value:!0});var ai=F(),e1=ee(),t1={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,ai._)`{passingSchemas: ${t.passing}}`},r1={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:t1,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),u=e.name("_valid");t.setParams({passing:a}),e.block(l),t.result(i,()=>t.reset(),()=>t.error(!0));function l(){s.forEach((c,d)=>{let g;(0,e1.alwaysValidSchema)(o,c)?e.var(u,!0):g=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},u),d>0&&e.if((0,ai._)`${u} && ${i}`).assign(i,!1).assign(a,(0,ai._)`[${a}, ${d}]`).else(),e.if(u,()=>{e.assign(i,!0),e.assign(a,d),g&&t.mergeEvaluated(g,ai.Name)})})}}};El.default=r1});var Rg=z(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});var n1=ee(),o1={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,n1.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Cl.default=o1});var Eg=z(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});var ci=F(),Ig=ee(),s1={message:({params:t})=>(0,ci.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,ci._)`{failingKeyword: ${t.ifClause}}`},i1={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:s1,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Ig.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Og(n,"then"),s=Og(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(u(),t.reset(),o&&s){let c=e.let("ifClause");t.setParams({ifClause:c}),e.if(a,l("then",c),l("else",c))}else o?e.if(a,l("then")):e.if((0,ci.not)(a),l("else"));t.pass(i,()=>t.error(!0));function u(){let c=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(c)}function l(c,d){return()=>{let g=t.subschema({keyword:c},a);e.assign(i,a),t.mergeValidEvaluated(g,i),d?e.assign(d,(0,ci._)`${c}`):t.setParams({ifClause:c})}}}};function Og(t,e){let r=t.schema[e];return r!==void 0&&!(0,Ig.alwaysValidSchema)(t,r)}Al.default=i1});var Cg=z(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});var a1=ee(),c1={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,a1.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Nl.default=c1});var Ag=z(Ml=>{"use strict";Object.defineProperty(Ml,"__esModule",{value:!0});var u1=bl(),l1=dg(),d1=vl(),p1=fg(),f1=mg(),m1=yg(),h1=bg(),g1=Tl(),y1=kg(),_1=zg(),b1=Tg(),v1=Pg(),w1=jg(),k1=Rg(),x1=Eg(),$1=Cg();function S1(t=!1){let e=[b1.default,v1.default,w1.default,k1.default,x1.default,$1.default,h1.default,g1.default,m1.default,y1.default,_1.default];return t?e.push(l1.default,p1.default):e.push(u1.default,d1.default),e.push(f1.default),e}Ml.default=S1});var Ng=z(Zl=>{"use strict";Object.defineProperty(Zl,"__esModule",{value:!0});var ye=F(),z1={message:({schemaCode:t})=>(0,ye.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ye._)`{format: ${t}}`},T1={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:z1,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:u,errSchemaPath:l,schemaEnv:c,self:d}=a;if(!u.validateFormats)return;o?g():h();function g(){let f=r.scopeValue("formats",{ref:d.formats,code:u.code.formats}),m=r.const("fDef",(0,ye._)`${f}[${i}]`),y=r.let("fType"),v=r.let("format");r.if((0,ye._)`typeof ${m} == "object" && !(${m} instanceof RegExp)`,()=>r.assign(y,(0,ye._)`${m}.type || "string"`).assign(v,(0,ye._)`${m}.validate`),()=>r.assign(y,(0,ye._)`"string"`).assign(v,m)),t.fail$data((0,ye.or)(w(),k()));function w(){return u.strictSchema===!1?ye.nil:(0,ye._)`${i} && !${v}`}function k(){let j=c.$async?(0,ye._)`(${m}.async ? await ${v}(${n}) : ${v}(${n}))`:(0,ye._)`${v}(${n})`,N=(0,ye._)`(typeof ${v} == "function" ? ${j} : ${v}.test(${n}))`;return(0,ye._)`${v} && ${v} !== true && ${y} === ${e} && !${N}`}}function h(){let f=d.formats[s];if(!f){w();return}if(f===!0)return;let[m,y,v]=k(f);m===e&&t.pass(j());function w(){if(u.strictSchema===!1){d.logger.warn(N());return}throw new Error(N());function N(){return`unknown format "${s}" ignored in schema at path "${l}"`}}function k(N){let Ie=N instanceof RegExp?(0,ye.regexpCode)(N):u.code.formats?(0,ye._)`${u.code.formats}${(0,ye.getProperty)(s)}`:void 0,Ke=r.scopeValue("formats",{key:s,ref:N,code:Ie});return typeof N=="object"&&!(N instanceof RegExp)?[N.type||"string",N.validate,(0,ye._)`${Ke}.validate`]:["string",N,Ke]}function j(){if(typeof f=="object"&&!(f instanceof RegExp)&&f.async){if(!c.$async)throw new Error("async format in sync schema");return(0,ye._)`await ${v}(${n})`}return typeof y=="function"?(0,ye._)`${v}(${n})`:(0,ye._)`${v}.test(${n})`}}}};Zl.default=T1});var Mg=z(Ll=>{"use strict";Object.defineProperty(Ll,"__esModule",{value:!0});var P1=Ng(),j1=[P1.default];Ll.default=j1});var Zg=z(mn=>{"use strict";Object.defineProperty(mn,"__esModule",{value:!0});mn.contentVocabulary=mn.metadataVocabulary=void 0;mn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];mn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Dg=z(Dl=>{"use strict";Object.defineProperty(Dl,"__esModule",{value:!0});var R1=Bh(),O1=ag(),I1=Ag(),E1=Mg(),Lg=Zg(),C1=[R1.default,O1.default,(0,I1.default)(),E1.default,Lg.metadataVocabulary,Lg.contentVocabulary];Dl.default=C1});var qg=z(ui=>{"use strict";Object.defineProperty(ui,"__esModule",{value:!0});ui.DiscrError=void 0;var Ug;(function(t){t.Tag="tag",t.Mapping="mapping"})(Ug||(ui.DiscrError=Ug={}))});var Fg=z(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});var hn=F(),Ul=qg(),Jg=Fs(),A1=lo(),N1=ee(),M1={message:({params:{discrError:t,tagName:e}})=>t===Ul.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,hn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},Z1={keyword:"discriminator",type:"object",schemaType:"object",error:M1,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 u=e.let("valid",!1),l=e.const("tag",(0,hn._)`${r}${(0,hn.getProperty)(a)}`);e.if((0,hn._)`typeof ${l} == "string"`,()=>c(),()=>t.error(!1,{discrError:Ul.DiscrError.Tag,tag:l,tagName:a})),t.ok(u);function c(){let h=g();e.if(!1);for(let f in h)e.elseIf((0,hn._)`${l} === ${f}`),e.assign(u,d(h[f]));e.else(),t.error(!1,{discrError:Ul.DiscrError.Mapping,tag:l,tagName:a}),e.endIf()}function d(h){let f=e.name("valid"),m=t.subschema({keyword:"oneOf",schemaProp:h},f);return t.mergeEvaluated(m,hn.Name),f}function g(){var h;let f={},m=v(o),y=!0;for(let j=0;j<i.length;j++){let N=i[j];if(N?.$ref&&!(0,N1.schemaHasRulesButRef)(N,s.self.RULES)){let Ke=N.$ref;if(N=Jg.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,Ke),N instanceof Jg.SchemaEnv&&(N=N.schema),N===void 0)throw new A1.default(s.opts.uriResolver,s.baseId,Ke)}let Ie=(h=N?.properties)===null||h===void 0?void 0:h[a];if(typeof Ie!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);y=y&&(m||v(N)),w(Ie,j)}if(!y)throw new Error(`discriminator: "${a}" must be required`);return f;function v({required:j}){return Array.isArray(j)&&j.includes(a)}function w(j,N){if(j.const)k(j.const,N);else if(j.enum)for(let Ie of j.enum)k(Ie,N);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function k(j,N){if(typeof j!="string"||j in f)throw new Error(`discriminator: "${a}" values must be unique strings`);f[j]=N}}}};ql.default=Z1});var Vg=z((T2,L1)=>{L1.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 Fl=z((de,Jl)=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.MissingRefError=de.ValidationError=de.CodeGen=de.Name=de.nil=de.stringify=de.str=de._=de.KeywordCxt=de.Ajv=void 0;var D1=Uh(),U1=Dg(),q1=Fg(),Hg=Vg(),J1=["/properties"],li="http://json-schema.org/draft-07/schema",gn=class extends D1.default{_addVocabularies(){super._addVocabularies(),U1.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(q1.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Hg,J1):Hg;this.addMetaSchema(e,li,!1),this.refs["http://json-schema.org/schema"]=li}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(li)?li:void 0)}};de.Ajv=gn;Jl.exports=de=gn;Jl.exports.Ajv=gn;Object.defineProperty(de,"__esModule",{value:!0});de.default=gn;var F1=uo();Object.defineProperty(de,"KeywordCxt",{enumerable:!0,get:function(){return F1.KeywordCxt}});var yn=F();Object.defineProperty(de,"_",{enumerable:!0,get:function(){return yn._}});Object.defineProperty(de,"str",{enumerable:!0,get:function(){return yn.str}});Object.defineProperty(de,"stringify",{enumerable:!0,get:function(){return yn.stringify}});Object.defineProperty(de,"nil",{enumerable:!0,get:function(){return yn.nil}});Object.defineProperty(de,"Name",{enumerable:!0,get:function(){return yn.Name}});Object.defineProperty(de,"CodeGen",{enumerable:!0,get:function(){return yn.CodeGen}});var V1=qs();Object.defineProperty(de,"ValidationError",{enumerable:!0,get:function(){return V1.default}});var H1=lo();Object.defineProperty(de,"MissingRefError",{enumerable:!0,get:function(){return H1.default}})});var ey=z(xt=>{"use strict";Object.defineProperty(xt,"__esModule",{value:!0});xt.formatNames=xt.fastFormats=xt.fullFormats=void 0;function kt(t,e){return{validate:t,compare:e}}xt.fullFormats={date:kt(Gg,Wl),time:kt(Hl(!0),Kl),"date-time":kt(Bg(!0),Yg),"iso-time":kt(Hl(),Xg),"iso-date-time":kt(Bg(),Qg),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:Y1,"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:sT,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:Q1,int32:{type:"number",validate:rT},int64:{type:"number",validate:nT},float:{type:"number",validate:Kg},double:{type:"number",validate:Kg},password:!0,binary:!0};xt.fastFormats={...xt.fullFormats,date:kt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Wl),time:kt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Kl),"date-time":kt(/^\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,Yg),"iso-time":kt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Xg),"iso-date-time":kt(/^\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,Qg),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};xt.formatNames=Object.keys(xt.fullFormats);function B1(t){return t%4===0&&(t%100!==0||t%400===0)}var W1=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,K1=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Gg(t){let e=W1.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&&B1(r)?29:K1[n])}function Wl(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Vl=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Hl(t){return function(r){let n=Vl.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],u=n[5]==="-"?-1:1,l=+(n[6]||0),c=+(n[7]||0);if(l>23||c>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-c*u,g=o-l*u-(d<0?1:0);return(g===23||g===-1)&&(d===59||d===-1)&&i<61}}function Kl(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 Xg(t,e){if(!(t&&e))return;let r=Vl.exec(t),n=Vl.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 Bl=/t|\s/i;function Bg(t){let e=Hl(t);return function(n){let o=n.split(Bl);return o.length===2&&Gg(o[0])&&e(o[1])}}function Yg(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Qg(t,e){if(!(t&&e))return;let[r,n]=t.split(Bl),[o,s]=e.split(Bl),i=Wl(r,o);if(i!==void 0)return i||Kl(n,s)}var G1=/\/|:/,X1=/^(?:[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 Y1(t){return G1.test(t)&&X1.test(t)}var Wg=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function Q1(t){return Wg.lastIndex=0,Wg.test(t)}var eT=-(2**31),tT=2**31-1;function rT(t){return Number.isInteger(t)&&t<=tT&&t>=eT}function nT(t){return Number.isInteger(t)}function Kg(){return!0}var oT=/[^\\]\\Z/;function sT(t){if(oT.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var ty=z(_n=>{"use strict";Object.defineProperty(_n,"__esModule",{value:!0});_n.formatLimitDefinition=void 0;var iT=Fl(),ft=F(),er=ft.operators,di={formatMaximum:{okStr:"<=",ok:er.LTE,fail:er.GT},formatMinimum:{okStr:">=",ok:er.GTE,fail:er.LT},formatExclusiveMaximum:{okStr:"<",ok:er.LT,fail:er.GTE},formatExclusiveMinimum:{okStr:">",ok:er.GT,fail:er.LTE}},aT={message:({keyword:t,schemaCode:e})=>(0,ft.str)`should be ${di[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,ft._)`{comparison: ${di[t].okStr}, limit: ${e}}`};_n.formatLimitDefinition={keyword:Object.keys(di),type:"string",schemaType:"string",$data:!0,error:aT,code(t){let{gen:e,data:r,schemaCode:n,keyword:o,it:s}=t,{opts:i,self:a}=s;if(!i.validateFormats)return;let u=new iT.KeywordCxt(s,a.RULES.all.format.definition,"format");u.$data?l():c();function l(){let g=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),h=e.const("fmt",(0,ft._)`${g}[${u.schemaCode}]`);t.fail$data((0,ft.or)((0,ft._)`typeof ${h} != "object"`,(0,ft._)`${h} instanceof RegExp`,(0,ft._)`typeof ${h}.compare != "function"`,d(h)))}function c(){let g=u.schema,h=a.formats[g];if(!h||h===!0)return;if(typeof h!="object"||h instanceof RegExp||typeof h.compare!="function")throw new Error(`"${o}": format "${g}" does not define "compare" function`);let f=e.scopeValue("formats",{key:g,ref:h,code:i.code.formats?(0,ft._)`${i.code.formats}${(0,ft.getProperty)(g)}`:void 0});t.fail$data(d(f))}function d(g){return(0,ft._)`${g}.compare(${r}, ${n}) ${di[o].fail} 0`}},dependencies:["format"]};var cT=t=>(t.addKeyword(_n.formatLimitDefinition),t);_n.default=cT});var sy=z((So,oy)=>{"use strict";Object.defineProperty(So,"__esModule",{value:!0});var bn=ey(),uT=ty(),Gl=F(),ry=new Gl.Name("fullFormats"),lT=new Gl.Name("fastFormats"),Xl=(t,e={keywords:!0})=>{if(Array.isArray(e))return ny(t,e,bn.fullFormats,ry),t;let[r,n]=e.mode==="fast"?[bn.fastFormats,lT]:[bn.fullFormats,ry],o=e.formats||bn.formatNames;return ny(t,o,r,n),e.keywords&&(0,uT.default)(t),t};Xl.get=(t,e="full")=>{let n=(e==="fast"?bn.fastFormats:bn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function ny(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Gl._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}oy.exports=So=Xl;Object.defineProperty(So,"__esModule",{value:!0});So.default=Xl});import{pathToFileURL as aj}from"node:url";var p={};Si(p,{BRAND:()=>G_,DIRTY:()=>nr,EMPTY_PATH:()=>P_,INVALID:()=>M,NEVER:()=>Eb,OK:()=>Pe,ParseStatus:()=>ke,Schema:()=>J,ZodAny:()=>Lt,ZodArray:()=>jt,ZodBigInt:()=>sr,ZodBoolean:()=>ir,ZodBranded:()=>xn,ZodCatch:()=>yr,ZodDate:()=>ar,ZodDefault:()=>gr,ZodDiscriminatedUnion:()=>Co,ZodEffects:()=>Xe,ZodEnum:()=>mr,ZodError:()=>Me,ZodFirstPartyTypeKind:()=>$,ZodFunction:()=>No,ZodIntersection:()=>dr,ZodIssueCode:()=>x,ZodLazy:()=>pr,ZodLiteral:()=>fr,ZodMap:()=>Jr,ZodNaN:()=>Vr,ZodNativeEnum:()=>hr,ZodNever:()=>st,ZodNull:()=>ur,ZodNullable:()=>gt,ZodNumber:()=>or,ZodObject:()=>Le,ZodOptional:()=>Ze,ZodParsedType:()=>T,ZodPipeline:()=>$n,ZodPromise:()=>Dt,ZodReadonly:()=>_r,ZodRecord:()=>Ao,ZodSchema:()=>J,ZodSet:()=>Fr,ZodString:()=>Zt,ZodSymbol:()=>Ur,ZodTransformer:()=>Xe,ZodTuple:()=>ht,ZodType:()=>J,ZodUndefined:()=>cr,ZodUnion:()=>lr,ZodUnknown:()=>Pt,ZodVoid:()=>qr,addIssueToContext:()=>S,any:()=>sb,array:()=>ub,bigint:()=>eb,boolean:()=>Ad,coerce:()=>Ib,custom:()=>Id,date:()=>tb,datetimeRegex:()=>Rd,defaultErrorMap:()=>zt,discriminatedUnion:()=>pb,effect:()=>$b,enum:()=>wb,function:()=>_b,getErrorMap:()=>Zr,getParsedType:()=>mt,instanceof:()=>Y_,intersection:()=>fb,isAborted:()=>Io,isAsync:()=>Lr,isDirty:()=>Eo,isValid:()=>Mt,late:()=>X_,lazy:()=>bb,literal:()=>vb,makeIssue:()=>kn,map:()=>gb,nan:()=>Q_,nativeEnum:()=>kb,never:()=>ab,null:()=>ob,nullable:()=>zb,number:()=>Cd,object:()=>ji,objectUtil:()=>zi,oboolean:()=>Ob,onumber:()=>Rb,optional:()=>Sb,ostring:()=>jb,pipeline:()=>Pb,preprocess:()=>Tb,promise:()=>xb,quotelessJson:()=>S_,record:()=>hb,set:()=>yb,setErrorMap:()=>T_,strictObject:()=>lb,string:()=>Ed,symbol:()=>rb,transformer:()=>$b,tuple:()=>mb,undefined:()=>nb,union:()=>db,unknown:()=>ib,util:()=>B,void:()=>cb});var B;(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})(B||(B={}));var zi;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(zi||(zi={}));var T=B.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),mt=t=>{switch(typeof t){case"undefined":return T.undefined;case"string":return T.string;case"number":return Number.isNaN(t)?T.nan:T.number;case"boolean":return T.boolean;case"function":return T.function;case"bigint":return T.bigint;case"symbol":return T.symbol;case"object":return Array.isArray(t)?T.array:t===null?T.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?T.promise:typeof Map<"u"&&t instanceof Map?T.map:typeof Set<"u"&&t instanceof Set?T.set:typeof Date<"u"&&t instanceof Date?T.date:T.object;default:return T.unknown}};var x=B.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"]),S_=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Me=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,u=0;for(;u<i.path.length;){let l=i.path[u];u===i.path.length-1?(a[l]=a[l]||{_errors:[]},a[l]._errors.push(r(i))):a[l]=a[l]||{_errors:[]},a=a[l],u++}}};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,B.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()}};Me.create=t=>new Me(t);var z_=(t,e)=>{let r;switch(t.code){case x.invalid_type:t.received===T.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case x.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,B.jsonStringifyReplacer)}`;break;case x.unrecognized_keys:r=`Unrecognized key(s) in object: ${B.joinValues(t.keys,", ")}`;break;case x.invalid_union:r="Invalid input";break;case x.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${B.joinValues(t.options)}`;break;case x.invalid_enum_value:r=`Invalid enum value. Expected ${B.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}"`:B.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,B.assertNever(t)}return{message:r}},zt=z_;var Sd=zt;function T_(t){Sd=t}function Zr(){return Sd}var kn=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="",u=n.filter(l=>!!l).slice().reverse();for(let l of u)a=l(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},P_=[];function S(t,e){let r=Zr(),n=kn({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 ke=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"}),nr=t=>({status:"dirty",value:t}),Pe=t=>({status:"valid",value:t}),Io=t=>t.status==="aborted",Eo=t=>t.status==="dirty",Mt=t=>t.status==="valid",Lr=t=>typeof Promise<"u"&&t instanceof Promise;var R;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(R||(R={}));var Ge=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}},zd=(t,e)=>{if(Mt(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 Me(t.common.issues);return this._error=r,this._error}}};function U(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:u}=t;return i.code==="invalid_enum_value"?{message:u??a.defaultError}:typeof a.data>"u"?{message:u??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:u??r??a.defaultError}},description:o}}var J=class{get description(){return this._def.description}_getType(e){return mt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:mt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new ke,ctx:{common:e.parent.common,data:e.data,parsedType:mt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Lr(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:mt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return zd(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:mt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Mt(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=>Mt(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:mt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(Lr(o)?o:Promise.resolve(o));return zd(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(u=>u?!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 Xe({schema:this,typeName:$.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 Ze.create(this,this._def)}nullable(){return gt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return jt.create(this)}promise(){return Dt.create(this,this._def)}or(e){return lr.create([this,e],this._def)}and(e){return dr.create(this,e,this._def)}transform(e){return new Xe({...U(this._def),schema:this,typeName:$.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new gr({...U(this._def),innerType:this,defaultValue:r,typeName:$.ZodDefault})}brand(){return new xn({typeName:$.ZodBranded,type:this,...U(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new yr({...U(this._def),innerType:this,catchValue:r,typeName:$.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return $n.create(this,e)}readonly(){return _r.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},j_=/^c[^\s-]{8,}$/i,R_=/^[0-9a-z]+$/,O_=/^[0-9A-HJKMNP-TV-Z]{26}$/i,I_=/^[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,E_=/^[a-z0-9_-]{21}$/i,C_=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,A_=/^[-+]?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)?)??$/,N_=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,M_="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Ti,Z_=/^(?:(?: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])$/,L_=/^(?:(?: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])$/,D_=/^(([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]))$/,U_=/^(([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])$/,q_=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,J_=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Pd="((\\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])))",F_=new RegExp(`^${Pd}$`);function jd(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 V_(t){return new RegExp(`^${jd(t)}$`)}function Rd(t){let e=`${Pd}T${jd(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 H_(t,e){return!!((e==="v4"||!e)&&Z_.test(t)||(e==="v6"||!e)&&D_.test(t))}function B_(t,e){if(!C_.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 W_(t,e){return!!((e==="v4"||!e)&&L_.test(t)||(e==="v6"||!e)&&U_.test(t))}var Zt=class t extends J{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==T.string){let s=this._getOrReturnCtx(e);return S(s,{code:x.invalid_type,expected:T.string,received:s.parsedType}),M}let n=new ke,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),S(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),S(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?S(o,{code:x.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&S(o,{code:x.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")N_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"email",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Ti||(Ti=new RegExp(M_,"u")),Ti.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"emoji",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")I_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"uuid",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")E_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"nanoid",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")j_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"cuid",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")R_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"cuid2",code:x.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")O_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(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),S(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),S(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),S(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),S(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),S(o,{code:x.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Rd(s).test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{code:x.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?F_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{code:x.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?V_(s).test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{code:x.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?A_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"duration",code:x.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?H_(e.data,s.version)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"ip",code:x.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?B_(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"jwt",code:x.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?W_(e.data,s.version)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"cidr",code:x.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?q_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"base64",code:x.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?J_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"base64url",code:x.invalid_string,message:s.message}),n.dirty()):B.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,...R.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...R.errToObj(e)})}url(e){return this._addCheck({kind:"url",...R.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...R.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...R.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...R.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...R.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...R.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...R.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...R.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...R.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...R.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...R.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...R.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,...R.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,...R.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...R.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...R.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...R.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...R.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...R.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...R.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...R.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...R.errToObj(r)})}nonempty(e){return this.min(1,R.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}};Zt.create=t=>new Zt({checks:[],typeName:$.ZodString,coerce:t?.coerce??!1,...U(t)});function K_(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 or=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)!==T.number){let s=this._getOrReturnCtx(e);return S(s,{code:x.invalid_type,expected:T.number,received:s.parsedType}),M}let n,o=new ke;for(let s of this._def.checks)s.kind==="int"?B.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),S(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),S(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),S(n,{code:x.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?K_(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),S(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),S(n,{code:x.not_finite,message:s.message}),o.dirty()):B.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,R.toString(r))}gt(e,r){return this.setLimit("min",e,!1,R.toString(r))}lte(e,r){return this.setLimit("max",e,!0,R.toString(r))}lt(e,r){return this.setLimit("max",e,!1,R.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:R.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:R.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:R.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:R.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:R.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:R.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:R.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:R.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:R.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:R.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"&&B.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)}};or.create=t=>new or({checks:[],typeName:$.ZodNumber,coerce:t?.coerce||!1,...U(t)});var sr=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)!==T.bigint)return this._getInvalidInput(e);let n,o=new ke;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),S(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),S(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),S(n,{code:x.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):B.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return S(r,{code:x.invalid_type,expected:T.bigint,received:r.parsedType}),M}gte(e,r){return this.setLimit("min",e,!0,R.toString(r))}gt(e,r){return this.setLimit("min",e,!1,R.toString(r))}lte(e,r){return this.setLimit("max",e,!0,R.toString(r))}lt(e,r){return this.setLimit("max",e,!1,R.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:R.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:R.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:R.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:R.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:R.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:R.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}};sr.create=t=>new sr({checks:[],typeName:$.ZodBigInt,coerce:t?.coerce??!1,...U(t)});var ir=class extends J{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==T.boolean){let n=this._getOrReturnCtx(e);return S(n,{code:x.invalid_type,expected:T.boolean,received:n.parsedType}),M}return Pe(e.data)}};ir.create=t=>new ir({typeName:$.ZodBoolean,coerce:t?.coerce||!1,...U(t)});var ar=class t extends J{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==T.date){let s=this._getOrReturnCtx(e);return S(s,{code:x.invalid_type,expected:T.date,received:s.parsedType}),M}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return S(s,{code:x.invalid_date}),M}let n=new ke,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),S(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),S(o,{code:x.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):B.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:R.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:R.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}};ar.create=t=>new ar({checks:[],coerce:t?.coerce||!1,typeName:$.ZodDate,...U(t)});var Ur=class extends J{_parse(e){if(this._getType(e)!==T.symbol){let n=this._getOrReturnCtx(e);return S(n,{code:x.invalid_type,expected:T.symbol,received:n.parsedType}),M}return Pe(e.data)}};Ur.create=t=>new Ur({typeName:$.ZodSymbol,...U(t)});var cr=class extends J{_parse(e){if(this._getType(e)!==T.undefined){let n=this._getOrReturnCtx(e);return S(n,{code:x.invalid_type,expected:T.undefined,received:n.parsedType}),M}return Pe(e.data)}};cr.create=t=>new cr({typeName:$.ZodUndefined,...U(t)});var ur=class extends J{_parse(e){if(this._getType(e)!==T.null){let n=this._getOrReturnCtx(e);return S(n,{code:x.invalid_type,expected:T.null,received:n.parsedType}),M}return Pe(e.data)}};ur.create=t=>new ur({typeName:$.ZodNull,...U(t)});var Lt=class extends J{constructor(){super(...arguments),this._any=!0}_parse(e){return Pe(e.data)}};Lt.create=t=>new Lt({typeName:$.ZodAny,...U(t)});var Pt=class extends J{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Pe(e.data)}};Pt.create=t=>new Pt({typeName:$.ZodUnknown,...U(t)});var st=class extends J{_parse(e){let r=this._getOrReturnCtx(e);return S(r,{code:x.invalid_type,expected:T.never,received:r.parsedType}),M}};st.create=t=>new st({typeName:$.ZodNever,...U(t)});var qr=class extends J{_parse(e){if(this._getType(e)!==T.undefined){let n=this._getOrReturnCtx(e);return S(n,{code:x.invalid_type,expected:T.void,received:n.parsedType}),M}return Pe(e.data)}};qr.create=t=>new qr({typeName:$.ZodVoid,...U(t)});var jt=class t extends J{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==T.array)return S(r,{code:x.invalid_type,expected:T.array,received:r.parsedType}),M;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(S(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&&(S(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&&(S(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 Ge(r,i,r.path,a)))).then(i=>ke.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new Ge(r,i,r.path,a)));return ke.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:R.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:R.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:R.toString(r)}})}nonempty(e){return this.min(1,e)}};jt.create=(t,e)=>new jt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:$.ZodArray,...U(e)});function Dr(t){if(t instanceof Le){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ze.create(Dr(n))}return new Le({...t._def,shape:()=>e})}else return t instanceof jt?new jt({...t._def,type:Dr(t.element)}):t instanceof Ze?Ze.create(Dr(t.unwrap())):t instanceof gt?gt.create(Dr(t.unwrap())):t instanceof ht?ht.create(t.items.map(e=>Dr(e))):t}var Le=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=B.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==T.object){let l=this._getOrReturnCtx(e);return S(l,{code:x.invalid_type,expected:T.object,received:l.parsedType}),M}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof st&&this._def.unknownKeys==="strip"))for(let l in o.data)i.includes(l)||a.push(l);let u=[];for(let l of i){let c=s[l],d=o.data[l];u.push({key:{status:"valid",value:l},value:c._parse(new Ge(o,d,o.path,l)),alwaysSet:l in o.data})}if(this._def.catchall instanceof st){let l=this._def.unknownKeys;if(l==="passthrough")for(let c of a)u.push({key:{status:"valid",value:c},value:{status:"valid",value:o.data[c]}});else if(l==="strict")a.length>0&&(S(o,{code:x.unrecognized_keys,keys:a}),n.dirty());else if(l!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let l=this._def.catchall;for(let c of a){let d=o.data[c];u.push({key:{status:"valid",value:c},value:l._parse(new Ge(o,d,o.path,c)),alwaysSet:c in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let l=[];for(let c of u){let d=await c.key,g=await c.value;l.push({key:d,value:g,alwaysSet:c.alwaysSet})}return l}).then(l=>ke.mergeObjectSync(n,l)):ke.mergeObjectSync(n,u)}get shape(){return this._def.shape()}strict(e){return R.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:R.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:$.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 B.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 B.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Dr(this)}partial(e){let r={};for(let n of B.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 B.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Ze;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Od(B.objectKeys(this.shape))}};Le.create=(t,e)=>new Le({shape:()=>t,unknownKeys:"strip",catchall:st.create(),typeName:$.ZodObject,...U(e)});Le.strictCreate=(t,e)=>new Le({shape:()=>t,unknownKeys:"strict",catchall:st.create(),typeName:$.ZodObject,...U(e)});Le.lazycreate=(t,e)=>new Le({shape:t,unknownKeys:"strip",catchall:st.create(),typeName:$.ZodObject,...U(e)});var lr=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 Me(a.ctx.common.issues));return S(r,{code:x.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 u of n){let l={...r,common:{...r.common,issues:[]},parent:null},c=u._parseSync({data:r.data,path:r.path,parent:l});if(c.status==="valid")return c;c.status==="dirty"&&!s&&(s={result:c,ctx:l}),l.common.issues.length&&i.push(l.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(u=>new Me(u));return S(r,{code:x.invalid_union,unionErrors:a}),M}}get options(){return this._def.options}};lr.create=(t,e)=>new lr({options:t,typeName:$.ZodUnion,...U(e)});var Tt=t=>t instanceof pr?Tt(t.schema):t instanceof Xe?Tt(t.innerType()):t instanceof fr?[t.value]:t instanceof mr?t.options:t instanceof hr?B.objectValues(t.enum):t instanceof gr?Tt(t._def.innerType):t instanceof cr?[void 0]:t instanceof ur?[null]:t instanceof Ze?[void 0,...Tt(t.unwrap())]:t instanceof gt?[null,...Tt(t.unwrap())]:t instanceof xn||t instanceof _r?Tt(t.unwrap()):t instanceof yr?Tt(t._def.innerType):[],Co=class t extends J{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.object)return S(r,{code:x.invalid_type,expected:T.object,received:r.parsedType}),M;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(S(r,{code:x.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=Tt(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:$.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...U(n)})}};function Pi(t,e){let r=mt(t),n=mt(e);if(t===e)return{valid:!0,data:t};if(r===T.object&&n===T.object){let o=B.objectKeys(e),s=B.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let u=Pi(t[a],e[a]);if(!u.valid)return{valid:!1};i[a]=u.data}return{valid:!0,data:i}}else if(r===T.array&&n===T.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],u=Pi(i,a);if(!u.valid)return{valid:!1};o.push(u.data)}return{valid:!0,data:o}}else return r===T.date&&n===T.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var dr=class extends J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Io(s)||Io(i))return M;let a=Pi(s.value,i.value);return a.valid?((Eo(s)||Eo(i))&&r.dirty(),{status:r.value,value:a.data}):(S(n,{code:x.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}))}};dr.create=(t,e,r)=>new dr({left:t,right:e,typeName:$.ZodIntersection,...U(r)});var ht=class t extends J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==T.array)return S(n,{code:x.invalid_type,expected:T.array,received:n.parsedType}),M;if(n.data.length<this._def.items.length)return S(n,{code:x.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),M;!this._def.rest&&n.data.length>this._def.items.length&&(S(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 u=this._def.items[a]||this._def.rest;return u?u._parse(new Ge(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>ke.mergeArray(r,i)):ke.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};ht.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new ht({items:t,typeName:$.ZodTuple,rest:null,...U(e)})};var Ao=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!==T.object)return S(n,{code:x.invalid_type,expected:T.object,received:n.parsedType}),M;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new Ge(n,a,n.path,a)),value:i._parse(new Ge(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?ke.mergeObjectAsync(r,o):ke.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:$.ZodRecord,...U(n)}):new t({keyType:Zt.create(),valueType:e,typeName:$.ZodRecord,...U(r)})}},Jr=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!==T.map)return S(n,{code:x.invalid_type,expected:T.map,received:n.parsedType}),M;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,u],l)=>({key:o._parse(new Ge(n,a,n.path,[l,"key"])),value:s._parse(new Ge(n,u,n.path,[l,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let u of i){let l=await u.key,c=await u.value;if(l.status==="aborted"||c.status==="aborted")return M;(l.status==="dirty"||c.status==="dirty")&&r.dirty(),a.set(l.value,c.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let u of i){let l=u.key,c=u.value;if(l.status==="aborted"||c.status==="aborted")return M;(l.status==="dirty"||c.status==="dirty")&&r.dirty(),a.set(l.value,c.value)}return{status:r.value,value:a}}}};Jr.create=(t,e,r)=>new Jr({valueType:e,keyType:t,typeName:$.ZodMap,...U(r)});var Fr=class t extends J{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==T.set)return S(n,{code:x.invalid_type,expected:T.set,received:n.parsedType}),M;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(S(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&&(S(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(u){let l=new Set;for(let c of u){if(c.status==="aborted")return M;c.status==="dirty"&&r.dirty(),l.add(c.value)}return{status:r.value,value:l}}let a=[...n.data.values()].map((u,l)=>s._parse(new Ge(n,u,n.path,l)));return n.common.async?Promise.all(a).then(u=>i(u)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:R.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:R.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Fr.create=(t,e)=>new Fr({valueType:t,minSize:null,maxSize:null,typeName:$.ZodSet,...U(e)});var No=class t extends J{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.function)return S(r,{code:x.invalid_type,expected:T.function,received:r.parsedType}),M;function n(a,u){return kn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Zr(),zt].filter(l=>!!l),issueData:{code:x.invalid_arguments,argumentsError:u}})}function o(a,u){return kn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Zr(),zt].filter(l=>!!l),issueData:{code:x.invalid_return_type,returnTypeError:u}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof Dt){let a=this;return Pe(async function(...u){let l=new Me([]),c=await a._def.args.parseAsync(u,s).catch(h=>{throw l.addIssue(n(u,h)),l}),d=await Reflect.apply(i,this,c);return await a._def.returns._def.type.parseAsync(d,s).catch(h=>{throw l.addIssue(o(d,h)),l})})}else{let a=this;return Pe(function(...u){let l=a._def.args.safeParse(u,s);if(!l.success)throw new Me([n(u,l.error)]);let c=Reflect.apply(i,this,l.data),d=a._def.returns.safeParse(c,s);if(!d.success)throw new Me([o(c,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:ht.create(e).rest(Pt.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||ht.create([]).rest(Pt.create()),returns:r||Pt.create(),typeName:$.ZodFunction,...U(n)})}},pr=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})}};pr.create=(t,e)=>new pr({getter:t,typeName:$.ZodLazy,...U(e)});var fr=class extends J{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return S(r,{received:r.data,code:x.invalid_literal,expected:this._def.value}),M}return{status:"valid",value:e.data}}get value(){return this._def.value}};fr.create=(t,e)=>new fr({value:t,typeName:$.ZodLiteral,...U(e)});function Od(t,e){return new mr({values:t,typeName:$.ZodEnum,...U(e)})}var mr=class t extends J{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return S(r,{expected:B.joinValues(n),received:r.parsedType,code:x.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 S(r,{received:r.data,code:x.invalid_enum_value,options:n}),M}return Pe(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})}};mr.create=Od;var hr=class extends J{_parse(e){let r=B.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==T.string&&n.parsedType!==T.number){let o=B.objectValues(r);return S(n,{expected:B.joinValues(o),received:n.parsedType,code:x.invalid_type}),M}if(this._cache||(this._cache=new Set(B.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=B.objectValues(r);return S(n,{received:n.data,code:x.invalid_enum_value,options:o}),M}return Pe(e.data)}get enum(){return this._def.values}};hr.create=(t,e)=>new hr({values:t,typeName:$.ZodNativeEnum,...U(e)});var Dt=class extends J{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==T.promise&&r.common.async===!1)return S(r,{code:x.invalid_type,expected:T.promise,received:r.parsedType}),M;let n=r.parsedType===T.promise?r.data:Promise.resolve(r.data);return Pe(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Dt.create=(t,e)=>new Dt({type:t,typeName:$.ZodPromise,...U(e)});var Xe=class extends J{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===$.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=>{S(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 u=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return u.status==="aborted"?M:u.status==="dirty"?nr(u.value):r.value==="dirty"?nr(u.value):u});{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"?nr(a.value):r.value==="dirty"?nr(a.value):a}}if(o.type==="refinement"){let i=a=>{let u=o.refinement(a,s);if(n.common.async)return Promise.resolve(u);if(u 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(!Mt(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=>Mt(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):M);B.assertNever(o)}};Xe.create=(t,e,r)=>new Xe({schema:t,typeName:$.ZodEffects,effect:e,...U(r)});Xe.createWithPreprocess=(t,e,r)=>new Xe({schema:e,effect:{type:"preprocess",transform:t},typeName:$.ZodEffects,...U(r)});var Ze=class extends J{_parse(e){return this._getType(e)===T.undefined?Pe(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ze.create=(t,e)=>new Ze({innerType:t,typeName:$.ZodOptional,...U(e)});var gt=class extends J{_parse(e){return this._getType(e)===T.null?Pe(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};gt.create=(t,e)=>new gt({innerType:t,typeName:$.ZodNullable,...U(e)});var gr=class extends J{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===T.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};gr.create=(t,e)=>new gr({innerType:t,typeName:$.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...U(e)});var yr=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 Lr(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Me(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Me(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};yr.create=(t,e)=>new yr({innerType:t,typeName:$.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...U(e)});var Vr=class extends J{_parse(e){if(this._getType(e)!==T.nan){let n=this._getOrReturnCtx(e);return S(n,{code:x.invalid_type,expected:T.nan,received:n.parsedType}),M}return{status:"valid",value:e.data}}};Vr.create=t=>new Vr({typeName:$.ZodNaN,...U(t)});var G_=Symbol("zod_brand"),xn=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}},$n=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(),nr(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:$.ZodPipeline})}},_r=class extends J{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Mt(o)&&(o.value=Object.freeze(o.value)),o);return Lr(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};_r.create=(t,e)=>new _r({innerType:t,typeName:$.ZodReadonly,...U(e)});function Td(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Id(t,e={},r){return t?Lt.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Td(e,n),u=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:u})}});if(!s){let i=Td(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Lt.create()}var X_={object:Le.lazycreate},$;(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"})($||($={}));var Y_=(t,e={message:`Input not instance of ${t.name}`})=>Id(r=>r instanceof t,e),Ed=Zt.create,Cd=or.create,Q_=Vr.create,eb=sr.create,Ad=ir.create,tb=ar.create,rb=Ur.create,nb=cr.create,ob=ur.create,sb=Lt.create,ib=Pt.create,ab=st.create,cb=qr.create,ub=jt.create,ji=Le.create,lb=Le.strictCreate,db=lr.create,pb=Co.create,fb=dr.create,mb=ht.create,hb=Ao.create,gb=Jr.create,yb=Fr.create,_b=No.create,bb=pr.create,vb=fr.create,wb=mr.create,kb=hr.create,xb=Dt.create,$b=Xe.create,Sb=Ze.create,zb=gt.create,Tb=Xe.createWithPreprocess,Pb=$n.create,jb=()=>Ed().optional(),Rb=()=>Cd().optional(),Ob=()=>Ad().optional(),Ib={string:(t=>Zt.create({...t,coerce:!0})),number:(t=>or.create({...t,coerce:!0})),boolean:(t=>ir.create({...t,coerce:!0})),bigint:(t=>sr.create({...t,coerce:!0})),date:(t=>ar.create({...t,coerce:!0}))};var Eb=M;var Ab=Object.freeze({status:"aborted"});function b(t,e,r){function n(a,u){var l;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(l=a._zod).traits??(l.traits=new Set),a._zod.traits.add(t),e(a,u);for(let c in i.prototype)c in a||Object.defineProperty(a,c,{value:i.prototype[c].bind(a)});a._zod.constr=i,a._zod.def=u}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var u;let l=r?.Parent?new s:this;n(l,a),(u=l._zod).deferred??(u.deferred=[]);for(let c of l._zod.deferred)c();return l}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 Rt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Mo={};function He(t){return t&&Object.assign(Mo,t),Mo}var W={};Si(W,{BIGINT_FORMAT_RANGES:()=>Md,Class:()=>Oi,NUMBER_FORMAT_RANGES:()=>Zi,aborted:()=>vr,allowsEval:()=>Ai,assert:()=>Db,assertEqual:()=>Nb,assertIs:()=>Zb,assertNever:()=>Lb,assertNotEqual:()=>Mb,assignProp:()=>Ci,cached:()=>Tn,captureStackTrace:()=>Lo,cleanEnum:()=>Qb,cleanRegex:()=>jn,clone:()=>Be,createTransparentProxy:()=>Hb,defineLazy:()=>ie,esc:()=>br,escapeRegex:()=>Ut,extend:()=>Kb,finalizeIssue:()=>it,floatSafeRemainder:()=>Ei,getElementAtPath:()=>Ub,getEnumValues:()=>zn,getLengthableOrigin:()=>Rn,getParsedType:()=>Vb,getSizableOrigin:()=>Zd,isObject:()=>Hr,isPlainObject:()=>Br,issue:()=>Li,joinValues:()=>Zo,jsonStringifyReplacer:()=>Ii,merge:()=>Gb,normalizeParams:()=>Z,nullish:()=>Pn,numKeys:()=>Fb,omit:()=>Wb,optionalKeys:()=>Mi,partial:()=>Xb,pick:()=>Bb,prefixIssues:()=>yt,primitiveTypes:()=>Nd,promiseAllObject:()=>qb,propertyKeyTypes:()=>Ni,randomString:()=>Jb,required:()=>Yb,stringifyPrimitive:()=>Do,unwrapMessage:()=>Sn});function Nb(t){return t}function Mb(t){return t}function Zb(t){}function Lb(t){throw new Error}function Db(t){}function zn(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 Zo(t,e="|"){return t.map(r=>Do(r)).join(e)}function Ii(t,e){return typeof e=="bigint"?e.toString():e}function Tn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Pn(t){return t==null}function jn(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Ei(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 ie(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 Ci(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Ub(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function qb(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 Jb(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function br(t){return JSON.stringify(t)}var Lo=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function Hr(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ai=Tn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Br(t){if(Hr(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(Hr(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Fb(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Vb=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}`)}},Ni=new Set(["string","number","symbol"]),Nd=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Ut(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Be(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function Z(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 Hb(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 Do(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Mi(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Zi={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]},Md={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Bb(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 Be(t,{...t._zod.def,shape:r,checks:[]})}function Wb(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 Be(t,{...t._zod.def,shape:r,checks:[]})}function Kb(t,e){if(!Br(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 Ci(this,"shape",n),n},checks:[]};return Be(t,r)}function Gb(t,e){return Be(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ci(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Xb(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 Be(e,{...e._zod.def,shape:o,checks:[]})}function Yb(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 Be(e,{...e._zod.def,shape:o,checks:[]})}function vr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function yt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Sn(t){return typeof t=="string"?t:t?.message}function it(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Sn(t.inst?._zod.def?.error?.(t))??Sn(e?.error?.(t))??Sn(r.customError?.(t))??Sn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Zd(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function Rn(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Li(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function Qb(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Oi=class{constructor(...e){}};var Ld=(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,Ii,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Uo=b("$ZodError",Ld),On=b("$ZodError",Ld,{Parent:Error});function Di(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 Ui(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,u=0;for(;u<i.path.length;){let l=i.path[u];u===i.path.length-1?(a[l]=a[l]||{_errors:[]},a[l]._errors.push(r(i))):a[l]=a[l]||{_errors:[]},a=a[l],u++}}};return o(t),n}var qi=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 Rt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(u=>it(u,s,He())));throw Lo(a,o?.callee),a}return i.value},Ji=qi(On),Fi=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(u=>it(u,s,He())));throw Lo(a,o?.callee),a}return i.value},Vi=Fi(On),Hi=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 Rt;return s.issues.length?{success:!1,error:new(t??Uo)(s.issues.map(i=>it(i,o,He())))}:{success:!0,data:s.value}},wr=Hi(On),Bi=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=>it(i,o,He())))}:{success:!0,data:s.value}},kr=Bi(On);var Dd=/^[cC][^\s-]{8,}$/,Ud=/^[0-9a-z]+$/,qd=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Jd=/^[0-9a-vA-V]{20}$/,Fd=/^[A-Za-z0-9]{27}$/,Vd=/^[a-zA-Z0-9_-]{21}$/,Hd=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Bd=/^([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})$/,Wi=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 Wd=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var tv="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Kd(){return new RegExp(tv,"u")}var Gd=/^(?:(?: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])$/,Xd=/^(([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})$/,Yd=/^((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])$/,Qd=/^(([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])$/,ep=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ki=/^[A-Za-z0-9_-]*$/,tp=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var rp=/^\+(?:[0-9]){6,14}[0-9]$/,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])))",op=new RegExp(`^${np}$`);function sp(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 ip(t){return new RegExp(`^${sp(t)}$`)}function ap(t){let e=sp({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(`^${np}T(?:${n})$`)}var cp=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var up=/^\d+$/,lp=/^-?\d+(?:\.\d+)?/i,dp=/true|false/i,pp=/null/i;var fp=/^[^A-Z]*$/,mp=/^[^a-z]*$/;var xe=b("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),hp={number:"number",bigint:"bigint",object:"date"},Gi=b("$ZodCheckLessThan",(t,e)=>{xe.init(t,e);let r=hp[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})}}),Xi=b("$ZodCheckGreaterThan",(t,e)=>{xe.init(t,e);let r=hp[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})}}),gp=b("$ZodCheckMultipleOf",(t,e)=>{xe.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):Ei(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})}}),yp=b("$ZodCheckNumberFormat",(t,e)=>{xe.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Zi[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=up)}),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 _p=b("$ZodCheckMaxLength",(t,e)=>{var r;xe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Pn(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=Rn(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),bp=b("$ZodCheckMinLength",(t,e)=>{var r;xe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Pn(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=Rn(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),vp=b("$ZodCheckLengthEquals",(t,e)=>{var r;xe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Pn(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=Rn(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})}}),In=b("$ZodCheckStringFormat",(t,e)=>{var r,n;xe.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=()=>{})}),wp=b("$ZodCheckRegex",(t,e)=>{In.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})}}),kp=b("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=fp),In.init(t,e)}),xp=b("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=mp),In.init(t,e)}),$p=b("$ZodCheckIncludes",(t,e)=>{xe.init(t,e);let r=Ut(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})}}),Sp=b("$ZodCheckStartsWith",(t,e)=>{xe.init(t,e);let r=new RegExp(`^${Ut(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})}}),zp=b("$ZodCheckEndsWith",(t,e)=>{xe.init(t,e);let r=new RegExp(`.*${Ut(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 Tp=b("$ZodCheckOverwrite",(t,e)=>{xe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Jo=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
|
+
`).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 jp={major:4,minor:0,patch:0};var ne=b("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=jp;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 u=vr(s),l;for(let c of i){if(c._zod.def.when){if(!c._zod.def.when(s))continue}else if(u)continue;let d=s.issues.length,g=c._zod.check(s);if(g instanceof Promise&&a?.async===!1)throw new Rt;if(l||g instanceof Promise)l=(l??Promise.resolve()).then(async()=>{await g,s.issues.length!==d&&(u||(u=vr(s,d)))});else{if(s.issues.length===d)continue;u||(u=vr(s,d))}}return l?l.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 Rt;return a.then(u=>o(u,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=wr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return kr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),En=b("$ZodString",(t,e)=>{ne.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??cp(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}}),ae=b("$ZodStringFormat",(t,e)=>{In.init(t,e),En.init(t,e)}),Qi=b("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Bd),ae.init(t,e)}),ea=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=Wi(n))}else e.pattern??(e.pattern=Wi());ae.init(t,e)}),ta=b("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Wd),ae.init(t,e)}),ra=b("$ZodURL",(t,e)=>{ae.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:tp.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})}}}),na=b("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Kd()),ae.init(t,e)}),oa=b("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Vd),ae.init(t,e)}),sa=b("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Dd),ae.init(t,e)}),ia=b("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Ud),ae.init(t,e)}),aa=b("$ZodULID",(t,e)=>{e.pattern??(e.pattern=qd),ae.init(t,e)}),ca=b("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Jd),ae.init(t,e)}),ua=b("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Fd),ae.init(t,e)}),Lp=b("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=ap(e)),ae.init(t,e)}),Dp=b("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=op),ae.init(t,e)}),Up=b("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=ip(e)),ae.init(t,e)}),qp=b("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Hd),ae.init(t,e)}),la=b("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Gd),ae.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),da=b("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Xd),ae.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})}}}),pa=b("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Yd),ae.init(t,e)}),fa=b("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Qd),ae.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 Jp(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var ma=b("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=ep),ae.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Jp(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function rv(t){if(!Ki.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Jp(r)}var ha=b("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Ki),ae.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{rv(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),ga=b("$ZodE164",(t,e)=>{e.pattern??(e.pattern=rp),ae.init(t,e)});function nv(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 ya=b("$ZodJWT",(t,e)=>{ae.init(t,e),t._zod.check=r=>{nv(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Vo=b("$ZodNumber",(t,e)=>{ne.init(t,e),t._zod.pattern=t._zod.bag.pattern??lp,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}}),_a=b("$ZodNumber",(t,e)=>{yp.init(t,e),Vo.init(t,e)}),ba=b("$ZodBoolean",(t,e)=>{ne.init(t,e),t._zod.pattern=dp,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 va=b("$ZodNull",(t,e)=>{ne.init(t,e),t._zod.pattern=pp,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 wa=b("$ZodUnknown",(t,e)=>{ne.init(t,e),t._zod.parse=r=>r}),ka=b("$ZodNever",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Rp(t,e,r){t.issues.length&&e.issues.push(...yt(r,t.issues)),e.value[r]=t.value}var xa=b("$ZodArray",(t,e)=>{ne.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],u=e.element._zod.run({value:a,issues:[]},n);u instanceof Promise?s.push(u.then(l=>Rp(l,r,i))):Rp(u,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Fo(t,e,r){t.issues.length&&e.issues.push(...yt(r,t.issues)),e.value[r]=t.value}function Op(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(...yt(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Ho=b("$ZodObject",(t,e)=>{ne.init(t,e);let r=Tn(()=>{let d=Object.keys(e.shape);for(let h of d)if(!(e.shape[h]instanceof ne))throw new Error(`Invalid element at key "${h}": expected a Zod schema`);let g=Mi(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(g)}});ie(t._zod,"propValues",()=>{let d=e.shape,g={};for(let h in d){let f=d[h]._zod;if(f.values){g[h]??(g[h]=new Set);for(let m of f.values)g[h].add(m)}}return g});let n=d=>{let g=new Jo(["shape","payload","ctx"]),h=r.value,f=w=>{let k=br(w);return`shape[${k}]._zod.run({ value: input[${k}], issues: [] }, ctx)`};g.write("const input = payload.value;");let m=Object.create(null),y=0;for(let w of h.keys)m[w]=`key_${y++}`;g.write("const newResult = {}");for(let w of h.keys)if(h.optionalKeys.has(w)){let k=m[w];g.write(`const ${k} = ${f(w)};`);let j=br(w);g.write(`
|
|
13
|
+
if (${k}.issues.length) {
|
|
14
14
|
if (input[${j}] === undefined) {
|
|
15
15
|
if (${j} in input) {
|
|
16
16
|
newResult[${j}] = undefined;
|
|
17
17
|
}
|
|
18
18
|
} else {
|
|
19
19
|
payload.issues = payload.issues.concat(
|
|
20
|
-
${
|
|
20
|
+
${k}.issues.map((iss) => ({
|
|
21
21
|
...iss,
|
|
22
22
|
path: iss.path ? [${j}, ...iss.path] : [${j}],
|
|
23
23
|
}))
|
|
24
24
|
);
|
|
25
25
|
}
|
|
26
|
-
} else if (${
|
|
26
|
+
} else if (${k}.value === undefined) {
|
|
27
27
|
if (${j} in input) newResult[${j}] = undefined;
|
|
28
28
|
} else {
|
|
29
|
-
newResult[${j}] = ${
|
|
29
|
+
newResult[${j}] = ${k}.value;
|
|
30
30
|
}
|
|
31
|
-
`)}else{let
|
|
32
|
-
if (${
|
|
31
|
+
`)}else{let k=m[w];g.write(`const ${k} = ${f(w)};`),g.write(`
|
|
32
|
+
if (${k}.issues.length) payload.issues = payload.issues.concat(${k}.issues.map(iss => ({
|
|
33
33
|
...iss,
|
|
34
|
-
path: iss.path ? [${
|
|
35
|
-
})));`),h.write(`newResult[${_r(w)}] = ${x}.value`)}h.write("payload.value = newResult;"),h.write("return payload;");let v=h.compile();return(w,x)=>v(d,w,x)},o,s=Vr,a=!Io.jitless,u=a&&Oa.value,l=e.catchall,c;t._zod.parse=(d,h)=>{c??(c=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(a&&u&&h?.async===!1&&h.jitless!==!0)o||(o=n(e.shape)),d=o(d,h);else{d.value={};let x=c.shape;for(let j of c.keys){let N=x[j],Ee=N._zod.run({value:f[j],issues:[]},h),We=N._zod.optin==="optional"&&N._zod.optout==="optional";Ee instanceof Promise?m.push(Ee.then(Nr=>We?vp(Nr,d,j,f):qo(Nr,d,j))):We?vp(Ee,d,j,f):qo(Ee,d,j)}}if(!l)return m.length?Promise.all(m).then(()=>d):d;let g=[],y=c.keySet,v=l._zod,w=v.def.type;for(let x of Object.keys(f)){if(y.has(x))continue;if(w==="never"){g.push(x);continue}let j=v.run({value:f[x],issues:[]},h);j instanceof Promise?m.push(j.then(N=>qo(N,d,x))):qo(j,d,x)}return g.length&&d.issues.push({code:"unrecognized_keys",keys:g,input:f,inst:t}),m.length?Promise.all(m).then(()=>d):d}});function wp(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=>st(s,n,Ve())))}),e}var Jo=b("$ZodUnion",(t,e)=>{ne.init(t,e),ae(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ae(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ae(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ae(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=>Tn(n.source)).join("|")})$`)}}),t._zod.parse=(r,n)=>{let o=!1,s=[];for(let a of e.options){let i=a._zod.run({value:r.value,issues:[]},n);if(i instanceof Promise)s.push(i),o=!0;else{if(i.issues.length===0)return i;s.push(i)}}return o?Promise.all(s).then(a=>wp(a,r,t,n)):wp(s,r,t,n)}}),vi=b("$ZodDiscriminatedUnion",(t,e)=>{Jo.init(t,e);let r=t._zod.parse;ae(t._zod,"propValues",()=>{let o={};for(let s of e.options){let a=s._zod.propValues;if(!a||Object.keys(a).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[i,u]of Object.entries(a)){o[i]||(o[i]=new Set);for(let l of u)o[i].add(l)}}return o});let n=Sn(()=>{let o=e.options,s=new Map;for(let a of o){let i=a._zod.propValues[e.discriminator];if(!i||i.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(a)}"`);for(let u of i){if(s.has(u))throw new Error(`Duplicate discriminator value "${String(u)}"`);s.set(u,a)}}return s});t._zod.parse=(o,s)=>{let a=o.value;if(!Vr(a))return o.issues.push({code:"invalid_type",expected:"object",input:a,inst:t}),o;let i=n.value.get(a?.[e.discriminator]);return i?i._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:a,path:[e.discriminator],inst:t}),o)}}),wi=b("$ZodIntersection",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),a=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||a instanceof Promise?Promise.all([s,a]).then(([u,l])=>kp(r,u,l)):kp(r,s,a)}});function Wa(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(Hr(t)&&Hr(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 a=Wa(t[s],e[s]);if(!a.valid)return{valid:!1,mergeErrorPath:[s,...a.mergeErrorPath]};o[s]=a.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],a=Wa(o,s);if(!a.valid)return{valid:!1,mergeErrorPath:[n,...a.mergeErrorPath]};r.push(a.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function kp(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),br(t))return t;let n=Wa(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 ki=b("$ZodRecord",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Hr(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let a=e.keyType._zod.values;r.value={};for(let u of a)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){let l=e.valueType._zod.run({value:o[u],issues:[]},n);l instanceof Promise?s.push(l.then(c=>{c.issues.length&&r.issues.push(...gt(u,c.issues)),r.value[u]=c.value})):(l.issues.length&&r.issues.push(...gt(u,l.issues)),r.value[u]=l.value)}let i;for(let u in o)a.has(u)||(i=i??[],i.push(u));i&&i.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:i})}else{r.value={};for(let a of Reflect.ownKeys(o)){if(a==="__proto__")continue;let i=e.keyType._zod.run({value:a,issues:[]},n);if(i instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(i.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:i.issues.map(l=>st(l,n,Ve())),input:a,path:[a],inst:t}),r.value[i.value]=i.value;continue}let u=e.valueType._zod.run({value:o[a],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...gt(a,l.issues)),r.value[i.value]=l.value})):(u.issues.length&&r.issues.push(...gt(a,u.issues)),r.value[i.value]=u.value)}}return s.length?Promise.all(s).then(()=>r):r}});var xi=b("$ZodEnum",(t,e)=>{ne.init(t,e);let r=$n(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ea.has(typeof n)).map(n=>typeof n=="string"?qt(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}}),$i=b("$ZodLiteral",(t,e)=>{ne.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?qt(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 Si=b("$ZodTransform",(t,e)=>{ne.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(a=>(r.value=a,r));if(o instanceof Promise)throw new Rt;return r.value=o,r}}),zi=b("$ZodOptional",(t,e)=>{ne.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Tn(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)}),Ti=b("$ZodNullable",(t,e)=>{ne.init(t,e),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Tn(r.source)}|null)$`):void 0}),ae(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)}),Pi=b("$ZodDefault",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ae(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=>xp(s,e)):xp(o,e)}});function xp(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var ji=b("$ZodPrefault",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ae(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))}),Ri=b("$ZodNonOptional",(t,e)=>{ne.init(t,e),ae(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=>$p(s,t)):$p(o,t)}});function $p(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 Oi=b("$ZodCatch",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(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(a=>st(a,n,Ve()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>st(s,n,Ve()))},input:r.value}),r.issues=[]),r)}});var Ei=b("$ZodPipe",(t,e)=>{ne.init(t,e),ae(t._zod,"values",()=>e.in._zod.values),ae(t._zod,"optin",()=>e.in._zod.optin),ae(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=>Sp(s,e,n)):Sp(o,e,n)}});function Sp(t,e,r){return br(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Ii=b("$ZodReadonly",(t,e)=>{ne.init(t,e),ae(t._zod,"propValues",()=>e.innerType._zod.propValues),ae(t._zod,"values",()=>e.innerType._zod.values),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(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(zp):zp(o)}});function zp(t){return t.value=Object.freeze(t.value),t}var Ci=b("$ZodCustom",(t,e)=>{xe.init(t,e),ne.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=>Tp(s,r,n,t));Tp(o,r,n,t)}});function Tp(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 kb=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},xb=()=>{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 ${kb(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${No(n.values[0])}`:`Invalid option: expected one of ${Co(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":""}: ${Co(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 Ip(){return{localeError:xb()}}var En=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 Cp(){return new En}var Dt=Cp();function Ai(t,e){return new t({type:"string",...Z(e)})}function Ni(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...Z(e)})}function Fo(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...Z(e)})}function Mi(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...Z(e)})}function Zi(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Z(e)})}function Li(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Z(e)})}function qi(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Z(e)})}function Di(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...Z(e)})}function Ui(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...Z(e)})}function Ji(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...Z(e)})}function Fi(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...Z(e)})}function Vi(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...Z(e)})}function Hi(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...Z(e)})}function Bi(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...Z(e)})}function Wi(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...Z(e)})}function Ki(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...Z(e)})}function Gi(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...Z(e)})}function Xi(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Z(e)})}function Yi(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Z(e)})}function Qi(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...Z(e)})}function ec(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...Z(e)})}function tc(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...Z(e)})}function rc(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...Z(e)})}function Ap(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Z(e)})}function Np(t,e){return new t({type:"string",format:"date",check:"string_format",...Z(e)})}function Mp(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...Z(e)})}function Zp(t,e){return new t({type:"string",format:"duration",check:"string_format",...Z(e)})}function nc(t,e){return new t({type:"number",checks:[],...Z(e)})}function oc(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...Z(e)})}function sc(t,e){return new t({type:"boolean",...Z(e)})}function ac(t,e){return new t({type:"null",...Z(e)})}function ic(t){return new t({type:"unknown"})}function cc(t,e){return new t({type:"never",...Z(e)})}function Vo(t,e){return new Ha({check:"less_than",...Z(e),value:t,inclusive:!1})}function In(t,e){return new Ha({check:"less_than",...Z(e),value:t,inclusive:!0})}function Ho(t,e){return new Ba({check:"greater_than",...Z(e),value:t,inclusive:!1})}function Cn(t,e){return new Ba({check:"greater_than",...Z(e),value:t,inclusive:!0})}function Bo(t,e){return new sp({check:"multiple_of",...Z(e),value:t})}function Wo(t,e){return new ip({check:"max_length",...Z(e),maximum:t})}function Br(t,e){return new cp({check:"min_length",...Z(e),minimum:t})}function Ko(t,e){return new up({check:"length_equals",...Z(e),length:t})}function uc(t,e){return new lp({check:"string_format",format:"regex",...Z(e),pattern:t})}function lc(t){return new dp({check:"string_format",format:"lowercase",...Z(t)})}function dc(t){return new pp({check:"string_format",format:"uppercase",...Z(t)})}function pc(t,e){return new mp({check:"string_format",format:"includes",...Z(e),includes:t})}function mc(t,e){return new fp({check:"string_format",format:"starts_with",...Z(e),prefix:t})}function fc(t,e){return new hp({check:"string_format",format:"ends_with",...Z(e),suffix:t})}function kr(t){return new gp({check:"overwrite",tx:t})}function hc(t){return kr(e=>e.normalize(t))}function gc(){return kr(t=>t.trim())}function yc(){return kr(t=>t.toLowerCase())}function _c(){return kr(t=>t.toUpperCase())}function Lp(t,e,r){return new t({type:"array",element:e,...Z(r)})}function bc(t,e,r){let n=Z(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function vc(t,e,r){return new t({type:"custom",check:"custom",fn:e,...Z(r)})}var Go=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Dt,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:""},a=this.seen.get(e);if(a)return a.count++,r.schemaPath.includes(e)&&(a.cycle=r.path),a.schema;let i={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,i);let u=e._zod.toJSONSchema?.();if(u)i.schema=u;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},h=e._zod.parent;if(h)i.ref=h,this.process(h,d),this.seen.get(h).isParent=!0;else{let f=i.schema;switch(o.type){case"string":{let m=f;m.type="string";let{minimum:g,maximum:y,format:v,patterns:w,contentEncoding:x}=e._zod.bag;if(typeof g=="number"&&(m.minLength=g),typeof y=="number"&&(m.maxLength=y),v&&(m.format=s[v]??v,m.format===""&&delete m.format),x&&(m.contentEncoding=x),w&&w.size>0){let j=[...w];j.length===1?m.pattern=j[0].source:j.length>1&&(i.schema.allOf=[...j.map(N=>({...this.target==="draft-7"?{type:"string"}:{},pattern:N.source}))])}break}case"number":{let m=f,{minimum:g,maximum:y,format:v,multipleOf:w,exclusiveMaximum:x,exclusiveMinimum:j}=e._zod.bag;typeof v=="string"&&v.includes("int")?m.type="integer":m.type="number",typeof j=="number"&&(m.exclusiveMinimum=j),typeof g=="number"&&(m.minimum=g,typeof j=="number"&&(j>=g?delete m.minimum:delete m.exclusiveMinimum)),typeof x=="number"&&(m.exclusiveMaximum=x),typeof y=="number"&&(m.maximum=y,typeof x=="number"&&(x<=y?delete m.maximum:delete m.exclusiveMaximum)),typeof w=="number"&&(m.multipleOf=w);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:g,maximum:y}=e._zod.bag;typeof g=="number"&&(m.minItems=g),typeof y=="number"&&(m.maxItems=y),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 g=o.shape;for(let w in g)m.properties[w]=this.process(g[w],{...d,path:[...d.path,"properties",w]});let y=new Set(Object.keys(g)),v=new Set([...y].filter(w=>{let x=o.shape[w]._zod;return this.io==="input"?x.optin===void 0:x.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((g,y)=>this.process(g,{...d,path:[...d.path,"anyOf",y]}));break}case"intersection":{let m=f,g=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),y=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),v=x=>"allOf"in x&&Object.keys(x).length===1,w=[...v(g)?g.allOf:[g],...v(y)?y.allOf:[y]];m.allOf=w;break}case"tuple":{let m=f;m.type="array";let g=o.items.map((w,x)=>this.process(w,{...d,path:[...d.path,"prefixItems",x]}));if(this.target==="draft-2020-12"?m.prefixItems=g:m.items=g,o.rest){let w=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?m.items=w:m.additionalItems=w}o.rest&&(m.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:y,maximum:v}=e._zod.bag;typeof y=="number"&&(m.minItems=y),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,g=$n(o.entries);g.every(y=>typeof y=="number")&&(m.type="number"),g.every(y=>typeof y=="string")&&(m.type="string"),m.enum=g;break}case"literal":{let m=f,g=[];for(let y of o.values)if(y===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof y=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");g.push(Number(y))}else g.push(y);if(g.length!==0)if(g.length===1){let y=g[0];m.type=y===null?"null":typeof y,m.const=y}else g.every(y=>typeof y=="number")&&(m.type="number"),g.every(y=>typeof y=="string")&&(m.type="string"),g.every(y=>typeof y=="boolean")&&(m.type="string"),g.every(y=>y===null)&&(m.type="null"),m.enum=g;break}case"file":{let m=f,g={type:"string",format:"binary",contentEncoding:"binary"},{minimum:y,maximum:v,mime:w}=e._zod.bag;y!==void 0&&(g.minLength=y),v!==void 0&&(g.maxLength=v),w?w.length===1?(g.contentMediaType=w[0],Object.assign(m,g)):m.anyOf=w.map(x=>({...g,contentMediaType:x})):Object.assign(m,g);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),i.ref=o.innerType;break}case"success":{let m=f;m.type="boolean";break}case"default":{this.process(o.innerType,d),i.ref=o.innerType,f.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),i.ref=o.innerType,this.io==="input"&&(f._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),i.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,g=e._zod.pattern;if(!g)throw new Error("Pattern not found in template literal");m.type="string",m.pattern=g.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),i.ref=m;break}case"readonly":{this.process(o.innerType,d),i.ref=o.innerType,f.readOnly=!0;break}case"promise":{this.process(o.innerType,d),i.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),i.ref=o.innerType;break}case"lazy":{let m=e._zod.innerType;this.process(m,d),i.ref=m;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let l=this.metadataRegistry.get(e);return l&&Object.assign(i.schema,l),this.io==="input"&&_e(e)&&(delete i.schema.examples,delete i.schema.default),this.io==="input"&&i.schema._prefault&&((n=i.schema).default??(n.default=i.schema._prefault)),delete i.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=c=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let g=n.external.registry.get(c[0])?.id,y=n.external.uri??(w=>w);if(g)return{ref:y(g)};let v=c[1].defId??c[1].schema.id??`schema${this.counter++}`;return c[1].defId=v,{defId:v,ref:`${y("__shared")}#/${d}/${v}`}}if(c[1]===o)return{ref:"#"};let f=`#/${d}/`,m=c[1].schema.id??`__schema${this.counter++}`;return{defId:m,ref:f+m}},a=c=>{if(c[1].schema.$ref)return;let d=c[1],{ref:h,defId:f}=s(c);d.def={...d.schema},f&&(d.defId=f);let m=d.schema;for(let g in m)delete m[g];m.$ref=h};if(n.cycles==="throw")for(let c of this.seen.entries()){let d=c[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
|
|
34
|
+
path: iss.path ? [${br(w)}, ...iss.path] : [${br(w)}]
|
|
35
|
+
})));`),g.write(`newResult[${br(w)}] = ${k}.value`)}g.write("payload.value = newResult;"),g.write("return payload;");let v=g.compile();return(w,k)=>v(d,w,k)},o,s=Hr,i=!Mo.jitless,u=i&&Ai.value,l=e.catchall,c;t._zod.parse=(d,g)=>{c??(c=r.value);let h=d.value;if(!s(h))return d.issues.push({expected:"object",code:"invalid_type",input:h,inst:t}),d;let f=[];if(i&&u&&g?.async===!1&&g.jitless!==!0)o||(o=n(e.shape)),d=o(d,g);else{d.value={};let k=c.shape;for(let j of c.keys){let N=k[j],Ie=N._zod.run({value:h[j],issues:[]},g),Ke=N._zod.optin==="optional"&&N._zod.optout==="optional";Ie instanceof Promise?f.push(Ie.then(Mr=>Ke?Op(Mr,d,j,h):Fo(Mr,d,j))):Ke?Op(Ie,d,j,h):Fo(Ie,d,j)}}if(!l)return f.length?Promise.all(f).then(()=>d):d;let m=[],y=c.keySet,v=l._zod,w=v.def.type;for(let k of Object.keys(h)){if(y.has(k))continue;if(w==="never"){m.push(k);continue}let j=v.run({value:h[k],issues:[]},g);j instanceof Promise?f.push(j.then(N=>Fo(N,d,k))):Fo(j,d,k)}return m.length&&d.issues.push({code:"unrecognized_keys",keys:m,input:h,inst:t}),f.length?Promise.all(f).then(()=>d):d}});function Ip(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=>it(s,n,He())))}),e}var Bo=b("$ZodUnion",(t,e)=>{ne.init(t,e),ie(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ie(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ie(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ie(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=>jn(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=>Ip(i,r,t,n)):Ip(s,r,t,n)}}),$a=b("$ZodDiscriminatedUnion",(t,e)=>{Bo.init(t,e);let r=t._zod.parse;ie(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,u]of Object.entries(i)){o[a]||(o[a]=new Set);for(let l of u)o[a].add(l)}}return o});let n=Tn(()=>{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 u of a){if(s.has(u))throw new Error(`Duplicate discriminator value "${String(u)}"`);s.set(u,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!Hr(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)}}),Sa=b("$ZodIntersection",(t,e)=>{ne.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(([u,l])=>Ep(r,u,l)):Ep(r,s,i)}});function Yi(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(Br(t)&&Br(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=Yi(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=Yi(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 Ep(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),vr(t))return t;let n=Yi(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 za=b("$ZodRecord",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Br(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 u of i)if(typeof u=="string"||typeof u=="number"||typeof u=="symbol"){let l=e.valueType._zod.run({value:o[u],issues:[]},n);l instanceof Promise?s.push(l.then(c=>{c.issues.length&&r.issues.push(...yt(u,c.issues)),r.value[u]=c.value})):(l.issues.length&&r.issues.push(...yt(u,l.issues)),r.value[u]=l.value)}let a;for(let u in o)i.has(u)||(a=a??[],a.push(u));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(l=>it(l,n,He())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let u=e.valueType._zod.run({value:o[i],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...yt(i,l.issues)),r.value[a.value]=l.value})):(u.issues.length&&r.issues.push(...yt(i,u.issues)),r.value[a.value]=u.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Ta=b("$ZodEnum",(t,e)=>{ne.init(t,e);let r=zn(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ni.has(typeof n)).map(n=>typeof n=="string"?Ut(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}}),Pa=b("$ZodLiteral",(t,e)=>{ne.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Ut(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 ja=b("$ZodTransform",(t,e)=>{ne.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 Rt;return r.value=o,r}}),Ra=b("$ZodOptional",(t,e)=>{ne.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ie(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ie(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${jn(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)}),Oa=b("$ZodNullable",(t,e)=>{ne.init(t,e),ie(t._zod,"optin",()=>e.innerType._zod.optin),ie(t._zod,"optout",()=>e.innerType._zod.optout),ie(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${jn(r.source)}|null)$`):void 0}),ie(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)}),Ia=b("$ZodDefault",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ie(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=>Cp(s,e)):Cp(o,e)}});function Cp(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Ea=b("$ZodPrefault",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ie(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))}),Ca=b("$ZodNonOptional",(t,e)=>{ne.init(t,e),ie(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=>Ap(s,t)):Ap(o,t)}});function Ap(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 Aa=b("$ZodCatch",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ie(t._zod,"optout",()=>e.innerType._zod.optout),ie(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=>it(i,n,He()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>it(s,n,He()))},input:r.value}),r.issues=[]),r)}});var Na=b("$ZodPipe",(t,e)=>{ne.init(t,e),ie(t._zod,"values",()=>e.in._zod.values),ie(t._zod,"optin",()=>e.in._zod.optin),ie(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=>Np(s,e,n)):Np(o,e,n)}});function Np(t,e,r){return vr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Ma=b("$ZodReadonly",(t,e)=>{ne.init(t,e),ie(t._zod,"propValues",()=>e.innerType._zod.propValues),ie(t._zod,"values",()=>e.innerType._zod.values),ie(t._zod,"optin",()=>e.innerType._zod.optin),ie(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(Mp):Mp(o)}});function Mp(t){return t.value=Object.freeze(t.value),t}var Za=b("$ZodCustom",(t,e)=>{xe.init(t,e),ne.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=>Zp(s,r,n,t));Zp(o,r,n,t)}});function Zp(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(Li(o))}}var ov=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},sv=()=>{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 ${ov(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Do(n.values[0])}`:`Invalid option: expected one of ${Zo(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":""}: ${Zo(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 Fp(){return{localeError:sv()}}var Cn=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 Vp(){return new Cn}var qt=Vp();function La(t,e){return new t({type:"string",...Z(e)})}function Da(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...Z(e)})}function Wo(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...Z(e)})}function Ua(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...Z(e)})}function qa(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...Z(e)})}function Ja(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...Z(e)})}function Fa(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...Z(e)})}function Va(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...Z(e)})}function Ha(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...Z(e)})}function Ba(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...Z(e)})}function Wa(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...Z(e)})}function Ka(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...Z(e)})}function Ga(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...Z(e)})}function Xa(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...Z(e)})}function Ya(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...Z(e)})}function Qa(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...Z(e)})}function ec(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...Z(e)})}function tc(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...Z(e)})}function rc(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...Z(e)})}function nc(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...Z(e)})}function oc(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...Z(e)})}function sc(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...Z(e)})}function ic(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...Z(e)})}function Hp(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...Z(e)})}function Bp(t,e){return new t({type:"string",format:"date",check:"string_format",...Z(e)})}function Wp(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...Z(e)})}function Kp(t,e){return new t({type:"string",format:"duration",check:"string_format",...Z(e)})}function ac(t,e){return new t({type:"number",checks:[],...Z(e)})}function cc(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...Z(e)})}function uc(t,e){return new t({type:"boolean",...Z(e)})}function lc(t,e){return new t({type:"null",...Z(e)})}function dc(t){return new t({type:"unknown"})}function pc(t,e){return new t({type:"never",...Z(e)})}function Ko(t,e){return new Gi({check:"less_than",...Z(e),value:t,inclusive:!1})}function An(t,e){return new Gi({check:"less_than",...Z(e),value:t,inclusive:!0})}function Go(t,e){return new Xi({check:"greater_than",...Z(e),value:t,inclusive:!1})}function Nn(t,e){return new Xi({check:"greater_than",...Z(e),value:t,inclusive:!0})}function Xo(t,e){return new gp({check:"multiple_of",...Z(e),value:t})}function Yo(t,e){return new _p({check:"max_length",...Z(e),maximum:t})}function Wr(t,e){return new bp({check:"min_length",...Z(e),minimum:t})}function Qo(t,e){return new vp({check:"length_equals",...Z(e),length:t})}function fc(t,e){return new wp({check:"string_format",format:"regex",...Z(e),pattern:t})}function mc(t){return new kp({check:"string_format",format:"lowercase",...Z(t)})}function hc(t){return new xp({check:"string_format",format:"uppercase",...Z(t)})}function gc(t,e){return new $p({check:"string_format",format:"includes",...Z(e),includes:t})}function yc(t,e){return new Sp({check:"string_format",format:"starts_with",...Z(e),prefix:t})}function _c(t,e){return new zp({check:"string_format",format:"ends_with",...Z(e),suffix:t})}function xr(t){return new Tp({check:"overwrite",tx:t})}function bc(t){return xr(e=>e.normalize(t))}function vc(){return xr(t=>t.trim())}function wc(){return xr(t=>t.toLowerCase())}function kc(){return xr(t=>t.toUpperCase())}function Gp(t,e,r){return new t({type:"array",element:e,...Z(r)})}function xc(t,e,r){let n=Z(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function $c(t,e,r){return new t({type:"custom",check:"custom",fn:e,...Z(r)})}var es=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 u=e._zod.toJSONSchema?.();if(u)a.schema=u;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},g=e._zod.parent;if(g)a.ref=g,this.process(g,d),this.seen.get(g).isParent=!0;else{let h=a.schema;switch(o.type){case"string":{let f=h;f.type="string";let{minimum:m,maximum:y,format:v,patterns:w,contentEncoding:k}=e._zod.bag;if(typeof m=="number"&&(f.minLength=m),typeof y=="number"&&(f.maxLength=y),v&&(f.format=s[v]??v,f.format===""&&delete f.format),k&&(f.contentEncoding=k),w&&w.size>0){let j=[...w];j.length===1?f.pattern=j[0].source:j.length>1&&(a.schema.allOf=[...j.map(N=>({...this.target==="draft-7"?{type:"string"}:{},pattern:N.source}))])}break}case"number":{let f=h,{minimum:m,maximum:y,format:v,multipleOf:w,exclusiveMaximum:k,exclusiveMinimum:j}=e._zod.bag;typeof v=="string"&&v.includes("int")?f.type="integer":f.type="number",typeof j=="number"&&(f.exclusiveMinimum=j),typeof m=="number"&&(f.minimum=m,typeof j=="number"&&(j>=m?delete f.minimum:delete f.exclusiveMinimum)),typeof k=="number"&&(f.exclusiveMaximum=k),typeof y=="number"&&(f.maximum=y,typeof k=="number"&&(k<=y?delete f.maximum:delete f.exclusiveMaximum)),typeof w=="number"&&(f.multipleOf=w);break}case"boolean":{let f=h;f.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{h.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":{h.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let f=h,{minimum:m,maximum:y}=e._zod.bag;typeof m=="number"&&(f.minItems=m),typeof y=="number"&&(f.maxItems=y),f.type="array",f.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let f=h;f.type="object",f.properties={};let m=o.shape;for(let w in m)f.properties[w]=this.process(m[w],{...d,path:[...d.path,"properties",w]});let y=new Set(Object.keys(m)),v=new Set([...y].filter(w=>{let k=o.shape[w]._zod;return this.io==="input"?k.optin===void 0:k.optout===void 0}));v.size>0&&(f.required=Array.from(v)),o.catchall?._zod.def.type==="never"?f.additionalProperties=!1:o.catchall?o.catchall&&(f.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(f.additionalProperties=!1);break}case"union":{let f=h;f.anyOf=o.options.map((m,y)=>this.process(m,{...d,path:[...d.path,"anyOf",y]}));break}case"intersection":{let f=h,m=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),y=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),v=k=>"allOf"in k&&Object.keys(k).length===1,w=[...v(m)?m.allOf:[m],...v(y)?y.allOf:[y]];f.allOf=w;break}case"tuple":{let f=h;f.type="array";let m=o.items.map((w,k)=>this.process(w,{...d,path:[...d.path,"prefixItems",k]}));if(this.target==="draft-2020-12"?f.prefixItems=m:f.items=m,o.rest){let w=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?f.items=w:f.additionalItems=w}o.rest&&(f.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:y,maximum:v}=e._zod.bag;typeof y=="number"&&(f.minItems=y),typeof v=="number"&&(f.maxItems=v);break}case"record":{let f=h;f.type="object",f.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),f.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let f=h,m=zn(o.entries);m.every(y=>typeof y=="number")&&(f.type="number"),m.every(y=>typeof y=="string")&&(f.type="string"),f.enum=m;break}case"literal":{let f=h,m=[];for(let y of o.values)if(y===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof y=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");m.push(Number(y))}else m.push(y);if(m.length!==0)if(m.length===1){let y=m[0];f.type=y===null?"null":typeof y,f.const=y}else m.every(y=>typeof y=="number")&&(f.type="number"),m.every(y=>typeof y=="string")&&(f.type="string"),m.every(y=>typeof y=="boolean")&&(f.type="string"),m.every(y=>y===null)&&(f.type="null"),f.enum=m;break}case"file":{let f=h,m={type:"string",format:"binary",contentEncoding:"binary"},{minimum:y,maximum:v,mime:w}=e._zod.bag;y!==void 0&&(m.minLength=y),v!==void 0&&(m.maxLength=v),w?w.length===1?(m.contentMediaType=w[0],Object.assign(f,m)):f.anyOf=w.map(k=>({...m,contentMediaType:k})):Object.assign(f,m);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let f=this.process(o.innerType,d);h.anyOf=[f,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let f=h;f.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,h.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(h._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let f;try{f=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}h.default=f;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let f=h,m=e._zod.pattern;if(!m)throw new Error("Pattern not found in template literal");f.type="string",f.pattern=m.source;break}case"pipe":{let f=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(f,d),a.ref=f;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,h.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let f=e._zod.innerType;this.process(f,d),a.ref=f;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let l=this.metadataRegistry.get(e);return l&&Object.assign(a.schema,l),this.io==="input"&&_e(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=c=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let m=n.external.registry.get(c[0])?.id,y=n.external.uri??(w=>w);if(m)return{ref:y(m)};let v=c[1].defId??c[1].schema.id??`schema${this.counter++}`;return c[1].defId=v,{defId:v,ref:`${y("__shared")}#/${d}/${v}`}}if(c[1]===o)return{ref:"#"};let h=`#/${d}/`,f=c[1].schema.id??`__schema${this.counter++}`;return{defId:f,ref:h+f}},i=c=>{if(c[1].schema.$ref)return;let d=c[1],{ref:g,defId:h}=s(c);d.def={...d.schema},h&&(d.defId=h);let f=d.schema;for(let m in f)delete f[m];f.$ref=g};if(n.cycles==="throw")for(let c of this.seen.entries()){let d=c[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 c of this.seen.entries()){let d=c[1];if(e===c[0]){a(c);continue}if(n.external){let f=n.external.registry.get(c[0])?.id;if(e!==c[0]&&f){a(c);continue}}if(this.metadataRegistry.get(c[0])?.id){a(c);continue}if(d.cycle){a(c);continue}if(d.count>1&&n.reused==="ref"){a(c);continue}}let i=(c,d)=>{let h=this.seen.get(c),f=h.def??h.schema,m={...f};if(h.ref===null)return;let g=h.ref;if(h.ref=null,g){i(g,d);let y=this.seen.get(g).schema;y.$ref&&d.target==="draft-7"?(f.allOf=f.allOf??[],f.allOf.push(y)):(Object.assign(f,y),Object.assign(f,m))}h.isParent||this.override({zodSchema:c,jsonSchema:f,path:h.path??[]})};for(let c of[...this.seen.entries()].reverse())i(c[0],{target:this.target});let u={};if(this.target==="draft-2020-12"?u.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?u.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let c=n.external.registry.get(e)?.id;if(!c)throw new Error("Schema is missing an `id` property");u.$id=n.external.uri(c)}Object.assign(u,o.def);let l=n.external?.defs??{};for(let c of this.seen.entries()){let d=c[1];d.def&&d.defId&&(l[d.defId]=d.def)}n.external||Object.keys(l).length>0&&(this.target==="draft-2020-12"?u.$defs=l:u.definitions=l);try{return JSON.parse(JSON.stringify(u))}catch{throw new Error("Error converting schema to JSON.")}}};function wc(t,e){if(t instanceof En){let n=new Go(e),o={};for(let i of t._idmap.entries()){let[u,l]=i;n.process(l)}let s={},a={registry:t,uri:e?.uri,defs:o};for(let i of t._idmap.entries()){let[u,l]=i;s[u]=n.emit(l,{...e,external:a})}if(Object.keys(o).length>0){let i=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[i]:o}}return{schemas:s}}let r=new Go(e);return r.process(t),r.emit(t,e)}function _e(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 _e(o.element,r);case"object":{for(let s in o.shape)if(_e(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(_e(s,r))return!0;return!1}case"intersection":return _e(o.left,r)||_e(o.right,r);case"tuple":{for(let s of o.items)if(_e(s,r))return!0;return!!(o.rest&&_e(o.rest,r))}case"record":return _e(o.keyType,r)||_e(o.valueType,r);case"map":return _e(o.keyType,r)||_e(o.valueType,r);case"set":return _e(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return _e(o.innerType,r);case"lazy":return _e(o.getter(),r);case"default":return _e(o.innerType,r);case"prefault":return _e(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return _e(o.in,r)||_e(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var ov=b("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ne.init(t,e),t.def=e,t.parse=(r,n)=>La(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>vr(t,r,n),t.parseAsync=async(r,n)=>Da(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>wr(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)=>He(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var sv=b("ZodMiniObject",(t,e)=>{Uo.init(t,e),ov.init(t,e),W.defineLazy(t,"shape",()=>e.shape)});function kc(t,e){let r={type:"object",get shape(){return W.assignProp(this,"shape",{...t}),this.shape},...W.normalizeParams(e)};return new sv(r)}function Xe(t){return!!t._zod}function $r(t){let e=Object.values(t);if(e.length===0)return kc({});let r=e.every(Xe),n=e.every(o=>!Xe(o));if(r)return kc(t);if(n)return Sa(t);throw new Error("Mixed Zod versions detected in object shape.")}function Ut(t,e){return Xe(t)?vr(t,e):t.safeParse(e)}async function Xo(t,e){return Xe(t)?await wr(t,e):await t.safeParseAsync(e)}function Jt(t){if(!t)return;let e;if(Xe(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function Wr(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 $r(t)}}if(Xe(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 Yo(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 Dp(t){return t.description}function Up(t){if(Xe(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Qo(t){if(Xe(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 An={};wa(An,{ZodISODate:()=>Fp,ZodISODateTime:()=>Jp,ZodISODuration:()=>Hp,ZodISOTime:()=>Vp,date:()=>$c,datetime:()=>xc,duration:()=>zc,time:()=>Sc});var Jp=b("ZodISODateTime",(t,e)=>{Pp.init(t,e),pe.init(t,e)});function xc(t){return Ap(Jp,t)}var Fp=b("ZodISODate",(t,e)=>{jp.init(t,e),pe.init(t,e)});function $c(t){return Np(Fp,t)}var Vp=b("ZodISOTime",(t,e)=>{Rp.init(t,e),pe.init(t,e)});function Sc(t){return Mp(Vp,t)}var Hp=b("ZodISODuration",(t,e)=>{Op.init(t,e),pe.init(t,e)});function zc(t){return Zp(Hp,t)}var Bp=(t,e)=>{Mo.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ma(t,r)},flatten:{value:r=>Na(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},Ej=b("ZodError",Bp),Nn=b("ZodError",Bp,{Parent:Error});var Wp=Za(Nn),Kp=qa(Nn),Gp=Ua(Nn),Xp=Ja(Nn);var ge=b("ZodType",(t,e)=>(ne.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)=>He(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>Wp(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Gp(t,r,n),t.parseAsync=async(r,n)=>Kp(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Xp(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(rw(r,n)),t.superRefine=r=>t.check(nw(r)),t.overwrite=r=>t.check(kr(r)),t.optional=()=>fe(t),t.nullable=()=>em(t),t.nullish=()=>fe(em(t)),t.nonoptional=r=>Kv(t,r),t.array=()=>K(t),t.or=r=>ue([t,r]),t.and=r=>ts(t,r),t.transform=r=>Pc(t,am(r)),t.default=r=>Hv(t,r),t.prefault=r=>Wv(t,r),t.catch=r=>Xv(t,r),t.pipe=r=>Pc(t,r),t.readonly=()=>ew(t),t.describe=r=>{let n=t.clone();return Dt.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Dt.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Dt.get(t);let n=t.clone();return Dt.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),tm=b("_ZodString",(t,e)=>{On.init(t,e),ge.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(uc(...n)),t.includes=(...n)=>t.check(pc(...n)),t.startsWith=(...n)=>t.check(mc(...n)),t.endsWith=(...n)=>t.check(fc(...n)),t.min=(...n)=>t.check(Br(...n)),t.max=(...n)=>t.check(Wo(...n)),t.length=(...n)=>t.check(Ko(...n)),t.nonempty=(...n)=>t.check(Br(1,...n)),t.lowercase=n=>t.check(lc(n)),t.uppercase=n=>t.check(dc(n)),t.trim=()=>t.check(gc()),t.normalize=(...n)=>t.check(hc(...n)),t.toLowerCase=()=>t.check(yc()),t.toUpperCase=()=>t.check(_c())}),fv=b("ZodString",(t,e)=>{On.init(t,e),tm.init(t,e),t.email=r=>t.check(Ni(hv,r)),t.url=r=>t.check(Di(gv,r)),t.jwt=r=>t.check(rc(Ov,r)),t.emoji=r=>t.check(Ui(yv,r)),t.guid=r=>t.check(Fo(Yp,r)),t.uuid=r=>t.check(Mi(es,r)),t.uuidv4=r=>t.check(Zi(es,r)),t.uuidv6=r=>t.check(Li(es,r)),t.uuidv7=r=>t.check(qi(es,r)),t.nanoid=r=>t.check(Ji(_v,r)),t.guid=r=>t.check(Fo(Yp,r)),t.cuid=r=>t.check(Fi(bv,r)),t.cuid2=r=>t.check(Vi(vv,r)),t.ulid=r=>t.check(Hi(wv,r)),t.base64=r=>t.check(Qi(Pv,r)),t.base64url=r=>t.check(ec(jv,r)),t.xid=r=>t.check(Bi(kv,r)),t.ksuid=r=>t.check(Wi(xv,r)),t.ipv4=r=>t.check(Ki($v,r)),t.ipv6=r=>t.check(Gi(Sv,r)),t.cidrv4=r=>t.check(Xi(zv,r)),t.cidrv6=r=>t.check(Yi(Tv,r)),t.e164=r=>t.check(tc(Rv,r)),t.datetime=r=>t.check(xc(r)),t.date=r=>t.check($c(r)),t.time=r=>t.check(Sc(r)),t.duration=r=>t.check(zc(r))});function _(t){return Ai(fv,t)}var pe=b("ZodStringFormat",(t,e)=>{ie.init(t,e),tm.init(t,e)}),hv=b("ZodEmail",(t,e)=>{Xa.init(t,e),pe.init(t,e)});var Yp=b("ZodGUID",(t,e)=>{Ka.init(t,e),pe.init(t,e)});var es=b("ZodUUID",(t,e)=>{Ga.init(t,e),pe.init(t,e)});var gv=b("ZodURL",(t,e)=>{Ya.init(t,e),pe.init(t,e)});var yv=b("ZodEmoji",(t,e)=>{Qa.init(t,e),pe.init(t,e)});var _v=b("ZodNanoID",(t,e)=>{ei.init(t,e),pe.init(t,e)});var bv=b("ZodCUID",(t,e)=>{ti.init(t,e),pe.init(t,e)});var vv=b("ZodCUID2",(t,e)=>{ri.init(t,e),pe.init(t,e)});var wv=b("ZodULID",(t,e)=>{ni.init(t,e),pe.init(t,e)});var kv=b("ZodXID",(t,e)=>{oi.init(t,e),pe.init(t,e)});var xv=b("ZodKSUID",(t,e)=>{si.init(t,e),pe.init(t,e)});var $v=b("ZodIPv4",(t,e)=>{ai.init(t,e),pe.init(t,e)});var Sv=b("ZodIPv6",(t,e)=>{ii.init(t,e),pe.init(t,e)});var zv=b("ZodCIDRv4",(t,e)=>{ci.init(t,e),pe.init(t,e)});var Tv=b("ZodCIDRv6",(t,e)=>{ui.init(t,e),pe.init(t,e)});var Pv=b("ZodBase64",(t,e)=>{li.init(t,e),pe.init(t,e)});var jv=b("ZodBase64URL",(t,e)=>{di.init(t,e),pe.init(t,e)});var Rv=b("ZodE164",(t,e)=>{pi.init(t,e),pe.init(t,e)});var Ov=b("ZodJWT",(t,e)=>{mi.init(t,e),pe.init(t,e)});var rm=b("ZodNumber",(t,e)=>{Do.init(t,e),ge.init(t,e),t.gt=(n,o)=>t.check(Ho(n,o)),t.gte=(n,o)=>t.check(Cn(n,o)),t.min=(n,o)=>t.check(Cn(n,o)),t.lt=(n,o)=>t.check(Vo(n,o)),t.lte=(n,o)=>t.check(In(n,o)),t.max=(n,o)=>t.check(In(n,o)),t.int=n=>t.check(Qp(n)),t.safe=n=>t.check(Qp(n)),t.positive=n=>t.check(Ho(0,n)),t.nonnegative=n=>t.check(Cn(0,n)),t.negative=n=>t.check(Vo(0,n)),t.nonpositive=n=>t.check(In(0,n)),t.multipleOf=(n,o)=>t.check(Bo(n,o)),t.step=(n,o)=>t.check(Bo(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 te(t){return nc(rm,t)}var Ev=b("ZodNumberFormat",(t,e)=>{fi.init(t,e),rm.init(t,e)});function Qp(t){return oc(Ev,t)}var Iv=b("ZodBoolean",(t,e)=>{hi.init(t,e),ge.init(t,e)});function ve(t){return sc(Iv,t)}var Cv=b("ZodNull",(t,e)=>{gi.init(t,e),ge.init(t,e)});function nm(t){return ac(Cv,t)}var Av=b("ZodUnknown",(t,e)=>{yi.init(t,e),ge.init(t,e)});function me(){return ic(Av)}var Nv=b("ZodNever",(t,e)=>{_i.init(t,e),ge.init(t,e)});function Mv(t){return cc(Nv,t)}var Zv=b("ZodArray",(t,e)=>{bi.init(t,e),ge.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Br(r,n)),t.nonempty=r=>t.check(Br(1,r)),t.max=(r,n)=>t.check(Wo(r,n)),t.length=(r,n)=>t.check(Ko(r,n)),t.unwrap=()=>t.element});function K(t,e){return Lp(Zv,t,e)}var om=b("ZodObject",(t,e)=>{Uo.init(t,e),ge.init(t,e),W.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>qe(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:me()}),t.loose=()=>t.clone({...t._zod.def,catchall:me()}),t.strict=()=>t.clone({...t._zod.def,catchall:Mv()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>W.extend(t,r),t.merge=r=>W.merge(t,r),t.pick=r=>W.pick(t,r),t.omit=r=>W.omit(t,r),t.partial=(...r)=>W.partial(im,t,r[0]),t.required=(...r)=>W.required(cm,t,r[0])});function P(t,e){let r={type:"object",get shape(){return W.assignProp(this,"shape",{...t}),this.shape},...W.normalizeParams(e)};return new om(r)}function Ie(t,e){return new om({type:"object",get shape(){return W.assignProp(this,"shape",{...t}),this.shape},catchall:me(),...W.normalizeParams(e)})}var sm=b("ZodUnion",(t,e)=>{Jo.init(t,e),ge.init(t,e),t.options=e.options});function ue(t,e){return new sm({type:"union",options:t,...W.normalizeParams(e)})}var Lv=b("ZodDiscriminatedUnion",(t,e)=>{sm.init(t,e),vi.init(t,e)});function jc(t,e,r){return new Lv({type:"union",options:e,discriminator:t,...W.normalizeParams(r)})}var qv=b("ZodIntersection",(t,e)=>{wi.init(t,e),ge.init(t,e)});function ts(t,e){return new qv({type:"intersection",left:t,right:e})}var Dv=b("ZodRecord",(t,e)=>{ki.init(t,e),ge.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function ce(t,e,r){return new Dv({type:"record",keyType:t,valueType:e,...W.normalizeParams(r)})}var Tc=b("ZodEnum",(t,e)=>{xi.init(t,e),ge.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 a of n)if(r.has(a))s[a]=e.entries[a];else throw new Error(`Key ${a} not found in enum`);return new Tc({...e,checks:[],...W.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let a of n)if(r.has(a))delete s[a];else throw new Error(`Key ${a} not found in enum`);return new Tc({...e,checks:[],...W.normalizeParams(o),entries:s})}});function qe(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Tc({type:"enum",entries:r,...W.normalizeParams(e)})}var Uv=b("ZodLiteral",(t,e)=>{$i.init(t,e),ge.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 E(t,e){return new Uv({type:"literal",values:Array.isArray(t)?t:[t],...W.normalizeParams(e)})}var Jv=b("ZodTransform",(t,e)=>{Si.init(t,e),ge.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(W.issue(s,r.value,e));else{let a=s;a.fatal&&(a.continue=!1),a.code??(a.code="custom"),a.input??(a.input=r.value),a.inst??(a.inst=t),a.continue??(a.continue=!0),r.issues.push(W.issue(a))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});function am(t){return new Jv({type:"transform",transform:t})}var im=b("ZodOptional",(t,e)=>{zi.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType});function fe(t){return new im({type:"optional",innerType:t})}var Fv=b("ZodNullable",(t,e)=>{Ti.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType});function em(t){return new Fv({type:"nullable",innerType:t})}var Vv=b("ZodDefault",(t,e)=>{Pi.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Hv(t,e){return new Vv({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Bv=b("ZodPrefault",(t,e)=>{ji.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Wv(t,e){return new Bv({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var cm=b("ZodNonOptional",(t,e)=>{Ri.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Kv(t,e){return new cm({type:"nonoptional",innerType:t,...W.normalizeParams(e)})}var Gv=b("ZodCatch",(t,e)=>{Oi.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Xv(t,e){return new Gv({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Yv=b("ZodPipe",(t,e)=>{Ei.init(t,e),ge.init(t,e),t.in=e.in,t.out=e.out});function Pc(t,e){return new Yv({type:"pipe",in:t,out:e})}var Qv=b("ZodReadonly",(t,e)=>{Ii.init(t,e),ge.init(t,e)});function ew(t){return new Qv({type:"readonly",innerType:t})}var um=b("ZodCustom",(t,e)=>{Ci.init(t,e),ge.init(t,e)});function tw(t){let e=new xe({check:"custom"});return e._zod.check=t,e}function lm(t,e){return bc(um,t??(()=>!0),e)}function rw(t,e={}){return vc(um,t,e)}function nw(t){let e=tw(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(W.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(W.issue(o))}},t(r.value,r)));return e}function Rc(t,e){return Pc(am(t),e)}Ve(Ip());var Ec="2025-11-25";var dm=[Ec,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Ft="io.modelcontextprotocol/related-task",ns="2.0",be=lm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),pm=ue([_(),te().int()]),mm=_(),Hj=Ie({ttl:te().optional(),pollInterval:te().optional()}),ow=P({ttl:te().optional()}),sw=P({taskId:_()}),Ic=Ie({progressToken:pm.optional(),[Ft]:sw.optional()}),Be=P({_meta:Ic.optional()}),Mn=Be.extend({task:ow.optional()}),fm=t=>Mn.safeParse(t).success,$e=P({method:_(),params:Be.loose().optional()}),Ye=P({_meta:Ic.optional()}),Qe=P({method:_(),params:Ye.loose().optional()}),Se=Ie({_meta:Ic.optional()}),os=ue([_(),te().int()]),hm=P({jsonrpc:E(ns),id:os,...$e.shape}).strict(),Cc=t=>hm.safeParse(t).success,gm=P({jsonrpc:E(ns),...Qe.shape}).strict(),ym=t=>gm.safeParse(t).success,Ac=P({jsonrpc:E(ns),id:os,result:Se}).strict(),Zn=t=>Ac.safeParse(t).success;var A;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(A||(A={}));var Nc=P({jsonrpc:E(ns),id:os.optional(),error:P({code:te().int(),message:_(),data:me().optional()})}).strict();var _m=t=>Nc.safeParse(t).success;var bm=ue([hm,gm,Ac,Nc]),Bj=ue([Ac,Nc]),ss=Se.strict(),aw=Ye.extend({requestId:os.optional(),reason:_().optional()}),as=Qe.extend({method:E("notifications/cancelled"),params:aw}),iw=P({src:_(),mimeType:_().optional(),sizes:K(_()).optional(),theme:qe(["light","dark"]).optional()}),Ln=P({icons:K(iw).optional()}),Kr=P({name:_(),title:_().optional()}),vm=Kr.extend({...Kr.shape,...Ln.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),cw=ts(P({applyDefaults:ve().optional()}),ce(_(),me())),uw=Rc(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ts(P({form:cw.optional(),url:be.optional()}),ce(_(),me()).optional())),lw=Ie({list:be.optional(),cancel:be.optional(),requests:Ie({sampling:Ie({createMessage:be.optional()}).optional(),elicitation:Ie({create:be.optional()}).optional()}).optional()}),dw=Ie({list:be.optional(),cancel:be.optional(),requests:Ie({tools:Ie({call:be.optional()}).optional()}).optional()}),pw=P({experimental:ce(_(),be).optional(),sampling:P({context:be.optional(),tools:be.optional()}).optional(),elicitation:uw.optional(),roots:P({listChanged:ve().optional()}).optional(),tasks:lw.optional(),extensions:ce(_(),be).optional()}),mw=Be.extend({protocolVersion:_(),capabilities:pw,clientInfo:vm}),Mc=$e.extend({method:E("initialize"),params:mw});var fw=P({experimental:ce(_(),be).optional(),logging:be.optional(),completions:be.optional(),prompts:P({listChanged:ve().optional()}).optional(),resources:P({subscribe:ve().optional(),listChanged:ve().optional()}).optional(),tools:P({listChanged:ve().optional()}).optional(),tasks:dw.optional(),extensions:ce(_(),be).optional()}),hw=Se.extend({protocolVersion:_(),capabilities:fw,serverInfo:vm,instructions:_().optional()}),Zc=Qe.extend({method:E("notifications/initialized"),params:Ye.optional()});var is=$e.extend({method:E("ping"),params:Be.optional()}),gw=P({progress:te(),total:fe(te()),message:fe(_())}),yw=P({...Ye.shape,...gw.shape,progressToken:pm}),cs=Qe.extend({method:E("notifications/progress"),params:yw}),_w=Be.extend({cursor:mm.optional()}),qn=$e.extend({params:_w.optional()}),Dn=Se.extend({nextCursor:mm.optional()}),bw=qe(["working","input_required","completed","failed","cancelled"]),Un=P({taskId:_(),status:bw,ttl:ue([te(),nm()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:fe(te()),statusMessage:fe(_())}),Gr=Se.extend({task:Un}),vw=Ye.merge(Un),Jn=Qe.extend({method:E("notifications/tasks/status"),params:vw}),us=$e.extend({method:E("tasks/get"),params:Be.extend({taskId:_()})}),ls=Se.merge(Un),ds=$e.extend({method:E("tasks/result"),params:Be.extend({taskId:_()})}),Wj=Se.loose(),ps=qn.extend({method:E("tasks/list")}),ms=Dn.extend({tasks:K(Un)}),fs=$e.extend({method:E("tasks/cancel"),params:Be.extend({taskId:_()})}),wm=Se.merge(Un),km=P({uri:_(),mimeType:fe(_()),_meta:ce(_(),me()).optional()}),xm=km.extend({text:_()}),Lc=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),$m=km.extend({blob:Lc}),Fn=qe(["user","assistant"]),Xr=P({audience:K(Fn).optional(),priority:te().min(0).max(1).optional(),lastModified:An.datetime({offset:!0}).optional()}),Sm=P({...Kr.shape,...Ln.shape,uri:_(),description:fe(_()),mimeType:fe(_()),size:fe(te()),annotations:Xr.optional(),_meta:fe(Ie({}))}),ww=P({...Kr.shape,...Ln.shape,uriTemplate:_(),description:fe(_()),mimeType:fe(_()),annotations:Xr.optional(),_meta:fe(Ie({}))}),Yr=qn.extend({method:E("resources/list")}),kw=Dn.extend({resources:K(Sm)}),Qr=qn.extend({method:E("resources/templates/list")}),xw=Dn.extend({resourceTemplates:K(ww)}),qc=Be.extend({uri:_()}),$w=qc,hs=$e.extend({method:E("resources/read"),params:$w}),Sw=Se.extend({contents:K(ue([xm,$m]))}),zw=Qe.extend({method:E("notifications/resources/list_changed"),params:Ye.optional()}),Tw=qc,Pw=$e.extend({method:E("resources/subscribe"),params:Tw}),jw=qc,Rw=$e.extend({method:E("resources/unsubscribe"),params:jw}),Ow=Ye.extend({uri:_()}),Ew=Qe.extend({method:E("notifications/resources/updated"),params:Ow}),Iw=P({name:_(),description:fe(_()),required:fe(ve())}),Cw=P({...Kr.shape,...Ln.shape,description:fe(_()),arguments:fe(K(Iw)),_meta:fe(Ie({}))}),gs=qn.extend({method:E("prompts/list")}),Aw=Dn.extend({prompts:K(Cw)}),Nw=Be.extend({name:_(),arguments:ce(_(),_()).optional()}),ys=$e.extend({method:E("prompts/get"),params:Nw}),Dc=P({type:E("text"),text:_(),annotations:Xr.optional(),_meta:ce(_(),me()).optional()}),Uc=P({type:E("image"),data:Lc,mimeType:_(),annotations:Xr.optional(),_meta:ce(_(),me()).optional()}),Jc=P({type:E("audio"),data:Lc,mimeType:_(),annotations:Xr.optional(),_meta:ce(_(),me()).optional()}),Mw=P({type:E("tool_use"),name:_(),id:_(),input:ce(_(),me()),_meta:ce(_(),me()).optional()}),Zw=P({type:E("resource"),resource:ue([xm,$m]),annotations:Xr.optional(),_meta:ce(_(),me()).optional()}),Lw=Sm.extend({type:E("resource_link")}),Fc=ue([Dc,Uc,Jc,Lw,Zw]),qw=P({role:Fn,content:Fc}),Dw=Se.extend({description:_().optional(),messages:K(qw)}),Uw=Qe.extend({method:E("notifications/prompts/list_changed"),params:Ye.optional()}),Jw=P({title:_().optional(),readOnlyHint:ve().optional(),destructiveHint:ve().optional(),idempotentHint:ve().optional(),openWorldHint:ve().optional()}),Fw=P({taskSupport:qe(["required","optional","forbidden"]).optional()}),zm=P({...Kr.shape,...Ln.shape,description:_().optional(),inputSchema:P({type:E("object"),properties:ce(_(),be).optional(),required:K(_()).optional()}).catchall(me()),outputSchema:P({type:E("object"),properties:ce(_(),be).optional(),required:K(_()).optional()}).catchall(me()).optional(),annotations:Jw.optional(),execution:Fw.optional(),_meta:ce(_(),me()).optional()}),_s=qn.extend({method:E("tools/list")}),Vw=Dn.extend({tools:K(zm)}),bs=Se.extend({content:K(Fc).default([]),structuredContent:ce(_(),me()).optional(),isError:ve().optional()}),Kj=bs.or(Se.extend({toolResult:me()})),Hw=Mn.extend({name:_(),arguments:ce(_(),me()).optional()}),en=$e.extend({method:E("tools/call"),params:Hw}),Bw=Qe.extend({method:E("notifications/tools/list_changed"),params:Ye.optional()}),Gj=P({autoRefresh:ve().default(!0),debounceMs:te().int().nonnegative().default(300)}),Vn=qe(["debug","info","notice","warning","error","critical","alert","emergency"]),Ww=Be.extend({level:Vn}),Vc=$e.extend({method:E("logging/setLevel"),params:Ww}),Kw=Ye.extend({level:Vn,logger:_().optional(),data:me()}),Gw=Qe.extend({method:E("notifications/message"),params:Kw}),Xw=P({name:_().optional()}),Yw=P({hints:K(Xw).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),Qw=P({mode:qe(["auto","required","none"]).optional()}),ek=P({type:E("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:K(Fc).default([]),structuredContent:P({}).loose().optional(),isError:ve().optional(),_meta:ce(_(),me()).optional()}),tk=jc("type",[Dc,Uc,Jc]),rs=jc("type",[Dc,Uc,Jc,Mw,ek]),rk=P({role:Fn,content:ue([rs,K(rs)]),_meta:ce(_(),me()).optional()}),nk=Mn.extend({messages:K(rk),modelPreferences:Yw.optional(),systemPrompt:_().optional(),includeContext:qe(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:K(_()).optional(),metadata:be.optional(),tools:K(zm).optional(),toolChoice:Qw.optional()}),ok=$e.extend({method:E("sampling/createMessage"),params:nk}),Hn=Se.extend({model:_(),stopReason:fe(qe(["endTurn","stopSequence","maxTokens"]).or(_())),role:Fn,content:tk}),Hc=Se.extend({model:_(),stopReason:fe(qe(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Fn,content:ue([rs,K(rs)])}),sk=P({type:E("boolean"),title:_().optional(),description:_().optional(),default:ve().optional()}),ak=P({type:E("string"),title:_().optional(),description:_().optional(),minLength:te().optional(),maxLength:te().optional(),format:qe(["email","uri","date","date-time"]).optional(),default:_().optional()}),ik=P({type:qe(["number","integer"]),title:_().optional(),description:_().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),ck=P({type:E("string"),title:_().optional(),description:_().optional(),enum:K(_()),default:_().optional()}),uk=P({type:E("string"),title:_().optional(),description:_().optional(),oneOf:K(P({const:_(),title:_()})),default:_().optional()}),lk=P({type:E("string"),title:_().optional(),description:_().optional(),enum:K(_()),enumNames:K(_()).optional(),default:_().optional()}),dk=ue([ck,uk]),pk=P({type:E("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({type:E("string"),enum:K(_())}),default:K(_()).optional()}),mk=P({type:E("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({anyOf:K(P({const:_(),title:_()}))}),default:K(_()).optional()}),fk=ue([pk,mk]),hk=ue([lk,dk,fk]),gk=ue([hk,sk,ak,ik]),yk=Mn.extend({mode:E("form").optional(),message:_(),requestedSchema:P({type:E("object"),properties:ce(_(),gk),required:K(_()).optional()})}),_k=Mn.extend({mode:E("url"),message:_(),elicitationId:_(),url:_().url()}),bk=ue([yk,_k]),vk=$e.extend({method:E("elicitation/create"),params:bk}),wk=Ye.extend({elicitationId:_()}),kk=Qe.extend({method:E("notifications/elicitation/complete"),params:wk}),tn=Se.extend({action:qe(["accept","decline","cancel"]),content:Rc(t=>t===null?void 0:t,ce(_(),ue([_(),te(),ve(),K(_())])).optional())}),xk=P({type:E("ref/resource"),uri:_()});var $k=P({type:E("ref/prompt"),name:_()}),Sk=Be.extend({ref:ue([$k,xk]),argument:P({name:_(),value:_()}),context:P({arguments:ce(_(),_()).optional()}).optional()}),vs=$e.extend({method:E("completion/complete"),params:Sk});function Tm(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Pm(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var zk=Se.extend({completion:Ie({values:K(_()).max(100),total:fe(te().int()),hasMore:fe(ve())})}),Tk=P({uri:_().startsWith("file://"),name:_().optional(),_meta:ce(_(),me()).optional()}),Pk=$e.extend({method:E("roots/list"),params:Be.optional()}),Bc=Se.extend({roots:K(Tk)}),jk=Qe.extend({method:E("notifications/roots/list_changed"),params:Ye.optional()}),Xj=ue([is,Mc,vs,Vc,ys,gs,Yr,Qr,hs,Pw,Rw,en,_s,us,ds,ps,fs]),Yj=ue([as,cs,Zc,jk,Jn]),Qj=ue([ss,Hn,Hc,tn,Bc,ls,ms,Gr]),eR=ue([is,ok,vk,Pk,us,ds,ps,fs]),tR=ue([as,cs,Gw,Ew,zw,Bw,Uw,Jn,kk]),rR=ue([ss,hw,zk,Dw,Aw,kw,xw,Sw,bs,Vw,ls,ms,Gr]),O=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===A.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Oc(o.elicitations,r)}return new t(e,r,n)}},Oc=class extends O{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(A.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function Vt(t){return t==="completed"||t==="failed"||t==="cancelled"}var Rm=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"},Om=t=>typeof t=="string"?{...jm,name:t}:{...jm,...t};var Em=t=>{let e=Om(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 Wc(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function G(t,e,r,n,o){t[e]=r,Wc(t,e,n,o)}var ws=(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 he(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?ws(e,t.currentPath):e.join("/")}}function Im(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==$.ZodAny&&(r.items=L(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&G(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&G(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(G(r,"minItems",t.exactLength.value,t.exactLength.message,e),G(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Cm(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?G(r,"minimum",n.value,n.message,e):G(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),G(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?G(r,"maximum",n.value,n.message,e):G(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),G(r,"maximum",n.value,n.message,e));break;case"multipleOf":G(r,"multipleOf",n.value,n.message,e);break}return r}function Am(){return{type:"boolean"}}function ks(t,e){return L(t.type._def,e)}var Nm=(t,e)=>L(t.innerType._def,e);function Kc(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Kc(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 Rk(t,e)}}var Rk=(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":G(r,"minimum",n.value,n.message,e);break;case"max":G(r,"maximum",n.value,n.message,e);break}return r};function Mm(t,e){return{...L(t.innerType._def,e),default:t.defaultValue()}}function Zm(t,e){return e.effectStrategy==="input"?L(t.schema._def,e):he(e)}function Lm(t){return{type:"string",enum:Array.from(t.values)}}var Ok=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function qm(t,e){let r=[L(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),L(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(Ok(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let a=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:i,...u}=s;a=u}else n=void 0;o.push(a)}}),o.length?{allOf:o,...n}:void 0}function Dm(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 Gc,at={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:()=>(Gc===void 0&&(Gc=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),Gc),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 xs(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":G(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":G(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":it(r,"email",n.message,e);break;case"format:idn-email":it(r,"idn-email",n.message,e);break;case"pattern:zod":Ce(r,at.email,n.message,e);break}break;case"url":it(r,"uri",n.message,e);break;case"uuid":it(r,"uuid",n.message,e);break;case"regex":Ce(r,n.regex,n.message,e);break;case"cuid":Ce(r,at.cuid,n.message,e);break;case"cuid2":Ce(r,at.cuid2,n.message,e);break;case"startsWith":Ce(r,RegExp(`^${Xc(n.value,e)}`),n.message,e);break;case"endsWith":Ce(r,RegExp(`${Xc(n.value,e)}$`),n.message,e);break;case"datetime":it(r,"date-time",n.message,e);break;case"date":it(r,"date",n.message,e);break;case"time":it(r,"time",n.message,e);break;case"duration":it(r,"duration",n.message,e);break;case"length":G(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),G(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Ce(r,RegExp(Xc(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&it(r,"ipv4",n.message,e),n.version!=="v4"&&it(r,"ipv6",n.message,e);break}case"base64url":Ce(r,at.base64url,n.message,e);break;case"jwt":Ce(r,at.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ce(r,at.ipv4Cidr,n.message,e),n.version!=="v4"&&Ce(r,at.ipv6Cidr,n.message,e);break}case"emoji":Ce(r,at.emoji(),n.message,e);break;case"ulid":{Ce(r,at.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{it(r,"binary",n.message,e);break}case"contentEncoding:base64":{G(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ce(r,at.base64,n.message,e);break}}break}case"nanoid":Ce(r,at.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function Xc(t,e){return e.patternStrategy==="escape"?Ik(t):t}var Ek=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function Ik(t){let e="";for(let r=0;r<t.length;r++)Ek.has(t[r])||(e+="\\"),e+=t[r];return e}function it(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}}})):G(t,"format",e,r,n)}function Ce(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:Um(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):G(t,"pattern",Um(e,n),r,n)}function Um(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,a=!1,i=!1;for(let u=0;u<n.length;u++){if(s){o+=n[u],s=!1;continue}if(r.i){if(a){if(n[u].match(/[a-z]/)){i?(o+=n[u],o+=`${n[u-2]}-${n[u]}`.toUpperCase(),i=!1):n[u+1]==="-"&&n[u+2]?.match(/[a-z]/)?(o+=n[u],i=!0):o+=`${n[u]}${n[u].toUpperCase()}`;continue}}else if(n[u].match(/[a-z]/)){o+=`[${n[u]}${n[u].toUpperCase()}]`;continue}}if(r.m){if(n[u]==="^"){o+=`(^|(?<=[\r
|
|
37
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let c of this.seen.entries()){let d=c[1];if(e===c[0]){i(c);continue}if(n.external){let h=n.external.registry.get(c[0])?.id;if(e!==c[0]&&h){i(c);continue}}if(this.metadataRegistry.get(c[0])?.id){i(c);continue}if(d.cycle){i(c);continue}if(d.count>1&&n.reused==="ref"){i(c);continue}}let a=(c,d)=>{let g=this.seen.get(c),h=g.def??g.schema,f={...h};if(g.ref===null)return;let m=g.ref;if(g.ref=null,m){a(m,d);let y=this.seen.get(m).schema;y.$ref&&d.target==="draft-7"?(h.allOf=h.allOf??[],h.allOf.push(y)):(Object.assign(h,y),Object.assign(h,f))}g.isParent||this.override({zodSchema:c,jsonSchema:h,path:g.path??[]})};for(let c of[...this.seen.entries()].reverse())a(c[0],{target:this.target});let u={};if(this.target==="draft-2020-12"?u.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?u.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let c=n.external.registry.get(e)?.id;if(!c)throw new Error("Schema is missing an `id` property");u.$id=n.external.uri(c)}Object.assign(u,o.def);let l=n.external?.defs??{};for(let c of this.seen.entries()){let d=c[1];d.def&&d.defId&&(l[d.defId]=d.def)}n.external||Object.keys(l).length>0&&(this.target==="draft-2020-12"?u.$defs=l:u.definitions=l);try{return JSON.parse(JSON.stringify(u))}catch{throw new Error("Error converting schema to JSON.")}}};function Sc(t,e){if(t instanceof Cn){let n=new es(e),o={};for(let a of t._idmap.entries()){let[u,l]=a;n.process(l)}let s={},i={registry:t,uri:e?.uri,defs:o};for(let a of t._idmap.entries()){let[u,l]=a;s[u]=n.emit(l,{...e,external:i})}if(Object.keys(o).length>0){let a=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[a]:o}}return{schemas:s}}let r=new es(e);return r.process(t),r.emit(t,e)}function _e(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 _e(o.element,r);case"object":{for(let s in o.shape)if(_e(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(_e(s,r))return!0;return!1}case"intersection":return _e(o.left,r)||_e(o.right,r);case"tuple":{for(let s of o.items)if(_e(s,r))return!0;return!!(o.rest&&_e(o.rest,r))}case"record":return _e(o.keyType,r)||_e(o.valueType,r);case"map":return _e(o.keyType,r)||_e(o.valueType,r);case"set":return _e(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return _e(o.innerType,r);case"lazy":return _e(o.getter(),r);case"default":return _e(o.innerType,r);case"prefault":return _e(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return _e(o.in,r)||_e(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Dv=b("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ne.init(t,e),t.def=e,t.parse=(r,n)=>Ji(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>wr(t,r,n),t.parseAsync=async(r,n)=>Vi(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>kr(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)=>Be(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var Uv=b("ZodMiniObject",(t,e)=>{Ho.init(t,e),Dv.init(t,e),W.defineLazy(t,"shape",()=>e.shape)});function zc(t,e){let r={type:"object",get shape(){return W.assignProp(this,"shape",{...t}),this.shape},...W.normalizeParams(e)};return new Uv(r)}function Ye(t){return!!t._zod}function Sr(t){let e=Object.values(t);if(e.length===0)return zc({});let r=e.every(Ye),n=e.every(o=>!Ye(o));if(r)return zc(t);if(n)return ji(t);throw new Error("Mixed Zod versions detected in object shape.")}function Jt(t,e){return Ye(t)?wr(t,e):t.safeParse(e)}async function ts(t,e){return Ye(t)?await kr(t,e):await t.safeParseAsync(e)}function Ft(t){if(!t)return;let e;if(Ye(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function Kr(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 Sr(t)}}if(Ye(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 rs(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 Yp(t){return t.description}function Qp(t){if(Ye(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function ns(t){if(Ye(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 Mn={};Si(Mn,{ZodISODate:()=>tf,ZodISODateTime:()=>ef,ZodISODuration:()=>nf,ZodISOTime:()=>rf,date:()=>Pc,datetime:()=>Tc,duration:()=>Rc,time:()=>jc});var ef=b("ZodISODateTime",(t,e)=>{Lp.init(t,e),pe.init(t,e)});function Tc(t){return Hp(ef,t)}var tf=b("ZodISODate",(t,e)=>{Dp.init(t,e),pe.init(t,e)});function Pc(t){return Bp(tf,t)}var rf=b("ZodISOTime",(t,e)=>{Up.init(t,e),pe.init(t,e)});function jc(t){return Wp(rf,t)}var nf=b("ZodISODuration",(t,e)=>{qp.init(t,e),pe.init(t,e)});function Rc(t){return Kp(nf,t)}var of=(t,e)=>{Uo.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Ui(t,r)},flatten:{value:r=>Di(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},JR=b("ZodError",of),Zn=b("ZodError",of,{Parent:Error});var sf=qi(Zn),af=Fi(Zn),cf=Hi(Zn),uf=Bi(Zn);var ge=b("ZodType",(t,e)=>(ne.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)=>Be(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>sf(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>cf(t,r,n),t.parseAsync=async(r,n)=>af(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>uf(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(Zw(r,n)),t.superRefine=r=>t.check(Lw(r)),t.overwrite=r=>t.check(xr(r)),t.optional=()=>me(t),t.nullable=()=>pf(t),t.nullish=()=>me(pf(t)),t.nonoptional=r=>Ow(t,r),t.array=()=>K(t),t.or=r=>ue([t,r]),t.and=r=>ss(t,r),t.transform=r=>Ic(t,_f(r)),t.default=r=>Pw(t,r),t.prefault=r=>Rw(t,r),t.catch=r=>Ew(t,r),t.pipe=r=>Ic(t,r),t.readonly=()=>Nw(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)),ff=b("_ZodString",(t,e)=>{En.init(t,e),ge.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(fc(...n)),t.includes=(...n)=>t.check(gc(...n)),t.startsWith=(...n)=>t.check(yc(...n)),t.endsWith=(...n)=>t.check(_c(...n)),t.min=(...n)=>t.check(Wr(...n)),t.max=(...n)=>t.check(Yo(...n)),t.length=(...n)=>t.check(Qo(...n)),t.nonempty=(...n)=>t.check(Wr(1,...n)),t.lowercase=n=>t.check(mc(n)),t.uppercase=n=>t.check(hc(n)),t.trim=()=>t.check(vc()),t.normalize=(...n)=>t.check(bc(...n)),t.toLowerCase=()=>t.check(wc()),t.toUpperCase=()=>t.check(kc())}),Gv=b("ZodString",(t,e)=>{En.init(t,e),ff.init(t,e),t.email=r=>t.check(Da(Xv,r)),t.url=r=>t.check(Va(Yv,r)),t.jwt=r=>t.check(ic(fw,r)),t.emoji=r=>t.check(Ha(Qv,r)),t.guid=r=>t.check(Wo(lf,r)),t.uuid=r=>t.check(Ua(os,r)),t.uuidv4=r=>t.check(qa(os,r)),t.uuidv6=r=>t.check(Ja(os,r)),t.uuidv7=r=>t.check(Fa(os,r)),t.nanoid=r=>t.check(Ba(ew,r)),t.guid=r=>t.check(Wo(lf,r)),t.cuid=r=>t.check(Wa(tw,r)),t.cuid2=r=>t.check(Ka(rw,r)),t.ulid=r=>t.check(Ga(nw,r)),t.base64=r=>t.check(nc(lw,r)),t.base64url=r=>t.check(oc(dw,r)),t.xid=r=>t.check(Xa(ow,r)),t.ksuid=r=>t.check(Ya(sw,r)),t.ipv4=r=>t.check(Qa(iw,r)),t.ipv6=r=>t.check(ec(aw,r)),t.cidrv4=r=>t.check(tc(cw,r)),t.cidrv6=r=>t.check(rc(uw,r)),t.e164=r=>t.check(sc(pw,r)),t.datetime=r=>t.check(Tc(r)),t.date=r=>t.check(Pc(r)),t.time=r=>t.check(jc(r)),t.duration=r=>t.check(Rc(r))});function _(t){return La(Gv,t)}var pe=b("ZodStringFormat",(t,e)=>{ae.init(t,e),ff.init(t,e)}),Xv=b("ZodEmail",(t,e)=>{ta.init(t,e),pe.init(t,e)});var lf=b("ZodGUID",(t,e)=>{Qi.init(t,e),pe.init(t,e)});var os=b("ZodUUID",(t,e)=>{ea.init(t,e),pe.init(t,e)});var Yv=b("ZodURL",(t,e)=>{ra.init(t,e),pe.init(t,e)});var Qv=b("ZodEmoji",(t,e)=>{na.init(t,e),pe.init(t,e)});var ew=b("ZodNanoID",(t,e)=>{oa.init(t,e),pe.init(t,e)});var tw=b("ZodCUID",(t,e)=>{sa.init(t,e),pe.init(t,e)});var rw=b("ZodCUID2",(t,e)=>{ia.init(t,e),pe.init(t,e)});var nw=b("ZodULID",(t,e)=>{aa.init(t,e),pe.init(t,e)});var ow=b("ZodXID",(t,e)=>{ca.init(t,e),pe.init(t,e)});var sw=b("ZodKSUID",(t,e)=>{ua.init(t,e),pe.init(t,e)});var iw=b("ZodIPv4",(t,e)=>{la.init(t,e),pe.init(t,e)});var aw=b("ZodIPv6",(t,e)=>{da.init(t,e),pe.init(t,e)});var cw=b("ZodCIDRv4",(t,e)=>{pa.init(t,e),pe.init(t,e)});var uw=b("ZodCIDRv6",(t,e)=>{fa.init(t,e),pe.init(t,e)});var lw=b("ZodBase64",(t,e)=>{ma.init(t,e),pe.init(t,e)});var dw=b("ZodBase64URL",(t,e)=>{ha.init(t,e),pe.init(t,e)});var pw=b("ZodE164",(t,e)=>{ga.init(t,e),pe.init(t,e)});var fw=b("ZodJWT",(t,e)=>{ya.init(t,e),pe.init(t,e)});var mf=b("ZodNumber",(t,e)=>{Vo.init(t,e),ge.init(t,e),t.gt=(n,o)=>t.check(Go(n,o)),t.gte=(n,o)=>t.check(Nn(n,o)),t.min=(n,o)=>t.check(Nn(n,o)),t.lt=(n,o)=>t.check(Ko(n,o)),t.lte=(n,o)=>t.check(An(n,o)),t.max=(n,o)=>t.check(An(n,o)),t.int=n=>t.check(df(n)),t.safe=n=>t.check(df(n)),t.positive=n=>t.check(Go(0,n)),t.nonnegative=n=>t.check(Nn(0,n)),t.negative=n=>t.check(Ko(0,n)),t.nonpositive=n=>t.check(An(0,n)),t.multipleOf=(n,o)=>t.check(Xo(n,o)),t.step=(n,o)=>t.check(Xo(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 te(t){return ac(mf,t)}var mw=b("ZodNumberFormat",(t,e)=>{_a.init(t,e),mf.init(t,e)});function df(t){return cc(mw,t)}var hw=b("ZodBoolean",(t,e)=>{ba.init(t,e),ge.init(t,e)});function ve(t){return uc(hw,t)}var gw=b("ZodNull",(t,e)=>{va.init(t,e),ge.init(t,e)});function hf(t){return lc(gw,t)}var yw=b("ZodUnknown",(t,e)=>{wa.init(t,e),ge.init(t,e)});function fe(){return dc(yw)}var _w=b("ZodNever",(t,e)=>{ka.init(t,e),ge.init(t,e)});function bw(t){return pc(_w,t)}var vw=b("ZodArray",(t,e)=>{xa.init(t,e),ge.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Wr(r,n)),t.nonempty=r=>t.check(Wr(1,r)),t.max=(r,n)=>t.check(Yo(r,n)),t.length=(r,n)=>t.check(Qo(r,n)),t.unwrap=()=>t.element});function K(t,e){return Gp(vw,t,e)}var gf=b("ZodObject",(t,e)=>{Ho.init(t,e),ge.init(t,e),W.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>De(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:fe()}),t.loose=()=>t.clone({...t._zod.def,catchall:fe()}),t.strict=()=>t.clone({...t._zod.def,catchall:bw()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>W.extend(t,r),t.merge=r=>W.merge(t,r),t.pick=r=>W.pick(t,r),t.omit=r=>W.omit(t,r),t.partial=(...r)=>W.partial(bf,t,r[0]),t.required=(...r)=>W.required(vf,t,r[0])});function P(t,e){let r={type:"object",get shape(){return W.assignProp(this,"shape",{...t}),this.shape},...W.normalizeParams(e)};return new gf(r)}function Ee(t,e){return new gf({type:"object",get shape(){return W.assignProp(this,"shape",{...t}),this.shape},catchall:fe(),...W.normalizeParams(e)})}var yf=b("ZodUnion",(t,e)=>{Bo.init(t,e),ge.init(t,e),t.options=e.options});function ue(t,e){return new yf({type:"union",options:t,...W.normalizeParams(e)})}var ww=b("ZodDiscriminatedUnion",(t,e)=>{yf.init(t,e),$a.init(t,e)});function Ec(t,e,r){return new ww({type:"union",options:e,discriminator:t,...W.normalizeParams(r)})}var kw=b("ZodIntersection",(t,e)=>{Sa.init(t,e),ge.init(t,e)});function ss(t,e){return new kw({type:"intersection",left:t,right:e})}var xw=b("ZodRecord",(t,e)=>{za.init(t,e),ge.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function ce(t,e,r){return new xw({type:"record",keyType:t,valueType:e,...W.normalizeParams(r)})}var Oc=b("ZodEnum",(t,e)=>{Ta.init(t,e),ge.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 Oc({...e,checks:[],...W.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 Oc({...e,checks:[],...W.normalizeParams(o),entries:s})}});function De(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Oc({type:"enum",entries:r,...W.normalizeParams(e)})}var $w=b("ZodLiteral",(t,e)=>{Pa.init(t,e),ge.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 I(t,e){return new $w({type:"literal",values:Array.isArray(t)?t:[t],...W.normalizeParams(e)})}var Sw=b("ZodTransform",(t,e)=>{ja.init(t,e),ge.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(W.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(W.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 _f(t){return new Sw({type:"transform",transform:t})}var bf=b("ZodOptional",(t,e)=>{Ra.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType});function me(t){return new bf({type:"optional",innerType:t})}var zw=b("ZodNullable",(t,e)=>{Oa.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType});function pf(t){return new zw({type:"nullable",innerType:t})}var Tw=b("ZodDefault",(t,e)=>{Ia.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Pw(t,e){return new Tw({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var jw=b("ZodPrefault",(t,e)=>{Ea.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Rw(t,e){return new jw({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var vf=b("ZodNonOptional",(t,e)=>{Ca.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Ow(t,e){return new vf({type:"nonoptional",innerType:t,...W.normalizeParams(e)})}var Iw=b("ZodCatch",(t,e)=>{Aa.init(t,e),ge.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Ew(t,e){return new Iw({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Cw=b("ZodPipe",(t,e)=>{Na.init(t,e),ge.init(t,e),t.in=e.in,t.out=e.out});function Ic(t,e){return new Cw({type:"pipe",in:t,out:e})}var Aw=b("ZodReadonly",(t,e)=>{Ma.init(t,e),ge.init(t,e)});function Nw(t){return new Aw({type:"readonly",innerType:t})}var wf=b("ZodCustom",(t,e)=>{Za.init(t,e),ge.init(t,e)});function Mw(t){let e=new xe({check:"custom"});return e._zod.check=t,e}function kf(t,e){return xc(wf,t??(()=>!0),e)}function Zw(t,e={}){return $c(wf,t,e)}function Lw(t){let e=Mw(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(W.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(W.issue(o))}},t(r.value,r)));return e}function Cc(t,e){return Ic(_f(t),e)}He(Fp());var Nc="2025-11-25";var xf=[Nc,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Vt="io.modelcontextprotocol/related-task",as="2.0",be=kf(t=>t!==null&&(typeof t=="object"||typeof t=="function")),$f=ue([_(),te().int()]),Sf=_(),nO=Ee({ttl:te().optional(),pollInterval:te().optional()}),Dw=P({ttl:te().optional()}),Uw=P({taskId:_()}),Mc=Ee({progressToken:$f.optional(),[Vt]:Uw.optional()}),We=P({_meta:Mc.optional()}),Ln=We.extend({task:Dw.optional()}),zf=t=>Ln.safeParse(t).success,$e=P({method:_(),params:We.loose().optional()}),Qe=P({_meta:Mc.optional()}),et=P({method:_(),params:Qe.loose().optional()}),Se=Ee({_meta:Mc.optional()}),cs=ue([_(),te().int()]),Tf=P({jsonrpc:I(as),id:cs,...$e.shape}).strict(),Zc=t=>Tf.safeParse(t).success,Pf=P({jsonrpc:I(as),...et.shape}).strict(),jf=t=>Pf.safeParse(t).success,Lc=P({jsonrpc:I(as),id:cs,result:Se}).strict(),Dn=t=>Lc.safeParse(t).success;var A;(function(t){t[t.ConnectionClosed=-32e3]="ConnectionClosed",t[t.RequestTimeout=-32001]="RequestTimeout",t[t.ParseError=-32700]="ParseError",t[t.InvalidRequest=-32600]="InvalidRequest",t[t.MethodNotFound=-32601]="MethodNotFound",t[t.InvalidParams=-32602]="InvalidParams",t[t.InternalError=-32603]="InternalError",t[t.UrlElicitationRequired=-32042]="UrlElicitationRequired"})(A||(A={}));var Dc=P({jsonrpc:I(as),id:cs.optional(),error:P({code:te().int(),message:_(),data:fe().optional()})}).strict();var Rf=t=>Dc.safeParse(t).success;var Of=ue([Tf,Pf,Lc,Dc]),oO=ue([Lc,Dc]),us=Se.strict(),qw=Qe.extend({requestId:cs.optional(),reason:_().optional()}),ls=et.extend({method:I("notifications/cancelled"),params:qw}),Jw=P({src:_(),mimeType:_().optional(),sizes:K(_()).optional(),theme:De(["light","dark"]).optional()}),Un=P({icons:K(Jw).optional()}),Gr=P({name:_(),title:_().optional()}),If=Gr.extend({...Gr.shape,...Un.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),Fw=ss(P({applyDefaults:ve().optional()}),ce(_(),fe())),Vw=Cc(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ss(P({form:Fw.optional(),url:be.optional()}),ce(_(),fe()).optional())),Hw=Ee({list:be.optional(),cancel:be.optional(),requests:Ee({sampling:Ee({createMessage:be.optional()}).optional(),elicitation:Ee({create:be.optional()}).optional()}).optional()}),Bw=Ee({list:be.optional(),cancel:be.optional(),requests:Ee({tools:Ee({call:be.optional()}).optional()}).optional()}),Ww=P({experimental:ce(_(),be).optional(),sampling:P({context:be.optional(),tools:be.optional()}).optional(),elicitation:Vw.optional(),roots:P({listChanged:ve().optional()}).optional(),tasks:Hw.optional(),extensions:ce(_(),be).optional()}),Kw=We.extend({protocolVersion:_(),capabilities:Ww,clientInfo:If}),Uc=$e.extend({method:I("initialize"),params:Kw});var Gw=P({experimental:ce(_(),be).optional(),logging:be.optional(),completions:be.optional(),prompts:P({listChanged:ve().optional()}).optional(),resources:P({subscribe:ve().optional(),listChanged:ve().optional()}).optional(),tools:P({listChanged:ve().optional()}).optional(),tasks:Bw.optional(),extensions:ce(_(),be).optional()}),Xw=Se.extend({protocolVersion:_(),capabilities:Gw,serverInfo:If,instructions:_().optional()}),qc=et.extend({method:I("notifications/initialized"),params:Qe.optional()});var ds=$e.extend({method:I("ping"),params:We.optional()}),Yw=P({progress:te(),total:me(te()),message:me(_())}),Qw=P({...Qe.shape,...Yw.shape,progressToken:$f}),ps=et.extend({method:I("notifications/progress"),params:Qw}),ek=We.extend({cursor:Sf.optional()}),qn=$e.extend({params:ek.optional()}),Jn=Se.extend({nextCursor:Sf.optional()}),tk=De(["working","input_required","completed","failed","cancelled"]),Fn=P({taskId:_(),status:tk,ttl:ue([te(),hf()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:me(te()),statusMessage:me(_())}),Xr=Se.extend({task:Fn}),rk=Qe.merge(Fn),Vn=et.extend({method:I("notifications/tasks/status"),params:rk}),fs=$e.extend({method:I("tasks/get"),params:We.extend({taskId:_()})}),ms=Se.merge(Fn),hs=$e.extend({method:I("tasks/result"),params:We.extend({taskId:_()})}),sO=Se.loose(),gs=qn.extend({method:I("tasks/list")}),ys=Jn.extend({tasks:K(Fn)}),_s=$e.extend({method:I("tasks/cancel"),params:We.extend({taskId:_()})}),Ef=Se.merge(Fn),Cf=P({uri:_(),mimeType:me(_()),_meta:ce(_(),fe()).optional()}),Af=Cf.extend({text:_()}),Jc=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Nf=Cf.extend({blob:Jc}),Hn=De(["user","assistant"]),Yr=P({audience:K(Hn).optional(),priority:te().min(0).max(1).optional(),lastModified:Mn.datetime({offset:!0}).optional()}),Mf=P({...Gr.shape,...Un.shape,uri:_(),description:me(_()),mimeType:me(_()),size:me(te()),annotations:Yr.optional(),_meta:me(Ee({}))}),nk=P({...Gr.shape,...Un.shape,uriTemplate:_(),description:me(_()),mimeType:me(_()),annotations:Yr.optional(),_meta:me(Ee({}))}),Qr=qn.extend({method:I("resources/list")}),ok=Jn.extend({resources:K(Mf)}),en=qn.extend({method:I("resources/templates/list")}),sk=Jn.extend({resourceTemplates:K(nk)}),Fc=We.extend({uri:_()}),ik=Fc,bs=$e.extend({method:I("resources/read"),params:ik}),ak=Se.extend({contents:K(ue([Af,Nf]))}),ck=et.extend({method:I("notifications/resources/list_changed"),params:Qe.optional()}),uk=Fc,lk=$e.extend({method:I("resources/subscribe"),params:uk}),dk=Fc,pk=$e.extend({method:I("resources/unsubscribe"),params:dk}),fk=Qe.extend({uri:_()}),mk=et.extend({method:I("notifications/resources/updated"),params:fk}),hk=P({name:_(),description:me(_()),required:me(ve())}),gk=P({...Gr.shape,...Un.shape,description:me(_()),arguments:me(K(hk)),_meta:me(Ee({}))}),vs=qn.extend({method:I("prompts/list")}),yk=Jn.extend({prompts:K(gk)}),_k=We.extend({name:_(),arguments:ce(_(),_()).optional()}),ws=$e.extend({method:I("prompts/get"),params:_k}),Vc=P({type:I("text"),text:_(),annotations:Yr.optional(),_meta:ce(_(),fe()).optional()}),Hc=P({type:I("image"),data:Jc,mimeType:_(),annotations:Yr.optional(),_meta:ce(_(),fe()).optional()}),Bc=P({type:I("audio"),data:Jc,mimeType:_(),annotations:Yr.optional(),_meta:ce(_(),fe()).optional()}),bk=P({type:I("tool_use"),name:_(),id:_(),input:ce(_(),fe()),_meta:ce(_(),fe()).optional()}),vk=P({type:I("resource"),resource:ue([Af,Nf]),annotations:Yr.optional(),_meta:ce(_(),fe()).optional()}),wk=Mf.extend({type:I("resource_link")}),Wc=ue([Vc,Hc,Bc,wk,vk]),kk=P({role:Hn,content:Wc}),xk=Se.extend({description:_().optional(),messages:K(kk)}),$k=et.extend({method:I("notifications/prompts/list_changed"),params:Qe.optional()}),Sk=P({title:_().optional(),readOnlyHint:ve().optional(),destructiveHint:ve().optional(),idempotentHint:ve().optional(),openWorldHint:ve().optional()}),zk=P({taskSupport:De(["required","optional","forbidden"]).optional()}),Zf=P({...Gr.shape,...Un.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:ce(_(),be).optional(),required:K(_()).optional()}).catchall(fe()),outputSchema:P({type:I("object"),properties:ce(_(),be).optional(),required:K(_()).optional()}).catchall(fe()).optional(),annotations:Sk.optional(),execution:zk.optional(),_meta:ce(_(),fe()).optional()}),ks=qn.extend({method:I("tools/list")}),Tk=Jn.extend({tools:K(Zf)}),xs=Se.extend({content:K(Wc).default([]),structuredContent:ce(_(),fe()).optional(),isError:ve().optional()}),iO=xs.or(Se.extend({toolResult:fe()})),Pk=Ln.extend({name:_(),arguments:ce(_(),fe()).optional()}),tn=$e.extend({method:I("tools/call"),params:Pk}),jk=et.extend({method:I("notifications/tools/list_changed"),params:Qe.optional()}),aO=P({autoRefresh:ve().default(!0),debounceMs:te().int().nonnegative().default(300)}),Bn=De(["debug","info","notice","warning","error","critical","alert","emergency"]),Rk=We.extend({level:Bn}),Kc=$e.extend({method:I("logging/setLevel"),params:Rk}),Ok=Qe.extend({level:Bn,logger:_().optional(),data:fe()}),Ik=et.extend({method:I("notifications/message"),params:Ok}),Ek=P({name:_().optional()}),Ck=P({hints:K(Ek).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),Ak=P({mode:De(["auto","required","none"]).optional()}),Nk=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:K(Wc).default([]),structuredContent:P({}).loose().optional(),isError:ve().optional(),_meta:ce(_(),fe()).optional()}),Mk=Ec("type",[Vc,Hc,Bc]),is=Ec("type",[Vc,Hc,Bc,bk,Nk]),Zk=P({role:Hn,content:ue([is,K(is)]),_meta:ce(_(),fe()).optional()}),Lk=Ln.extend({messages:K(Zk),modelPreferences:Ck.optional(),systemPrompt:_().optional(),includeContext:De(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:K(_()).optional(),metadata:be.optional(),tools:K(Zf).optional(),toolChoice:Ak.optional()}),Dk=$e.extend({method:I("sampling/createMessage"),params:Lk}),Wn=Se.extend({model:_(),stopReason:me(De(["endTurn","stopSequence","maxTokens"]).or(_())),role:Hn,content:Mk}),Gc=Se.extend({model:_(),stopReason:me(De(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Hn,content:ue([is,K(is)])}),Uk=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:ve().optional()}),qk=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:te().optional(),maxLength:te().optional(),format:De(["email","uri","date","date-time"]).optional(),default:_().optional()}),Jk=P({type:De(["number","integer"]),title:_().optional(),description:_().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),Fk=P({type:I("string"),title:_().optional(),description:_().optional(),enum:K(_()),default:_().optional()}),Vk=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:K(P({const:_(),title:_()})),default:_().optional()}),Hk=P({type:I("string"),title:_().optional(),description:_().optional(),enum:K(_()),enumNames:K(_()).optional(),default:_().optional()}),Bk=ue([Fk,Vk]),Wk=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({type:I("string"),enum:K(_())}),default:K(_()).optional()}),Kk=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({anyOf:K(P({const:_(),title:_()}))}),default:K(_()).optional()}),Gk=ue([Wk,Kk]),Xk=ue([Hk,Bk,Gk]),Yk=ue([Xk,Uk,qk,Jk]),Qk=Ln.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:ce(_(),Yk),required:K(_()).optional()})}),ex=Ln.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),tx=ue([Qk,ex]),rx=$e.extend({method:I("elicitation/create"),params:tx}),nx=Qe.extend({elicitationId:_()}),ox=et.extend({method:I("notifications/elicitation/complete"),params:nx}),rn=Se.extend({action:De(["accept","decline","cancel"]),content:Cc(t=>t===null?void 0:t,ce(_(),ue([_(),te(),ve(),K(_())])).optional())}),sx=P({type:I("ref/resource"),uri:_()});var ix=P({type:I("ref/prompt"),name:_()}),ax=We.extend({ref:ue([ix,sx]),argument:P({name:_(),value:_()}),context:P({arguments:ce(_(),_()).optional()}).optional()}),$s=$e.extend({method:I("completion/complete"),params:ax});function Lf(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Df(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var cx=Se.extend({completion:Ee({values:K(_()).max(100),total:me(te().int()),hasMore:me(ve())})}),ux=P({uri:_().startsWith("file://"),name:_().optional(),_meta:ce(_(),fe()).optional()}),lx=$e.extend({method:I("roots/list"),params:We.optional()}),Xc=Se.extend({roots:K(ux)}),dx=et.extend({method:I("notifications/roots/list_changed"),params:Qe.optional()}),cO=ue([ds,Uc,$s,Kc,ws,vs,Qr,en,bs,lk,pk,tn,ks,fs,hs,gs,_s]),uO=ue([ls,ps,qc,dx,Vn]),lO=ue([us,Wn,Gc,rn,Xc,ms,ys,Xr]),dO=ue([ds,Dk,rx,lx,fs,hs,gs,_s]),pO=ue([ls,ps,Ik,mk,ck,jk,$k,Vn,ox]),fO=ue([us,Xw,cx,xk,yk,ok,sk,ak,xs,Tk,ms,ys,Xr]),O=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===A.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Ac(o.elicitations,r)}return new t(e,r,n)}},Ac=class extends O{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(A.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function Ht(t){return t==="completed"||t==="failed"||t==="cancelled"}var qf=Symbol("Let zodToJsonSchema decide on which parser to use");var Uf={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"},Jf=t=>typeof t=="string"?{...Uf,name:t}:{...Uf,...t};var Ff=t=>{let e=Jf(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 Yc(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function G(t,e,r,n,o){t[e]=r,Yc(t,e,n,o)}var Ss=(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 he(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?Ss(e,t.currentPath):e.join("/")}}function Vf(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==$.ZodAny&&(r.items=L(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&G(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&G(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(G(r,"minItems",t.exactLength.value,t.exactLength.message,e),G(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Hf(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?G(r,"minimum",n.value,n.message,e):G(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),G(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?G(r,"maximum",n.value,n.message,e):G(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),G(r,"maximum",n.value,n.message,e));break;case"multipleOf":G(r,"multipleOf",n.value,n.message,e);break}return r}function Bf(){return{type:"boolean"}}function zs(t,e){return L(t.type._def,e)}var Wf=(t,e)=>L(t.innerType._def,e);function Qc(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>Qc(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 px(t,e)}}var px=(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":G(r,"minimum",n.value,n.message,e);break;case"max":G(r,"maximum",n.value,n.message,e);break}return r};function Kf(t,e){return{...L(t.innerType._def,e),default:t.defaultValue()}}function Gf(t,e){return e.effectStrategy==="input"?L(t.schema._def,e):he(e)}function Xf(t){return{type:"string",enum:Array.from(t.values)}}var fx=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Yf(t,e){let r=[L(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),L(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(fx(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,...u}=s;i=u}else n=void 0;o.push(i)}}),o.length?{allOf:o,...n}:void 0}function Qf(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 eu,at={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:()=>(eu===void 0&&(eu=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),eu),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 Ts(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":G(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":G(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":ct(r,"email",n.message,e);break;case"format:idn-email":ct(r,"idn-email",n.message,e);break;case"pattern:zod":Ce(r,at.email,n.message,e);break}break;case"url":ct(r,"uri",n.message,e);break;case"uuid":ct(r,"uuid",n.message,e);break;case"regex":Ce(r,n.regex,n.message,e);break;case"cuid":Ce(r,at.cuid,n.message,e);break;case"cuid2":Ce(r,at.cuid2,n.message,e);break;case"startsWith":Ce(r,RegExp(`^${tu(n.value,e)}`),n.message,e);break;case"endsWith":Ce(r,RegExp(`${tu(n.value,e)}$`),n.message,e);break;case"datetime":ct(r,"date-time",n.message,e);break;case"date":ct(r,"date",n.message,e);break;case"time":ct(r,"time",n.message,e);break;case"duration":ct(r,"duration",n.message,e);break;case"length":G(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),G(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Ce(r,RegExp(tu(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&ct(r,"ipv4",n.message,e),n.version!=="v4"&&ct(r,"ipv6",n.message,e);break}case"base64url":Ce(r,at.base64url,n.message,e);break;case"jwt":Ce(r,at.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ce(r,at.ipv4Cidr,n.message,e),n.version!=="v4"&&Ce(r,at.ipv6Cidr,n.message,e);break}case"emoji":Ce(r,at.emoji(),n.message,e);break;case"ulid":{Ce(r,at.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{ct(r,"binary",n.message,e);break}case"contentEncoding:base64":{G(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ce(r,at.base64,n.message,e);break}}break}case"nanoid":Ce(r,at.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function tu(t,e){return e.patternStrategy==="escape"?hx(t):t}var mx=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function hx(t){let e="";for(let r=0;r<t.length;r++)mx.has(t[r])||(e+="\\"),e+=t[r];return e}function ct(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}}})):G(t,"format",e,r,n)}function Ce(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:em(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):G(t,"pattern",em(e,n),r,n)}function em(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 u=0;u<n.length;u++){if(s){o+=n[u],s=!1;continue}if(r.i){if(i){if(n[u].match(/[a-z]/)){a?(o+=n[u],o+=`${n[u-2]}-${n[u]}`.toUpperCase(),a=!1):n[u+1]==="-"&&n[u+2]?.match(/[a-z]/)?(o+=n[u],a=!0):o+=`${n[u]}${n[u].toUpperCase()}`;continue}}else if(n[u].match(/[a-z]/)){o+=`[${n[u]}${n[u].toUpperCase()}]`;continue}}if(r.m){if(n[u]==="^"){o+=`(^|(?<=[\r
|
|
38
38
|
]))`;continue}else if(n[u]==="$"){o+=`($|(?=[\r
|
|
39
|
-
]))`;continue}}if(r.s&&n[u]==="."){o+=
|
|
39
|
+
]))`;continue}}if(r.s&&n[u]==="."){o+=i?`${n[u]}\r
|
|
40
40
|
`:`[${n[u]}\r
|
|
41
|
-
]`;continue}o+=n[u],n[u]==="\\"?s=!0:a&&n[u]==="]"?a=!1:!a&&n[u]==="["&&(a=!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 $s(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===$.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:L(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??he(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:L(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===$.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=xs(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===$.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===$.ZodBranded&&t.keyType._def.type._def.typeName===$.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=ks(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Jm(t,e){if(e.mapStrategy==="record")return $s(t,e);let r=L(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||he(e),n=L(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||he(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Fm(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 Vm(t){return t.target==="openAi"?void 0:{not:he({...t,currentPath:[...t.currentPath,"not"]})}}function Hm(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Bn={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Wm(t,e){if(e.target==="openApi3")return Bm(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Bn&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let a=Bn[s._def.typeName];return a&&!o.includes(a)?[...o,a]: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 a=typeof s._def.value;switch(a){case"string":case"number":case"boolean":return[...o,a];case"bigint":return[...o,"integer"];case"object":if(s._def.value===null)return[...o,"null"];default:return o}},[]);if(n.length===r.length){let o=n.filter((s,a,i)=>i.indexOf(s)===a);return{type:o.length>1?o:o[0],enum:r.reduce((s,a)=>s.includes(a._def.value)?s:[...s,a._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 Bm(t,e)}var Bm=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>L(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 Km(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:Bn[t.innerType._def.typeName],nullable:!0}:{type:[Bn[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=L(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=L(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Gm(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",Wc(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?G(r,"minimum",n.value,n.message,e):G(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),G(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?G(r,"maximum",n.value,n.message,e):G(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),G(r,"maximum",n.value,n.message,e));break;case"multipleOf":G(r,"multipleOf",n.value,n.message,e);break}return r}function Xm(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let i in s){let u=s[i];if(u===void 0||u._def===void 0)continue;let l=Ak(u);l&&r&&(u._def.typeName==="ZodOptional"&&(u=u._def.innerType),u.isNullable()||(u=u.nullable()),l=!1);let c=L(u._def,{...e,currentPath:[...e.currentPath,"properties",i],propertyPath:[...e.currentPath,"properties",i]});c!==void 0&&(n.properties[i]=c,l||o.push(i))}o.length&&(n.required=o);let a=Ck(t,e);return a!==void 0&&(n.additionalProperties=a),n}function Ck(t,e){if(t.catchall._def.typeName!=="ZodNever")return L(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 Ak(t){try{return t.isOptional()}catch{return!0}}var Ym=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return L(t.innerType._def,e);let r=L(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:he(e)},r]}:he(e)};var Qm=(t,e)=>{if(e.pipeStrategy==="input")return L(t.in._def,e);if(e.pipeStrategy==="output")return L(t.out._def,e);let r=L(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=L(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function ef(t,e){return L(t.type._def,e)}function tf(t,e){let n={type:"array",uniqueItems:!0,items:L(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&G(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&G(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function rf(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>L(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:L(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>L(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function nf(t){return{not:he(t)}}function of(t){return he(t)}var sf=(t,e)=>L(t.innerType._def,e);var af=(t,e,r)=>{switch(e){case $.ZodString:return xs(t,r);case $.ZodNumber:return Gm(t,r);case $.ZodObject:return Xm(t,r);case $.ZodBigInt:return Cm(t,r);case $.ZodBoolean:return Am();case $.ZodDate:return Kc(t,r);case $.ZodUndefined:return nf(r);case $.ZodNull:return Hm(r);case $.ZodArray:return Im(t,r);case $.ZodUnion:case $.ZodDiscriminatedUnion:return Wm(t,r);case $.ZodIntersection:return qm(t,r);case $.ZodTuple:return rf(t,r);case $.ZodRecord:return $s(t,r);case $.ZodLiteral:return Dm(t,r);case $.ZodEnum:return Lm(t);case $.ZodNativeEnum:return Fm(t);case $.ZodNullable:return Km(t,r);case $.ZodOptional:return Ym(t,r);case $.ZodMap:return Jm(t,r);case $.ZodSet:return tf(t,r);case $.ZodLazy:return()=>t.getter()._def;case $.ZodPromise:return ef(t,r);case $.ZodNaN:case $.ZodNever:return Vm(r);case $.ZodEffects:return Zm(t,r);case $.ZodAny:return he(r);case $.ZodUnknown:return of(r);case $.ZodDefault:return Mm(t,r);case $.ZodBranded:return ks(t,r);case $.ZodReadonly:return sf(t,r);case $.ZodCatch:return Nm(t,r);case $.ZodPipeline:return Qm(t,r);case $.ZodFunction:case $.ZodVoid:case $.ZodSymbol:return;default:return(n=>{})(e)}};function L(t,e,r=!1){let n=e.seen.get(t);if(e.override){let i=e.override?.(t,e,n,r);if(i!==Rm)return i}if(n&&!r){let i=Nk(n,e);if(i!==void 0)return i}let o={def:t,path:e.currentPath,jsonSchema:void 0};e.seen.set(t,o);let s=af(t,t.typeName,e),a=typeof s=="function"?L(s(),e):s;if(a&&Mk(t,e,a),e.postProcess){let i=e.postProcess(a,t,e);return o.jsonSchema=a,i}return o.jsonSchema=a,a}var Nk=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:ws(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`),he(e)):e.$refStrategy==="seen"?he(e):void 0}},Mk=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var Yc=(t,e)=>{let r=Em(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((u,[l,c])=>({...u,[l]:L(c._def,{...r,currentPath:[...r.basePath,r.definitionPath,l]},!0)??he(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=L(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??he(r),a=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;a!==void 0&&(s.title=a),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 i=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"?i.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(i.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in i||"oneOf"in i||"allOf"in i||"type"in i&&Array.isArray(i.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),i};function Zk(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function Qc(t,e){return Xe(t)?wc(t,{target:Zk(e?.target),io:e?.pipeStrategy??"input"}):Yc(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function eu(t){let r=Jt(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Qo(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function tu(t,e){let r=Ut(t,e);if(!r.success)throw r.error;return r.data}var Lk=6e4,Ss=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(as,r=>{this._oncancel(r)}),this.setNotificationHandler(cs,r=>{this._onprogress(r)}),this.setRequestHandler(is,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(us,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(A.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(ds,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let i;for(;i=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(i.type==="response"||i.type==="error"){let u=i.message,l=u.id,c=this._requestResolvers.get(l);if(c)if(this._requestResolvers.delete(l),i.type==="response")c(u);else{let d=u,h=new O(d.error.code,d.error.message,d.error.data);c(h)}else{let d=i.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${l}`))}continue}await this._transport?.send(i.message,{relatedRequestId:n.requestId})}}let a=await this._taskStore.getTask(s,n.sessionId);if(!a)throw new O(A.InvalidParams,`Task not found: ${s}`);if(!Vt(a.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(Vt(a.status)){let i=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...i,_meta:{...i._meta,[Ft]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(ps,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new O(A.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(fs,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(A.InvalidParams,`Task not found: ${r.params.taskId}`);if(Vt(o.status))throw new O(A.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new O(A.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof O?o:new O(A.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),O.fromError(A.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,a)=>{o?.(s,a),Zn(s)||_m(s)?this._onresponse(s):Cc(s)?this._onrequest(s,a):ym(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=O.fromError(A.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Ft]?.taskId;if(n===void 0){let c={jsonrpc:"2.0",id:e.id,error:{code:A.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:c,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(c).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let a=new AbortController;this._requestHandlerAbortControllers.set(e.id,a);let i=fm(e.params)?e.params.task:void 0,u=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,l={signal:a.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async c=>{if(a.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(c,d)},sendRequest:async(c,d,h)=>{if(a.signal.aborted)throw new O(A.ConnectionClosed,"Request was cancelled");let f={...h,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let m=f.relatedTask?.taskId??s;return m&&u&&await u.updateTaskStatus(m,"input_required"),await this.request(c,d,f)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:u,taskRequestedTtl:i?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{i&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,l)).then(async c=>{if(a.signal.aborted)return;let d={result:c,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 c=>{if(a.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(c.code)?c.code:A.InternalError,message:c.message??"Internal error",...c.data!==void 0&&{data:c.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(c=>this._onerror(new Error(`Failed to send response: ${c}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===a&&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 a=this._responseHandlers.get(o),i=this._timeoutInfo.get(o);if(i&&a&&i.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(u){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),a(u);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),Zn(e))n(e);else{let a=new O(e.error.code,e.error.message,e.error.data);n(a)}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(Zn(e)&&e.result&&typeof e.result=="object"){let a=e.result;if(a.task&&typeof a.task=="object"){let i=a.task;typeof i.taskId=="string"&&(s=!0,this._taskProgressTokens.set(i.taskId,r))}}if(s||this._progressHandlers.delete(r),Zn(e))o(e);else{let a=O.fromError(e.error.code,e.error.message,e.error.data);o(a)}}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(a){yield{type:"error",error:a instanceof O?a:new O(A.InternalError,String(a))}}return}let s;try{let a=await this.request(e,Gr,n);if(a.task)s=a.task.taskId,yield{type:"taskCreated",task:a.task};else throw new O(A.InternalError,"Task creation did not return a task");for(;;){let i=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:i},Vt(i.status)){i.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:i.status==="failed"?yield{type:"error",error:new O(A.InternalError,`Task ${s} failed`)}:i.status==="cancelled"&&(yield{type:"error",error:new O(A.InternalError,`Task ${s} was cancelled`)});return}if(i.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let u=i.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(l=>setTimeout(l,u)),n?.signal?.throwIfAborted()}}catch(a){yield{type:"error",error:a instanceof O?a:new O(A.InternalError,String(a))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:a,task:i,relatedTask:u}=n??{};return new Promise((l,c)=>{let d=w=>{c(w)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),i&&this.assertTaskCapability(e.method)}catch(w){d(w);return}n?.signal?.throwIfAborted();let h=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:h};n?.onprogress&&(this._progressHandlers.set(h,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:h}}),i&&(f.params={...f.params,task:i}),u&&(f.params={...f.params,_meta:{...f.params?._meta||{},[Ft]:u}});let m=w=>{this._responseHandlers.delete(h),this._progressHandlers.delete(h),this._cleanupTimeout(h),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:h,reason:String(w)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:a}).catch(j=>this._onerror(new Error(`Failed to send cancellation: ${j}`)));let x=w instanceof O?w:new O(A.RequestTimeout,String(w));c(x)};this._responseHandlers.set(h,w=>{if(!n?.signal?.aborted){if(w instanceof Error)return c(w);try{let x=Ut(r,w.result);x.success?l(x.data):c(x.error)}catch(x){c(x)}}}),n?.signal?.addEventListener("abort",()=>{m(n?.signal?.reason)});let g=n?.timeout??Lk,y=()=>m(O.fromError(A.RequestTimeout,"Request timed out",{timeout:g}));this._setupTimeout(h,g,n?.maxTotalTimeout,y,n?.resetTimeoutOnProgress??!1);let v=u?.taskId;if(v){let w=x=>{let j=this._responseHandlers.get(h);j?j(x):this._onerror(new Error(`Response handler missing for side-channeled request ${h}`))};this._requestResolvers.set(h,w),this._enqueueTaskMessage(v,{type:"request",message:f,timestamp:Date.now()}).catch(x=>{this._cleanupTimeout(h),c(x)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:a}).catch(w=>{this._cleanupTimeout(h),c(w)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},ls,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},ms,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},wm,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 i={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[Ft]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:i,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 i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[Ft]:r.relatedTask}}}),this._transport?.send(i,r).catch(u=>this._onerror(u))});return}let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Ft]:r.relatedTask}}}),await this._transport.send(a,r)}setRequestHandler(e,r){let n=eu(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let a=tu(e,o);return Promise.resolve(r(a,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=eu(e);this._notificationHandlers.set(n,o=>{let s=tu(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"&&Cc(o.message)){let s=o.message.id,a=this._requestResolvers.get(s);a?(a(new O(A.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new O(A.InvalidRequest,"Request cancelled"));return}let a=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(a),s(new O(A.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new O(A.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,a)=>{await n.storeTaskResult(o,s,a,r);let i=await n.getTask(o,r);if(i){let u=Jn.parse({method:"notifications/tasks/status",params:i});await this.notification(u),Vt(i.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,a)=>{let i=await n.getTask(o,r);if(!i)throw new O(A.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Vt(i.status))throw new O(A.InvalidParams,`Cannot update task "${o}" from terminal status "${i.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,a,r);let u=await n.getTask(o,r);if(u){let l=Jn.parse({method:"notifications/tasks/status",params:u});await this.notification(l),Vt(u.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function cf(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function uf(t,e){let r={...t};for(let n in e){let o=n,s=e[o];if(s===void 0)continue;let a=r[o];cf(a)&&cf(s)?r[o]={...a,...s}:r[o]=s}return r}var Kg=md(ql(),1),Gg=md(Wg(),1);function jz(){let t=new Kg.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Gg.default)(t),t}var ca=class{constructor(e){this._ajv=e??jz()}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 ua=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],a=s.some(c=>c.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,u=i?Array.isArray(i.content)?i.content:[i.content]:[],l=u.some(c=>c.type==="tool_use");if(a){if(s.some(c=>c.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!l)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(l){let c=new Set(u.filter(h=>h.type==="tool_use").map(h=>h.id)),d=new Set(s.filter(h=>h.type==="tool_result").map(h=>h.toolUseId));if(c.size!==d.size||![...c].every(h=>d.has(h)))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},Hn,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},tn,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 Xg(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 Yg(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 la=class extends Ss{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Vn.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 ca,this.setRequestHandler(Mc,n=>this._oninitialize(n)),this.setNotificationHandler(Zc,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Vc,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:a}=n.params,i=Vn.safeParse(a);return i.success&&this._loggingLevels.set(s,i.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new ua(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=uf(this._capabilities,e)}setRequestHandler(e,r){let o=Jt(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(Xe(o)){let i=o;s=i._zod?.def?.value??i.value}else{let i=o;s=i._def?.value??i.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let i=async(u,l)=>{let c=Ut(en,u);if(!c.success){let m=c.error instanceof Error?c.error.message:String(c.error);throw new O(A.InvalidParams,`Invalid tools/call request: ${m}`)}let{params:d}=c.data,h=await Promise.resolve(r(u,l));if(d.task){let m=Ut(Gr,h);if(!m.success){let g=m.error instanceof Error?m.error.message:String(m.error);throw new O(A.InvalidParams,`Invalid task creation result: ${g}`)}return m.data}let f=Ut(bs,h);if(!f.success){let m=f.error instanceof Error?f.error.message:String(f.error);throw new O(A.InvalidParams,`Invalid tools/call result: ${m}`)}return f.data};return super.setRequestHandler(e,i)}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){Yg(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Xg(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:dm.includes(r)?r:Ec,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"},ss)}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(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,i=a?Array.isArray(a.content)?a.content:[a.content]:[],u=i.some(l=>l.type==="tool_use");if(s){if(o.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(i.filter(d=>d.type==="tool_use").map(d=>d.id)),c=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(l.size!==c.size||![...l].every(d=>c.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},Hc,r):this.request({method:"sampling/createMessage",params:e},Hn,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},tn,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},tn,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let i=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!i.valid)throw new O(A.InvalidParams,`Elicitation response content does not match requested schema: ${i.errorMessage}`)}catch(a){throw a instanceof O?a:new O(A.InternalError,`Error validating elicitation response: ${a instanceof Error?a.message:String(a)}`)}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},Bc,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 ey=Symbol.for("mcp.completable");function Wl(t){return!!t&&typeof t=="object"&&ey in t}function ty(t){return t[ey]?.complete}var Qg;(function(t){t.Completable="McpCompletable"})(Qg||(Qg={}));var Rz=/^[A-Za-z0-9._-]{1,128}$/;function Oz(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"),!Rz.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 Ez(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 Kl(t){let e=Oz(t);return Ez(t,e.warnings),e.isValid}var da=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 pa=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 la(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new da(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(er(_s)),this.server.assertCanSetRequestHandler(er(en)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(_s,()=>({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=Wr(r.inputSchema);return o?Qc(o,{strictUnions:!0,pipeStrategy:"input"}):Iz})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=Wr(r.outputSchema);o&&(n.outputSchema=Qc(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(en,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new O(A.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,a="createTask"in n.handler;if((s==="required"||s==="optional")&&!a)throw new O(A.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new O(A.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&a)return await this.handleAutomaticTaskPolling(n,e,r);let i=await this.validateToolInput(n,e.params.arguments,e.params.name),u=await this.executeToolHandler(n,i,r);return o||await this.validateToolOutput(n,u,e.params.name),u}catch(n){if(n instanceof O&&n.code===A.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=Wr(e.inputSchema)??e.inputSchema,a=await Xo(s,r);if(!a.success){let i="error"in a?a.error:"Unknown error",u=Yo(i);throw new O(A.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${u}`)}return a.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new O(A.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=Wr(e.outputSchema),s=await Xo(o,r.structuredContent);if(!s.success){let a="error"in s?s.error:"Unknown error",i=Yo(a);throw new O(A.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${i}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let a={...n,taskStore:n.taskStore};if(e.inputSchema){let i=o;return await Promise.resolve(i.createTask(r,a))}else{let i=o;return await Promise.resolve(i.createTask(a))}}if(e.inputSchema){let a=o;return await Promise.resolve(a(r,n))}else{let a=o;return await Promise.resolve(a(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,a={...n,taskStore:n.taskStore},i=o?await Promise.resolve(s.createTask(o,a)):await Promise.resolve(s.createTask(a)),u=i.task.taskId,l=i.task,c=l.pollInterval??5e3;for(;l.status!=="completed"&&l.status!=="failed"&&l.status!=="cancelled";){await new Promise(h=>setTimeout(h,c));let d=await n.taskStore.getTask(u);if(!d)throw new O(A.InternalError,`Task ${u} not found during polling`);l=d}return await n.taskStore.getTaskResult(u)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(er(vs)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(vs,async e=>{switch(e.params.ref.type){case"ref/prompt":return Tm(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Pm(e),this.handleResourceCompletion(e,e.params.ref);default:throw new O(A.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new O(A.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return $o;let s=Jt(n.argsSchema)?.[e.params.argument.name];if(!Wl(s))return $o;let a=ty(s);if(!a)return $o;let i=await a(e.params.argument.value,e.params.context);return ny(i)}async handleResourceCompletion(e,r){let n=Object.values(this._registeredResourceTemplates).find(a=>a.resourceTemplate.uriTemplate.toString()===r.uri);if(!n){if(this._registeredResources[r.uri])return $o;throw new O(A.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return $o;let s=await o(e.params.argument.value,e.params.context);return ny(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(er(Yr)),this.server.assertCanSetRequestHandler(er(Qr)),this.server.assertCanSetRequestHandler(er(hs)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Yr,async(e,r)=>{let n=Object.entries(this._registeredResources).filter(([s,a])=>a.enabled).map(([s,a])=>({uri:s,name:a.name,...a.metadata})),o=[];for(let s of Object.values(this._registeredResourceTemplates)){if(!s.resourceTemplate.listCallback)continue;let a=await s.resourceTemplate.listCallback(r);for(let i of a.resources)o.push({...s.metadata,...i})}return{resources:[...n,...o]}}),this.server.setRequestHandler(Qr,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(hs,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new O(A.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let a=s.resourceTemplate.uriTemplate.match(n.toString());if(a)return s.readCallback(n,a,r)}throw new O(A.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(er(gs)),this.server.assertCanSetRequestHandler(er(ys)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(gs,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?Cz(r.argsSchema):void 0}))})),this.server.setRequestHandler(ys,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new O(A.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=Wr(n.argsSchema),s=await Xo(o,e.params.arguments);if(!s.success){let u="error"in s?s.error:"Unknown error",l=Yo(u);throw new O(A.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${l}`)}let a=s.data,i=n.callback;return await Promise.resolve(i(a,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 a=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),a}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let a=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),a}}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 a={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({uri:null}),update:i=>{typeof i.uri<"u"&&i.uri!==n&&(delete this._registeredResources[n],i.uri&&(this._registeredResources[i.uri]=a)),typeof i.name<"u"&&(a.name=i.name),typeof i.title<"u"&&(a.title=i.title),typeof i.metadata<"u"&&(a.metadata=i.metadata),typeof i.callback<"u"&&(a.readCallback=i.callback),typeof i.enabled<"u"&&(a.enabled=i.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=a,a}_createRegisteredResourceTemplate(e,r,n,o,s){let a={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({name:null}),update:l=>{typeof l.name<"u"&&l.name!==e&&(delete this._registeredResourceTemplates[e],l.name&&(this._registeredResourceTemplates[l.name]=a)),typeof l.title<"u"&&(a.title=l.title),typeof l.template<"u"&&(a.resourceTemplate=l.template),typeof l.metadata<"u"&&(a.metadata=l.metadata),typeof l.callback<"u"&&(a.readCallback=l.callback),typeof l.enabled<"u"&&(a.enabled=l.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=a;let i=n.uriTemplate.variableNames;return Array.isArray(i)&&i.some(l=>!!n.completeCallback(l))&&this.setCompletionRequestHandler(),a}_createRegisteredPrompt(e,r,n,o,s){let a={title:r,description:n,argsSchema:o===void 0?void 0:$r(o),callback:s,enabled:!0,disable:()=>a.update({enabled:!1}),enable:()=>a.update({enabled:!0}),remove:()=>a.update({name:null}),update:i=>{typeof i.name<"u"&&i.name!==e&&(delete this._registeredPrompts[e],i.name&&(this._registeredPrompts[i.name]=a)),typeof i.title<"u"&&(a.title=i.title),typeof i.description<"u"&&(a.description=i.description),typeof i.argsSchema<"u"&&(a.argsSchema=$r(i.argsSchema)),typeof i.callback<"u"&&(a.callback=i.callback),typeof i.enabled<"u"&&(a.enabled=i.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=a,o&&Object.values(o).some(u=>{let l=u instanceof Ze?u._def?.innerType:u;return Wl(l)})&&this.setCompletionRequestHandler(),a}_createRegisteredTool(e,r,n,o,s,a,i,u,l){Kl(e);let c={title:r,description:n,inputSchema:ry(o),outputSchema:ry(s),annotations:a,execution:i,_meta:u,handler:l,enabled:!0,disable:()=>c.update({enabled:!1}),enable:()=>c.update({enabled:!0}),remove:()=>c.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==e&&(typeof d.name=="string"&&Kl(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=c)),typeof d.title<"u"&&(c.title=d.title),typeof d.description<"u"&&(c.description=d.description),typeof d.paramsSchema<"u"&&(c.inputSchema=$r(d.paramsSchema)),typeof d.outputSchema<"u"&&(c.outputSchema=$r(d.outputSchema)),typeof d.callback<"u"&&(c.handler=d.callback),typeof d.annotations<"u"&&(c.annotations=d.annotations),typeof d._meta<"u"&&(c._meta=d._meta),typeof d.enabled<"u"&&(c.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=c,this.setToolRequestHandlers(),this.sendToolListChanged(),c}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,a;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let u=r[0];if(Gl(u))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!Gl(r[0])&&(a=r.shift());else if(typeof u=="object"&&u!==null){if(Object.values(u).some(l=>typeof l=="object"&&l!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);a=r.shift()}}let i=r[0];return this._createRegisteredTool(e,void 0,n,o,s,a,{taskSupport:"forbidden"},void 0,i)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:a,outputSchema:i,annotations:u,_meta:l}=r;return this._createRegisteredTool(e,o,s,a,i,u,{taskSupport:"forbidden"},l,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],a=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:a}=r,i=this._createRegisteredPrompt(e,o,s,a,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}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 Iz={type:"object",properties:{}};function oy(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function sy(t){return"_def"in t||"_zod"in t||oy(t)}function Gl(t){return typeof t!="object"||t===null||sy(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(oy)}function ry(t){if(t){if(Gl(t))return $r(t);if(!sy(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function Cz(t){let e=Jt(t);return e?Object.entries(e).map(([r,n])=>{let o=Dp(n),s=Up(n);return{name:r,description:o,required:!s}}):[]}function er(t){let r=Jt(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Qo(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function ny(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var $o={completion:{values:[],hasMore:!1}};import iy from"node:process";var ma=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
|
|
44
|
-
`,"utf8")}catch{return}}function
|
|
41
|
+
]`;continue}o+=n[u],n[u]==="\\"?s=!0:i&&n[u]==="]"?i=!1:!i&&n[u]==="["&&(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 Ps(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===$.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:L(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??he(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:L(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===$.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=Ts(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===$.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===$.ZodBranded&&t.keyType._def.type._def.typeName===$.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=zs(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function tm(t,e){if(e.mapStrategy==="record")return Ps(t,e);let r=L(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||he(e),n=L(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||he(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function rm(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 nm(t){return t.target==="openAi"?void 0:{not:he({...t,currentPath:[...t.currentPath,"not"]})}}function om(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Kn={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function im(t,e){if(e.target==="openApi3")return sm(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Kn&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Kn[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"];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 sm(t,e)}var sm=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>L(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 am(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:Kn[t.innerType._def.typeName],nullable:!0}:{type:[Kn[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=L(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=L(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function cm(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",Yc(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?G(r,"minimum",n.value,n.message,e):G(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),G(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?G(r,"maximum",n.value,n.message,e):G(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),G(r,"maximum",n.value,n.message,e));break;case"multipleOf":G(r,"multipleOf",n.value,n.message,e);break}return r}function um(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let a in s){let u=s[a];if(u===void 0||u._def===void 0)continue;let l=yx(u);l&&r&&(u._def.typeName==="ZodOptional"&&(u=u._def.innerType),u.isNullable()||(u=u.nullable()),l=!1);let c=L(u._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});c!==void 0&&(n.properties[a]=c,l||o.push(a))}o.length&&(n.required=o);let i=gx(t,e);return i!==void 0&&(n.additionalProperties=i),n}function gx(t,e){if(t.catchall._def.typeName!=="ZodNever")return L(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 yx(t){try{return t.isOptional()}catch{return!0}}var lm=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return L(t.innerType._def,e);let r=L(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:he(e)},r]}:he(e)};var dm=(t,e)=>{if(e.pipeStrategy==="input")return L(t.in._def,e);if(e.pipeStrategy==="output")return L(t.out._def,e);let r=L(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=L(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function pm(t,e){return L(t.type._def,e)}function fm(t,e){let n={type:"array",uniqueItems:!0,items:L(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&G(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&G(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function mm(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>L(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:L(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>L(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function hm(t){return{not:he(t)}}function gm(t){return he(t)}var ym=(t,e)=>L(t.innerType._def,e);var _m=(t,e,r)=>{switch(e){case $.ZodString:return Ts(t,r);case $.ZodNumber:return cm(t,r);case $.ZodObject:return um(t,r);case $.ZodBigInt:return Hf(t,r);case $.ZodBoolean:return Bf();case $.ZodDate:return Qc(t,r);case $.ZodUndefined:return hm(r);case $.ZodNull:return om(r);case $.ZodArray:return Vf(t,r);case $.ZodUnion:case $.ZodDiscriminatedUnion:return im(t,r);case $.ZodIntersection:return Yf(t,r);case $.ZodTuple:return mm(t,r);case $.ZodRecord:return Ps(t,r);case $.ZodLiteral:return Qf(t,r);case $.ZodEnum:return Xf(t);case $.ZodNativeEnum:return rm(t);case $.ZodNullable:return am(t,r);case $.ZodOptional:return lm(t,r);case $.ZodMap:return tm(t,r);case $.ZodSet:return fm(t,r);case $.ZodLazy:return()=>t.getter()._def;case $.ZodPromise:return pm(t,r);case $.ZodNaN:case $.ZodNever:return nm(r);case $.ZodEffects:return Gf(t,r);case $.ZodAny:return he(r);case $.ZodUnknown:return gm(r);case $.ZodDefault:return Kf(t,r);case $.ZodBranded:return zs(t,r);case $.ZodReadonly:return ym(t,r);case $.ZodCatch:return Wf(t,r);case $.ZodPipeline:return dm(t,r);case $.ZodFunction:case $.ZodVoid:case $.ZodSymbol:return;default:return(n=>{})(e)}};function L(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==qf)return a}if(n&&!r){let a=_x(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=_m(t,t.typeName,e),i=typeof s=="function"?L(s(),e):s;if(i&&bx(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var _x=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Ss(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`),he(e)):e.$refStrategy==="seen"?he(e):void 0}},bx=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var ru=(t,e)=>{let r=Ff(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((u,[l,c])=>({...u,[l]:L(c._def,{...r,currentPath:[...r.basePath,r.definitionPath,l]},!0)??he(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=L(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??he(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 vx(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function nu(t,e){return Ye(t)?Sc(t,{target:vx(e?.target),io:e?.pipeStrategy??"input"}):ru(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function ou(t){let r=Ft(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ns(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function su(t,e){let r=Jt(t,e);if(!r.success)throw r.error;return r.data}var wx=6e4,js=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(ls,r=>{this._oncancel(r)}),this.setNotificationHandler(ps,r=>{this._onprogress(r)}),this.setRequestHandler(ds,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(fs,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(A.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(hs,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let u=a.message,l=u.id,c=this._requestResolvers.get(l);if(c)if(this._requestResolvers.delete(l),a.type==="response")c(u);else{let d=u,g=new O(d.error.code,d.error.message,d.error.data);c(g)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${l}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new O(A.InvalidParams,`Task not found: ${s}`);if(!Ht(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(Ht(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Vt]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(gs,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new O(A.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(_s,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(A.InvalidParams,`Task not found: ${r.params.taskId}`);if(Ht(o.status))throw new O(A.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new O(A.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof O?o:new O(A.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),O.fromError(A.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),Dn(s)||Rf(s)?this._onresponse(s):Zc(s)?this._onrequest(s,i):jf(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=O.fromError(A.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Vt]?.taskId;if(n===void 0){let c={jsonrpc:"2.0",id:e.id,error:{code:A.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:c,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(c).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=zf(e.params)?e.params.task:void 0,u=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,l={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async c=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(c,d)},sendRequest:async(c,d,g)=>{if(i.signal.aborted)throw new O(A.ConnectionClosed,"Request was cancelled");let h={...g,relatedRequestId:e.id};s&&!h.relatedTask&&(h.relatedTask={taskId:s});let f=h.relatedTask?.taskId??s;return f&&u&&await u.updateTaskStatus(f,"input_required"),await this.request(c,d,h)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:u,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,l)).then(async c=>{if(i.signal.aborted)return;let d={result:c,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 c=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(c.code)?c.code:A.InternalError,message:c.message??"Internal error",...c.data!==void 0&&{data:c.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(c=>this._onerror(new Error(`Failed to send response: ${c}`))).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(u){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(u);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),Dn(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(Dn(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),Dn(e))o(e);else{let i=O.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof O?i:new O(A.InternalError,String(i))}}return}let s;try{let i=await this.request(e,Xr,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new O(A.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},Ht(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new O(A.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new O(A.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let u=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(l=>setTimeout(l,u)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof O?i:new O(A.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:u}=n??{};return new Promise((l,c)=>{let d=w=>{c(w)};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(w){d(w);return}n?.signal?.throwIfAborted();let g=this._requestMessageId++,h={...e,jsonrpc:"2.0",id:g};n?.onprogress&&(this._progressHandlers.set(g,n.onprogress),h.params={...e.params,_meta:{...e.params?._meta||{},progressToken:g}}),a&&(h.params={...h.params,task:a}),u&&(h.params={...h.params,_meta:{...h.params?._meta||{},[Vt]:u}});let f=w=>{this._responseHandlers.delete(g),this._progressHandlers.delete(g),this._cleanupTimeout(g),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:g,reason:String(w)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(j=>this._onerror(new Error(`Failed to send cancellation: ${j}`)));let k=w instanceof O?w:new O(A.RequestTimeout,String(w));c(k)};this._responseHandlers.set(g,w=>{if(!n?.signal?.aborted){if(w instanceof Error)return c(w);try{let k=Jt(r,w.result);k.success?l(k.data):c(k.error)}catch(k){c(k)}}}),n?.signal?.addEventListener("abort",()=>{f(n?.signal?.reason)});let m=n?.timeout??wx,y=()=>f(O.fromError(A.RequestTimeout,"Request timed out",{timeout:m}));this._setupTimeout(g,m,n?.maxTotalTimeout,y,n?.resetTimeoutOnProgress??!1);let v=u?.taskId;if(v){let w=k=>{let j=this._responseHandlers.get(g);j?j(k):this._onerror(new Error(`Response handler missing for side-channeled request ${g}`))};this._requestResolvers.set(g,w),this._enqueueTaskMessage(v,{type:"request",message:h,timestamp:Date.now()}).catch(k=>{this._cleanupTimeout(g),c(k)})}else this._transport.send(h,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(w=>{this._cleanupTimeout(g),c(w)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},ms,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},Ef,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||{},[Vt]: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||{},[Vt]:r.relatedTask}}}),this._transport?.send(a,r).catch(u=>this._onerror(u))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[Vt]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=ou(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=su(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=ou(e);this._notificationHandlers.set(n,o=>{let s=su(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"&&Zc(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new O(A.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new O(A.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new O(A.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new O(A.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let u=Vn.parse({method:"notifications/tasks/status",params:a});await this.notification(u),Ht(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new O(A.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Ht(a.status))throw new O(A.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let u=await n.getTask(o,r);if(u){let l=Vn.parse({method:"notifications/tasks/status",params:u});await this.notification(l),Ht(u.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function bm(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function vm(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];bm(i)&&bm(s)?r[o]={...i,...s}:r[o]=s}return r}var iy=$d(Fl(),1),ay=$d(sy(),1);function dT(){let t=new iy.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,ay.default)(t),t}var pi=class{constructor(e){this._ajv=e??dT()}getValidator(e){let r="$id"in e&&typeof e.$id=="string"?this._ajv.getSchema(e.$id)??this._ajv.compile(e):this._ajv.compile(e);return n=>r(n)?{valid:!0,data:n,errorMessage:void 0}:{valid:!1,data:void 0,errorMessage:this._ajv.errorsText(r.errors)}}};var fi=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(c=>c.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,u=a?Array.isArray(a.content)?a.content:[a.content]:[],l=u.some(c=>c.type==="tool_use");if(i){if(s.some(c=>c.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!l)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(l){let c=new Set(u.filter(g=>g.type==="tool_use").map(g=>g.id)),d=new Set(s.filter(g=>g.type==="tool_result").map(g=>g.toolUseId));if(c.size!==d.size||![...c].every(g=>d.has(g)))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},Wn,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},rn,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 cy(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 uy(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 mi=class extends js{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Bn.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 pi,this.setRequestHandler(Uc,n=>this._oninitialize(n)),this.setNotificationHandler(qc,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Kc,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Bn.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new fi(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=vm(this._capabilities,e)}setRequestHandler(e,r){let o=Ft(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(Ye(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(u,l)=>{let c=Jt(tn,u);if(!c.success){let f=c.error instanceof Error?c.error.message:String(c.error);throw new O(A.InvalidParams,`Invalid tools/call request: ${f}`)}let{params:d}=c.data,g=await Promise.resolve(r(u,l));if(d.task){let f=Jt(Xr,g);if(!f.success){let m=f.error instanceof Error?f.error.message:String(f.error);throw new O(A.InvalidParams,`Invalid task creation result: ${m}`)}return f.data}let h=Jt(xs,g);if(!h.success){let f=h.error instanceof Error?h.error.message:String(h.error);throw new O(A.InvalidParams,`Invalid tools/call result: ${f}`)}return h.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){uy(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&cy(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:xf.includes(r)?r:Nc,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"},us)}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(l=>l.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]:[],u=a.some(l=>l.type==="tool_use");if(s){if(o.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(a.filter(d=>d.type==="tool_use").map(d=>d.id)),c=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(l.size!==c.size||![...l].every(d=>c.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},Gc,r):this.request({method:"sampling/createMessage",params:e},Wn,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},rn,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},rn,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new O(A.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof O?i:new O(A.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},Xc,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 dy=Symbol.for("mcp.completable");function Yl(t){return!!t&&typeof t=="object"&&dy in t}function py(t){return t[dy]?.complete}var ly;(function(t){t.Completable="McpCompletable"})(ly||(ly={}));var pT=/^[A-Za-z0-9._-]{1,128}$/;function fT(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"),!pT.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 mT(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 Ql(t){let e=fT(t);return mT(t,e.warnings),e.isValid}var hi=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var gi=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new mi(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new hi(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(tr(ks)),this.server.assertCanSetRequestHandler(tr(tn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ks,()=>({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=Kr(r.inputSchema);return o?nu(o,{strictUnions:!0,pipeStrategy:"input"}):hT})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=Kr(r.outputSchema);o&&(n.outputSchema=nu(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(tn,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new O(A.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new O(A.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new O(A.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),u=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,u,e.params.name),u}catch(n){if(n instanceof O&&n.code===A.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=Kr(e.inputSchema)??e.inputSchema,i=await ts(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",u=rs(a);throw new O(A.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${u}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new O(A.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=Kr(e.outputSchema),s=await ts(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=rs(i);throw new O(A.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),u=a.task.taskId,l=a.task,c=l.pollInterval??5e3;for(;l.status!=="completed"&&l.status!=="failed"&&l.status!=="cancelled";){await new Promise(g=>setTimeout(g,c));let d=await n.taskStore.getTask(u);if(!d)throw new O(A.InternalError,`Task ${u} not found during polling`);l=d}return await n.taskStore.getTaskResult(u)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(tr($s)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler($s,async e=>{switch(e.params.ref.type){case"ref/prompt":return Lf(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Df(e),this.handleResourceCompletion(e,e.params.ref);default:throw new O(A.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new O(A.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return zo;let s=Ft(n.argsSchema)?.[e.params.argument.name];if(!Yl(s))return zo;let i=py(s);if(!i)return zo;let a=await i(e.params.argument.value,e.params.context);return my(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 zo;throw new O(A.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return zo;let s=await o(e.params.argument.value,e.params.context);return my(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(tr(Qr)),this.server.assertCanSetRequestHandler(tr(en)),this.server.assertCanSetRequestHandler(tr(bs)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Qr,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(en,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(bs,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new O(A.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new O(A.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(tr(vs)),this.server.assertCanSetRequestHandler(tr(ws)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(vs,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?gT(r.argsSchema):void 0}))})),this.server.setRequestHandler(ws,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new O(A.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new O(A.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=Kr(n.argsSchema),s=await ts(o,e.params.arguments);if(!s.success){let u="error"in s?s.error:"Unknown error",l=rs(u);throw new O(A.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${l}`)}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:l=>{typeof l.name<"u"&&l.name!==e&&(delete this._registeredResourceTemplates[e],l.name&&(this._registeredResourceTemplates[l.name]=i)),typeof l.title<"u"&&(i.title=l.title),typeof l.template<"u"&&(i.resourceTemplate=l.template),typeof l.metadata<"u"&&(i.metadata=l.metadata),typeof l.callback<"u"&&(i.readCallback=l.callback),typeof l.enabled<"u"&&(i.enabled=l.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(l=>!!n.completeCallback(l))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Sr(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=Sr(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(u=>{let l=u instanceof Ze?u._def?.innerType:u;return Yl(l)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,u,l){Ql(e);let c={title:r,description:n,inputSchema:fy(o),outputSchema:fy(s),annotations:i,execution:a,_meta:u,handler:l,enabled:!0,disable:()=>c.update({enabled:!1}),enable:()=>c.update({enabled:!0}),remove:()=>c.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==e&&(typeof d.name=="string"&&Ql(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=c)),typeof d.title<"u"&&(c.title=d.title),typeof d.description<"u"&&(c.description=d.description),typeof d.paramsSchema<"u"&&(c.inputSchema=Sr(d.paramsSchema)),typeof d.outputSchema<"u"&&(c.outputSchema=Sr(d.outputSchema)),typeof d.callback<"u"&&(c.handler=d.callback),typeof d.annotations<"u"&&(c.annotations=d.annotations),typeof d._meta<"u"&&(c._meta=d._meta),typeof d.enabled<"u"&&(c.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=c,this.setToolRequestHandlers(),this.sendToolListChanged(),c}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 u=r[0];if(ed(u))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!ed(r[0])&&(i=r.shift());else if(typeof u=="object"&&u!==null){if(Object.values(u).some(l=>typeof l=="object"&&l!==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:u,_meta:l}=r;return this._createRegisteredTool(e,o,s,i,a,u,{taskSupport:"forbidden"},l,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 hT={type:"object",properties:{}};function hy(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function gy(t){return"_def"in t||"_zod"in t||hy(t)}function ed(t){return typeof t!="object"||t===null||gy(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(hy)}function fy(t){if(t){if(ed(t))return Sr(t);if(!gy(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function gT(t){let e=Ft(t);return e?Object.entries(e).map(([r,n])=>{let o=Yp(n),s=Qp(n);return{name:r,description:o,required:!s}}):[]}function tr(t){let r=Ft(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ns(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function my(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var zo={completion:{values:[],hasMore:!1}};import _y 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),yT(r)}clear(){this._buffer=void 0}};function yT(t){return Of.parse(JSON.parse(t))}function yy(t){return JSON.stringify(t)+`
|
|
43
|
+
`}var _i=class{constructor(e=_y.stdin,r=_y.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=yy(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{readFile as m_}from"node:fs/promises";import{hostname as RP}from"node:os";import{randomBytes as HT}from"node:crypto";import{existsSync as sd,mkdirSync as BT,readFileSync as id,renameSync as WT,rmSync as KT,writeFileSync as GT}from"node:fs";import{homedir as XT}from"node:os";import{dirname as YT,join as QT}from"node:path";import{spawn as OT}from"node:child_process";import{randomBytes as IT}from"node:crypto";import{createServer as ET}from"node:http";import{appendFileSync as _T,openSync as c4}from"node:fs";import{homedir as bT}from"node:os";import{dirname as vT,join as wT}from"node:path";import{mkdirSync as kT}from"node:fs";var Nr="<SENSITIVE_DATA>",by=new Set(["access_token","authorization","code","cookie","kandan_preview_ticket","refresh_token","token"]),xT=new Set(["--access-token","--api-key","--authorization","--cookie","--oauth-code","--password","--refresh-token","--secret","--token"]);function td(t,e,r={}){let n=r.logFile??$T();try{kT(vT(n),{recursive:!0}),_T(n,`${JSON.stringify({ts:new Date().toISOString(),event:t,...r.sessionId===void 0?{}:{sessionId:r.sessionId},...ST(e)})}
|
|
44
|
+
`,"utf8")}catch{return}}function $T(){let t=process.env.LINZUMI_CLI_AUDIT_LOG?.trim();return t===void 0||t===""?wT(bT(),".linzumi","logs","command-events.jsonl"):t}function ST(t){return vy(t)}function rd(t,e){return PT(e)?Nr:typeof t=="string"?wy(t):Array.isArray(t)?e==="args"?zT(t):t.map(r=>rd(r,void 0)):t!==null&&typeof t=="object"?vy(t):t}function vy(t){let e=typeof t.name=="string"?t.name.toLowerCase():void 0,r=e==="authorization"||e==="cookie"||e==="set-cookie";return Object.fromEntries(Object.entries(t).filter(([n])=>n!=="runner_console").map(([n,o])=>[n,r&&n==="value"?Nr:rd(o,n)]))}function zT(t){let e=!1;return t.map(r=>{if(typeof r!="string")return e=!1,rd(r,void 0);if(e)return e=!1,Nr;let[n,o]=TT(r);return xT.has(n)?o===void 0?(e=!0,r):`${n}=${Nr}`:wy(r)})}function TT(t){let e=t.indexOf("=");return e===-1?[t,void 0]:[t.slice(0,e),t.slice(e+1)]}function PT(t){return t===void 0?!1:/^(authorization|cookie|set-cookie|password)$/i.test(t)||/(^|[_-])(access[_-]?token|api[_-]?key|auth[_-]?token|oauth[_-]?code|refresh[_-]?token|secret|token)$/i.test(t)}function wy(t){return jT(t).replace(/\beyJ[A-Za-z0-9_-]*\.[A-Za-z0-9_-]+\.[A-Za-z0-9_-]+\b/g,Nr)}function jT(t){let e;try{e=new URL(t)}catch{return RT(t)}for(let r of[...e.searchParams.keys()])by.has(r.toLowerCase())&&e.searchParams.set(r,Nr);return e.toString()}function RT(t){let e=t.indexOf("?"),r=t.indexOf("#");if(e===-1||r!==-1&&r<e)return t;let n=t.slice(0,e),o=r===-1?t.slice(e+1):t.slice(e+1,r),s=r===-1?"":t.slice(r),i=new URLSearchParams(o),a=!1;for(let u of[...i.keys()])by.has(u.toLowerCase())&&(i.set(u,Nr),a=!0);switch(a){case!0:return`${n}?${i.toString()}${s}`;case!1:return t}}var CT=300*1e3,AT=1e4;function ky(t,e=process.env){if(typeof t=="number"&&Number.isFinite(t)&&t>0)return t;let r=e.LINZUMI_OAUTH_CALLBACK_TIMEOUT_MS?.trim();if(r!==void 0&&r!==""){let n=Number.parseInt(r,10);if(Number.isFinite(n)&&n>0)return n}return CT}async function xy(t){let e=Ve(t.kandanUrl),r=IT(18).toString("base64url"),n=await DT({host:NT(t.kandanUrl,t.callbackHost),exchange:async s=>{if(s.state!==r)throw new Error("local runner OAuth state mismatch");return await LT({httpBaseUrl:e,code:s.code,redirectUri:s.redirectUri})}}),o=ZT({httpBaseUrl:e,redirectUri:n.redirectUri,state:r,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,onboarding:t.onboarding,purpose:t.purpose});process.stderr.write(`Authorize the local Codex runner:
|
|
45
45
|
${o}
|
|
46
|
-
`);try{return await(t.openAuthorizationUrl??pT)(o),await n.waitForToken(py(t.waitForTokenTimeoutMs))}finally{n.close()}}async function fy(t){let e=xt(t.kandanUrl),r=await oT({httpBaseUrl:e,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,onboarding:t.onboarding});return(t.writeStderr??(o=>process.stderr.write(o)))(`Authorize this computer:
|
|
47
|
-
Code: ${r.userCode}
|
|
48
|
-
Open: ${r.verificationUri}
|
|
49
|
-
`),await sT({httpBaseUrl:e,deviceCode:r.deviceCode,expiresInSeconds:r.expiresInSeconds})}async function hy(t){return await zo(t)==="usable"}async function zo(t){let e=new URL("/api/v2/local-codex-runner/oauth/validate",xt(t.kandanUrl));t.workspaceSlug!==void 0&&e.searchParams.set("workspace",t.workspaceSlug),t.channelSlug!==void 0&&e.searchParams.set("channel",t.channelSlug);for(let n of t.requiredScopes??[])e.searchParams.append("required_scope",n);let r=await fetch(e,{method:"GET",headers:{authorization:`Bearer ${t.accessToken}`}});switch(r.status){case 200:{let n=await r.json();return typeof n=="object"&&n!==null&&"ok"in n&&n.ok===!0?"usable":"rejected"}case 401:case 403:return"rejected";case 404:return"not_found";default:throw new Error(`local runner auth validation failed with HTTP ${r.status}`)}}function xt(t){let e=new URL(t);switch(e.protocol){case"ws:":e.protocol="http:";break;case"wss:":e.protocol="https:";break;case"http:":case"https:":break;default:throw new Error("--api-url must be ws://, wss://, http://, or https://")}return e.pathname="",e.search="",e.hash="",e.toString().replace(/\/$/,"")}function eT(t,e){let r=e?.trim();if(r!==void 0&&r!=="")return r;let n=new URL(t).hostname.trim();return tT(n)&&n!=="localhost"?n:"127.0.0.1"}function tT(t){let e=t.split(".").map(o=>Number.parseInt(o,10));if(e.length!==4||e.some(o=>!Number.isInteger(o)||o<0||o>255))return t==="localhost";let[r,n]=e;return r===void 0||n===void 0?!1:r===10||r===127||r===172&&n>=16&&n<=31||r===192&&n===168||r===169&&n===254||r===100&&n>=64&&n<=127}function rT(t){let e=new URL("/api/v2/local-codex-runner/oauth/authorize",t.httpBaseUrl);return e.searchParams.set("redirect_uri",t.redirectUri),e.searchParams.set("state",t.state),t.workspaceSlug!==void 0&&e.searchParams.set("workspace",t.workspaceSlug),t.channelSlug!==void 0&&e.searchParams.set("channel",t.channelSlug),t.onboarding!==void 0&&e.searchParams.set("onboarding",t.onboarding),t.purpose!==void 0&&e.searchParams.set("purpose",t.purpose),e.toString()}async function nT(t){let e=await fetch(new URL("/api/v2/local-codex-runner/oauth/token",t.httpBaseUrl),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({code:t.code,redirect_uri:t.redirectUri})}),r=await e.json();if(!e.ok||typeof r!="object"||r===null){let s=typeof r=="object"&&r!==null&&"error"in r&&typeof r.error=="string"?r.error:void 0;throw s==="admin_role_required"?new Error("This token requires a Linzumi admin account. Approve the request while signed in as an admin."):new Error(s!==void 0?`local runner OAuth token exchange failed: ${s}`:"local runner OAuth token exchange failed")}let n="access_token"in r?r.access_token:void 0;if(typeof n!="string"||n.trim()==="")throw new Error("local runner OAuth token response did not include access_token");let o="expires_in"in r?r.expires_in:void 0;return{accessToken:n,expiresInSeconds:typeof o=="number"?o:void 0,workspaceSlug:ha(r,"workspace"),channelSlug:ha(r,"channel")}}async function oT(t){let e=await fetch(new URL("/api/v2/local-codex-runner/device/start",t.httpBaseUrl),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({workspace:t.workspaceSlug,channel:t.channelSlug,onboarding:t.onboarding})}),r=await e.json();if(!e.ok||typeof r!="object"||r===null)throw new Error("local runner device authorization failed to start");let n="device_code"in r?r.device_code:void 0,o="user_code"in r?r.user_code:void 0,s="verification_uri"in r?r.verification_uri:void 0,a="expires_in"in r?r.expires_in:void 0;if(typeof n!="string"||n.trim()===""||typeof o!="string"||o.trim()===""||typeof s!="string"||s.trim()==="")throw new Error("local runner device authorization response was incomplete");return{deviceCode:n,userCode:o,verificationUri:s,expiresInSeconds:typeof a=="number"?a:void 0}}async function sT(t){let e=typeof t.expiresInSeconds=="number"&&t.expiresInSeconds>=0?t.expiresInSeconds:600,r=Date.now()+e*1e3;for(;Date.now()<r;){let n=Math.max(0,Math.min(3e4,r-Date.now())),o=new AbortController,s=setTimeout(()=>o.abort(),n+Qz),a,i;try{a=await fetch(new URL("/api/v2/local-codex-runner/device/token",t.httpBaseUrl),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({device_code:t.deviceCode,wait_ms:n}),signal:o.signal}),i=await a.json()}catch(c){if(o.signal.aborted)continue;throw c}finally{clearTimeout(s)}if(a.status===202&&dy(i)==="authorization_pending")continue;if(!a.ok||typeof i!="object"||i===null)throw new Error(aT(dy(i)));let u="access_token"in i?i.access_token:void 0;if(typeof u!="string"||u.trim()==="")throw new Error("local runner device authorization response did not include access_token");let l="expires_in"in i?i.expires_in:void 0;return{accessToken:u,expiresInSeconds:typeof l=="number"?l:void 0,workspaceSlug:ha(i,"workspace"),channelSlug:ha(i,"channel")}}throw new Error("local runner device authorization expired")}function dy(t){if(!(typeof t!="object"||t===null||!("error"in t)))return typeof t.error=="string"?t.error:void 0}function aT(t){switch(t){case"access_denied":return"local runner device authorization was denied";case"device_session_expired":return"local runner device authorization expired";case"device_session_consumed":return"local runner device authorization was already used";case"invalid_device_code":return"local runner device authorization code was rejected";default:return"local runner device authorization failed"}}function ha(t,e){let r=t[e];return typeof r=="string"&&r.trim()!==""?r:void 0}function iT(t){return new Promise((e,r)=>{let n,o,s=!1,a=new Promise((c,d)=>{n=c,o=d});a.catch(()=>{});let i=c=>s?!1:(s=!0,c(),!0),u=`http://${t.host}/callback`,l=Xz((c,d)=>{(async()=>{try{let h=new URL(c.url??"/",`http://${t.host}`),f=h.searchParams.get("code"),m=h.searchParams.get("state"),g=h.searchParams.get("error");if(g!==null&&g.trim()!==""){i(()=>o?.(new Error(`local runner OAuth failed: ${g}`))),So(d,{title:"Not authorized",body:"You denied the request. Close this tab and rerun the bootstrap command when you're ready.",status:403});return}if(f===null||m===null||f.trim()===""||m.trim()===""){So(d,{title:"Authorization callback was incomplete",body:"We didn't receive the authorization code. Return to your terminal and try again.",status:400});return}let y;try{y=await t.exchange({code:f,state:m,redirectUri:u})}catch(w){i(()=>o?.(w)),So(d,{title:"Authorization could not be completed",body:"We received the authorization but could not finish setup. Return to your terminal for details and rerun the bootstrap command.",status:400});return}let v=i(()=>n?.(y));So(d,{title:v?"Computer authorized":"Already authorized",body:"This computer has been authorized for agentic use in Linzumi. Feel free to close this tab and let the terminal finish setup.",status:200})}catch(h){i(()=>o?.(h)),So(d,{title:"Authorization callback failed",body:"Return to your terminal and rerun the bootstrap command.",status:500})}})()});l.once("error",r),l.listen(0,t.host,()=>{let c=l.address();if(!cT(c)){r(new Error("local runner OAuth callback server did not bind to a TCP port"));return}u=`http://${t.host}:${c.port}/callback`,e({redirectUri:u,waitForToken:d=>{let h=py(d),f=setTimeout(()=>{i(()=>o?.(new Error("Authorization timed out before the browser callback completed. Rerun the connect command and finish authorizing in the browser."))),l.close()},h);return f.unref?.(),a.finally(()=>{clearTimeout(f)}).catch(()=>{}),a},close:()=>{l.close()}})})})}function cT(t){return typeof t=="object"&&t!==null&&typeof t.port=="number"}function So(t,e){t.writeHead(e.status,{"content-type":"text/html; charset=utf-8"}),t.end(lT(e))}var uT='<svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path fill="currentColor" d="M206.7,82.37l2.55-6.45,2.01-3.63c.67-1.21,1.07-1.88,2.55-3.63,1.34-1.61,3.36-4.43,5.64-6.58,2.42-2.24,5.06-4.3,7.93-6.18,3.92-2.53,8.17-4.52,12.63-5.91,1.79-.63,4.03-1.16,6.72-1.61,6.1-.88,12.29-.92,18.4-.13,2.69.45,5.06,1.03,7.12,1.75,2.15.67,3.49,1.07,5.64,2.15,4.55,2.16,8.87,4.77,12.9,7.79,1.61,1.34,2.42,2.15,4.16,4.16l5.91,7.66c1.34,2.01,1.34,2.28,2.15,4.03l2.55,6.58c.67,1.34-.13,1.34,1.07.94,1.21-.27,4.3-2.01,6.45-2.82,4.7-1.83,9.62-3,14.64-3.49,2.42-.27,3.76-.54,7.12-.27s9.27,1.21,12.76,2.15c3.63.94,6.58,2.55,8.73,3.49,2.15,1.07,2.55,1.48,4.16,2.55,3.49,2.51,6.77,5.29,9.81,8.33,1.52,1.7,3.04,3.58,4.57,5.64,2.74,4.49,4.86,9.32,6.31,14.37.67,2.28,1.07,3.49,1.34,6.72.27,3.22,0,10.48.4,12.76.27,2.28.27.67,1.61.94,1.48.27,4.3,0,6.72.4,2.42.27,4.97.85,7.66,1.75,6.76,2.32,13.01,5.92,18.4,10.61,2.28,1.75,2.96,2.69,4.3,4.3,3.51,3.93,6.32,8.43,8.33,13.3,1.07,2.15,1.21,2.28,1.88,5.1.54,2.96,1.61,8.19,1.61,12.36s-.81,9.67-1.34,12.76c-.67,3.22-1.07,4.03-2.15,6.18-2.16,4.54-4.81,8.82-7.93,12.76-1.25,1.61-2.6,3-4.03,4.16-1.48,1.34-2.69,2.42-4.7,3.76-3.79,2.34-7.74,4.4-11.82,6.18l-6.58,2.15c-2.06.45-4.12.72-6.18.81l-7.25.13c-2.28,0-2.82.27-6.58-.4-3.76-.81-11.69-2.82-15.99-4.3-4.16-1.34-6.31-2.69-9.67-4.43-3.49-1.75-10.48-6.18-12.9-7.39-8.26-4.54-16.78-8.58-25.52-12.09-4.3-1.75-9.27-3.22-11.82-4.03-2.55-.81-5.24-1.61-7.66-2.15-8.39-2.25-16.99-3.6-25.66-4.03-3.9-.27-4.84-.27-8.19-.13-3.67-.09-7.79.04-12.36.4-7.9.79-15.75,2.04-23.51,3.76-8.37,2.26-16.62,4.95-24.72,8.06-3.22,1.34-2.82.81-9.13,4.16-6.31,3.36-22.03,12.22-28.75,15.58-6.72,3.36-8.73,3.49-11.82,4.43-3.09,1.07-4.3,1.21-6.58,1.61-7.3,1.09-14.71,1.18-22.03.27-2.55-.54-5.78-1.61-7.79-2.28-2.01-.54-2.15-.67-4.03-1.75-2.02-1.07-5.64-3.22-7.79-4.7-3.24-2.15-6.14-4.77-8.6-7.79-1.34-1.52-2.69-3.36-4.03-5.51-1.52-2.51-2.96-5.24-4.3-8.19-2.03-5.46-3.03-11.24-2.96-17.06,0-2.96.13-6.72.67-9.67.54-2.87,1.34-5.6,2.42-8.19,4.24-10.52,12.04-19.22,22.03-24.58,5.19-2.98,10.88-4.98,16.79-5.91,2.55-.4,5.37-.13,6.72-.4,1.34-.27,1.34,1.34,1.61-.94.4-2.28,0-9.4.4-12.76.27-3.36.81-4.97,1.48-7.25,1.87-6.19,4.88-11.97,8.87-17.06,3.47-3.98,7.39-7.54,11.69-10.61,4.43-2.61,9.11-4.77,13.97-6.45,2.55-.67,6.99-1.34,9.13-1.75,2.15-.27,1.88-.13,3.63-.13,1.79-.09,4.03,0,6.72.27,2.69.18,5.73.72,9.13,1.61,3.49,1.07,9.27,4.03,11.28,4.7s.4.27,1.07-.94ZM512.27,255.7c0,141.39-114.62,256-256,256S.27,397.09.27,255.7,114.89-.3,256.27-.3s256,114.62,256,256ZM449.33,352.66c14.67-29.16,22.94-62.09,22.94-96.95,0-119.29-96.71-216-216-216S40.27,136.41,40.27,255.7c0,41.89,11.94,80.98,32.57,114.09,1.7,1.79,2.94.65,3.05-.57.27-1.61,2.75-20.85,4.43-27.27,1.87-7.6,4.52-14.98,7.93-22.03,1.75-3.49,3.76-7.93,6.18-11.82,8.77-13.95,19.75-26.38,32.51-36.81,7.24-5.32,14.87-10.08,22.84-14.24,9.74-4.78,20.09-8.22,30.76-10.21,4.03-.99,7.61-1.66,10.75-2.02,3.36-.54,5.78-.54,9.27-.94,3.49-.54,9.32-1.16,11.82-2.01,6.65-2.27,5.64-6.72,3.09-7.52-2.55-.81-9.67-1.88-13.84-2.96-4.16-1.21-8.73-2.82-11.28-3.76-2.55-.94-2.28-.94-3.9-2.02l-5.91-4.03c-.94-.94-1.34-.94.54-2.02l10.21-5.51c2.01-1.07,1.75-.67,3.09-.13,1.34.67,4.3,2.42,6.72,3.36,7.2,2.69,14.96,3.52,22.57,2.42,1.34-.27,1.34-.54,1.61-1.21.27-.67.81-.94-.13-2.69-.94-1.88-4.43-6.58-5.64-8.46l-1.21-2.28c-.27-.45-1.07-1.07,1.21-1.75,2.42-.54,10.48-2.58,12.9-2.82.86-.09.67,0,1.75,1.07,1.07,1.07,3.09,3.63,4.84,5.24,1.88,1.61,4.43,3.22,6.18,4.3,2.8,1.71,5.99,2.68,9.27,2.82,1.88,0,4.97-.13,7.12-.67,2.15-.4,3.63-.94,5.64-2.02,2.01-1.07,4.7-2.69,6.72-4.43,2.01-1.75,3.49-5.1,5.64-6.04,2.15-.81,4.97.54,7.12.94,2.28.4,4.97,1.21,6.18,1.61,1.21.4,2.01.4.67,2.28l-8.06,10.34c-1.34,1.88.13,5.51,1.21,5.64l5.64.27c2.28-.13,4.43.13,7.66-.67,3.36-.81,9.27-2.96,11.82-3.9,2.69-.94,3.22-1.34,4.16-2.01.81-.54,1.39-1.03,1.75-1.48.45-.27.67-1.07,2.82,0s9.4,4.97,11.28,6.18c2.01,1.21,1.07.94,0,1.75l-5.51,3.9c-1.48.94-1.07.94-3.22,1.88-2.15,1.07-6.58,2.96-9.67,4.03s-4.03,1.75-8.73,2.69c-4.7.81-14.51,1.75-19.48,2.55-4.97.81-7.93,1.34-10.34,2.01-2.28.67-2.15.94-3.49,1.88-1.48,1.07-2.69,1.61-4.97,3.9-2.28,2.28-5.91,6.85-8.73,9.81-2.82,2.96-6.45,6.04-8.33,7.79-2.02,1.61-1.61,1.34-3.36,2.42l-6.99,4.03-4.03,2.02-6.72,2.15c-2.42.67-3.9,1.21-7.66,2.01l-14.91,2.82c-3.63.81-4.3,1.07-7.12,2.01-2.96,1.07-6.22,2.46-9.81,4.16-3.22,1.43-6.81,3.45-10.75,6.04-13.6,9.14-24.61,21.63-31.97,36.27-2.01,3.76-2.96,6.58-3.9,9.27-1.07,2.69-1.61,4.03-2.28,6.58-.67,2.69-1.48,5.24-2.15,9.27-.54,4.16-1.48,11.15-1.75,15.45-.27,4.16-.27,6.04,0,10.21l1.88,14.91c.67,3.76,1.48,5.91,2.15,8.19l1.88,5.64c.99,2.6,2.42,5.78,4.3,9.54,2.15,3.76,5.37,9.13,8.06,13.03,10.08,14.51,23.81,26.36,40.17,33.05,22.55,9.22,43.32,10.46,61.89,10.46,3.25,0,6.49-.09,9.71-.23,3.07-.42,2.74-6.09,10.48-9.42,5.26-2.26,13.7-2.42,14.91-2.55,1.07-.13-5.24-4.57-7.79-6.45-2.55-1.88-4.97-4.3-6.72-5.91-1.75-1.75-2.42-2.28-3.9-4.16-1.61-1.88-3.9-5.51-5.24-7.12-1.34-1.61-1.48-2.28-2.55-2.55-.98-.27-2.37-.09-4.16.54-1.88.4-5.37,1.21-7.12,1.88-1.75.67-2.02.81-3.09,2.01-1.07,1.07-2.69,3.76-3.63,4.7-.81.94-.67.67-1.48.94-.81.27-2.42.67-3.63.54-1.34-.18-2.55-.58-3.63-1.21-.81-.81-1.48-2.42-1.88-3.22-.4-.94-.54-1.21-.54-2.15l.4-3.49c.18-1.52.72-3.27,1.61-5.24.94-1.75,1.88-3.49,4.16-5.64,2.15-2.02,7.52-5.51,9.13-6.85,1.61-1.34,1.21-2.15.54-3.63-2.69-5.16-6.33-9.77-10.75-13.57-2.42-1.88-5.51-3.22-7.79-4.3-2.15-1.21-2.01-1.21-5.78-2.42-3.76-1.07-13.16-3.63-16.79-4.84-3.63-1.07-2.82-.94-5.1-2.01l-8.19-4.3c-1.75-.94-1.34-.54-2.69-1.61l-5.51-4.57c-2.18-1.93-3.77-4.45-4.57-7.25-.45-1.52-.45-2.87,0-4.03.4-1.34,0-1.21,2.01-3.63,2.15-2.42,7.25-7.93,10.21-10.75,3.09-2.82,4.97-4.03,7.79-6.04,5.43-3.82,11.09-7.32,16.93-10.48,2.42-1.21,5.37-2.02,7.12-2.69,1.61-.81,2.64-1.43,3.09-1.88.54-.4.67.54.4-.94-.4-1.48-1.88-4.97-2.28-7.66-.4-2.82-.4-6.18,0-8.73.36-2.42,1.03-4.66,2.01-6.72,1.16-2.24,2.46-4.3,3.9-6.18,1.34-1.7,2.91-3.04,4.7-4.03,1.75-1.07,4.3-2.01,6.18-2.42,1.61-.45,3.13-.58,4.57-.4l4.57.27c1.34.18,2.55.49,3.63.94,1.07.54,2.55,1.48,3.09,2.01.4.67.67.13-.27,1.61-1.07,1.48-4.16,4.57-5.78,7.12-1.61,2.69-2.96,5.6-4.03,8.73-.94,3.22-1.88,8.73-2.01,10.75-.27,2.15,4.7,1.75,5.1.54.54-1.07.27-2.55,1.07-5.1.81-2.42,2.42-7.25,3.9-9.81,1.34-2.55,2.82-3.76,4.57-5.51,1.79-1.88,3.67-3.45,5.64-4.7,1.88-1.21,3.22-1.75,5.64-2.28,2.42-.4,6.18-.67,8.73-.67,2.42,0,3.9.13,6.18.94,2.15.81,5.24,2.69,7.12,4.03,1.79,1.52,3.22,3.09,4.3,4.7,1.21,1.61,1.88,2.96,2.55,5.1.67,2.15,1.34,5.1,1.34,7.66,0,2.69-.54,6.04-1.21,8.19-.63,2.24-1.43,4.03-2.42,5.37-.67,1.34-.94,1.61-2.15,2.82-1.21,1.34-3.22,3.22-4.97,4.57-1.75,1.21-4.43,2.28-5.51,3.22-.94.81-.4,2.51.4,2.42.94.13,1.75.4,4.57-.13,2.82-.4,8.33-2.15,12.22-2.82,11.99-2.63,24.41-2.63,36.4,0,3.22.54,4.16,1.07,6.31,1.75l6.04,2.28c2.42,1.07,5.51,2.42,8.19,4.16,8.15,5.36,15.14,12.3,20.55,20.42,1.61,2.42,2.87,4.66,3.76,6.72,1.85,4.51,3.42,9.13,4.7,13.84.67,2.82,1.21,4.43,1.61,8.19.4,3.76.4,11.82.54,14.37.27,2.55-.13,2.28,1.75,1.34,1.75-.94,20.09-7.74,30.63-31.57,9.16-20.71,1.9-47.26-2.28-55.34-1.75-3.22-4.16-6.99-6.31-9.81-4.44-5.14-9.6-9.62-15.31-13.3-2.96-1.7-5.55-3.09-7.79-4.16-4.33-1.6-8.77-2.86-13.3-3.76l-6.18-.4h-14.37c-2.69-.27-3.1-3.18-.54-4.3,3.64-1.58,9.88-2.63,18.54-2.42,8.78.21,14.91,1.88,17.33,2.55,13.98,3.94,30.19,16.65,38.55,30.76,6.61,11.16,9.81,29.96,9.81,29.96.37,1.75,2.18,1.66,3.08.35ZM232.78,345.3c-3.91,0-7.08,3.17-7.08,7.08s3.17,7.08,7.08,7.08,7.08-3.17,7.08-7.08-3.17-7.08-7.08-7.08Z"/></svg>';function lT(t){let e=t.status>=200&&t.status<300,r=e?"badge badge--success":"badge badge--notice",n=e?'<svg viewBox="0 0 24 24" aria-hidden="true" focusable="false" class="mark"><path fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round" d="M5 12.5l4.2 4.2L19 7"/></svg>':'<svg viewBox="0 0 24 24" aria-hidden="true" focusable="false" class="mark"><path fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round" d="M12 7v6M12 17h.01"/></svg>';return`<!doctype html>
|
|
46
|
+
`);try{return await(t.openAuthorizationUrl??VT)(o),await n.waitForToken(ky(t.waitForTokenTimeoutMs))}finally{n.close()}}async function $y(t){return await Po(t)==="usable"}async function Po(t){let e=new URL("/api/v2/local-codex-runner/oauth/validate",Ve(t.kandanUrl));t.workspaceSlug!==void 0&&e.searchParams.set("workspace",t.workspaceSlug),t.channelSlug!==void 0&&e.searchParams.set("channel",t.channelSlug);for(let n of t.requiredScopes??[])e.searchParams.append("required_scope",n);let r=await fetch(e,{method:"GET",headers:{authorization:`Bearer ${t.accessToken}`}});switch(r.status){case 200:{let n=await r.json();return typeof n=="object"&&n!==null&&"ok"in n&&n.ok===!0?"usable":"rejected"}case 401:case 403:return"rejected";case 404:return"not_found";default:throw new Error(`local runner auth validation failed with HTTP ${r.status}`)}}function Ve(t){let e=new URL(t);switch(e.protocol){case"ws:":e.protocol="http:";break;case"wss:":e.protocol="https:";break;case"http:":case"https:":break;default:throw new Error("--api-url must be ws://, wss://, http://, or https://")}return e.pathname="",e.search="",e.hash="",e.toString().replace(/\/$/,"")}function NT(t,e){let r=e?.trim();if(r!==void 0&&r!=="")return r;let n=new URL(t).hostname.trim();return MT(n)&&n!=="localhost"?n:"127.0.0.1"}function MT(t){let e=t.split(".").map(o=>Number.parseInt(o,10));if(e.length!==4||e.some(o=>!Number.isInteger(o)||o<0||o>255))return t==="localhost";let[r,n]=e;return r===void 0||n===void 0?!1:r===10||r===127||r===172&&n>=16&&n<=31||r===192&&n===168||r===169&&n===254||r===100&&n>=64&&n<=127}function ZT(t){let e=new URL("/api/v2/local-codex-runner/oauth/authorize",t.httpBaseUrl);return e.searchParams.set("redirect_uri",t.redirectUri),e.searchParams.set("state",t.state),t.workspaceSlug!==void 0&&e.searchParams.set("workspace",t.workspaceSlug),t.channelSlug!==void 0&&e.searchParams.set("channel",t.channelSlug),t.onboarding!==void 0&&e.searchParams.set("onboarding",t.onboarding),t.purpose!==void 0&&e.searchParams.set("purpose",t.purpose),e.toString()}async function LT(t){let e=await fetch(new URL("/api/v2/local-codex-runner/oauth/token",t.httpBaseUrl),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({code:t.code,redirect_uri:t.redirectUri})}),r=await e.json();if(!e.ok||typeof r!="object"||r===null){let s=typeof r=="object"&&r!==null&&"error"in r&&typeof r.error=="string"?r.error:void 0;throw s==="admin_role_required"?new Error("This token requires a Linzumi admin account. Approve the request while signed in as an admin."):new Error(s!==void 0?`local runner OAuth token exchange failed: ${s}`:"local runner OAuth token exchange failed")}let n="access_token"in r?r.access_token:void 0;if(typeof n!="string"||n.trim()==="")throw new Error("local runner OAuth token response did not include access_token");let o="expires_in"in r?r.expires_in:void 0;return{accessToken:n,expiresInSeconds:typeof o=="number"?o:void 0,workspaceSlug:bi(r,"workspace"),channelSlug:bi(r,"channel")}}async function Sy(t){let e=await fetch(new URL("/api/v2/local-codex-runner/device/start",t.httpBaseUrl),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({workspace:t.workspaceSlug,channel:t.channelSlug,onboarding:t.onboarding,runner_id:t.identity?.runnerId,machine_fingerprint:t.identity?.machineFingerprint,hostname:t.identity?.hostname})}),r=await e.json();if(!e.ok||typeof r!="object"||r===null){let a=od(r);throw new Error(a===void 0?`local runner device authorization failed to start (HTTP ${e.status})`:`local runner device authorization failed to start (server said: ${a})`)}let n="device_code"in r?r.device_code:void 0,o="user_code"in r?r.user_code:void 0,s="verification_uri"in r?r.verification_uri:void 0,i="expires_in"in r?r.expires_in:void 0;if(typeof n!="string"||n.trim()===""||typeof o!="string"||o.trim()===""||typeof s!="string"||s.trim()==="")throw new Error("local runner device authorization response was incomplete");return{deviceCode:n,userCode:o,verificationUri:s,expiresInSeconds:typeof i=="number"?i:void 0}}async function zy(t){let e=t.now??Date.now,r=typeof t.expiresInSeconds=="number"&&t.expiresInSeconds>=0?t.expiresInSeconds:600,n=e()+r*1e3;for(;e()<n;){let o=Math.max(0,Math.min(3e4,n-e())),s=new AbortController,i=setTimeout(()=>s.abort(),o+AT),a,u;try{a=await fetch(new URL("/api/v2/local-codex-runner/device/token",t.httpBaseUrl),{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({device_code:t.deviceCode,wait_ms:o}),signal:s.signal})}catch(d){if(clearTimeout(i),s.signal.aborted)continue;return{kind:"transient",reason:d instanceof Error?d.message:String(d)}}try{u=await a.json()}catch(d){if(s.signal.aborted)continue;return{kind:"transient",reason:`non-JSON device/token response (${d instanceof Error?d.message:String(d)})`,httpStatus:a.status}}finally{clearTimeout(i)}if(a.status===202&&od(u)==="authorization_pending")continue;if(!a.ok||typeof u!="object"||u===null){let d=od(u);switch(d){case"access_denied":return{kind:"denied"};case"device_session_expired":return{kind:"code_expired"};case"device_session_consumed":return{kind:"consumed"};default:return a.status>=500||a.status===429?{kind:"transient",reason:d??`HTTP ${a.status}`,httpStatus:a.status}:{kind:"rejected",reason:d,httpStatus:a.status}}}let l="access_token"in u?u.access_token:void 0;if(typeof l!="string"||l.trim()==="")return{kind:"rejected",reason:"device token response did not include access_token",httpStatus:a.status};let c="expires_in"in u?u.expires_in:void 0;return{kind:"token",token:{accessToken:l,expiresInSeconds:typeof c=="number"?c:void 0,workspaceSlug:bi(u,"workspace"),channelSlug:bi(u,"channel")}}}return{kind:"code_expired"}}function od(t){if(!(typeof t!="object"||t===null||!("error"in t)))return typeof t.error=="string"?t.error:void 0}function Ty(t,e){switch(t){case"access_denied":return"local runner device authorization was denied";case"device_session_expired":return"local runner device authorization expired";case"device_session_consumed":return"local runner device authorization was already used";case"invalid_device_code":return"local runner device authorization code was rejected";case"device_session_not_pending":return"local runner device authorization was already decided (approved or denied) on the server";case"invalid_user_code":return"local runner device authorization code was not recognized by the server";case"approving_user_not_found":return"local runner device authorization failed: the approving Linzumi account could not be found";case"rate_limited":return"local runner device authorization was rate limited by the server; wait a minute and retry";case void 0:return e===void 0?"local runner device authorization failed (no reason returned by the server)":`local runner device authorization failed (HTTP ${e}, no reason returned by the server)`;default:return`local runner device authorization failed (server said: ${t})`}}function bi(t,e){let r=t[e];return typeof r=="string"&&r.trim()!==""?r:void 0}function DT(t){return new Promise((e,r)=>{let n,o,s=!1,i=new Promise((c,d)=>{n=c,o=d});i.catch(()=>{});let a=c=>s?!1:(s=!0,c(),!0),u=`http://${t.host}/callback`,l=ET((c,d)=>{(async()=>{try{let g=new URL(c.url??"/",`http://${t.host}`),h=g.searchParams.get("code"),f=g.searchParams.get("state"),m=g.searchParams.get("error");if(m!==null&&m.trim()!==""){a(()=>o?.(new Error(`local runner OAuth failed: ${m}`))),To(d,{title:"Not authorized",body:"You denied the request. Close this tab and rerun the bootstrap command when you're ready.",status:403});return}if(h===null||f===null||h.trim()===""||f.trim()===""){To(d,{title:"Authorization callback was incomplete",body:"We didn't receive the authorization code. Return to your terminal and try again.",status:400});return}let y;try{y=await t.exchange({code:h,state:f,redirectUri:u})}catch(w){a(()=>o?.(w)),To(d,{title:"Authorization could not be completed",body:"We received the authorization but could not finish setup. Return to your terminal for details and rerun the bootstrap command.",status:400});return}let v=a(()=>n?.(y));To(d,{title:v?"Computer authorized":"Already authorized",body:"This computer has been authorized for agentic use in Linzumi. Feel free to close this tab and let the terminal finish setup.",status:200})}catch(g){a(()=>o?.(g)),To(d,{title:"Authorization callback failed",body:"Return to your terminal and rerun the bootstrap command.",status:500})}})()});l.once("error",r),l.listen(0,t.host,()=>{let c=l.address();if(!UT(c)){r(new Error("local runner OAuth callback server did not bind to a TCP port"));return}u=`http://${t.host}:${c.port}/callback`,e({redirectUri:u,waitForToken:d=>{let g=ky(d),h=setTimeout(()=>{a(()=>o?.(new Error("Authorization timed out before the browser callback completed. Rerun the connect command and finish authorizing in the browser."))),l.close()},g);return h.unref?.(),i.finally(()=>{clearTimeout(h)}).catch(()=>{}),i},close:()=>{l.close()}})})})}function UT(t){return typeof t=="object"&&t!==null&&typeof t.port=="number"}function To(t,e){t.writeHead(e.status,{"content-type":"text/html; charset=utf-8"}),t.end(JT(e))}var qT='<svg viewBox="0 0 512 512" xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false"><path fill="currentColor" d="M206.7,82.37l2.55-6.45,2.01-3.63c.67-1.21,1.07-1.88,2.55-3.63,1.34-1.61,3.36-4.43,5.64-6.58,2.42-2.24,5.06-4.3,7.93-6.18,3.92-2.53,8.17-4.52,12.63-5.91,1.79-.63,4.03-1.16,6.72-1.61,6.1-.88,12.29-.92,18.4-.13,2.69.45,5.06,1.03,7.12,1.75,2.15.67,3.49,1.07,5.64,2.15,4.55,2.16,8.87,4.77,12.9,7.79,1.61,1.34,2.42,2.15,4.16,4.16l5.91,7.66c1.34,2.01,1.34,2.28,2.15,4.03l2.55,6.58c.67,1.34-.13,1.34,1.07.94,1.21-.27,4.3-2.01,6.45-2.82,4.7-1.83,9.62-3,14.64-3.49,2.42-.27,3.76-.54,7.12-.27s9.27,1.21,12.76,2.15c3.63.94,6.58,2.55,8.73,3.49,2.15,1.07,2.55,1.48,4.16,2.55,3.49,2.51,6.77,5.29,9.81,8.33,1.52,1.7,3.04,3.58,4.57,5.64,2.74,4.49,4.86,9.32,6.31,14.37.67,2.28,1.07,3.49,1.34,6.72.27,3.22,0,10.48.4,12.76.27,2.28.27.67,1.61.94,1.48.27,4.3,0,6.72.4,2.42.27,4.97.85,7.66,1.75,6.76,2.32,13.01,5.92,18.4,10.61,2.28,1.75,2.96,2.69,4.3,4.3,3.51,3.93,6.32,8.43,8.33,13.3,1.07,2.15,1.21,2.28,1.88,5.1.54,2.96,1.61,8.19,1.61,12.36s-.81,9.67-1.34,12.76c-.67,3.22-1.07,4.03-2.15,6.18-2.16,4.54-4.81,8.82-7.93,12.76-1.25,1.61-2.6,3-4.03,4.16-1.48,1.34-2.69,2.42-4.7,3.76-3.79,2.34-7.74,4.4-11.82,6.18l-6.58,2.15c-2.06.45-4.12.72-6.18.81l-7.25.13c-2.28,0-2.82.27-6.58-.4-3.76-.81-11.69-2.82-15.99-4.3-4.16-1.34-6.31-2.69-9.67-4.43-3.49-1.75-10.48-6.18-12.9-7.39-8.26-4.54-16.78-8.58-25.52-12.09-4.3-1.75-9.27-3.22-11.82-4.03-2.55-.81-5.24-1.61-7.66-2.15-8.39-2.25-16.99-3.6-25.66-4.03-3.9-.27-4.84-.27-8.19-.13-3.67-.09-7.79.04-12.36.4-7.9.79-15.75,2.04-23.51,3.76-8.37,2.26-16.62,4.95-24.72,8.06-3.22,1.34-2.82.81-9.13,4.16-6.31,3.36-22.03,12.22-28.75,15.58-6.72,3.36-8.73,3.49-11.82,4.43-3.09,1.07-4.3,1.21-6.58,1.61-7.3,1.09-14.71,1.18-22.03.27-2.55-.54-5.78-1.61-7.79-2.28-2.01-.54-2.15-.67-4.03-1.75-2.02-1.07-5.64-3.22-7.79-4.7-3.24-2.15-6.14-4.77-8.6-7.79-1.34-1.52-2.69-3.36-4.03-5.51-1.52-2.51-2.96-5.24-4.3-8.19-2.03-5.46-3.03-11.24-2.96-17.06,0-2.96.13-6.72.67-9.67.54-2.87,1.34-5.6,2.42-8.19,4.24-10.52,12.04-19.22,22.03-24.58,5.19-2.98,10.88-4.98,16.79-5.91,2.55-.4,5.37-.13,6.72-.4,1.34-.27,1.34,1.34,1.61-.94.4-2.28,0-9.4.4-12.76.27-3.36.81-4.97,1.48-7.25,1.87-6.19,4.88-11.97,8.87-17.06,3.47-3.98,7.39-7.54,11.69-10.61,4.43-2.61,9.11-4.77,13.97-6.45,2.55-.67,6.99-1.34,9.13-1.75,2.15-.27,1.88-.13,3.63-.13,1.79-.09,4.03,0,6.72.27,2.69.18,5.73.72,9.13,1.61,3.49,1.07,9.27,4.03,11.28,4.7s.4.27,1.07-.94ZM512.27,255.7c0,141.39-114.62,256-256,256S.27,397.09.27,255.7,114.89-.3,256.27-.3s256,114.62,256,256ZM449.33,352.66c14.67-29.16,22.94-62.09,22.94-96.95,0-119.29-96.71-216-216-216S40.27,136.41,40.27,255.7c0,41.89,11.94,80.98,32.57,114.09,1.7,1.79,2.94.65,3.05-.57.27-1.61,2.75-20.85,4.43-27.27,1.87-7.6,4.52-14.98,7.93-22.03,1.75-3.49,3.76-7.93,6.18-11.82,8.77-13.95,19.75-26.38,32.51-36.81,7.24-5.32,14.87-10.08,22.84-14.24,9.74-4.78,20.09-8.22,30.76-10.21,4.03-.99,7.61-1.66,10.75-2.02,3.36-.54,5.78-.54,9.27-.94,3.49-.54,9.32-1.16,11.82-2.01,6.65-2.27,5.64-6.72,3.09-7.52-2.55-.81-9.67-1.88-13.84-2.96-4.16-1.21-8.73-2.82-11.28-3.76-2.55-.94-2.28-.94-3.9-2.02l-5.91-4.03c-.94-.94-1.34-.94.54-2.02l10.21-5.51c2.01-1.07,1.75-.67,3.09-.13,1.34.67,4.3,2.42,6.72,3.36,7.2,2.69,14.96,3.52,22.57,2.42,1.34-.27,1.34-.54,1.61-1.21.27-.67.81-.94-.13-2.69-.94-1.88-4.43-6.58-5.64-8.46l-1.21-2.28c-.27-.45-1.07-1.07,1.21-1.75,2.42-.54,10.48-2.58,12.9-2.82.86-.09.67,0,1.75,1.07,1.07,1.07,3.09,3.63,4.84,5.24,1.88,1.61,4.43,3.22,6.18,4.3,2.8,1.71,5.99,2.68,9.27,2.82,1.88,0,4.97-.13,7.12-.67,2.15-.4,3.63-.94,5.64-2.02,2.01-1.07,4.7-2.69,6.72-4.43,2.01-1.75,3.49-5.1,5.64-6.04,2.15-.81,4.97.54,7.12.94,2.28.4,4.97,1.21,6.18,1.61,1.21.4,2.01.4.67,2.28l-8.06,10.34c-1.34,1.88.13,5.51,1.21,5.64l5.64.27c2.28-.13,4.43.13,7.66-.67,3.36-.81,9.27-2.96,11.82-3.9,2.69-.94,3.22-1.34,4.16-2.01.81-.54,1.39-1.03,1.75-1.48.45-.27.67-1.07,2.82,0s9.4,4.97,11.28,6.18c2.01,1.21,1.07.94,0,1.75l-5.51,3.9c-1.48.94-1.07.94-3.22,1.88-2.15,1.07-6.58,2.96-9.67,4.03s-4.03,1.75-8.73,2.69c-4.7.81-14.51,1.75-19.48,2.55-4.97.81-7.93,1.34-10.34,2.01-2.28.67-2.15.94-3.49,1.88-1.48,1.07-2.69,1.61-4.97,3.9-2.28,2.28-5.91,6.85-8.73,9.81-2.82,2.96-6.45,6.04-8.33,7.79-2.02,1.61-1.61,1.34-3.36,2.42l-6.99,4.03-4.03,2.02-6.72,2.15c-2.42.67-3.9,1.21-7.66,2.01l-14.91,2.82c-3.63.81-4.3,1.07-7.12,2.01-2.96,1.07-6.22,2.46-9.81,4.16-3.22,1.43-6.81,3.45-10.75,6.04-13.6,9.14-24.61,21.63-31.97,36.27-2.01,3.76-2.96,6.58-3.9,9.27-1.07,2.69-1.61,4.03-2.28,6.58-.67,2.69-1.48,5.24-2.15,9.27-.54,4.16-1.48,11.15-1.75,15.45-.27,4.16-.27,6.04,0,10.21l1.88,14.91c.67,3.76,1.48,5.91,2.15,8.19l1.88,5.64c.99,2.6,2.42,5.78,4.3,9.54,2.15,3.76,5.37,9.13,8.06,13.03,10.08,14.51,23.81,26.36,40.17,33.05,22.55,9.22,43.32,10.46,61.89,10.46,3.25,0,6.49-.09,9.71-.23,3.07-.42,2.74-6.09,10.48-9.42,5.26-2.26,13.7-2.42,14.91-2.55,1.07-.13-5.24-4.57-7.79-6.45-2.55-1.88-4.97-4.3-6.72-5.91-1.75-1.75-2.42-2.28-3.9-4.16-1.61-1.88-3.9-5.51-5.24-7.12-1.34-1.61-1.48-2.28-2.55-2.55-.98-.27-2.37-.09-4.16.54-1.88.4-5.37,1.21-7.12,1.88-1.75.67-2.02.81-3.09,2.01-1.07,1.07-2.69,3.76-3.63,4.7-.81.94-.67.67-1.48.94-.81.27-2.42.67-3.63.54-1.34-.18-2.55-.58-3.63-1.21-.81-.81-1.48-2.42-1.88-3.22-.4-.94-.54-1.21-.54-2.15l.4-3.49c.18-1.52.72-3.27,1.61-5.24.94-1.75,1.88-3.49,4.16-5.64,2.15-2.02,7.52-5.51,9.13-6.85,1.61-1.34,1.21-2.15.54-3.63-2.69-5.16-6.33-9.77-10.75-13.57-2.42-1.88-5.51-3.22-7.79-4.3-2.15-1.21-2.01-1.21-5.78-2.42-3.76-1.07-13.16-3.63-16.79-4.84-3.63-1.07-2.82-.94-5.1-2.01l-8.19-4.3c-1.75-.94-1.34-.54-2.69-1.61l-5.51-4.57c-2.18-1.93-3.77-4.45-4.57-7.25-.45-1.52-.45-2.87,0-4.03.4-1.34,0-1.21,2.01-3.63,2.15-2.42,7.25-7.93,10.21-10.75,3.09-2.82,4.97-4.03,7.79-6.04,5.43-3.82,11.09-7.32,16.93-10.48,2.42-1.21,5.37-2.02,7.12-2.69,1.61-.81,2.64-1.43,3.09-1.88.54-.4.67.54.4-.94-.4-1.48-1.88-4.97-2.28-7.66-.4-2.82-.4-6.18,0-8.73.36-2.42,1.03-4.66,2.01-6.72,1.16-2.24,2.46-4.3,3.9-6.18,1.34-1.7,2.91-3.04,4.7-4.03,1.75-1.07,4.3-2.01,6.18-2.42,1.61-.45,3.13-.58,4.57-.4l4.57.27c1.34.18,2.55.49,3.63.94,1.07.54,2.55,1.48,3.09,2.01.4.67.67.13-.27,1.61-1.07,1.48-4.16,4.57-5.78,7.12-1.61,2.69-2.96,5.6-4.03,8.73-.94,3.22-1.88,8.73-2.01,10.75-.27,2.15,4.7,1.75,5.1.54.54-1.07.27-2.55,1.07-5.1.81-2.42,2.42-7.25,3.9-9.81,1.34-2.55,2.82-3.76,4.57-5.51,1.79-1.88,3.67-3.45,5.64-4.7,1.88-1.21,3.22-1.75,5.64-2.28,2.42-.4,6.18-.67,8.73-.67,2.42,0,3.9.13,6.18.94,2.15.81,5.24,2.69,7.12,4.03,1.79,1.52,3.22,3.09,4.3,4.7,1.21,1.61,1.88,2.96,2.55,5.1.67,2.15,1.34,5.1,1.34,7.66,0,2.69-.54,6.04-1.21,8.19-.63,2.24-1.43,4.03-2.42,5.37-.67,1.34-.94,1.61-2.15,2.82-1.21,1.34-3.22,3.22-4.97,4.57-1.75,1.21-4.43,2.28-5.51,3.22-.94.81-.4,2.51.4,2.42.94.13,1.75.4,4.57-.13,2.82-.4,8.33-2.15,12.22-2.82,11.99-2.63,24.41-2.63,36.4,0,3.22.54,4.16,1.07,6.31,1.75l6.04,2.28c2.42,1.07,5.51,2.42,8.19,4.16,8.15,5.36,15.14,12.3,20.55,20.42,1.61,2.42,2.87,4.66,3.76,6.72,1.85,4.51,3.42,9.13,4.7,13.84.67,2.82,1.21,4.43,1.61,8.19.4,3.76.4,11.82.54,14.37.27,2.55-.13,2.28,1.75,1.34,1.75-.94,20.09-7.74,30.63-31.57,9.16-20.71,1.9-47.26-2.28-55.34-1.75-3.22-4.16-6.99-6.31-9.81-4.44-5.14-9.6-9.62-15.31-13.3-2.96-1.7-5.55-3.09-7.79-4.16-4.33-1.6-8.77-2.86-13.3-3.76l-6.18-.4h-14.37c-2.69-.27-3.1-3.18-.54-4.3,3.64-1.58,9.88-2.63,18.54-2.42,8.78.21,14.91,1.88,17.33,2.55,13.98,3.94,30.19,16.65,38.55,30.76,6.61,11.16,9.81,29.96,9.81,29.96.37,1.75,2.18,1.66,3.08.35ZM232.78,345.3c-3.91,0-7.08,3.17-7.08,7.08s3.17,7.08,7.08,7.08,7.08-3.17,7.08-7.08-3.17-7.08-7.08-7.08Z"/></svg>';function JT(t){let e=t.status>=200&&t.status<300,r=e?"badge badge--success":"badge badge--notice",n=e?'<svg viewBox="0 0 24 24" aria-hidden="true" focusable="false" class="mark"><path fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round" d="M5 12.5l4.2 4.2L19 7"/></svg>':'<svg viewBox="0 0 24 24" aria-hidden="true" focusable="false" class="mark"><path fill="none" stroke="currentColor" stroke-width="2.4" stroke-linecap="round" stroke-linejoin="round" d="M12 7v6M12 17h.01"/></svg>';return`<!doctype html>
|
|
50
47
|
<html lang="en">
|
|
51
48
|
<head>
|
|
52
49
|
<meta charset="utf-8" />
|
|
53
50
|
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
54
|
-
<title>${
|
|
51
|
+
<title>${nd(t.title)}</title>
|
|
55
52
|
<style>
|
|
56
53
|
:root {
|
|
57
54
|
color-scheme: light dark;
|
|
@@ -142,18 +139,30 @@ Open: ${r.verificationUri}
|
|
|
142
139
|
<body>
|
|
143
140
|
<main>
|
|
144
141
|
<div class="${r}">${n}</div>
|
|
145
|
-
<h1>${
|
|
146
|
-
<p>${
|
|
147
|
-
<div class="logo">${
|
|
142
|
+
<h1>${nd(t.title)}</h1>
|
|
143
|
+
<p>${nd(t.body)}</p>
|
|
144
|
+
<div class="logo">${qT}</div>
|
|
148
145
|
</main>
|
|
149
146
|
</body>
|
|
150
|
-
</html>`}function
|
|
151
|
-
`,"utf8"),{accessToken:t.accessToken,kandanBaseUrl:n,issuedAt:o.toISOString(),expiresAt:s}}function rd(t){let e=JSON.parse(t);if(typeof e!="object"||e===null||Array.isArray(e))throw new Error("Kandan auth cache must contain a JSON object");let r=e,n=r.local_codex_runner,o=r.personal_agent_delegation;if(n!==void 0&&(typeof n!="object"||n===null||Array.isArray(n)))throw new Error("Kandan auth cache local_codex_runner must be an object");if(o!==void 0&&(typeof o!="object"||o===null||Array.isArray(o)))throw new Error("Kandan auth cache personal_agent_delegation must be an object");return{version:1,local_codex_runner:bT(n),personal_agent_delegation:_T(o)}}function _T(t){if(typeof t!="object"||t===null||Array.isArray(t))return;let e=t.access_token,r=t.issued_at,n=t.expires_at;if(!(typeof e!="string"||typeof r!="string"))return{access_token:e,issued_at:r,expires_at:typeof n=="string"?n:void 0}}function bT(t){if(!(typeof t!="object"||t===null||Array.isArray(t)))return Object.fromEntries(Object.entries(t).flatMap(([e,r])=>{if(typeof r!="object"||r===null||Array.isArray(r))return[];let n=r.access_token,o=r.issued_at,s=r.expires_at;return typeof n!="string"||typeof o!="string"?[]:[[e,{access_token:n,issued_at:o,expires_at:typeof s=="string"?s:void 0}]]}))}async function by(t,e={readCachedToken:ga,validateToken:zo,acquireAndCacheToken:kT}){if(t.explicitToken!==void 0)return t.explicitToken;let r=e.readCachedToken(t.kandanUrl,t.authFilePath);if(r!==void 0){let o=await e.validateToken({kandanUrl:t.kandanUrl,accessToken:r.accessToken,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,requiredScopes:t.requiredScopes});if(o==="usable")return r.accessToken;t.reportRejectedCachedToken?.(o)}let n=await e.acquireAndCacheToken(t);return t.workspaceSlug!==void 0&&await vT(t,e,n),n}async function vT(t,e,r){let n;try{n=await e.validateToken({kandanUrl:t.kandanUrl,accessToken:r,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,requiredScopes:t.requiredScopes})}catch{return}if(n==="not_found")throw new Error(wT(t))}function wT(t){let e=new URL(xt(t.kandanUrl)).host;return`Workspace '${t.workspaceSlug}' was not found on ${e}. Sign in to the web app to create it, then re-run connect.`}async function kT(t){let e=t.authMode??{kind:"browser",callbackHost:t.callbackHost},r=e.kind==="device"?await fy({kandanUrl:t.kandanUrl,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,onboarding:t.onboarding}):await my({kandanUrl:t.kandanUrl,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,onboarding:t.onboarding,callbackHost:e.callbackHost??t.callbackHost});return _y({kandanUrl:t.kandanUrl,accessToken:r.accessToken,expiresInSeconds:r.expiresInSeconds,authFilePath:t.authFilePath}),r.accessToken}import{readFile as bC,realpath as od,stat as xT,writeFile as vC,mkdir as wC}from"node:fs/promises";import{homedir as $T}from"node:os";import{basename as ST,extname as zT,isAbsolute as wy,join as $C,relative as ky,resolve as nd}from"node:path";function tr(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function $t(t){return t!==void 0&&tr(t)?t:void 0}function ya(t){return Array.isArray(t)?t:void 0}function we(t){return typeof t=="string"&&t.trim()!==""?t.trim():void 0}function vy(t){return typeof t=="number"&&Number.isInteger(t)?t:void 0}var TT=new Set([".csv",".diff",".gif",".htm",".html",".jpeg",".jpg",".json",".jsonl",".log",".md",".mp4",".patch",".pdf",".png",".svg",".txt",".webm",".webp",".xml",".zip"]);async function sd(t,e){let r=await od(t),n=await RT(r),o=await PT(r,e);jT(n,o);let s=await xT(o);if(!s.isFile())throw new Error(`Linzumi upload path is not a file: ${o}`);return{path:o,fileName:ST(o),contentType:ET(o),sizeBytes:s.size}}async function PT(t,e){if(e==="")throw new Error("Kandan attachment path must not be empty");let r=wy(e)?nd(e):nd(t,e);return await od(r)}function jT(t,e){let r=t.find(a=>OT(a.path,e));if(r===void 0){let a=t.map(i=>i.label).join(", ");throw new Error(`Kandan attachment path must resolve inside an allowed upload root (${a}): ${e}`)}if(ky(r.path,e).split(/[\\/]+/).find(a=>a.startsWith("."))!==void 0)throw new Error(`Kandan attachment upload path must not include hidden path segments: ${e}`);let s=zT(e).toLowerCase();if(!TT.has(s))throw new Error(`Kandan attachment upload path extension is not allowed: ${e}`)}async function RT(t){let e=[{path:t,label:"runner cwd"}],r=process.env.HOME?.trim(),n=nd(r===void 0||r===""?$T():r,"Downloads");try{let o=await od(n);e.some(s=>s.path===o)||e.push({path:o,label:"~/Downloads"})}catch{return e}return e}function OT(t,e){let r=ky(t,e);return r===""||!r.startsWith("..")&&!wy(r)}function ET(t){let e=t.toLowerCase();return e.endsWith(".png")?"image/png":e.endsWith(".jpg")||e.endsWith(".jpeg")?"image/jpeg":e.endsWith(".gif")?"image/gif":e.endsWith(".webp")?"image/webp":e.endsWith(".csv")?"text/csv":e.endsWith(".json")?"application/json":e.endsWith(".md")||e.endsWith(".txt")||e.endsWith(".log")?"text/plain":"application/octet-stream"}function ad(t){let e=t.fetchImpl??fetch,r=xt(t.kandanUrl),n=t.authMode==="personal-agent-delegation"?"/api/v2/personal-agent-mcp":"/api/v2/local-runner-mcp",o=t.operatingMode??"text",s=async(a,i,u,l={})=>{let c=new URL(i,r),d={...u,operating_mode:o},h={method:a,headers:{authorization:`Bearer ${t.accessToken}`},...l.signal===void 0?{}:{signal:l.signal}};if(a==="GET")for(let[w,x]of Object.entries(d))x!=null&&c.searchParams.set(w,String(x));else h.headers={...h.headers,"content-type":"application/json"},h.body=JSON.stringify(d);let f=await e(c,h),m=await f.json(),g=tr(m)?m:void 0;if(g===void 0)throw new Error(`Linzumi MCP API returned non-object JSON from ${i}`);if(f.ok&&g.ok===!0)return g;let y=typeof g.error=="string"?g.error:`HTTP ${f.status}`,v=typeof g.detail=="string"?g.detail:void 0;throw new Error(`Linzumi MCP API ${i} failed: ${y}${v===void 0?"":` detail=${v}`}`)};return{validateAuth:()=>s("GET",`${n}/validate`,{}),issueOnboardingDiscoveryToken:a=>s("POST",`${n}/onboarding-discovery-token`,a),getMessage:a=>s("GET",`${n}/message`,a),getThread:a=>s("GET",`${n}/thread`,a),getThreadTranscript:a=>s("GET",`${n}/thread-transcript`,a),getChannel:a=>s("GET",`${n}/channel`,a),searchWorkspace:a=>s("GET",`${n}/search`,a),askWorkspace:a=>s("POST",`${n}/ask`,a),webSearch:a=>s("GET",`${n}/web-search`,a),fetchUrl:a=>s("GET",`${n}/fetch-url`,a),listUiTargets:a=>s("GET",`${n}/ui-targets`,a),openUi:a=>s("POST",`${n}/open-ui`,a),getCodingJobMetadata:a=>s("GET",`${n}/coding-job-metadata`,a),listProjects:a=>s("GET",`${n}/projects`,a),getProjectTasks:a=>s("GET",`${n}/project-tasks`,a),createProjectTask:a=>s("POST",`${n}/project-tasks/create`,a),updateProjectTask:a=>s("POST",`${n}/project-tasks/update`,a),deleteProjectTask:a=>s("POST",`${n}/project-tasks/delete`,a),addProjectTaskDependency:a=>s("POST",`${n}/project-tasks/add-dependency`,a),removeProjectTaskDependency:a=>s("POST",`${n}/project-tasks/remove-dependency`,a),getCallTranscript:a=>s("GET",`${n}/call-transcript`,a),renameCodingJob:a=>s("POST",`${n}/coding-job-title`,a),upsertCodingJobPlan:(a,i)=>s("POST",`${n}/coding-job-plan`,a,i),replaceCodingJobPlanSteps:a=>s("POST",`${n}/coding-job-plan/steps`,a),updateCodingJobPlanStep:a=>s("POST",`${n}/coding-job-plan/step`,a),linkCodingJobPullRequest:a=>s("POST",`${n}/coding-job-primary-pr`,a),listVaultSecrets:a=>s("GET",`${n}/vault-secrets`,a),noteProjectDirectory:a=>s("POST",`${n}/discovered-project`,a),noteAgentConversation:a=>s("POST",`${n}/discovered-conversation`,a),noteOnboardingDiscoveryStatus:a=>s("POST",`${n}/discovery-status`,a),sendChannelMessage:a=>s("POST",`${n}/channel-message`,a),editMessage:a=>s("POST",`${n}/message/edit`,a),agentReply:a=>s("POST",`${n}/agent-reply`,a),agentTurnProgress:a=>s("POST",`${n}/agent-turn-progress`,a),agentListCodingJobs:a=>s("GET",`${n}/agent/coding-jobs`,a),agentStartCodingJob:a=>s("POST",`${n}/agent/start-coding-job`,a),agentInterruptCodingJob:a=>s("POST",`${n}/agent/interrupt-coding-job`,a),agentSendCodingJobMessage:a=>s("POST",`${n}/agent/send-coding-job-message`,a),agentReadCodingJobThread:a=>s("GET",`${n}/agent/coding-job-thread`,a),agentResolveJobApproval:a=>s("POST",`${n}/agent/resolve-job-approval`,a),agentArchiveCodingJob:a=>s("POST",`${n}/agent/archive-coding-job`,a),agentUnarchiveCodingJob:a=>s("POST",`${n}/agent/unarchive-coding-job`,a),agentSetThreadStatus:a=>s("POST",`${n}/agent/set-thread-status`,a),agentCreateChannel:a=>s("POST",`${n}/agent/create-channel`,a),agentRenameChannel:a=>s("POST",`${n}/agent/rename-channel`,a),agentArchiveChannel:a=>s("POST",`${n}/agent/archive-channel`,a),agentUnarchiveChannel:a=>s("POST",`${n}/agent/unarchive-channel`,a),agentAddReaction:a=>s("POST",`${n}/agent/add-reaction`,a),agentRemoveReaction:a=>s("POST",`${n}/agent/remove-reaction`,a),agentPinMessage:a=>s("POST",`${n}/agent/pin-message`,a),agentUnpinMessage:a=>s("POST",`${n}/agent/unpin-message`,a),prepareMessageUploads:a=>s("POST",`${n}/message-uploads/prepare`,a),attachMessageFiles:a=>s("POST",`${n}/message-files/attach`,a),prepareCustomEmoji:a=>s("POST",`${n}/custom-emoji/prepare`,a),renameCustomEmoji:a=>s("POST",`${n}/custom-emoji/rename`,a),sendThreadReply:a=>s("POST",`${n}/thread-reply`,a),sendDm:a=>s("POST",`${n}/dm`,a),dmOwner:a=>s("POST",`${n}/dm-owner`,a),getVaultValues:a=>s("POST",`${n}/vault-values`,a)}}function xy(t){return{name:"linzumi",command:t.command??"linzumi",args:[...t.argsPrefix??[],"mcp","server","--api-url",t.kandanUrl,...t.authFilePath===void 0?[]:["--auth-file",t.authFilePath],...t.delegationAuthFilePath===void 0?[]:["--delegation-auth-file",t.delegationAuthFilePath],...t.ownerUsername===void 0?[]:["--owner-username",t.ownerUsername],...t.cwd===void 0?[]:["--cwd",t.cwd],...t.threadId===void 0?[]:["--thread-id",t.threadId],"--mode",t.operatingMode??"text",...t.toolScope===void 0||t.toolScope==="all"?[]:["--tool-scope",t.toolScope],...t.agentSession===!0?["--agent-session"]:[]],env:{...t.accessToken===void 0?{}:{LINZUMI_MCP_ACCESS_TOKEN:t.accessToken},ELECTRON_RUN_AS_NODE:"1"}}}function $y(t){return`${JSON.stringify({mcpServers:{[t.name]:{command:t.command,args:t.args,env:t.env}}},null,2)}
|
|
152
|
-
`}
|
|
147
|
+
</html>`}function nd(t){return t.replaceAll("&","&").replaceAll("<","<").replaceAll(">",">")}function FT(t){return t.replace(/[&^|<>()%"]/g,e=>`^${e}`)}function VT(t){let e=process.platform==="darwin"?"open":process.platform==="win32"?"cmd":"xdg-open",r=process.platform==="win32"?["/c","start","",FT(t)]:[t];return new Promise(n=>{td("process.spawn",{command:e,args:r,purpose:"oauth.open_browser"});let o=OT(e,r,{stdio:"ignore",detached:!0});td("process.spawned",{command:e,args:r,pid:o.pid,purpose:"oauth.open_browser"}),o.on("error",()=>n()),o.on("spawn",()=>{o.unref(),n()})})}function Py(){return QT(XT(),".linzumi","auth.json")}function vi(t,e=Py()){if(!sd(e))return;let r=ad(id(e,"utf8")),n=Ve(t),o=r.local_codex_runner?.[n];if(!(o===void 0||o.access_token.trim()==="")&&!(o.expires_at!==void 0&&Date.parse(o.expires_at)<=Date.now()))return{accessToken:o.access_token,kandanBaseUrl:n,issuedAt:o.issued_at,expiresAt:o.expires_at}}function jy(t){if(!sd(t))throw new Error(`missing personal-agent delegation auth file: ${t}`);let r=ad(id(t,"utf8")).personal_agent_delegation;if(r===void 0||r.access_token.trim()==="")throw new Error("personal-agent delegation auth file is missing access_token");if(r.expires_at!==void 0&&Date.parse(r.expires_at)<=Date.now())throw new Error("personal-agent delegation auth file token is expired");return{accessToken:r.access_token,issuedAt:r.issued_at,expiresAt:r.expires_at}}function Ry(t){let e=t.authFilePath??Py(),r=sd(e)?ad(id(e,"utf8")):{version:1},n=Ve(t.kandanUrl),o=new Date,s=t.expiresInSeconds===void 0?void 0:new Date(o.getTime()+t.expiresInSeconds*1e3).toISOString(),i={...r,version:1,local_codex_runner:{...r.local_codex_runner??{},[n]:{access_token:t.accessToken,issued_at:o.toISOString(),expires_at:s}}};BT(YT(e),{recursive:!0});let a=`${e}.tmp.${process.pid}.${HT(6).toString("hex")}`;try{GT(a,`${JSON.stringify(i,null,2)}
|
|
148
|
+
`,"utf8"),WT(a,e)}catch(u){try{KT(a,{force:!0})}catch{}throw u}return{accessToken:t.accessToken,kandanBaseUrl:n,issuedAt:o.toISOString(),expiresAt:s}}function ad(t){let e=JSON.parse(t);if(typeof e!="object"||e===null||Array.isArray(e))throw new Error("Kandan auth cache must contain a JSON object");let r=e,n=r.local_codex_runner,o=r.personal_agent_delegation;if(n!==void 0&&(typeof n!="object"||n===null||Array.isArray(n)))throw new Error("Kandan auth cache local_codex_runner must be an object");if(o!==void 0&&(typeof o!="object"||o===null||Array.isArray(o)))throw new Error("Kandan auth cache personal_agent_delegation must be an object");return{version:1,local_codex_runner:tP(n),personal_agent_delegation:eP(o)}}function eP(t){if(typeof t!="object"||t===null||Array.isArray(t))return;let e=t.access_token,r=t.issued_at,n=t.expires_at;if(!(typeof e!="string"||typeof r!="string"))return{access_token:e,issued_at:r,expires_at:typeof n=="string"?n:void 0}}function tP(t){if(!(typeof t!="object"||t===null||Array.isArray(t)))return Object.fromEntries(Object.entries(t).flatMap(([e,r])=>{if(typeof r!="object"||r===null||Array.isArray(r))return[];let n=r.access_token,o=r.issued_at,s=r.expires_at;return typeof n!="string"||typeof o!="string"?[]:[[e,{access_token:n,issued_at:o,expires_at:typeof s=="string"?s:void 0}]]}))}var rP=3,nP=3600*1e3,oP=5e3,sP=5e3,iP=6e4;function aP(t){return t.cycle<=rP?"prompt":t.lastLoudPromptAtMs===void 0||t.nowMs-t.lastLoudPromptAtMs>=nP?"summary":t.isInteractive?"refresh_line":"silent"}function cP(t){switch(t.kind){case"prompt":return`${t.cycle===1?"":`The previous code expired; here is a fresh one (no restart needed - this prompt stays alive).
|
|
149
|
+
`}Authorize this computer:
|
|
150
|
+
Code: ${t.userCode}
|
|
151
|
+
Open: ${t.verificationUri}
|
|
152
|
+
`;case"summary":return`Still waiting for authorization after ${Oy(t.waitedMs)} (${t.cycle} codes issued so far).
|
|
153
|
+
Authorize this computer:
|
|
154
|
+
Code: ${t.userCode}
|
|
155
|
+
Open: ${t.verificationUri}
|
|
156
|
+
`;case"refresh_line":return`\r\x1B[2KCode: ${t.userCode} (waiting ${Oy(t.waitedMs)}) - open ${t.verificationUri}`;case"transient":return`Device authorization poll hit a transient failure (${t.reason}); retrying with the same code.
|
|
157
|
+
`;case"start_failed":return`Could not mint a device authorization code (${t.reason}); retrying in ${Math.round(t.retryInMs/1e3)}s.
|
|
158
|
+
`}}function Oy(t){let e=Math.floor(t/6e4),r=Math.floor(e/60),n=e%60;return r>0?`${r}h ${n}m`:`${n}m`}async function Iy(t){let e=t.deps??{},r=e.startDeviceAuthorization??Sy,n=e.pollDeviceCodeForToken??zy,o=e.now??Date.now,s=e.sleep??(m=>new Promise(y=>setTimeout(y,m))),i=t.writeStderr??(m=>process.stderr.write(m)),a=t.isInteractive??process.stderr.isTTY===!0,u=e.report??(m=>i(cP(m))),l=e.log??(()=>{}),c=Ve(t.kandanUrl),d=o(),g=0,h,f=0;for(;;){let m;try{m=await r({httpBaseUrl:c,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,onboarding:t.onboarding,identity:t.identity})}catch(w){f+=1;let k=Math.min(iP,sP*2**(f-1)),j=w instanceof Error?w.message:String(w);u({kind:"start_failed",reason:j,retryInMs:k}),l("device_wait.start_failed",{reason:j,retryInMs:k,attempt:f}),await s(k);continue}f=0,g+=1;let y=aP({cycle:g,nowMs:o(),lastLoudPromptAtMs:h,isInteractive:a});y==="prompt"||y==="summary"?(h=o(),u({kind:y,cycle:g,userCode:m.userCode,verificationUri:m.verificationUri,waitedMs:o()-d})):y==="refresh_line"&&u({kind:"refresh_line",cycle:g,userCode:m.userCode,verificationUri:m.verificationUri,waitedMs:o()-d}),l("device_wait.code_issued",{cycle:g,verificationUri:m.verificationUri});let v;for(;v=await n({httpBaseUrl:c,deviceCode:m.deviceCode,expiresInSeconds:m.expiresInSeconds}),v.kind==="transient";)u({kind:"transient",reason:v.reason,waitedMs:o()-d}),l("device_wait.transient_poll_failure",{cycle:g,reason:v.reason,httpStatus:v.httpStatus??null}),await s(oP);switch(v.kind){case"token":return l("device_wait.authorized",{cycle:g,waitedMs:o()-d}),v.token;case"denied":throw new Error("local runner device authorization was denied - a signed-in user rejected this computer");case"code_expired":case"consumed":l("device_wait.code_retired",{cycle:g,outcome:v.kind});continue;case"rejected":u({kind:"transient",reason:Ty(v.reason,v.httpStatus),waitedMs:o()-d}),l("device_wait.code_rejected",{cycle:g,reason:v.reason??null,httpStatus:v.httpStatus});continue}}}import{randomUUID as qy}from"node:crypto";import{chmodSync as My,existsSync as pd,linkSync as dP,mkdirSync as Jy,readFileSync as Fy,realpathSync as F4,unlinkSync as pP,writeFileSync as Vy}from"node:fs";import{homedir as fP}from"node:os";import{basename as ud,dirname as jo,join as ld,resolve as Zy}from"node:path";var Ey="wss://serve.linzumi.com";import{homedir as uP}from"node:os";import{isAbsolute as Z4,relative as L4,resolve as lP}from"node:path";import{delimiter as P4,isAbsolute as j4,join as Cy,parse as R4,resolve as O4,sep as I4}from"node:path";var E4=[".volta",".nvm",".npm",".asdf",".fnm",".bun",Cy(".cargo","bin"),Cy(".local","bin")];function Ny(t){return t==="~"?Ay():t.startsWith("~/")?lP(Ay(),t.slice(2)):t}function Ay(){let t=process.env.HOME;return t===void 0||t.trim()===""?uP():t}var cd=384,Nt="prod";function vn(t=process.env){let e=t.LINZUMI_CONFIG_FILE;return e!==void 0&&e.trim()!==""?Zy(Ny(e)):Zy(fP(),".linzumi","config.json")}function Ro(t){let e=Ve(t),r=Ve(Ey);return e===r?Nt:e}function mP(t){let e=Ro(t);return e===Nt?Nt:Buffer.from(e).toString("base64url")}function Ly(t=vn()){return By(t)}function Dy(t,e=vn()){return By(e,t)}function Hy(t,e=vn(),r=Yy){if(Ro(t)===Nt)return hP(e,r);let n=Dy(t,e);if(n.runnerId!==void 0)return n.runnerId;let o=Xy(e,r,t),s=Dy(t,e),i=s.runnerId;return i!==void 0?i:(Wy({...s,runnerId:o},e,t),o)}function hP(t=vn(),e=Yy){let r=Ly(t);if(r.runnerId!==void 0)return r.runnerId;let n=Xy(t,e),o=Ly(t),s=o.runnerId;return s!==void 0?s:(yP({...o,runnerId:n},t),n)}function gP(t=vn(),e){return e!==void 0&&Ro(e)!==Nt?ld(jo(t),`${ud(t)}.${mP(e)}.runner-id`):ld(jo(t),`${ud(t)}.runner-id`)}function yP(t,e=vn()){Wy(t,e)}function _P(t,e){pd(t)&&My(t,cd),Vy(t,`${JSON.stringify(e,null,2)}
|
|
159
|
+
`,{encoding:"utf8",mode:cd}),My(t,cd)}function dd(t){if(!pd(t))return{version:1,allowedCwds:[]};let e=JSON.parse(Fy(t,"utf8"));if(!Ky(e))throw new Error(`invalid Linzumi config: ${t}`);return e}function By(t,e){let r=dd(t),n=e===void 0?Nt:Ro(e),o=n===Nt?r:r[n]??vP();if(!Gy(o))throw new Error(`invalid Linzumi config section ${n}: ${t}`);let s=Qy(o.allowedCwds);return{version:1,...o.machineId===void 0?{}:{machineId:o.machineId},...o.runnerId===void 0?{}:{runnerId:o.runnerId},allowedCwds:s}}function Wy(t,e,r){let n=r===void 0?Nt:Ro(r),o=bP(t),s=n===Nt?{...dd(e),...o,version:1}:{...dd(e),version:1,[n]:o};Jy(jo(e),{recursive:!0}),_P(e,s)}function Ky(t){return typeof t=="object"&&t!==null&&t.version===1&&Gy(t)}function Gy(t){return typeof t=="object"&&t!==null&&Array.isArray(t.allowedCwds)&&wP(t.machineId)&&fd(t.runnerId)&&t.allowedCwds.every(e=>typeof e=="string"&&e.trim()!=="")}function bP(t){if(!Ky(t))throw new Error("invalid Linzumi config");let e=Qy(t.allowedCwds);return{...t.machineId===void 0?{}:{machineId:t.machineId},...t.runnerId===void 0?{}:{runnerId:t.runnerId},allowedCwds:e}}function vP(){return{allowedCwds:[]}}function wP(t){return t===void 0||typeof t=="string"&&/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(t)}function fd(t){return t===void 0||typeof t=="string"&&/^[a-zA-Z0-9_.-]+$/.test(t)}function Xy(t,e,r){let n=gP(t,r);if(pd(n))return Uy(n);let o=e();if(!fd(o))throw new Error(`invalid generated Linzumi runner id: ${o}`);Jy(jo(n),{recursive:!0});let s=ld(jo(n),`.${ud(n)}.${process.pid}.${qy()}.tmp`);Vy(s,`${o}
|
|
160
|
+
`,{encoding:"utf8",flag:"wx"});try{return dP(s,n),o}catch(i){if(kP(i,"EEXIST"))return Uy(n);throw i}finally{pP(s)}}function Uy(t){let e=Fy(t,"utf8").trim();if(!fd(e))throw new Error(`invalid Linzumi runner id seed: ${t}`);return e}function Yy(){return`runner-${qy()}`}function Qy(t){return[...new Set(t.map(e=>e.trim()).filter(e=>e!==""))]}function kP(t,e){return typeof t=="object"&&t!==null&&"code"in t&&t.code===e}import{execFileSync as xP}from"node:child_process";import{createHash as $P}from"node:crypto";import{readFileSync as SP}from"node:fs";var zP="linzumi-machine-fingerprint:v1:";function TP(t,e){return xP(t,[...e],{encoding:"utf8",timeout:5e3,maxBuffer:1024*1024})}function PP(t){return SP(t,"utf8")}function jP(t={}){let e=t.platform??process.platform,r=t.execFile??TP,n=t.readFile??PP;try{if(e==="darwin"){let i=r("ioreg",["-rd1","-c","IOPlatformExpertDevice"]).match(/"IOPlatformUUID"\s*=\s*"([0-9A-Fa-f-]{36})"/)?.[1];return i===void 0?void 0:i.toLowerCase()}if(e==="linux"){for(let o of["/etc/machine-id","/var/lib/dbus/machine-id"])try{let s=n(o).trim().toLowerCase();if(/^[0-9a-f]{32}$/.test(s))return s}catch{}return}return}catch{return}}function e_(t={}){let e=jP(t);return e===void 0?void 0:`mfp-${$P("sha256").update(`${zP}${e}`).digest("hex").slice(0,32)}`}async function t_(t,e={readCachedToken:vi,validateToken:Po,acquireAndCacheToken:EP}){if(t.explicitToken!==void 0)return t.explicitToken;let r=e.readCachedToken(t.kandanUrl,t.authFilePath);if(r!==void 0){let o=await e.validateToken({kandanUrl:t.kandanUrl,accessToken:r.accessToken,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,requiredScopes:t.requiredScopes});if(o==="usable")return r.accessToken;t.reportRejectedCachedToken?.(o)}let n=await e.acquireAndCacheToken(t);return t.workspaceSlug!==void 0&&await OP(t,e,n),n}async function OP(t,e,r){let n;try{n=await e.validateToken({kandanUrl:t.kandanUrl,accessToken:r,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,requiredScopes:t.requiredScopes})}catch{return}if(n==="not_found")throw new Error(IP(t))}function IP(t){let e=new URL(Ve(t.kandanUrl)).host;return`Workspace '${t.workspaceSlug}' was not found on ${e}. Sign in to the web app to create it, then re-run connect.`}async function EP(t){let e=t.authMode??{kind:"browser",callbackHost:t.callbackHost},r=e.kind==="device"?await Iy({kandanUrl:t.kandanUrl,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,onboarding:t.onboarding,identity:{runnerId:Hy(t.kandanUrl),machineFingerprint:e_(),hostname:RP()}}):await xy({kandanUrl:t.kandanUrl,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,onboarding:t.onboarding,callbackHost:e.callbackHost??t.callbackHost});return Ry({kandanUrl:t.kandanUrl,accessToken:r.accessToken,expiresInSeconds:r.expiresInSeconds,authFilePath:t.authFilePath}),r.accessToken}import{readFile as pA,realpath as hd,stat as CP,writeFile as fA,mkdir as mA}from"node:fs/promises";import{homedir as AP}from"node:os";import{basename as NP,extname as MP,isAbsolute as n_,join as yA,relative as o_,resolve as md}from"node:path";function rr(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}function $t(t){return t!==void 0&&rr(t)?t:void 0}function wi(t){return Array.isArray(t)?t:void 0}function we(t){return typeof t=="string"&&t.trim()!==""?t.trim():void 0}function r_(t){return typeof t=="number"&&Number.isInteger(t)?t:void 0}var ZP=new Set([".csv",".diff",".gif",".htm",".html",".jpeg",".jpg",".json",".jsonl",".log",".md",".mp4",".patch",".pdf",".png",".svg",".txt",".webm",".webp",".xml",".zip"]);async function gd(t,e){let r=await hd(t),n=await UP(r),o=await LP(r,e);DP(n,o);let s=await CP(o);if(!s.isFile())throw new Error(`Linzumi upload path is not a file: ${o}`);return{path:o,fileName:NP(o),contentType:JP(o),sizeBytes:s.size}}async function LP(t,e){if(e==="")throw new Error("Kandan attachment path must not be empty");let r=n_(e)?md(e):md(t,e);return await hd(r)}function DP(t,e){let r=t.find(i=>qP(i.path,e));if(r===void 0){let i=t.map(a=>a.label).join(", ");throw new Error(`Kandan attachment path must resolve inside an allowed upload root (${i}): ${e}`)}if(o_(r.path,e).split(/[\\/]+/).find(i=>i.startsWith("."))!==void 0)throw new Error(`Kandan attachment upload path must not include hidden path segments: ${e}`);let s=MP(e).toLowerCase();if(!ZP.has(s))throw new Error(`Kandan attachment upload path extension is not allowed: ${e}`)}async function UP(t){let e=[{path:t,label:"runner cwd"}],r=process.env.HOME?.trim(),n=md(r===void 0||r===""?AP():r,"Downloads");try{let o=await hd(n);e.some(s=>s.path===o)||e.push({path:o,label:"~/Downloads"})}catch{return e}return e}function qP(t,e){let r=o_(t,e);return r===""||!r.startsWith("..")&&!n_(r)}function JP(t){let e=t.toLowerCase();return e.endsWith(".png")?"image/png":e.endsWith(".jpg")||e.endsWith(".jpeg")?"image/jpeg":e.endsWith(".gif")?"image/gif":e.endsWith(".webp")?"image/webp":e.endsWith(".csv")?"text/csv":e.endsWith(".json")?"application/json":e.endsWith(".md")||e.endsWith(".txt")||e.endsWith(".log")?"text/plain":"application/octet-stream"}function yd(t){let e=t.fetchImpl??fetch,r=Ve(t.kandanUrl),n=t.authMode==="personal-agent-delegation"?"/api/v2/personal-agent-mcp":"/api/v2/local-runner-mcp",o=t.operatingMode??"text",s=async(i,a,u,l={})=>{let c=new URL(a,r),d={...u,operating_mode:o},g={method:i,headers:{authorization:`Bearer ${t.accessToken}`},...l.signal===void 0?{}:{signal:l.signal}};if(i==="GET")for(let[w,k]of Object.entries(d))k!=null&&c.searchParams.set(w,String(k));else g.headers={...g.headers,"content-type":"application/json"},g.body=JSON.stringify(d);let h=await e(c,g),f=await h.json(),m=rr(f)?f:void 0;if(m===void 0)throw new Error(`Linzumi MCP API returned non-object JSON from ${a}`);if(h.ok&&m.ok===!0)return m;let y=typeof m.error=="string"?m.error:`HTTP ${h.status}`,v=typeof m.detail=="string"?m.detail:void 0;throw new Error(`Linzumi MCP API ${a} failed: ${y}${v===void 0?"":` detail=${v}`}`)};return{validateAuth:()=>s("GET",`${n}/validate`,{}),issueOnboardingDiscoveryToken:i=>s("POST",`${n}/onboarding-discovery-token`,i),getMessage:i=>s("GET",`${n}/message`,i),getThread:i=>s("GET",`${n}/thread`,i),getThreadTranscript:i=>s("GET",`${n}/thread-transcript`,i),getChannel:i=>s("GET",`${n}/channel`,i),searchWorkspace:i=>s("GET",`${n}/search`,i),askWorkspace:i=>s("POST",`${n}/ask`,i),aboutMe:i=>s("GET",`${n}/about-me`,i),webSearch:i=>s("GET",`${n}/web-search`,i),fetchUrl:i=>s("GET",`${n}/fetch-url`,i),listUiTargets:i=>s("GET",`${n}/ui-targets`,i),openUi:i=>s("POST",`${n}/open-ui`,i),getCodingJobMetadata:i=>s("GET",`${n}/coding-job-metadata`,i),listProjects:i=>s("GET",`${n}/projects`,i),getProjectTasks:i=>s("GET",`${n}/project-tasks`,i),createProjectTask:i=>s("POST",`${n}/project-tasks/create`,i),updateProjectTask:i=>s("POST",`${n}/project-tasks/update`,i),deleteProjectTask:i=>s("POST",`${n}/project-tasks/delete`,i),addProjectTaskDependency:i=>s("POST",`${n}/project-tasks/add-dependency`,i),removeProjectTaskDependency:i=>s("POST",`${n}/project-tasks/remove-dependency`,i),getCallTranscript:i=>s("GET",`${n}/call-transcript`,i),renameCodingJob:i=>s("POST",`${n}/coding-job-title`,i),upsertCodingJobPlan:(i,a)=>s("POST",`${n}/coding-job-plan`,i,a),replaceCodingJobPlanSteps:i=>s("POST",`${n}/coding-job-plan/steps`,i),updateCodingJobPlanStep:i=>s("POST",`${n}/coding-job-plan/step`,i),linkCodingJobPullRequest:i=>s("POST",`${n}/coding-job-primary-pr`,i),listVaultSecrets:i=>s("GET",`${n}/vault-secrets`,i),noteProjectDirectory:i=>s("POST",`${n}/discovered-project`,i),noteAgentConversation:i=>s("POST",`${n}/discovered-conversation`,i),noteOnboardingDiscoveryStatus:i=>s("POST",`${n}/discovery-status`,i),sendChannelMessage:i=>s("POST",`${n}/channel-message`,i),editMessage:i=>s("POST",`${n}/message/edit`,i),agentReply:i=>s("POST",`${n}/agent-reply`,i),agentTurnProgress:i=>s("POST",`${n}/agent-turn-progress`,i),agentListCodingJobs:i=>s("GET",`${n}/agent/coding-jobs`,i),agentStartCodingJob:i=>s("POST",`${n}/agent/start-coding-job`,i),agentInterruptCodingJob:i=>s("POST",`${n}/agent/interrupt-coding-job`,i),agentSendCodingJobMessage:i=>s("POST",`${n}/agent/send-coding-job-message`,i),agentReadCodingJobThread:i=>s("GET",`${n}/agent/coding-job-thread`,i),agentResolveJobApproval:i=>s("POST",`${n}/agent/resolve-job-approval`,i),agentArchiveCodingJob:i=>s("POST",`${n}/agent/archive-coding-job`,i),agentUnarchiveCodingJob:i=>s("POST",`${n}/agent/unarchive-coding-job`,i),agentSetThreadStatus:i=>s("POST",`${n}/agent/set-thread-status`,i),agentCreateChannel:i=>s("POST",`${n}/agent/create-channel`,i),agentRenameChannel:i=>s("POST",`${n}/agent/rename-channel`,i),agentArchiveChannel:i=>s("POST",`${n}/agent/archive-channel`,i),agentUnarchiveChannel:i=>s("POST",`${n}/agent/unarchive-channel`,i),agentAddReaction:i=>s("POST",`${n}/agent/add-reaction`,i),agentRemoveReaction:i=>s("POST",`${n}/agent/remove-reaction`,i),agentPinMessage:i=>s("POST",`${n}/agent/pin-message`,i),agentUnpinMessage:i=>s("POST",`${n}/agent/unpin-message`,i),prepareMessageUploads:i=>s("POST",`${n}/message-uploads/prepare`,i),attachMessageFiles:i=>s("POST",`${n}/message-files/attach`,i),prepareCustomEmoji:i=>s("POST",`${n}/custom-emoji/prepare`,i),renameCustomEmoji:i=>s("POST",`${n}/custom-emoji/rename`,i),sendThreadReply:i=>s("POST",`${n}/thread-reply`,i),sendDm:i=>s("POST",`${n}/dm`,i),dmOwner:i=>s("POST",`${n}/dm-owner`,i),getVaultValues:i=>s("POST",`${n}/vault-values`,i)}}function s_(t){return{name:"linzumi",command:t.command??"linzumi",args:[...t.argsPrefix??[],"mcp","server","--api-url",t.kandanUrl,...t.authFilePath===void 0?[]:["--auth-file",t.authFilePath],...t.delegationAuthFilePath===void 0?[]:["--delegation-auth-file",t.delegationAuthFilePath],...t.ownerUsername===void 0?[]:["--owner-username",t.ownerUsername],...t.cwd===void 0?[]:["--cwd",t.cwd],...t.threadId===void 0?[]:["--thread-id",t.threadId],"--mode",t.operatingMode??"text",...t.toolScope===void 0||t.toolScope==="all"?[]:["--tool-scope",t.toolScope],...t.agentSession===!0?["--agent-session"]:[]],env:{...t.accessToken===void 0?{}:{LINZUMI_MCP_ACCESS_TOKEN:t.accessToken},ELECTRON_RUN_AS_NODE:"1"}}}function i_(t){return`${JSON.stringify({mcpServers:{[t.name]:{command:t.command,args:t.args,env:t.env}}},null,2)}
|
|
161
|
+
`}function a_(t){return`[mcp_servers.${t.name}]
|
|
153
162
|
command = ${JSON.stringify(t.command)}
|
|
154
|
-
args = ${
|
|
155
|
-
${Object.keys(t.env).length===0?"":`env = ${
|
|
156
|
-
`}`}function
|
|
163
|
+
args = ${FP(t.args)}
|
|
164
|
+
${Object.keys(t.env).length===0?"":`env = ${VP(t.env)}
|
|
165
|
+
`}`}function FP(t){return`[${t.map(e=>JSON.stringify(e)).join(", ")}]`}function VP(t){return`{ ${Object.entries(t).map(([r,n])=>`${r} = ${JSON.stringify(n)}`).join(", ")} }`}var c_=64;function HP(t){switch(t){case"all":return!0;case"onboarding-discovery":return!1}}function BP(t){switch(t){case"voice":return!0;case"text":return!1}}function WP(t){return t.trim().replace(/^:+/,"").replace(/:+$/,"").toLowerCase()}var u_=p.string().min(1).refine(t=>WP(t).length<=c_,{message:`Custom emoji shortcode name must be at most ${c_} characters after trimming surrounding colons.`}),KP=new Map([["api-url",{kind:"value"}],["token",{kind:"value"}],["auth-file",{kind:"value"}],["delegation-auth-file",{kind:"value"}],["workspace",{kind:"value"}],["channel",{kind:"value"}],["owner-username",{kind:"value"}],["mode",{kind:"value"}],["cwd",{kind:"value"}],["thread-id",{kind:"value"}],["format",{kind:"value"}],["command",{kind:"value"}],["tool-scope",{kind:"value"}],["agent-session",{kind:"boolean"}],["include-token",{kind:"boolean"}],["help",{kind:"boolean"}]]);async function h_(t){let[e,...r]=t;switch(e){case void 0:case"--help":case"-h":process.stdout.write(g_());return;case"server":await GP(r);return;case"config":await oj(r);return;case"doctor":await sj(r);return;default:throw new Error(`unknown linzumi mcp command: ${e}`)}}function g_(){return`Linzumi MCP
|
|
157
166
|
|
|
158
167
|
Usage:
|
|
159
168
|
linzumi mcp server --api-url <url> [--mode voice|text] [--workspace <slug> --channel <slug>]
|
|
@@ -236,6 +245,6 @@ Tools:
|
|
|
236
245
|
Auth:
|
|
237
246
|
Uses --token, LINZUMI_MCP_ACCESS_TOKEN, or cached local runner OAuth from linzumi auth.
|
|
238
247
|
Hosted personal agents use --delegation-auth-file with a signed delegation grant.
|
|
239
|
-
`}async function LT(t){let e=cd(t);if(e.get("help")===!0){process.stdout.write(Cy());return}let r=ld(e,"api-url"),n=await id({kandanUrl:r,explicitToken:re(e,"token")??process.env.LINZUMI_MCP_ACCESS_TOKEN,authFilePath:re(e,"auth-file"),delegationAuthFilePath:re(e,"delegation-auth-file"),workspaceSlug:re(e,"workspace"),channelSlug:re(e,"channel")}),o=re(e,"owner-username")??process.env.LINZUMI_MCP_OWNER_USERNAME,s=ud(re(e,"mode")),a=Ay(re(e,"tool-scope")),i=re(e,"cwd")??process.cwd(),u=re(e,"thread-id")??process.env.LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID,l=ad({kandanUrl:r,accessToken:n.accessToken,authMode:n.mode,operatingMode:s}),c=new pa({name:"linzumi",version:"0.1.0"});HT(c),qT(c,{client:l,toolScope:a,operatingMode:s,cwd:i,kandanUrl:r,defaultThreadId:u,ownerUsername:o,agentSession:e.get("agent-session")===!0}),await c.connect(new fa)}function qT(t,e){let{client:r,toolScope:n,operatingMode:o,cwd:s,kandanUrl:a,defaultThreadId:i,ownerUsername:u,agentSession:l}=e;l&&(t.tool("linzumi_agent_reply","Post your single @linzumi reply for the current turn into the surface where you were mentioned. Call EXACTLY ONCE per turn with your final answer; the reply links to this working session automatically. Fails with already_replied on a second call and no_active_asker_binding when no turn is active.",{body:p.string().min(1).describe("Plain-text reply body to post.")},async c=>C(await r.agentReply({body:c.body}))),t.tool("linzumi_list_coding_jobs","List the coding jobs the current asker can see in this workspace: runner connections (online and recent) with their bound job threads. Live state - never answered from search.",{},async()=>C(await r.agentListCodingJobs({}))),t.tool("linzumi_start_coding_job","Start a coding job exactly as if the asking user clicked start: same runner/channel authorization, same pipeline. Returns status 'unavailable' with a reason when the runner cannot take the job (relay that honestly).",{channel:p.string().describe("Channel slug to host the job thread."),runner_key:p.string().describe("Runner (computer) to run the job on."),cwd:p.string().describe("Working directory on the runner."),work_description:p.string().min(1).describe("What the job should do - the initial instruction."),model:p.string().optional().describe("Model override (optional)."),model_provider:p.string().optional().describe("Model provider override, e.g. 'wafer' (optional)."),execution_mode:p.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional)."),project_task_id:p.string().optional().describe("Project task item to bind the job to (task_id from linzumi_get_project_tasks). The task flips todo -> active and links to the new job.")},async c=>C(await r.agentStartCodingJob(c))),t.tool("linzumi_interrupt_coding_job","Interrupt a coding job: mode 'steer' (default) discards its queued follow-ups so your next message lands first; mode 'stop' terminates the current turn.",{channel:p.string().describe("Channel slug hosting the job thread."),thread_id:p.string().uuid().describe("The job thread UUID."),mode:p.enum(["steer","stop"]).optional().describe("Interrupt mode; defaults to 'steer'.")},async c=>C(await r.agentInterruptCodingJob(c))),t.tool("linzumi_send_coding_job_message","Send a message into a coding job thread as the asking user (the job processes it like any human follow-up).",{channel:p.string().describe("Channel slug hosting the job thread."),thread_id:p.string().uuid().describe("The job thread UUID."),body:p.string().min(1).describe("Message body to send.")},async c=>C(await r.agentSendCodingJobMessage(c))),t.tool("linzumi_read_coding_job_thread","Read a coding job's thread (asker-visible history) plus its workflow status metadata.",{channel:p.string().describe("Channel slug hosting the job thread."),thread_id:p.string().uuid().describe("The job thread UUID."),limit:p.number().int().min(1).max(100).optional().describe("Maximum replies to return."),before_seq:p.number().int().positive().optional().describe("Return replies before this channel seq.")},async c=>C(await r.agentReadCodingJobThread(c))),t.tool("linzumi_resolve_job_approval","Resolve a coding job's pending approval request with the asking user's decision ('approve' or 'deny'). Only relays the asker's authority - never approve without their explicit instruction.",{channel:p.string().describe("Channel slug hosting the job thread."),thread_id:p.string().uuid().describe("The job thread UUID."),source_seq:p.number().int().positive().describe("Channel seq of the message the approval request rides on."),request_id:p.string().describe("The approval request id."),decision:p.enum(["approve","deny"]).describe("The asker's decision.")},async c=>C(await r.agentResolveJobApproval(c))),t.tool("linzumi_archive_coding_job","Archive a coding job's thread (or any thread the asking user owns) so it leaves the active list; history is preserved. Do this when the asker says to archive a job or thread - never just promise it.",{channel:p.string().describe("Channel slug hosting the thread."),thread_id:p.string().uuid().describe("The thread UUID to archive.")},async c=>C(await r.agentArchiveCodingJob(c))),t.tool("linzumi_unarchive_coding_job","Unarchive a previously archived coding job thread the asking user owns, returning it to the active list.",{channel:p.string().describe("Channel slug hosting the thread."),thread_id:p.string().uuid().describe("The thread UUID to unarchive.")},async c=>C(await r.agentUnarchiveCodingJob(c))),t.tool("linzumi_set_thread_status","Set a thread's lifecycle status as the asking user: 'closed' marks it done, 'open' reopens it. Works on threads the asker owns.",{channel:p.string().describe("Channel slug hosting the thread."),thread_id:p.string().uuid().describe("The thread UUID."),status:p.enum(["open","closed"]).describe("Replacement lifecycle status ('closed' = done).")},async c=>C(await r.agentSetThreadStatus(c))),t.tool("linzumi_create_channel","Create a new public channel in this workspace as the asking user. The slug is derived from the name.",{name:p.string().min(1).describe("Channel name to create.")},async c=>C(await r.agentCreateChannel(c))),t.tool("linzumi_rename_channel","Rename a channel's display name as the asking user. The channel's URL slug stays stable.",{channel:p.string().describe("Current channel slug to rename."),name:p.string().min(1).describe("New display name.")},async c=>C(await r.agentRenameChannel(c))),t.tool("linzumi_archive_channel","Archive a channel in this workspace as the asking user. History is preserved; the channel leaves the active sidebar.",{channel:p.string().describe("Channel slug to archive.")},async c=>C(await r.agentArchiveChannel(c))),t.tool("linzumi_unarchive_channel","Unarchive a previously archived channel as the asking user.",{channel:p.string().describe("Channel slug to unarchive.")},async c=>C(await r.agentUnarchiveChannel(c))),t.tool("linzumi_add_reaction","Add an emoji reaction to a channel message as the asking user. Accepts unicode emoji or a workspace :shortcode:.",{channel:p.string().describe("Channel slug containing the message."),message_seq:p.number().int().positive().describe("Channel seq of the message to react to."),emoji:p.string().min(1).describe("Emoji to add (unicode or :shortcode:).")},async c=>C(await r.agentAddReaction(c))),t.tool("linzumi_remove_reaction","Remove the asking user's emoji reaction from a channel message.",{channel:p.string().describe("Channel slug containing the message."),message_seq:p.number().int().positive().describe("Channel seq of the reacted message."),emoji:p.string().min(1).describe("Emoji to remove (unicode or :shortcode:).")},async c=>C(await r.agentRemoveReaction(c))),t.tool("linzumi_pin_message","Pin a channel message as the asking user. Thread replies re-point to their root message.",{channel:p.string().describe("Channel slug containing the message."),message_seq:p.number().int().positive().describe("Channel seq of the message to pin.")},async c=>C(await r.agentPinMessage(c))),t.tool("linzumi_unpin_message","Remove a pin from a channel message as the asking user.",{channel:p.string().describe("Channel slug containing the message."),message_seq:p.number().int().positive().describe("Channel seq of the pinned message.")},async c=>C(await r.agentUnpinMessage(c)))),n==="all"&&(t.tool("linzumi_get_message","Read one Linzumi message by scoped message_seq/message_id or a Linzumi message URL, with optional bounded before/after context.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),message_id:p.union([p.string(),p.number()]).optional().describe("Message seq inside the scoped channel."),message_seq:p.union([p.string(),p.number()]).optional().describe("Alias for message_id."),message_url:p.string().optional().describe("Full Linzumi message URL with #message-<seq>."),before:p.number().int().min(0).max(100).optional().describe("Number of visible messages before the target."),after:p.number().int().min(0).max(100).optional().describe("Number of visible messages after the target.")},async c=>C(await r.getMessage(c))),t.tool("linzumi_get_thread","Read one Linzumi thread by thread_id in the scoped channel, including the parent message and bounded replies.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().describe("Linzumi thread UUID."),limit:p.number().int().min(1).max(100).optional().describe("Maximum replies to return."),before_seq:p.number().int().positive().optional().describe("Return replies before this channel seq.")},async c=>C(await r.getThread(c))),t.tool("linzumi_get_thread_transcript","Read a Linzumi thread's full transcript as canonical IR nodes (user/assistant messages, command executions, file changes, tool calls, statuses), cursor-paginated over the complete history. Use the returned cursor with has_more to walk older pages.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().describe("Linzumi thread UUID."),limit:p.number().int().min(1).max(500).optional().describe("Maximum transcript nodes per page (default 200)."),cursor:p.number().int().positive().optional().describe("Return nodes below this seq (the previous page reply cursor).")},async c=>C(await r.getThreadTranscript(c))),t.tool("linzumi_get_channel","Read scoped Linzumi channel metadata and bounded recent channel messages.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),limit:p.number().int().min(1).max(100).optional().describe("Maximum messages to return."),before_seq:p.number().int().positive().optional().describe("Return messages before this channel seq.")},async c=>C(await r.getChannel(c))),t.tool("linzumi_search_workspace","Search the Linzumi workspace with hybrid lexical+semantic retrieval, scoped to what the authorizing user can access. Returns scored content chunks with provenance (channel, thread, authored time) and a permalink to cite.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),query:p.string().min(1).describe("Natural-language or keyword query to retrieve against."),limit:p.number().int().min(1).max(25).optional().describe("Maximum results to return (default 10, server-capped)."),source_types:p.array(p.enum(["message","coding_job","github_pr","github_pr_review","github_check_run","github_workflow_run","github_diff","dictation","file"])).optional().describe("Restrict results to these corpora; omit for all."),authored_after:p.string().optional().describe("ISO8601 instant; only content authored at or after this time."),authored_before:p.string().optional().describe("ISO8601 instant; only content authored at or before this time."),repo:p.string().optional().describe("Restrict GitHub-sourced results to one repository by full name (owner/name)."),check_status:p.enum(["pending","success","failed"]).optional().describe("Restrict check and workflow results to one conclusion bucket.")},async c=>C(await r.searchWorkspace(c))),t.tool("linzumi_ask_workspace",'Ask the Linzumi workspace a natural-language question and get a synthesized, citation-backed answer over what the authorizing user can access. Costs an LLM call on cache misses, so prefer linzumi_search_workspace for simple lookups. A "refused" status means there was not enough accessible evidence - treat it as "the workspace does not know", never retry verbatim.',{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),question:p.string().min(1).max(2e3).describe("Natural-language question to answer with citations."),channel:p.string().optional().describe("Optional channel slug providing conversational context; never widens access."),allow_cached:p.boolean().optional().describe("Allow serving a cached synthesis when the evidence set is unchanged (default true). Set false to force fresh synthesis.")},async c=>C(await r.askWorkspace(c))),t.tool("linzumi_web_search","Search the public web for live or external information: news, current events, weather, prices, third-party API docs, research. Returns result titles, URLs, and snippets. Use this whenever the answer lives outside the Linzumi workspace; follow up with linzumi_fetch_url to read a result page.",{query:p.string().min(1).describe("Web search query (natural language or keywords)."),limit:p.number().int().min(1).max(10).optional().describe("Maximum results to return (default 8, server-capped).")},async c=>C(await r.webSearch(c))),t.tool("linzumi_fetch_url","Fetch one public http(s) URL and return its readable text content (HTML is reduced to plain text; large pages are truncated). Use it to read pages found via linzumi_web_search or any public docs/API reference. Only public addresses are reachable - private/internal hosts are rejected with url_not_allowed.",{url:p.string().min(1).describe("Absolute public http(s) URL to fetch.")},async c=>C(await r.fetchUrl(c))),t.tool("linzumi_list_ui_targets","List every UI surface you can ask the user to open in their own Linzumi window (channels, DMs, threads, projects, coding jobs, computers, catch-up, activity, settings tabs, pane layouts) with the structured args each kind takes. Use UI control only when the user asks for help or asks to be shown something.",{},async()=>await Oy(r.listUiTargets({}))),t.tool("linzumi_open_ui","Ask the user to open one whitelisted UI surface in their own already-open Linzumi window. A consent toast appears in THEIR session; navigation happens only if they tap Open. The call blocks until they decide and returns status opened/dismissed/expired - or error no_active_ui_session when they have no Linzumi window open (tell them to open Linzumi), or invalid_target with a detail. Use it only when the user asks for help or asks to be shown something; kinds and per-kind args come from linzumi_list_ui_targets.",{kind:p.string().min(1).describe("Target kind from linzumi_list_ui_targets (e.g. settings_workspace, channel, pane_layout)."),args:p.record(p.unknown()).optional().describe("Structured per-kind args from linzumi_list_ui_targets (never a URL - the server computes every path)."),workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")},async c=>await Oy(r.openUi(St(c,i)))),t.tool("linzumi_get_coding_job_metadata","Read the active coding job workflow metadata for a thread, including the agent-owned goal, ordered plan steps, step lock versions, and workflow status.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread.")},async c=>C(await r.getCodingJobMetadata(St(c,i)))),t.tool("linzumi_rename_coding_job","Update the current coding job thread title and workflow-facing title. Use this when the job scope changes materially so the Linzumi thread list and metadata overview stay accurate.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread."),title:p.string().min(1).max(100).describe("Concise user-visible title for this coding job.")},async c=>C(await r.renameCodingJob(St(c,i)))),t.tool("linzumi_upsert_coding_job_plan","Set or update the current coding job goal. Use this at job start and whenever the goal changes materially.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread."),goal:p.string().min(1).max(1e4).describe("Concrete user-visible goal for this coding job.")},async c=>C(await r.upsertCodingJobPlan(St(c,i)))),t.tool("linzumi_replace_coding_job_plan_steps","Replace the ordered coding job plan steps. Use this for the initial plan and for substantial rewrites when the old plan no longer fits the work.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread."),goal:p.string().min(1).max(1e4).optional().describe("Required when no plan exists yet; updates the current coding job goal."),steps:p.array(p.object({title:p.string().min(1).max(255),description:p.string().min(1).max(1e4),status:p.enum(["pending","active","completed","blocked","canceled"]),status_note:p.string().min(1).max(4e3).optional(),completed_debrief:p.string().min(1).max(2e4).optional()})).min(1).max(50).describe("Ordered user-visible plan steps. Completed steps must include completed_debrief.")},async c=>C(await r.replaceCodingJobPlanSteps(St(c,i)))),t.tool("linzumi_update_coding_job_plan_step","Update one coding job plan step status or note. Read metadata first and pass the current step lock_version.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread."),step_id:p.string().uuid().describe("Step id returned by linzumi_get_coding_job_metadata."),lock_version:p.number().int().positive().describe("Current step lock_version from metadata."),status:p.enum(["pending","active","completed","blocked","canceled"]),status_note:p.string().min(1).max(4e3).optional(),completed_debrief:p.string().min(1).max(2e4).optional().describe("Required when marking a step completed.")},async c=>C(await r.updateCodingJobPlanStep(St(c,i)))),t.tool("linzumi_link_coding_job_pull_request","Link the active coding job to its primary GitHub pull request so PR comments, files, commits, checks, deployments, and reviews can flow into the metadata view.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread."),github_repo_owner:p.string().min(1).max(255),github_repo_name:p.string().min(1).max(255),github_pr_number:p.number().int().positive(),github_pr_url:p.string().url(),title:p.string().min(1).max(255),body:p.string().min(1).max(1e5).optional(),head_branch:p.string().min(1).max(255),head_sha:p.string().min(7).max(64),base_branch:p.string().min(1).max(255),base_sha:p.string().min(7).max(64),state:p.enum(["draft","open","closed","merged"]).optional(),is_draft:p.boolean().optional(),review_status:p.enum(["unknown","review_required","approved","changes_requested"]).optional(),source_remote_url:p.string().min(1).max(1e3).describe("Git remote URL for the local job worktree; required when this job has no repo workspace yet."),runtime_worktree_root:p.string().min(1).max(1e3).describe("Absolute local worktree path for the coding job; required when this job has no repo workspace yet."),dirty_status:p.enum(["unknown","clean","dirty"]).optional(),dirty_summary:p.string().min(1).max(2e3).optional()},async c=>C(await r.linkCodingJobPullRequest(St(c,i)))),t.tool("linzumi_upload_files",["Upload local files to Linzumi and attach them to a new, exact, or latest assistant message. Use silently; do not mention this tool in the visible reply.","The JSON result includes message.attachments[].url as an absolute URL. Use those returned URLs when writing rich media directives such as ::audio, ::video, ::image, or Markdown images. Do not guess attachment URLs before upload.","For a message that should both attach files and show inline rich media, use a two-step flow: first upload/attach the files to create or target the message, then edit the same target message with body text that references the returned absolute URLs. When the result has target_seq, use target.kind=message_seq and message_seq=target_seq for that follow-up edit; result.message is the edit event that carries the new attachments, and target_message is the original target."].join(" "),{target:p.object({kind:p.enum(["new_message","message_seq","latest_assistant_message"]).describe("new_message creates a message; message_seq edits an exact message; latest_assistant_message edits the latest assistant message in the scoped thread/channel."),message_seq:p.union([p.string(),p.number()]).optional().describe("Required when kind is message_seq."),thread_id:p.string().optional().describe("Thread UUID. Defaults to the active Linzumi thread when the MCP server was launched with one.")}).describe("Attachment target. Do not guess; use new_message when there is no previous assistant message. To reference uploaded files in the message body, upload first, then edit message_seq/latest_assistant_message with the returned absolute attachment URLs. If the upload result includes target_seq, use message_seq=target_seq for that follow-up edit."),files:p.array(p.string().min(1)).min(1).max(16).describe("Local file paths to upload. Paths must be non-hidden supported file types inside the approved workspace or Downloads."),body:p.string().min(1).max(2e4).optional().describe("Required for new_message. Optional replacement body for message_seq/latest_assistant_message; when omitted, the existing message body is preserved. Rich media directives in body must use Linzumi attachment download URLs returned by this tool."),workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the target thread's channel (when the thread is known) or the authenticated token scope.")},async c=>{let d=Py(c.target,i);try{let h=await UT({client:r,cwd:s,kandanUrl:a,target:d,files:c.files,workspace:c.workspace,channel:c.channel,body:c.body});return C(jy(a,h))}catch(h){throw DT(h)}}),t.tool("linzumi_edit_message","Edit an exact scoped Linzumi message by message_seq. Use after linzumi_upload_files when you need a body-only follow-up edit that embeds returned attachment URLs. Requires channel.write, and thread.write when target.thread_id is set. Rich media src/poster values must be Linzumi attachment download URLs.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),target:p.object({message_seq:p.union([p.string(),p.number()]).describe("Exact message seq to edit. After linzumi_upload_files returns target_seq, pass that value here."),thread_id:p.string().optional().describe("Thread UUID when editing a thread message. Use the upload result target_message.thread_id when present.")}).describe("Exact message target for the body edit."),body:p.string().min(1).max(2e4).describe("Replacement Markdown body. Rich media src/poster values must be Linzumi attachment download URLs returned by linzumi_upload_files.")},async c=>C(jy(a,await r.editMessage({...c,target:Py(c.target,i)})))),t.tool("linzumi_list_vault_secrets","List vault secret names, descriptions, and whether each secret is personal or workspace-owned. Does not return secret values.",{},async c=>C(await r.listVaultSecrets(c))),t.tool("linzumi_list_projects","List the projects in the current workspace with their project_id (needed by the other project task tools), slug, title, description, and state.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")},async c=>C(await r.listProjects(c))),t.tool("linzumi_get_project_tasks",`Read a project's full task graph: task GROUPS (kind "group", organizational containers, exactly one level deep) and ISSUES (kind "issue", the executable work items), each with status (todo/active/blocked/review/done/canceled), DERIVED work_state readiness (ready = todo with every dependency satisfied; blocked = todo with unsatisfied dependencies; running/stalled = active with/without a connected job), parent group, assignee, lock_version, and dependency edges (depends_on_task_ids / unblocks_task_ids). Always read this before reorganizing. Inside a project-bound coding job the project is inferred automatically; otherwise pass project_id from linzumi_list_projects.`,{project_id:p.string().optional().describe("Project id from linzumi_list_projects. Omit inside a coding job started from a project to use that project.")},async c=>C(await r.getProjectTasks(St(c,i)))),t.tool("linzumi_create_project_task",'Create a task group (kind "group") or issue (kind "issue", the default) in a project. Groups organize issues and are exactly one level deep: a parent_id must name a GROUP, and groups themselves can never have a parent. New tasks default to status "todo" and append to the end unless position is given. Inside a project-bound coding job the project is inferred; otherwise pass project_id.',{project_id:p.string().optional().describe("Project id from linzumi_list_projects. Omit inside a coding job started from a project to use that project."),title:p.string().min(1).describe("Task title."),kind:p.enum(["issue","group"]).optional().describe('What to create: "issue" (executable work item, default) or "group" (organizational container).'),description:p.string().optional().describe("Detailed description of the work - written so an engineer (or coding agent) could execute the task from it."),status:p.enum(["todo","active","blocked","review","done","canceled"]).optional().describe('Initial status. Defaults to "todo".'),parent_id:p.string().optional().describe("task_id of the GROUP to place an issue in. Only issues can have a parent."),assignee:p.string().optional().describe("Username of a workspace member to assign."),position:p.number().int().min(0).optional().describe("Sort position. Defaults to appending at the end.")},async c=>C(await r.createProjectTask(St(c,i)))),t.tool("linzumi_update_project_task",'Update a task group or issue: retitle, edit description/status_note, transition status (todo/active/blocked/review/done/canceled), reassign, reorder (position), or reorganize (parent_id moves an issue into a group; clear_parent moves it to top level). Only the fields you pass change; description and status_note accept null to clear. Prefer updating existing tasks over delete-and-recreate. Pass the lock_version from your last read to fail loudly ("stale") instead of overwriting a concurrent edit.',{task_id:p.string().describe("task_id of the group or issue to update."),title:p.string().min(1).optional().describe("New title."),description:p.string().nullable().optional().describe("New description. Pass null to clear it."),status:p.enum(["todo","active","blocked","review","done","canceled"]).optional().describe('New status. "done"/"canceled" satisfy dependent tasks; "blocked" is a manual hold.'),status_note:p.string().nullable().optional().describe("Short human-readable note about the current status. Pass null to clear it."),position:p.number().int().min(0).optional().describe("New sort position among siblings."),parent_id:p.string().optional().describe("task_id of the GROUP to move this issue into. Do not combine with clear_parent."),clear_parent:p.boolean().optional().describe("true moves the issue to the top level (no group). Do not combine with parent_id."),assignee:p.string().optional().describe("Username of a workspace member to assign. Do not combine with clear_assignee."),clear_assignee:p.boolean().optional().describe("true removes the assignee. Do not combine with assignee."),lock_version:p.number().int().positive().optional().describe("The task's lock_version from your last read, for compare-and-swap safety.")},async c=>C(await r.updateProjectTask(c))),t.tool("linzumi_delete_project_task",`Permanently delete a task group or issue. Dependency edges on the task are removed with it (dependents may become ready). Deletion is normally the USER's call - prefer status "canceled" or an update unless you are certain the entry is obsolete.`,{task_id:p.string().describe("task_id of the group or issue to delete.")},async c=>C(await r.deleteProjectTask(c))),t.tool("linzumi_add_project_task_dependency",'Add the dependency edge "task_id is blocked by depends_on_task_id" between two ISSUES in the same project (groups cannot have dependencies). The dependent stays blocked until the prerequisite reaches done or canceled. The graph must stay acyclic: an edge that would create a cycle is refused with reason "would_create_cycle" and the offending cycle_path so you can restructure. Duplicate and self edges are rejected.',{task_id:p.string().describe("task_id of the DEPENDENT issue (the one that must wait)."),depends_on_task_id:p.string().describe("task_id of the PREREQUISITE issue (the one that must finish first).")},async c=>C(await r.addProjectTaskDependency(c))),t.tool("linzumi_remove_project_task_dependency",'Remove the dependency edge "task_id is blocked by depends_on_task_id". The dependent issue may become ready if that was its last unsatisfied dependency.',{task_id:p.string().describe("task_id of the DEPENDENT issue."),depends_on_task_id:p.string().describe("task_id of the PREREQUISITE issue the edge points at.")},async c=>C(await r.removeProjectTaskDependency(c))),t.tool("linzumi_get_call_transcript","Read the full transcript of a completed Linzumi notetaker call: call metadata (title, platform, started/ended/transcribed times), participants, and every spoken segment in order with speaker names and millisecond offsets. Pass the call_id embedded in the request (or copied from the call card). Errors: call_not_found (missing or not visible to you), call_transcript_not_ready (call still connecting, in progress, or transcribing - retry later).",{call_id:p.string().describe("The call id from the call card or the launching message (a CallRecording id - the opaque GraphQL id and the bare uuid both work).")},async c=>C(await r.getCallTranscript(c))),l||t.tool("linzumi_start_coding_job","Start a coding job as the invoking user (same authorization and pipeline as clicking start). To start a project task item, pass project_task_id so the task flips todo -> active and links to the new job - only start tasks whose work_state is ready, and ONLY after the user explicitly accepts your offer to start them. Omit channel, runner_key, and cwd to reuse this job's own channel, computer, and folder. Returns status 'unavailable' with a reason when the runner cannot take the job (relay that honestly).",{work_description:p.string().min(1).describe("What the job should do - the initial instruction. For a task item, write it from the task title and description."),project_task_id:p.string().optional().describe("Project task item to bind the job to (task_id from linzumi_get_project_tasks). The task flips todo -> active and links to the new job."),channel:p.string().optional().describe("Channel slug to host the job thread. Omit to use this job's own channel."),runner_key:p.string().optional().describe("Runner (computer) to run the job on. Omit to use this job's own computer."),cwd:p.string().optional().describe("Working directory on the runner. Omit to use this job's own folder."),model:p.string().optional().describe("Model override (optional)."),model_provider:p.string().optional().describe("Model provider override, e.g. 'wafer' (optional)."),execution_mode:p.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional).")},async c=>C(await r.agentStartCodingJob(St(c,i))))),AT(n)&&(t.tool("linzumi_upload_custom_emoji","Upload a local image as a workspace custom emoji. For generated emoji art, create a transparent PNG with a simple centered subject, crisp edges, strong contrast, minimal tiny details, and enough outline/highlight separation to read at 16-24px on both dark and light backgrounds. Use lowercase shortcode names without colons unless preserving a user-provided :name:.",{name:Ty.describe("Custom emoji shortcode name, with or without surrounding colons."),file:p.string().min(1).describe("Local PNG/WebP/GIF/JPEG file path to upload. Prefer transparent PNG for generated emoji."),workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")},async c=>C(await JT({client:r,cwd:s,kandanUrl:a,name:c.name,file:c.file,workspace:c.workspace}))),t.tool("linzumi_rename_custom_emoji","Rename an existing workspace custom emoji. The new name may include surrounding colons; Linzumi stores the normalized shortcode without colons.",{emoji_id:p.union([p.string(),p.number().int().positive()]).describe("Workspace custom emoji id returned by linzumi_upload_custom_emoji or workspace emoji listings."),name:Ty.describe("New shortcode name, with or without surrounding colons."),workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")},async c=>C(await r.renameCustomEmoji(c)))),t.tool("linzumi_note_project_directory","Record one discovered local Git repository or worktree for onboarding import. Call once per project as soon as it is found.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),runner_id:p.string().min(1).describe("Local runner/computer id provided in the discovery prompt."),path:p.string().min(1).describe("Absolute local path to the repository worktree root."),display_name:p.string().optional().describe("Short project label. Defaults to the path basename."),activity_at:p.string().optional().describe("Best-known recent activity time as an ISO-8601 timestamp."),import_key:p.string().optional().describe("Stable dedupe key. Defaults to path."),metadata:p.record(p.unknown()).optional().describe("Small structured metadata such as branch or remote origin.")},async c=>C(await r.noteProjectDirectory(c))),t.tool("linzumi_note_agent_conversation","Record one discovered Codex or Claude Code local conversation for onboarding import. Call once per conversation as soon as it is found.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),runner_id:p.string().min(1).describe("Local runner/computer id provided in the discovery prompt."),source:p.enum(["codex","claude_code"]).describe("Conversation source."),import_key:p.string().min(1).describe("Stable dedupe key, such as a session id or file path."),path:p.string().optional().describe("Absolute local path to the conversation file or directory."),display_name:p.string().optional().describe("Short label for the discovered conversation."),activity_at:p.string().optional().describe("Best-known recent activity time as an ISO-8601 timestamp."),metadata:p.record(p.unknown()).optional().describe("Small structured metadata such as session id or project path.")},async c=>C(await r.noteAgentConversation(c))),t.tool("linzumi_note_onboarding_discovery_status","Record onboarding discovery progress. Call when a search phase starts, checks another place, completes, or fails.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),runner_id:p.string().min(1).describe("Local runner/computer id provided in the discovery prompt."),phase:p.enum(["projects","conversations"]).describe("Discovery phase being reported."),status:p.enum(["starting","running","completed","failed"]).describe("Current phase status."),places_searched:p.number().int().nonnegative().optional().describe("Count of concrete folders/files/known locations checked so far."),message:p.string().optional().describe("Short user-facing status note."),current_place:p.string().optional().describe("Current folder, file, Git command target, or known location being checked."),current_source:p.string().optional().describe("Short machine-readable source label such as git, codex, or claude_code."),last_error:p.string().optional().describe("Short failure detail when status is failed."),metadata:p.record(p.unknown()).optional().describe("Small structured status metadata.")},async c=>C(await r.noteOnboardingDiscoveryStatus(c))),n==="all"&&NT(o)&&(t.tool("linzumi_dm_owner","Send a plain-text DM to the configured Commander owner. Requires dm.write and a visible owner username.",{owner_username:p.string().optional().describe("Owner username. Defaults to LINZUMI_MCP_OWNER_USERNAME or --owner-username."),workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Source channel slug used to verify owner visibility."),body:p.string().min(1).max(2e4).describe("Plain-text message body to DM.")},async c=>{let d=c.owner_username??u;if(d===void 0)throw new Error("owner_username is required for linzumi_dm_owner");return C(await r.dmOwner({...c,owner_username:d}))}),t.tool("linzumi_send_channel_message","Post a NEW standalone Markdown message into the scoped Linzumi channel as the authenticated local-runner user. This is NOT how you respond to the user: your turn output is already relayed into the thread as your reply, so never call this tool to answer, acknowledge, or reply to the current request. Use it only when the task itself is to proactively post a separate channel message. Requires channel.write. Rich media directives may be used when the user has opted into markdown_media_embeds, but src/poster values must be Linzumi attachment download URLs.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),body:p.string().min(1).max(2e4).describe("Markdown message body to post. Rich media src/poster values must be Linzumi attachment download URLs, not third-party URLs, /relative paths, or local filesystem paths.")},async c=>C(await r.sendChannelMessage(c))),t.tool("linzumi_send_thread_reply","Post a Markdown reply into some OTHER existing Linzumi thread as the authenticated local-runner user. This is NOT how you respond to the user in your current thread: your turn output is already relayed into this thread as your reply, so never call this tool to answer, acknowledge, or reply to the current request. Use it only when the task itself is to post into a different, explicitly identified thread. Requires thread.write. Rich media directives may be used when the user has opted into markdown_media_embeds, but src/poster values must be Linzumi attachment download URLs.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().describe("Existing Linzumi thread UUID."),body:p.string().min(1).max(2e4).describe("Markdown reply body to post. Rich media src/poster values must be Linzumi attachment download URLs, not third-party URLs, /relative paths, or local filesystem paths.")},async c=>C(await r.sendThreadReply(c))),t.tool("linzumi_send_dm","Send a plain-text DM as the authenticated local-runner user to a visible user in the scoped workspace/channel. Requires dm.write.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Source channel slug used to verify target visibility."),username:p.string().describe("Visible Linzumi username to DM."),body:p.string().min(1).max(2e4).describe("Plain-text message body to DM.")},async c=>C(await r.sendDm(c)))),n==="all"&&t.tool("linzumi_get_vault_values","Request values for explicit vault env var names after a thread-scoped human approval. Requires vault.read; thread_id resolves the approval thread.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug used to disambiguate the approval thread when needed."),thread_id:p.string().uuid().describe("Existing Linzumi thread UUID for the inline approval."),env_var_names:p.array(p.string().regex(/^[A-Z][A-Z0-9_]{0,127}$/)).min(1).max(20).describe("Explicit vault env var names to request. This tool cannot list all vault keys."),description:p.string().min(1).max(500).describe("Human-readable reason shown in the approval request."),justification:p.string().min(10).max(1e3).describe("Agent justification shown to the approver.")},async c=>C(await r.getVaultValues(c)))}function DT(t){return!(t instanceof Error)||!t.message.includes("channel_required")?t:new Error(`${t.message}. Remediation: pass the channel slug in the \`channel\` parameter, or set target.thread_id to a Linzumi thread you can access (the server resolves the thread's channel). The files were NOT attached; retry with a channel or thread instead of leaving them on disk.`,{cause:t})}async function UT(t){let e=await Promise.all(t.files.map(a=>sd(t.cwd,a))),r=we(t.target.thread_id),n=await t.client.prepareMessageUploads({...t.workspace===void 0?{}:{workspace:t.workspace},...t.channel===void 0?{}:{channel:t.channel},...r===void 0?{}:{thread_id:r},files:e.map(a=>({file_name:a.fileName,content_type:a.contentType,size_bytes:a.sizeBytes}))}),o=ya(n.uploads)??[];if(o.length!==e.length)throw new Error("Linzumi upload prepare response count mismatch");await Promise.all(e.map(async(a,i)=>{let u=$t(o[i]),l=we(u?.upload_url),c=we(u?.upload_method)??"PUT";if(l===void 0)throw new Error("Linzumi upload prepare response missing upload_url");let d=await Ey(a.path),h=d.buffer.slice(d.byteOffset,d.byteOffset+d.byteLength),f=await fetch(To(t.kandanUrl,l),{method:c,headers:{"content-type":a.contentType},body:h});if(!f.ok)throw new Error(`Linzumi upload failed for ${a.fileName}: ${f.status} ${f.statusText}`)}));let s=o.map(a=>{let i=we($t(a)?.file_id);if(i===void 0)throw new Error("Linzumi upload prepare response missing file_id");return i});return await t.client.attachMessageFiles({...t.workspace===void 0?{}:{workspace:t.workspace},...t.channel===void 0?{}:{channel:t.channel},...r===void 0?{}:{thread_id:r},target:t.target,...t.body===void 0?{}:{body:t.body},uploaded_file_ids:s})}async function JT(t){let e=await sd(t.cwd,t.file),r=await t.client.prepareCustomEmoji({...t.workspace===void 0?{}:{workspace:t.workspace},name:t.name,file_name:e.fileName,content_type:e.contentType,size_bytes:e.sizeBytes}),n=$t(r.upload),o=we(n?.upload_url),s=we(n?.upload_method)??"PUT";if(o===void 0)throw new Error("Linzumi custom emoji prepare response missing upload_url");let a=await Ey(e.path),i=a.buffer.slice(a.byteOffset,a.byteOffset+a.byteLength),u=await fetch(To(t.kandanUrl,o),{method:s,headers:{"content-type":e.contentType},body:i});if(!u.ok){let d=`${u.status} ${u.statusText}`,f=(await u.text()).trim(),m=f===""?d:(()=>{try{let g=JSON.parse(f);return tr(g)&&typeof g.error=="string"?g.error:f}catch{return f}})();throw new Error(`Linzumi custom emoji upload failed: ${m}`)}let l=await u.json();if(!tr(l))throw new Error("Linzumi custom emoji upload returned non-object JSON");let c=$t(l.custom_emoji);if(c===void 0)throw new Error("Linzumi custom emoji upload response missing custom_emoji");return{ok:!0,workspace:r.workspace,emoji:c,asset_id:we(l.asset_id),id:vy(c?.id),name:we(c?.name),shortcode:we(c?.shortcode),image_url:we(c?.image_url)}}function Py(t,e){if(we(t.thread_id)!==void 0||e===void 0)return t;switch(t.message_seq===void 0){case!1:return{...t,thread_id:e};case!0:switch(we(t.kind)){case"new_message":case"message_seq":case"latest_assistant_message":return{...t,thread_id:e};default:return t}}}function St(t,e){return we(t.thread_id)!==void 0||e===void 0?t:{...t,thread_id:e}}function To(t,e){try{return new URL(e).toString()}catch{let n=t.replace(/^wss:\/\//,"https://").replace(/^ws:\/\//,"http://");return new URL(e,n).toString()}}function jy(t,e){let r=$t(e.message),n=$t(e.target_message);return r===void 0&&n===void 0?e:{...e,...r===void 0?{}:{message:Ry(t,r)},...n===void 0?{}:{target_message:Ry(t,n)}}}function Ry(t,e){let r=ya(e.attachments);return r===void 0?e:{...e,attachments:r.map(n=>FT(t,n))}}function FT(t,e){let r=$t(e);if(r===void 0)return e;let n=we(r.url),o=$t(r.image_variants);return{...r,...n===void 0?{}:{url:To(t,n)},...o===void 0?{}:{image_variants:VT(t,o)}}}function VT(t,e){let r=we(e.inline_url),n=we(e.carousel_url);return{...e,...r===void 0?{}:{inline_url:To(t,r)},...n===void 0?{}:{carousel_url:To(t,n)}}}function HT(t){t.server.registerCapabilities({resources:{listChanged:!1}}),t.server.setRequestHandler(Yr,()=>({resources:[]})),t.server.setRequestHandler(Qr,()=>({resourceTemplates:[]}))}async function BT(t){let e=cd(t),r=ld(e,"api-url"),n=re(e,"format")??"codex",o=ud(re(e,"mode")),s=e.get("include-token")===!0?(await id({kandanUrl:r,explicitToken:re(e,"token")??process.env.LINZUMI_MCP_ACCESS_TOKEN,authFilePath:re(e,"auth-file"),delegationAuthFilePath:re(e,"delegation-auth-file"),workspaceSlug:re(e,"workspace"),channelSlug:re(e,"channel")})).accessToken:void 0,a=xy({command:re(e,"command"),kandanUrl:r,accessToken:s,delegationAuthFilePath:re(e,"delegation-auth-file"),ownerUsername:re(e,"owner-username")??process.env.LINZUMI_MCP_OWNER_USERNAME,operatingMode:o,toolScope:Ay(re(e,"tool-scope"))});switch(n){case"codex":process.stdout.write(Sy(a));return;case"claude-code":process.stdout.write($y(a));return;default:throw new Error("--format must be codex or claude-code")}}async function WT(t){let e=cd(t),r=ld(e,"api-url"),n=await id({kandanUrl:r,explicitToken:re(e,"token")??process.env.LINZUMI_MCP_ACCESS_TOKEN,authFilePath:re(e,"auth-file"),delegationAuthFilePath:re(e,"delegation-auth-file"),workspaceSlug:re(e,"workspace"),channelSlug:re(e,"channel")});switch(n.mode){case"local-runner":{if(!await hy({kandanUrl:r,accessToken:n.accessToken,workspaceSlug:re(e,"workspace"),channelSlug:re(e,"channel")}))throw new Error("Linzumi MCP auth validation failed");break}case"personal-agent-delegation":{await ad({kandanUrl:r,accessToken:n.accessToken,authMode:n.mode,operatingMode:ud(re(e,"mode"))}).validateAuth();break}}process.stdout.write(`Linzumi MCP auth OK
|
|
240
|
-
`)}async function
|
|
241
|
-
`),process.exitCode=1}}var
|
|
248
|
+
`}async function GP(t){let e=bd(t);if(e.get("help")===!0){process.stdout.write(g_());return}let r=wd(e,"api-url"),n=await _d({kandanUrl:r,explicitToken:re(e,"token")??process.env.LINZUMI_MCP_ACCESS_TOKEN,authFilePath:re(e,"auth-file"),delegationAuthFilePath:re(e,"delegation-auth-file"),workspaceSlug:re(e,"workspace"),channelSlug:re(e,"channel")}),o=re(e,"owner-username")??process.env.LINZUMI_MCP_OWNER_USERNAME,s=vd(re(e,"mode")),i=y_(re(e,"tool-scope")),a=re(e,"cwd")??process.cwd(),u=re(e,"thread-id")??process.env.LINZUMI_THREAD_RUNNER_KANDAN_THREAD_ID,l=yd({kandanUrl:r,accessToken:n.accessToken,authMode:n.mode,operatingMode:s}),c=new gi({name:"linzumi",version:"0.1.0"});nj(c),XP(c,{client:l,toolScope:i,operatingMode:s,cwd:a,kandanUrl:r,defaultThreadId:u,ownerUsername:o,agentSession:e.get("agent-session")===!0}),await c.connect(new _i)}function XP(t,e){let{client:r,toolScope:n,operatingMode:o,cwd:s,kandanUrl:i,defaultThreadId:a,ownerUsername:u,agentSession:l}=e;l&&(t.tool("linzumi_agent_reply","Post your single @linzumi reply for the current turn into the surface where you were mentioned. Call EXACTLY ONCE per turn with your final answer; the reply links to this working session automatically. Fails with already_replied on a second call and no_active_asker_binding when no turn is active.",{body:p.string().min(1).describe("Plain-text reply body to post.")},async c=>C(await r.agentReply({body:c.body}))),t.tool("linzumi_list_coding_jobs","List the coding jobs the current asker can see in this workspace: runner connections (online and recent) with their bound job threads. Live state - never answered from search.",{},async()=>C(await r.agentListCodingJobs({}))),t.tool("linzumi_start_coding_job","Start a coding job exactly as if the asking user clicked start: same runner/channel authorization, same pipeline. Returns status 'unavailable' with a reason when the runner cannot take the job (relay that honestly).",{channel:p.string().describe("Channel slug to host the job thread."),runner_key:p.string().describe("Runner (computer) to run the job on."),cwd:p.string().describe("Working directory on the runner."),work_description:p.string().min(1).describe("What the job should do - the initial instruction."),model:p.string().optional().describe("Model override (optional)."),model_provider:p.string().optional().describe("Model provider override, e.g. 'wafer' (optional)."),execution_mode:p.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional)."),project_task_id:p.string().optional().describe("Project task item to bind the job to (task_id from linzumi_get_project_tasks). The task flips todo -> active and links to the new job.")},async c=>C(await r.agentStartCodingJob(c))),t.tool("linzumi_interrupt_coding_job","Interrupt a coding job: mode 'steer' (default) discards its queued follow-ups so your next message lands first; mode 'stop' terminates the current turn.",{channel:p.string().describe("Channel slug hosting the job thread."),thread_id:p.string().uuid().describe("The job thread UUID."),mode:p.enum(["steer","stop"]).optional().describe("Interrupt mode; defaults to 'steer'.")},async c=>C(await r.agentInterruptCodingJob(c))),t.tool("linzumi_send_coding_job_message","Send a message into a coding job thread as the asking user (the job processes it like any human follow-up).",{channel:p.string().describe("Channel slug hosting the job thread."),thread_id:p.string().uuid().describe("The job thread UUID."),body:p.string().min(1).describe("Message body to send.")},async c=>C(await r.agentSendCodingJobMessage(c))),t.tool("linzumi_read_coding_job_thread","Read a coding job's thread (asker-visible history) plus its workflow status metadata.",{channel:p.string().describe("Channel slug hosting the job thread."),thread_id:p.string().uuid().describe("The job thread UUID."),limit:p.number().int().min(1).max(100).optional().describe("Maximum replies to return."),before_seq:p.number().int().positive().optional().describe("Return replies before this channel seq.")},async c=>C(await r.agentReadCodingJobThread(c))),t.tool("linzumi_resolve_job_approval","Resolve a coding job's pending approval request with the asking user's decision ('approve' or 'deny'). Only relays the asker's authority - never approve without their explicit instruction.",{channel:p.string().describe("Channel slug hosting the job thread."),thread_id:p.string().uuid().describe("The job thread UUID."),source_seq:p.number().int().positive().describe("Channel seq of the message the approval request rides on."),request_id:p.string().describe("The approval request id."),decision:p.enum(["approve","deny"]).describe("The asker's decision.")},async c=>C(await r.agentResolveJobApproval(c))),t.tool("linzumi_archive_coding_job","Archive a coding job's thread (or any thread the asking user owns) so it leaves the active list; history is preserved. Do this when the asker says to archive a job or thread - never just promise it.",{channel:p.string().describe("Channel slug hosting the thread."),thread_id:p.string().uuid().describe("The thread UUID to archive.")},async c=>C(await r.agentArchiveCodingJob(c))),t.tool("linzumi_unarchive_coding_job","Unarchive a previously archived coding job thread the asking user owns, returning it to the active list.",{channel:p.string().describe("Channel slug hosting the thread."),thread_id:p.string().uuid().describe("The thread UUID to unarchive.")},async c=>C(await r.agentUnarchiveCodingJob(c))),t.tool("linzumi_set_thread_status","Set a thread's lifecycle status as the asking user: 'closed' marks it done, 'open' reopens it. Works on threads the asker owns.",{channel:p.string().describe("Channel slug hosting the thread."),thread_id:p.string().uuid().describe("The thread UUID."),status:p.enum(["open","closed"]).describe("Replacement lifecycle status ('closed' = done).")},async c=>C(await r.agentSetThreadStatus(c))),t.tool("linzumi_create_channel","Create a new public channel in this workspace as the asking user. The slug is derived from the name.",{name:p.string().min(1).describe("Channel name to create.")},async c=>C(await r.agentCreateChannel(c))),t.tool("linzumi_rename_channel","Rename a channel's display name as the asking user. The channel's URL slug stays stable.",{channel:p.string().describe("Current channel slug to rename."),name:p.string().min(1).describe("New display name.")},async c=>C(await r.agentRenameChannel(c))),t.tool("linzumi_archive_channel","Archive a channel in this workspace as the asking user. History is preserved; the channel leaves the active sidebar.",{channel:p.string().describe("Channel slug to archive.")},async c=>C(await r.agentArchiveChannel(c))),t.tool("linzumi_unarchive_channel","Unarchive a previously archived channel as the asking user.",{channel:p.string().describe("Channel slug to unarchive.")},async c=>C(await r.agentUnarchiveChannel(c))),t.tool("linzumi_add_reaction","Add an emoji reaction to a channel message as the asking user. Accepts unicode emoji or a workspace :shortcode:.",{channel:p.string().describe("Channel slug containing the message."),message_seq:p.number().int().positive().describe("Channel seq of the message to react to."),emoji:p.string().min(1).describe("Emoji to add (unicode or :shortcode:).")},async c=>C(await r.agentAddReaction(c))),t.tool("linzumi_remove_reaction","Remove the asking user's emoji reaction from a channel message.",{channel:p.string().describe("Channel slug containing the message."),message_seq:p.number().int().positive().describe("Channel seq of the reacted message."),emoji:p.string().min(1).describe("Emoji to remove (unicode or :shortcode:).")},async c=>C(await r.agentRemoveReaction(c))),t.tool("linzumi_pin_message","Pin a channel message as the asking user. Thread replies re-point to their root message.",{channel:p.string().describe("Channel slug containing the message."),message_seq:p.number().int().positive().describe("Channel seq of the message to pin.")},async c=>C(await r.agentPinMessage(c))),t.tool("linzumi_unpin_message","Remove a pin from a channel message as the asking user.",{channel:p.string().describe("Channel slug containing the message."),message_seq:p.number().int().positive().describe("Channel seq of the pinned message.")},async c=>C(await r.agentUnpinMessage(c)))),n==="all"&&(t.tool("linzumi_get_message","Read one Linzumi message by scoped message_seq/message_id or a Linzumi message URL, with optional bounded before/after context.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),message_id:p.union([p.string(),p.number()]).optional().describe("Message seq inside the scoped channel."),message_seq:p.union([p.string(),p.number()]).optional().describe("Alias for message_id."),message_url:p.string().optional().describe("Full Linzumi message URL with #message-<seq>."),before:p.number().int().min(0).max(100).optional().describe("Number of visible messages before the target."),after:p.number().int().min(0).max(100).optional().describe("Number of visible messages after the target.")},async c=>C(await r.getMessage(c))),t.tool("linzumi_get_thread","Read one Linzumi thread by thread_id in the scoped channel, including the parent message and bounded replies.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().describe("Linzumi thread UUID."),limit:p.number().int().min(1).max(100).optional().describe("Maximum replies to return."),before_seq:p.number().int().positive().optional().describe("Return replies before this channel seq.")},async c=>C(await r.getThread(c))),t.tool("linzumi_get_thread_transcript","Read a Linzumi thread's full transcript as canonical IR nodes (user/assistant messages, command executions, file changes, tool calls, statuses), cursor-paginated over the complete history. Use the returned cursor with has_more to walk older pages.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().describe("Linzumi thread UUID."),limit:p.number().int().min(1).max(500).optional().describe("Maximum transcript nodes per page (default 200)."),cursor:p.number().int().positive().optional().describe("Return nodes below this seq (the previous page reply cursor).")},async c=>C(await r.getThreadTranscript(c))),t.tool("linzumi_get_channel","Read scoped Linzumi channel metadata and bounded recent channel messages.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),limit:p.number().int().min(1).max(100).optional().describe("Maximum messages to return."),before_seq:p.number().int().positive().optional().describe("Return messages before this channel seq.")},async c=>C(await r.getChannel(c))),t.tool("linzumi_search_workspace","Search the Linzumi workspace with hybrid lexical+semantic retrieval, scoped to what the authorizing user can access. Returns scored content chunks with provenance (channel, thread, authored time) and a permalink to cite.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),query:p.string().min(1).describe("Natural-language or keyword query to retrieve against."),limit:p.number().int().min(1).max(25).optional().describe("Maximum results to return (default 10, server-capped)."),source_types:p.array(p.enum(["message","coding_job","github_pr","github_pr_review","github_check_run","github_workflow_run","github_diff","dictation","file"])).optional().describe("Restrict results to these corpora; omit for all."),authored_after:p.string().optional().describe("ISO8601 instant; only content authored at or after this time."),authored_before:p.string().optional().describe("ISO8601 instant; only content authored at or before this time."),repo:p.string().optional().describe("Restrict GitHub-sourced results to one repository by full name (owner/name)."),check_status:p.enum(["pending","success","failed"]).optional().describe("Restrict check and workflow results to one conclusion bucket.")},async c=>C(await r.searchWorkspace(c))),t.tool("linzumi_ask_workspace",'Ask the Linzumi workspace a natural-language question and get a synthesized, citation-backed answer over what the authorizing user can access. Costs an LLM call on cache misses, so prefer linzumi_search_workspace for simple lookups. A "refused" status means there was not enough accessible evidence - treat it as "the workspace does not know", never retry verbatim.',{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),question:p.string().min(1).max(2e3).describe("Natural-language question to answer with citations."),channel:p.string().optional().describe("Optional channel slug providing conversational context; never widens access."),allow_cached:p.boolean().optional().describe("Allow serving a cached synthesis when the evidence set is unchanged (default true). Set false to force fresh synthesis.")},async c=>C(await r.askWorkspace(c))),t.tool("linzumi_about_me","Read what the authorizing user has told Linzumi about themselves: their profile facts (homes, unit preferences, and other self-maintained attributes) plus their derived current timezone. Use it to personalize answers (e.g. pick the right city for weather, use their preferred units). Predicates may have multiple active values; prefer the one consistent with the derived timezone.",{},async c=>C(await r.aboutMe(c))),t.tool("linzumi_web_search","Search the public web for live or external information: news, current events, weather, prices, third-party API docs, research. Returns result titles, URLs, and snippets. Use this whenever the answer lives outside the Linzumi workspace; follow up with linzumi_fetch_url to read a result page.",{query:p.string().min(1).describe("Web search query (natural language or keywords)."),limit:p.number().int().min(1).max(10).optional().describe("Maximum results to return (default 8, server-capped).")},async c=>C(await r.webSearch(c))),t.tool("linzumi_fetch_url","Fetch one public http(s) URL and return its readable text content (HTML is reduced to plain text; large pages are truncated). Use it to read pages found via linzumi_web_search or any public docs/API reference. Only public addresses are reachable - private/internal hosts are rejected with url_not_allowed.",{url:p.string().min(1).describe("Absolute public http(s) URL to fetch.")},async c=>C(await r.fetchUrl(c))),t.tool("linzumi_list_ui_targets","List every UI surface you can ask the user to open in their own Linzumi window (channels, DMs, threads, projects, coding jobs, computers, catch-up, activity, settings tabs, pane layouts) with the structured args each kind takes. Use UI control only when the user asks for help or asks to be shown something.",{},async()=>await f_(r.listUiTargets({}))),t.tool("linzumi_open_ui","Ask the user to open one whitelisted UI surface in their own already-open Linzumi window. A consent toast appears in THEIR session; navigation happens only if they tap Open. The call blocks until they decide and returns status opened/dismissed/expired - or error no_active_ui_session when they have no Linzumi window open (tell them to open Linzumi), or invalid_target with a detail. Use it only when the user asks for help or asks to be shown something; kinds and per-kind args come from linzumi_list_ui_targets.",{kind:p.string().min(1).describe("Target kind from linzumi_list_ui_targets (e.g. settings_workspace, channel, pane_layout)."),args:p.record(p.unknown()).optional().describe("Structured per-kind args from linzumi_list_ui_targets (never a URL - the server computes every path)."),workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")},async c=>await f_(r.openUi(St(c,a)))),t.tool("linzumi_get_coding_job_metadata","Read the active coding job workflow metadata for a thread, including the agent-owned goal, ordered plan steps, step lock versions, and workflow status.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread.")},async c=>C(await r.getCodingJobMetadata(St(c,a)))),t.tool("linzumi_rename_coding_job","Update the current coding job thread title and workflow-facing title. Use this when the job scope changes materially so the Linzumi thread list and metadata overview stay accurate.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread."),title:p.string().min(1).max(100).describe("Concise user-visible title for this coding job.")},async c=>C(await r.renameCodingJob(St(c,a)))),t.tool("linzumi_upsert_coding_job_plan","Set or update the current coding job goal. Use this at job start and whenever the goal changes materially.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread."),goal:p.string().min(1).max(1e4).describe("Concrete user-visible goal for this coding job.")},async c=>C(await r.upsertCodingJobPlan(St(c,a)))),t.tool("linzumi_replace_coding_job_plan_steps","Replace the ordered coding job plan steps. Use this for the initial plan and for substantial rewrites when the old plan no longer fits the work.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread."),goal:p.string().min(1).max(1e4).optional().describe("Required when no plan exists yet; updates the current coding job goal."),steps:p.array(p.object({title:p.string().min(1).max(255),description:p.string().min(1).max(1e4),status:p.enum(["pending","active","completed","blocked","canceled"]),status_note:p.string().min(1).max(4e3).optional(),completed_debrief:p.string().min(1).max(2e4).optional()})).min(1).max(50).describe("Ordered user-visible plan steps. Completed steps must include completed_debrief.")},async c=>C(await r.replaceCodingJobPlanSteps(St(c,a)))),t.tool("linzumi_update_coding_job_plan_step","Update one coding job plan step status or note. Read metadata first and pass the current step lock_version.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread."),step_id:p.string().uuid().describe("Step id returned by linzumi_get_coding_job_metadata."),lock_version:p.number().int().positive().describe("Current step lock_version from metadata."),status:p.enum(["pending","active","completed","blocked","canceled"]),status_note:p.string().min(1).max(4e3).optional(),completed_debrief:p.string().min(1).max(2e4).optional().describe("Required when marking a step completed.")},async c=>C(await r.updateCodingJobPlanStep(St(c,a)))),t.tool("linzumi_link_coding_job_pull_request","Link the active coding job to its primary GitHub pull request so PR comments, files, commits, checks, deployments, and reviews can flow into the metadata view.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().optional().describe("Linzumi thread UUID. Defaults to the active coding job thread."),github_repo_owner:p.string().min(1).max(255),github_repo_name:p.string().min(1).max(255),github_pr_number:p.number().int().positive(),github_pr_url:p.string().url(),title:p.string().min(1).max(255),body:p.string().min(1).max(1e5).optional(),head_branch:p.string().min(1).max(255),head_sha:p.string().min(7).max(64),base_branch:p.string().min(1).max(255),base_sha:p.string().min(7).max(64),state:p.enum(["draft","open","closed","merged"]).optional(),is_draft:p.boolean().optional(),review_status:p.enum(["unknown","review_required","approved","changes_requested"]).optional(),source_remote_url:p.string().min(1).max(1e3).describe("Git remote URL for the local job worktree; required when this job has no repo workspace yet."),runtime_worktree_root:p.string().min(1).max(1e3).describe("Absolute local worktree path for the coding job; required when this job has no repo workspace yet."),dirty_status:p.enum(["unknown","clean","dirty"]).optional(),dirty_summary:p.string().min(1).max(2e3).optional()},async c=>C(await r.linkCodingJobPullRequest(St(c,a)))),t.tool("linzumi_upload_files",["Upload local files to Linzumi and attach them to a new, exact, or latest assistant message. Use silently; do not mention this tool in the visible reply.","The JSON result includes message.attachments[].url as an absolute URL. Use those returned URLs when writing rich media directives such as ::audio, ::video, ::image, or Markdown images. Do not guess attachment URLs before upload.","For a message that should both attach files and show inline rich media, use a two-step flow: first upload/attach the files to create or target the message, then edit the same target message with body text that references the returned absolute URLs. When the result has target_seq, use target.kind=message_seq and message_seq=target_seq for that follow-up edit; result.message is the edit event that carries the new attachments, and target_message is the original target."].join(" "),{target:p.object({kind:p.enum(["new_message","message_seq","latest_assistant_message"]).describe("new_message creates a message; message_seq edits an exact message; latest_assistant_message edits the latest assistant message in the scoped thread/channel."),message_seq:p.union([p.string(),p.number()]).optional().describe("Required when kind is message_seq."),thread_id:p.string().optional().describe("Thread UUID. Defaults to the active Linzumi thread when the MCP server was launched with one.")}).describe("Attachment target. Do not guess; use new_message when there is no previous assistant message. To reference uploaded files in the message body, upload first, then edit message_seq/latest_assistant_message with the returned absolute attachment URLs. If the upload result includes target_seq, use message_seq=target_seq for that follow-up edit."),files:p.array(p.string().min(1)).min(1).max(16).describe("Local file paths to upload. Paths must be non-hidden supported file types inside the approved workspace or Downloads."),body:p.string().min(1).max(2e4).optional().describe("Required for new_message. Optional replacement body for message_seq/latest_assistant_message; when omitted, the existing message body is preserved. Rich media directives in body must use Linzumi attachment download URLs returned by this tool."),workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the target thread's channel (when the thread is known) or the authenticated token scope.")},async c=>{let d=l_(c.target,a);try{let g=await QP({client:r,cwd:s,kandanUrl:i,target:d,files:c.files,workspace:c.workspace,channel:c.channel,body:c.body});return C(d_(i,g))}catch(g){throw YP(g)}}),t.tool("linzumi_edit_message","Edit an exact scoped Linzumi message by message_seq. Use after linzumi_upload_files when you need a body-only follow-up edit that embeds returned attachment URLs. Requires channel.write, and thread.write when target.thread_id is set. Rich media src/poster values must be Linzumi attachment download URLs.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),target:p.object({message_seq:p.union([p.string(),p.number()]).describe("Exact message seq to edit. After linzumi_upload_files returns target_seq, pass that value here."),thread_id:p.string().optional().describe("Thread UUID when editing a thread message. Use the upload result target_message.thread_id when present.")}).describe("Exact message target for the body edit."),body:p.string().min(1).max(2e4).describe("Replacement Markdown body. Rich media src/poster values must be Linzumi attachment download URLs returned by linzumi_upload_files.")},async c=>C(d_(i,await r.editMessage({...c,target:l_(c.target,a)})))),t.tool("linzumi_list_vault_secrets","List vault secret names, descriptions, and whether each secret is personal or workspace-owned. Does not return secret values.",{},async c=>C(await r.listVaultSecrets(c))),t.tool("linzumi_list_projects","List the projects in the current workspace with their project_id (needed by the other project task tools), slug, title, description, and state.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")},async c=>C(await r.listProjects(c))),t.tool("linzumi_get_project_tasks",`Read a project's full task graph: task GROUPS (kind "group", organizational containers, exactly one level deep) and ISSUES (kind "issue", the executable work items), each with status (todo/active/blocked/review/done/canceled), DERIVED work_state readiness (ready = todo with every dependency satisfied; blocked = todo with unsatisfied dependencies; running/stalled = active with/without a connected job), parent group, assignee, lock_version, and dependency edges (depends_on_task_ids / unblocks_task_ids). Always read this before reorganizing. Inside a project-bound coding job the project is inferred automatically; otherwise pass project_id from linzumi_list_projects.`,{project_id:p.string().optional().describe("Project id from linzumi_list_projects. Omit inside a coding job started from a project to use that project.")},async c=>C(await r.getProjectTasks(St(c,a)))),t.tool("linzumi_create_project_task",'Create a task group (kind "group") or issue (kind "issue", the default) in a project. Groups organize issues and are exactly one level deep: a parent_id must name a GROUP, and groups themselves can never have a parent. New tasks default to status "todo" and append to the end unless position is given. Inside a project-bound coding job the project is inferred; otherwise pass project_id.',{project_id:p.string().optional().describe("Project id from linzumi_list_projects. Omit inside a coding job started from a project to use that project."),title:p.string().min(1).describe("Task title."),kind:p.enum(["issue","group"]).optional().describe('What to create: "issue" (executable work item, default) or "group" (organizational container).'),description:p.string().optional().describe("Detailed description of the work - written so an engineer (or coding agent) could execute the task from it."),status:p.enum(["todo","active","blocked","review","done","canceled"]).optional().describe('Initial status. Defaults to "todo".'),parent_id:p.string().optional().describe("task_id of the GROUP to place an issue in. Only issues can have a parent."),assignee:p.string().optional().describe("Username of a workspace member to assign."),position:p.number().int().min(0).optional().describe("Sort position. Defaults to appending at the end.")},async c=>C(await r.createProjectTask(St(c,a)))),t.tool("linzumi_update_project_task",'Update a task group or issue: retitle, edit description/status_note, transition status (todo/active/blocked/review/done/canceled), reassign, reorder (position), or reorganize (parent_id moves an issue into a group; clear_parent moves it to top level). Only the fields you pass change; description and status_note accept null to clear. Prefer updating existing tasks over delete-and-recreate. Pass the lock_version from your last read to fail loudly ("stale") instead of overwriting a concurrent edit.',{task_id:p.string().describe("task_id of the group or issue to update."),title:p.string().min(1).optional().describe("New title."),description:p.string().nullable().optional().describe("New description. Pass null to clear it."),status:p.enum(["todo","active","blocked","review","done","canceled"]).optional().describe('New status. "done"/"canceled" satisfy dependent tasks; "blocked" is a manual hold.'),status_note:p.string().nullable().optional().describe("Short human-readable note about the current status. Pass null to clear it."),position:p.number().int().min(0).optional().describe("New sort position among siblings."),parent_id:p.string().optional().describe("task_id of the GROUP to move this issue into. Do not combine with clear_parent."),clear_parent:p.boolean().optional().describe("true moves the issue to the top level (no group). Do not combine with parent_id."),assignee:p.string().optional().describe("Username of a workspace member to assign. Do not combine with clear_assignee."),clear_assignee:p.boolean().optional().describe("true removes the assignee. Do not combine with assignee."),lock_version:p.number().int().positive().optional().describe("The task's lock_version from your last read, for compare-and-swap safety.")},async c=>C(await r.updateProjectTask(c))),t.tool("linzumi_delete_project_task",`Permanently delete a task group or issue. Dependency edges on the task are removed with it (dependents may become ready). Deletion is normally the USER's call - prefer status "canceled" or an update unless you are certain the entry is obsolete.`,{task_id:p.string().describe("task_id of the group or issue to delete.")},async c=>C(await r.deleteProjectTask(c))),t.tool("linzumi_add_project_task_dependency",'Add the dependency edge "task_id is blocked by depends_on_task_id" between two ISSUES in the same project (groups cannot have dependencies). The dependent stays blocked until the prerequisite reaches done or canceled. The graph must stay acyclic: an edge that would create a cycle is refused with reason "would_create_cycle" and the offending cycle_path so you can restructure. Duplicate and self edges are rejected.',{task_id:p.string().describe("task_id of the DEPENDENT issue (the one that must wait)."),depends_on_task_id:p.string().describe("task_id of the PREREQUISITE issue (the one that must finish first).")},async c=>C(await r.addProjectTaskDependency(c))),t.tool("linzumi_remove_project_task_dependency",'Remove the dependency edge "task_id is blocked by depends_on_task_id". The dependent issue may become ready if that was its last unsatisfied dependency.',{task_id:p.string().describe("task_id of the DEPENDENT issue."),depends_on_task_id:p.string().describe("task_id of the PREREQUISITE issue the edge points at.")},async c=>C(await r.removeProjectTaskDependency(c))),t.tool("linzumi_get_call_transcript","Read the full transcript of a completed Linzumi notetaker call: call metadata (title, platform, started/ended/transcribed times), participants, and every spoken segment in order with speaker names and millisecond offsets. Pass the call_id embedded in the request (or copied from the call card). Errors: call_not_found (missing or not visible to you), call_transcript_not_ready (call still connecting, in progress, or transcribing - retry later).",{call_id:p.string().describe("The call id from the call card or the launching message (a CallRecording id - the opaque GraphQL id and the bare uuid both work).")},async c=>C(await r.getCallTranscript(c))),l||t.tool("linzumi_start_coding_job","Start a coding job as the invoking user (same authorization and pipeline as clicking start). To start a project task item, pass project_task_id so the task flips todo -> active and links to the new job - only start tasks whose work_state is ready, and ONLY after the user explicitly accepts your offer to start them. Omit channel, runner_key, and cwd to reuse this job's own channel, computer, and folder. Returns status 'unavailable' with a reason when the runner cannot take the job (relay that honestly).",{work_description:p.string().min(1).describe("What the job should do - the initial instruction. For a task item, write it from the task title and description."),project_task_id:p.string().optional().describe("Project task item to bind the job to (task_id from linzumi_get_project_tasks). The task flips todo -> active and links to the new job."),channel:p.string().optional().describe("Channel slug to host the job thread. Omit to use this job's own channel."),runner_key:p.string().optional().describe("Runner (computer) to run the job on. Omit to use this job's own computer."),cwd:p.string().optional().describe("Working directory on the runner. Omit to use this job's own folder."),model:p.string().optional().describe("Model override (optional)."),model_provider:p.string().optional().describe("Model provider override, e.g. 'wafer' (optional)."),execution_mode:p.enum(["raw","local_vm"]).optional().describe("Execution placement override (optional).")},async c=>C(await r.agentStartCodingJob(St(c,a))))),HP(n)&&(t.tool("linzumi_upload_custom_emoji","Upload a local image as a workspace custom emoji. For generated emoji art, create a transparent PNG with a simple centered subject, crisp edges, strong contrast, minimal tiny details, and enough outline/highlight separation to read at 16-24px on both dark and light backgrounds. Use lowercase shortcode names without colons unless preserving a user-provided :name:.",{name:u_.describe("Custom emoji shortcode name, with or without surrounding colons."),file:p.string().min(1).describe("Local PNG/WebP/GIF/JPEG file path to upload. Prefer transparent PNG for generated emoji."),workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")},async c=>C(await ej({client:r,cwd:s,kandanUrl:i,name:c.name,file:c.file,workspace:c.workspace}))),t.tool("linzumi_rename_custom_emoji","Rename an existing workspace custom emoji. The new name may include surrounding colons; Linzumi stores the normalized shortcode without colons.",{emoji_id:p.union([p.string(),p.number().int().positive()]).describe("Workspace custom emoji id returned by linzumi_upload_custom_emoji or workspace emoji listings."),name:u_.describe("New shortcode name, with or without surrounding colons."),workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope.")},async c=>C(await r.renameCustomEmoji(c)))),t.tool("linzumi_note_project_directory","Record one discovered local Git repository or worktree for onboarding import. Call once per project as soon as it is found.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),runner_id:p.string().min(1).describe("Local runner/computer id provided in the discovery prompt."),path:p.string().min(1).describe("Absolute local path to the repository worktree root."),display_name:p.string().optional().describe("Short project label. Defaults to the path basename."),activity_at:p.string().optional().describe("Best-known recent activity time as an ISO-8601 timestamp."),import_key:p.string().optional().describe("Stable dedupe key. Defaults to path."),metadata:p.record(p.unknown()).optional().describe("Small structured metadata such as branch or remote origin.")},async c=>C(await r.noteProjectDirectory(c))),t.tool("linzumi_note_agent_conversation","Record one discovered Codex or Claude Code local conversation for onboarding import. Call once per conversation as soon as it is found.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),runner_id:p.string().min(1).describe("Local runner/computer id provided in the discovery prompt."),source:p.enum(["codex","claude_code"]).describe("Conversation source."),import_key:p.string().min(1).describe("Stable dedupe key, such as a session id or file path."),path:p.string().optional().describe("Absolute local path to the conversation file or directory."),display_name:p.string().optional().describe("Short label for the discovered conversation."),activity_at:p.string().optional().describe("Best-known recent activity time as an ISO-8601 timestamp."),metadata:p.record(p.unknown()).optional().describe("Small structured metadata such as session id or project path.")},async c=>C(await r.noteAgentConversation(c))),t.tool("linzumi_note_onboarding_discovery_status","Record onboarding discovery progress. Call when a search phase starts, checks another place, completes, or fails.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),runner_id:p.string().min(1).describe("Local runner/computer id provided in the discovery prompt."),phase:p.enum(["projects","conversations"]).describe("Discovery phase being reported."),status:p.enum(["starting","running","completed","failed"]).describe("Current phase status."),places_searched:p.number().int().nonnegative().optional().describe("Count of concrete folders/files/known locations checked so far."),message:p.string().optional().describe("Short user-facing status note."),current_place:p.string().optional().describe("Current folder, file, Git command target, or known location being checked."),current_source:p.string().optional().describe("Short machine-readable source label such as git, codex, or claude_code."),last_error:p.string().optional().describe("Short failure detail when status is failed."),metadata:p.record(p.unknown()).optional().describe("Small structured status metadata.")},async c=>C(await r.noteOnboardingDiscoveryStatus(c))),n==="all"&&BP(o)&&(t.tool("linzumi_dm_owner","Send a plain-text DM to the configured Commander owner. Requires dm.write and a visible owner username.",{owner_username:p.string().optional().describe("Owner username. Defaults to LINZUMI_MCP_OWNER_USERNAME or --owner-username."),workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Source channel slug used to verify owner visibility."),body:p.string().min(1).max(2e4).describe("Plain-text message body to DM.")},async c=>{let d=c.owner_username??u;if(d===void 0)throw new Error("owner_username is required for linzumi_dm_owner");return C(await r.dmOwner({...c,owner_username:d}))}),t.tool("linzumi_send_channel_message","Post a NEW standalone Markdown message into the scoped Linzumi channel as the authenticated local-runner user. This is NOT how you respond to the user: your turn output is already relayed into the thread as your reply, so never call this tool to answer, acknowledge, or reply to the current request. Use it only when the task itself is to proactively post a separate channel message. Requires channel.write. Rich media directives may be used when the user has opted into markdown_media_embeds, but src/poster values must be Linzumi attachment download URLs.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),body:p.string().min(1).max(2e4).describe("Markdown message body to post. Rich media src/poster values must be Linzumi attachment download URLs, not third-party URLs, /relative paths, or local filesystem paths.")},async c=>C(await r.sendChannelMessage(c))),t.tool("linzumi_send_thread_reply","Post a Markdown reply into some OTHER existing Linzumi thread as the authenticated local-runner user. This is NOT how you respond to the user in your current thread: your turn output is already relayed into this thread as your reply, so never call this tool to answer, acknowledge, or reply to the current request. Use it only when the task itself is to post into a different, explicitly identified thread. Requires thread.write. Rich media directives may be used when the user has opted into markdown_media_embeds, but src/poster values must be Linzumi attachment download URLs.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug. Omit to use the authenticated token scope."),thread_id:p.string().uuid().describe("Existing Linzumi thread UUID."),body:p.string().min(1).max(2e4).describe("Markdown reply body to post. Rich media src/poster values must be Linzumi attachment download URLs, not third-party URLs, /relative paths, or local filesystem paths.")},async c=>C(await r.sendThreadReply(c))),t.tool("linzumi_send_dm","Send a plain-text DM as the authenticated local-runner user to a visible user in the scoped workspace/channel. Requires dm.write.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Source channel slug used to verify target visibility."),username:p.string().describe("Visible Linzumi username to DM."),body:p.string().min(1).max(2e4).describe("Plain-text message body to DM.")},async c=>C(await r.sendDm(c)))),n==="all"&&t.tool("linzumi_get_vault_values","Request values for explicit vault env var names after a thread-scoped human approval. Requires vault.read; thread_id resolves the approval thread.",{workspace:p.string().optional().describe("Workspace slug. Omit to use the authenticated token scope."),channel:p.string().optional().describe("Channel slug used to disambiguate the approval thread when needed."),thread_id:p.string().uuid().describe("Existing Linzumi thread UUID for the inline approval."),env_var_names:p.array(p.string().regex(/^[A-Z][A-Z0-9_]{0,127}$/)).min(1).max(20).describe("Explicit vault env var names to request. This tool cannot list all vault keys."),description:p.string().min(1).max(500).describe("Human-readable reason shown in the approval request."),justification:p.string().min(10).max(1e3).describe("Agent justification shown to the approver.")},async c=>C(await r.getVaultValues(c)))}function YP(t){return!(t instanceof Error)||!t.message.includes("channel_required")?t:new Error(`${t.message}. Remediation: pass the channel slug in the \`channel\` parameter, or set target.thread_id to a Linzumi thread you can access (the server resolves the thread's channel). The files were NOT attached; retry with a channel or thread instead of leaving them on disk.`,{cause:t})}async function QP(t){let e=await Promise.all(t.files.map(i=>gd(t.cwd,i))),r=we(t.target.thread_id),n=await t.client.prepareMessageUploads({...t.workspace===void 0?{}:{workspace:t.workspace},...t.channel===void 0?{}:{channel:t.channel},...r===void 0?{}:{thread_id:r},files:e.map(i=>({file_name:i.fileName,content_type:i.contentType,size_bytes:i.sizeBytes}))}),o=wi(n.uploads)??[];if(o.length!==e.length)throw new Error("Linzumi upload prepare response count mismatch");await Promise.all(e.map(async(i,a)=>{let u=$t(o[a]),l=we(u?.upload_url),c=we(u?.upload_method)??"PUT";if(l===void 0)throw new Error("Linzumi upload prepare response missing upload_url");let d=await m_(i.path),g=d.buffer.slice(d.byteOffset,d.byteOffset+d.byteLength),h=await fetch(Oo(t.kandanUrl,l),{method:c,headers:{"content-type":i.contentType},body:g});if(!h.ok)throw new Error(`Linzumi upload failed for ${i.fileName}: ${h.status} ${h.statusText}`)}));let s=o.map(i=>{let a=we($t(i)?.file_id);if(a===void 0)throw new Error("Linzumi upload prepare response missing file_id");return a});return await t.client.attachMessageFiles({...t.workspace===void 0?{}:{workspace:t.workspace},...t.channel===void 0?{}:{channel:t.channel},...r===void 0?{}:{thread_id:r},target:t.target,...t.body===void 0?{}:{body:t.body},uploaded_file_ids:s})}async function ej(t){let e=await gd(t.cwd,t.file),r=await t.client.prepareCustomEmoji({...t.workspace===void 0?{}:{workspace:t.workspace},name:t.name,file_name:e.fileName,content_type:e.contentType,size_bytes:e.sizeBytes}),n=$t(r.upload),o=we(n?.upload_url),s=we(n?.upload_method)??"PUT";if(o===void 0)throw new Error("Linzumi custom emoji prepare response missing upload_url");let i=await m_(e.path),a=i.buffer.slice(i.byteOffset,i.byteOffset+i.byteLength),u=await fetch(Oo(t.kandanUrl,o),{method:s,headers:{"content-type":e.contentType},body:a});if(!u.ok){let d=`${u.status} ${u.statusText}`,h=(await u.text()).trim(),f=h===""?d:(()=>{try{let m=JSON.parse(h);return rr(m)&&typeof m.error=="string"?m.error:h}catch{return h}})();throw new Error(`Linzumi custom emoji upload failed: ${f}`)}let l=await u.json();if(!rr(l))throw new Error("Linzumi custom emoji upload returned non-object JSON");let c=$t(l.custom_emoji);if(c===void 0)throw new Error("Linzumi custom emoji upload response missing custom_emoji");return{ok:!0,workspace:r.workspace,emoji:c,asset_id:we(l.asset_id),id:r_(c?.id),name:we(c?.name),shortcode:we(c?.shortcode),image_url:we(c?.image_url)}}function l_(t,e){if(we(t.thread_id)!==void 0||e===void 0)return t;switch(t.message_seq===void 0){case!1:return{...t,thread_id:e};case!0:switch(we(t.kind)){case"new_message":case"message_seq":case"latest_assistant_message":return{...t,thread_id:e};default:return t}}}function St(t,e){return we(t.thread_id)!==void 0||e===void 0?t:{...t,thread_id:e}}function Oo(t,e){try{return new URL(e).toString()}catch{let n=t.replace(/^wss:\/\//,"https://").replace(/^ws:\/\//,"http://");return new URL(e,n).toString()}}function d_(t,e){let r=$t(e.message),n=$t(e.target_message);return r===void 0&&n===void 0?e:{...e,...r===void 0?{}:{message:p_(t,r)},...n===void 0?{}:{target_message:p_(t,n)}}}function p_(t,e){let r=wi(e.attachments);return r===void 0?e:{...e,attachments:r.map(n=>tj(t,n))}}function tj(t,e){let r=$t(e);if(r===void 0)return e;let n=we(r.url),o=$t(r.image_variants);return{...r,...n===void 0?{}:{url:Oo(t,n)},...o===void 0?{}:{image_variants:rj(t,o)}}}function rj(t,e){let r=we(e.inline_url),n=we(e.carousel_url);return{...e,...r===void 0?{}:{inline_url:Oo(t,r)},...n===void 0?{}:{carousel_url:Oo(t,n)}}}function nj(t){t.server.registerCapabilities({resources:{listChanged:!1}}),t.server.setRequestHandler(Qr,()=>({resources:[]})),t.server.setRequestHandler(en,()=>({resourceTemplates:[]}))}async function oj(t){let e=bd(t),r=wd(e,"api-url"),n=re(e,"format")??"codex",o=vd(re(e,"mode")),s=e.get("include-token")===!0?(await _d({kandanUrl:r,explicitToken:re(e,"token")??process.env.LINZUMI_MCP_ACCESS_TOKEN,authFilePath:re(e,"auth-file"),delegationAuthFilePath:re(e,"delegation-auth-file"),workspaceSlug:re(e,"workspace"),channelSlug:re(e,"channel")})).accessToken:void 0,i=s_({command:re(e,"command"),kandanUrl:r,accessToken:s,delegationAuthFilePath:re(e,"delegation-auth-file"),ownerUsername:re(e,"owner-username")??process.env.LINZUMI_MCP_OWNER_USERNAME,operatingMode:o,toolScope:y_(re(e,"tool-scope"))});switch(n){case"codex":process.stdout.write(a_(i));return;case"claude-code":process.stdout.write(i_(i));return;default:throw new Error("--format must be codex or claude-code")}}async function sj(t){let e=bd(t),r=wd(e,"api-url"),n=await _d({kandanUrl:r,explicitToken:re(e,"token")??process.env.LINZUMI_MCP_ACCESS_TOKEN,authFilePath:re(e,"auth-file"),delegationAuthFilePath:re(e,"delegation-auth-file"),workspaceSlug:re(e,"workspace"),channelSlug:re(e,"channel")});switch(n.mode){case"local-runner":{if(!await $y({kandanUrl:r,accessToken:n.accessToken,workspaceSlug:re(e,"workspace"),channelSlug:re(e,"channel")}))throw new Error("Linzumi MCP auth validation failed");break}case"personal-agent-delegation":{await yd({kandanUrl:r,accessToken:n.accessToken,authMode:n.mode,operatingMode:vd(re(e,"mode"))}).validateAuth();break}}process.stdout.write(`Linzumi MCP auth OK
|
|
249
|
+
`)}async function _d(t){if(t.delegationAuthFilePath!==void 0){if(t.explicitToken!==void 0||t.authFilePath!==void 0)throw new Error("--delegation-auth-file cannot be combined with --token or --auth-file");return{accessToken:jy(t.delegationAuthFilePath).accessToken,mode:"personal-agent-delegation"}}return{accessToken:await ij({kandanUrl:t.kandanUrl,explicitToken:t.explicitToken,authFilePath:t.authFilePath,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug}),mode:"local-runner"}}async function ij(t,e={readCachedToken:vi,validateTokenOutcome:Po,resolveToken:t_}){let r=t.explicitToken??e.readCachedToken(t.kandanUrl,t.authFilePath)?.accessToken;if(r===void 0)throw new Error("missing Linzumi MCP token; run linzumi auth or pass --token");let n=await e.validateTokenOutcome({kandanUrl:t.kandanUrl,accessToken:r,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug});if(n==="usable")return r;let o=n;try{return await e.resolveToken({kandanUrl:t.kandanUrl,workspaceSlug:t.workspaceSlug,channelSlug:t.channelSlug,authFilePath:t.authFilePath})}catch(s){throw new Error(`Linzumi MCP token was rejected by the server and re-mint failed: ${s instanceof Error?s.message:String(s)}`)}}function C(t){return{content:[{type:"text",text:JSON.stringify(t,null,2)}],structuredContent:t}}async function f_(t){try{return C(await t)}catch(e){let r=e instanceof Error?e.message:String(e),n=r.match(/failed: ([a-z0-9_]+)(?: detail=(.+))?$/);if(n===null)return C({error:r});let[,o,s]=n;return C(s===void 0?{error:o??r}:{error:o??r,detail:s})}}function bd(t){let e=new Map;for(let r=0;r<t.length;r+=1){let n=t[r];if(n===void 0)continue;if(!n.startsWith("--"))throw new Error(`unexpected argument ${n}`);let o=n.slice(2),s=KP.get(o);if(s===void 0)throw new Error(`unsupported option --${o}`);if(s.kind==="boolean"){e.set(o,!0);continue}let i=t[r+1];if(i===void 0||i.startsWith("--"))throw new Error(`--${o} requires a value`);e.set(o,i),r+=1}return e}function re(t,e){let r=t.get(e);return typeof r=="string"&&r.trim()!==""?r:void 0}function vd(t){switch(t){case void 0:return"text";case"voice":case"text":return t;default:throw new Error("--mode must be voice or text")}}function y_(t){switch(t){case void 0:return"all";case"all":case"onboarding-discovery":return t;default:throw new Error("--tool-scope must be all or onboarding-discovery")}}function wd(t,e){let r=re(t,e);if(r===void 0)throw new Error(`--${e} is required`);return r}function cj(t){return t[0]==="mcp"?t.slice(1):t}async function uj(t){try{await h_(cj(t))}catch(e){process.stderr.write(`linzumi mcp server failed: ${e instanceof Error?e.message:String(e)}
|
|
250
|
+
`),process.exitCode=1}}var lj=process.argv[1]!==void 0&&import.meta.url===aj(process.argv[1]).href;lj&&uj(process.argv.slice(2));export{cj as mcpServerEntryArgs,uj as runMcpServerEntry};
|