lanhu-design-mcp 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of lanhu-design-mcp might be problematic. Click here for more details.
- package/README.md +483 -0
- package/dist/index.js +64 -0
- package/package.json +63 -0
package/dist/index.js
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
var __=Object.create;var Li=Object.defineProperty;var v_=Object.getOwnPropertyDescriptor;var b_=Object.getOwnPropertyNames;var x_=Object.getPrototypeOf,w_=Object.prototype.hasOwnProperty;var T=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(r){throw e=0,r}},qi=(t,e)=>{for(var r in e)Li(t,r,{get:e[r],enumerable:!0})},$_=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of b_(e))!w_.call(t,o)&&o!==r&&Li(t,o,{get:()=>e[o],enumerable:!(n=v_(e,o))||n.enumerable});return t};var Id=(t,e,r)=>(r=t!=null?__(x_(t)):{},$_(e||!t||!t.__esModule?Li(r,"default",{value:t,enumerable:!0}):r,t));var uo=T(ue=>{"use strict";Object.defineProperty(ue,"__esModule",{value:!0});ue.regexpCode=ue.getEsmExportName=ue.getProperty=ue.safeStringify=ue.stringify=ue.strConcat=ue.addCodeArg=ue.str=ue._=ue.nil=ue._Code=ue.Name=ue.IDENTIFIER=ue._CodeOrName=void 0;var ao=class{};ue._CodeOrName=ao;ue.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Or=class extends ao{constructor(e){if(super(),!ue.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}}};ue.Name=Or;var dt=class extends ao{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 Or&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ue._Code=dt;ue.nil=new dt("");function Pm(t,...e){let r=[t[0]],n=0;for(;n<e.length;)$u(r,e[n]),r.push(t[++n]);return new dt(r)}ue._=Pm;var wu=new dt("+");function Tm(t,...e){let r=[co(t[0])],n=0;for(;n<e.length;)r.push(wu),$u(r,e[n]),r.push(wu,co(t[++n]));return xw(r),new dt(r)}ue.str=Tm;function $u(t,e){e instanceof dt?t.push(...e._items):e instanceof Or?t.push(e):t.push(kw(e))}ue.addCodeArg=$u;function xw(t){let e=1;for(;e<t.length-1;){if(t[e]===wu){let r=ww(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function ww(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Or||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 Or))return`"${t}${e.slice(1)}`}function $w(t,e){return e.emptyStr()?t:t.emptyStr()?e:Tm`${t}${e}`}ue.strConcat=$w;function kw(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:co(Array.isArray(t)?t.join(","):t)}function Sw(t){return new dt(co(t))}ue.stringify=Sw;function co(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ue.safeStringify=co;function zw(t){return typeof t=="string"&&ue.IDENTIFIER.test(t)?new dt(`.${t}`):Pm`[${t}]`}ue.getProperty=zw;function Pw(t){if(typeof t=="string"&&ue.IDENTIFIER.test(t))return new dt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ue.getEsmExportName=Pw;function Tw(t){return new dt(t.toString())}ue.regexpCode=Tw});var zu=T(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.ValueScope=Xe.ValueScopeName=Xe.Scope=Xe.varKinds=Xe.UsedValueState=void 0;var Ye=uo(),ku=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Vs;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Vs||(Xe.UsedValueState=Vs={}));Xe.varKinds={const:new Ye.Name("const"),let:new Ye.Name("let"),var:new Ye.Name("var")};var Hs=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ye.Name?e:this.name(e)}name(e){return new Ye.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Xe.Scope=Hs;var Bs=class extends Ye.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ye._)`.${new Ye.Name(r)}[${n}]`}};Xe.ValueScopeName=Bs;var Ew=(0,Ye._)`\n`,Su=class extends Hs{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?Ew:Ye.nil}}get(){return this._scope}name(e){return new Bs(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ye._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=Ye.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,Vs.Started);let l=r(u);if(l){let d=this.opts.es5?Xe.varKinds.var:Xe.varKinds.const;s=(0,Ye._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ye._)`${s}${l}${this.opts._n}`;else throw new ku(u);c.set(u,Vs.Completed)})}return s}};Xe.ValueScope=Su});var X=T(Q=>{"use strict";Object.defineProperty(Q,"__esModule",{value:!0});Q.or=Q.and=Q.not=Q.CodeGen=Q.operators=Q.varKinds=Q.ValueScopeName=Q.ValueScope=Q.Scope=Q.Name=Q.regexpCode=Q.stringify=Q.getProperty=Q.nil=Q.strConcat=Q.str=Q._=void 0;var se=uo(),vt=zu(),er=uo();Object.defineProperty(Q,"_",{enumerable:!0,get:function(){return er._}});Object.defineProperty(Q,"str",{enumerable:!0,get:function(){return er.str}});Object.defineProperty(Q,"strConcat",{enumerable:!0,get:function(){return er.strConcat}});Object.defineProperty(Q,"nil",{enumerable:!0,get:function(){return er.nil}});Object.defineProperty(Q,"getProperty",{enumerable:!0,get:function(){return er.getProperty}});Object.defineProperty(Q,"stringify",{enumerable:!0,get:function(){return er.stringify}});Object.defineProperty(Q,"regexpCode",{enumerable:!0,get:function(){return er.regexpCode}});Object.defineProperty(Q,"Name",{enumerable:!0,get:function(){return er.Name}});var Ws=zu();Object.defineProperty(Q,"Scope",{enumerable:!0,get:function(){return Ws.Scope}});Object.defineProperty(Q,"ValueScope",{enumerable:!0,get:function(){return Ws.ValueScope}});Object.defineProperty(Q,"ValueScopeName",{enumerable:!0,get:function(){return Ws.ValueScopeName}});Object.defineProperty(Q,"varKinds",{enumerable:!0,get:function(){return Ws.varKinds}});Q.operators={GT:new se._Code(">"),GTE:new se._Code(">="),LT:new se._Code("<"),LTE:new se._Code("<="),EQ:new se._Code("==="),NEQ:new se._Code("!=="),NOT:new se._Code("!"),OR:new se._Code("||"),AND:new se._Code("&&"),ADD:new se._Code("+")};var Lt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Pu=class extends Lt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?vt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=mn(this.rhs,e,r)),this}get names(){return this.rhs instanceof se._CodeOrName?this.rhs.names:{}}},Js=class extends Lt{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof se.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=mn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof se.Name?{}:{...this.lhs.names};return Gs(e,this.rhs)}},Tu=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}},Eu=class extends Lt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Iu=class extends Lt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Ru=class extends Lt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Nu=class extends Lt{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=mn(this.code,e,r),this}get names(){return this.code instanceof se._CodeOrName?this.code.names:{}}},lo=class extends Lt{constructor(e=[]){super(),this.nodes=e}render(e){return this.nodes.reduce((r,n)=>r+n.render(e),"")}optimizeNodes(){let{nodes:e}=this,r=e.length;for(;r--;){let n=e[r].optimizeNodes();Array.isArray(n)?e.splice(r,1,...n):n?e[r]=n:e.splice(r,1)}return e.length>0?this:void 0}optimizeNames(e,r){let{nodes:n}=this,o=n.length;for(;o--;){let s=n[o];s.optimizeNames(e,r)||(Iw(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Ar(e,r.names),{})}},qt=class extends lo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Ou=class extends lo{},fn=class extends qt{};fn.kind="else";var Cr=class t extends qt{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 fn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Em(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=mn(this.condition,e,r),this}get names(){let e=super.names;return Gs(e,this.condition),this.else&&Ar(e,this.else.names),e}};Cr.kind="if";var jr=class extends qt{};jr.kind="for";var Cu=class extends jr{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=mn(this.iteration,e,r),this}get names(){return Ar(super.names,this.iteration.names)}},ju=class extends jr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?vt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Gs(super.names,this.from);return Gs(e,this.to)}},Ks=class extends jr{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=mn(this.iterable,e,r),this}get names(){return Ar(super.names,this.iterable.names)}},po=class extends qt{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)}};po.kind="func";var fo=class extends lo{render(e){return"return "+super.render(e)}};fo.kind="return";var Au=class extends qt{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&&Ar(e,this.catch.names),this.finally&&Ar(e,this.finally.names),e}},mo=class extends qt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};mo.kind="catch";var ho=class extends qt{render(e){return"finally"+super.render(e)}};ho.kind="finally";var Mu=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
3
|
+
`:""},this._extScope=e,this._scope=new vt.Scope({parent:e}),this._nodes=[new Ou]}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 Pu(e,s,n)),s}const(e,r,n){return this._def(vt.varKinds.const,e,r,n)}let(e,r,n){return this._def(vt.varKinds.let,e,r,n)}var(e,r,n){return this._def(vt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Js(e,r,n))}add(e,r){return this._leafNode(new Tu(e,Q.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==se.nil&&this._leafNode(new Nu(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,se.addCodeArg)(r,o));return r.push("}"),new se._Code(r)}if(e,r,n){if(this._blockNode(new Cr(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 Cr(e))}else(){return this._elseNode(new fn)}endIf(){return this._endBlockNode(Cr,fn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Cu(e),r)}forRange(e,r,n,o,s=this.opts.es5?vt.varKinds.var:vt.varKinds.let){let i=this._scope.toName(e);return this._for(new ju(s,i,r,n),()=>o(i))}forOf(e,r,n,o=vt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof se.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,se._)`${i}.length`,a=>{this.var(s,(0,se._)`${i}[${a}]`),n(s)})}return this._for(new Ks("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?vt.varKinds.var:vt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,se._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Ks("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(jr)}label(e){return this._leafNode(new Eu(e))}break(e){return this._leafNode(new Iu(e))}return(e){let r=new fo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(fo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Au;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new mo(s),r(s)}return n&&(this._currNode=o.finally=new ho,this.code(n)),this._endBlockNode(mo,ho)}throw(e){return this._leafNode(new Ru(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=se.nil,n,o){return this._blockNode(new po(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(po)}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 Cr))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}};Q.CodeGen=Mu;function Ar(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Gs(t,e){return e instanceof se._CodeOrName?Ar(t,e.names):t}function mn(t,e,r){if(t instanceof se.Name)return n(t);if(!o(t))return t;return new se._Code(t._items.reduce((s,i)=>(i instanceof se.Name&&(i=n(i)),i instanceof se._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 se._Code&&s._items.some(i=>i instanceof se.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function Iw(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Em(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,se._)`!${Zu(t)}`}Q.not=Em;var Rw=Im(Q.operators.AND);function Nw(...t){return t.reduce(Rw)}Q.and=Nw;var Ow=Im(Q.operators.OR);function Cw(...t){return t.reduce(Ow)}Q.or=Cw;function Im(t){return(e,r)=>e===se.nil?r:r===se.nil?e:(0,se._)`${Zu(e)} ${t} ${Zu(r)}`}function Zu(t){return t instanceof se.Name?t:(0,se._)`(${t})`}});var ie=T(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.checkStrictMode=ee.getErrorPath=ee.Type=ee.useFunc=ee.setEvaluated=ee.evaluatedPropsToName=ee.mergeEvaluated=ee.eachItem=ee.unescapeJsonPointer=ee.escapeJsonPointer=ee.escapeFragment=ee.unescapeFragment=ee.schemaRefOrVal=ee.schemaHasRulesButRef=ee.schemaHasRules=ee.checkUnknownRules=ee.alwaysValidSchema=ee.toHash=void 0;var me=X(),jw=uo();function Aw(t){let e={};for(let r of t)e[r]=!0;return e}ee.toHash=Aw;function Mw(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Om(t,e),!Cm(e,t.self.RULES.all))}ee.alwaysValidSchema=Mw;function Om(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]||Mm(t,`unknown keyword: "${s}"`)}ee.checkUnknownRules=Om;function Cm(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}ee.schemaHasRules=Cm;function Zw(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}ee.schemaHasRulesButRef=Zw;function Dw({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,me._)`${r}`}return(0,me._)`${t}${e}${(0,me.getProperty)(n)}`}ee.schemaRefOrVal=Dw;function Lw(t){return jm(decodeURIComponent(t))}ee.unescapeFragment=Lw;function qw(t){return encodeURIComponent(Lu(t))}ee.escapeFragment=qw;function Lu(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}ee.escapeJsonPointer=Lu;function jm(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}ee.unescapeJsonPointer=jm;function Uw(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}ee.eachItem=Uw;function Rm({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof me.Name?(s instanceof me.Name?t(o,s,i):e(o,s,i),i):s instanceof me.Name?(e(o,i,s),s):r(s,i);return a===me.Name&&!(c instanceof me.Name)?n(o,c):c}}ee.mergeEvaluated={props:Rm({mergeNames:(t,e,r)=>t.if((0,me._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,me._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,me._)`${r} || {}`).code((0,me._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,me._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,me._)`${r} || {}`),qu(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Am}),items:Rm({mergeNames:(t,e,r)=>t.if((0,me._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,me._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,me._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,me._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Am(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,me._)`{}`);return e!==void 0&&qu(t,r,e),r}ee.evaluatedPropsToName=Am;function qu(t,e,r){Object.keys(r).forEach(n=>t.assign((0,me._)`${e}${(0,me.getProperty)(n)}`,!0))}ee.setEvaluated=qu;var Nm={};function Fw(t,e){return t.scopeValue("func",{ref:e,code:Nm[e.code]||(Nm[e.code]=new jw._Code(e.code))})}ee.useFunc=Fw;var Du;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Du||(ee.Type=Du={}));function Vw(t,e,r){if(t instanceof me.Name){let n=e===Du.Num;return r?n?(0,me._)`"[" + ${t} + "]"`:(0,me._)`"['" + ${t} + "']"`:n?(0,me._)`"/" + ${t}`:(0,me._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,me.getProperty)(t).toString():"/"+Lu(t)}ee.getErrorPath=Vw;function Mm(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}ee.checkStrictMode=Mm});var Ut=T(Uu=>{"use strict";Object.defineProperty(Uu,"__esModule",{value:!0});var De=X(),Hw={data:new De.Name("data"),valCxt:new De.Name("valCxt"),instancePath:new De.Name("instancePath"),parentData:new De.Name("parentData"),parentDataProperty:new De.Name("parentDataProperty"),rootData:new De.Name("rootData"),dynamicAnchors:new De.Name("dynamicAnchors"),vErrors:new De.Name("vErrors"),errors:new De.Name("errors"),this:new De.Name("this"),self:new De.Name("self"),scope:new De.Name("scope"),json:new De.Name("json"),jsonPos:new De.Name("jsonPos"),jsonLen:new De.Name("jsonLen"),jsonPart:new De.Name("jsonPart")};Uu.default=Hw});var go=T(Le=>{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});Le.extendErrors=Le.resetErrorsCount=Le.reportExtraError=Le.reportError=Le.keyword$DataError=Le.keywordError=void 0;var ae=X(),Ys=ie(),He=Ut();Le.keywordError={message:({keyword:t})=>(0,ae.str)`must pass "${t}" keyword validation`};Le.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,ae.str)`"${t}" keyword must be ${e} ($data)`:(0,ae.str)`"${t}" keyword is invalid ($data)`};function Bw(t,e=Le.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Lm(t,e,r);n??(i||a)?Zm(s,c):Dm(o,(0,ae._)`[${c}]`)}Le.reportError=Bw;function Jw(t,e=Le.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Lm(t,e,r);Zm(o,a),s||i||Dm(n,He.default.vErrors)}Le.reportExtraError=Jw;function Kw(t,e){t.assign(He.default.errors,e),t.if((0,ae._)`${He.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,ae._)`${He.default.vErrors}.length`,e),()=>t.assign(He.default.vErrors,null)))}Le.resetErrorsCount=Kw;function Gw({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,He.default.errors,a=>{t.const(i,(0,ae._)`${He.default.vErrors}[${a}]`),t.if((0,ae._)`${i}.instancePath === undefined`,()=>t.assign((0,ae._)`${i}.instancePath`,(0,ae.strConcat)(He.default.instancePath,s.errorPath))),t.assign((0,ae._)`${i}.schemaPath`,(0,ae.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,ae._)`${i}.schema`,r),t.assign((0,ae._)`${i}.data`,n))})}Le.extendErrors=Gw;function Zm(t,e){let r=t.const("err",e);t.if((0,ae._)`${He.default.vErrors} === null`,()=>t.assign(He.default.vErrors,(0,ae._)`[${r}]`),(0,ae._)`${He.default.vErrors}.push(${r})`),t.code((0,ae._)`${He.default.errors}++`)}function Dm(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,ae._)`new ${t.ValidationError}(${e})`):(r.assign((0,ae._)`${n}.errors`,e),r.return(!1))}var Mr={keyword:new ae.Name("keyword"),schemaPath:new ae.Name("schemaPath"),params:new ae.Name("params"),propertyName:new ae.Name("propertyName"),message:new ae.Name("message"),schema:new ae.Name("schema"),parentSchema:new ae.Name("parentSchema")};function Lm(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,ae._)`{}`:Ww(t,e,r)}function Ww(t,e,r={}){let{gen:n,it:o}=t,s=[Yw(o,r),Xw(t,r)];return Qw(t,e,s),n.object(...s)}function Yw({errorPath:t},{instancePath:e}){let r=e?(0,ae.str)`${t}${(0,Ys.getErrorPath)(e,Ys.Type.Str)}`:t;return[He.default.instancePath,(0,ae.strConcat)(He.default.instancePath,r)]}function Xw({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,ae.str)`${e}/${t}`;return r&&(o=(0,ae.str)`${o}${(0,Ys.getErrorPath)(r,Ys.Type.Str)}`),[Mr.schemaPath,o]}function Qw(t,{params:e,message:r},n){let{keyword:o,data:s,schemaValue:i,it:a}=t,{opts:c,propertyName:u,topSchemaRef:l,schemaPath:d}=a;n.push([Mr.keyword,o],[Mr.params,typeof e=="function"?e(t):e||(0,ae._)`{}`]),c.messages&&n.push([Mr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Mr.schema,i],[Mr.parentSchema,(0,ae._)`${l}${d}`],[He.default.data,s]),u&&n.push([Mr.propertyName,u])}});var Um=T(hn=>{"use strict";Object.defineProperty(hn,"__esModule",{value:!0});hn.boolOrEmptySchema=hn.topBoolOrEmptySchema=void 0;var e$=go(),t$=X(),r$=Ut(),n$={message:"boolean schema is false"};function o$(t){let{gen:e,schema:r,validateName:n}=t;r===!1?qm(t,!1):typeof r=="object"&&r.$async===!0?e.return(r$.default.data):(e.assign((0,t$._)`${n}.errors`,null),e.return(!0))}hn.topBoolOrEmptySchema=o$;function s$(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),qm(t)):r.var(e,!0)}hn.boolOrEmptySchema=s$;function qm(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,e$.reportError)(o,n$,void 0,e)}});var Fu=T(gn=>{"use strict";Object.defineProperty(gn,"__esModule",{value:!0});gn.getRules=gn.isJSONType=void 0;var i$=["string","number","integer","boolean","null","object","array"],a$=new Set(i$);function c$(t){return typeof t=="string"&&a$.has(t)}gn.isJSONType=c$;function u$(){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:{}}}gn.getRules=u$});var Vu=T(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.shouldUseRule=tr.shouldUseGroup=tr.schemaHasRulesForType=void 0;function l$({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Fm(t,n)}tr.schemaHasRulesForType=l$;function Fm(t,e){return e.rules.some(r=>Vm(t,r))}tr.shouldUseGroup=Fm;function Vm(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))}tr.shouldUseRule=Vm});var yo=T(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.reportTypeError=qe.checkDataTypes=qe.checkDataType=qe.coerceAndCheckDataType=qe.getJSONTypes=qe.getSchemaTypes=qe.DataType=void 0;var d$=Fu(),p$=Vu(),f$=go(),W=X(),Hm=ie(),yn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(yn||(qe.DataType=yn={}));function m$(t){let e=Bm(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}qe.getSchemaTypes=m$;function Bm(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(d$.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}qe.getJSONTypes=Bm;function h$(t,e){let{gen:r,data:n,opts:o}=t,s=g$(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,p$.schemaHasRulesForType)(t,e[0]));if(i){let a=Bu(e,n,o.strictNumbers,yn.Wrong);r.if(a,()=>{s.length?y$(t,e,s):Ju(t)})}return i}qe.coerceAndCheckDataType=h$;var Jm=new Set(["string","number","integer","boolean","null"]);function g$(t,e){return e?t.filter(r=>Jm.has(r)||e==="array"&&r==="array"):[]}function y$(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,W._)`typeof ${o}`),a=n.let("coerced",(0,W._)`undefined`);s.coerceTypes==="array"&&n.if((0,W._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,W._)`${o}[0]`).assign(i,(0,W._)`typeof ${o}`).if(Bu(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,W._)`${a} !== undefined`);for(let u of r)(Jm.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Ju(t),n.endIf(),n.if((0,W._)`${a} !== undefined`,()=>{n.assign(o,a),_$(t,a)});function c(u){switch(u){case"string":n.elseIf((0,W._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,W._)`"" + ${o}`).elseIf((0,W._)`${o} === null`).assign(a,(0,W._)`""`);return;case"number":n.elseIf((0,W._)`${i} == "boolean" || ${o} === null
|
|
4
|
+
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,W._)`+${o}`);return;case"integer":n.elseIf((0,W._)`${i} === "boolean" || ${o} === null
|
|
5
|
+
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,W._)`+${o}`);return;case"boolean":n.elseIf((0,W._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,W._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,W._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,W._)`${i} === "string" || ${i} === "number"
|
|
6
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,W._)`[${o}]`)}}}function _$({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,W._)`${e} !== undefined`,()=>t.assign((0,W._)`${e}[${r}]`,n))}function Hu(t,e,r,n=yn.Correct){let o=n===yn.Correct?W.operators.EQ:W.operators.NEQ,s;switch(t){case"null":return(0,W._)`${e} ${o} null`;case"array":s=(0,W._)`Array.isArray(${e})`;break;case"object":s=(0,W._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,W._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,W._)`typeof ${e} ${o} ${t}`}return n===yn.Correct?s:(0,W.not)(s);function i(a=W.nil){return(0,W.and)((0,W._)`typeof ${e} == "number"`,a,r?(0,W._)`isFinite(${e})`:W.nil)}}qe.checkDataType=Hu;function Bu(t,e,r,n){if(t.length===1)return Hu(t[0],e,r,n);let o,s=(0,Hm.toHash)(t);if(s.array&&s.object){let i=(0,W._)`typeof ${e} != "object"`;o=s.null?i:(0,W._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=W.nil;s.number&&delete s.integer;for(let i in s)o=(0,W.and)(o,Hu(i,e,r,n));return o}qe.checkDataTypes=Bu;var v$={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,W._)`{type: ${t}}`:(0,W._)`{type: ${e}}`};function Ju(t){let e=b$(t);(0,f$.reportError)(e,v$)}qe.reportTypeError=Ju;function b$(t){let{gen:e,data:r,schema:n}=t,o=(0,Hm.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Gm=T(Xs=>{"use strict";Object.defineProperty(Xs,"__esModule",{value:!0});Xs.assignDefaults=void 0;var _n=X(),x$=ie();function w$(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Km(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Km(t,s,o.default))}Xs.assignDefaults=w$;function Km(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,_n._)`${s}${(0,_n.getProperty)(e)}`;if(o){(0,x$.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,_n._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,_n._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,_n._)`${a} = ${(0,_n.stringify)(r)}`)}});var pt=T(pe=>{"use strict";Object.defineProperty(pe,"__esModule",{value:!0});pe.validateUnion=pe.validateArray=pe.usePattern=pe.callValidateCode=pe.schemaProperties=pe.allSchemaProperties=pe.noPropertyInData=pe.propertyInData=pe.isOwnProperty=pe.hasPropFunc=pe.reportMissingProp=pe.checkMissingProp=pe.checkReportMissingProp=void 0;var ve=X(),Ku=ie(),rr=Ut(),$$=ie();function k$(t,e){let{gen:r,data:n,it:o}=t;r.if(Wu(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,ve._)`${e}`},!0),t.error()})}pe.checkReportMissingProp=k$;function S$({gen:t,data:e,it:{opts:r}},n,o){return(0,ve.or)(...n.map(s=>(0,ve.and)(Wu(t,e,s,r.ownProperties),(0,ve._)`${o} = ${s}`)))}pe.checkMissingProp=S$;function z$(t,e){t.setParams({missingProperty:e},!0),t.error()}pe.reportMissingProp=z$;function Wm(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,ve._)`Object.prototype.hasOwnProperty`})}pe.hasPropFunc=Wm;function Gu(t,e,r){return(0,ve._)`${Wm(t)}.call(${e}, ${r})`}pe.isOwnProperty=Gu;function P$(t,e,r,n){let o=(0,ve._)`${e}${(0,ve.getProperty)(r)} !== undefined`;return n?(0,ve._)`${o} && ${Gu(t,e,r)}`:o}pe.propertyInData=P$;function Wu(t,e,r,n){let o=(0,ve._)`${e}${(0,ve.getProperty)(r)} === undefined`;return n?(0,ve.or)(o,(0,ve.not)(Gu(t,e,r))):o}pe.noPropertyInData=Wu;function Ym(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}pe.allSchemaProperties=Ym;function T$(t,e){return Ym(e).filter(r=>!(0,Ku.alwaysValidSchema)(t,e[r]))}pe.schemaProperties=T$;function E$({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,ve._)`${t}, ${e}, ${n}${o}`:e,d=[[rr.default.instancePath,(0,ve.strConcat)(rr.default.instancePath,s)],[rr.default.parentData,i.parentData],[rr.default.parentDataProperty,i.parentDataProperty],[rr.default.rootData,rr.default.rootData]];i.opts.dynamicRef&&d.push([rr.default.dynamicAnchors,rr.default.dynamicAnchors]);let f=(0,ve._)`${l}, ${r.object(...d)}`;return c!==ve.nil?(0,ve._)`${a}.call(${c}, ${f})`:(0,ve._)`${a}(${f})`}pe.callValidateCode=E$;var I$=(0,ve._)`new RegExp`;function R$({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,ve._)`${o.code==="new RegExp"?I$:(0,$$.useFunc)(t,o)}(${r}, ${n})`})}pe.usePattern=R$;function N$(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,ve._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Ku.Type.Num},s),e.if((0,ve.not)(s),a)})}}pe.validateArray=N$;function O$(t){let{gen:e,schema:r,keyword:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(r.some(c=>(0,Ku.alwaysValidSchema)(o,c))&&!o.opts.unevaluated)return;let i=e.let("valid",!1),a=e.name("_valid");e.block(()=>r.forEach((c,u)=>{let l=t.subschema({keyword:n,schemaProp:u,compositeRule:!0},a);e.assign(i,(0,ve._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,ve.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}pe.validateUnion=O$});var eh=T(Et=>{"use strict";Object.defineProperty(Et,"__esModule",{value:!0});Et.validateKeywordUsage=Et.validSchemaType=Et.funcKeywordCode=Et.macroKeywordCode=void 0;var Be=X(),Zr=Ut(),C$=pt(),j$=go();function A$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Qm(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Be.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Et.macroKeywordCode=A$;function M$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;D$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Qm(n,o,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&Xm(t),g(()=>t.error());else{let _=e.async?m():p();e.modifying&&Xm(t),g(()=>Z$(t,_))}}function m(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,Be._)`await `),v=>n.assign(d,!1).if((0,Be._)`${v} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,Be._)`${v}.errors`),()=>n.throw(v))),_}function p(){let _=(0,Be._)`${l}.errors`;return n.assign(_,null),h(Be.nil),_}function h(_=e.async?(0,Be._)`await `:Be.nil){let v=c.opts.passContext?Zr.default.this:Zr.default.self,w=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Be._)`${_}${(0,C$.callValidateCode)(t,l,v,w)}`,e.modifying)}function g(_){var v;n.if((0,Be.not)((v=e.valid)!==null&&v!==void 0?v:d),_)}}Et.funcKeywordCode=M$;function Xm(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Be._)`${n.parentData}[${n.parentDataProperty}]`))}function Z$(t,e){let{gen:r}=t;r.if((0,Be._)`Array.isArray(${e})`,()=>{r.assign(Zr.default.vErrors,(0,Be._)`${Zr.default.vErrors} === null ? ${e} : ${Zr.default.vErrors}.concat(${e})`).assign(Zr.default.errors,(0,Be._)`${Zr.default.vErrors}.length`),(0,j$.extendErrors)(t)},()=>t.error())}function D$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Qm(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Be.stringify)(r)})}function L$(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Et.validSchemaType=L$;function q$({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Et.validateKeywordUsage=q$});var rh=T(nr=>{"use strict";Object.defineProperty(nr,"__esModule",{value:!0});nr.extendSubschemaMode=nr.extendSubschemaData=nr.getSubschema=void 0;var It=X(),th=ie();function U$(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,It._)`${t.schemaPath}${(0,It.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,It._)`${t.schemaPath}${(0,It.getProperty)(e)}${(0,It.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,th.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')}nr.getSubschema=U$;function F$(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=a.let("data",(0,It._)`${e.data}${(0,It.getProperty)(r)}`,!0);c(f),t.errorPath=(0,It.str)`${u}${(0,th.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,It._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof It.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}nr.extendSubschemaData=F$;function V$(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}nr.extendSubschemaMode=V$});var Yu=T((rC,nh)=>{"use strict";nh.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 sh=T((nC,oh)=>{"use strict";var or=oh.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(){};Qs(e,n,o,t,"",t)};or.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};or.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};or.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};or.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 Qs(t,e,r,n,o,s,i,a,c,u){if(n&&typeof n=="object"&&!Array.isArray(n)){e(n,o,s,i,a,c,u);for(var l in n){var d=n[l];if(Array.isArray(d)){if(l in or.arrayKeywords)for(var f=0;f<d.length;f++)Qs(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in or.propsKeywords){if(d&&typeof d=="object")for(var m in d)Qs(t,e,r,d[m],o+"/"+l+"/"+H$(m),s,o,l,n,m)}else(l in or.keywords||t.allKeys&&!(l in or.skipKeywords))&&Qs(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function H$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var _o=T(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.getSchemaRefs=Qe.resolveUrl=Qe.normalizeId=Qe._getFullPath=Qe.getFullPath=Qe.inlineRef=void 0;var B$=ie(),J$=Yu(),K$=sh(),G$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function W$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Xu(t):e?ih(t)<=e:!1}Qe.inlineRef=W$;var Y$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Xu(t){for(let e in t){if(Y$.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Xu)||typeof r=="object"&&Xu(r))return!0}return!1}function ih(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!G$.has(r)&&(typeof t[r]=="object"&&(0,B$.eachItem)(t[r],n=>e+=ih(n)),e===1/0))return 1/0}return e}function ah(t,e="",r){r!==!1&&(e=vn(e));let n=t.parse(e);return ch(t,n)}Qe.getFullPath=ah;function ch(t,e){return t.serialize(e).split("#")[0]+"#"}Qe._getFullPath=ch;var X$=/#\/?$/;function vn(t){return t?t.replace(X$,""):""}Qe.normalizeId=vn;function Q$(t,e,r){return r=vn(r),t.resolve(e,r)}Qe.resolveUrl=Q$;var ek=/^[a-z_][-a-z0-9._]*$/i;function tk(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=vn(t[r]||e),s={"":o},i=ah(n,o,!1),a={},c=new Set;return K$(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof d[r]=="string"&&(g=_.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[f]=g;function _(w){let y=this.opts.uriResolver.resolve;if(w=vn(g?y(g,w):w),c.has(w))throw l(w);c.add(w);let S=this.refs[w];return typeof S=="string"&&(S=this.refs[S]),typeof S=="object"?u(d,S.schema,w):w!==vn(h)&&(w[0]==="#"?(u(d,a[w],w),a[w]=d):this.refs[w]=h),w}function v(w){if(typeof w=="string"){if(!ek.test(w))throw new Error(`invalid anchor "${w}"`);_.call(this,`#${w}`)}}}),a;function u(d,f,m){if(f!==void 0&&!J$(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Qe.getSchemaRefs=tk});var xo=T(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});sr.getData=sr.KeywordCxt=sr.validateFunctionCode=void 0;var fh=Um(),uh=yo(),el=Vu(),ei=yo(),rk=Gm(),bo=eh(),Qu=rh(),j=X(),B=Ut(),nk=_o(),Ft=ie(),vo=go();function ok(t){if(gh(t)&&(yh(t),hh(t))){ak(t);return}mh(t,()=>(0,fh.topBoolOrEmptySchema)(t))}sr.validateFunctionCode=ok;function mh({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,j._)`${B.default.data}, ${B.default.valCxt}`,n.$async,()=>{t.code((0,j._)`"use strict"; ${lh(r,o)}`),ik(t,o),t.code(s)}):t.func(e,(0,j._)`${B.default.data}, ${sk(o)}`,n.$async,()=>t.code(lh(r,o)).code(s))}function sk(t){return(0,j._)`{${B.default.instancePath}="", ${B.default.parentData}, ${B.default.parentDataProperty}, ${B.default.rootData}=${B.default.data}${t.dynamicRef?(0,j._)`, ${B.default.dynamicAnchors}={}`:j.nil}}={}`}function ik(t,e){t.if(B.default.valCxt,()=>{t.var(B.default.instancePath,(0,j._)`${B.default.valCxt}.${B.default.instancePath}`),t.var(B.default.parentData,(0,j._)`${B.default.valCxt}.${B.default.parentData}`),t.var(B.default.parentDataProperty,(0,j._)`${B.default.valCxt}.${B.default.parentDataProperty}`),t.var(B.default.rootData,(0,j._)`${B.default.valCxt}.${B.default.rootData}`),e.dynamicRef&&t.var(B.default.dynamicAnchors,(0,j._)`${B.default.valCxt}.${B.default.dynamicAnchors}`)},()=>{t.var(B.default.instancePath,(0,j._)`""`),t.var(B.default.parentData,(0,j._)`undefined`),t.var(B.default.parentDataProperty,(0,j._)`undefined`),t.var(B.default.rootData,B.default.data),e.dynamicRef&&t.var(B.default.dynamicAnchors,(0,j._)`{}`)})}function ak(t){let{schema:e,opts:r,gen:n}=t;mh(t,()=>{r.$comment&&e.$comment&&vh(t),pk(t),n.let(B.default.vErrors,null),n.let(B.default.errors,0),r.unevaluated&&ck(t),_h(t),hk(t)})}function ck(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,j._)`${r}.evaluated`),e.if((0,j._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,j._)`${t.evaluated}.props`,(0,j._)`undefined`)),e.if((0,j._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,j._)`${t.evaluated}.items`,(0,j._)`undefined`))}function lh(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,j._)`/*# sourceURL=${r} */`:j.nil}function uk(t,e){if(gh(t)&&(yh(t),hh(t))){lk(t,e);return}(0,fh.boolOrEmptySchema)(t,e)}function hh({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 gh(t){return typeof t.schema!="boolean"}function lk(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&vh(t),fk(t),mk(t);let s=n.const("_errs",B.default.errors);_h(t,s),n.var(e,(0,j._)`${s} === ${B.default.errors}`)}function yh(t){(0,Ft.checkUnknownRules)(t),dk(t)}function _h(t,e){if(t.opts.jtd)return dh(t,[],!1,e);let r=(0,uh.getSchemaTypes)(t.schema),n=(0,uh.coerceAndCheckDataType)(t,r);dh(t,r,!n,e)}function dk(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Ft.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function pk(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Ft.checkStrictMode)(t,"default is ignored in the schema root")}function fk(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,nk.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function mk(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function vh({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,j._)`${B.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,j.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,j._)`${B.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function hk(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,j._)`${B.default.errors} === 0`,()=>e.return(B.default.data),()=>e.throw((0,j._)`new ${o}(${B.default.vErrors})`)):(e.assign((0,j._)`${n}.errors`,B.default.vErrors),s.unevaluated&&gk(t),e.return((0,j._)`${B.default.errors} === 0`))}function gk({gen:t,evaluated:e,props:r,items:n}){r instanceof j.Name&&t.assign((0,j._)`${e}.props`,r),n instanceof j.Name&&t.assign((0,j._)`${e}.items`,n)}function dh(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Ft.schemaHasRulesButRef)(s,l))){o.block(()=>xh(t,"$ref",l.all.$ref.definition));return}c.jtd||yk(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,el.shouldUseGroup)(s,f)&&(f.type?(o.if((0,ei.checkDataType)(f.type,i,c.strictNumbers)),ph(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,ei.reportTypeError)(t)),o.endIf()):ph(t,f),a||o.if((0,j._)`${B.default.errors} === ${n||0}`))}}function ph(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,rk.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,el.shouldUseRule)(n,s)&&xh(t,s.keyword,s.definition,e.type)})}function yk(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(_k(t,e),t.opts.allowUnionTypes||vk(t,e),bk(t,t.dataTypes))}function _k(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{bh(t.dataTypes,r)||tl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),wk(t,e)}}function vk(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&tl(t,"use allowUnionTypes to allow union type keyword")}function bk(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,el.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>xk(e,i))&&tl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function xk(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function bh(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function wk(t,e){let r=[];for(let n of t.dataTypes)bh(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function tl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Ft.checkStrictMode)(t,e,t.opts.strictTypes)}var ti=class{constructor(e,r,n){if((0,bo.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Ft.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",wh(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,bo.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",B.default.errors))}result(e,r,n){this.failResult((0,j.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,j.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,j._)`${r} !== undefined && (${(0,j.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?vo.reportExtraError:vo.reportError)(this,this.def.error,r)}$dataError(){(0,vo.reportError)(this,this.def.$dataError||vo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,vo.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=j.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=j.nil,r=j.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,j.or)((0,j._)`${o} === undefined`,r)),e!==j.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==j.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,j.or)(i(),a());function i(){if(n.length){if(!(r instanceof j.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,j._)`${(0,ei.checkDataTypes)(c,r,s.opts.strictNumbers,ei.DataType.Wrong)}`}return j.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,j._)`!${c}(${r})`}return j.nil}}subschema(e,r){let n=(0,Qu.getSubschema)(this.it,e);(0,Qu.extendSubschemaData)(n,this.it,e),(0,Qu.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return uk(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Ft.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Ft.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,j.Name)),!0}};sr.KeywordCxt=ti;function xh(t,e,r,n){let o=new ti(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,bo.funcKeywordCode)(o,r):"macro"in r?(0,bo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,bo.funcKeywordCode)(o,r)}var $k=/^\/(?:[^~]|~0|~1)*$/,kk=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function wh(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return B.default.rootData;if(t[0]==="/"){if(!$k.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=B.default.rootData}else{let u=kk.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,j._)`${s}${(0,j.getProperty)((0,Ft.unescapeJsonPointer)(u))}`,i=(0,j._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}sr.getData=wh});var ri=T(nl=>{"use strict";Object.defineProperty(nl,"__esModule",{value:!0});var rl=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};nl.default=rl});var wo=T(il=>{"use strict";Object.defineProperty(il,"__esModule",{value:!0});var ol=_o(),sl=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,ol.resolveUrl)(e,r,n),this.missingSchema=(0,ol.normalizeId)((0,ol.getFullPath)(e,this.missingRef))}};il.default=sl});var oi=T(ft=>{"use strict";Object.defineProperty(ft,"__esModule",{value:!0});ft.resolveSchema=ft.getCompilingSchema=ft.resolveRef=ft.compileSchema=ft.SchemaEnv=void 0;var bt=X(),Sk=ri(),Dr=Ut(),xt=_o(),$h=ie(),zk=xo(),bn=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,xt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ft.SchemaEnv=bn;function cl(t){let e=kh.call(this,t);if(e)return e;let r=(0,xt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new bt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:Sk.default,code:(0,bt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Dr.default.data,parentData:Dr.default.parentData,parentDataProperty:Dr.default.parentDataProperty,dataNames:[Dr.default.data],dataPathArr:[bt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,bt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:bt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,bt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,zk.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Dr.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${Dr.default.self}`,`${Dr.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof bt.Name?void 0:p,items:h instanceof bt.Name?void 0:h,dynamicProps:p instanceof bt.Name,dynamicItems:h instanceof bt.Name},m.source&&(m.source.evaluated=(0,bt.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}ft.compileSchema=cl;function Pk(t,e,r){var n;r=(0,xt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=Ik.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 bn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=Tk.call(this,s)}ft.resolveRef=Pk;function Tk(t){return(0,xt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:cl.call(this,t)}function kh(t){for(let e of this._compilations)if(Ek(e,t))return e}ft.getCompilingSchema=kh;function Ek(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function Ik(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||ni.call(this,t,e)}function ni(t,e){let r=this.opts.uriResolver.parse(e),n=(0,xt._getFullPath)(this.opts.uriResolver,r),o=(0,xt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return al.call(this,r,t);let s=(0,xt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=ni.call(this,t,i);return typeof a?.schema!="object"?void 0:al.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||cl.call(this,i),s===(0,xt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,xt.resolveUrl)(this.opts.uriResolver,o,u)),new bn({schema:a,schemaId:c,root:t,baseId:o})}return al.call(this,r,i)}}ft.resolveSchema=ni;var Rk=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function al(t,{baseId:e,schema:r,root:n}){var o;if(((o=t.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,$h.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!Rk.has(a)&&u&&(e=(0,xt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,$h.schemaHasRulesButRef)(r,this.RULES)){let a=(0,xt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=ni.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new bn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var Sh=T((uC,Nk)=>{Nk.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var ml=T((lC,Nh)=>{"use strict";var Ok=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),ll=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),Lr=RegExp.prototype.test.bind(/^[\da-f]{2}$/iu),dl=RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu),Ph=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/]$/u),pl=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/?]$/u),Ck=RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:]$/u),et=new Array(256);{let t="0123456789ABCDEF";for(let e=0;e<256;e++)et[e]="%"+t[e>>4]+t[e&15]}function Ue(t){return t<2048?et[192|t>>6]+et[128|t&63]:t<65536?et[224|t>>12]+et[128|t>>6&63]+et[128|t&63]:et[240|t>>18]+et[128|t>>12&63]+et[128|t>>6&63]+et[128|t&63]}function jk(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 Ak=RegExp.prototype.test.bind(/^[\dA-Fa-f]{1,4}$/),Mk=RegExp.prototype.test.bind(/^[vV][\dA-Fa-f]+\.[A-Za-z\d\-._~!$&'()*+,;=:]+$/),Zk=RegExp.prototype.test.bind(/^[A-Za-z\d\-._~]$/),Dk=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Lk(t){if(t.length===0)return!1;for(let e=0;e<t.length;e++)if(!Zk(t[e])){if(t[e]==="%"&&e+2<t.length&&Lr(t.slice(e+1,e+3))){e+=2;continue}return!1}return!0}function zh(t){let e=-1,r=0,n=-1,o=0;for(let a=0;a<t.length;a++)t[a]==="0"?(n===-1&&(n=a),o++,o>r&&(r=o,e=n)):(n=-1,o=0);if(r<2)return t.join(":");let s=t.slice(0,e).join(":"),i=t.slice(e+r).join(":");return s+"::"+i}function qk(t){let e=t.indexOf("::");if(e!==-1&&t.indexOf("::",e+1)!==-1)return;let r=e===-1?t.split(":"):t.slice(0,e).split(":"),n=e===-1?[]:t.slice(e+2).split(":");e!==-1&&(r.length===1&&r[0]===""&&(r.length=0),n.length===1&&n[0]===""&&(n.length=0));let o=r.concat(n),s=0;for(let a=0;a<o.length;a++){let c=o[a];if(c==="")return;if(c.indexOf(".")!==-1){if(a!==o.length-1||e!==-1&&n.length===0||!ll(c))return;s+=2;continue}if(!Ak(c))return;o[a]=parseInt(c,16).toString(16),s++}if(e===-1)return s!==8?void 0:zh(o);if(s>=8)return;let i=o.slice(0,r.length);for(let a=s;a<8;a++)i.push("0");for(let a=r.length;a<o.length;a++)i.push(o[a]);return zh(i)}function ul(t){let e=t[0]==="["&&t[t.length-1]==="]";if((t[0]==="["||t[t.length-1]==="]")&&!e)return{host:t,isIPV6:!1,error:!0};let n=e?t.slice(1,-1):t;if(e&&Mk(n))return n=n.toLowerCase(),{host:`[${n}]`,escapedHost:n,isIPV6:!1,isIPVFuture:!0};if(Uk(n,":")<2)return{host:t,isIPV6:!1,error:e};let o="",s=n.indexOf("%");if(s!==-1){let a=n.slice(s,s+3).toLowerCase()==="%25"?3:1;if(o=n.slice(s+a),!Lk(o))return{host:t,isIPV6:!1,error:!0};n=n.slice(0,s)}let i=qk(n);return i===void 0?{host:t,isIPV6:!1,error:!0}:{host:i+(o?"%"+o:""),escapedHost:i+(o?"%25"+o:""),isIPV6:!0}}function Uk(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function Fk(t){let e=t,r=[],n=-1,o=0;for(;o=e.length;){if(o===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(o===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(o===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n)}return r.join("")}var Vk={"@":"%40","/":"%2F","?":"%3F","#":"%23",":":"%3A"},Hk=/[@/?#:]/g,Bk=/[@/?#]/g;function Th(t,e){let r=e?Bk:Hk;return r.lastIndex=0,t.replace(r,n=>Vk[n])}function Eh(t,e=!1){if(t.indexOf("%")===-1)return t;let r="";for(let n=0;n<t.length;n++){if(t[n]==="%"&&n+2<t.length){let o=t.slice(n+1,n+3);if(Lr(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));e&&dl(i)?r+=i:r+="%"+s,n+=2;continue}}r+=t[n]}return r}function Jk(t){let e="";for(let r=0;r<t.length;r++){let n=t[r];if(n==="%"&&r+2<t.length){let o=t.slice(r+1,r+3);if(Lr(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));i!=="."&&dl(i)?e+=i:e+="%"+s,r+=2;continue}}if(Ph(n))e+=n;else{let o=t.charCodeAt(r);if(o<128)e+=Rh(o)?n:et[o];else if(o<55296||o>57343)e+=Ue(o);else if(o<=56319&&r+1<t.length){let s=t.charCodeAt(r+1);s>=56320&&s<=57343?(e+=Ue(65536+(o-55296<<10)+(s-56320)),r++):e+=Ue(65533)}else e+=Ue(65533)}}return e}function Kk(t,e=!1){let r="",n=e&&t[0]!=="/";for(let o=0;o<t.length;o++){let s=t[o];if(s==="%"&&o+2<t.length){let i=t.slice(o+1,o+3);if(Lr(i)){r+="%"+i.toUpperCase(),o+=2;continue}}if(s==="/"&&(n=!1),Ph(s)&&(s!==":"||!n))r+=s;else{let i=t.charCodeAt(o);if(i<128)r+=et[i];else if(i<55296||i>57343)r+=Ue(i);else if(i<=56319&&o+1<t.length){let a=t.charCodeAt(o+1);a>=56320&&a<=57343?(r+=Ue(65536+(i-55296<<10)+(a-56320)),o++):r+=Ue(65533)}else r+=Ue(65533)}}return r}function fl(t,e){let r="";for(let n=0;n<t.length;n++){let o=t[n];if(o==="%"&&n+2<t.length){let s=t.slice(n+1,n+3);if(Lr(s)){r+="%"+s.toUpperCase(),n+=2;continue}}if(e(o))r+=o;else{let s=t.charCodeAt(n);if(s<128)r+=et[s];else if(s<55296||s>57343)r+=Ue(s);else if(s<=56319&&n+1<t.length){let i=t.charCodeAt(n+1);i>=56320&&i<=57343?(r+=Ue(65536+(s-55296<<10)+(i-56320)),n++):r+=Ue(65533)}else r+=Ue(65533)}}return r}function Ih(t){return fl(t,Ck)}function Gk(t){return fl(t,pl)}function Wk(t){return fl(t,pl)}function Rh(t){return t>=48&&t<=57||t>=65&&t<=90||t>=97&&t<=122||t===42||t===43||t===45||t===46||t===47||t===64||t===95}function Yk(t){let e="";for(let r=0;r<t.length;r++){let n=t[r];if(n==="%"&&r+2<t.length){let o=t.slice(r+1,r+3);if(Lr(o)){let s=o.toUpperCase(),i=String.fromCharCode(parseInt(s,16));dl(i)?e+=i:e+="%"+s,r+=2;continue}}if(pl(n))e+=n;else{let o=t.charCodeAt(r);if(o<128)e+=Rh(o)?n:et[o];else if(o<55296||o>57343)e+=Ue(o);else if(o<=56319&&r+1<t.length){let s=t.charCodeAt(r+1);s>=56320&&s<=57343?(e+=Ue(65536+(o-55296<<10)+(s-56320)),r++):e+=Ue(65533)}else e+=Ue(65533)}}return e}function Xk(t){let e="";for(let r=0;r<t.length;r++){if(t[r]==="%"&&r+2<t.length){let n=t.slice(r+1,r+3);if(Lr(n)){e+="%"+n.toUpperCase(),r+=2;continue}}e+=escape(t[r])}return e}function Qk(t){let e=[];if(t.userinfo!==void 0&&(e.push(Ih(t.userinfo)),e.push("@")),t.host!==void 0){let r=t.host;if(!ll(r)){let n=ul(r);n.isIPV6!==!0&&n.isIPVFuture!==!0&&(r=Eh(r,!0),n=ul(r)),n.isIPV6===!0||n.isIPVFuture===!0?r=`[${n.escapedHost}]`:r=Th(r,!1)}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}Nh.exports={nonSimpleDomain:Dk,recomposeAuthority:Qk,reescapeHostDelimiters:Th,normalizePercentEncoding:Eh,normalizePathEncoding:Jk,serializePathEncoding:Kk,normalizeQueryFragmentEncoding:Yk,encodeUserinfo:Ih,encodeQuery:Gk,encodeFragment:Wk,escapePreservingEscapes:Xk,removeDotSegments:Fk,isIPv4:ll,isUUID:Ok,normalizeIPv6:ul,stringArrayToHexStripped:jk}});var Mh=T((dC,Ah)=>{"use strict";var{isUUID:eS}=ml(),tS=/^([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-./:;=@]|%[\da-f]{2})+)$/iu,rS=["http","https","ws","wss","urn","urn:uuid"];function nS(t){return rS.indexOf(t)!==-1}function hl(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 Oh(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function Ch(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 oS(t){return t.secure=hl(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function sS(t){if((t.port===(hl(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=t.resourceName.indexOf("?"),r=e===-1?t.resourceName:t.resourceName.slice(0,e);t.path=r&&r!=="/"?r:void 0,t.query=e===-1?void 0:t.resourceName.slice(e+1),t.resourceName=void 0}return t.fragment=void 0,t}function iS(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(tS);if(r&&r[0]===t.path){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let o=`${n}:${e.nid||t.nid}`,s=gl(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function aS(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=gl(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 cS(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!eS(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function uS(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var jh={scheme:"http",domainHost:!0,parse:Oh,serialize:Ch},lS={scheme:"https",domainHost:jh.domainHost,parse:Oh,serialize:Ch},si={scheme:"ws",domainHost:!0,parse:oS,serialize:sS},dS={scheme:"wss",domainHost:si.domainHost,parse:si.parse,serialize:si.serialize},pS={scheme:"urn",parse:iS,serialize:aS,skipNormalize:!0},fS={scheme:"urn:uuid",parse:cS,serialize:uS,skipNormalize:!0},ii={http:jh,https:lS,ws:si,wss:dS,urn:pS,"urn:uuid":fS};Object.setPrototypeOf(ii,null);function gl(t){return t&&(ii[t]||ii[t.toLowerCase()])||void 0}Ah.exports={wsIsSecure:hl,SCHEMES:ii,isValidSchemeName:nS,getSchemeHandler:gl}});var Yh=T((pC,ui)=>{"use strict";var{normalizeIPv6:Uh,removeDotSegments:ko,recomposeAuthority:mS,normalizePercentEncoding:Fh,normalizePathEncoding:hS,serializePathEncoding:Zh,normalizeQueryFragmentEncoding:Dh,encodeQuery:gS,encodeFragment:yS,reescapeHostDelimiters:_S,isIPv4:Vh,nonSimpleDomain:vS}=ml(),{SCHEMES:Hh,getSchemeHandler:yl}=Mh(),Bh=/^[A-Za-z][A-Za-z0-9+.-]*$/u,Jh="URI scheme is malformed.";function Lh(t){let e=unescape(String(t));if(!Bh.test(e))throw new TypeError(Jh);return e}function bS(t,e){return typeof t=="string"?t=TS(t,e):typeof t=="object"&&(t=ci(qr(t,e),e)),t}function xS(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},{parsed:o,malformedAuthorityOrPort:s,malformedPercentEncoding:i,malformedSchemeSpecific:a,malformedHost:c,malformedScheme:u}=ai(t,n),{parsed:l,malformedAuthorityOrPort:d,malformedPercentEncoding:f,malformedSchemeSpecific:m,malformedHost:p,malformedScheme:h}=ai(e,n);if(s||d||i||f||a||m||c||p||u||h)throw new Error(o.error||l.error||"URI is malformed.");let g=Kh(o,l,n,!0),_=yl(r&&r.scheme||g.scheme),v=g.host,w=v!==void 0&&v!==""&&(Vh(v)||Uh(v).isIPV6);Gh(g,r||{},_,w);let y=v&&v.indexOf("%")!==-1&&!new RegExp("\\P{ASCII}","u").test(v);if(g.error&&!y)throw new Error(g.error);return n.skipEscape=!0,qr(g,n)}function Kh(t,e,r,n){let o={};return n||(t=ci(qr(t,r),r),e=ci(qr(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=ko(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=ko(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=ko(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=ko(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 wS(t,e,r){let n=qh(t,r),o=qh(e,r);return n!==void 0&&o!==void 0&&n===o}function qr(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=[];r.scheme&&(r.scheme=Lh(r.scheme));let s=yl(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n);let i=r.userinfo!==void 0||r.host!==void 0||r.port!==void 0,a=!n.skipEscape&&r.scheme===void 0&&!i;r.path!==void 0&&(n.skipEscape?r.path=Fh(r.path):r.path=Zh(r.path,a)),n.reference!=="suffix"&&r.scheme&&(r.scheme=Lh(r.scheme),o.push(r.scheme,":"));let c=mS(r);if(c!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(c),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let u=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(u=ko(u)),a&&(u=Zh(u,!0)),c===void 0&&u[0]==="/"&&u[1]==="/"&&(u="/%2F"+u.slice(2)),o.push(u)}return r.query!==void 0&&o.push("?",gS(r.query)),r.fragment!==void 0&&o.push("#",yS(r.fragment)),o.join("")}var $S=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u,kS=/^(?:[^#/:?]+:)?\/\/([^/?#]*)/,SS=/^(?:[^#/:?]+:)?([/\\\t\n\r]*)/;function zS(t,e){if(e[2]!==void 0&&t.path&&t.path[0]!=="/")return'URI path must start with "/" when authority is present.';if(typeof t.port=="number"&&(t.port<0||t.port>65535))return"URI port is malformed."}function $o(t){if(t===void 0)return!1;let e=t.indexOf("%");for(;e!==-1;){if(e+2>=t.length||!/^[\da-f]{2}$/iu.test(t.slice(e+1,e+3)))return!0;e=t.indexOf("%",e+3)}return!1}function PS(t){let e=t[4];return $o(t[3])||e!==void 0&&!(e[0]==="["&&e[e.length-1]==="]")&&$o(e)||$o(t[6])||$o(t[7])||$o(t[8])}function Gh(t,e,r,n){if(!e.unicodeSupport&&(!r||!r.unicodeSupport)&&t.host&&t.host[0]!=="["&&(e.domainHost||r&&r.domainHost)&&n===!1&&vS(t.host))try{t.host=new URL("http://"+t.host).hostname}catch(o){return t.error=t.error||"Host's domain name can not be converted to ASCII: "+o,!0}return!1}function ai(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1,s=!1,i=!1,a=!1,c=!1,u=!1,l=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let d=t.match(kS);d!==null&&d[1].indexOf("\\")!==-1&&(n.error="URI authority must not contain a literal backslash.",o=!0);let f=t.match(SS);if(f!==null){let p=f[1],h=p.replace(/[\t\n\r]/g,"");h.length>=2&&(h.slice(0,2)!=="//"?(n.error=n.error||"URI authority must not contain a literal backslash.",o=!0):p.length!==h.length&&(n.error=n.error||"URI authority introducer must not contain whitespace.",o=!0))}let m=t.match($S);if(m){if(n.scheme=m[1],n.userinfo=m[3],n.host=m[4],n.port=parseInt(m[5],10),n.path=m[6]||"",n.query=m[7],n.fragment=m[8],n.scheme!==void 0){let g=unescape(n.scheme);Bh.test(g)?n.scheme=g.toLowerCase():(n.error=n.error||Jh,u=!0)}s=PS(m),s&&(n.error=n.error||"URI contains malformed percent-encoding."),isNaN(n.port)&&(n.port=m[5]);let p=zS(n,m);if(p!==void 0&&(n.error=n.error||p,o=!0),n.host)if(Vh(n.host)===!1){let _=n.host[0]==="["&&n.host[n.host.length-1]==="]",v=Uh(n.host);l=v.isIPV6||v.isIPVFuture===!0,c=_&&v.error===!0,n.host=l?v.host:v.host.toLowerCase(),c&&(n.error=n.error||"URI host is malformed.",o=!0)}else l=!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 h=yl(r.scheme||n.scheme);if(a=Gh(n,r,h,l),!h||h&&!h.skipNormalize){if(t.indexOf("%")!==-1&&n.host!==void 0&&!c){let g=l?n.host:Fh(n.host,!0);n.host=_S(g,l)}n.path&&(n.path=hS(n.path)),n.query&&(n.query=Dh(n.query)),n.fragment&&(n.fragment=Dh(n.fragment))}h&&h.parse&&(h.parse(n,r),h===Hh.urn&&n.nid===void 0&&(i=!0))}else n.error=n.error||"URI can not be parsed.";return{parsed:n,malformedAuthorityOrPort:o,malformedPercentEncoding:s,malformedSchemeSpecific:i,malformedHost:a,malformedScheme:u}}function ci(t,e){return ai(t,e).parsed}function TS(t,e){return Wh(t,e).normalized}function Wh(t,e){let{parsed:r,malformedAuthorityOrPort:n,malformedPercentEncoding:o,malformedSchemeSpecific:s,malformedHost:i,malformedScheme:a}=ai(t,e);return{normalized:n||o||s||i||a?t:qr(r,e),malformedAuthorityOrPort:n,malformedPercentEncoding:o,malformedSchemeSpecific:s,malformedHost:i,malformedScheme:a}}function qh(t,e){if(typeof t!="string"&&typeof t!="object")return;let r;try{r=typeof t=="string"?t:qr(t,e)}catch{return}let{normalized:n,malformedAuthorityOrPort:o,malformedPercentEncoding:s,malformedSchemeSpecific:i,malformedHost:a,malformedScheme:c}=Wh(r,e);return o||s||i||a||c?void 0:n}var _l={SCHEMES:Hh,normalize:bS,resolve:xS,resolveComponent:Kh,equal:wS,serialize:qr,parse:ci};ui.exports=_l;ui.exports.default=_l;ui.exports.fastUri=_l});var Qh=T(vl=>{"use strict";Object.defineProperty(vl,"__esModule",{value:!0});var Xh=Yh();Xh.code='require("ajv/dist/runtime/uri").default';vl.default=Xh});var ag=T(Ae=>{"use strict";Object.defineProperty(Ae,"__esModule",{value:!0});Ae.CodeGen=Ae.Name=Ae.nil=Ae.stringify=Ae.str=Ae._=Ae.KeywordCxt=void 0;var ES=xo();Object.defineProperty(Ae,"KeywordCxt",{enumerable:!0,get:function(){return ES.KeywordCxt}});var xn=X();Object.defineProperty(Ae,"_",{enumerable:!0,get:function(){return xn._}});Object.defineProperty(Ae,"str",{enumerable:!0,get:function(){return xn.str}});Object.defineProperty(Ae,"stringify",{enumerable:!0,get:function(){return xn.stringify}});Object.defineProperty(Ae,"nil",{enumerable:!0,get:function(){return xn.nil}});Object.defineProperty(Ae,"Name",{enumerable:!0,get:function(){return xn.Name}});Object.defineProperty(Ae,"CodeGen",{enumerable:!0,get:function(){return xn.CodeGen}});var IS=ri(),og=wo(),RS=Fu(),So=oi(),NS=X(),zo=_o(),li=yo(),xl=ie(),eg=Sh(),OS=Qh(),sg=(t,e)=>new RegExp(t,e);sg.code="new RegExp";var CS=["removeAdditional","useDefaults","coerceTypes"],jS=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),AS={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."},MS={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},tg=200;function ZS(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,_,v,w,y,S,M,J,V,$;let Z=t.strict,I=(e=t.code)===null||e===void 0?void 0:e.optimize,L=I===!0||I===void 0?1:I||0,ce=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:sg,K=(o=t.uriResolver)!==null&&o!==void 0?o:OS.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:Z)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Z)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:Z)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:Z)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:Z)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:L,regExp:ce}:{optimize:L,regExp:ce},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:tg,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:tg,meta:(_=t.meta)!==null&&_!==void 0?_:!0,messages:(v=t.messages)!==null&&v!==void 0?v:!0,inlineRefs:(w=t.inlineRefs)!==null&&w!==void 0?w:!0,schemaId:(y=t.schemaId)!==null&&y!==void 0?y:"$id",addUsedSchema:(S=t.addUsedSchema)!==null&&S!==void 0?S:!0,validateSchema:(M=t.validateSchema)!==null&&M!==void 0?M:!0,validateFormats:(J=t.validateFormats)!==null&&J!==void 0?J:!0,unicodeRegExp:(V=t.unicodeRegExp)!==null&&V!==void 0?V:!0,int32range:($=t.int32range)!==null&&$!==void 0?$:!0,uriResolver:K}}var Po=class{constructor(e={}){this.schemas={},this.refs={},this.formats=Object.create(null),this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...ZS(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new NS.ValueScope({scope:{},prefixes:jS,es5:r,lines:n}),this.logger=VS(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,RS.getRules)(),rg.call(this,AS,e,"NOT SUPPORTED"),rg.call(this,MS,e,"DEPRECATED","warn"),this._metaOpts=US.call(this),e.formats&&LS.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&qS.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),DS.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=eg;n==="id"&&(o={...eg},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||i.call(this,f)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof og.default))throw d;return a.call(this,d),await c.call(this,d.missingSchema),i.call(this,l)}}function a({missingSchema:l,missingRef:d}){if(this.refs[l])throw new Error(`AnySchema ${l} is loaded but ${d} cannot be resolved`)}async function c(l){let d=await u.call(this,l);this.refs[l]||await s.call(this,d.$schema),this.refs[l]||this.addSchema(d,l,r)}async function u(l){let d=this._loading[l];if(d)return d;try{return await(this._loading[l]=n(l))}finally{delete this._loading[l]}}}addSchema(e,r,n,o=this.opts.validateSchema){if(Array.isArray(e)){for(let i of e)this.addSchema(i,void 0,n,o);return this}let s;if(typeof e=="object"){let{schemaId:i}=this.opts;if(s=e[i],s!==void 0&&typeof s!="string")throw new Error(`schema ${i} must be string`)}return r=(0,zo.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=ng.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new So.SchemaEnv({schema:{},schemaId:n});if(r=So.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=ng.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,zo.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(BS.call(this,n,r),!r)return(0,xl.eachItem)(n,s=>bl.call(this,s)),this;KS.call(this,r);let o={...r,type:(0,li.getJSONTypes)(r.type),schemaType:(0,li.getJSONTypes)(r.schemaType)};return(0,xl.eachItem)(n,o.type.length===0?s=>bl.call(this,s,o):s=>o.type.forEach(i=>bl.call(this,s,o,i))),this}getKeyword(e){let r=this.RULES.all[e];return typeof r=="object"?r.definition:!!r}removeKeyword(e){let{RULES:r}=this;delete r.keywords[e],delete r.all[e];for(let n of r.rules){let o=n.rules.findIndex(s=>s.keyword===e);o>=0&&n.rules.splice(o,1)}return this}addFormat(e,r){return typeof r=="string"&&(r=new RegExp(r)),this.formats[e]=r,this}errorsText(e=this.errors,{separator:r=", ",dataVar:n="data"}={}){return!e||e.length===0?"No errors":e.map(o=>`${n}${o.instancePath} ${o.message}`).reduce((o,s)=>o+r+s)}$dataMetaSchema(e,r){let n=this.RULES.all;e=JSON.parse(JSON.stringify(e));for(let o of r){let s=o.split("/").slice(1),i=e;for(let a of s)i=i[a];for(let a in n){let c=n[a];if(typeof c!="object")continue;let{$data:u}=c.definition,l=i[a];u&&l&&(i[a]=ig(l))}}return e}_removeAllSchemas(e,r){for(let n in e){let o=e[n];(!r||r.test(n))&&(typeof o=="string"?delete e[n]:o&&!o.meta&&(this._cache.delete(o.schema),delete e[n]))}}_addSchema(e,r,n,o=this.opts.validateSchema,s=this.opts.addUsedSchema){let i,{schemaId:a}=this.opts;if(typeof e=="object")i=e[a];else{if(this.opts.jtd)throw new Error("schema must be object");if(typeof e!="boolean")throw new Error("schema must be object or boolean")}let c=this._cache.get(e);if(c!==void 0)return c;n=(0,zo.normalizeId)(i||n);let u=zo.getSchemaRefs.call(this,e,n);return c=new So.SchemaEnv({schema:e,schemaId:a,meta:r,baseId:n,localRefs:u}),this._cache.set(c.schema,c),s&&!n.startsWith("#")&&(n&&this._checkUnique(n),this.refs[n]=c),o&&this.validateSchema(e,!0),c}_checkUnique(e){if(this.schemas[e]||this.refs[e])throw new Error(`schema with key or id "${e}" already exists`)}_compileSchemaEnv(e){if(e.meta?this._compileMetaSchema(e):So.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{So.compileSchema.call(this,e)}finally{this.opts=r}}};Po.ValidationError=IS.default;Po.MissingRefError=og.default;Ae.default=Po;function rg(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 ng(t){return t=(0,zo.normalizeId)(t),this.schemas[t]||this.refs[t]}function DS(){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 LS(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function qS(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 US(){let t={...this.opts};for(let e of CS)delete t[e];return t}var FS={log(){},warn(){},error(){}};function VS(t){if(t===!1)return FS;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 HS=/^[a-z_$][a-z0-9_$:-]*$/i;function BS(t,e){let{RULES:r}=this;if((0,xl.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!HS.test(n))throw new Error(`Keyword ${n} has invalid name`)}),!!e&&e.$data&&!("code"in e||"validate"in e))throw new Error('$data keyword must have "code" or "validate" function')}function bl(t,e,r){var n;let o=e?.post;if(r&&o)throw new Error('keyword with "post" flag cannot have "type"');let{RULES:s}=this,i=o?s.post:s.rules.find(({type:c})=>c===r);if(i||(i={type:r,rules:[]},s.rules.push(i)),s.keywords[t]=!0,!e)return;let a={keyword:t,definition:{...e,type:(0,li.getJSONTypes)(e.type),schemaType:(0,li.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(c=>this.addKeyword(c))}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 KS(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=ig(e)),t.validateSchema=this.compile(e,!0))}var GS={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function ig(t){return{anyOf:[t,GS]}}});var cg=T(wl=>{"use strict";Object.defineProperty(wl,"__esModule",{value:!0});var WS={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};wl.default=WS});var pg=T(Ur=>{"use strict";Object.defineProperty(Ur,"__esModule",{value:!0});Ur.callRef=Ur.getValidate=void 0;var YS=wo(),ug=pt(),tt=X(),wn=Ut(),lg=oi(),di=ie(),XS={keyword:"$ref",schemaType:"string",code(t){let{gen:e,schema:r,it:n}=t,{baseId:o,schemaEnv:s,validateName:i,opts:a,self:c}=n,{root:u}=s;if((r==="#"||r==="#/")&&o===u.baseId)return d();let l=lg.resolveRef.call(c,u,o,r);if(l===void 0)throw new YS.default(n.opts.uriResolver,o,r);if(l instanceof lg.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return pi(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return pi(t,(0,tt._)`${p}.validate`,u,u.$async)}function f(p){let h=dg(t,p);pi(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,tt.stringify)(p)}:{ref:p}),g=e.name("valid"),_=t.subschema({schema:p,dataTypes:[],schemaPath:tt.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function dg(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,tt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Ur.getValidate=dg;function pi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?wn.default.this:tt.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,tt._)`await ${(0,ug.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,tt._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,ug.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,tt._)`${p}.errors`;o.assign(wn.default.vErrors,(0,tt._)`${wn.default.vErrors} === null ? ${h} : ${wn.default.vErrors}.concat(${h})`),o.assign(wn.default.errors,(0,tt._)`${wn.default.vErrors}.length`)}function m(p){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=di.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,tt._)`${p}.evaluated.props`);s.props=di.mergeEvaluated.props(o,_,s.props,tt.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=di.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,tt._)`${p}.evaluated.items`);s.items=di.mergeEvaluated.items(o,_,s.items,tt.Name)}}}Ur.callRef=pi;Ur.default=XS});var fg=T($l=>{"use strict";Object.defineProperty($l,"__esModule",{value:!0});var QS=cg(),ez=pg(),tz=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",QS.default,ez.default];$l.default=tz});var mg=T(kl=>{"use strict";Object.defineProperty(kl,"__esModule",{value:!0});var fi=X(),ir=fi.operators,mi={maximum:{okStr:"<=",ok:ir.LTE,fail:ir.GT},minimum:{okStr:">=",ok:ir.GTE,fail:ir.LT},exclusiveMaximum:{okStr:"<",ok:ir.LT,fail:ir.GTE},exclusiveMinimum:{okStr:">",ok:ir.GT,fail:ir.LTE}},rz={message:({keyword:t,schemaCode:e})=>(0,fi.str)`must be ${mi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,fi._)`{comparison: ${mi[t].okStr}, limit: ${e}}`},nz={keyword:Object.keys(mi),type:"number",schemaType:"number",$data:!0,error:rz,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,fi._)`${r} ${mi[e].fail} ${n} || isNaN(${r})`)}};kl.default=nz});var hg=T(Sl=>{"use strict";Object.defineProperty(Sl,"__esModule",{value:!0});var To=X(),oz={message:({schemaCode:t})=>(0,To.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,To._)`{multipleOf: ${t}}`},sz={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:oz,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,To._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,To._)`${i} !== parseInt(${i})`;t.fail$data((0,To._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Sl.default=sz});var yg=T(zl=>{"use strict";Object.defineProperty(zl,"__esModule",{value:!0});function gg(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}zl.default=gg;gg.code='require("ajv/dist/runtime/ucs2length").default'});var _g=T(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});var Fr=X(),iz=ie(),az=yg(),cz={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Fr.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Fr._)`{limit: ${t}}`},uz={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:cz,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Fr.operators.GT:Fr.operators.LT,i=o.opts.unicode===!1?(0,Fr._)`${r}.length`:(0,Fr._)`${(0,iz.useFunc)(t.gen,az.default)}(${r})`;t.fail$data((0,Fr._)`${i} ${s} ${n}`)}};Pl.default=uz});var vg=T(Tl=>{"use strict";Object.defineProperty(Tl,"__esModule",{value:!0});var lz=pt(),dz=ie(),$n=X(),pz={message:({schemaCode:t})=>(0,$n.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,$n._)`{pattern: ${t}}`},fz={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:pz,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?(0,$n._)`new RegExp`:(0,dz.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,$n._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,$n._)`!${l}`)}else{let c=(0,lz.usePattern)(t,o);t.fail$data((0,$n._)`!${c}.test(${r})`)}}};Tl.default=fz});var bg=T(El=>{"use strict";Object.defineProperty(El,"__esModule",{value:!0});var Eo=X(),mz={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Eo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Eo._)`{limit: ${t}}`},hz={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:mz,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Eo.operators.GT:Eo.operators.LT;t.fail$data((0,Eo._)`Object.keys(${r}).length ${o} ${n}`)}};El.default=hz});var xg=T(Il=>{"use strict";Object.defineProperty(Il,"__esModule",{value:!0});var Io=pt(),Ro=X(),gz=ie(),yz={message:({params:{missingProperty:t}})=>(0,Ro.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,Ro._)`{missingProperty: ${t}}`},_z={keyword:"required",type:"object",schemaType:"array",$data:!0,error:yz,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let m=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(m?.[h]===void 0&&!p.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,_=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,gz.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(Ro.nil,d);else for(let m of r)(0,Io.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>f(m,p)),t.ok(p)}else e.if((0,Io.checkMissingProp)(t,r,m)),(0,Io.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,Io.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,Io.propertyInData)(e,o,m,a.ownProperties)),e.if((0,Ro.not)(p),()=>{t.error(),e.break()})},Ro.nil)}}};Il.default=_z});var wg=T(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});var No=X(),vz={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,No.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,No._)`{limit: ${t}}`},bz={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:vz,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?No.operators.GT:No.operators.LT;t.fail$data((0,No._)`${r}.length ${o} ${n}`)}};Rl.default=bz});var hi=T(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});var $g=Yu();$g.code='require("ajv/dist/runtime/equal").default';Nl.default=$g});var kg=T(Cl=>{"use strict";Object.defineProperty(Cl,"__esModule",{value:!0});var Ol=yo(),Me=X(),xz=ie(),wz=hi(),$z={message:({params:{i:t,j:e}})=>(0,Me.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Me._)`{i: ${t}, j: ${e}}`},kz={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:$z,code(t){let{gen:e,data:r,$data:n,schema:o,parentSchema:s,schemaCode:i,it:a}=t;if(!n&&!o)return;let c=e.let("valid"),u=s.items?(0,Ol.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Me._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Me._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,Me._)`${p} > 1`,()=>(d()?f:m)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let g=e.name("item"),_=(0,Ol.checkDataTypes)(u,g,a.opts.strictNumbers,Ol.DataType.Wrong),v=e.const("indices",(0,Me._)`{}`);e.for((0,Me._)`;${p}--;`,()=>{e.let(g,(0,Me._)`${r}[${p}]`),e.if(_,(0,Me._)`continue`),u.length>1&&e.if((0,Me._)`typeof ${g} == "string"`,(0,Me._)`${g} += "_"`),e.if((0,Me._)`typeof ${v}[${g}] == "number"`,()=>{e.assign(h,(0,Me._)`${v}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Me._)`${v}[${g}] = ${p}`)})}function m(p,h){let g=(0,xz.useFunc)(e,wz.default),_=e.name("outer");e.label(_).for((0,Me._)`;${p}--;`,()=>e.for((0,Me._)`${h} = ${p}; ${h}--;`,()=>e.if((0,Me._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};Cl.default=kz});var Sg=T(Al=>{"use strict";Object.defineProperty(Al,"__esModule",{value:!0});var jl=X(),Sz=ie(),zz=hi(),Pz={message:"must be equal to constant",params:({schemaCode:t})=>(0,jl._)`{allowedValue: ${t}}`},Tz={keyword:"const",$data:!0,error:Pz,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,jl._)`!${(0,Sz.useFunc)(e,zz.default)}(${r}, ${o})`):t.fail((0,jl._)`${s} !== ${r}`)}};Al.default=Tz});var zg=T(Ml=>{"use strict";Object.defineProperty(Ml,"__esModule",{value:!0});var Oo=X(),Ez=ie(),Iz=hi(),Rz={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,Oo._)`{allowedValues: ${t}}`},Nz={keyword:"enum",schemaType:"array",$data:!0,error:Rz,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t;if(!n&&o.length===0)throw new Error("enum must have non-empty array");let a=o.length>=i.opts.loopEnum,c,u=()=>c??(c=(0,Ez.useFunc)(e,Iz.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let m=e.const("vSchema",s);l=(0,Oo.or)(...o.map((p,h)=>f(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,m=>e.if((0,Oo._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,Oo._)`${u()}(${r}, ${m}[${p}])`:(0,Oo._)`${r} === ${h}`}}};Ml.default=Nz});var Pg=T(Zl=>{"use strict";Object.defineProperty(Zl,"__esModule",{value:!0});var Oz=mg(),Cz=hg(),jz=_g(),Az=vg(),Mz=bg(),Zz=xg(),Dz=wg(),Lz=kg(),qz=Sg(),Uz=zg(),Fz=[Oz.default,Cz.default,jz.default,Az.default,Mz.default,Zz.default,Dz.default,Lz.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},qz.default,Uz.default];Zl.default=Fz});var Ll=T(Co=>{"use strict";Object.defineProperty(Co,"__esModule",{value:!0});Co.validateAdditionalItems=void 0;var Vr=X(),Dl=ie(),Vz={message:({params:{len:t}})=>(0,Vr.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Vr._)`{limit: ${t}}`},Hz={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:Vz,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Dl.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}Tg(t,n)}};function Tg(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Vr._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Vr._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Dl.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Vr._)`${a} <= ${e.length}`);r.if((0,Vr.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Dl.Type.Num},u),i.allErrors||r.if((0,Vr.not)(u),()=>r.break())})}}Co.validateAdditionalItems=Tg;Co.default=Hz});var ql=T(jo=>{"use strict";Object.defineProperty(jo,"__esModule",{value:!0});jo.validateTuple=void 0;var Eg=X(),gi=ie(),Bz=pt(),Jz={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Ig(t,"additionalItems",e);r.items=!0,!(0,gi.alwaysValidSchema)(r,e)&&t.ok((0,Bz.validateArray)(t))}};function Ig(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=gi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,Eg._)`${s}.length`);r.forEach((d,f)=>{(0,gi.alwaysValidSchema)(a,d)||(n.if((0,Eg._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:m}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,gi.checkStrictMode)(a,g,f.strictTuples)}}}jo.validateTuple=Ig;jo.default=Jz});var Rg=T(Ul=>{"use strict";Object.defineProperty(Ul,"__esModule",{value:!0});var Kz=ql(),Gz={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,Kz.validateTuple)(t,"items")};Ul.default=Gz});var Og=T(Fl=>{"use strict";Object.defineProperty(Fl,"__esModule",{value:!0});var Ng=X(),Wz=ie(),Yz=pt(),Xz=Ll(),Qz={message:({params:{len:t}})=>(0,Ng.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Ng._)`{limit: ${t}}`},eP={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:Qz,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,Wz.alwaysValidSchema)(n,e)&&(o?(0,Xz.validateAdditionalItems)(t,o):t.ok((0,Yz.validateArray)(t)))}};Fl.default=eP});var Cg=T(Vl=>{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});var mt=X(),yi=ie(),tP={message:({params:{min:t,max:e}})=>e===void 0?(0,mt.str)`must contain at least ${t} valid item(s)`:(0,mt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,mt._)`{minContains: ${t}}`:(0,mt._)`{minContains: ${t}, maxContains: ${e}}`},rP={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:tP,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,mt._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,yi.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,yi.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,yi.alwaysValidSchema)(s,r)){let h=(0,mt._)`${l} >= ${i}`;a!==void 0&&(h=(0,mt._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,mt._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>p(g)))}function m(h,g){e.forRange("i",0,l,_=>{t.subschema({keyword:"contains",dataProp:_,dataPropType:yi.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,mt._)`${h}++`),a===void 0?e.if((0,mt._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,mt._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,mt._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Vl.default=rP});var Mg=T(Rt=>{"use strict";Object.defineProperty(Rt,"__esModule",{value:!0});Rt.validateSchemaDeps=Rt.validatePropertyDeps=Rt.error=void 0;var Hl=X(),nP=ie(),Ao=pt();Rt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Hl.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Hl._)`{property: ${t},
|
|
7
|
+
missingProperty: ${n},
|
|
8
|
+
depsCount: ${e},
|
|
9
|
+
deps: ${r}}`};var oP={keyword:"dependencies",type:"object",schemaType:"object",error:Rt.error,code(t){let[e,r]=sP(t);jg(t,e),Ag(t,r)}};function sP({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 jg(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,Ao.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,Ao.checkReportMissingProp)(t,u)}):(r.if((0,Hl._)`${c} && (${(0,Ao.checkMissingProp)(t,a,s)})`),(0,Ao.reportMissingProp)(t,s),r.else())}}Rt.validatePropertyDeps=jg;function Ag(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,nP.alwaysValidSchema)(s,e[a])||(r.if((0,Ao.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}Rt.validateSchemaDeps=Ag;Rt.default=oP});var Dg=T(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});var Zg=X(),iP=ie(),aP={message:"property name must be valid",params:({params:t})=>(0,Zg._)`{propertyName: ${t.propertyName}}`},cP={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:aP,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,iP.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,Zg.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Bl.default=cP});var Kl=T(Jl=>{"use strict";Object.defineProperty(Jl,"__esModule",{value:!0});var _i=pt(),wt=X(),uP=Ut(),vi=ie(),lP={message:"must NOT have additional properties",params:({params:t})=>(0,wt._)`{additionalProperty: ${t.additionalProperty}}`},dP={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:lP,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,vi.alwaysValidSchema)(i,r))return;let u=(0,_i.allSchemaProperties)(n.properties),l=(0,_i.allSchemaProperties)(n.patternProperties);d(),t.ok((0,wt._)`${s} === ${uP.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(f(g),()=>p(g))})}function f(g){let _;if(u.length>8){let v=(0,vi.schemaRefOrVal)(i,n.properties,"properties");_=(0,_i.isOwnProperty)(e,v,g)}else u.length?_=(0,wt.or)(...u.map(v=>(0,wt._)`${g} === ${v}`)):_=wt.nil;return l.length&&(_=(0,wt.or)(_,...l.map(v=>(0,wt._)`${(0,_i.usePattern)(t,v)}.test(${g})`))),(0,wt.not)(_)}function m(g){e.code((0,wt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,vi.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,wt.not)(_),()=>{t.reset(),m(g)})):(h(g,_),a||e.if((0,wt.not)(_),()=>e.break()))}}function h(g,_,v){let w={keyword:"additionalProperties",dataProp:g,dataPropType:vi.Type.Str};v===!1&&Object.assign(w,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(w,_)}}};Jl.default=dP});var Ug=T(Wl=>{"use strict";Object.defineProperty(Wl,"__esModule",{value:!0});var pP=xo(),Lg=pt(),Gl=ie(),qg=Kl(),fP={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&&qg.default.code(new pP.KeywordCxt(s,qg.default,"additionalProperties"));let i=(0,Lg.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Gl.mergeEvaluated.props(e,(0,Gl.toHash)(i),s.props));let a=i.filter(d=>!(0,Gl.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,Lg.propertyInData)(e,o,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Wl.default=fP});var Bg=T(Yl=>{"use strict";Object.defineProperty(Yl,"__esModule",{value:!0});var Fg=pt(),bi=X(),Vg=ie(),Hg=ie(),mP={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,Fg.allSchemaProperties)(r),c=a.filter(h=>(0,Vg.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof bi.Name)&&(s.props=(0,Hg.evaluatedPropsToName)(e,s.props));let{props:d}=s;f();function f(){for(let h of a)u&&m(h),s.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function m(h){for(let g in u)new RegExp(h).test(g)&&(0,Vg.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,bi._)`${(0,Fg.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:Hg.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,bi._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,bi.not)(l),()=>e.break())})})}}};Yl.default=mP});var Jg=T(Xl=>{"use strict";Object.defineProperty(Xl,"__esModule",{value:!0});var hP=ie(),gP={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,hP.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"}};Xl.default=gP});var Kg=T(Ql=>{"use strict";Object.defineProperty(Ql,"__esModule",{value:!0});var yP=pt(),_P={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:yP.validateUnion,error:{message:"must match a schema in anyOf"}};Ql.default=_P});var Gg=T(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var xi=X(),vP=ie(),bP={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,xi._)`{passingSchemas: ${t.passing}}`},xP={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:bP,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let f;(0,vP.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,xi._)`${c} && ${i}`).assign(i,!1).assign(a,(0,xi._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,xi.Name)})})}}};ed.default=xP});var Wg=T(td=>{"use strict";Object.defineProperty(td,"__esModule",{value:!0});var wP=ie(),$P={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,wP.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};td.default=$P});var Qg=T(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});var wi=X(),Xg=ie(),kP={message:({params:t})=>(0,wi.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,wi._)`{failingKeyword: ${t.ifClause}}`},SP={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:kP,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,Xg.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Yg(n,"then"),s=Yg(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,wi.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,wi._)`${l}`):t.setParams({ifClause:l})}}}};function Yg(t,e){let r=t.schema[e];return r!==void 0&&!(0,Xg.alwaysValidSchema)(t,r)}rd.default=SP});var ey=T(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var zP=ie(),PP={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,zP.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};nd.default=PP});var ty=T(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var TP=Ll(),EP=Rg(),IP=ql(),RP=Og(),NP=Cg(),OP=Mg(),CP=Dg(),jP=Kl(),AP=Ug(),MP=Bg(),ZP=Jg(),DP=Kg(),LP=Gg(),qP=Wg(),UP=Qg(),FP=ey();function VP(t=!1){let e=[ZP.default,DP.default,LP.default,qP.default,UP.default,FP.default,CP.default,jP.default,OP.default,AP.default,MP.default];return t?e.push(EP.default,RP.default):e.push(TP.default,IP.default),e.push(NP.default),e}od.default=VP});var ry=T(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});var Pe=X(),HP={message:({schemaCode:t})=>(0,Pe.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Pe._)`{format: ${t}}`},BP={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:HP,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Pe._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,Pe._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Pe._)`${h}.type || "string"`).assign(_,(0,Pe._)`${h}.validate`),()=>r.assign(g,(0,Pe._)`"string"`).assign(_,h)),t.fail$data((0,Pe.or)(v(),w()));function v(){return c.strictSchema===!1?Pe.nil:(0,Pe._)`${i} && !${_}`}function w(){let y=l.$async?(0,Pe._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,Pe._)`${_}(${n})`,S=(0,Pe._)`(typeof ${_} == "function" ? ${y} : ${_}.test(${n}))`;return(0,Pe._)`${_} && ${_} !== true && ${g} === ${e} && !${S}`}}function m(){let p=d.formats[s];if(!p){v();return}if(p===!0)return;let[h,g,_]=w(p);h===e&&t.pass(y());function v(){if(c.strictSchema===!1){d.logger.warn(S());return}throw new Error(S());function S(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function w(S){let M=S instanceof RegExp?(0,Pe.regexpCode)(S):c.code.formats?(0,Pe._)`${c.code.formats}${(0,Pe.getProperty)(s)}`:void 0,J=r.scopeValue("formats",{key:s,ref:S,code:M});return typeof S=="object"&&!(S instanceof RegExp)?[S.type||"string",S.validate,(0,Pe._)`${J}.validate`]:["string",S,J]}function y(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Pe._)`await ${_}(${n})`}return typeof g=="function"?(0,Pe._)`${_}(${n})`:(0,Pe._)`${_}.test(${n})`}}}};sd.default=BP});var ny=T(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var JP=ry(),KP=[JP.default];id.default=KP});var oy=T(kn=>{"use strict";Object.defineProperty(kn,"__esModule",{value:!0});kn.contentVocabulary=kn.metadataVocabulary=void 0;kn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];kn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var iy=T(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var GP=fg(),WP=Pg(),YP=ty(),XP=ny(),sy=oy(),QP=[GP.default,WP.default,(0,YP.default)(),XP.default,sy.metadataVocabulary,sy.contentVocabulary];ad.default=QP});var cy=T($i=>{"use strict";Object.defineProperty($i,"__esModule",{value:!0});$i.DiscrError=void 0;var ay;(function(t){t.Tag="tag",t.Mapping="mapping"})(ay||($i.DiscrError=ay={}))});var ly=T(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});var Sn=X(),cd=cy(),uy=oi(),eT=wo(),tT=ie(),rT={message:({params:{discrError:t,tagName:e}})=>t===cd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Sn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},nT={keyword:"discriminator",type:"object",schemaType:"object",error:rT,code(t){let{gen:e,data:r,schema:n,parentSchema:o,it:s}=t,{oneOf:i}=o;if(!s.opts.discriminator)throw new Error("discriminator: requires discriminator option");let a=n.propertyName;if(typeof a!="string")throw new Error("discriminator: requires propertyName");if(n.mapping)throw new Error("discriminator: mapping is not supported");if(!i)throw new Error("discriminator: requires oneOf keyword");let c=e.let("valid",!1),u=e.const("tag",(0,Sn._)`${r}${(0,Sn.getProperty)(a)}`);e.if((0,Sn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:cd.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,Sn._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:cd.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,Sn.Name),p}function f(){var m;let p={},h=_(o),g=!0;for(let y=0;y<i.length;y++){let S=i[y];if(S?.$ref&&!(0,tT.schemaHasRulesButRef)(S,s.self.RULES)){let J=S.$ref;if(S=uy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,J),S instanceof uy.SchemaEnv&&(S=S.schema),S===void 0)throw new eT.default(s.opts.uriResolver,s.baseId,J)}let M=(m=S?.properties)===null||m===void 0?void 0:m[a];if(typeof M!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(S)),v(M,y)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({required:y}){return Array.isArray(y)&&y.includes(a)}function v(y,S){if(y.const)w(y.const,S);else if(y.enum)for(let M of y.enum)w(M,S);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function w(y,S){if(typeof y!="string"||y in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[y]=S}}}};ud.default=nT});var dy=T((ej,oT)=>{oT.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 dd=T((be,ld)=>{"use strict";Object.defineProperty(be,"__esModule",{value:!0});be.MissingRefError=be.ValidationError=be.CodeGen=be.Name=be.nil=be.stringify=be.str=be._=be.KeywordCxt=be.Ajv=void 0;var sT=ag(),iT=iy(),aT=ly(),py=dy(),cT=["/properties"],ki="http://json-schema.org/draft-07/schema",zn=class extends sT.default{_addVocabularies(){super._addVocabularies(),iT.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(aT.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(py,cT):py;this.addMetaSchema(e,ki,!1),this.refs["http://json-schema.org/schema"]=ki}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ki)?ki:void 0)}};be.Ajv=zn;ld.exports=be=zn;ld.exports.Ajv=zn;Object.defineProperty(be,"__esModule",{value:!0});be.default=zn;var uT=xo();Object.defineProperty(be,"KeywordCxt",{enumerable:!0,get:function(){return uT.KeywordCxt}});var Pn=X();Object.defineProperty(be,"_",{enumerable:!0,get:function(){return Pn._}});Object.defineProperty(be,"str",{enumerable:!0,get:function(){return Pn.str}});Object.defineProperty(be,"stringify",{enumerable:!0,get:function(){return Pn.stringify}});Object.defineProperty(be,"nil",{enumerable:!0,get:function(){return Pn.nil}});Object.defineProperty(be,"Name",{enumerable:!0,get:function(){return Pn.Name}});Object.defineProperty(be,"CodeGen",{enumerable:!0,get:function(){return Pn.CodeGen}});var lT=ri();Object.defineProperty(be,"ValidationError",{enumerable:!0,get:function(){return lT.default}});var dT=wo();Object.defineProperty(be,"MissingRefError",{enumerable:!0,get:function(){return dT.default}})});var by=T(Ot=>{"use strict";Object.defineProperty(Ot,"__esModule",{value:!0});Ot.formatNames=Ot.fastFormats=Ot.fullFormats=void 0;function Nt(t,e){return{validate:t,compare:e}}Ot.fullFormats={date:Nt(gy,hd),time:Nt(fd(!0),gd),"date-time":Nt(fy(!0),_y),"iso-time":Nt(fd(),yy),"iso-date-time":Nt(fy(),vy),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:yT,"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:kT,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:_T,int32:{type:"number",validate:xT},int64:{type:"number",validate:wT},float:{type:"number",validate:hy},double:{type:"number",validate:hy},password:!0,binary:!0};Ot.fastFormats={...Ot.fullFormats,date:Nt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,hd),time:Nt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,gd),"date-time":Nt(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,_y),"iso-time":Nt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,yy),"iso-date-time":Nt(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,vy),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};Ot.formatNames=Object.keys(Ot.fullFormats);function pT(t){return t%4===0&&(t%100!==0||t%400===0)}var fT=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,mT=[0,31,28,31,30,31,30,31,31,30,31,30,31];function gy(t){let e=fT.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&&pT(r)?29:mT[n])}function hd(t,e){if(t&&e)return t>e?1:t<e?-1:0}var pd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function fd(t){return function(r){let n=pd.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,f=o-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&i<61}}function gd(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 yy(t,e){if(!(t&&e))return;let r=pd.exec(t),n=pd.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 md=/t|\s/i;function fy(t){let e=fd(t);return function(n){let o=n.split(md);return o.length===2&&gy(o[0])&&e(o[1])}}function _y(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function vy(t,e){if(!(t&&e))return;let[r,n]=t.split(md),[o,s]=e.split(md),i=hd(r,o);if(i!==void 0)return i||gd(n,s)}var hT=/\/|:/,gT=/^(?:[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 yT(t){return hT.test(t)&&gT.test(t)}var my=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function _T(t){return my.lastIndex=0,my.test(t)}var vT=-(2**31),bT=2**31-1;function xT(t){return Number.isInteger(t)&&t<=bT&&t>=vT}function wT(t){return Number.isInteger(t)}function hy(){return!0}var $T=/[^\\]\\Z/;function kT(t){if($T.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var xy=T(Tn=>{"use strict";Object.defineProperty(Tn,"__esModule",{value:!0});Tn.formatLimitDefinition=void 0;var ST=dd(),$t=X(),ar=$t.operators,Si={formatMaximum:{okStr:"<=",ok:ar.LTE,fail:ar.GT},formatMinimum:{okStr:">=",ok:ar.GTE,fail:ar.LT},formatExclusiveMaximum:{okStr:"<",ok:ar.LT,fail:ar.GTE},formatExclusiveMinimum:{okStr:">",ok:ar.GT,fail:ar.LTE}},zT={message:({keyword:t,schemaCode:e})=>(0,$t.str)`should be ${Si[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,$t._)`{comparison: ${Si[t].okStr}, limit: ${e}}`};Tn.formatLimitDefinition={keyword:Object.keys(Si),type:"string",schemaType:"string",$data:!0,error:zT,code(t){let{gen:e,data:r,schemaCode:n,keyword:o,it:s}=t,{opts:i,self:a}=s;if(!i.validateFormats)return;let c=new ST.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,$t._)`${f}[${c.schemaCode}]`);t.fail$data((0,$t.or)((0,$t._)`typeof ${m} != "object"`,(0,$t._)`${m} instanceof RegExp`,(0,$t._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:i.code.formats?(0,$t._)`${i.code.formats}${(0,$t.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,$t._)`${f}.compare(${r}, ${n}) ${Si[o].fail} 0`}},dependencies:["format"]};var PT=t=>(t.addKeyword(Tn.formatLimitDefinition),t);Tn.default=PT});var Sy=T((Mo,ky)=>{"use strict";Object.defineProperty(Mo,"__esModule",{value:!0});var En=by(),TT=xy(),yd=X(),wy=new yd.Name("fullFormats"),ET=new yd.Name("fastFormats"),_d=(t,e={keywords:!0})=>{if(Array.isArray(e))return $y(t,e,En.fullFormats,wy),t;let[r,n]=e.mode==="fast"?[En.fastFormats,ET]:[En.fullFormats,wy],o=e.formats||En.formatNames;return $y(t,o,r,n),e.keywords&&(0,TT.default)(t),t};_d.get=(t,e="full")=>{let n=(e==="fast"?En.fastFormats:En.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function $y(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,yd._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}ky.exports=Mo=_d;Object.defineProperty(Mo,"__esModule",{value:!0});Mo.default=_d});var H={};qi(H,{BRAND:()=>G_,DIRTY:()=>lr,EMPTY_PATH:()=>P_,INVALID:()=>q,NEVER:()=>Nv,OK:()=>Ze,ParseStatus:()=>Ne,Schema:()=>Y,ZodAny:()=>Bt,ZodArray:()=>Zt,ZodBigInt:()=>pr,ZodBoolean:()=>fr,ZodBranded:()=>Cn,ZodCatch:()=>kr,ZodDate:()=>mr,ZodDefault:()=>$r,ZodDiscriminatedUnion:()=>Jo,ZodEffects:()=>ct,ZodEnum:()=>xr,ZodError:()=>Je,ZodFirstPartyTypeKind:()=>z,ZodFunction:()=>Go,ZodIntersection:()=>_r,ZodIssueCode:()=>k,ZodLazy:()=>vr,ZodLiteral:()=>br,ZodMap:()=>Qr,ZodNaN:()=>tn,ZodNativeEnum:()=>wr,ZodNever:()=>ht,ZodNull:()=>gr,ZodNullable:()=>zt,ZodNumber:()=>dr,ZodObject:()=>Ge,ZodOptional:()=>Ke,ZodParsedType:()=>E,ZodPipeline:()=>jn,ZodPromise:()=>Jt,ZodReadonly:()=>Sr,ZodRecord:()=>Ko,ZodSchema:()=>Y,ZodSet:()=>en,ZodString:()=>Ht,ZodSymbol:()=>Yr,ZodTransformer:()=>ct,ZodTuple:()=>St,ZodType:()=>Y,ZodUndefined:()=>hr,ZodUnion:()=>yr,ZodUnknown:()=>Mt,ZodVoid:()=>Xr,addIssueToContext:()=>P,any:()=>ov,array:()=>cv,bigint:()=>Q_,boolean:()=>qd,coerce:()=>Rv,custom:()=>Zd,date:()=>ev,datetimeRegex:()=>Ad,defaultErrorMap:()=>jt,discriminatedUnion:()=>dv,effect:()=>$v,enum:()=>bv,function:()=>yv,getErrorMap:()=>Kr,getParsedType:()=>kt,instanceof:()=>Y_,intersection:()=>pv,isAborted:()=>Ho,isAsync:()=>Gr,isDirty:()=>Bo,isValid:()=>Vt,late:()=>W_,lazy:()=>_v,literal:()=>vv,makeIssue:()=>On,map:()=>hv,nan:()=>X_,nativeEnum:()=>xv,never:()=>iv,null:()=>nv,nullable:()=>Sv,number:()=>Ld,object:()=>Hi,objectUtil:()=>Ui,oboolean:()=>Iv,onumber:()=>Ev,optional:()=>kv,ostring:()=>Tv,pipeline:()=>Pv,preprocess:()=>zv,promise:()=>wv,quotelessJson:()=>k_,record:()=>mv,set:()=>gv,setErrorMap:()=>z_,strictObject:()=>uv,string:()=>Dd,symbol:()=>tv,transformer:()=>$v,tuple:()=>fv,undefined:()=>rv,union:()=>lv,unknown:()=>sv,util:()=>te,void:()=>av});var te;(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})(te||(te={}));var Ui;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Ui||(Ui={}));var E=te.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),kt=t=>{switch(typeof t){case"undefined":return E.undefined;case"string":return E.string;case"number":return Number.isNaN(t)?E.nan:E.number;case"boolean":return E.boolean;case"function":return E.function;case"bigint":return E.bigint;case"symbol":return E.symbol;case"object":return Array.isArray(t)?E.array:t===null?E.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?E.promise:typeof Map<"u"&&t instanceof Map?E.map:typeof Set<"u"&&t instanceof Set?E.set:typeof Date<"u"&&t instanceof Date?E.date:E.object;default:return E.unknown}};var k=te.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"]),k_=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Je=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,te.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()}};Je.create=t=>new Je(t);var S_=(t,e)=>{let r;switch(t.code){case k.invalid_type:t.received===E.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case k.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,te.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${te.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${te.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${te.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}"`:te.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,te.assertNever(t)}return{message:r}},jt=S_;var Rd=jt;function z_(t){Rd=t}function Kr(){return Rd}var On=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},P_=[];function P(t,e){let r=Kr(),n=On({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===jt?void 0:jt].filter(o=>!!o)});t.common.issues.push(n)}var Ne=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return q;o.status==="dirty"&&e.dirty(),n.push(o.value)}return{status:e.value,value:n}}static async mergeObjectAsync(e,r){let n=[];for(let o of r){let s=await o.key,i=await o.value;n.push({key:s,value:i})}return t.mergeObjectSync(e,n)}static mergeObjectSync(e,r){let n={};for(let o of r){let{key:s,value:i}=o;if(s.status==="aborted"||i.status==="aborted")return q;s.status==="dirty"&&e.dirty(),i.status==="dirty"&&e.dirty(),s.value!=="__proto__"&&(typeof i.value<"u"||o.alwaysSet)&&(n[s.value]=i.value)}return{status:e.value,value:n}}},q=Object.freeze({status:"aborted"}),lr=t=>({status:"dirty",value:t}),Ze=t=>({status:"valid",value:t}),Ho=t=>t.status==="aborted",Bo=t=>t.status==="dirty",Vt=t=>t.status==="valid",Gr=t=>typeof Promise<"u"&&t instanceof Promise;var N;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(N||(N={}));var at=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},Nd=(t,e)=>{if(Vt(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 Je(t.common.issues);return this._error=r,this._error}}};function G(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var Y=class{get description(){return this._def.description}_getType(e){return kt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:kt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Ne,ctx:{common:e.parent.common,data:e.data,parsedType:kt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Gr(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:kt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return Nd(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:kt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Vt(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=>Vt(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:kt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(Gr(o)?o:Promise.resolve(o));return Nd(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:k.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new ct({schema:this,typeName:z.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 Ke.create(this,this._def)}nullable(){return zt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Zt.create(this)}promise(){return Jt.create(this,this._def)}or(e){return yr.create([this,e],this._def)}and(e){return _r.create(this,e,this._def)}transform(e){return new ct({...G(this._def),schema:this,typeName:z.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new $r({...G(this._def),innerType:this,defaultValue:r,typeName:z.ZodDefault})}brand(){return new Cn({typeName:z.ZodBranded,type:this,...G(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new kr({...G(this._def),innerType:this,catchValue:r,typeName:z.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return jn.create(this,e)}readonly(){return Sr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},T_=/^c[^\s-]{8,}$/i,E_=/^[0-9a-z]+$/,I_=/^[0-9A-HJKMNP-TV-Z]{26}$/i,R_=/^[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,N_=/^[a-z0-9_-]{21}$/i,O_=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,C_=/^[-+]?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)?)??$/,j_=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,A_="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Fi,M_=/^(?:(?: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])$/,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])\/(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]))$/,L_=/^(([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}=))?$/,U_=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Cd="((\\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(`^${Cd}$`);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 Ad(t){let e=`${Cd}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)&&M_.test(t)||(e==="v6"||!e)&&D_.test(t))}function B_(t,e){if(!O_.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 J_(t,e){return!!((e==="v4"||!e)&&Z_.test(t)||(e==="v6"||!e)&&L_.test(t))}var Ht=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==E.string){let s=this._getOrReturnCtx(e);return P(s,{code:k.invalid_type,expected:E.string,received:s.parsedType}),q}let n=new Ne,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),P(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),P(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 i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?P(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&P(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")j_.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"email",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Fi||(Fi=new RegExp(A_,"u")),Fi.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"emoji",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")R_.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"uuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")N_.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"nanoid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")T_.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")E_.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cuid2",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")I_.test(e.data)||(o=this._getOrReturnCtx(e,o),P(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),P(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),P(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),P(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),P(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),P(o,{code:k.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Ad(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:k.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?F_.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?V_(s).test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{code:k.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?C_.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?H_(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"ip",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?B_(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"jwt",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?J_(e.data,s.version)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"cidr",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?q_.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?U_.test(e.data)||(o=this._getOrReturnCtx(e,o),P(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):te.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,...N.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...N.errToObj(e)})}url(e){return this._addCheck({kind:"url",...N.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...N.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...N.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...N.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...N.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...N.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...N.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...N.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...N.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...N.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...N.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...N.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,...N.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,...N.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...N.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...N.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...N.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...N.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...N.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...N.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...N.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...N.errToObj(r)})}nonempty(e){return this.min(1,N.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Ht.create=t=>new Ht({checks:[],typeName:z.ZodString,coerce:t?.coerce??!1,...G(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 dr=class t extends Y{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)!==E.number){let s=this._getOrReturnCtx(e);return P(s,{code:k.invalid_type,expected:E.number,received:s.parsedType}),q}let n,o=new Ne;for(let s of this._def.checks)s.kind==="int"?te.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),P(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),P(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),P(n,{code:k.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),P(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),P(n,{code:k.not_finite,message:s.message}),o.dirty()):te.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,N.toString(r))}gt(e,r){return this.setLimit("min",e,!1,N.toString(r))}lte(e,r){return this.setLimit("max",e,!0,N.toString(r))}lt(e,r){return this.setLimit("max",e,!1,N.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:N.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:N.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:N.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:N.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:N.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:N.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:N.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:N.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:N.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:N.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"&&te.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)}};dr.create=t=>new dr({checks:[],typeName:z.ZodNumber,coerce:t?.coerce||!1,...G(t)});var pr=class t extends Y{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)!==E.bigint)return this._getInvalidInput(e);let n,o=new Ne;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),P(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),P(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),P(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):te.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return P(r,{code:k.invalid_type,expected:E.bigint,received:r.parsedType}),q}gte(e,r){return this.setLimit("min",e,!0,N.toString(r))}gt(e,r){return this.setLimit("min",e,!1,N.toString(r))}lte(e,r){return this.setLimit("max",e,!0,N.toString(r))}lt(e,r){return this.setLimit("max",e,!1,N.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:N.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:N.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:N.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:N.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:N.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:N.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}};pr.create=t=>new pr({checks:[],typeName:z.ZodBigInt,coerce:t?.coerce??!1,...G(t)});var fr=class extends Y{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==E.boolean){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:E.boolean,received:n.parsedType}),q}return Ze(e.data)}};fr.create=t=>new fr({typeName:z.ZodBoolean,coerce:t?.coerce||!1,...G(t)});var mr=class t extends Y{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==E.date){let s=this._getOrReturnCtx(e);return P(s,{code:k.invalid_type,expected:E.date,received:s.parsedType}),q}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return P(s,{code:k.invalid_date}),q}let n=new Ne,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),P(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),P(o,{code:k.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):te.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:N.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:N.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}};mr.create=t=>new mr({checks:[],coerce:t?.coerce||!1,typeName:z.ZodDate,...G(t)});var Yr=class extends Y{_parse(e){if(this._getType(e)!==E.symbol){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:E.symbol,received:n.parsedType}),q}return Ze(e.data)}};Yr.create=t=>new Yr({typeName:z.ZodSymbol,...G(t)});var hr=class extends Y{_parse(e){if(this._getType(e)!==E.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:E.undefined,received:n.parsedType}),q}return Ze(e.data)}};hr.create=t=>new hr({typeName:z.ZodUndefined,...G(t)});var gr=class extends Y{_parse(e){if(this._getType(e)!==E.null){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:E.null,received:n.parsedType}),q}return Ze(e.data)}};gr.create=t=>new gr({typeName:z.ZodNull,...G(t)});var Bt=class extends Y{constructor(){super(...arguments),this._any=!0}_parse(e){return Ze(e.data)}};Bt.create=t=>new Bt({typeName:z.ZodAny,...G(t)});var Mt=class extends Y{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ze(e.data)}};Mt.create=t=>new Mt({typeName:z.ZodUnknown,...G(t)});var ht=class extends Y{_parse(e){let r=this._getOrReturnCtx(e);return P(r,{code:k.invalid_type,expected:E.never,received:r.parsedType}),q}};ht.create=t=>new ht({typeName:z.ZodNever,...G(t)});var Xr=class extends Y{_parse(e){if(this._getType(e)!==E.undefined){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:E.void,received:n.parsedType}),q}return Ze(e.data)}};Xr.create=t=>new Xr({typeName:z.ZodVoid,...G(t)});var Zt=class t extends Y{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==E.array)return P(r,{code:k.invalid_type,expected:E.array,received:r.parsedType}),q;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(P(r,{code:i?k.too_big:k.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&&(P(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&&(P(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((i,a)=>o.type._parseAsync(new at(r,i,r.path,a)))).then(i=>Ne.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new at(r,i,r.path,a)));return Ne.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:N.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:N.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:N.toString(r)}})}nonempty(e){return this.min(1,e)}};Zt.create=(t,e)=>new Zt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:z.ZodArray,...G(e)});function Wr(t){if(t instanceof Ge){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ke.create(Wr(n))}return new Ge({...t._def,shape:()=>e})}else return t instanceof Zt?new Zt({...t._def,type:Wr(t.element)}):t instanceof Ke?Ke.create(Wr(t.unwrap())):t instanceof zt?zt.create(Wr(t.unwrap())):t instanceof St?St.create(t.items.map(e=>Wr(e))):t}var Ge=class t extends Y{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=te.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==E.object){let u=this._getOrReturnCtx(e);return P(u,{code:k.invalid_type,expected:E.object,received:u.parsedType}),q}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof ht&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new at(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof ht){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(P(o,{code:k.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new at(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>Ne.mergeObjectSync(n,u)):Ne.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return N.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:N.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:z.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 te.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 te.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Wr(this)}partial(e){let r={};for(let n of te.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 te.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Ke;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Md(te.objectKeys(this.shape))}};Ge.create=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strip",catchall:ht.create(),typeName:z.ZodObject,...G(e)});Ge.strictCreate=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strict",catchall:ht.create(),typeName:z.ZodObject,...G(e)});Ge.lazycreate=(t,e)=>new Ge({shape:t,unknownKeys:"strip",catchall:ht.create(),typeName:z.ZodObject,...G(e)});var yr=class extends Y{_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 Je(a.ctx.common.issues));return P(r,{code:k.invalid_union,unionErrors:i}),q}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(c=>new Je(c));return P(r,{code:k.invalid_union,unionErrors:a}),q}}get options(){return this._def.options}};yr.create=(t,e)=>new yr({options:t,typeName:z.ZodUnion,...G(e)});var At=t=>t instanceof vr?At(t.schema):t instanceof ct?At(t.innerType()):t instanceof br?[t.value]:t instanceof xr?t.options:t instanceof wr?te.objectValues(t.enum):t instanceof $r?At(t._def.innerType):t instanceof hr?[void 0]:t instanceof gr?[null]:t instanceof Ke?[void 0,...At(t.unwrap())]:t instanceof zt?[null,...At(t.unwrap())]:t instanceof Cn||t instanceof Sr?At(t.unwrap()):t instanceof kr?At(t._def.innerType):[],Jo=class t extends Y{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==E.object)return P(r,{code:k.invalid_type,expected:E.object,received:r.parsedType}),q;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(P(r,{code:k.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),q)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=At(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:z.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...G(n)})}};function Vi(t,e){let r=kt(t),n=kt(e);if(t===e)return{valid:!0,data:t};if(r===E.object&&n===E.object){let o=te.objectKeys(e),s=te.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Vi(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===E.array&&n===E.array){if(t.length!==e.length)return{valid:!1};let o=[];for(let s=0;s<t.length;s++){let i=t[s],a=e[s],c=Vi(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===E.date&&n===E.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var _r=class extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Ho(s)||Ho(i))return q;let a=Vi(s.value,i.value);return a.valid?((Bo(s)||Bo(i))&&r.dirty(),{status:r.value,value:a.data}):(P(n,{code:k.invalid_intersection_types}),q)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};_r.create=(t,e,r)=>new _r({left:t,right:e,typeName:z.ZodIntersection,...G(r)});var St=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==E.array)return P(n,{code:k.invalid_type,expected:E.array,received:n.parsedType}),q;if(n.data.length<this._def.items.length)return P(n,{code:k.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),q;!this._def.rest&&n.data.length>this._def.items.length&&(P(n,{code:k.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new at(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Ne.mergeArray(r,i)):Ne.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};St.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new St({items:t,typeName:z.ZodTuple,rest:null,...G(e)})};var Ko=class t extends Y{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!==E.object)return P(n,{code:k.invalid_type,expected:E.object,received:n.parsedType}),q;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new at(n,a,n.path,a)),value:i._parse(new at(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Ne.mergeObjectAsync(r,o):Ne.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof Y?new t({keyType:e,valueType:r,typeName:z.ZodRecord,...G(n)}):new t({keyType:Ht.create(),valueType:e,typeName:z.ZodRecord,...G(r)})}},Qr=class extends Y{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!==E.map)return P(n,{code:k.invalid_type,expected:E.map,received:n.parsedType}),q;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new at(n,a,n.path,[u,"key"])),value:s._parse(new at(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return q;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return q;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};Qr.create=(t,e,r)=>new Qr({valueType:e,keyType:t,typeName:z.ZodMap,...G(r)});var en=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==E.set)return P(n,{code:k.invalid_type,expected:E.set,received:n.parsedType}),q;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(P(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&&(P(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 i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return q;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new at(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:N.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:N.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};en.create=(t,e)=>new en({valueType:t,minSize:null,maxSize:null,typeName:z.ZodSet,...G(e)});var Go=class t extends Y{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==E.function)return P(r,{code:k.invalid_type,expected:E.function,received:r.parsedType}),q;function n(a,c){return On({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Kr(),jt].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return On({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,Kr(),jt].filter(u=>!!u),issueData:{code:k.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof Jt){let a=this;return Ze(async function(...c){let u=new Je([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return Ze(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Je([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Je([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:St.create(e).rest(Mt.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||St.create([]).rest(Mt.create()),returns:r||Mt.create(),typeName:z.ZodFunction,...G(n)})}},vr=class extends Y{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})}};vr.create=(t,e)=>new vr({getter:t,typeName:z.ZodLazy,...G(e)});var br=class extends Y{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return P(r,{received:r.data,code:k.invalid_literal,expected:this._def.value}),q}return{status:"valid",value:e.data}}get value(){return this._def.value}};br.create=(t,e)=>new br({value:t,typeName:z.ZodLiteral,...G(e)});function Md(t,e){return new xr({values:t,typeName:z.ZodEnum,...G(e)})}var xr=class t extends Y{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return P(r,{expected:te.joinValues(n),received:r.parsedType,code:k.invalid_type}),q}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return P(r,{received:r.data,code:k.invalid_enum_value,options:n}),q}return Ze(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};xr.create=Md;var wr=class extends Y{_parse(e){let r=te.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==E.string&&n.parsedType!==E.number){let o=te.objectValues(r);return P(n,{expected:te.joinValues(o),received:n.parsedType,code:k.invalid_type}),q}if(this._cache||(this._cache=new Set(te.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=te.objectValues(r);return P(n,{received:n.data,code:k.invalid_enum_value,options:o}),q}return Ze(e.data)}get enum(){return this._def.values}};wr.create=(t,e)=>new wr({values:t,typeName:z.ZodNativeEnum,...G(e)});var Jt=class extends Y{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==E.promise&&r.common.async===!1)return P(r,{code:k.invalid_type,expected:E.promise,received:r.parsedType}),q;let n=r.parsedType===E.promise?r.data:Promise.resolve(r.data);return Ze(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Jt.create=(t,e)=>new Jt({type:t,typeName:z.ZodPromise,...G(e)});var ct=class extends Y{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===z.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=>{P(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return q;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?q:c.status==="dirty"?lr(c.value):r.value==="dirty"?lr(c.value):c});{if(r.value==="aborted")return q;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?q:a.status==="dirty"?lr(a.value):r.value==="dirty"?lr(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?q:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?q:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!Vt(i))return q;let a=o.transform(i.value,s);if(a instanceof Promise)throw new Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:r.value,value:a}}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(i=>Vt(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):q);te.assertNever(o)}};ct.create=(t,e,r)=>new ct({schema:t,typeName:z.ZodEffects,effect:e,...G(r)});ct.createWithPreprocess=(t,e,r)=>new ct({schema:e,effect:{type:"preprocess",transform:t},typeName:z.ZodEffects,...G(r)});var Ke=class extends Y{_parse(e){return this._getType(e)===E.undefined?Ze(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ke.create=(t,e)=>new Ke({innerType:t,typeName:z.ZodOptional,...G(e)});var zt=class extends Y{_parse(e){return this._getType(e)===E.null?Ze(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};zt.create=(t,e)=>new zt({innerType:t,typeName:z.ZodNullable,...G(e)});var $r=class extends Y{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===E.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};$r.create=(t,e)=>new $r({innerType:t,typeName:z.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...G(e)});var kr=class extends Y{_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 Gr(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Je(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Je(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};kr.create=(t,e)=>new kr({innerType:t,typeName:z.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...G(e)});var tn=class extends Y{_parse(e){if(this._getType(e)!==E.nan){let n=this._getOrReturnCtx(e);return P(n,{code:k.invalid_type,expected:E.nan,received:n.parsedType}),q}return{status:"valid",value:e.data}}};tn.create=t=>new tn({typeName:z.ZodNaN,...G(t)});var G_=Symbol("zod_brand"),Cn=class extends Y{_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}},jn=class t extends Y{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?q:s.status==="dirty"?(r.dirty(),lr(s.value)):this._def.out._parseAsync({data:s.value,path:n.path,parent:n})})();{let o=this._def.in._parseSync({data:n.data,path:n.path,parent:n});return o.status==="aborted"?q:o.status==="dirty"?(r.dirty(),{status:"dirty",value:o.value}):this._def.out._parseSync({data:o.value,path:n.path,parent:n})}}static create(e,r){return new t({in:e,out:r,typeName:z.ZodPipeline})}},Sr=class extends Y{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Vt(o)&&(o.value=Object.freeze(o.value)),o);return Gr(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Sr.create=(t,e)=>new Sr({innerType:t,typeName:z.ZodReadonly,...G(e)});function Od(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Zd(t,e={},r){return t?Bt.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Od(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Od(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Bt.create()}var W_={object:Ge.lazycreate},z;(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"})(z||(z={}));var Y_=(t,e={message:`Input not instance of ${t.name}`})=>Zd(r=>r instanceof t,e),Dd=Ht.create,Ld=dr.create,X_=tn.create,Q_=pr.create,qd=fr.create,ev=mr.create,tv=Yr.create,rv=hr.create,nv=gr.create,ov=Bt.create,sv=Mt.create,iv=ht.create,av=Xr.create,cv=Zt.create,Hi=Ge.create,uv=Ge.strictCreate,lv=yr.create,dv=Jo.create,pv=_r.create,fv=St.create,mv=Ko.create,hv=Qr.create,gv=en.create,yv=Go.create,_v=vr.create,vv=br.create,bv=xr.create,xv=wr.create,wv=Jt.create,$v=ct.create,kv=Ke.create,Sv=zt.create,zv=ct.createWithPreprocess,Pv=jn.create,Tv=()=>Dd().optional(),Ev=()=>Ld().optional(),Iv=()=>qd().optional(),Rv={string:(t=>Ht.create({...t,coerce:!0})),number:(t=>dr.create({...t,coerce:!0})),boolean:(t=>fr.create({...t,coerce:!0})),bigint:(t=>pr.create({...t,coerce:!0})),date:(t=>mr.create({...t,coerce:!0}))};var Nv=q;var Ov=Object.freeze({status:"aborted"});function x(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Dt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Wo={};function ot(t){return t&&Object.assign(Wo,t),Wo}var re={};qi(re,{BIGINT_FORMAT_RANGES:()=>Fd,Class:()=>Ji,NUMBER_FORMAT_RANGES:()=>ea,aborted:()=>Pr,allowsEval:()=>Yi,assert:()=>Zv,assertEqual:()=>Cv,assertIs:()=>Av,assertNever:()=>Mv,assertNotEqual:()=>jv,assignProp:()=>Wi,cached:()=>Zn,captureStackTrace:()=>Xo,cleanEnum:()=>Yv,cleanRegex:()=>Ln,clone:()=>st,createTransparentProxy:()=>Vv,defineLazy:()=>he,esc:()=>zr,escapeRegex:()=>Kt,extend:()=>Jv,finalizeIssue:()=>gt,floatSafeRemainder:()=>Gi,getElementAtPath:()=>Dv,getEnumValues:()=>Mn,getLengthableOrigin:()=>qn,getParsedType:()=>Fv,getSizableOrigin:()=>Vd,isObject:()=>rn,isPlainObject:()=>nn,issue:()=>ta,joinValues:()=>Yo,jsonStringifyReplacer:()=>Ki,merge:()=>Kv,normalizeParams:()=>U,nullish:()=>Dn,numKeys:()=>Uv,omit:()=>Bv,optionalKeys:()=>Qi,partial:()=>Gv,pick:()=>Hv,prefixIssues:()=>Pt,primitiveTypes:()=>Ud,promiseAllObject:()=>Lv,propertyKeyTypes:()=>Xi,randomString:()=>qv,required:()=>Wv,stringifyPrimitive:()=>Qo,unwrapMessage:()=>An});function Cv(t){return t}function jv(t){return t}function Av(t){}function Mv(t){throw new Error}function Zv(t){}function Mn(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 Yo(t,e="|"){return t.map(r=>Qo(r)).join(e)}function Ki(t,e){return typeof e=="bigint"?e.toString():e}function Zn(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function Dn(t){return t==null}function Ln(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Gi(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 he(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 Wi(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Dv(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function Lv(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 qv(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function zr(t){return JSON.stringify(t)}var Xo=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function rn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Yi=Zn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function nn(t){if(rn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(rn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function Uv(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Fv=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}`)}},Xi=new Set(["string","number","symbol"]),Ud=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Kt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function st(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function U(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 Vv(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 Qo(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Qi(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var ea={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]},Fd={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function Hv(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 st(t,{...t._zod.def,shape:r,checks:[]})}function Bv(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 st(t,{...t._zod.def,shape:r,checks:[]})}function Jv(t,e){if(!nn(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 Wi(this,"shape",n),n},checks:[]};return st(t,r)}function Kv(t,e){return st(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Wi(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Gv(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 st(e,{...e._zod.def,shape:o,checks:[]})}function Wv(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 st(e,{...e._zod.def,shape:o,checks:[]})}function Pr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Pt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function An(t){return typeof t=="string"?t:t?.message}function gt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=An(t.inst?._zod.def?.error?.(t))??An(e?.error?.(t))??An(r.customError?.(t))??An(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Vd(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function qn(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function ta(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function Yv(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ji=class{constructor(...e){}};var Hd=(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,Ki,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},es=x("$ZodError",Hd),Un=x("$ZodError",Hd,{Parent:Error});function ra(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 na(t,e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union"&&i.errors.length)i.errors.map(a=>o({issues:a}));else if(i.code==="invalid_key")o({issues:i.issues});else if(i.code==="invalid_element")o({issues:i.issues});else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(t),n}var oa=t=>(e,r,n,o)=>{let s=n?Object.assign(n,{async:!1}):{async:!1},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise)throw new Dt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>gt(c,s,ot())));throw Xo(a,o?.callee),a}return i.value},sa=oa(Un),ia=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>gt(c,s,ot())));throw Xo(a,o?.callee),a}return i.value},aa=ia(Un),ca=t=>(e,r,n)=>{let o=n?{...n,async:!1}:{async:!1},s=e._zod.run({value:r,issues:[]},o);if(s instanceof Promise)throw new Dt;return s.issues.length?{success:!1,error:new(t??es)(s.issues.map(i=>gt(i,o,ot())))}:{success:!0,data:s.value}},Tr=ca(Un),ua=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>gt(i,o,ot())))}:{success:!0,data:s.value}},Er=ua(Un);var Bd=/^[cC][^\s-]{8,}$/,Jd=/^[0-9a-z]+$/,Kd=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Gd=/^[0-9a-vA-V]{20}$/,Wd=/^[A-Za-z0-9]{27}$/,Yd=/^[a-zA-Z0-9_-]{21}$/,Xd=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Qd=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,la=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;var ep=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Qv="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function tp(){return new RegExp(Qv,"u")}var rp=/^(?:(?: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])$/,np=/^(([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})$/,op=/^((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])$/,sp=/^(([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])$/,ip=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,da=/^[A-Za-z0-9_-]*$/,ap=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var cp=/^\+(?:[0-9]){6,14}[0-9]$/,up="(?:(?:\\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])))",lp=new RegExp(`^${up}$`);function dp(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 pp(t){return new RegExp(`^${dp(t)}$`)}function fp(t){let e=dp({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(`^${up}T(?:${n})$`)}var mp=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var hp=/^\d+$/,gp=/^-?\d+(?:\.\d+)?/i,yp=/true|false/i,_p=/null/i;var vp=/^[^A-Z]*$/,bp=/^[^a-z]*$/;var Oe=x("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),xp={number:"number",bigint:"bigint",object:"date"},pa=x("$ZodCheckLessThan",(t,e)=>{Oe.init(t,e);let r=xp[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),fa=x("$ZodCheckGreaterThan",(t,e)=>{Oe.init(t,e);let r=xp[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})}}),wp=x("$ZodCheckMultipleOf",(t,e)=>{Oe.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):Gi(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})}}),$p=x("$ZodCheckNumberFormat",(t,e)=>{Oe.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=ea[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=hp)}),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 kp=x("$ZodCheckMaxLength",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Dn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;if(o.length<=e.maximum)return;let i=qn(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Sp=x("$ZodCheckMinLength",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Dn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;if(o.length>=e.minimum)return;let i=qn(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),zp=x("$ZodCheckLengthEquals",(t,e)=>{var r;Oe.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Dn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.length,o.maximum=e.length,o.length=e.length}),t._zod.check=n=>{let o=n.value,s=o.length;if(s===e.length)return;let i=qn(o),a=s>e.length;n.issues.push({origin:i,...a?{code:"too_big",maximum:e.length}:{code:"too_small",minimum:e.length},inclusive:!0,exact:!0,input:n.value,inst:t,continue:!e.abort})}}),Fn=x("$ZodCheckStringFormat",(t,e)=>{var r,n;Oe.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=()=>{})}),Pp=x("$ZodCheckRegex",(t,e)=>{Fn.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})}}),Tp=x("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=vp),Fn.init(t,e)}),Ep=x("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=bp),Fn.init(t,e)}),Ip=x("$ZodCheckIncludes",(t,e)=>{Oe.init(t,e);let r=Kt(e.includes),n=new RegExp(typeof e.position=="number"?`^.{${e.position}}${r}`:r);e.pattern=n,t._zod.onattach.push(o=>{let s=o._zod.bag;s.patterns??(s.patterns=new Set),s.patterns.add(n)}),t._zod.check=o=>{o.value.includes(e.includes,e.position)||o.issues.push({origin:"string",code:"invalid_format",format:"includes",includes:e.includes,input:o.value,inst:t,continue:!e.abort})}}),Rp=x("$ZodCheckStartsWith",(t,e)=>{Oe.init(t,e);let r=new RegExp(`^${Kt(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),Np=x("$ZodCheckEndsWith",(t,e)=>{Oe.init(t,e);let r=new RegExp(`.*${Kt(e.suffix)}$`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.endsWith(e.suffix)||n.issues.push({origin:"string",code:"invalid_format",format:"ends_with",suffix:e.suffix,input:n.value,inst:t,continue:!e.abort})}});var Op=x("$ZodCheckOverwrite",(t,e)=>{Oe.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var rs=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
|
|
10
|
+
`).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(`
|
|
11
|
+
`))}};var jp={major:4,minor:0,patch:0};var de=x("$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 c=Pr(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,f=l._zod.check(s);if(f instanceof Promise&&a?.async===!1)throw new Dt;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=Pr(s,d)))});else{if(s.issues.length===d)continue;c||(c=Pr(s,d))}}return u?u.then(()=>s):s};t._zod.run=(s,i)=>{let a=t._zod.parse(s,i);if(a instanceof Promise){if(i.async===!1)throw new Dt;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Tr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Er(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),Vn=x("$ZodString",(t,e)=>{de.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??mp(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}}),ge=x("$ZodStringFormat",(t,e)=>{Fn.init(t,e),Vn.init(t,e)}),ha=x("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Qd),ge.init(t,e)}),ga=x("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=la(n))}else e.pattern??(e.pattern=la());ge.init(t,e)}),ya=x("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=ep),ge.init(t,e)}),_a=x("$ZodURL",(t,e)=>{ge.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:ap.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})}}}),va=x("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=tp()),ge.init(t,e)}),ba=x("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Yd),ge.init(t,e)}),xa=x("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Bd),ge.init(t,e)}),wa=x("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Jd),ge.init(t,e)}),$a=x("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Kd),ge.init(t,e)}),ka=x("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Gd),ge.init(t,e)}),Sa=x("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Wd),ge.init(t,e)}),Hp=x("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=fp(e)),ge.init(t,e)}),Bp=x("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=lp),ge.init(t,e)}),Jp=x("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=pp(e)),ge.init(t,e)}),Kp=x("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Xd),ge.init(t,e)}),za=x("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=rp),ge.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),Pa=x("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=np),ge.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})}}}),Ta=x("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=op),ge.init(t,e)}),Ea=x("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=sp),ge.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 Gp(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Ia=x("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=ip),ge.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Gp(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function eb(t){if(!da.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Gp(r)}var Ra=x("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=da),ge.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{eb(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Na=x("$ZodE164",(t,e)=>{e.pattern??(e.pattern=cp),ge.init(t,e)});function tb(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 Oa=x("$ZodJWT",(t,e)=>{ge.init(t,e),t._zod.check=r=>{tb(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var os=x("$ZodNumber",(t,e)=>{de.init(t,e),t._zod.pattern=t._zod.bag.pattern??gp,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}}),Ca=x("$ZodNumber",(t,e)=>{$p.init(t,e),os.init(t,e)}),ja=x("$ZodBoolean",(t,e)=>{de.init(t,e),t._zod.pattern=yp,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 Aa=x("$ZodNull",(t,e)=>{de.init(t,e),t._zod.pattern=_p,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 Ma=x("$ZodUnknown",(t,e)=>{de.init(t,e),t._zod.parse=r=>r}),Za=x("$ZodNever",(t,e)=>{de.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Ap(t,e,r){t.issues.length&&e.issues.push(...Pt(r,t.issues)),e.value[r]=t.value}var Da=x("$ZodArray",(t,e)=>{de.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>Ap(u,r,i))):Ap(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function ns(t,e,r){t.issues.length&&e.issues.push(...Pt(r,t.issues)),e.value[r]=t.value}function Mp(t,e,r,n){t.issues.length?n[r]===void 0?r in n?e.value[r]=void 0:e.value[r]=t.value:e.issues.push(...Pt(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var ss=x("$ZodObject",(t,e)=>{de.init(t,e);let r=Zn(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof de))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=Qi(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});he(t._zod,"propValues",()=>{let d=e.shape,f={};for(let m in d){let p=d[m]._zod;if(p.values){f[m]??(f[m]=new Set);for(let h of p.values)f[m].add(h)}}return f});let n=d=>{let f=new rs(["shape","payload","ctx"]),m=r.value,p=v=>{let w=zr(v);return`shape[${w}]._zod.run({ value: input[${w}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),g=0;for(let v of m.keys)h[v]=`key_${g++}`;f.write("const newResult = {}");for(let v of m.keys)if(m.optionalKeys.has(v)){let w=h[v];f.write(`const ${w} = ${p(v)};`);let y=zr(v);f.write(`
|
|
12
|
+
if (${w}.issues.length) {
|
|
13
|
+
if (input[${y}] === undefined) {
|
|
14
|
+
if (${y} in input) {
|
|
15
|
+
newResult[${y}] = undefined;
|
|
16
|
+
}
|
|
17
|
+
} else {
|
|
18
|
+
payload.issues = payload.issues.concat(
|
|
19
|
+
${w}.issues.map((iss) => ({
|
|
20
|
+
...iss,
|
|
21
|
+
path: iss.path ? [${y}, ...iss.path] : [${y}],
|
|
22
|
+
}))
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
} else if (${w}.value === undefined) {
|
|
26
|
+
if (${y} in input) newResult[${y}] = undefined;
|
|
27
|
+
} else {
|
|
28
|
+
newResult[${y}] = ${w}.value;
|
|
29
|
+
}
|
|
30
|
+
`)}else{let w=h[v];f.write(`const ${w} = ${p(v)};`),f.write(`
|
|
31
|
+
if (${w}.issues.length) payload.issues = payload.issues.concat(${w}.issues.map(iss => ({
|
|
32
|
+
...iss,
|
|
33
|
+
path: iss.path ? [${zr(v)}, ...iss.path] : [${zr(v)}]
|
|
34
|
+
})));`),f.write(`newResult[${zr(v)}] = ${w}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let _=f.compile();return(v,w)=>_(d,v,w)},o,s=rn,i=!Wo.jitless,c=i&&Yi.value,u=e.catchall,l;t._zod.parse=(d,f)=>{l??(l=r.value);let m=d.value;if(!s(m))return d.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),d;let p=[];if(i&&c&&f?.async===!1&&f.jitless!==!0)o||(o=n(e.shape)),d=o(d,f);else{d.value={};let w=l.shape;for(let y of l.keys){let S=w[y],M=S._zod.run({value:m[y],issues:[]},f),J=S._zod.optin==="optional"&&S._zod.optout==="optional";M instanceof Promise?p.push(M.then(V=>J?Mp(V,d,y,m):ns(V,d,y))):J?Mp(M,d,y,m):ns(M,d,y)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,_=u._zod,v=_.def.type;for(let w of Object.keys(m)){if(g.has(w))continue;if(v==="never"){h.push(w);continue}let y=_.run({value:m[w],issues:[]},f);y instanceof Promise?p.push(y.then(S=>ns(S,d,w))):ns(y,d,w)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function Zp(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>gt(s,n,ot())))}),e}var is=x("$ZodUnion",(t,e)=>{de.init(t,e),he(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),he(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),he(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),he(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=>Ln(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=>Zp(i,r,t,n)):Zp(s,r,t,n)}}),La=x("$ZodDiscriminatedUnion",(t,e)=>{is.init(t,e);let r=t._zod.parse;he(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=Zn(()=>{let o=e.options,s=new Map;for(let i of o){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!rn(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)}}),qa=x("$ZodIntersection",(t,e)=>{de.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>Dp(r,c,u)):Dp(r,s,i)}});function ma(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(nn(t)&&nn(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=ma(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=ma(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 Dp(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Pr(t))return t;let n=ma(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 Ua=x("$ZodRecord",(t,e)=>{de.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!nn(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...Pt(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Pt(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>gt(u,n,ot())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Pt(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Pt(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Fa=x("$ZodEnum",(t,e)=>{de.init(t,e);let r=Mn(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Xi.has(typeof n)).map(n=>typeof n=="string"?Kt(n):n.toString()).join("|")})$`),t._zod.parse=(n,o)=>{let s=n.value;return t._zod.values.has(s)||n.issues.push({code:"invalid_value",values:r,input:s,inst:t}),n}}),Va=x("$ZodLiteral",(t,e)=>{de.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Kt(r):r?r.toString():String(r)).join("|")})$`),t._zod.parse=(r,n)=>{let o=r.value;return t._zod.values.has(o)||r.issues.push({code:"invalid_value",values:e.values,input:o,inst:t}),r}});var Ha=x("$ZodTransform",(t,e)=>{de.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new Dt;return r.value=o,r}}),Ba=x("$ZodOptional",(t,e)=>{de.init(t,e),t._zod.optin="optional",t._zod.optout="optional",he(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),he(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Ln(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)}),Ja=x("$ZodNullable",(t,e)=>{de.init(t,e),he(t._zod,"optin",()=>e.innerType._zod.optin),he(t._zod,"optout",()=>e.innerType._zod.optout),he(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Ln(r.source)}|null)$`):void 0}),he(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)}),Ka=x("$ZodDefault",(t,e)=>{de.init(t,e),t._zod.optin="optional",he(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=>Lp(s,e)):Lp(o,e)}});function Lp(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Ga=x("$ZodPrefault",(t,e)=>{de.init(t,e),t._zod.optin="optional",he(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))}),Wa=x("$ZodNonOptional",(t,e)=>{de.init(t,e),he(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=>qp(s,t)):qp(o,t)}});function qp(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 Ya=x("$ZodCatch",(t,e)=>{de.init(t,e),t._zod.optin="optional",he(t._zod,"optout",()=>e.innerType._zod.optout),he(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>gt(i,n,ot()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>gt(s,n,ot()))},input:r.value}),r.issues=[]),r)}});var Xa=x("$ZodPipe",(t,e)=>{de.init(t,e),he(t._zod,"values",()=>e.in._zod.values),he(t._zod,"optin",()=>e.in._zod.optin),he(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=>Up(s,e,n)):Up(o,e,n)}});function Up(t,e,r){return Pr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Qa=x("$ZodReadonly",(t,e)=>{de.init(t,e),he(t._zod,"propValues",()=>e.innerType._zod.propValues),he(t._zod,"values",()=>e.innerType._zod.values),he(t._zod,"optin",()=>e.innerType._zod.optin),he(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(Fp):Fp(o)}});function Fp(t){return t.value=Object.freeze(t.value),t}var ec=x("$ZodCustom",(t,e)=>{Oe.init(t,e),de.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=>Vp(s,r,n,t));Vp(o,r,n,t)}});function Vp(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(ta(o))}}var rb=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},nb=()=>{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 ${rb(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Qo(n.values[0])}`:`Invalid option: expected one of ${Yo(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":""}: ${Yo(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 Wp(){return{localeError:nb()}}var Hn=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 Yp(){return new Hn}var Gt=Yp();function tc(t,e){return new t({type:"string",...U(e)})}function rc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...U(e)})}function as(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...U(e)})}function nc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...U(e)})}function oc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...U(e)})}function sc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...U(e)})}function ic(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...U(e)})}function ac(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...U(e)})}function cc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...U(e)})}function uc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...U(e)})}function lc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...U(e)})}function dc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...U(e)})}function pc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...U(e)})}function fc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...U(e)})}function mc(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...U(e)})}function hc(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...U(e)})}function gc(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...U(e)})}function yc(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...U(e)})}function _c(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...U(e)})}function vc(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...U(e)})}function bc(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...U(e)})}function xc(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...U(e)})}function wc(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...U(e)})}function Xp(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...U(e)})}function Qp(t,e){return new t({type:"string",format:"date",check:"string_format",...U(e)})}function ef(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...U(e)})}function tf(t,e){return new t({type:"string",format:"duration",check:"string_format",...U(e)})}function $c(t,e){return new t({type:"number",checks:[],...U(e)})}function kc(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...U(e)})}function Sc(t,e){return new t({type:"boolean",...U(e)})}function zc(t,e){return new t({type:"null",...U(e)})}function Pc(t){return new t({type:"unknown"})}function Tc(t,e){return new t({type:"never",...U(e)})}function cs(t,e){return new pa({check:"less_than",...U(e),value:t,inclusive:!1})}function Bn(t,e){return new pa({check:"less_than",...U(e),value:t,inclusive:!0})}function us(t,e){return new fa({check:"greater_than",...U(e),value:t,inclusive:!1})}function Jn(t,e){return new fa({check:"greater_than",...U(e),value:t,inclusive:!0})}function ls(t,e){return new wp({check:"multiple_of",...U(e),value:t})}function ds(t,e){return new kp({check:"max_length",...U(e),maximum:t})}function on(t,e){return new Sp({check:"min_length",...U(e),minimum:t})}function ps(t,e){return new zp({check:"length_equals",...U(e),length:t})}function Ec(t,e){return new Pp({check:"string_format",format:"regex",...U(e),pattern:t})}function Ic(t){return new Tp({check:"string_format",format:"lowercase",...U(t)})}function Rc(t){return new Ep({check:"string_format",format:"uppercase",...U(t)})}function Nc(t,e){return new Ip({check:"string_format",format:"includes",...U(e),includes:t})}function Oc(t,e){return new Rp({check:"string_format",format:"starts_with",...U(e),prefix:t})}function Cc(t,e){return new Np({check:"string_format",format:"ends_with",...U(e),suffix:t})}function Ir(t){return new Op({check:"overwrite",tx:t})}function jc(t){return Ir(e=>e.normalize(t))}function Ac(){return Ir(t=>t.trim())}function Mc(){return Ir(t=>t.toLowerCase())}function Zc(){return Ir(t=>t.toUpperCase())}function rf(t,e,r){return new t({type:"array",element:e,...U(r)})}function Dc(t,e,r){let n=U(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Lc(t,e,r){return new t({type:"custom",check:"custom",fn:e,...U(r)})}var fs=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Gt,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},f=e._zod.parent;if(f)a.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{let m=a.schema;switch(o.type){case"string":{let p=m;p.type="string";let{minimum:h,maximum:g,format:_,patterns:v,contentEncoding:w}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,p.format===""&&delete p.format),w&&(p.contentEncoding=w),v&&v.size>0){let y=[...v];y.length===1?p.pattern=y[0].source:y.length>1&&(a.schema.allOf=[...y.map(S=>({...this.target==="draft-7"?{type:"string"}:{},pattern:S.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:_,multipleOf:v,exclusiveMaximum:w,exclusiveMinimum:y}=e._zod.bag;typeof _=="string"&&_.includes("int")?p.type="integer":p.type="number",typeof y=="number"&&(p.exclusiveMinimum=y),typeof h=="number"&&(p.minimum=h,typeof y=="number"&&(y>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof w=="number"&&(p.exclusiveMaximum=w),typeof g=="number"&&(p.maximum=g,typeof w=="number"&&(w<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof v=="number"&&(p.multipleOf=v);break}case"boolean":{let p=m;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{m.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{m.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=m,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=m;p.type="object",p.properties={};let h=o.shape;for(let v in h)p.properties[v]=this.process(h[v],{...d,path:[...d.path,"properties",v]});let g=new Set(Object.keys(h)),_=new Set([...g].filter(v=>{let w=o.shape[v]._zod;return this.io==="input"?w.optin===void 0:w.optout===void 0}));_.size>0&&(p.required=Array.from(_)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=m;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=m,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),_=w=>"allOf"in w&&Object.keys(w).length===1,v=[..._(h)?h.allOf:[h],..._(g)?g.allOf:[g]];p.allOf=v;break}case"tuple":{let p=m;p.type="array";let h=o.items.map((v,w)=>this.process(v,{...d,path:[...d.path,"prefixItems",w]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let v=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=v:p.additionalItems=v}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:_}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof _=="number"&&(p.maxItems=_);break}case"record":{let p=m;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=m,h=Mn(o.entries);h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),p.enum=h;break}case"literal":{let p=m,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];p.type=g===null?"null":typeof g,p.const=g}else h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),h.every(g=>typeof g=="boolean")&&(p.type="string"),h.every(g=>g===null)&&(p.type="null"),p.enum=h;break}case"file":{let p=m,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:_,mime:v}=e._zod.bag;g!==void 0&&(h.minLength=g),_!==void 0&&(h.maxLength=_),v?v.length===1?(h.contentMediaType=v[0],Object.assign(p,h)):p.anyOf=v.map(w=>({...h,contentMediaType:w})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);m.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=m;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,m.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}m.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=m,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=h.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,m.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&Te(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(v=>v);if(h)return{ref:g(h)};let _=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=_,{defId:_,ref:`${g("__shared")}#/${d}/${_}`}}if(l[1]===o)return{ref:"#"};let m=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:m+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:f,defId:m}=s(l);d.def={...d.schema},m&&(d.defId=m);let p=d.schema;for(let h in p)delete p[h];p.$ref=f};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
|
|
35
|
+
|
|
36
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let m=n.external.registry.get(l[0])?.id;if(e!==l[0]&&m){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let f=this.seen.get(l),m=f.def??f.schema,p={...m};if(f.ref===null)return;let h=f.ref;if(f.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(m.allOf=m.allOf??[],m.allOf.push(g)):(Object.assign(m,g),Object.assign(m,p))}f.isParent||this.override({zodSchema:l,jsonSchema:m,path:f.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}};function qc(t,e){if(t instanceof Hn){let n=new fs(e),o={};for(let a of t._idmap.entries()){let[c,u]=a;n.process(u)}let s={},i={registry:t,uri:e?.uri,defs:o};for(let a of t._idmap.entries()){let[c,u]=a;s[c]=n.emit(u,{...e,external:i})}if(Object.keys(o).length>0){let a=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[a]:o}}return{schemas:s}}let r=new fs(e);return r.process(t),r.emit(t,e)}function Te(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 Te(o.element,r);case"object":{for(let s in o.shape)if(Te(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Te(s,r))return!0;return!1}case"intersection":return Te(o.left,r)||Te(o.right,r);case"tuple":{for(let s of o.items)if(Te(s,r))return!0;return!!(o.rest&&Te(o.rest,r))}case"record":return Te(o.keyType,r)||Te(o.valueType,r);case"map":return Te(o.keyType,r)||Te(o.valueType,r);case"set":return Te(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Te(o.innerType,r);case"lazy":return Te(o.getter(),r);case"default":return Te(o.innerType,r);case"prefault":return Te(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Te(o.in,r)||Te(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Zb=x("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");de.init(t,e),t.def=e,t.parse=(r,n)=>sa(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Tr(t,r,n),t.parseAsync=async(r,n)=>aa(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Er(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)=>st(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var Db=x("ZodMiniObject",(t,e)=>{ss.init(t,e),Zb.init(t,e),re.defineLazy(t,"shape",()=>e.shape)});function Uc(t,e){let r={type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},...re.normalizeParams(e)};return new Db(r)}function Tt(t){return!!t._zod}function Nr(t){let e=Object.values(t);if(e.length===0)return Uc({});let r=e.every(Tt),n=e.every(o=>!Tt(o));if(r)return Uc(t);if(n)return Hi(t);throw new Error("Mixed Zod versions detected in object shape.")}function Wt(t,e){return Tt(t)?Tr(t,e):t.safeParse(e)}async function ms(t,e){return Tt(t)?await Er(t,e):await t.safeParseAsync(e)}function Yt(t){if(!t)return;let e;if(Tt(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function sn(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 Nr(t)}}if(Tt(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 qb(t){return t.length===0?"object root":t.reduce((e,r,n)=>n===0?String(r):typeof r=="number"?`${e}[${r}]`:`${e}.${r}`,"")}function hs(t){if(t&&typeof t=="object"){if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0)return t.issues.map(e=>e.path?.length?`${e.message} at ${qb(e.path)}`:e.message).join(`
|
|
37
|
+
`);if("message"in t&&typeof t.message=="string")return t.message;try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function of(t){return t.description}function sf(t){if(Tt(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function an(t){if(Tt(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 Kn={};qi(Kn,{ZodISODate:()=>cf,ZodISODateTime:()=>af,ZodISODuration:()=>lf,ZodISOTime:()=>uf,date:()=>Vc,datetime:()=>Fc,duration:()=>Bc,time:()=>Hc});var af=x("ZodISODateTime",(t,e)=>{Hp.init(t,e),xe.init(t,e)});function Fc(t){return Xp(af,t)}var cf=x("ZodISODate",(t,e)=>{Bp.init(t,e),xe.init(t,e)});function Vc(t){return Qp(cf,t)}var uf=x("ZodISOTime",(t,e)=>{Jp.init(t,e),xe.init(t,e)});function Hc(t){return ef(uf,t)}var lf=x("ZodISODuration",(t,e)=>{Kp.init(t,e),xe.init(t,e)});function Bc(t){return tf(lf,t)}var df=(t,e)=>{es.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>na(t,r)},flatten:{value:r=>ra(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},g1=x("ZodError",df),Gn=x("ZodError",df,{Parent:Error});var pf=oa(Gn),ff=ia(Gn),mf=ca(Gn),hf=ua(Gn);var ze=x("ZodType",(t,e)=>(de.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)=>st(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>pf(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>mf(t,r,n),t.parseAsync=async(r,n)=>ff(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>hf(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(M0(r,n)),t.superRefine=r=>t.check(Z0(r)),t.overwrite=r=>t.check(Ir(r)),t.optional=()=>$e(t),t.nullable=()=>_f(t),t.nullish=()=>$e(_f(t)),t.nonoptional=r=>I0(t,r),t.array=()=>ne(t),t.or=r=>_e([t,r]),t.and=r=>ys(t,r),t.transform=r=>Kc(t,kf(r)),t.default=r=>P0(t,r),t.prefault=r=>E0(t,r),t.catch=r=>N0(t,r),t.pipe=r=>Kc(t,r),t.readonly=()=>j0(t),t.describe=r=>{let n=t.clone();return Gt.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Gt.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Gt.get(t);let n=t.clone();return Gt.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),vf=x("_ZodString",(t,e)=>{Vn.init(t,e),ze.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(Ec(...n)),t.includes=(...n)=>t.check(Nc(...n)),t.startsWith=(...n)=>t.check(Oc(...n)),t.endsWith=(...n)=>t.check(Cc(...n)),t.min=(...n)=>t.check(on(...n)),t.max=(...n)=>t.check(ds(...n)),t.length=(...n)=>t.check(ps(...n)),t.nonempty=(...n)=>t.check(on(1,...n)),t.lowercase=n=>t.check(Ic(n)),t.uppercase=n=>t.check(Rc(n)),t.trim=()=>t.check(Ac()),t.normalize=(...n)=>t.check(jc(...n)),t.toLowerCase=()=>t.check(Mc()),t.toUpperCase=()=>t.check(Zc())}),Gb=x("ZodString",(t,e)=>{Vn.init(t,e),vf.init(t,e),t.email=r=>t.check(rc(Wb,r)),t.url=r=>t.check(ac(Yb,r)),t.jwt=r=>t.check(wc(p0,r)),t.emoji=r=>t.check(cc(Xb,r)),t.guid=r=>t.check(as(gf,r)),t.uuid=r=>t.check(nc(gs,r)),t.uuidv4=r=>t.check(oc(gs,r)),t.uuidv6=r=>t.check(sc(gs,r)),t.uuidv7=r=>t.check(ic(gs,r)),t.nanoid=r=>t.check(uc(Qb,r)),t.guid=r=>t.check(as(gf,r)),t.cuid=r=>t.check(lc(e0,r)),t.cuid2=r=>t.check(dc(t0,r)),t.ulid=r=>t.check(pc(r0,r)),t.base64=r=>t.check(vc(u0,r)),t.base64url=r=>t.check(bc(l0,r)),t.xid=r=>t.check(fc(n0,r)),t.ksuid=r=>t.check(mc(o0,r)),t.ipv4=r=>t.check(hc(s0,r)),t.ipv6=r=>t.check(gc(i0,r)),t.cidrv4=r=>t.check(yc(a0,r)),t.cidrv6=r=>t.check(_c(c0,r)),t.e164=r=>t.check(xc(d0,r)),t.datetime=r=>t.check(Fc(r)),t.date=r=>t.check(Vc(r)),t.time=r=>t.check(Hc(r)),t.duration=r=>t.check(Bc(r))});function b(t){return tc(Gb,t)}var xe=x("ZodStringFormat",(t,e)=>{ge.init(t,e),vf.init(t,e)}),Wb=x("ZodEmail",(t,e)=>{ya.init(t,e),xe.init(t,e)});var gf=x("ZodGUID",(t,e)=>{ha.init(t,e),xe.init(t,e)});var gs=x("ZodUUID",(t,e)=>{ga.init(t,e),xe.init(t,e)});var Yb=x("ZodURL",(t,e)=>{_a.init(t,e),xe.init(t,e)});var Xb=x("ZodEmoji",(t,e)=>{va.init(t,e),xe.init(t,e)});var Qb=x("ZodNanoID",(t,e)=>{ba.init(t,e),xe.init(t,e)});var e0=x("ZodCUID",(t,e)=>{xa.init(t,e),xe.init(t,e)});var t0=x("ZodCUID2",(t,e)=>{wa.init(t,e),xe.init(t,e)});var r0=x("ZodULID",(t,e)=>{$a.init(t,e),xe.init(t,e)});var n0=x("ZodXID",(t,e)=>{ka.init(t,e),xe.init(t,e)});var o0=x("ZodKSUID",(t,e)=>{Sa.init(t,e),xe.init(t,e)});var s0=x("ZodIPv4",(t,e)=>{za.init(t,e),xe.init(t,e)});var i0=x("ZodIPv6",(t,e)=>{Pa.init(t,e),xe.init(t,e)});var a0=x("ZodCIDRv4",(t,e)=>{Ta.init(t,e),xe.init(t,e)});var c0=x("ZodCIDRv6",(t,e)=>{Ea.init(t,e),xe.init(t,e)});var u0=x("ZodBase64",(t,e)=>{Ia.init(t,e),xe.init(t,e)});var l0=x("ZodBase64URL",(t,e)=>{Ra.init(t,e),xe.init(t,e)});var d0=x("ZodE164",(t,e)=>{Na.init(t,e),xe.init(t,e)});var p0=x("ZodJWT",(t,e)=>{Oa.init(t,e),xe.init(t,e)});var bf=x("ZodNumber",(t,e)=>{os.init(t,e),ze.init(t,e),t.gt=(n,o)=>t.check(us(n,o)),t.gte=(n,o)=>t.check(Jn(n,o)),t.min=(n,o)=>t.check(Jn(n,o)),t.lt=(n,o)=>t.check(cs(n,o)),t.lte=(n,o)=>t.check(Bn(n,o)),t.max=(n,o)=>t.check(Bn(n,o)),t.int=n=>t.check(yf(n)),t.safe=n=>t.check(yf(n)),t.positive=n=>t.check(us(0,n)),t.nonnegative=n=>t.check(Jn(0,n)),t.negative=n=>t.check(cs(0,n)),t.nonpositive=n=>t.check(Bn(0,n)),t.multipleOf=(n,o)=>t.check(ls(n,o)),t.step=(n,o)=>t.check(ls(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 le(t){return $c(bf,t)}var f0=x("ZodNumberFormat",(t,e)=>{Ca.init(t,e),bf.init(t,e)});function yf(t){return kc(f0,t)}var m0=x("ZodBoolean",(t,e)=>{ja.init(t,e),ze.init(t,e)});function Ie(t){return Sc(m0,t)}var h0=x("ZodNull",(t,e)=>{Aa.init(t,e),ze.init(t,e)});function xf(t){return zc(h0,t)}var g0=x("ZodUnknown",(t,e)=>{Ma.init(t,e),ze.init(t,e)});function we(){return Pc(g0)}var y0=x("ZodNever",(t,e)=>{Za.init(t,e),ze.init(t,e)});function _0(t){return Tc(y0,t)}var v0=x("ZodArray",(t,e)=>{Da.init(t,e),ze.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(on(r,n)),t.nonempty=r=>t.check(on(1,r)),t.max=(r,n)=>t.check(ds(r,n)),t.length=(r,n)=>t.check(ps(r,n)),t.unwrap=()=>t.element});function ne(t,e){return rf(v0,t,e)}var wf=x("ZodObject",(t,e)=>{ss.init(t,e),ze.init(t,e),re.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>We(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:we()}),t.loose=()=>t.clone({...t._zod.def,catchall:we()}),t.strict=()=>t.clone({...t._zod.def,catchall:_0()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>re.extend(t,r),t.merge=r=>re.merge(t,r),t.pick=r=>re.pick(t,r),t.omit=r=>re.omit(t,r),t.partial=(...r)=>re.partial(Sf,t,r[0]),t.required=(...r)=>re.required(zf,t,r[0])});function R(t,e){let r={type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},...re.normalizeParams(e)};return new wf(r)}function Fe(t,e){return new wf({type:"object",get shape(){return re.assignProp(this,"shape",{...t}),this.shape},catchall:we(),...re.normalizeParams(e)})}var $f=x("ZodUnion",(t,e)=>{is.init(t,e),ze.init(t,e),t.options=e.options});function _e(t,e){return new $f({type:"union",options:t,...re.normalizeParams(e)})}var b0=x("ZodDiscriminatedUnion",(t,e)=>{$f.init(t,e),La.init(t,e)});function Gc(t,e,r){return new b0({type:"union",options:e,discriminator:t,...re.normalizeParams(r)})}var x0=x("ZodIntersection",(t,e)=>{qa.init(t,e),ze.init(t,e)});function ys(t,e){return new x0({type:"intersection",left:t,right:e})}var w0=x("ZodRecord",(t,e)=>{Ua.init(t,e),ze.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function ye(t,e,r){return new w0({type:"record",keyType:t,valueType:e,...re.normalizeParams(r)})}var Jc=x("ZodEnum",(t,e)=>{Fa.init(t,e),ze.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 Jc({...e,checks:[],...re.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 Jc({...e,checks:[],...re.normalizeParams(o),entries:s})}});function We(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Jc({type:"enum",entries:r,...re.normalizeParams(e)})}var $0=x("ZodLiteral",(t,e)=>{Va.init(t,e),ze.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 C(t,e){return new $0({type:"literal",values:Array.isArray(t)?t:[t],...re.normalizeParams(e)})}var k0=x("ZodTransform",(t,e)=>{Ha.init(t,e),ze.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(re.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(re.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 kf(t){return new k0({type:"transform",transform:t})}var Sf=x("ZodOptional",(t,e)=>{Ba.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});function $e(t){return new Sf({type:"optional",innerType:t})}var S0=x("ZodNullable",(t,e)=>{Ja.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});function _f(t){return new S0({type:"nullable",innerType:t})}var z0=x("ZodDefault",(t,e)=>{Ka.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function P0(t,e){return new z0({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var T0=x("ZodPrefault",(t,e)=>{Ga.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});function E0(t,e){return new T0({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var zf=x("ZodNonOptional",(t,e)=>{Wa.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType});function I0(t,e){return new zf({type:"nonoptional",innerType:t,...re.normalizeParams(e)})}var R0=x("ZodCatch",(t,e)=>{Ya.init(t,e),ze.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function N0(t,e){return new R0({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var O0=x("ZodPipe",(t,e)=>{Xa.init(t,e),ze.init(t,e),t.in=e.in,t.out=e.out});function Kc(t,e){return new O0({type:"pipe",in:t,out:e})}var C0=x("ZodReadonly",(t,e)=>{Qa.init(t,e),ze.init(t,e)});function j0(t){return new C0({type:"readonly",innerType:t})}var Pf=x("ZodCustom",(t,e)=>{ec.init(t,e),ze.init(t,e)});function A0(t){let e=new Oe({check:"custom"});return e._zod.check=t,e}function Tf(t,e){return Dc(Pf,t??(()=>!0),e)}function M0(t,e={}){return Lc(Pf,t,e)}function Z0(t){let e=A0(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(re.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(re.issue(o))}},t(r.value,r)));return e}function Wc(t,e){return Kc(kf(t),e)}ot(Wp());var Xc="2025-11-25";var Ef=[Xc,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Xt="io.modelcontextprotocol/related-task",vs="2.0",Ee=Tf(t=>t!==null&&(typeof t=="object"||typeof t=="function")),If=_e([b(),le().int()]),Rf=b(),I1=Fe({ttl:le().optional(),pollInterval:le().optional()}),D0=R({ttl:le().optional()}),L0=R({taskId:b()}),Qc=Fe({progressToken:If.optional(),[Xt]:L0.optional()}),it=R({_meta:Qc.optional()}),Wn=it.extend({task:D0.optional()}),Nf=t=>Wn.safeParse(t).success,Ce=R({method:b(),params:it.loose().optional()}),ut=R({_meta:Qc.optional()}),lt=R({method:b(),params:ut.loose().optional()}),je=Fe({_meta:Qc.optional()}),bs=_e([b(),le().int()]),Of=R({jsonrpc:C(vs),id:bs,...Ce.shape}).strict(),eu=t=>Of.safeParse(t).success,Cf=R({jsonrpc:C(vs),...lt.shape}).strict(),jf=t=>Cf.safeParse(t).success,tu=R({jsonrpc:C(vs),id:bs,result:je}).strict(),Yn=t=>tu.safeParse(t).success;var D;(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"})(D||(D={}));var ru=R({jsonrpc:C(vs),id:bs.optional(),error:R({code:le().int(),message:b(),data:we().optional()})}).strict();var Af=t=>ru.safeParse(t).success;var Mf=_e([Of,Cf,tu,ru]),R1=_e([tu,ru]),xs=je.strict(),q0=ut.extend({requestId:bs.optional(),reason:b().optional()}),ws=lt.extend({method:C("notifications/cancelled"),params:q0}),U0=R({src:b(),mimeType:b().optional(),sizes:ne(b()).optional(),theme:We(["light","dark"]).optional()}),Xn=R({icons:ne(U0).optional()}),cn=R({name:b(),title:b().optional()}),Zf=cn.extend({...cn.shape,...Xn.shape,version:b(),websiteUrl:b().optional(),description:b().optional()}),F0=ys(R({applyDefaults:Ie().optional()}),ye(b(),we())),V0=Wc(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ys(R({form:F0.optional(),url:Ee.optional()}),ye(b(),we()).optional())),H0=Fe({list:Ee.optional(),cancel:Ee.optional(),requests:Fe({sampling:Fe({createMessage:Ee.optional()}).optional(),elicitation:Fe({create:Ee.optional()}).optional()}).optional()}),B0=Fe({list:Ee.optional(),cancel:Ee.optional(),requests:Fe({tools:Fe({call:Ee.optional()}).optional()}).optional()}),J0=R({experimental:ye(b(),Ee).optional(),sampling:R({context:Ee.optional(),tools:Ee.optional()}).optional(),elicitation:V0.optional(),roots:R({listChanged:Ie().optional()}).optional(),tasks:H0.optional(),extensions:ye(b(),Ee).optional()}),K0=it.extend({protocolVersion:b(),capabilities:J0,clientInfo:Zf}),nu=Ce.extend({method:C("initialize"),params:K0});var G0=R({experimental:ye(b(),Ee).optional(),logging:Ee.optional(),completions:Ee.optional(),prompts:R({listChanged:Ie().optional()}).optional(),resources:R({subscribe:Ie().optional(),listChanged:Ie().optional()}).optional(),tools:R({listChanged:Ie().optional()}).optional(),tasks:B0.optional(),extensions:ye(b(),Ee).optional()}),W0=je.extend({protocolVersion:b(),capabilities:G0,serverInfo:Zf,instructions:b().optional()}),ou=lt.extend({method:C("notifications/initialized"),params:ut.optional()});var $s=Ce.extend({method:C("ping"),params:it.optional()}),Y0=R({progress:le(),total:$e(le()),message:$e(b())}),X0=R({...ut.shape,...Y0.shape,progressToken:If}),ks=lt.extend({method:C("notifications/progress"),params:X0}),Q0=it.extend({cursor:Rf.optional()}),Qn=Ce.extend({params:Q0.optional()}),eo=je.extend({nextCursor:Rf.optional()}),ex=We(["working","input_required","completed","failed","cancelled"]),to=R({taskId:b(),status:ex,ttl:_e([le(),xf()]),createdAt:b(),lastUpdatedAt:b(),pollInterval:$e(le()),statusMessage:$e(b())}),un=je.extend({task:to}),tx=ut.merge(to),ro=lt.extend({method:C("notifications/tasks/status"),params:tx}),Ss=Ce.extend({method:C("tasks/get"),params:it.extend({taskId:b()})}),zs=je.merge(to),Ps=Ce.extend({method:C("tasks/result"),params:it.extend({taskId:b()})}),N1=je.loose(),Ts=Qn.extend({method:C("tasks/list")}),Es=eo.extend({tasks:ne(to)}),Is=Ce.extend({method:C("tasks/cancel"),params:it.extend({taskId:b()})}),Df=je.merge(to),Lf=R({uri:b(),mimeType:$e(b()),_meta:ye(b(),we()).optional()}),qf=Lf.extend({text:b()}),su=b().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Uf=Lf.extend({blob:su}),no=We(["user","assistant"]),ln=R({audience:ne(no).optional(),priority:le().min(0).max(1).optional(),lastModified:Kn.datetime({offset:!0}).optional()}),Ff=R({...cn.shape,...Xn.shape,uri:b(),description:$e(b()),mimeType:$e(b()),size:$e(le()),annotations:ln.optional(),_meta:$e(Fe({}))}),rx=R({...cn.shape,...Xn.shape,uriTemplate:b(),description:$e(b()),mimeType:$e(b()),annotations:ln.optional(),_meta:$e(Fe({}))}),Rs=Qn.extend({method:C("resources/list")}),nx=eo.extend({resources:ne(Ff)}),Ns=Qn.extend({method:C("resources/templates/list")}),ox=eo.extend({resourceTemplates:ne(rx)}),iu=it.extend({uri:b()}),sx=iu,Os=Ce.extend({method:C("resources/read"),params:sx}),ix=je.extend({contents:ne(_e([qf,Uf]))}),ax=lt.extend({method:C("notifications/resources/list_changed"),params:ut.optional()}),cx=iu,ux=Ce.extend({method:C("resources/subscribe"),params:cx}),lx=iu,dx=Ce.extend({method:C("resources/unsubscribe"),params:lx}),px=ut.extend({uri:b()}),fx=lt.extend({method:C("notifications/resources/updated"),params:px}),mx=R({name:b(),description:$e(b()),required:$e(Ie())}),hx=R({...cn.shape,...Xn.shape,description:$e(b()),arguments:$e(ne(mx)),_meta:$e(Fe({}))}),Cs=Qn.extend({method:C("prompts/list")}),gx=eo.extend({prompts:ne(hx)}),yx=it.extend({name:b(),arguments:ye(b(),b()).optional()}),js=Ce.extend({method:C("prompts/get"),params:yx}),au=R({type:C("text"),text:b(),annotations:ln.optional(),_meta:ye(b(),we()).optional()}),cu=R({type:C("image"),data:su,mimeType:b(),annotations:ln.optional(),_meta:ye(b(),we()).optional()}),uu=R({type:C("audio"),data:su,mimeType:b(),annotations:ln.optional(),_meta:ye(b(),we()).optional()}),_x=R({type:C("tool_use"),name:b(),id:b(),input:ye(b(),we()),_meta:ye(b(),we()).optional()}),vx=R({type:C("resource"),resource:_e([qf,Uf]),annotations:ln.optional(),_meta:ye(b(),we()).optional()}),bx=Ff.extend({type:C("resource_link")}),lu=_e([au,cu,uu,bx,vx]),xx=R({role:no,content:lu}),wx=je.extend({description:b().optional(),messages:ne(xx)}),$x=lt.extend({method:C("notifications/prompts/list_changed"),params:ut.optional()}),kx=R({title:b().optional(),readOnlyHint:Ie().optional(),destructiveHint:Ie().optional(),idempotentHint:Ie().optional(),openWorldHint:Ie().optional()}),Sx=R({taskSupport:We(["required","optional","forbidden"]).optional()}),Vf=R({...cn.shape,...Xn.shape,description:b().optional(),inputSchema:R({type:C("object"),properties:ye(b(),Ee).optional(),required:ne(b()).optional()}).catchall(we()),outputSchema:R({type:C("object"),properties:ye(b(),Ee).optional(),required:ne(b()).optional()}).catchall(we()).optional(),annotations:kx.optional(),execution:Sx.optional(),_meta:ye(b(),we()).optional()}),As=Qn.extend({method:C("tools/list")}),zx=eo.extend({tools:ne(Vf)}),Ms=je.extend({content:ne(lu).default([]),structuredContent:ye(b(),we()).optional(),isError:Ie().optional()}),O1=Ms.or(je.extend({toolResult:we()})),Px=Wn.extend({name:b(),arguments:ye(b(),we()).optional()}),dn=Ce.extend({method:C("tools/call"),params:Px}),Tx=lt.extend({method:C("notifications/tools/list_changed"),params:ut.optional()}),C1=R({autoRefresh:Ie().default(!0),debounceMs:le().int().nonnegative().default(300)}),oo=We(["debug","info","notice","warning","error","critical","alert","emergency"]),Ex=it.extend({level:oo}),du=Ce.extend({method:C("logging/setLevel"),params:Ex}),Ix=ut.extend({level:oo,logger:b().optional(),data:we()}),Rx=lt.extend({method:C("notifications/message"),params:Ix}),Nx=R({name:b().optional()}),Ox=R({hints:ne(Nx).optional(),costPriority:le().min(0).max(1).optional(),speedPriority:le().min(0).max(1).optional(),intelligencePriority:le().min(0).max(1).optional()}),Cx=R({mode:We(["auto","required","none"]).optional()}),jx=R({type:C("tool_result"),toolUseId:b().describe("The unique identifier for the corresponding tool call."),content:ne(lu).default([]),structuredContent:R({}).loose().optional(),isError:Ie().optional(),_meta:ye(b(),we()).optional()}),Ax=Gc("type",[au,cu,uu]),_s=Gc("type",[au,cu,uu,_x,jx]),Mx=R({role:no,content:_e([_s,ne(_s)]),_meta:ye(b(),we()).optional()}),Zx=Wn.extend({messages:ne(Mx),modelPreferences:Ox.optional(),systemPrompt:b().optional(),includeContext:We(["none","thisServer","allServers"]).optional(),temperature:le().optional(),maxTokens:le().int(),stopSequences:ne(b()).optional(),metadata:Ee.optional(),tools:ne(Vf).optional(),toolChoice:Cx.optional()}),Dx=Ce.extend({method:C("sampling/createMessage"),params:Zx}),so=je.extend({model:b(),stopReason:$e(We(["endTurn","stopSequence","maxTokens"]).or(b())),role:no,content:Ax}),pu=je.extend({model:b(),stopReason:$e(We(["endTurn","stopSequence","maxTokens","toolUse"]).or(b())),role:no,content:_e([_s,ne(_s)])}),Lx=R({type:C("boolean"),title:b().optional(),description:b().optional(),default:Ie().optional()}),qx=R({type:C("string"),title:b().optional(),description:b().optional(),minLength:le().optional(),maxLength:le().optional(),format:We(["email","uri","date","date-time"]).optional(),default:b().optional()}),Ux=R({type:We(["number","integer"]),title:b().optional(),description:b().optional(),minimum:le().optional(),maximum:le().optional(),default:le().optional()}),Fx=R({type:C("string"),title:b().optional(),description:b().optional(),enum:ne(b()),default:b().optional()}),Vx=R({type:C("string"),title:b().optional(),description:b().optional(),oneOf:ne(R({const:b(),title:b()})),default:b().optional()}),Hx=R({type:C("string"),title:b().optional(),description:b().optional(),enum:ne(b()),enumNames:ne(b()).optional(),default:b().optional()}),Bx=_e([Fx,Vx]),Jx=R({type:C("array"),title:b().optional(),description:b().optional(),minItems:le().optional(),maxItems:le().optional(),items:R({type:C("string"),enum:ne(b())}),default:ne(b()).optional()}),Kx=R({type:C("array"),title:b().optional(),description:b().optional(),minItems:le().optional(),maxItems:le().optional(),items:R({anyOf:ne(R({const:b(),title:b()}))}),default:ne(b()).optional()}),Gx=_e([Jx,Kx]),Wx=_e([Hx,Bx,Gx]),Yx=_e([Wx,Lx,qx,Ux]),Xx=Wn.extend({mode:C("form").optional(),message:b(),requestedSchema:R({type:C("object"),properties:ye(b(),Yx),required:ne(b()).optional()})}),Qx=Wn.extend({mode:C("url"),message:b(),elicitationId:b(),url:b().url()}),ew=_e([Xx,Qx]),tw=Ce.extend({method:C("elicitation/create"),params:ew}),rw=ut.extend({elicitationId:b()}),nw=lt.extend({method:C("notifications/elicitation/complete"),params:rw}),pn=je.extend({action:We(["accept","decline","cancel"]),content:Wc(t=>t===null?void 0:t,ye(b(),_e([b(),le(),Ie(),ne(b())])).optional())}),ow=R({type:C("ref/resource"),uri:b()});var sw=R({type:C("ref/prompt"),name:b()}),iw=it.extend({ref:_e([sw,ow]),argument:R({name:b(),value:b()}),context:R({arguments:ye(b(),b()).optional()}).optional()}),Zs=Ce.extend({method:C("completion/complete"),params:iw});function Hf(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Bf(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var aw=je.extend({completion:Fe({values:ne(b()).max(100),total:$e(le().int()),hasMore:$e(Ie())})}),cw=R({uri:b().startsWith("file://"),name:b().optional(),_meta:ye(b(),we()).optional()}),uw=Ce.extend({method:C("roots/list"),params:it.optional()}),fu=je.extend({roots:ne(cw)}),lw=lt.extend({method:C("notifications/roots/list_changed"),params:ut.optional()}),j1=_e([$s,nu,Zs,du,js,Cs,Rs,Ns,Os,ux,dx,dn,As,Ss,Ps,Ts,Is]),A1=_e([ws,ks,ou,lw,ro]),M1=_e([xs,so,pu,pn,fu,zs,Es,un]),Z1=_e([$s,Dx,tw,uw,Ss,Ps,Ts,Is]),D1=_e([ws,ks,Rx,fx,ax,Tx,$x,ro,nw]),L1=_e([xs,W0,aw,wx,gx,nx,ox,ix,Ms,zx,zs,Es,un]),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===D.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Yc(o.elicitations,r)}return new t(e,r,n)}},Yc=class extends O{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(D.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function Qt(t){return t==="completed"||t==="failed"||t==="cancelled"}var Kf=Symbol("Let zodToJsonSchema decide on which parser to use");var Jf={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"},Gf=t=>typeof t=="string"?{...Jf,name:t}:{...Jf,...t};var Wf=t=>{let e=Gf(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 mu(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function oe(t,e,r,n,o){t[e]=r,mu(t,e,n,o)}var Ds=(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 ke(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?Ds(e,t.currentPath):e.join("/")}}function Yf(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==z.ZodAny&&(r.items=F(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&oe(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&oe(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(oe(r,"minItems",t.exactLength.value,t.exactLength.message,e),oe(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Xf(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?oe(r,"minimum",n.value,n.message,e):oe(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),oe(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?oe(r,"maximum",n.value,n.message,e):oe(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),oe(r,"maximum",n.value,n.message,e));break;case"multipleOf":oe(r,"multipleOf",n.value,n.message,e);break}return r}function Qf(){return{type:"boolean"}}function Ls(t,e){return F(t.type._def,e)}var em=(t,e)=>F(t.innerType._def,e);function hu(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>hu(t,e,o))};switch(n){case"string":case"format:date-time":return{type:"string",format:"date-time"};case"format:date":return{type:"string",format:"date"};case"integer":return dw(t,e)}}var dw=(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":oe(r,"minimum",n.value,n.message,e);break;case"max":oe(r,"maximum",n.value,n.message,e);break}return r};function tm(t,e){return{...F(t.innerType._def,e),default:t.defaultValue()}}function rm(t,e){return e.effectStrategy==="input"?F(t.schema._def,e):ke(e)}function nm(t){return{type:"string",enum:Array.from(t.values)}}var pw=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function om(t,e){let r=[F(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),F(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(pw(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let i=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:a,...c}=s;i=c}else n=void 0;o.push(i)}}),o.length?{allOf:o,...n}:void 0}function sm(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 gu,yt={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(gu===void 0&&(gu=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),gu),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 qs(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":oe(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":oe(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":_t(r,"email",n.message,e);break;case"format:idn-email":_t(r,"idn-email",n.message,e);break;case"pattern:zod":Ve(r,yt.email,n.message,e);break}break;case"url":_t(r,"uri",n.message,e);break;case"uuid":_t(r,"uuid",n.message,e);break;case"regex":Ve(r,n.regex,n.message,e);break;case"cuid":Ve(r,yt.cuid,n.message,e);break;case"cuid2":Ve(r,yt.cuid2,n.message,e);break;case"startsWith":Ve(r,RegExp(`^${yu(n.value,e)}`),n.message,e);break;case"endsWith":Ve(r,RegExp(`${yu(n.value,e)}$`),n.message,e);break;case"datetime":_t(r,"date-time",n.message,e);break;case"date":_t(r,"date",n.message,e);break;case"time":_t(r,"time",n.message,e);break;case"duration":_t(r,"duration",n.message,e);break;case"length":oe(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),oe(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Ve(r,RegExp(yu(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&_t(r,"ipv4",n.message,e),n.version!=="v4"&&_t(r,"ipv6",n.message,e);break}case"base64url":Ve(r,yt.base64url,n.message,e);break;case"jwt":Ve(r,yt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ve(r,yt.ipv4Cidr,n.message,e),n.version!=="v4"&&Ve(r,yt.ipv6Cidr,n.message,e);break}case"emoji":Ve(r,yt.emoji(),n.message,e);break;case"ulid":{Ve(r,yt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{_t(r,"binary",n.message,e);break}case"contentEncoding:base64":{oe(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ve(r,yt.base64,n.message,e);break}}break}case"nanoid":Ve(r,yt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function yu(t,e){return e.patternStrategy==="escape"?mw(t):t}var fw=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function mw(t){let e="";for(let r=0;r<t.length;r++)fw.has(t[r])||(e+="\\"),e+=t[r];return e}function _t(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):oe(t,"format",e,r,n)}function Ve(t,e,r,n){t.pattern||t.allOf?.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&n.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:im(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):oe(t,"pattern",im(e,n),r,n)}function im(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
|
|
38
|
+
]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
|
|
39
|
+
]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
|
|
40
|
+
`:`[${n[c]}\r
|
|
41
|
+
]`;continue}o+=n[c],n[c]==="\\"?s=!0:i&&n[c]==="]"?i=!1:!i&&n[c]==="["&&(i=!0)}try{new RegExp(o)}catch{return console.warn(`Could not convert regex pattern at ${e.currentPath.join("/")} to a flag-independent form! Falling back to the flag-ignorant source`),t.source}return o}function Us(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===z.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:F(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??ke(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:F(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===z.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=qs(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===z.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===z.ZodBranded&&t.keyType._def.type._def.typeName===z.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=Ls(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function am(t,e){if(e.mapStrategy==="record")return Us(t,e);let r=F(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||ke(e),n=F(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||ke(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function cm(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 um(t){return t.target==="openAi"?void 0:{not:ke({...t,currentPath:[...t.currentPath,"not"]})}}function lm(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var io={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function pm(t,e){if(e.target==="openApi3")return dm(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in io&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=io[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 dm(t,e)}var dm=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>F(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 fm(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:io[t.innerType._def.typeName],nullable:!0}:{type:[io[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=F(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=F(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function mm(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",mu(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?oe(r,"minimum",n.value,n.message,e):oe(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),oe(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?oe(r,"maximum",n.value,n.message,e):oe(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),oe(r,"maximum",n.value,n.message,e));break;case"multipleOf":oe(r,"multipleOf",n.value,n.message,e);break}return r}function hm(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let a in s){let c=s[a];if(c===void 0||c._def===void 0)continue;let u=gw(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=F(c._def,{...e,currentPath:[...e.currentPath,"properties",a],propertyPath:[...e.currentPath,"properties",a]});l!==void 0&&(n.properties[a]=l,u||o.push(a))}o.length&&(n.required=o);let i=hw(t,e);return i!==void 0&&(n.additionalProperties=i),n}function hw(t,e){if(t.catchall._def.typeName!=="ZodNever")return F(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 gw(t){try{return t.isOptional()}catch{return!0}}var gm=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return F(t.innerType._def,e);let r=F(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:ke(e)},r]}:ke(e)};var ym=(t,e)=>{if(e.pipeStrategy==="input")return F(t.in._def,e);if(e.pipeStrategy==="output")return F(t.out._def,e);let r=F(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=F(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function _m(t,e){return F(t.type._def,e)}function vm(t,e){let n={type:"array",uniqueItems:!0,items:F(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&oe(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&oe(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function bm(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>F(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:F(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>F(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function xm(t){return{not:ke(t)}}function wm(t){return ke(t)}var $m=(t,e)=>F(t.innerType._def,e);var km=(t,e,r)=>{switch(e){case z.ZodString:return qs(t,r);case z.ZodNumber:return mm(t,r);case z.ZodObject:return hm(t,r);case z.ZodBigInt:return Xf(t,r);case z.ZodBoolean:return Qf();case z.ZodDate:return hu(t,r);case z.ZodUndefined:return xm(r);case z.ZodNull:return lm(r);case z.ZodArray:return Yf(t,r);case z.ZodUnion:case z.ZodDiscriminatedUnion:return pm(t,r);case z.ZodIntersection:return om(t,r);case z.ZodTuple:return bm(t,r);case z.ZodRecord:return Us(t,r);case z.ZodLiteral:return sm(t,r);case z.ZodEnum:return nm(t);case z.ZodNativeEnum:return cm(t);case z.ZodNullable:return fm(t,r);case z.ZodOptional:return gm(t,r);case z.ZodMap:return am(t,r);case z.ZodSet:return vm(t,r);case z.ZodLazy:return()=>t.getter()._def;case z.ZodPromise:return _m(t,r);case z.ZodNaN:case z.ZodNever:return um(r);case z.ZodEffects:return rm(t,r);case z.ZodAny:return ke(r);case z.ZodUnknown:return wm(r);case z.ZodDefault:return tm(t,r);case z.ZodBranded:return Ls(t,r);case z.ZodReadonly:return $m(t,r);case z.ZodCatch:return em(t,r);case z.ZodPipeline:return ym(t,r);case z.ZodFunction:case z.ZodVoid:case z.ZodSymbol:return;default:return(n=>{})(e)}};function F(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Kf)return a}if(n&&!r){let a=yw(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=km(t,t.typeName,e),i=typeof s=="function"?F(s(),e):s;if(i&&_w(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var yw=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Ds(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`),ke(e)):e.$refStrategy==="seen"?ke(e):void 0}},_w=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var _u=(t,e)=>{let r=Wf(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:F(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??ke(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=F(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??ke(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 vw(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function vu(t,e){return Tt(t)?qc(t,{target:vw(e?.target),io:e?.pipeStrategy??"input"}):_u(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function bu(t){let r=Yt(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=an(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function xu(t,e){let r=Wt(t,e);if(!r.success)throw r.error;return r.data}var bw=6e4,Fs=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(ws,r=>{this._oncancel(r)}),this.setNotificationHandler(ks,r=>{this._onprogress(r)}),this.setRequestHandler($s,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(Ss,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(D.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(Ps,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,f=new O(d.error.code,d.error.message,d.error.data);l(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new O(D.InvalidParams,`Task not found: ${s}`);if(!Qt(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(Qt(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Xt]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(Ts,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(D.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(Is,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(D.InvalidParams,`Task not found: ${r.params.taskId}`);if(Qt(o.status))throw new O(D.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(D.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof O?o:new O(D.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(D.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),Yn(s)||Af(s)?this._onresponse(s):eu(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(D.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[Xt]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:D.MethodNotFound,message:"Method not found"}};s&&this._taskMessageQueue?this._enqueueTaskMessage(s,{type:"error",message:l,timestamp:Date.now()},o?.sessionId).catch(d=>this._onerror(new Error(`Failed to enqueue error response: ${d}`))):o?.send(l).catch(d=>this._onerror(new Error(`Failed to send an error response: ${d}`)));return}let i=new AbortController;this._requestHandlerAbortControllers.set(e.id,i);let a=Nf(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,f)=>{if(i.signal.aborted)throw new O(D.ConnectionClosed,"Request was cancelled");let m={...f,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let p=m.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:D.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===i&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),Yn(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(Yn(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),Yn(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(D.InternalError,String(i))}}return}let s;try{let i=await this.request(e,un,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new O(D.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},Qt(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(D.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new O(D.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof O?i:new O(D.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=v=>{l(v)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(v){d(v);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[Xt]:c}});let p=v=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String(v)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(y=>this._onerror(new Error(`Failed to send cancellation: ${y}`)));let w=v instanceof O?v:new O(D.RequestTimeout,String(v));l(w)};this._responseHandlers.set(f,v=>{if(!n?.signal?.aborted){if(v instanceof Error)return l(v);try{let w=Wt(r,v.result);w.success?u(w.data):l(w.error)}catch(w){l(w)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??bw,g=()=>p(O.fromError(D.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let v=w=>{let y=this._responseHandlers.get(f);y?y(w):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,v),this._enqueueTaskMessage(_,{type:"request",message:m,timestamp:Date.now()}).catch(w=>{this._cleanupTimeout(f),l(w)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(v=>{this._cleanupTimeout(f),l(v)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},zs,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},Es,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Df,r)}async notification(e,r){if(!this._transport)throw new Error("Not connected");this.assertNotificationCapability(e.method);let n=r?.relatedTask?.taskId;if(n){let a={...e,jsonrpc:"2.0",params:{...e.params,_meta:{...e.params?._meta||{},[Xt]:r.relatedTask}}};await this._enqueueTaskMessage(n,{type:"notification",message:a,timestamp:Date.now()});return}if((this._options?.debouncedNotificationMethods??[]).includes(e.method)&&!e.params&&!r?.relatedRequestId&&!r?.relatedTask){if(this._pendingDebouncedNotifications.has(e.method))return;this._pendingDebouncedNotifications.add(e.method),Promise.resolve().then(()=>{if(this._pendingDebouncedNotifications.delete(e.method),!this._transport)return;let a={...e,jsonrpc:"2.0"};r?.relatedTask&&(a={...a,params:{...a.params,_meta:{...a.params?._meta||{},[Xt]:r.relatedTask}}}),this._transport?.send(a,r).catch(c=>this._onerror(c))});return}let i={...e,jsonrpc:"2.0"};r?.relatedTask&&(i={...i,params:{...i.params,_meta:{...i.params?._meta||{},[Xt]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=bu(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=xu(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=bu(e);this._notificationHandlers.set(n,o=>{let s=xu(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"&&eu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new O(D.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(D.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new O(D.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(D.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=ro.parse({method:"notifications/tasks/status",params:a});await this.notification(c),Qt(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(D.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Qt(a.status))throw new O(D.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=ro.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Qt(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function Sm(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function zm(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];Sm(i)&&Sm(s)?r[o]={...i,...s}:r[o]=s}return r}var zy=Id(dd(),1),Py=Id(Sy(),1);function IT(){let t=new zy.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Py.default)(t),t}var zi=class{constructor(e){this._ajv=e??IT()}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 Pi=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(f=>f.type==="tool_use").map(f=>f.id)),d=new Set(s.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(l.size!==d.size||![...l].every(f=>d.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},so,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},pn,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 Ty(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 Ey(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 Ti=class extends Fs{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(oo.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 zi,this.setRequestHandler(nu,n=>this._oninitialize(n)),this.setNotificationHandler(ou,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(du,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=oo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new Pi(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=zm(this._capabilities,e)}setRequestHandler(e,r){let o=Yt(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s=an(o);if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=Wt(dn,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new O(D.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=Wt(un,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new O(D.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=Wt(Ms,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new O(D.InvalidParams,`Invalid tools/call result: ${p}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){Ey(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Ty(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:Ef.includes(r)?r:Xc,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"},xs)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],s=o.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},pu,r):this.request({method:"sampling/createMessage",params:e},so,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},pn,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},pn,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(D.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof O?i:new O(D.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},fu,r)}async sendLoggingMessage(e,r){if(this._capabilities.logging&&!this.isMessageIgnored(e.level,r))return this.notification({method:"notifications/message",params:e})}async sendResourceUpdated(e){return this.notification({method:"notifications/resources/updated",params:e})}async sendResourceListChanged(){return this.notification({method:"notifications/resources/list_changed"})}async sendToolListChanged(){return this.notification({method:"notifications/tools/list_changed"})}async sendPromptListChanged(){return this.notification({method:"notifications/prompts/list_changed"})}};var Ry=Symbol.for("mcp.completable");function vd(t){return!!t&&typeof t=="object"&&Ry in t}function Ny(t){return t[Ry]?.complete}var Iy;(function(t){t.Completable="McpCompletable"})(Iy||(Iy={}));var RT=/^[A-Za-z0-9._-]{1,128}$/;function NT(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"),!RT.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 OT(t,e){if(e.length>0){console.warn(`Tool name validation warning for "${t}":`);for(let r of e)console.warn(` - ${r}`);console.warn("Tool registration will proceed, but this may cause compatibility issues."),console.warn("Consider updating the tool name to conform to the MCP tool naming standard."),console.warn("See SEP: Specify Format for Tool Names (https://github.com/modelcontextprotocol/modelcontextprotocol/issues/986) for more details.")}}function bd(t){let e=NT(t);return OT(t,e.warnings),e.isValid}var Ei=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 Ii=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 Ti(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new Ei(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(cr(As)),this.server.assertCanSetRequestHandler(cr(dn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(As,()=>({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=sn(r.inputSchema);return o?vu(o,{strictUnions:!0,pipeStrategy:"input"}):CT})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=sn(r.outputSchema);o&&(n.outputSchema=vu(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(dn,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new O(D.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new O(D.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(D.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new O(D.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof O&&n.code===D.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=sn(e.inputSchema)??e.inputSchema,i=await ms(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=hs(a);throw new O(D.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new O(D.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=sn(e.outputSchema),s=await ms(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=hs(i);throw new O(D.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new O(D.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(cr(Zs)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Zs,async e=>{switch(e.params.ref.type){case"ref/prompt":return Hf(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Bf(e),this.handleResourceCompletion(e,e.params.ref);default:throw new O(D.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(D.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new O(D.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return Zo;let s=Yt(n.argsSchema)?.[e.params.argument.name];if(!vd(s))return Zo;let i=Ny(s);if(!i)return Zo;let a=await i(e.params.argument.value,e.params.context);return Cy(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(D.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 Cy(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(cr(Rs)),this.server.assertCanSetRequestHandler(cr(Ns)),this.server.assertCanSetRequestHandler(cr(Os)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Rs,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(Ns,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(Os,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new O(D.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(D.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(cr(Cs)),this.server.assertCanSetRequestHandler(cr(js)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Cs,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?jT(r.argsSchema):void 0}))})),this.server.setRequestHandler(js,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new O(D.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new O(D.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=sn(n.argsSchema),s=await ms(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=hs(c);throw new O(D.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Nr(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=Nr(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Ke?c._def?.innerType:c;return vd(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){bd(e);let l={title:r,description:n,inputSchema:Oy(o),outputSchema:Oy(s),annotations:i,execution:a,_meta:c,handler:u,enabled:!0,disable:()=>l.update({enabled:!1}),enable:()=>l.update({enabled:!0}),remove:()=>l.update({name:null}),update:d=>{typeof d.name<"u"&&d.name!==e&&(typeof d.name=="string"&&bd(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=Nr(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Nr(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];if(xd(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!xd(r[0])&&(i=r.shift());else if(typeof c=="object"&&c!==null){if(Object.values(c).some(u=>typeof u=="object"&&u!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);i=r.shift()}}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var CT={type:"object",properties:{}};function jy(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function Ay(t){return"_def"in t||"_zod"in t||jy(t)}function xd(t){return typeof t!="object"||t===null||Ay(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(jy)}function Oy(t){if(t){if(xd(t))return Nr(t);if(!Ay(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function jT(t){let e=Yt(t);return e?Object.entries(e).map(([r,n])=>{let o=of(n),s=sf(n);return{name:r,description:o,required:!s}}):[]}function cr(t){let r=Yt(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=an(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Cy(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var Zo={completion:{values:[],hasMore:!1}};import Zy from"node:process";var AT=10*1024*1024,Ri=class{constructor(e){this._maxBufferSize=e?.maxBufferSize??AT}append(e){if((this._buffer?.length??0)+e.length>this._maxBufferSize)throw this.clear(),new Error(`ReadBuffer exceeded maximum size of ${this._maxBufferSize} bytes`);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),MT(r)}clear(){this._buffer=void 0}};function MT(t){return Mf.parse(JSON.parse(t))}function My(t){return JSON.stringify(t)+`
|
|
43
|
+
`}var Ni=class{constructor(e=Zy.stdin,r=Zy.stdout,n){this._stdin=e,this._stdout=r,this._started=!1,this._ondata=o=>{try{this._readBuffer.append(o),this.processReadBuffer()}catch(s){this.onerror?.(s),this.close().catch(()=>{})}},this._onerror=o=>{this.onerror?.(o)},this._readBuffer=new Ri({maxBufferSize:n?.maxBufferSize})}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=My(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{readFileSync as IE}from"node:fs";import{readFile as RE}from"node:fs/promises";import{writeFileSync as HT,mkdirSync as BT,existsSync as JT}from"node:fs";import{createHash as KT}from"node:crypto";import zd from"node:path";function Ly(t,e=0){if(!t||typeof t!="object"||e>6)return null;let r=t;for(let n of["layers","shapes","children","artboards","widgets","nodes"]){let o=r[n];if(Array.isArray(o)&&o.length)return o}for(let n of Object.values(r))if(n&&typeof n=="object"){let o=Ly(n,e+1);if(o)return o}return null}var qy=/^(frame|group|编组|矩形|椭圆|形状|切片|蒙版|layer|rect|image|vector|line|subtract|union|intersect|difference)[\s_-]?\d*$/i,ZT=/^(蒙版|mask|切片|slice)/i,DT=t=>qy.test(t.trim())&&!ZT.test(t.trim()),LT=/^(subtract|union|intersect|difference)([\s_-]?\d*)?$/i,wd=t=>1+(Array.isArray(t?.layers)?t.layers.reduce((e,r)=>e+wd(r),0):0);function In(t){if(!t||typeof t!="object"||typeof t.value!="string")return t;let e=/rgba\(\s*\d+\s*,\s*\d+\s*,\s*\d+\s*,\s*([\d.]+)\s*\)/.exec(t.value);if(!e)return t;let r=Number(e[1]),n=Number(t.a);if(Number.isFinite(n)&&Math.abs(n-r)>.001){let{a:o,...s}=t;return s}return t}function Uy(t){let e=t.ddsOriginFrame;return e&&Number(e.width)>0&&Number(e.height)>0?{x:Math.round(Number(e.x)||0),y:Math.round(Number(e.y)||0),width:Math.round(Number(e.width)||0),height:Math.round(Number(e.height)||0)}:{x:Math.round(Number(t.left??0)),y:Math.round(Number(t.top??0)),width:Math.round(Number(t.width??0)),height:Math.round(Number(t.height??0))}}function qT(t){let e=Array.isArray(t.points)&&t.points.length?t.points.map(n=>Number(n?.cornerRadius??0)||0):Array.isArray(t.radius)?t.radius.map(n=>Number(n)||0):null;if(!e||!e.some(Boolean))return null;let r=n=>e[n]??e[0]??0;return{topLeft:r(0),topRight:r(1),bottomRight:r(2),bottomLeft:r(3)}}function UT(t){let e=t.font;if(!e||typeof e!="object")return null;let r=String(e.font||e.displayName||""),n=Array.isArray(e.styles)?e.styles[0]:null,o=String(n?.decorationLine||""),s={0:"top",1:"middle",2:"bottom"},i={size:Number(e.size??n?.size??0)||void 0,name:e.displayName||void 0,postScriptName:e.font||void 0,fontWeight:/bold|heavy|black/i.test(r)?700:void 0,lineHeight:e.line!=null?{unit:"PIXELS",value:Number(e.line)||0}:void 0,letterSpacing:{value:Number(t.characterSpacing??e.kerning??0)||0},align:typeof e.align=="string"?e.align:void 0,verticalAlignment:s[Number(e.verticalAlignment)]||"top",italic:/italic|oblique/i.test(r)||void 0,underline:o==="underline"||void 0,linethrough:o==="line-through"||void 0},a=In(e.color)??In(n?.color);return{value:String(e.content??n?.content??""),style:{content:String(e.content??n?.content??""),color:a,font:i}}}function Fy(t,e){let r={id:t.id,name:t.name,type:t.type,frame:Uy(t),visible:t.isVisible!==!1};typeof t.opacity=="number"&&(r.opacity=t.opacity/100);let n=t.ddsImage?.imageUrl;n&&(t.exportable===!0||t.type==="bitmap")?(r.image={imageUrl:n},t.exportable===!0&&(r.hasExportImage=!0)):t.exportable===!0?r.hasExportImage=!0:t.image?.svgUrl&&(r.image=t.image);let o={};Array.isArray(t.fills)&&t.fills.length&&(o.fills=t.fills.filter(a=>a.isEnabled!==!1).map(a=>{let c={...a};return c.gradient?.colorStops&&(c.gradient={...c.gradient,stops:c.gradient.colorStops.map(u=>({position:u.position,color:In(u.color)}))}),c.color=In(c.color),c})),Array.isArray(t.borders)&&t.borders.length&&(o.borders=t.borders.filter(a=>a.isEnabled!==!1).map(a=>({...a,width:a.thickness??a.width,lineAlignment:a.position==="\u5916\u8FB9\u6846"?"outside":a.position==="\u5185\u8FB9\u6846"?"inside":"center",color:In(a.color)}))),Array.isArray(t.shadows)&&t.shadows.length&&(o.shadows=t.shadows.filter(a=>a.isEnabled!==!1).map(a=>({...a,color:In(a.color)}))),Object.keys(o).length&&(r.style=o);let s=qT(t);if(s&&(r.radius=s),t.type==="text"){let a=UT(t);a&&(r.text=a)}let i=e.get(t.id);return i?.length&&(r.layers=i.map(a=>Fy(a,e))),r}function $d(t){if(!t||typeof t!="object"||t.artboard)return t;let e=t.info;if(!Array.isArray(e)||!e.length)return t;let r=new Map;for(let l of e)l?.id!=null&&r.set(l.id,l);let n=new Map,o=[];for(let l of e)if(!(!l||typeof l!="object"))if(l.parentID==null||!r.has(l.parentID))o.push(l);else{let d=n.get(l.parentID);d?d.push(l):n.set(l.parentID,[l])}if(!o.length)return t;let[s,...i]=o;i.length&&n.set(s.id,[...n.get(s.id)??[],...i]);let a=Fy(s,n),{info:c,...u}=t;return{...u,artboard:{name:s.name,frame:Uy(s),layers:a?.layers||[]}}}var Dy=t=>{let e=/^rgba\((\d+),\s*(\d+),\s*(\d+),\s*1\)$/.exec(t.trim());return e?"#"+[e[1],e[2],e[3]].map(r=>(+r).toString(16).padStart(2,"0")).join(""):t};function FT(t){let e=t.frame||t.rect||t.boundingBox||t,r=Math.round(Number(e.x??e.left??0)),n=Math.round(Number(e.y??e.top??0)),o=Math.round(Number(e.width??e.w??0)),s=Math.round(Number(e.height??e.h??0)),i=t.style||t.css||{},a=String(t.type??t.shapeType??(t.text!=null?"text":"rect")).toLowerCase(),c=t.text&&typeof t.text=="object"?t.text.style:null,u={type:/text|label|font/i.test(a)?"text":/image|bitmap|img/i.test(a)?"image":"rect",x:r,y:n,w:o,h:s};t.name&&(t.hasExportImage||!DT(String(t.name)))&&(u.name=t.name),t.hasExportImage?u.hasExportImage=!0:t.image?.imageUrl&&(u.imageUrl=t.image.imageUrl);let l=t.opacity==null?1:Number(t.opacity),d=Number.isFinite(l)?l:1,f=y=>Number(y?.opacity??1)||0,m=y=>{if(y==null)return 1;let S=y.color?.a??y.a;return Number(S??1)||0},p=(y,S)=>{if(typeof y!="string")return;let M=m(S),J=f(S),V=M*d*(Math.abs(J-M)>.001?J:1);if(V>=1)return Dy(y);let $=Number(V.toFixed(4)),Z=/^rgba?\((\d+),\s*(\d+),\s*(\d+)(?:,\s*([\d.]+))?\)$/.exec(y.trim());if(Z)return`rgba(${Z[1]},${Z[2]},${Z[3]},${$})`;let I=/^rgba?\((\d+(?:\.\d+)?)%,\s*(\d+(?:\.\d+)?)%,\s*(\d+(?:\.\d+)?)%(?:,\s*([\d.]+))?\)$/.exec(y.trim());if(I){let ce=K=>Math.min(255,Math.max(0,Math.round(parseFloat(K)*2.55)));return`rgba(${ce(I[1])},${ce(I[2])},${ce(I[3])},${$})`}let L=/^#([0-9a-f]{3}|[0-9a-f]{6})$/i.exec(y.trim());if(L){let ce=L[1];return ce.length===3&&(ce=ce.split("").map(K=>K+K).join("")),`rgba(${parseInt(ce.slice(0,2),16)},${parseInt(ce.slice(2,4),16)},${parseInt(ce.slice(4,6),16)},${$})`}return console.error(`[normalize] applyAlpha \u65E0\u6CD5\u89E3\u6790\u989C\u8272\uFF1A${y}\uFF0C\u900F\u660E\u5EA6 alpha=${$} \u672A\u53E0\u5165`),y};if(u.type==="text"){let y=t.text;u.text=(typeof y=="string"?y:c?.content??y?.value??"")||void 0;let S=c?.font??{};u.fontSize=Math.round(Number(S.size??S.fontSize??0))||void 0,u.fontWeight=Number(S.fontWeight??S.weight??0)||void 0,u.fontFamily=S.name??S.fontFamily??S.postScriptName??void 0,S.lineHeight&&(u.lineHeight=S.lineHeight.unit==="AUTO"?"auto":Math.round(Number(S.lineHeight.value))||void 0),S.letterSpacing&&Number(S.letterSpacing.value)&&(u.letterSpacing=Math.round(Number(S.letterSpacing.value)*10)/10);let M=S.align?String(S.align).toLowerCase():"";M&&M!=="left"&&(u.align=M);let J=S.verticalAlignment?String(S.verticalAlignment).toLowerCase():"";J&&J!=="top"&&(u.verticalAlign=J),S.italic&&(u.italic=!0),S.underline&&(u.underline=!0),S.linethrough&&(u.linethrough=!0);let V=c?.color?.value??i.fills?.[0]?.color?.value,$=p(V,c?.color??i.fills?.[0]);$&&(u.color=$)}else{let y=i.fills?.[0];if(y?.type==="gradient"&&y.gradient?.stops){let V=y.gradient.stops.map($=>({color:p($.color?.value,{...$.color,opacity:y.opacity}),position:Math.round(Number($.position)*1e3)/1e3})).filter($=>$.color);V.length&&(u.gradient={stops:V})}else{let V=p(y?.color?.value,y);V&&(u.fill=V)}let S=V=>{if(V==null)return null;let $=Math.round(Number(V.topLeft??0)||0),Z=Math.round(Number(V.topRight??0)||0),I=Math.round(Number(V.bottomLeft??0)||0),L=Math.round(Number(V.bottomRight??0)||0);return $||Z||I||L?{tl:$,tr:Z,bl:I,br:L}:null},M=(t.paths||[]).map(V=>S(V?.radius)).filter(Boolean);if(M.length||(M=[S(t.radius)].filter(Boolean)),M.length){let V=M.every(I=>I.tl===M[0].tl&&I.tr===M[0].tr&&I.bl===M[0].bl&&I.br===M[0].br),$=M[0],Z={topLeft:$.tl,topRight:$.tr,bottomLeft:$.bl,bottomRight:$.br};V&&$.tl===$.tr&&$.tr===$.bl&&$.bl===$.br?u.radius=$.tl:(u.borderRadius=Z,V||(u.radius=Math.max($.tl,$.tr,$.bl,$.br)))}let J=(i.borders||[]).find(V=>V.isEnabled!==!1);if(J){let V=p(J.color?.value,{...J.color,opacity:J.opacity});V&&(u.border={color:V,width:Math.round(Number(J.width??0)*100)/100,alignment:J.lineAlignment==="outside"?"outside":J.lineAlignment==="center"?"center":"inside"})}}let h=(i.shadows||[]).filter(y=>y&&y.isEnabled!==!1&&y.color?.value),g=y=>({color:Dy(String(y.color.value)),x:Math.round(Number(y.x??0)),y:Math.round(Number(y.y??0)),blur:Math.round(Number(y.blur??0)),spread:Math.round(Number(y.spread??0))}),_=h.find(y=>!y.inset),v=h.find(y=>y.inset);_&&(u.shadow=g(_)),v&&(u.innerShadow=g(v));let w=!!(u.fill||u.gradient||u.color);return d<1&&!w&&(u.opacity=Number(d.toFixed(4))),u}function Vy(t){let e=$d(t),r=Ly(e)||[],n=[],o=0,s=0,i=0,a=0,c=$=>!!($.fill||$.gradient||$.color||$.text||$.imageUrl||$.hasExportImage||$.border||$.shadow||$.innerShadow),u=$=>!qy.test($.trim()),l=($,Z)=>{for(let I of $){if(!I||typeof I!="object")continue;s++;let L=I;if(L.visible===!1)continue;let ce=String(L.name||"");if(/备份|backup/i.test(ce)){i+=wd(L);continue}let K=ce&&u(ce)?[...Z,ce]:Z,nt=FT(L);nt.w>0&&nt.h>0&&(c(nt)?(Z.length&&(nt.parentPath=Z.join("/")),n.push(nt)):o++);let fe=L.layers;if(!(!Array.isArray(fe)||!fe.length)){if(LT.test(ce.trim())){a+=fe.reduce((A,Se)=>A+wd(Se),0);continue}l(fe,K)}}};l(r,[]);let d=n,f=0,m=e?.artboard?.frame,p=Math.round(Number(m?.width??0)),h=Math.round(Number(m?.height??0));p>0&&h>0&&(d=d.filter($=>{let Z=$.x+$.w<=0||$.y+$.h<=0||$.x>=p||$.y>=h;return Z&&f++,!Z}));let g=$=>$.hasExportImage?JSON.stringify(["slice",$.x,$.y,$.w,$.h]):JSON.stringify({...$,name:void 0}),_=new Map;d.forEach(($,Z)=>{let I=g($),L=_.get(I);L?L.push(Z):_.set(I,[Z])});let v=new Map;for(let[$,Z]of _){let I=Z.filter(L=>d[L].type==="image");v.set($,I.length?I[I.length-1]:Z[Z.length-1])}let w=0;d=d.filter(($,Z)=>{let I=v.get(g($))===Z;return I||w++,I});let y=0;if(process.env.LANHU_PRUNE_OCCLUDED!=="0"){let $=I=>typeof I=="string"&&(/^#[0-9a-f]{6}$/i.test(I)||/^rgba\(\d+,\s*\d+,\s*\d+,\s*1\)$/.test(I)),Z=new Array(d.length).fill(!1);d.forEach((I,L)=>{if(!(I.type==="text"||I.hasExportImage||I.imageUrl))for(let ce=L+1;ce<d.length;ce++){let K=d[ce];if(!(K.type==="text"||!$(K.fill))&&K.x<=I.x&&K.y<=I.y&&K.x+K.w>=I.x+I.w&&K.y+K.h>=I.y+I.h){Z[L]=!0;break}}}),d=d.filter((I,L)=>Z[L]?(y++,!1):!0)}let S=Number(process.env.LANHU_MIN_VISIBLE_FRACTION??.25),M=0;S>0&&p>0&&h>0&&(d=d.filter($=>{if($.type==="text"||$.hasExportImage||$.imageUrl)return!0;let Z=Math.min($.x+$.w,p)-Math.max($.x,0),I=Math.min($.y+$.h,h)-Math.max($.y,0);return Math.max(0,Z)*Math.max(0,I)/($.w*$.h)>=S?!0:(M++,!1)}));let J=0;if(process.env.LANHU_PRUNE_FRAGMENTS!=="0"){let $=new Map;d.forEach((I,L)=>{if(I.type==="text"||I.hasExportImage||I.imageUrl||I.w>24||I.h>8||!I.parentPath)return;let ce=$.get(I.parentPath);ce?ce.push(L):$.set(I.parentPath,[L])});let Z=new Set;for(let I of $.values()){I.sort((K,nt)=>d[K].y-d[nt].y||d[K].x-d[nt].x);let L=[I[0]],ce=()=>{if(L.length>=4){L.sort((fe,A)=>d[fe].x-d[A].x);let K=[L[0]],nt=()=>{if(K.length>=4){let fe=K.map(A=>d[A].w);Math.max(...fe)/Math.min(...fe)>=1.3&&(K.forEach(A=>Z.add(A)),J+=K.length)}K=[]};for(let fe=1;fe<L.length;fe++){let A=d[K[K.length-1]],Re=d[L[fe]].x-(A.x+A.w);Re<=6&&Re>=-6?K.push(L[fe]):(nt(),K=[L[fe]])}nt()}L=[]};for(let K=1;K<I.length;K++)Math.abs(d[I[K]].y-d[L[0]].y)<=2?L.push(I[K]):(ce(),L=[I[K]]);ce()}Z.size&&(d=d.filter((I,L)=>!Z.has(L)))}let V={rawLayerCount:s,totalLayerCount:d.length,droppedLayerCount:o,dedupedLayerCount:w,outsideCanvasLayerCount:f,occludedLayerCount:y,sliverLayerCount:M,fragmentLayerCount:J,backupLayerCount:i,booleanOperandLayerCount:a,payloadBytes:Buffer.byteLength(JSON.stringify(d)),docName:e?.artboard?.name??e?.document?.name??e?.name??e?.title??void 0};return{layers:d,meta:V}}import kd from"sharp";async function Hy(t,e,r){let n=e>0?Math.round(e*2):void 0,o=r>0?Math.round(r*2):void 0,s=kd(t);return n&&o&&(s=s.resize(n,o,{fit:"contain",background:{r:0,g:0,b:0,alpha:0}})),s.png({palette:!0,compressionLevel:9,quality:90}).toBuffer()}async function By(t,e,r){let n=kd(t);return e>0&&r>0?n=n.resize(Math.round(e),Math.round(r),{fit:"contain",background:{r:255,g:255,b:255,alpha:1}}):n=n.resize({width:1024,height:1024,fit:"inside",withoutEnlargement:!0}),n.flatten({background:"#ffffff"}).jpeg({quality:80}).toBuffer()}var VT=Number(process.env.LANHU_VISION_MAX_EDGE)||1568;async function Sd(t,e=VT){return kd(t).resize({width:e,height:e,fit:"inside",withoutEnlargement:!0}).flatten({background:"#ffffff"}).jpeg({quality:85}).toBuffer()}var Rn="https://lanhuapp.com",Oi="\u65B9\u5F0F1\uFF1A\u6D4F\u89C8\u5668\u767B\u5F55\u84DD\u6E56\u540E\u6309 F12 \u2192 Network \u2192 \u70B9\u4EFB\u610F\u8BF7\u6C42 \u2192 \u590D\u5236 Cookie \u5934\u6574\u4E32\uFF0C\u5199\u5165 .mcp-local/lanhu.cookie\uFF08\u6216\u8BBE LANHU_COOKIE \u73AF\u5883\u53D8\u91CF\uFF09\uFF1B\u65B9\u5F0F2\uFF1A\u53CC\u51FB lanhu-login.bat\uFF08\u6216\u8FD0\u884C npm run login\uFF09\uFF0C\u6D4F\u89C8\u5668\u767B\u5F55\u540E\u6309 Enter \u81EA\u52A8\u5199\u5165 cookie\u3002\u5B8C\u6210\u540E\u8BA9 AI \u91CD\u8BD5\u3002";function GT(t){if(t.teamId)return t.teamId;if(t.url){let{teamId:e}=Ai(t.url);if(e&&e!=="0")return e}throw new Error("\u65E0\u6CD5\u5B9A\u4F4D\u56E2\u961F\uFF1A\u8BF7\u4F20 teamId\uFF08\u6765\u81EA lanhu_list_teams\uFF09\u6216 url\uFF08\u84DD\u6E56\u94FE\u63A5\u63D0 tid\uFF09\uFF1B\u7EAF cookie \u4E0D\u5E26 teamId/url \u65F6\u65E0\u6CD5\u5217\u76EE\u5F55")}async function Ky(t){let e=await fetch(`${Rn}/api/account/user_teams?need_open_related=true`,{headers:Lo(t)});if(!e.ok)return{status:e.status,teams:[]};let r=await e.json();return{status:e.status,teams:r?.result||r?.data||[]}}async function Gy(t){let e=ur(t),{status:r,teams:n}=await Ky(e);return Yy(r,"auth","\u56E2\u961F\u5217\u8868"),{teamCount:n.length,teams:n.map(o=>({teamId:o.id,name:o.name,role:o.role?.display||o.role?.name||"",isOwner:!!o.is_team_owner,memberNum:Number(o.member_num)||0}))}}function Ai(t){let e=r=>{let n=new RegExp(`[?&]${r}=([a-f0-9-]+)`,"i").exec(t);return n?n[1]:null};return{projectId:e("project_id")||e("pid"),imageId:e("image_id"),teamId:e("tid")||"0"}}function ur(t){if(!t.cookie)throw new Error(`\u9700\u8981\u84DD\u6E56\u767B\u5F55\u51ED\u8BC1\uFF08\u4E8C\u9009\u4E00\uFF09\uFF1A${Oi}`);return t.cookie}function Wy(t){if(!t)throw new Error("\u9700\u8981\u84DD\u6E56 URL \u6216\u9879\u76EE UUID");if(/[/?]/.test(t)){let{projectId:e}=Ai(t);if(e)return e}if(/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/i.test(t))return t;throw new Error(`\u65E0\u6CD5\u8BC6\u522B\u7684\u9879\u76EE\u6807\u8BC6\uFF1A${t}\uFF08\u5E94\u4E3A\u84DD\u6E56 URL \u6216\u9879\u76EE UUID\uFF09`)}function Lo(t){return{Cookie:t,Accept:"application/json, text/plain, */*",Referer:"https://lanhuapp.com/web/"}}function Jy(t,e){let r=new URL(t).hostname;return r==="lanhuapp.com"||r.endsWith(".lanhuapp.com")?Lo(e):{Referer:"https://lanhuapp.com/"}}var Ci=class extends Error{constructor(r,n,o){super(o);this.status=r;this.scope=n;this.hint=o;this.name="LanhuHttpError"}status;scope;hint};function Yy(t,e,r){if(!(t>=200&&t<300))throw t===401?e==="auth"?new Ci(401,"auth",`\u84DD\u6E56\u9274\u6743\u5931\u8D25\uFF08HTTP 401\uFF09\uFF1Acookie \u5DF2\u8FC7\u671F\u6216\u7F3A\u5931\u5173\u952E\u5B57\u6BB5\u3002${Oi}`):new Ci(401,"resource",`\u65E0\u6743\u8BBF\u95EE${r}\uFF08HTTP 401\uFF09\uFF1Acookie \u4ECD\u53EF\u80FD\u6709\u6548\uFF0C\u4F46\u8BE5\u8D44\u6E90\u672A\u5BF9\u4F60\u5206\u4EAB\u3002\u91CD\u65B0\u767B\u5F55\u65E0\u6548\uFF0C\u8BF7\u8054\u7CFB\u8BBE\u8BA1\u8005\u5F00\u901A\u6743\u9650\uFF0C\u6216\u6362\u4E00\u4E2A\u6709\u6743\u9650\u7684${r}\u3002`):new Error(`\u8BF7\u6C42${r}\u5931\u8D25\uFF1AHTTP ${t}`)}function ji(t,e,r){Yy(t.status,e,r)}async function Xy(t){if(!t.cookie)return{ok:!1,status:0,reason:"no_cookie",hint:`\u672A\u914D\u7F6E\u84DD\u6E56 cookie\u3002${Oi}`};try{let{status:e,teams:r}=await Ky(t.cookie);return e>=200&&e<300?{ok:!0,teamCount:r.length,teams:r.map(n=>({teamId:n.id,name:n.name}))}:{ok:!1,status:e,reason:e===401?"cookie_expired":`http_${e}`,hint:e===401?`cookie \u5DF2\u8FC7\u671F\u6216\u65E0\u6548\u3002${Oi}`:`\u84DD\u6E56\u8FD4\u56DE HTTP ${e}\uFF0C\u7A0D\u540E\u91CD\u8BD5\u6216\u68C0\u67E5\u7F51\u7EDC\u3002`}}catch(e){return{ok:!1,status:0,reason:"network_error",hint:`\u7F51\u7EDC\u8BF7\u6C42\u5931\u8D25\uFF1A${e?.message||e}`}}}function WT(t,e){let n=/charset=([\w-]+)/i.exec(e||"")?.[1]?.toLowerCase(),o=a=>{try{let c=new TextDecoder(a,{fatal:!0}).decode(t);return JSON.parse(c)}catch{return null}};if(n&&n!=="iso-8859-1"){let a=o(n);if(a!=null)return a}let s=o("utf-8");if(s!=null)return s;let i=new TextDecoder("iso-8859-1").decode(t);if(/[-ÿ]/.test(i)&&!/[一-鿿]/.test(i)){let a=o("gbk");if(a!=null)return a}return JSON.parse(i)}async function Do(t,e,r,n){let o=Lo(r),s=await fetch(`${Rn}/api/project/image?pid=${e}&image_id=${t}`,{headers:o});ji(s,"resource","\u8BBE\u8BA1\u7A3F");let i=await s.json(),a=i?.result||i?.data||{},c=a.versions||[],u=c[0]?.json_url,l=[],d={rawLayerCount:0,totalLayerCount:0},f=a.width||0,m=a.height||0,p=[];if(u){let g=await fetch(u,{headers:Jy(u,r)});if(!g.ok)throw new Error(`\u4E0B\u8F7D\u8BBE\u8BA1\u7A3F\u6807\u6CE8\u6570\u636E\u5931\u8D25\uFF1AHTTP ${g.status}\uFF08${u}\uFF09`);let _=WT(await g.arrayBuffer(),g.headers.get("content-type")||""),v=$d(_),w=Vy(v);l=w.layers,d=w.meta;let y=v?.artboard;y?.frame&&(f=Math.round(Number(y.frame.width||0))||f,m=Math.round(Number(y.frame.height||0))||m),p=YT(y)}let h;if(n.needCover){let g=a.url||c[0]?.url;if(g){let _=await fetch(g,{headers:Jy(g,r)});if(_.ok){let v=Buffer.from(await _.arrayBuffer());h=(await By(v,f,m)).toString("base64")}}}return{source:"api",name:a.name,viewport:{width:f,height:m},layers:l,meta:{...d,docName:a.name??d.docName},...p.length?{slices:p}:{},...h?{coverImageBase64:h}:{}}}function YT(t){let e=[],r=n=>{if(!(!n||typeof n!="object")){if(n.hasExportImage&&n.image?.imageUrl){let o=n.frame||{};e.push({name:String(n.name||"slice"),imageUrl:n.image.imageUrl,x:Math.round(Number(o.x??o.left??0)),y:Math.round(Number(o.y??o.top??0)),w:Math.round(Number(o.width??0)),h:Math.round(Number(o.height??0))})}for(let o of n.layers||[])r(o)}};return r(t),e}function XT(t){return KT("md5").update(t).digest("hex").slice(0,8)}async function Mi(t,e){let{projectId:r,imageId:n}=Ai(t);if(!r)throw new Error("\u65E0\u6CD5\u4ECE URL \u63D0\u53D6 project_id/pid");if(!n)throw new Error("\u65E0\u6CD5\u4ECE URL \u63D0\u53D6 image_id");let o=ur(e);return{...await Do(n,r,o,e),url:t}}async function Qy(t,e,r){let n=ur(r),o=await Do(t,e,n,r);return{...o,name:o.name||t}}async function e_(t){let e=ur(t),r={...Lo(e),"Content-Type":"application/json"},n=GT(t),o=await fetch(`${Rn}/workbench/api/workbench/abstractfile/list`,{method:"POST",headers:r,body:JSON.stringify({tenantId:n,parentId:0})});ji(o,"auth","\u56E2\u961F\u76EE\u5F55");let s=await o.json(),i=Array.isArray(s.data)?s.data:[],a=i.filter(h=>h.sourceType==="folder"),c=i.filter(h=>h.sourceType!=="folder"),u=[],l=await Promise.all(a.map(async h=>{try{let g=await fetch(`${Rn}/workbench/api/workbench/abstractfile/list`,{method:"POST",headers:r,body:JSON.stringify({tenantId:n,parentId:h.id})});if(!g.ok)return u.push(String(h.name||h.id)),[];let _=await g.json();return Array.isArray(_.data)?_.data:[]}catch{return u.push(String(h.name||h.id)),[]}})),d=[...c,...l.flat()],f=[],m=(await Promise.all(d.map(h=>Pd(h.sourceId,t).then(g=>({ok:!0,value:{project:h.sourceName,projectId:h.sourceId,sectors:g.sectors.map(_=>({name:_.name,designCount:_.designCount}))}})).catch(g=>(f.push({project:h.sourceName,projectId:h.sourceId,error:g?.message||String(g)}),{ok:!1}))))).filter(h=>h.ok).map(h=>h.value),p=m.reduce((h,g)=>h+g.sectors.length,0);return{teamId:n,projectCount:m.length,sectorCount:p,directory:m,...f.length?{failedProjects:f}:{},...u.length?{failedFolders:u}:{}}}async function Pd(t,e){let r=ur(e),n=Lo(r),o="0",s=await fetch(`${Rn}/api/project/project_sectors?project_id=${t}`,{headers:n});ji(s,"resource","\u9879\u76EE\u5206\u7EC4");let i=await s.json(),a=i?.data?.sectors||i?.result?.sectors||[],c=await fetch(`${Rn}/api/project/images?project_id=${t}&team_id=${o}&dds_status=1`,{headers:n});ji(c,"resource","\u9879\u76EE\u8BBE\u8BA1\u7A3F\u5217\u8868");let u=await c.json(),l=u?.data?.images||u?.data?.list||u?.data||[],d=new Map;for(let f of l){let m=f.image_id||f.id;m&&d.set(m,f.name||f.image_name||m)}return{projectId:t,sectorCount:a.length,sectors:a.map(f=>({id:f.id,name:f.name,designCount:(f.images||[]).length,designs:(f.images||[]).map(m=>({image_id:m,name:d.get(m)||m}))}))}}async function t_(t,e,r){let n=Wy(t),o=await Pd(n,r),s=o.sectors.find(u=>u.name===e||u.id===e);if(!s)throw new Error(`\u672A\u627E\u5230\u5206\u7EC4\u300C${e}\u300D\uFF0C\u53EF\u7528\u5206\u7EC4\uFF1A${o.sectors.map(u=>u.name).join("\u3001")}`);let i=ur(r),a=[],c=(await Promise.all(s.designs.map(u=>Do(u.image_id,n,i,{}).then(l=>({ok:!0,value:{image_id:u.image_id,name:u.name,viewport:l.viewport,layerCount:l.layers.length}})).catch(l=>(a.push({image_id:u.image_id,name:u.name,error:l?.message||String(l)}),{ok:!1}))))).filter(u=>u.ok).map(u=>u.value);return{sector:s.name,designCount:c.length,designs:c,...a.length?{failed:a}:{}}}async function r_(t,e,r){let n=r.skipExisting!==!1,o=r.sliceNames?.length?new Set(r.sliceNames):null,s,i,a;if(r.sector){let w=Wy(t),y=ur(r),S=await Pd(w,r),M=S.sectors.find(V=>V.name===r.sector||V.id===r.sector);if(!M)throw new Error(`\u672A\u627E\u5230\u5206\u7EC4\u300C${r.sector}\u300D\uFF0C\u53EF\u7528\u5206\u7EC4\uFF1A${S.sectors.map(V=>V.name).join("\u3001")}`);i=[];let J=[];await Promise.all(M.designs.map(V=>Do(V.image_id,w,y,{}).then($=>i.push(...$.slices||[])).catch($=>J.push(`${V.name}: ${$?.message||$}`)))),J.length&&(a=J),s=M.name}else{let w=null,y=r.projectId||"";if(/[/?]/.test(t)){let J=Ai(t);w=J.imageId,y=J.projectId||y}else w=t;if(!w)throw new Error("\u65E0\u6CD5\u4ECE\u8F93\u5165\u89E3\u6790 image_id\uFF0C\u8BF7\u4F20\u8BBE\u8BA1\u7A3F URL \u6216 image_id");if(!y)throw new Error("\u4E0B\u8F7D\u5207\u56FE\u9700\u8981 projectId\uFF1A\u4F20 URL \u81EA\u52A8\u63D0\u53D6\uFF0C\u6216\u663E\u5F0F\u4F20 projectId");let S=ur(r),M=await Do(w,y,S,{});i=M.slices||[],s=M.name||w}if(!i.length)return{scope:s,outputDir:zd.resolve(e),downloaded:0,skipped:{dup:0,exist:0},failed:[],slices:[]};let c=zd.resolve(e);BT(c,{recursive:!0});let u=new Set,l=[],d=0;for(let w of i){let y=w.imageUrl;if(y&&!(o&&!o.has(w.name))){if(u.has(y)){d++;continue}u.add(y),l.push({...w,imageUrl:y})}}let f=[],m=[],p=0,h=Number(process.env.LANHU_SLICE_CONCURRENCY)||6,g=0,_=async()=>{for(;g<l.length;){let w=g++,y=l[w],S=y.imageUrl,M=String(y.name).replace(/[/\\:*?"<>|]/g,"_").replace(/\s+/g,"_"),J=XT(S),V=`${M}_${J}.png`,$=zd.join(c,V);if(n&&JT($)){p++,f[w]={name:y.name,file:$,bytes:0,w:y.w,h:y.h,x:y.x,y:y.y};continue}let Z;try{Z=await fetch(S,{headers:{Referer:"https://lanhuapp.com/"}})}catch{m.push({name:y.name,url:S,status:0});continue}if(!Z.ok){m.push({name:y.name,url:S,status:Z.status});continue}let I=Buffer.from(await Z.arrayBuffer()),L=I;try{L=await Hy(I,y.w,y.h)}catch{L=I}HT($,L),f[w]={name:y.name,file:$,bytes:L.length,w:y.w,h:y.h,x:y.x,y:y.y}}},v=Array.from({length:Math.min(h,l.length||1)},()=>_());return await Promise.all(v),{scope:s,outputDir:c,downloaded:f.filter(w=>w&&w.bytes>0).length,skipped:{dup:d,exist:p},failed:m,slices:f.filter(Boolean),...a?{designErrors:a}:{}}}import{request as QT}from"node:https";import{request as eE}from"node:http";import{createHash as n_}from"node:crypto";import{existsSync as tE,mkdirSync as rE,readFileSync as nE,writeFileSync as oE}from"node:fs";import i_ from"node:path";import{fileURLToPath as sE}from"node:url";var Uo=process.env.VLM_MODEL||"deepseek-v4-flash-vision-exp",a_=process.env.VLM_API_KEY||"",c_=(process.env.VLM_BASE_URL||"https://api.deepseek.com").replace(/\/+$/,"").replace(/\/v1$/,""),iE=process.env.VISION_USE_V1!=="0",aE=Number(process.env.LANHU_VISION_MAX_TOKENS)||4096,cE=32*1024*1024,uE=48*1024*1024,qo=3;function o_(t){return`${c_}${t?"/v1":""}/chat/completions`}function lE(t){let e=t.includes(",")?t.slice(t.indexOf(",")+1):t,r=e.endsWith("==")?2:e.endsWith("=")?1:0;return Math.max(0,Math.floor(e.length*3/4)-r)}function dE(t){let e=0;if(t.forEach((r,n)=>{let o=lE(r);if(e+=o,o>cE)throw new Error(`\u7B2C ${n+1} \u5F20\u56FE\u7EA6 ${(o/1024/1024).toFixed(1)} MiB\uFF0C\u8D85\u8FC7\u5355\u56FE 32 MiB \u4E0A\u9650\uFF0C\u8BF7\u5148\u538B\u7F29\u518D\u8C03\u7528`)}),e>uE)throw new Error(`${t.length} \u5F20\u56FE\u5408\u8BA1\u7EA6 ${(e/1024/1024).toFixed(1)} MiB\uFF0C\u8D85\u8FC7\u8BF7\u6C42\u4F53 48 MiB \u4E0A\u9650`)}function pE(t){return t.includes("json")?t:`${t}
|
|
44
|
+
|
|
45
|
+
Output strictly valid json, no extra text.`}function Nn(){return!!Uo&&!!a_}function u_(){return Nn()&&process.env.LANHU_AUTO_ANALYZE!=="0"}var Ed=process.env.LANHU_VISION_CACHE_DIR||sE(new URL("../.mcp-local/vision-cache/",import.meta.url)),l_=process.env.LANHU_VISION_CACHE!=="0";function fE(t,e,r){let n=n_("sha1").update(t.join("\0")).digest("hex").slice(0,16);return n_("sha1").update(`${e}\0${n}\0${r}\0${Uo}\0${c_}`).digest("hex")}function mE(t){if(!l_)return null;try{let e=i_.join(Ed,`${t}.json`);if(!tE(e))return null;let r=JSON.parse(nE(e,"utf8"));return console.error(`[vision] \u7F13\u5B58\u547D\u4E2D ${t.slice(0,8)}\uFF08\u8DF3\u8FC7\u6A21\u578B\u8C03\u7528\uFF09`),r}catch{return null}}function hE(t,e){if(l_)try{rE(Ed,{recursive:!0});let r=JSON.stringify(e);if(r.length>512*1024)return;oE(i_.join(Ed,`${t}.json`),r)}catch(r){console.error(`[vision] \u7F13\u5B58\u5199\u5165\u5931\u8D25: ${r.message}`)}}var gE=`You are a senior UI/frontend engineer. Precise geometry (x/y/width/height/font sizes/hex colors) is provided separately in a layers field \u2014 do NOT read or repeat any numeric values from the image. Your job is ONLY the semantic understanding that data cannot express. Output JSON:
|
|
46
|
+
{"page_type":"login|list|detail|dashboard|activity|form|other","layout":"top-down section by section: section_name + height tier (xs<8px / s8-24 / m24-48 / l48-120 / xl>120), e.g. header(l) \u2192 banner(xl) \u2192 card_list(xl) \u2192 tabbar(m)","components":[{"name":"component name","position":"format: \\"<tier>, section: <section_name>\\", tier \u2208 top-left/top-center/top-right/bottom-bar/center \u2014 e.g. \\"top-left, section: event_header_banner\\" / \\"center, section: gift_list_card\\" / \\"bottom-bar, section: tabbar\\" (STRICT format, no other wording)","type":"button|input|list_item|card|image_banner|tab|header|status_bar|divider|text|icon","interaction":"static|clickable|input|scrollable|stateful(selected/disabled)"}],"visual_hierarchy":"stacked layers bottom-up: background \u2192 cards \u2192 content \u2192 overlays; any mask/shadow/gradient overlay MUST be stated","imagery":"for EVERY background/decorative image (including placeholders): 1) what it depicts 2) relation to adjacent text (text-on-image needs a dark scrim / text-on-gradient / standalone no overlay) 3) real asset or placeholder-to-be-replaced; reference components by name","style_atmosphere":"color mood + font character + corner/spacing style (compact/airy) in natural language, NO hex values","notes":"details data cannot express: implied motion, implied truncation, icon metaphors"}
|
|
47
|
+
Output discipline: each description \u226430 words; at most 15 components, most important first. Only output JSON.`;function d_(t,e){let r=t?.trim(),n=r?`
|
|
48
|
+
|
|
49
|
+
Context: the design file is named "${r}" (from the design tool). Use it as background context only. Describe ONLY what is actually visible in the image; if the visual contradicts the name, trust the visual.`:"",o=e?.trim()?`
|
|
50
|
+
|
|
51
|
+
Additional focus from the caller (business context / priorities \u2014 reflect them in your analysis, but keep the SAME JSON structure and describe only what is visible):
|
|
52
|
+
"${e.trim()}"`:"";return gE+n+o}var s_=null;async function yE(t,e,r){return new Promise((n,o)=>{let s=new URL(t),i=s.protocol==="https:"?QT:eE,a=JSON.stringify(e),c=i({hostname:s.hostname,port:s.port||(s.protocol==="https:"?443:80),path:s.pathname+s.search,method:"POST",headers:{"Content-Type":"application/json","Content-Length":Buffer.byteLength(a),...r?{Authorization:`Bearer ${r}`}:{}}},l=>{let d=[];l.on("data",f=>d.push(f)),l.on("end",()=>{let f=Buffer.concat(d).toString("utf8");try{n({status:l.statusCode||0,json:JSON.parse(f)})}catch{o(new Error(`\u89C6\u89C9\u6A21\u578B API \u8FD4\u56DE HTTP ${l.statusCode}\uFF0C\u54CD\u5E94\u975E JSON\uFF1A${f.slice(0,120)}`))}})}),u=Number(process.env.LANHU_VISION_TIMEOUT_MS)||12e4;c.setTimeout(u,()=>{c.destroy(new Error(`\u89C6\u89C9\u6A21\u578B API \u8BF7\u6C42\u8D85\u65F6\uFF08${u}ms\uFF09\uFF0C\u53EF\u8BBE LANHU_VISION_TIMEOUT_MS \u8C03\u6574`))}),c.on("error",o),c.write(a),c.end()})}var Td=new Map;async function Hr({images:t=[],text:e,detail:r="auto"}){dE(t);let n=fE(t,e,r),o=mE(n);if(o)return o;let s=Td.get(n);if(s)return console.error("[vision] \u76F8\u540C\u8BF7\u6C42\u5728\u9014\uFF0C\u590D\u7528\u5176\u7ED3\u679C"),s;let i=_E({images:t,text:e,detail:r},n).finally(()=>Td.delete(n));return Td.set(n,i),i}async function _E({images:t=[],text:e,detail:r="auto"},n){let o=[{type:"text",text:pE(e)},...t.map(l=>({type:"image_url",image_url:{url:l.startsWith("data:")?l:`data:image/png;base64,${l}`,detail:r}}))],s={model:Uo,messages:[{role:"user",content:o}],response_format:{type:"json_object"},max_tokens:aE,temperature:0,top_p:.95};/glm/i.test(Uo)&&(s.thinking={type:"enabled",clear_thinking:!1},s.reasoning_effort="max");let i=null,a=s_??iE,c=!1,u=!1;for(let l=1;l<=qo;l++){let d=Date.now(),f=0,m=null;try{let _=await yE(o_(a),s,a_);f=_.status,m=_.json}catch(_){f=0,i=_ instanceof Error?_:new Error(String(_))}if(f===404&&!c){c=!0,a=!a,s_=a,l--,console.error(`[vision] HTTP 404 \u2192 \u5207\u6362\u7AEF\u70B9\u4E3A ${o_(a)}`);continue}if(f===400&&s.response_format&&!u&&/response_format|json_object/i.test(JSON.stringify(m?.error||""))){u=!0,delete s.response_format,l--,console.error("[vision] \u6A21\u578B\u62D2\u7EDD response_format \u2192 \u964D\u7EA7\u4E3A\u63D0\u793A\u8BCD\u7EA6\u675F\u91CD\u8BD5");continue}if((f===0||f===429||f>=500)&&l<qo){let _=1e3*l,v=f===0?"\u7F51\u7EDC/\u8D85\u65F6":`HTTP ${f}`;i==null&&(i=new Error(`\u89C6\u89C9\u6A21\u578B API HTTP ${f}\uFF1A${m?.error?.message||m?.message||JSON.stringify(m).slice(0,150)}`)),console.error(`[vision] ${v}\uFF0C${_}ms \u540E\u91CD\u8BD5\uFF08attempt=${l}/${qo}\uFF09\uFF1A${i.message}`),await new Promise(w=>setTimeout(w,_));continue}if(f<200||f>=300){let _=m?.error?.message||m?.message||JSON.stringify(m).slice(0,150);throw new Error(`\u89C6\u89C9\u6A21\u578B API HTTP ${f}\uFF1A${_}`)}let h=m?.choices?.[0],g=h?.message?.content||"";if(console.error(`[vision] ${Uo} ${t.length}\u56FE detail=${r} attempt=${l} \u2192 HTTP ${f} \u8017\u65F6${Date.now()-d}ms finish=${h?.finish_reason} tokens=${m?.usage?.total_tokens} contentLen=${g.length}`),g.trim()){let _=g.replace(/^```(?:json)?\s*/i,"").replace(/\s*```$/,"");try{let v=JSON.parse(_);return hE(n,v),v}catch{return{_raw:g}}}i=new Error(`\u89C6\u89C9\u6A21\u578B\u8FD4\u56DE\u7A7A content\uFF08HTTP ${f}\uFF0Cfinish_reason=${h?.finish_reason??"\u65E0choices\u5B57\u6BB5"}\uFF0C\u54CD\u5E94\u4F53=${JSON.stringify(m).slice(0,120)}\uFF09`),l<qo&&(console.error(`[vision] \u7A7A\u54CD\u5E94\uFF0C${l}s \u540E\u91CD\u8BD5\u2026`),await new Promise(_=>setTimeout(_,1e3*l)))}throw new Error(`${i.message}\u3002\u91CD\u8BD5 ${qo} \u6B21\u4ECD\u4E3A\u7A7A\uFF0C\u591A\u4E3A\u6A21\u578B\u7AEF/\u4EE3\u7406\u5F02\u5E38\uFF0C\u8BF7\u7A0D\u540E\u518D\u8BD5\u3002`)}function vE(){let t=r=>{let n=[],o=r;for(;o&&o!==document.body;){let s=o.tagName.toLowerCase(),i=o.getAttribute("id");if(i)s+=`#${i}`;else{let a=(o.getAttribute("class")||"").trim().split(/\s+/).filter(Boolean)[0];a&&(s+=`.${a}`)}n.unshift(s),o=o.parentElement}return n.join(" > ")||r.tagName.toLowerCase()},e=[];for(let r of Array.from(document.querySelectorAll("body *"))){let n=r.getBoundingClientRect();if(n.width<=0||n.height<=0||r.tagName==="SVG")continue;let o=getComputedStyle(r);if(o.display==="none"||o.visibility==="hidden"||Number(o.opacity)===0)continue;let s=Array.from(r.childNodes).filter(u=>u.nodeType===3).map(u=>(u.textContent||"").trim()).join(" ").trim();if(r.children.length>0&&!s)continue;let i=parseFloat(o.lineHeight),a="",c=r.parentElement;for(let u=0;u<3&&c;u++){let l=getComputedStyle(c).backgroundColor;if(l&&l!=="rgba(0, 0, 0, 0)"&&l!=="transparent"){a=l;break}c=c.parentElement}e.push({selector:t(r),text:s,x:Math.round((n.x+window.scrollX)*100)/100,y:Math.round((n.y+window.scrollY)*100)/100,width:Math.round(n.width*100)/100,height:Math.round(n.height*100)/100,color:o.color,backgroundColor:o.backgroundColor,bgAncestor:a,fontSize:parseFloat(o.fontSize)||0,fontWeight:Number(o.fontWeight)||0,lineHeight:Number.isFinite(i)?Math.round(i*100)/100:null})}return e}function Fo(t){let e=String(t||"").trim(),r=/^#([0-9a-f]{3})$/i.exec(e);if(r){let n=r[1].split("").map(o=>parseInt(o+o,16));return{r:n[0],g:n[1],b:n[2],a:1}}if(r=/^#([0-9a-f]{6})$/i.exec(e),r)return{r:parseInt(r[1].slice(0,2),16),g:parseInt(r[1].slice(2,4),16),b:parseInt(r[1].slice(4,6),16),a:1};if(r=/^rgba?\(([^)]+)\)$/i.exec(e),r){let n=r[1].split(",").map(o=>parseFloat(o));return n.length<3||n.some(o=>!Number.isFinite(o))?null:{r:n[0],g:n[1],b:n[2],a:n.length>3?n[3]:1}}return null}function bE(t,e){return t<=e[0]?null:t<=e[1]?"minor":t<=e[2]?"major":"critical"}var Br={geometry:[1,3,8],fontSize:[.5,1,2],lineHeight:[1,2,4]};function xE(t,e,r,n){let o=[],s={layer:t.name||"(\u672A\u547D\u540D\u56FE\u5C42)",path:t.parentPath||"",selector:e.selector,matchBy:r},i=t.type==="text",a=(d,f,m,p)=>{let h=Math.abs(f-m),g=bE(h,p);g&&o.push({...s,field:d,expected:f,actual:m,delta:Math.round(h*100)/100,severity:g})},c=(d,f,m)=>{let p=Fo(f),h=Fo(m);if(!p||!h||p.a<.01&&h.a<.01)return;let g=Math.max(Math.abs(p.r-h.r),Math.abs(p.g-h.g),Math.abs(p.b-h.b)),_=Math.abs(p.a-h.a);if(g<=2&&_<=.02)return;let v=_>.02||g>30?"critical":g>10?"major":"minor";h.a<.01&&v==="critical"&&(v="major"),o.push({...s,field:d,expected:f,actual:m,delta:Math.round(g*100)/100,severity:v})};if(a("x",t.x+n.dx,e.x,Br.geometry),i){let d=Math.abs(t.w-e.width);d>Br.geometry[0]&&o.push({...s,field:"width",expected:t.w,actual:e.width,delta:Math.round(d*100)/100,severity:"minor"})}else a("width",t.w,e.width,Br.geometry);let u=Math.abs(t.y+n.dy-e.y);u>Br.geometry[0]&&o.push({...s,field:"y",expected:Math.round((t.y+n.dy)*100)/100,actual:e.y,delta:Math.round(u*100)/100,severity:"minor"});let l=Math.abs(t.h-e.height);if(l>Br.geometry[0]&&o.push({...s,field:"height",expected:t.h,actual:e.height,delta:Math.round(l*100)/100,severity:"minor"}),t.color&&c("color",t.color,e.color),t.fill){let d=Fo(t.fill);if(e.backgroundColor==="rgba(0, 0, 0, 0)"&&e.bgAncestor&&d){let f=Fo(e.bgAncestor);f&&Math.max(Math.abs(f.r-d.r),Math.abs(f.g-d.g),Math.abs(f.b-d.b))<=30&&Math.abs(f.a-d.a)<=.02||c("fill",t.fill,e.backgroundColor)}else c("fill",t.fill,e.backgroundColor)}if(t.fontSize&&a("fontSize",t.fontSize,e.fontSize,Br.fontSize),t.fontWeight&&e.fontWeight&&t.fontWeight!==e.fontWeight){let d=t.fontWeight>=600&&e.fontWeight===700;o.push({...s,field:"fontWeight",expected:t.fontWeight,actual:e.fontWeight,delta:Math.abs(t.fontWeight-e.fontWeight),severity:d?"minor":"major"})}return typeof t.lineHeight=="number"&&e.lineHeight!=null&&a("lineHeight",t.lineHeight,e.lineHeight,Br.lineHeight),t.text&&t.text.trim()&&e.text&&e.text.trim()&&t.text.trim()!==e.text.trim()&&o.push({...s,field:"text",expected:t.text.trim(),actual:e.text.trim(),delta:0,severity:"minor"}),o}function m_(t,e){let r=Math.max(t.x,e.x),n=Math.max(t.y,e.y),o=Math.min(t.x+t.w,e.x+e.width),s=Math.min(t.y+t.h,e.y+e.height),i=o-r,a=s-n;if(i<=0||a<=0)return 0;let c=i*a,u=t.w*t.h+e.width*e.height-c;return u>0?c/u:0}function Zi(t){if(!t.length)return 0;let e=[...t].sort((n,o)=>n-o),r=e.length>>1;return e.length%2?e[r]:(e[r-1]+e[r])/2}var wE=/(状态栏|status\s*bar|system\s*bar|safe\s*area|刘海|notch|蒙版|mask|guide|标注|备份|backup|副本|copy|_old|占位|placeholder|草稿|draft|切图|slice|导出|export|temp|tmp|ref\b)/i;function $E(t,e){let r={},n=s=>{r[s]=(r[s]||0)+1},o=[];for(let s of t){if(s.opacity===0){n("opacity0");continue}if(s.w<=0||s.h<=0){n("zeroSize");continue}let i=s.name||"";if(wE.test(i)){n("noiseName");continue}if(s.y<=1&&s.x<=1&&s.w>=e*.9&&s.h>=18&&s.h<=80){n("statusBar(geom)");continue}o.push(s)}return{kept:o,skipped:t.length-o.length,reasons:r}}function kE(t,e){let r=i=>{let a=new Map;return i.forEach((c,u)=>{let l=c.text?.trim();l&&(a.has(l)||a.set(l,[]),a.get(l).push(u))}),a},n=r(t),o=r(e),s=[];for(let[i,a]of n){let c=o.get(i);!c||a.length!==1||c.length!==1||s.push({layer:t[a[0]],sample:e[c[0]],matchBy:"text"})}return s}function SE(t,e,r){let n=[];t.forEach((a,c)=>{let u=a.text?.trim()||"",l={x:a.x+r.dx,y:a.y+r.dy,w:a.w,h:a.h};e.forEach((d,f)=>{if(u&&d.text===u){let m=Math.hypot(d.x-l.x,d.y-l.y);n.push({li:c,si:f,score:10-m/1e3+m_(l,d),matchBy:"text"})}})}),n.sort((a,c)=>c.score-a.score);let o=new Set,s=new Set,i=[];for(let a of n)o.has(a.li)||s.has(a.si)||(o.add(a.li),s.add(a.si),i.push({layer:t[a.li],sample:e[a.si],matchBy:a.matchBy}));return{pairs:i,rest:t.filter((a,c)=>!o.has(c)),usedSample:s}}function zE(t){if(t.length<3)return{off:{dx:0,dy:0},inliers:t,outliers:[]};let e=t.map(i=>({dx:i.sample.x-i.layer.x,dy:i.sample.y-i.layer.y,pair:i})),r=[],n=1/0;for(let i of e){let a=e.filter(u=>Math.abs(u.dx-i.dx)<=3&&Math.abs(u.dy-i.dy)<=3),c=Math.hypot(i.dx,i.dy);(a.length>r.length||r.length>0&&a.length===r.length&&c<n)&&(r=a,n=c)}let o={dx:Zi(r.map(i=>i.dx)),dy:Zi(r.map(i=>i.dy))},s=new Set(r.map(i=>i.pair));return{off:o,inliers:[...s],outliers:t.filter(i=>!s.has(i))}}function p_(t,e,r,n){let o=[];t.forEach((a,c)=>{let u={x:a.x+n.dx,y:a.y+n.dy,w:a.w,h:a.h};e.forEach((l,d)=>{if(r.has(d))return;let f=m_(u,l);f>=.5&&o.push({li:c,si:d,v:f})})}),o.sort((a,c)=>c.v-a.v);let s=new Set,i=[];for(let a of o)s.has(a.li)||r.has(a.si)||(s.add(a.li),r.add(a.si),i.push({layer:t[a.li],sample:e[a.si],matchBy:"position"}));return{pairs:i,unmatched:t.filter((a,c)=>!s.has(c))}}var PE=['You are a design acceptance assistant. For each pair of "design copy" vs "actual page copy", judge whether they are semantically equivalent.',"","Rules (by priority):","1. Dynamic-value exemption: both sides are pure numbers/points/dates/counters (e.g. *30D, Lv.5, \xA529.9, 08:30), same unit and magnitude difference <2x \u2192 same=true","2. Cross-language translation equivalence \u2192 same=true","3. Synonymous paraphrase / abbreviation \u2192 same=true","4. Otherwise \u2192 same=false","","Samples (8 pairs; copy strings stay in their original languages):","\u2705 \u7ACB\u5373\u62A2\u8D2D | Buy Now (translation)","\u2705 *30D | *30\u5929 (dynamic_value_format)","\u2705 \xA529.90 | 29.9\u5143 (dynamic_value_format)","\u2705 Lv.5 | \u7B49\u7EA75 (dynamic_value_format)","\u2705 \u786E\u8BA4 | OK (abbreviation)","\u274C \u652F\u4ED8 | \u7ACB\u5373\u8D2D\u4E70 (different_meaning)","\u274C \u5DF2\u7ED3\u675F | \u8FDB\u884C\u4E2D (different_meaning)","\u274C \u514D\u8D39 | \xA59.9 (different_meaning)","",'Output JSON only: {"result":[{"same":true,"equivalence_class":"translation|synonym|abbreviation|dynamic_value_format|different_meaning","reason":"<=15 words, cite the rule number"}]}, strictly valid json for program parsing.'].join(`
|
|
53
|
+
`);async function TE(t){if(!t.length)return[];if(!Nn())return t.map(()=>({same:!0,cls:"",reason:"vision \u672A\u914D\u7F6E\uFF0C\u6309\u8BED\u4E49\u63A5\u8FD1\u9ED8\u8BA4\u653E\u884C"}));let e=t.map((n,o)=>`[${o}] \u8BBE\u8BA1:${n.expected} | \u9875\u9762:${n.actual}`).join(`
|
|
54
|
+
`),r=new Set(["translation","synonym","abbreviation","dynamic_value_format","different_meaning"]);try{let n=await Hr({text:PE+`
|
|
55
|
+
`+e}),o=Array.isArray(n?.result)?n.result:[];return t.map((s,i)=>{let a=o[i];if(!a||typeof a.same!="boolean")return{same:!0,cls:"",reason:"vision \u89E3\u6790\u5931\u8D25\uFF0C\u6309\u8BED\u4E49\u63A5\u8FD1\u9ED8\u8BA4\u653E\u884C"};let c=r.has(a.equivalence_class)?a.equivalence_class:"";return{same:a.same,cls:c,reason:String(a.reason||"")}})}catch{return t.map(()=>({same:!0,cls:"",reason:"vision \u8C03\u7528\u5931\u8D25\uFF0C\u6309\u8BED\u4E49\u63A5\u8FD1\u9ED8\u8BA4\u653E\u884C"}))}}function f_(t,e,r){let n=Math.round(t*2)/2;if(n<=0)return null;let o=(Number(e)||0)>=900?700:Number(e)||0,s=Fo(r);return s?{key:`${n}|${o}|rgb(${s.r},${s.g},${s.b})`,fontSize:n,fontWeight:o,color:`rgb(${s.r},${s.g},${s.b})`}:null}function EE(t,e){let r=()=>({fontSize:0,fontWeight:0,color:"",count:0,designLayers:[],samples:[],selectors:[]}),n=(c,u,l)=>{let d=c.get(u.key);d||(d=r(),d.fontSize=u.fontSize,d.fontWeight=u.fontWeight,d.color=u.color,c.set(u.key,d)),d.count++,l(d)},o=new Map;for(let c of t){if(c.type!=="text"||!c.fontSize||(c.y??0)<44)continue;let u=f_(c.fontSize,c.fontWeight||0,c.color||"");u&&n(o,u,l=>{l.designLayers.length<4&&c.name&&l.designLayers.push(c.name),l.samples.length<3&&c.text&&l.samples.push(String(c.text).slice(0,18))})}let s=new Map;for(let c of e){if(!c.text||!c.fontSize)continue;let u=f_(c.fontSize,c.fontWeight||0,c.color);u&&n(s,u,l=>{l.selectors.length<4&&c.selector&&l.selectors.push(c.selector),l.samples.length<3&&c.text&&l.samples.push(c.text.slice(0,18))})}let i=[...o.entries()].filter(([c])=>!s.has(c)).map(([,c])=>c).sort((c,u)=>u.count-c.count),a=[...s.entries()].filter(([c])=>!o.has(c)).map(([,c])=>c).sort((c,u)=>u.count-c.count);return{designStyleCount:o.size,pageStyleCount:s.size,missingOnPage:i,notInDesign:a,missingOnPageTotal:i.length,notInDesignTotal:a.length}}async function h_(t){let e=await Mi(t.designUrl,{...t.credentials,needCover:!1}),r;try{r=await import("playwright")}catch{throw new Error("\u7F3A\u5C11 playwright\uFF1A\u8BF7\u5728 mcp/lanhu-design-mcp \u4E0B\u6267\u884C npm i playwright && npx playwright install chromium")}let n=await r.chromium.launch({headless:!0});try{let o={width:e.viewport.width||375,height:e.viewport.height||812},s=await n.newPage({viewport:o,deviceScaleFactor:1});await s.goto(t.pageUrl,{waitUntil:"load",timeout:3e4}),t.waitFor&&await s.waitForSelector(t.waitFor,{timeout:1e4}).catch(()=>{}),await new Promise(A=>setTimeout(A,500));let i=await s.evaluate(vE),a=$E(e.layers,o.width),c=a.kept,u=kE(c,i),l=u.length>=3?{dx:Zi(u.map(A=>A.sample.x-A.layer.x)),dy:Zi(u.map(A=>A.sample.y-A.layer.y))}:null,d=l??{dx:0,dy:0},f=SE(c,i,d),m=f.pairs.filter(A=>Math.abs(A.sample.x-A.layer.x-d.dx)<=8&&Math.abs(A.sample.y-A.layer.y-d.dy)<=8),p=f.pairs.filter(A=>!m.includes(A)).map(A=>A.layer),h=new Set(m.map(A=>i.indexOf(A.sample))),g=p_([...f.rest,...p],i,h,d),_=zE([...m,...g.pairs]),v=_.inliers.length>=3?_.off:l??{dx:0,dy:0},w=new Set(m.map(A=>i.indexOf(A.sample))),y=p_([...f.rest,...p],i,w,v),S=[...m,...y.pairs],M=[],J=[];for(let{layer:A,sample:Se,matchBy:Re}of S)for(let Ct of xE(A,Se,Re,v))Ct.field==="text"&&J.push(M.length),M.push(Ct);let V=!1;J.length&&Nn()&&(V=!0,(await TE(J.map(Se=>({expected:String(M[Se].expected),actual:String(M[Se].actual)})))).forEach((Se,Re)=>{let Ct=M[J[Re]];Se.cls&&(Ct.equivalenceClass=Se.cls),Se.reason&&(Ct.textReason=Se.reason),Se.same||(Ct.severity="major")}));let $=t.maxDiffs??50,Z=[];if(a.skipped){let A=Object.entries(a.reasons).map(([Se,Re])=>`${Se}\xD7${Re}`).join("\uFF0C");Z.push(`\u6BD4\u5BF9\u524D\u5254\u9664 ${a.skipped} \u4E2A\u65E0\u6548/\u72B6\u6001\u680F\u56FE\u5C42\uFF08${A}\uFF09\uFF1B\u8FD9\u4E9B\u5C42\u5728 webview \u4E2D\u4E0D\u6E32\u67D3\uFF0C\u4E0D\u53C2\u4E0E\u9A8C\u6536`)}(Math.abs(v.dx)>=2||Math.abs(v.dy)>=2)&&Z.push(`\u68C0\u6D4B\u5230\u9875\u9762\u6574\u4F53\u504F\u79FB (dx=${Math.round(v.dx)}, dy=${Math.round(v.dy)})\uFF0C\u4F4D\u7F6E\u5B57\u6BB5\u5DF2\u6309\u6B64\u6821\u6B63\u540E\u6BD4\u5BF9\uFF1B\u5E38\u89C1\u539F\u56E0\u662F\u8BBE\u8BA1\u7A3F\u542B\u72B6\u6001\u680F\u5360\u4F4D\u800C\u9875\u9762\u7528\u539F\u751F\u5B89\u5168\u533A`),p.length&&Z.push(`${p.length} \u4E2A\u6587\u6848\u951A\u70B9\u4E0E\u6574\u4F53\u504F\u79FB\u4E0D\u4E00\u81F4\uFF08\u591A\u4E3A *30D/x5/Lv.5 \u8FD9\u7C7B\u91CD\u590D\u77ED\u4E32\u4E32\u4F4D\uFF09\uFF0C\u5DF2\u5254\u9664\u5E76\u9000\u56DE\u51E0\u4F55\u91CD\u914D`);let I=y.unmatched.filter(A=>A.text).length;y.unmatched.length&&Z.push(`${y.unmatched.length} \u4E2A\u56FE\u5C42\u672A\u5339\u914D\u5230\u9875\u9762\u5143\u7D20\uFF08\u5176\u4E2D ${I} \u4E2A\u542B\u6587\u6848\uFF09\uFF1B\u88C5\u9970\u5C42\u7528 CSS/\u80CC\u666F\u5B9E\u73B0\u4E0D\u4EA7\u751F DOM \u5143\u7D20\u5C5E\u6B63\u5E38\uFF0C\u4F46\u542B\u6587\u6848\u7684\u672A\u5339\u914D\u9700\u4EBA\u5DE5\u786E\u8BA4\u662F\u5426\u6F0F\u505A`),M.length>0&&Z.push(`\u5B57\u6BB5\u504F\u5DEE\u5171 ${M.length} \u6761\uFF08\u6309\u56FE\u5C42\u5206\u7EC4\u89C1 diffs\uFF0Ccritical \u7EC4\u5728\u524D\uFF09\uFF1B\u6587\u6848\u5DEE\u5F02\u9ED8\u8BA4 minor\uFF0C\u7ECF\u89C6\u89C9\u6A21\u578B\u5224\u4E3A\u4E0D\u540C\u542B\u4E49\u624D\u5347 major`);let L={critical:0,major:1,minor:2},ce=new Map;for(let A of M){let Se=`${A.layer}\0${A.path}\0${A.selector}\0${A.matchBy}`,Re=ce.get(Se);Re||(Re={layer:A.layer,path:A.path,selector:A.selector,matchBy:A.matchBy,diffs:[]},ce.set(Se,Re));let{layer:Ct,path:Vo,selector:AE,matchBy:ME,...y_}=A;Re.diffs.push(y_)}let K=[...ce.values()].map(A=>({...A,diffs:[...A.diffs].sort((Se,Re)=>L[Se.severity]-L[Re.severity])})).sort((A,Se)=>{let Re=Math.min(...A.diffs.map(Vo=>L[Vo.severity])),Ct=Math.min(...Se.diffs.map(Vo=>L[Vo.severity]));return Re-Ct||Se.diffs.length-A.diffs.length}),nt=K.slice(0,$);K.length>$&&Z.push(`\u504F\u5DEE\u5171 ${K.length} \u7EC4 / ${M.length} \u6761\u5B57\u6BB5\u504F\u5DEE\uFF0C\u5DF2\u8FBE\u4E0A\u9650 ${$} \u7EC4\uFF0C\u5EFA\u8BAE\u5148\u4FEE critical \u518D\u590D\u68C0`);let fe=EE(c,i);return(fe.missingOnPage.length||fe.notInDesign.length)&&Z.push(`\u6837\u5F0F\u6E05\u5355\u6BD4\u5BF9\uFF08\u96F6\u6807\u6CE8\u3001\u4E0D\u6BD4\u6587\u6848\uFF09\uFF1A\u8BBE\u8BA1\u7A3F ${fe.designStyleCount} \u79CD / \u9875\u9762 ${fe.pageStyleCount} \u79CD\u6587\u5B57\u6837\u5F0F\uFF1B\u8BBE\u8BA1\u6709\u9875\u9762\u65E0 ${fe.missingOnPage.length} \u79CD\u3001\u9875\u9762\u6709\u8BBE\u8BA1\u65E0 ${fe.notInDesign.length} \u79CD \u2192 \u89C1 inventory \u5B57\u6BB5`),{design:{name:e.name||"(\u672A\u547D\u540D\u8BBE\u8BA1\u7A3F)",viewport:e.viewport,layerCount:e.layers.length},page:{url:t.pageUrl,viewport:o,sampled:i.length},matched:S.length,offset:{dx:Math.round(v.dx*100)/100,dy:Math.round(v.dy*100)/100,anchors:m.length,rejected:p.length},denoised:a,diffs:nt,diffCount:M.length,diffGroupCount:K.length,diffsTruncated:K.length>$,unmatchedLayers:y.unmatched.slice(0,50).map(A=>A.name||"(\u672A\u547D\u540D\u56FE\u5C42)"),notes:Z,textCheckedByVision:V,inventory:{...fe,missingOnPage:fe.missingOnPage.slice(0,20),notInDesign:fe.notInDesign.slice(0,20),missingOnPageTotal:fe.missingOnPage.length,notInDesignTotal:fe.notInDesign.length}}}finally{await n.close()}}var NE={source:"mock",viewport:{width:390,height:844},layers:[{id:"bg",type:"rect",x:0,y:0,w:390,h:844,fill:"#0E0B1A"},{id:"title",type:"text",x:24,y:64,w:342,h:32,text:"Masked Ball",fontSize:24,fontWeight:700,color:"#F5F1FF",fontFamily:"Inter"},{id:"cta",type:"rect",x:24,y:720,w:342,h:48,fill:"#7C5CFF",radius:12},{id:"card",type:"rect",x:24,y:120,w:342,h:200,fill:"#1A1530",radius:16},{id:"badge",type:"rect",x:24,y:340,w:61,h:16,fill:"#771E00",borderRadius:{topLeft:8,topRight:12,bottomLeft:0,bottomRight:12},border:{color:"rgba(239,216,185,1)",width:1,alignment:"inside"}}],meta:{rawLayerCount:4,totalLayerCount:4}};function rt(t){return{content:[{type:"text",text:JSON.stringify(t)}]}}function OE(t){if(t)try{return IE(t,"utf8").trim()||void 0}catch{return}}function Jr(t){return{cookie:t.cookie||process.env.LANHU_COOKIE||OE(process.env.LANHU_COOKIE_FILE)}}async function CE(t){try{return`data:image/jpeg;base64,${(await Sd(Buffer.from(t,"base64"))).toString("base64")}`}catch{return t}}async function Di(t){if(t.path)try{return`data:image/jpeg;base64,${(await Sd(await RE(t.path))).toString("base64")}`}catch(e){throw new Error(`\u8BFB\u53D6\u56FE\u7247\u5931\u8D25\uFF08${t.path}\uFF09\uFF1A${e.message}`)}if(t.b64)return CE(t.b64);throw new Error(`${t.what}\uFF1A\u8BF7\u4F20 imagePath\uFF08\u672C\u5730\u622A\u56FE\u6587\u4EF6\u8DEF\u5F84\uFF0C\u63A8\u8350\uFF09\u6216 imageBase64 \u4E4B\u4E00`)}function g_(t){t.registerTool("lanhu_fetch_design",{description:"\u8BFB\u53D6\u84DD\u6E56\u8BBE\u8BA1\u7A3F\u7684\u7ED3\u6784\u5316\u56FE\u5C42\u6811\uFF08\u7CBE\u786E x/y/\u5BBD\u9AD8/\u8272\u503C/\u5B57\u53F7/\u5706\u89D2/\u63CF\u8FB9/\u6587\u672C\uFF09\u3002mode\uFF1Aapi=\u5B98\u65B9Cookie\u63A5\u53E3(\u9ED8\u8BA4,\u65E0\u9700\u6D4F\u89C8\u5668) / mock=\u5185\u7F6E\u793A\u4F8B\u3002analyze=true \u65F6\u7528\u914D\u7F6E\u7684\u89C6\u89C9\u6A21\u578B\u7406\u89E3\u8BBE\u8BA1\u7A3F\u5C01\u9762\u56FE\u3002analyze \u9ED8\u8BA4\u503C\uFF1A\u5DF2\u914D\u7F6E\u89C6\u89C9\u6A21\u578B\uFF08VLM_MODEL + VLM_API_KEY\uFF09\u65F6\u9ED8\u8BA4 true\uFF0C\u672A\u914D\u7F6E\u5219\u9ED8\u8BA4 false\uFF1B\u663E\u5F0F\u4F20 true/false \u59CB\u7EC8\u4F18\u5148\u3002\u4F7F\u7528\u7EAA\u5F8B\uFF1A\u4E00\u6B21\u53EA\u8BFB\u5F53\u524D\u8981\u5B9E\u73B0\u7684\u90A3 1 \u5F20\u7A3F\uFF1B\u4E0D\u8981\u4E3A\u300C\u4E86\u89E3\u5168\u8C8C\u300D\u6279\u91CF\u8BFB\u7A3F\u2014\u2014\u5206\u7EC4\u7A3F\u76EE\u5F55\u7528 lanhu_read_sector\uFF0C\u5B83\u8DB3\u591F\u5B9A\u4F4D\uFF1B\u8FD4\u56DE\u7684 layers \u542B\u7CBE\u786E\u6570\u503C\uFF0C\u8272\u503C/\u5B57\u53F7\u4ECE\u6570\u636E\u53D6\uFF0C\u7981\u6B62\u9760\u89C6\u89C9\u6A21\u578B OCR \u5C0F\u5B57\u3002",inputSchema:{mode:H.enum(["api","mock"]).default("api").describe("\u62BD\u53D6\u540E\u7AEF"),url:H.string().optional().describe("\u84DD\u6E56\u8BBE\u8BA1\u7A3F\u94FE\u63A5\uFF0C\u5982 https://lanhuapp.com/web/#/item/project/detailDetach?pid=xxx&image_id=yyy"),imageId:H.string().optional().describe("\u8BBE\u8BA1\u7A3F id\uFF08\u6765\u81EA lanhu_read_sector\uFF09\uFF0C\u4E0E projectId \u642D\u914D\uFF1Burl \u4E0E imageId \u4E8C\u9009\u4E00\uFF0C\u514D\u62FC URL"),projectId:H.string().optional().describe("\u9879\u76EE UUID\uFF08imageId \u6A21\u5F0F\u5FC5\u586B\uFF1Burl \u6A21\u5F0F\u4E0D\u9700\u8981\uFF09"),cookie:H.string().optional().describe("\u767B\u5F55 cookie \u4E32\uFF08\u4E5F\u53EF\u7528 LANHU_COOKIE / LANHU_COOKIE_FILE\uFF09"),analyze:H.boolean().optional().describe("\u7528\u89C6\u89C9\u6A21\u578B\u7406\u89E3\u5C01\u9762\u56FE\uFF0C\u8FD4\u56DE visionAnalysis\uFF1B\u4E0D\u4F20\u65F6\u6309\u662F\u5426\u914D\u7F6E\u4E86\u89C6\u89C9\u6A21\u578B\u81EA\u52A8\u51B3\u5B9A\uFF08\u914D\u4E86\u5C31 true\uFF09"),analyzeFocus:H.string().optional().describe("\u6CE8\u5165\u89C6\u89C9\u6A21\u578B\u7684\u989D\u5916\u5173\u6CE8\u70B9/\u4E1A\u52A1\u80CC\u666F\uFF08\u5982\u300C\u91CD\u70B9\u5206\u6790\u7B7E\u5230\u5956\u52B1\u9886\u53D6\u89C4\u5219\u300D\u300C\u5173\u6CE8\u6309\u94AE\u7684\u7981\u7528\u6001\u300D\uFF09\uFF0C\u8BA9\u5206\u6790\u66F4\u8D34\u5408\u5F53\u524D\u4EFB\u52A1\uFF1B\u4E0D\u5F71\u54CD\u8FD4\u56DE JSON \u7ED3\u6784\uFF0C\u4EC5 analyze \u6267\u884C\u65F6\u751F\u6548")}},async e=>{if(process.env.LANHU_MOCK==="1"||e.mode==="mock")return rt(NE);if(!e.url&&!e.imageId)throw new Error("api \u6A21\u5F0F\u9700\u8981 url \u6216 imageId+projectId");if(e.imageId&&!e.projectId&&!e.url)throw new Error("imageId \u6A21\u5F0F\u9700\u8981\u540C\u65F6\u4F20 projectId");let r=e.analyze??u_();e.analyze===void 0&&r&&console.error(`[fetch_design] analyze \u672A\u6307\u5B9A\u4E14\u89C6\u89C9\u6A21\u578B\u5DF2\u914D\u7F6E \u2192 \u81EA\u52A8\u5F00\u542F\uFF08${process.env.VLM_MODEL||"\u9ED8\u8BA4\u6A21\u578B"}\uFF09`);let n={...Jr(e),needCover:r},o=e.url?await Mi(e.url,n):await Qy(e.imageId,e.projectId,n);if(o.slices&&(o.slices=o.slices.map(({imageUrl:a,...c})=>c)),!r)return rt(o);let{coverImageBase64:s,...i}=o;if(!s)return rt({...i,visionError:"\u8BBE\u8BA1\u7A3F\u65E0\u5C01\u9762\u56FE\uFF08coverImageBase64 \u4E3A\u7A7A\uFF09\uFF0C\u5DF2\u8DF3\u8FC7\u89C6\u89C9\u5206\u6790"});try{let a=await Hr({images:[`data:image/jpeg;base64,${s}`],text:d_(i.meta?.docName??i.name,e.analyzeFocus),detail:"high"});return rt({...i,visionAnalysis:a})}catch(a){console.error(`[fetch_design] \u89C6\u89C9\u5206\u6790\u5931\u8D25\uFF0C\u964D\u7EA7\u8FD4\u56DE\u56FE\u5C42\u6811\uFF1A${a?.message}`);let c=Nn()?"":"\u672A\u68C0\u6D4B\u5230\u89C6\u89C9\u6A21\u578B\u914D\u7F6E\uFF1A\u9700\u540C\u65F6\u8BBE\u7F6E VLM_MODEL \u4E0E VLM_API_KEY\u3002";return rt({...i,visionError:`${a?.message||String(a)}${c}`})}}),t.registerTool("lanhu_verify_render",{description:"\u628A\u6E32\u67D3\u9875\u622A\u56FE\uFF08\u53EF\u9009\uFF1A\u8BBE\u8BA1\u7A3F\u622A\u56FE\uFF09\u8C03\u89C6\u89C9\u6A21\u578B\u505A\u8BED\u4E49\u5BF9\u6BD4\uFF0C\u8FD4\u56DE matchScore / verdict / diffs\u3002\u622A\u56FE\u4F20 imagePath\uFF08\u672C\u5730\u6587\u4EF6\u8DEF\u5F84\uFF0C\u63A8\u8350\uFF09\u6216 imageBase64 \u515C\u5E95\u3002\u4F20 context \u53EF\u58F0\u660E\u5DF2\u77E5\u523B\u610F\u5DEE\u5F02\uFF0C\u6A21\u578B\u5C06\u8DF3\u8FC7\u8FD9\u4E9B\u533A\u57DF\u3002\u7ED3\u8BBA\u4EC5\u662F\u89C6\u89C9\u7EBF\u7D22\uFF0C\u4E0E lanhu_verify_spec \u6570\u636E\u6BD4\u5BF9\u51B2\u7A81\u65F6\u4EE5\u6570\u636E\u6BD4\u5BF9\u4E3A\u51C6\u3002",inputSchema:{actualImagePath:H.string().optional().describe("\u6E32\u67D3\u9875\u622A\u56FE\u7684\u672C\u5730\u6587\u4EF6\u8DEF\u5F84\uFF08\u63A8\u8350\uFF0C\u907F\u514D base64 \u8FDB\u4E0A\u4E0B\u6587\uFF09"),actualImageBase64:H.string().optional().describe("\u6E32\u67D3\u9875\u622A\u56FE base64\uFF08\u515C\u5E95\uFF1B\u4E0E actualImagePath \u4E8C\u9009\u4E00\uFF09"),designImagePath:H.string().optional().describe("\u8BBE\u8BA1\u7A3F\u622A\u56FE\u672C\u5730\u6587\u4EF6\u8DEF\u5F84\uFF08\u53EF\u9009\uFF0C\u53CC\u56FE\u5BF9\u6BD4\u7528\uFF09"),designImageBase64:H.string().optional().describe("\u8BBE\u8BA1\u7A3F\u622A\u56FE base64\uFF08\u515C\u5E95\uFF09"),context:H.string().optional().describe("\u5DF2\u77E5\u523B\u610F\u5DEE\u5F02\u8BF4\u660E\uFF0C\u6A21\u578B\u5C06\u8DF3\u8FC7\u8FD9\u4E9B\u533A\u57DF\u7684\u62A5\u9519\u3002\u5982\u300C\u9876\u90E844px\u662F\u7CFB\u7EDF\u72B6\u6001\u680F\uFF0C\u9875\u9762\u7531\u539F\u751F\u6E32\u67D3\u300D\u300C\u5E95\u90E8\u6309\u94AE\u523B\u610F\u52A0\u9AD8\u523056px\u300D"),detail:H.enum(["auto","low","high"]).optional()}},async e=>{let r=!!(e.designImagePath||e.designImageBase64),n=r?`You are a senior frontend reviewer. Compare the RENDERED screenshot (first image) against the DESIGN reference (second image). Output a JSON: {"matchScore":<0-100>,"verdict":"pass|need_fix|fail","diffs":[{"location":"","issue":"","severity":"minor|major|critical"}],"suggestions":["..."]}. Ignore: JPEG compression noise, font anti-aliasing differences, resolution differences between the two images (compare by relative proportions, do not misreport size due to pixel density). Counter-rule: structural problems (misalignment/truncation/color deviation/missing elements) MUST be reported even if the image looks blurry. Known intentional differences (do NOT report these): ${e.context||"none"}. Arbitration: your verdict is a visual hint only; if it conflicts with the lanhu_verify_spec data comparison, the data comparison wins. Output discipline: at most 15 diffs, most important first. Only output JSON.`:`You are a senior frontend reviewer. No design reference provided \u2014 inspect this rendered screenshot for internal consistency only: layout sanity, alignment, contrast, truncation, overlap. Output JSON: {"matchScore":<0-100>,"verdict":"pass|need_fix|fail","diffs":[{"location":"","issue":"","severity":"minor|major|critical"}],"suggestions":["..."]}. Known intentional differences (do NOT report these): ${e.context||"none"}. Output discipline: at most 15 diffs, most important first. Only output JSON.`,o=[await Di({b64:e.actualImageBase64,path:e.actualImagePath,what:"\u6E32\u67D3\u9875\u622A\u56FE"})];return r&&o.push(await Di({b64:e.designImageBase64,path:e.designImagePath,what:"\u8BBE\u8BA1\u7A3F\u622A\u56FE"})),rt(await Hr({images:o,text:n,detail:e.detail||"high"}))}),t.registerTool("vision_defect_check",{description:"\u6574\u9875/\u5C40\u90E8 UI \u7F3A\u9677\u68C0\u6D4B\uFF1A\u91CD\u53E0\u3001\u6EA2\u51FA\u3001\u7F3A\u56FE\u3001\u5BF9\u6BD4\u5EA6\u3001\u9519\u4F4D\u3001\u622A\u65AD\u3001\u7834\u56FE\u3001\u5360\u4F4D\u6B8B\u7559\u7B49 12 \u7C7B\u3002\u622A\u56FE\u4F20 imagePath\uFF08\u672C\u5730\u6587\u4EF6\u8DEF\u5F84\uFF0C\u63A8\u8350\uFF09\u6216 imageBase64 \u515C\u5E95\u3002\u8FD4\u56DE defects \u6570\u7EC4\u4E0E pass\u3002\u4F20 context \u53EF\u58F0\u660E\u5DF2\u77E5\u523B\u610F\u5DEE\u5F02\uFF0C\u6A21\u578B\u5C06\u8DF3\u8FC7\u8FD9\u4E9B\u533A\u57DF\u3002",inputSchema:{imagePath:H.string().optional().describe("\u622A\u5C4F\u672C\u5730\u6587\u4EF6\u8DEF\u5F84\uFF08\u63A8\u8350\uFF0C\u907F\u514D base64 \u8FDB\u4E0A\u4E0B\u6587\uFF09"),imageBase64:H.string().optional().describe("\u622A\u5C4F base64\uFF08\u515C\u5E95\uFF1B\u4E0E imagePath \u4E8C\u9009\u4E00\uFF09"),context:H.string().optional().describe("\u5DF2\u77E5\u523B\u610F\u5DEE\u5F02\u8BF4\u660E\uFF0C\u6A21\u578B\u5C06\u8DF3\u8FC7\u8FD9\u4E9B\u533A\u57DF\u7684\u62A5\u9519\u3002\u5982\u300C\u9876\u90E844px\u662F\u7CFB\u7EDF\u72B6\u6001\u680F\uFF0C\u9875\u9762\u7531\u539F\u751F\u6E32\u67D3\u300D"),language:H.string().optional().describe("\u8BED\u8A00\uFF0C\u9ED8\u8BA4 zh-CN"),detail:H.enum(["auto","low","high"]).optional()}},async e=>{let n=`Inspect this UI screenshot for visual defects; write all descriptions in ${e.language||"zh-CN"}. Output JSON: {"defects":[{"type":"overlap|overflow|missing_asset|contrast|misalign|truncation|broken_image|placeholder|stale_state|typo|alignment|other","severity":"minor|major|critical","location":"","description":""}],"summary":"","pass":<true|false>}. type guide: overlap / overflow / missing_asset / contrast(insufficient) / misalign / truncation / broken_image / placeholder(unreplaced, e.g. lorem or test images) / stale_state(e.g. loading never dismissed) / typo / alignment / other. severity (qualitative): critical = unreadable content / non-clickable element / blocked interaction; major = clearly visible, hurts consistency; minor = nitpick level. For contrast defects, always include the estimated ratio in description as "ratio:x.x". Known intentional differences (do NOT report these): ${e.context||"none"}. Output discipline: at most 15 defects, most severe first. Only output JSON.`;return rt(await Hr({images:[await Di({b64:e.imageBase64,path:e.imagePath,what:"\u622A\u5C4F"})],text:n,detail:e.detail||"auto"}))}),t.registerTool("vision_e2e_triage",{description:"E2E \u6D4B\u8BD5\u5931\u8D25\u65F6\uFF0C\u5206\u6790\u622A\u56FE+DOM \u5FEB\u7167+\u9519\u8BEF\u6587\u672C\uFF0C\u7ED9\u51FA\u6839\u56E0\u3001\u7C7B\u522B\u3001\u7F6E\u4FE1\u5EA6\u4E0E\u4E0B\u4E00\u6B65\u52A8\u4F5C\u5EFA\u8BAE\u3002\u622A\u56FE\u4F20 screenshotPath\uFF08\u672C\u5730\u6587\u4EF6\u8DEF\u5F84\uFF0C\u63A8\u8350\uFF09\u6216 screenshotBase64 \u515C\u5E95\u3002\u5F3A\u70C8\u5EFA\u8BAE\u4F20 expectedBehavior\uFF08\u6D4B\u8BD5\u9884\u671F\u884C\u4E3A\uFF09\u2014\u2014\u5F52\u56E0\u8D28\u91CF\u53D6\u51B3\u4E8E\u300C\u9884\u671F vs \u5B9E\u9645\u300D\u7684\u5DEE\u5F02\u5206\u6790\uFF0C\u53EA\u7ED9\u5931\u8D25\u73B0\u573A\u6A21\u578B\u53EA\u80FD\u731C\u3002",inputSchema:{expectedBehavior:H.string().optional().describe("\u6D4B\u8BD5\u7684\u9884\u671F\u884C\u4E3A\uFF0C\u5982\u300C\u70B9\u51FB\u63D0\u4EA4\u6309\u94AE\u540E 2s \u5185\u51FA\u73B0\u652F\u4ED8\u6210\u529F\u5F39\u7A97\u300D\u2014\u2014\u5F52\u56E0\u7684\u57FA\u51C6\u7EBF\uFF0C\u5F3A\u70C8\u5EFA\u8BAE\u4F20\u5165"),testSteps:H.string().optional().describe("\u5931\u8D25\u524D\u7684\u64CD\u4F5C\u6B65\u9AA4\u5E8F\u5217\uFF0C\u5982\u300C\u6253\u5F00\u9875\u9762 \u2192 \u586B\u5199\u8868\u5355 \u2192 \u70B9\u51FB\u63D0\u4EA4\u300D"),screenshotPath:H.string().optional().describe("\u5931\u8D25\u622A\u5C4F\u672C\u5730\u6587\u4EF6\u8DEF\u5F84\uFF08\u63A8\u8350\uFF0C\u907F\u514D base64 \u8FDB\u4E0A\u4E0B\u6587\uFF09"),screenshotBase64:H.string().optional().describe("\u5931\u8D25\u622A\u5C4F base64\uFF08\u515C\u5E95\uFF1B\u4E0E screenshotPath \u4E8C\u9009\u4E00\uFF09"),domSnapshot:H.string().optional().describe("\u5931\u8D25\u65F6\u7684 DOM \u5FEB\u7167\u6587\u672C"),errorText:H.string().optional().describe("\u9519\u8BEF\u6D88\u606F/\u6808")}},async e=>{let r=`You are an E2E test triage assistant. You are given: the EXPECTED behavior, (optional) steps taken before failure, and failure artifacts (screenshot/DOM/error). Judge the root cause by comparing expected vs actual. Output JSON: {"rootCause":"<=30 words","evidence":"cite concrete evidence: DOM snippet / error text / screenshot phenomenon, <=60 words","category":"selector_not_found|selector_changed|timing|layout_css|data|auth|environment|other","confidence":<0-1>,"next_action":"wait_and_retry|check_selector|refresh|fix_data|report_bug","fixSuggestion":"<=30 words"}. category guide: selector_not_found = target element never rendered; selector_changed = DOM structure changed but function still exists; timing = sequencing / dynamic rendering not finished; layout_css = style-caused anomaly; data = missing or wrong data; auth = auth/login-state problem; environment = network/timeout/proxy issues. confidence must be backed by evidence; confidence without evidence is meaningless. Expected behavior: ${e.expectedBehavior||"(not provided, base your analysis on the failure artifacts only)"}`+(e.testSteps?`
|
|
56
|
+
Steps before failure: ${e.testSteps}`:""),n=e.screenshotPath||e.screenshotBase64?[await Di({b64:e.screenshotBase64,path:e.screenshotPath,what:"\u5931\u8D25\u622A\u5C4F"})]:[],o=n.length?r:`No screenshot provided. Base your analysis on DOM + error text only.
|
|
57
|
+
`+r,s=e.domSnapshot?`
|
|
58
|
+
|
|
59
|
+
DOM snapshot:
|
|
60
|
+
${e.domSnapshot}`:"",i=e.errorText?`
|
|
61
|
+
|
|
62
|
+
Error text:
|
|
63
|
+
${e.errorText}`:"";return rt(await Hr({images:n,text:o+s+i,detail:"auto"}))}),t.registerTool("lanhu_check_auth",{description:"\u63A2\u6D3B\u5F53\u524D\u84DD\u6E56 cookie \u662F\u5426\u6709\u6548\u3002\u8C03\u4E00\u6B21 user_teams \u63A5\u53E3\uFF1A\u8FD4\u56DE { ok:true, teamCount, teams } \u8868\u793A cookie \u6709\u6548\uFF1B\u8FD4\u56DE { ok:false, reason, hint } \u8868\u793A\u5931\u6548\uFF08reason=cookie_expired/http_xxx/network_error\uFF09\u3002\u7528\u6CD5\uFF1A\u2460\u4EFB\u4F55\u84DD\u6E56\u5DE5\u5177\u62A5 401 \u6216\u8FD4\u56DE\u7A7A\u6570\u636E\u65F6\uFF0C\u5148\u8C03\u672C\u5DE5\u5177\u786E\u8BA4\u662F\u5426 cookie \u8FC7\u671F\uFF1B\u2461ok=true \u4F46\u67D0\u6B21\u8C03\u7528\u4ECD 401 \u2192 \u662F\u90A3\u4E2A\u5177\u4F53\u8D44\u6E90\u65E0\u6743\u8BBF\u95EE\uFF0C\u91CD\u65B0\u767B\u5F55\u65E0\u6548\uFF0C\u9700\u8054\u7CFB\u8BBE\u8BA1\u8005\u5F00\u6743\u9650\uFF1B\u2462ok=false(reason=cookie_expired) \u6216\u9996\u6B21\u4F7F\u7528\u65E0 cookie \u2192 \u771F\u8FC7\u671F/\u672A\u914D\u7F6E\uFF0C\u63D0\u793A\u7528\u6237\u4E8C\u9009\u4E00\u7EED\u671F\uFF1A\u65B9\u5F0F1 \u6D4F\u89C8\u5668 F12 \u2192 Network \u2192 \u590D\u5236 Cookie \u5934\u5199\u5165 .mcp-local/lanhu.cookie\uFF1B\u65B9\u5F0F2 \u53CC\u51FB lanhu-login.bat \u6216\u8DD1 npm run login \u81EA\u52A8\u5199\u5165\u3002\u5B8C\u6210\u540E\u91CD\u8BD5\u3002",inputSchema:{cookie:H.string().optional()}},async e=>rt(await Xy(Jr(e)))),t.registerTool("lanhu_list_teams",{description:"\u5217\u51FA\u5F53\u524D\u8D26\u53F7\u52A0\u5165\u7684\u5168\u90E8\u84DD\u6E56\u56E2\u961F\uFF08teamId/\u540D\u79F0/\u89D2\u8272/\u662F\u5426\u6240\u6709\u8005/\u6210\u5458\u6570\uFF09\u3002\u591A\u56E2\u961F\u573A\u666F\u5148\u7528\u5B83\u53D1\u73B0\u56E2\u961F\uFF0C\u62FF\u5230 teamId \u4F20\u7ED9 lanhu_list_directory\u3002\u4E0D\u4F20\u4EFB\u4F55\u53C2\u6570\u5373\u53EF\uFF1B\u8FD4\u56DE\u7CBE\u7B80\u5B57\u6BB5\uFF0C\u7701\u7565\u654F\u611F\u9879\u3002",inputSchema:{cookie:H.string().optional()}},async e=>rt(await Gy(Jr(e)))),t.registerTool("lanhu_list_directory",{description:"\u4E00\u6B21\u62C9\u56E2\u961F\u76EE\u5F55\uFF08\u9879\u76EE \u2192 \u5206\u7EC4\u5C42\uFF09\u3002\u7528\u4E8E\u300C\u60F3\u627E\u67D0\u6D3B\u52A8\u6709\u51E0\u4E2A\u8BBE\u8BA1\u7A3F\u300D\u2014\u2014AI \u5728\u8FD9\u4EFD\u76EE\u5F55\u91CC\u6309\u5206\u7EC4\u540D\u5339\u914D\uFF0C\u62FF\u5230 projectId \u540E\u4F20\u7ED9 lanhu_read_sector\u3002\u53EA\u5230\u5206\u7EC4\u5C42\uFF08\u542B designCount\uFF09\uFF0C\u4E0D\u5C55\u5F00\u8BBE\u8BA1\u7A3F\u540D\u3002\u56E2\u961F\u5B9A\u4F4D\u4F18\u5148\u7EA7\uFF1A\u6709\u84DD\u6E56\u94FE\u63A5\u4F20 url\uFF08\u4ECE tid \u63D0\u53D6\uFF0C\u6700\u51C6\uFF09\uFF1B\u65E0\u94FE\u63A5\u4F20 teamId\uFF08\u6765\u81EA lanhu_list_teams\uFF09\uFF1B\u4E24\u8005\u90FD\u6CA1\u6709\u5219\u62A5\u9519\uFF08\u65E0\u9ED8\u8BA4\u56E2\u961F\u56DE\u9000\uFF09\u3002\u5E76\u884C\u62C9\u53D6\u7EA6 2 \u79D2\uFF0C\u7EA6 1.6k tokens\u3002",inputSchema:{url:H.string().optional().describe("\u84DD\u6E56\u94FE\u63A5\uFF08\u4EFB\u610F\u7A3F\u94FE\u63A5\u5373\u53EF\uFF0C\u4ECE\u4E2D\u63D0\u53D6 tid \u5B9A\u4F4D\u56E2\u961F\uFF09\uFF1B\u6BD4 teamId \u66F4\u51C6"),teamId:H.string().optional().describe("\u56E2\u961F id\uFF08\u6765\u81EA lanhu_list_teams\uFF09\uFF1B\u65E0 url \u65F6\u7528"),cookie:H.string().optional()}},async e=>rt(await e_({...Jr(e),...e.url?{url:e.url}:{},...e.teamId?{teamId:e.teamId}:{}}))),t.registerTool("lanhu_read_sector",{description:"\u5217\u51FA\u84DD\u6E56\u9879\u76EE\u4E0B\u67D0\u4E2A\u5206\u7EC4\uFF08\u9700\u6C42\uFF09\u7684\u6240\u6709\u8BBE\u8BA1\u7A3F\u76EE\u5F55\uFF1A\u7A3F\u540D/\u5C3A\u5BF8/\u5C42\u6570\uFF0C\u4E0D\u542B\u56FE\u5C42\u6811\uFF08\u5168\u91CF layers \u4F1A\u6491\u7206\u4E0A\u4E0B\u6587\uFF0C\u6545\u610F\u4E0D\u8FD4\u56DE\uFF09\u3002\u7528\u9014\uFF1A\u5148\u7528 lanhu_list_directory \u5B9A\u4F4D\u5206\u7EC4\uFF0C\u518D\u7528\u672C\u5DE5\u5177\u770B\u5206\u7EC4\u91CC\u6709\u54EA\u51E0\u5F20\u7A3F\uFF0C\u6309\u7A3F\u540D\u6311\u51FA\u8981\u5B9E\u73B0\u7684\u76EE\u6807\uFF0C\u6700\u540E\u7528 lanhu_fetch_design \u9010\u5F20\u8BFB\u56FE\u5C42\u6811\u5B9E\u73B0\u3002",inputSchema:{url:H.string().describe("\u84DD\u6E56\u8BBE\u8BA1\u7A3F\u94FE\u63A5 \u6216 \u9879\u76EE UUID\uFF08\u6765\u81EA lanhu_list_directory \u7684 projectId\uFF09"),sector:H.string().describe("\u5206\u7EC4\u540D\u6216\u5206\u7EC4 id\uFF08\u4ECE lanhu_list_directory \u770B\u5230\uFF09"),cookie:H.string().optional()}},async e=>rt(await t_(e.url,e.sector,Jr(e)))),t.registerTool("lanhu_download_slices",{description:"\u4E0B\u8F7D\u84DD\u6E56\u8BBE\u8BA1\u7A3F\u5207\u56FE\u5230\u672C\u5730\u76EE\u5F55\u3002\u4E24\u79CD\u8303\u56F4\uFF08\u4E8C\u9009\u4E00\uFF09\uFF1A\u4F20 url \u4E0B\u5355\u7A3F\u5207\u56FE\uFF1B\u4F20 sector + url(\u9879\u76EEUUID\u6216\u8BE5\u5206\u7EC4\u4EFB\u4E00\u7A3F\u94FE\u63A5) \u4E0B\u6574\u4E2A\u5206\u7EC4\u6240\u6709\u7A3F\u7684\u5207\u56FE\uFF08\u8DE8\u7A3F\u516C\u5171 icon \u53EA\u4E0B\u4E00\u6B21\uFF09\u3002\u4E09\u5C42\u53BB\u91CD\uFF1AURL \u53BB\u91CD\uFF08\u540C\u56FE\u53EA\u4E0B\u4E00\u6B21\uFF0C\u9ED8\u8BA4\u5F00\uFF09\u3001skipExisting\uFF08\u672C\u5730\u5DF2\u5B58\u5728\u5219\u8DF3\u8FC7\uFF0C\u9ED8\u8BA4\u5F00\uFF09\u3001sliceNames\uFF08\u53EA\u4E0B\u6307\u5B9A\u540D\u5B57\u7684\u5207\u56FE\uFF09\u3002\u5207\u56FE\u6765\u81EA\u84DD\u6E56\u516C\u5F00 CDN\uFF0C\u65E0\u9700 cookie\u3002\u8FD4\u56DE\u4E0B\u8F7D\u660E\u7EC6\u3001\u8DF3\u8FC7\u7EDF\u8BA1\u3001\u5931\u8D25\u5217\u8868\u3002",inputSchema:{url:H.string().describe("\u8BBE\u8BA1\u7A3F URL\uFF08\u542B image_id\uFF09\u6216\u7EAF image_id\uFF1B\u5206\u7EC4\u6A21\u5F0F\u4F20\u9879\u76EE UUID \u6216\u8BE5\u5206\u7EC4\u4EFB\u4E00\u7A3F\u94FE\u63A5"),outputPath:H.string().describe("\u672C\u5730\u8F93\u51FA\u76EE\u5F55\uFF0C\u5982 src/assets/activity-xxx/"),projectId:H.string().optional().describe("\u9879\u76EE UUID\uFF08\u4F20\u7EAF image_id \u65F6\u5FC5\u586B\uFF1B\u4F20 URL \u81EA\u52A8\u63D0\u53D6\uFF09"),sector:H.string().optional().describe("\u5206\u7EC4\u540D\u6216\u5206\u7EC4 id\uFF1A\u4F20\u4E86\u5C31\u4E0B\u8F7D\u8BE5\u5206\u7EC4\u6240\u6709\u7A3F\u7684\u5207\u56FE\uFF08\u8DE8\u7A3F\u5408\u5E76\u53BB\u91CD\uFF09"),sliceNames:H.array(H.string()).optional().describe("\u53EA\u4E0B\u8F7D\u6307\u5B9A\u540D\u5B57\u7684\u5207\u56FE\uFF08\u540C\u540D\u4E0D\u540C URL \u90FD\u4E0B\uFF0C\u56E0\u4E3A\u5B83\u4EEC\u662F\u4E0D\u540C\u7684\u56FE\uFF09"),skipExisting:H.boolean().optional().describe("\u672C\u5730\u5DF2\u5B58\u5728\u540C\u540D\u6587\u4EF6\u5219\u8DF3\u8FC7\uFF0C\u9ED8\u8BA4 true\uFF08\u907F\u514D\u91CD\u4E0B\u516C\u5171 icon\uFF09"),cookie:H.string().optional()}},async e=>rt(await r_(e.url,e.outputPath,{...Jr(e),...e.projectId?{projectId:e.projectId}:{},...e.sector?{sector:e.sector}:{},...e.sliceNames?{sliceNames:e.sliceNames}:{},...e.skipExisting!==void 0?{skipExisting:e.skipExisting}:{}}))),t.registerTool("lanhu_verify_spec",{description:"\u8BBE\u8BA1\u7A3F\u9A8C\u6536\uFF08L3 \u6570\u636E\u6BD4\u5BF9\uFF09\uFF1A\u53D6\u8BBE\u8BA1\u7A3F\u56FE\u5C42\u6811\u7684\u7CBE\u786E\u6570\u503C\u4F5C\u4E3A\u671F\u671B\u503C\uFF0C\u7528 Playwright \u6253\u5F00\u9875\u9762\u91C7 getComputedStyle \u4F5C\u4E3A\u5B9E\u9645\u503C\uFF0C\u9010\u5B57\u6BB5 diff\uFF0C\u8F93\u51FA\u5C3A\u5BF8/\u4F4D\u7F6E/\u8272\u503C/\u5B57\u53F7\u56DB\u7C7B\u504F\u5DEE\u6E05\u5355\uFF08\u542B delta \u4E0E minor/major/critical \u5206\u7EA7\uFF09\u3002\u4E0D\u542B\u4E3B\u89C2\u5224\u65AD\uFF0C\u7ED3\u8BBA\u53EF\u56DE\u5F52\u3001\u53EF\u590D\u73B0\uFF0C\u662F\u66FF\u4EE3\u4EBA\u5DE5\u8D70\u67E5\u7684\u4E3B\u624B\u6BB5\uFF1Blanhu_verify_render \u7684\u89C6\u89C9\u8BED\u4E49\u6BD4\u5BF9\u53EA\u80FD\u5F53\u8865\u5145\u7EBF\u7D22\u3002\u5143\u7D20\u5339\u914D\uFF1A\u6587\u6848\u7CBE\u786E\u76F8\u7B49 > \u51E0\u4F55 IoU\uFF08\u4E0E\u8BED\u8A00\u65E0\u5173\uFF09\u3002\u300C\u6837\u5F0F\u6E05\u5355\u6BD4\u5BF9\u300D\u5B89\u5168\u7F51\uFF1A\u53EA\u6BD4\u8BBE\u8BA1\u7A3F\u4E0E\u9875\u9762\u7684\u6587\u5B57\u6837\u5F0F\u96C6\u5408\uFF08fontSize/\u5B57\u91CD/\u8272\u503C\uFF09\uFF0C\u96F6\u6807\u6CE8\u3001\u4E0D\u6BD4\u6587\u6848\uFF0C\u6C38\u8FDC\u5728\u7EBF\u2014\u2014\u8DE8\u8BED\u8A00\u6216\u8DE8\u8FED\u4EE3\u6587\u6848\u5DEE\u5F02\u90FD\u4E0D\u4F1A\u8BA9\u5B83\u5931\u76F2\uFF08\u89C1\u8FD4\u56DE inventory \u5B57\u6BB5\uFF09\u3002\u5F53\u524D\u4E3A\u6700\u5C0F\u53EF\u7528\u7248\u672C\uFF1A\u53EA\u8DD1\u9ED8\u8BA4\u6001\u3001\u5355\u4E00\u89C6\u53E3\uFF08\u6309\u8BBE\u8BA1\u7A3F viewport \u5C3A\u5BF8\uFF09\u3001\u4E0D\u8BC4\u5206\u3002",inputSchema:{designUrl:H.string().describe("\u84DD\u6E56\u8BBE\u8BA1\u7A3F URL\uFF08\u671F\u671B\u503C\u6765\u6E90\uFF09"),pageUrl:H.string().describe("\u5DF2\u5B9E\u73B0\u9875\u9762 URL\uFF08\u5B9E\u9645\u503C\u6765\u6E90\uFF09\uFF0C\u9700\u53EF\u8BBF\u95EE"),waitFor:H.string().optional().describe("\u9875\u9762\u52A0\u8F7D\u540E\u7B49\u5F85\u51FA\u73B0\u7684\u9009\u62E9\u5668\uFF08\u5982 .task-list\uFF09\uFF0C\u7528\u4E8E\u7B49\u5F85\u63A5\u53E3\u6570\u636E\u6E32\u67D3"),maxDiffs:H.number().optional().describe("\u8FD4\u56DE\u504F\u5DEE\u5206\u7EC4\u6570\u4E0A\u9650\uFF0C\u9ED8\u8BA4 50\uFF08\u6309\u4E25\u91CD\u5EA6\u6392\u5E8F\uFF0Ccritical \u7EC4\u5728\u524D\uFF09"),cookie:H.string().optional()}},async e=>rt(await h_({designUrl:e.designUrl,pageUrl:e.pageUrl,credentials:Jr(e),...e.waitFor?{waitFor:e.waitFor}:{},...e.maxDiffs!==void 0?{maxDiffs:e.maxDiffs}:{}})))}async function jE(){process.on("unhandledRejection",n=>{console.error("[unhandledRejection]",n instanceof Error?n.stack??n.message:String(n))}),process.on("uncaughtException",n=>{console.error("[uncaughtException]",n.stack??n.message),process.exit(1)});let t=new Ii({name:"lanhu-design-mcp",version:"2.0.0"},{instructions:["\u84DD\u6E56\u8BBE\u8BA1\u7A3F\u8BFB\u53D6\u4E0E\u9A8C\u6536\u5DE5\u4F5C\u6D41\uFF1A","1. \u627E\u7A3F\uFF08\u65E0\u94FE\u63A5\u65F6\uFF09\uFF1Alanhu_list_teams \u62FF teamId\uFF08\u591A\u56E2\u961F\uFF09\u2192 lanhu_list_directory \u6309\u5206\u7EC4\u540D\u5B9A\u4F4D projectId \u2192 lanhu_read_sector \u5217\u5206\u7EC4\u5185\u7A3F\u76EE\u5F55\uFF08\u7A3F\u540D/\u5C3A\u5BF8/\u5C42\u6570\uFF09\u2192 \u6309\u7A3F\u540D\u6311\u51FA\u76EE\u6807\u3002","2. \u8BFB\u7A3F\uFF1Alanhu_fetch_design \u4E00\u6B21\u53EA\u8BFB\u5F53\u524D\u8981\u5B9E\u73B0\u7684\u90A3 1 \u5F20\uFF1Banalyze \u9ED8\u8BA4\u4F1A\u8C03\u89C6\u89C9\u6A21\u578B\u7406\u89E3\u8BED\u4E49\uFF0C\u53EA\u8981\u5750\u6807\u6570\u503C\u65F6\u4F20 analyze:false\uFF1B\u8272\u503C/\u5B57\u53F7\u7B49\u7CBE\u786E\u6570\u503C\u4E00\u5F8B\u53D6\u81EA layers \u5B57\u6BB5\uFF0C\u7981\u6B62\u9760\u622A\u56FE OCR\u3002","3. \u7D20\u6750\uFF1Alanhu_download_slices \u4E0B\u8F7D\u5207\u56FE\uFF08sliceNames \u6309\u540D\u8FC7\u6EE4\uFF09\uFF0C\u4EE3\u7801\u5F15\u7528\u8FD4\u56DE\u7684 file \u8DEF\u5F84\u3002","4. \u9A8C\u6536\uFF1Alanhu_verify_spec \u6570\u503C\u6BD4\u5BF9\u4E3A\u4E3B\uFF08\u5BA2\u89C2\u53EF\u56DE\u5F52\uFF09\uFF1Blanhu_verify_render / vision_defect_check \u4F20\u622A\u56FE\u7684 imagePath \u6587\u4EF6\u8DEF\u5F84\u505A\u89C6\u89C9\u8F85\u52A9\u3002","5. \u62A5 401 \u6216\u7A7A\u6570\u636E\u65F6\u5148 lanhu_check_auth\uFF1Aok:true = \u8BE5\u8D44\u6E90\u65E0\u6743\u9650\uFF08\u627E\u8BBE\u8BA1\u8005\u5F00\u6743\u9650\uFF0C\u91CD\u65B0\u767B\u5F55\u65E0\u6548\uFF09\uFF1Bcookie_expired = \u771F\u8FC7\u671F\uFF08\u8DD1 lanhu-login.bat \u6216 npm run login \u7EED\u671F\u540E\u91CD\u8BD5\uFF09\u3002"].join(`
|
|
64
|
+
`)});g_(t);let e=new Ni;await t.connect(e);let r=async n=>{console.error(`\u6536\u5230 ${n}\uFF0C\u6B63\u5728\u5173\u95ED lanhu-design-mcp\u2026`);try{await t.close()}catch{}process.exit(0)};process.on("SIGINT",()=>{r("SIGINT")}),process.on("SIGTERM",()=>{r("SIGTERM")}),process.on("SIGHUP",()=>{r("SIGHUP")}),console.error("lanhu-design-mcp \u5DF2\u542F\u52A8\uFF0C\u7B49\u5F85\u8FDE\u63A5\u2026")}jE().catch(t=>{console.error("\u542F\u52A8\u5931\u8D25:",t?.message||t),process.exit(1)});
|