context-mode 1.0.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/build/server.js +1 -1
- package/build/session/snapshot.d.ts +5 -1
- package/build/session/snapshot.js +40 -5
- package/hooks/session-directive.mjs +51 -9
- package/package.json +1 -1
- package/server.bundle.mjs +389 -0
|
@@ -0,0 +1,389 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
var Hy=Object.create;var Pi=Object.defineProperty;var By=Object.getOwnPropertyDescriptor;var Ky=Object.getOwnPropertyNames;var Wy=Object.getPrototypeOf,Jy=Object.prototype.hasOwnProperty;var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ri=(t,e)=>{for(var r in e)Pi(t,r,{get:e[r],enumerable:!0})},Gy=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Ky(e))!Jy.call(t,o)&&o!==r&&Pi(t,o,{get:()=>e[o],enumerable:!(n=By(e,o))||n.enumerable});return t};var bd=(t,e,r)=>(r=t!=null?Hy(Wy(t)):{},Gy(e||!t||!t.__esModule?Pi(r,"default",{value:t,enumerable:!0}):r,t));var Xn=T(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.regexpCode=ee.getEsmExportName=ee.getProperty=ee.safeStringify=ee.stringify=ee.strConcat=ee.addCodeArg=ee.str=ee._=ee.nil=ee._Code=ee.Name=ee.IDENTIFIER=ee._CodeOrName=void 0;var Gn=class{};ee._CodeOrName=Gn;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Rr=class extends Gn{constructor(e){if(super(),!ee.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}}};ee.Name=Rr;var nt=class extends Gn{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Rr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ee._Code=nt;ee.nil=new nt("");function ym(t,...e){let r=[t[0]],n=0;for(;n<e.length;)mu(r,e[n]),r.push(t[++n]);return new nt(r)}ee._=ym;var fu=new nt("+");function _m(t,...e){let r=[Yn(t[0])],n=0;for(;n<e.length;)r.push(fu),mu(r,e[n]),r.push(fu,Yn(t[++n]));return K$(r),new nt(r)}ee.str=_m;function mu(t,e){e instanceof nt?t.push(...e._items):e instanceof Rr?t.push(e):t.push(G$(e))}ee.addCodeArg=mu;function K$(t){let e=1;for(;e<t.length-1;){if(t[e]===fu){let r=W$(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function W$(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Rr||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 Rr))return`"${t}${e.slice(1)}`}function J$(t,e){return e.emptyStr()?t:t.emptyStr()?e:_m`${t}${e}`}ee.strConcat=J$;function G$(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Yn(Array.isArray(t)?t.join(","):t)}function Y$(t){return new nt(Yn(t))}ee.stringify=Y$;function Yn(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=Yn;function X$(t){return typeof t=="string"&&ee.IDENTIFIER.test(t)?new nt(`.${t}`):ym`[${t}]`}ee.getProperty=X$;function Q$(t){if(typeof t=="string"&&ee.IDENTIFIER.test(t))return new nt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ee.getEsmExportName=Q$;function e0(t){return new nt(t.toString())}ee.regexpCode=e0});var yu=T(He=>{"use strict";Object.defineProperty(He,"__esModule",{value:!0});He.ValueScope=He.ValueScopeName=He.Scope=He.varKinds=He.UsedValueState=void 0;var Ve=Xn(),hu=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Os;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Os||(He.UsedValueState=Os={}));He.varKinds={const:new Ve.Name("const"),let:new Ve.Name("let"),var:new Ve.Name("var")};var Ns=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ve.Name?e:this.name(e)}name(e){return new Ve.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}}};He.Scope=Ns;var Cs=class extends Ve.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ve._)`.${new Ve.Name(r)}[${n}]`}};He.ValueScopeName=Cs;var t0=(0,Ve._)`\n`,gu=class extends Ns{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?t0:Ve.nil}}get(){return this._scope}name(e){return new Cs(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,Ve._)`${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=Ve.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,Os.Started);let l=r(u);if(l){let d=this.opts.es5?He.varKinds.var:He.varKinds.const;s=(0,Ve._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ve._)`${s}${l}${this.opts._n}`;else throw new hu(u);c.set(u,Os.Completed)})}return s}};He.ValueScope=gu});var F=T(U=>{"use strict";Object.defineProperty(U,"__esModule",{value:!0});U.or=U.and=U.not=U.CodeGen=U.operators=U.varKinds=U.ValueScopeName=U.ValueScope=U.Scope=U.Name=U.regexpCode=U.stringify=U.getProperty=U.nil=U.strConcat=U.str=U._=void 0;var Y=Xn(),dt=yu(),Gt=Xn();Object.defineProperty(U,"_",{enumerable:!0,get:function(){return Gt._}});Object.defineProperty(U,"str",{enumerable:!0,get:function(){return Gt.str}});Object.defineProperty(U,"strConcat",{enumerable:!0,get:function(){return Gt.strConcat}});Object.defineProperty(U,"nil",{enumerable:!0,get:function(){return Gt.nil}});Object.defineProperty(U,"getProperty",{enumerable:!0,get:function(){return Gt.getProperty}});Object.defineProperty(U,"stringify",{enumerable:!0,get:function(){return Gt.stringify}});Object.defineProperty(U,"regexpCode",{enumerable:!0,get:function(){return Gt.regexpCode}});Object.defineProperty(U,"Name",{enumerable:!0,get:function(){return Gt.Name}});var Ms=yu();Object.defineProperty(U,"Scope",{enumerable:!0,get:function(){return Ms.Scope}});Object.defineProperty(U,"ValueScope",{enumerable:!0,get:function(){return Ms.ValueScope}});Object.defineProperty(U,"ValueScopeName",{enumerable:!0,get:function(){return Ms.ValueScopeName}});Object.defineProperty(U,"varKinds",{enumerable:!0,get:function(){return Ms.varKinds}});U.operators={GT:new Y._Code(">"),GTE:new Y._Code(">="),LT:new Y._Code("<"),LTE:new Y._Code("<="),EQ:new Y._Code("==="),NEQ:new Y._Code("!=="),NOT:new Y._Code("!"),OR:new Y._Code("||"),AND:new Y._Code("&&"),ADD:new Y._Code("+")};var Ct=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},_u=class extends Ct{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?dt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=on(this.rhs,e,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},As=class extends Ct{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 Y.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=on(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return Zs(e,this.rhs)}},vu=class extends As{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},xu=class extends Ct{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},bu=class extends Ct{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},$u=class extends Ct{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},wu=class extends Ct{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=on(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},Qn=class extends Ct{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)||(r0(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Nr(e,r.names),{})}},At=class extends Qn{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},ku=class extends Qn{},nn=class extends At{};nn.kind="else";var Ir=class t extends At{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new nn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(vm(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=on(this.condition,e,r),this}get names(){let e=super.names;return Zs(e,this.condition),this.else&&Nr(e,this.else.names),e}};Ir.kind="if";var Or=class extends At{};Or.kind="for";var Su=class extends Or{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=on(this.iteration,e,r),this}get names(){return Nr(super.names,this.iteration.names)}},Tu=class extends Or{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?dt.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=Zs(super.names,this.from);return Zs(e,this.to)}},js=class extends Or{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=on(this.iterable,e,r),this}get names(){return Nr(super.names,this.iterable.names)}},eo=class extends At{constructor(e,r,n){super(),this.name=e,this.args=r,this.async=n}render(e){return`${this.async?"async ":""}function ${this.name}(${this.args})`+super.render(e)}};eo.kind="func";var to=class extends Qn{render(e){return"return "+super.render(e)}};to.kind="return";var Eu=class extends At{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&&Nr(e,this.catch.names),this.finally&&Nr(e,this.finally.names),e}},ro=class extends At{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};ro.kind="catch";var no=class extends At{render(e){return"finally"+super.render(e)}};no.kind="finally";var zu=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
|
|
3
|
+
`:""},this._extScope=e,this._scope=new dt.Scope({parent:e}),this._nodes=[new ku]}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 _u(e,s,n)),s}const(e,r,n){return this._def(dt.varKinds.const,e,r,n)}let(e,r,n){return this._def(dt.varKinds.let,e,r,n)}var(e,r,n){return this._def(dt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new As(e,r,n))}add(e,r){return this._leafNode(new vu(e,U.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Y.nil&&this._leafNode(new wu(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,Y.addCodeArg)(r,o));return r.push("}"),new Y._Code(r)}if(e,r,n){if(this._blockNode(new Ir(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 Ir(e))}else(){return this._elseNode(new nn)}endIf(){return this._endBlockNode(Ir,nn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Su(e),r)}forRange(e,r,n,o,s=this.opts.es5?dt.varKinds.var:dt.varKinds.let){let i=this._scope.toName(e);return this._for(new Tu(s,i,r,n),()=>o(i))}forOf(e,r,n,o=dt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof Y.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Y._)`${i}.length`,a=>{this.var(s,(0,Y._)`${i}[${a}]`),n(s)})}return this._for(new js("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?dt.varKinds.var:dt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Y._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new js("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Or)}label(e){return this._leafNode(new xu(e))}break(e){return this._leafNode(new bu(e))}return(e){let r=new to;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(to)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Eu;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new ro(s),r(s)}return n&&(this._currNode=o.finally=new no,this.code(n)),this._endBlockNode(ro,no)}throw(e){return this._leafNode(new $u(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=Y.nil,n,o){return this._blockNode(new eo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(eo)}optimize(e=1){for(;e-- >0;)this._root.optimizeNodes(),this._root.optimizeNames(this._root.names,this._constants)}_leafNode(e){return this._currNode.nodes.push(e),this}_blockNode(e){this._currNode.nodes.push(e),this._nodes.push(e)}_endBlockNode(e,r){let n=this._currNode;if(n instanceof e||r&&n instanceof r)return this._nodes.pop(),this;throw new Error(`CodeGen: not in block "${r?`${e.kind}/${r.kind}`:e.kind}"`)}_elseNode(e){let r=this._currNode;if(!(r instanceof Ir))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}};U.CodeGen=zu;function Nr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Zs(t,e){return e instanceof Y._CodeOrName?Nr(t,e.names):t}function on(t,e,r){if(t instanceof Y.Name)return n(t);if(!o(t))return t;return new Y._Code(t._items.reduce((s,i)=>(i instanceof Y.Name&&(i=n(i)),i instanceof Y._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 Y._Code&&s._items.some(i=>i instanceof Y.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function r0(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function vm(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${Pu(t)}`}U.not=vm;var n0=xm(U.operators.AND);function o0(...t){return t.reduce(n0)}U.and=o0;var s0=xm(U.operators.OR);function i0(...t){return t.reduce(s0)}U.or=i0;function xm(t){return(e,r)=>e===Y.nil?r:r===Y.nil?e:(0,Y._)`${Pu(e)} ${t} ${Pu(r)}`}function Pu(t){return t instanceof Y.Name?t:(0,Y._)`(${t})`}});var X=T(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.checkStrictMode=H.getErrorPath=H.Type=H.useFunc=H.setEvaluated=H.evaluatedPropsToName=H.mergeEvaluated=H.eachItem=H.unescapeJsonPointer=H.escapeJsonPointer=H.escapeFragment=H.unescapeFragment=H.schemaRefOrVal=H.schemaHasRulesButRef=H.schemaHasRules=H.checkUnknownRules=H.alwaysValidSchema=H.toHash=void 0;var oe=F(),a0=Xn();function c0(t){let e={};for(let r of t)e[r]=!0;return e}H.toHash=c0;function u0(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(wm(t,e),!km(e,t.self.RULES.all))}H.alwaysValidSchema=u0;function wm(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]||Em(t,`unknown keyword: "${s}"`)}H.checkUnknownRules=wm;function km(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}H.schemaHasRules=km;function l0(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}H.schemaHasRulesButRef=l0;function d0({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,oe._)`${r}`}return(0,oe._)`${t}${e}${(0,oe.getProperty)(n)}`}H.schemaRefOrVal=d0;function p0(t){return Sm(decodeURIComponent(t))}H.unescapeFragment=p0;function f0(t){return encodeURIComponent(Iu(t))}H.escapeFragment=f0;function Iu(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}H.escapeJsonPointer=Iu;function Sm(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}H.unescapeJsonPointer=Sm;function m0(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}H.eachItem=m0;function bm({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof oe.Name?(s instanceof oe.Name?t(o,s,i):e(o,s,i),i):s instanceof oe.Name?(e(o,i,s),s):r(s,i);return a===oe.Name&&!(c instanceof oe.Name)?n(o,c):c}}H.mergeEvaluated={props:bm({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,oe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,oe._)`${r} || {}`).code((0,oe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,oe._)`${r} || {}`),Ou(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:Tm}),items:bm({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,oe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,oe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function Tm(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,oe._)`{}`);return e!==void 0&&Ou(t,r,e),r}H.evaluatedPropsToName=Tm;function Ou(t,e,r){Object.keys(r).forEach(n=>t.assign((0,oe._)`${e}${(0,oe.getProperty)(n)}`,!0))}H.setEvaluated=Ou;var $m={};function h0(t,e){return t.scopeValue("func",{ref:e,code:$m[e.code]||($m[e.code]=new a0._Code(e.code))})}H.useFunc=h0;var Ru;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Ru||(H.Type=Ru={}));function g0(t,e,r){if(t instanceof oe.Name){let n=e===Ru.Num;return r?n?(0,oe._)`"[" + ${t} + "]"`:(0,oe._)`"['" + ${t} + "']"`:n?(0,oe._)`"/" + ${t}`:(0,oe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,oe.getProperty)(t).toString():"/"+Iu(t)}H.getErrorPath=g0;function Em(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}H.checkStrictMode=Em});var jt=T(Nu=>{"use strict";Object.defineProperty(Nu,"__esModule",{value:!0});var Ie=F(),y0={data:new Ie.Name("data"),valCxt:new Ie.Name("valCxt"),instancePath:new Ie.Name("instancePath"),parentData:new Ie.Name("parentData"),parentDataProperty:new Ie.Name("parentDataProperty"),rootData:new Ie.Name("rootData"),dynamicAnchors:new Ie.Name("dynamicAnchors"),vErrors:new Ie.Name("vErrors"),errors:new Ie.Name("errors"),this:new Ie.Name("this"),self:new Ie.Name("self"),scope:new Ie.Name("scope"),json:new Ie.Name("json"),jsonPos:new Ie.Name("jsonPos"),jsonLen:new Ie.Name("jsonLen"),jsonPart:new Ie.Name("jsonPart")};Nu.default=y0});var oo=T(Oe=>{"use strict";Object.defineProperty(Oe,"__esModule",{value:!0});Oe.extendErrors=Oe.resetErrorsCount=Oe.reportExtraError=Oe.reportError=Oe.keyword$DataError=Oe.keywordError=void 0;var Q=F(),Ds=X(),Ze=jt();Oe.keywordError={message:({keyword:t})=>(0,Q.str)`must pass "${t}" keyword validation`};Oe.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,Q.str)`"${t}" keyword must be ${e} ($data)`:(0,Q.str)`"${t}" keyword is invalid ($data)`};function _0(t,e=Oe.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Rm(t,e,r);n??(i||a)?zm(s,c):Pm(o,(0,Q._)`[${c}]`)}Oe.reportError=_0;function v0(t,e=Oe.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Rm(t,e,r);zm(o,a),s||i||Pm(n,Ze.default.vErrors)}Oe.reportExtraError=v0;function x0(t,e){t.assign(Ze.default.errors,e),t.if((0,Q._)`${Ze.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Q._)`${Ze.default.vErrors}.length`,e),()=>t.assign(Ze.default.vErrors,null)))}Oe.resetErrorsCount=x0;function b0({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,Ze.default.errors,a=>{t.const(i,(0,Q._)`${Ze.default.vErrors}[${a}]`),t.if((0,Q._)`${i}.instancePath === undefined`,()=>t.assign((0,Q._)`${i}.instancePath`,(0,Q.strConcat)(Ze.default.instancePath,s.errorPath))),t.assign((0,Q._)`${i}.schemaPath`,(0,Q.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,Q._)`${i}.schema`,r),t.assign((0,Q._)`${i}.data`,n))})}Oe.extendErrors=b0;function zm(t,e){let r=t.const("err",e);t.if((0,Q._)`${Ze.default.vErrors} === null`,()=>t.assign(Ze.default.vErrors,(0,Q._)`[${r}]`),(0,Q._)`${Ze.default.vErrors}.push(${r})`),t.code((0,Q._)`${Ze.default.errors}++`)}function Pm(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,Q._)`new ${t.ValidationError}(${e})`):(r.assign((0,Q._)`${n}.errors`,e),r.return(!1))}var Cr={keyword:new Q.Name("keyword"),schemaPath:new Q.Name("schemaPath"),params:new Q.Name("params"),propertyName:new Q.Name("propertyName"),message:new Q.Name("message"),schema:new Q.Name("schema"),parentSchema:new Q.Name("parentSchema")};function Rm(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:$0(t,e,r)}function $0(t,e,r={}){let{gen:n,it:o}=t,s=[w0(o,r),k0(t,r)];return S0(t,e,s),n.object(...s)}function w0({errorPath:t},{instancePath:e}){let r=e?(0,Q.str)`${t}${(0,Ds.getErrorPath)(e,Ds.Type.Str)}`:t;return[Ze.default.instancePath,(0,Q.strConcat)(Ze.default.instancePath,r)]}function k0({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,Q.str)`${e}/${t}`;return r&&(o=(0,Q.str)`${o}${(0,Ds.getErrorPath)(r,Ds.Type.Str)}`),[Cr.schemaPath,o]}function S0(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([Cr.keyword,o],[Cr.params,typeof e=="function"?e(t):e||(0,Q._)`{}`]),c.messages&&n.push([Cr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Cr.schema,i],[Cr.parentSchema,(0,Q._)`${l}${d}`],[Ze.default.data,s]),u&&n.push([Cr.propertyName,u])}});var Om=T(sn=>{"use strict";Object.defineProperty(sn,"__esModule",{value:!0});sn.boolOrEmptySchema=sn.topBoolOrEmptySchema=void 0;var T0=oo(),E0=F(),z0=jt(),P0={message:"boolean schema is false"};function R0(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Im(t,!1):typeof r=="object"&&r.$async===!0?e.return(z0.default.data):(e.assign((0,E0._)`${n}.errors`,null),e.return(!0))}sn.topBoolOrEmptySchema=R0;function I0(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Im(t)):r.var(e,!0)}sn.boolOrEmptySchema=I0;function Im(t,e){let{gen:r,data:n}=t,o={gen:r,keyword:"false schema",data:n,schema:!1,schemaCode:!1,schemaValue:!1,params:{},it:t};(0,T0.reportError)(o,P0,void 0,e)}});var Cu=T(an=>{"use strict";Object.defineProperty(an,"__esModule",{value:!0});an.getRules=an.isJSONType=void 0;var O0=["string","number","integer","boolean","null","object","array"],N0=new Set(O0);function C0(t){return typeof t=="string"&&N0.has(t)}an.isJSONType=C0;function A0(){let t={number:{type:"number",rules:[]},string:{type:"string",rules:[]},array:{type:"array",rules:[]},object:{type:"object",rules:[]}};return{types:{...t,integer:!0,boolean:!0,null:!0},rules:[{rules:[]},t.number,t.string,t.array,t.object],post:{rules:[]},all:{},keywords:{}}}an.getRules=A0});var Au=T(Yt=>{"use strict";Object.defineProperty(Yt,"__esModule",{value:!0});Yt.shouldUseRule=Yt.shouldUseGroup=Yt.schemaHasRulesForType=void 0;function j0({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Nm(t,n)}Yt.schemaHasRulesForType=j0;function Nm(t,e){return e.rules.some(r=>Cm(t,r))}Yt.shouldUseGroup=Nm;function Cm(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))}Yt.shouldUseRule=Cm});var so=T(Ne=>{"use strict";Object.defineProperty(Ne,"__esModule",{value:!0});Ne.reportTypeError=Ne.checkDataTypes=Ne.checkDataType=Ne.coerceAndCheckDataType=Ne.getJSONTypes=Ne.getSchemaTypes=Ne.DataType=void 0;var Z0=Cu(),M0=Au(),D0=oo(),L=F(),Am=X(),cn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(cn||(Ne.DataType=cn={}));function L0(t){let e=jm(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}Ne.getSchemaTypes=L0;function jm(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(Z0.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Ne.getJSONTypes=jm;function q0(t,e){let{gen:r,data:n,opts:o}=t,s=F0(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,M0.schemaHasRulesForType)(t,e[0]));if(i){let a=Zu(e,n,o.strictNumbers,cn.Wrong);r.if(a,()=>{s.length?U0(t,e,s):Mu(t)})}return i}Ne.coerceAndCheckDataType=q0;var Zm=new Set(["string","number","integer","boolean","null"]);function F0(t,e){return e?t.filter(r=>Zm.has(r)||e==="array"&&r==="array"):[]}function U0(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,L._)`typeof ${o}`),a=n.let("coerced",(0,L._)`undefined`);s.coerceTypes==="array"&&n.if((0,L._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,L._)`${o}[0]`).assign(i,(0,L._)`typeof ${o}`).if(Zu(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,L._)`${a} !== undefined`);for(let u of r)(Zm.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Mu(t),n.endIf(),n.if((0,L._)`${a} !== undefined`,()=>{n.assign(o,a),V0(t,a)});function c(u){switch(u){case"string":n.elseIf((0,L._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,L._)`"" + ${o}`).elseIf((0,L._)`${o} === null`).assign(a,(0,L._)`""`);return;case"number":n.elseIf((0,L._)`${i} == "boolean" || ${o} === null
|
|
4
|
+
|| (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,L._)`+${o}`);return;case"integer":n.elseIf((0,L._)`${i} === "boolean" || ${o} === null
|
|
5
|
+
|| (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,L._)`+${o}`);return;case"boolean":n.elseIf((0,L._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,L._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,L._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,L._)`${i} === "string" || ${i} === "number"
|
|
6
|
+
|| ${i} === "boolean" || ${o} === null`).assign(a,(0,L._)`[${o}]`)}}}function V0({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,L._)`${e} !== undefined`,()=>t.assign((0,L._)`${e}[${r}]`,n))}function ju(t,e,r,n=cn.Correct){let o=n===cn.Correct?L.operators.EQ:L.operators.NEQ,s;switch(t){case"null":return(0,L._)`${e} ${o} null`;case"array":s=(0,L._)`Array.isArray(${e})`;break;case"object":s=(0,L._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,L._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,L._)`typeof ${e} ${o} ${t}`}return n===cn.Correct?s:(0,L.not)(s);function i(a=L.nil){return(0,L.and)((0,L._)`typeof ${e} == "number"`,a,r?(0,L._)`isFinite(${e})`:L.nil)}}Ne.checkDataType=ju;function Zu(t,e,r,n){if(t.length===1)return ju(t[0],e,r,n);let o,s=(0,Am.toHash)(t);if(s.array&&s.object){let i=(0,L._)`typeof ${e} != "object"`;o=s.null?i:(0,L._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=L.nil;s.number&&delete s.integer;for(let i in s)o=(0,L.and)(o,ju(i,e,r,n));return o}Ne.checkDataTypes=Zu;var H0={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,L._)`{type: ${t}}`:(0,L._)`{type: ${e}}`};function Mu(t){let e=B0(t);(0,D0.reportError)(e,H0)}Ne.reportTypeError=Mu;function B0(t){let{gen:e,data:r,schema:n}=t,o=(0,Am.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Dm=T(Ls=>{"use strict";Object.defineProperty(Ls,"__esModule",{value:!0});Ls.assignDefaults=void 0;var un=F(),K0=X();function W0(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Mm(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Mm(t,s,o.default))}Ls.assignDefaults=W0;function Mm(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,un._)`${s}${(0,un.getProperty)(e)}`;if(o){(0,K0.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,un._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,un._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,un._)`${a} = ${(0,un.stringify)(r)}`)}});var ot=T(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.validateUnion=ne.validateArray=ne.usePattern=ne.callValidateCode=ne.schemaProperties=ne.allSchemaProperties=ne.noPropertyInData=ne.propertyInData=ne.isOwnProperty=ne.hasPropFunc=ne.reportMissingProp=ne.checkMissingProp=ne.checkReportMissingProp=void 0;var le=F(),Du=X(),Xt=jt(),J0=X();function G0(t,e){let{gen:r,data:n,it:o}=t;r.if(qu(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,le._)`${e}`},!0),t.error()})}ne.checkReportMissingProp=G0;function Y0({gen:t,data:e,it:{opts:r}},n,o){return(0,le.or)(...n.map(s=>(0,le.and)(qu(t,e,s,r.ownProperties),(0,le._)`${o} = ${s}`)))}ne.checkMissingProp=Y0;function X0(t,e){t.setParams({missingProperty:e},!0),t.error()}ne.reportMissingProp=X0;function Lm(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,le._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=Lm;function Lu(t,e,r){return(0,le._)`${Lm(t)}.call(${e}, ${r})`}ne.isOwnProperty=Lu;function Q0(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} !== undefined`;return n?(0,le._)`${o} && ${Lu(t,e,r)}`:o}ne.propertyInData=Q0;function qu(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} === undefined`;return n?(0,le.or)(o,(0,le.not)(Lu(t,e,r))):o}ne.noPropertyInData=qu;function qm(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ne.allSchemaProperties=qm;function ew(t,e){return qm(e).filter(r=>!(0,Du.alwaysValidSchema)(t,e[r]))}ne.schemaProperties=ew;function tw({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,le._)`${t}, ${e}, ${n}${o}`:e,d=[[Xt.default.instancePath,(0,le.strConcat)(Xt.default.instancePath,s)],[Xt.default.parentData,i.parentData],[Xt.default.parentDataProperty,i.parentDataProperty],[Xt.default.rootData,Xt.default.rootData]];i.opts.dynamicRef&&d.push([Xt.default.dynamicAnchors,Xt.default.dynamicAnchors]);let f=(0,le._)`${l}, ${r.object(...d)}`;return c!==le.nil?(0,le._)`${a}.call(${c}, ${f})`:(0,le._)`${a}(${f})`}ne.callValidateCode=tw;var rw=(0,le._)`new RegExp`;function nw({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,le._)`${o.code==="new RegExp"?rw:(0,J0.useFunc)(t,o)}(${r}, ${n})`})}ne.usePattern=nw;function ow(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,le._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Du.Type.Num},s),e.if((0,le.not)(s),a)})}}ne.validateArray=ow;function sw(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,Du.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,le._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,le.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}ne.validateUnion=sw});var Vm=T(bt=>{"use strict";Object.defineProperty(bt,"__esModule",{value:!0});bt.validateKeywordUsage=bt.validSchemaType=bt.funcKeywordCode=bt.macroKeywordCode=void 0;var Me=F(),Ar=jt(),iw=ot(),aw=oo();function cw(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Um(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Me.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}bt.macroKeywordCode=cw;function uw(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;dw(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Um(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&&Fm(t),g(()=>t.error());else{let _=e.async?m():p();e.modifying&&Fm(t),g(()=>lw(t,_))}}function m(){let _=n.let("ruleErrs",null);return n.try(()=>h((0,Me._)`await `),x=>n.assign(d,!1).if((0,Me._)`${x} instanceof ${c.ValidationError}`,()=>n.assign(_,(0,Me._)`${x}.errors`),()=>n.throw(x))),_}function p(){let _=(0,Me._)`${l}.errors`;return n.assign(_,null),h(Me.nil),_}function h(_=e.async?(0,Me._)`await `:Me.nil){let x=c.opts.passContext?Ar.default.this:Ar.default.self,b=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Me._)`${_}${(0,iw.callValidateCode)(t,l,x,b)}`,e.modifying)}function g(_){var x;n.if((0,Me.not)((x=e.valid)!==null&&x!==void 0?x:d),_)}}bt.funcKeywordCode=uw;function Fm(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Me._)`${n.parentData}[${n.parentDataProperty}]`))}function lw(t,e){let{gen:r}=t;r.if((0,Me._)`Array.isArray(${e})`,()=>{r.assign(Ar.default.vErrors,(0,Me._)`${Ar.default.vErrors} === null ? ${e} : ${Ar.default.vErrors}.concat(${e})`).assign(Ar.default.errors,(0,Me._)`${Ar.default.vErrors}.length`),(0,aw.extendErrors)(t)},()=>t.error())}function dw({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Um(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,Me.stringify)(r)})}function pw(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")}bt.validSchemaType=pw;function fw({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)}}bt.validateKeywordUsage=fw});var Bm=T(Qt=>{"use strict";Object.defineProperty(Qt,"__esModule",{value:!0});Qt.extendSubschemaMode=Qt.extendSubschemaData=Qt.getSubschema=void 0;var $t=F(),Hm=X();function mw(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,$t._)`${t.schemaPath}${(0,$t.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,$t._)`${t.schemaPath}${(0,$t.getProperty)(e)}${(0,$t.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Hm.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')}Qt.getSubschema=mw;function hw(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,$t._)`${e.data}${(0,$t.getProperty)(r)}`,!0);c(f),t.errorPath=(0,$t.str)`${u}${(0,Hm.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,$t._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof $t.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]}}Qt.extendSubschemaData=hw;function gw(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}Qt.extendSubschemaMode=gw});var Fu=T((JN,Km)=>{"use strict";Km.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 Jm=T((GN,Wm)=>{"use strict";var er=Wm.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)};er.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};er.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};er.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};er.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 er.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 er.propsKeywords){if(d&&typeof d=="object")for(var m in d)qs(t,e,r,d[m],o+"/"+l+"/"+yw(m),s,o,l,n,m)}else(l in er.keywords||t.allKeys&&!(l in er.skipKeywords))&&qs(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function yw(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var io=T(Be=>{"use strict";Object.defineProperty(Be,"__esModule",{value:!0});Be.getSchemaRefs=Be.resolveUrl=Be.normalizeId=Be._getFullPath=Be.getFullPath=Be.inlineRef=void 0;var _w=X(),vw=Fu(),xw=Jm(),bw=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?!Uu(t):e?Gm(t)<=e:!1}Be.inlineRef=$w;var ww=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Uu(t){for(let e in t){if(ww.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Uu)||typeof r=="object"&&Uu(r))return!0}return!1}function Gm(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!bw.has(r)&&(typeof t[r]=="object"&&(0,_w.eachItem)(t[r],n=>e+=Gm(n)),e===1/0))return 1/0}return e}function Ym(t,e="",r){r!==!1&&(e=ln(e));let n=t.parse(e);return Xm(t,n)}Be.getFullPath=Ym;function Xm(t,e){return t.serialize(e).split("#")[0]+"#"}Be._getFullPath=Xm;var kw=/#\/?$/;function ln(t){return t?t.replace(kw,""):""}Be.normalizeId=ln;function Sw(t,e,r){return r=ln(r),t.resolve(e,r)}Be.resolveUrl=Sw;var Tw=/^[a-z_][-a-z0-9._]*$/i;function Ew(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=ln(t[r]||e),s={"":o},i=Ym(n,o,!1),a={},c=new Set;return xw(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])),x.call(this,d.$anchor),x.call(this,d.$dynamicAnchor),s[f]=g;function _(b){let k=this.opts.uriResolver.resolve;if(b=ln(g?k(g,b):b),c.has(b))throw l(b);c.add(b);let P=this.refs[b];return typeof P=="string"&&(P=this.refs[P]),typeof P=="object"?u(d,P.schema,b):b!==ln(h)&&(b[0]==="#"?(u(d,a[b],b),a[b]=d):this.refs[b]=h),b}function x(b){if(typeof b=="string"){if(!Tw.test(b))throw new Error(`invalid anchor "${b}"`);_.call(this,`#${b}`)}}}),a;function u(d,f,m){if(f!==void 0&&!vw(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Be.getSchemaRefs=Ew});var uo=T(tr=>{"use strict";Object.defineProperty(tr,"__esModule",{value:!0});tr.getData=tr.KeywordCxt=tr.validateFunctionCode=void 0;var nh=Om(),Qm=so(),Hu=Au(),Fs=so(),zw=Dm(),co=Vm(),Vu=Bm(),N=F(),M=jt(),Pw=io(),Zt=X(),ao=oo();function Rw(t){if(ih(t)&&(ah(t),sh(t))){Nw(t);return}oh(t,()=>(0,nh.topBoolOrEmptySchema)(t))}tr.validateFunctionCode=Rw;function oh({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,N._)`${M.default.data}, ${M.default.valCxt}`,n.$async,()=>{t.code((0,N._)`"use strict"; ${eh(r,o)}`),Ow(t,o),t.code(s)}):t.func(e,(0,N._)`${M.default.data}, ${Iw(o)}`,n.$async,()=>t.code(eh(r,o)).code(s))}function Iw(t){return(0,N._)`{${M.default.instancePath}="", ${M.default.parentData}, ${M.default.parentDataProperty}, ${M.default.rootData}=${M.default.data}${t.dynamicRef?(0,N._)`, ${M.default.dynamicAnchors}={}`:N.nil}}={}`}function Ow(t,e){t.if(M.default.valCxt,()=>{t.var(M.default.instancePath,(0,N._)`${M.default.valCxt}.${M.default.instancePath}`),t.var(M.default.parentData,(0,N._)`${M.default.valCxt}.${M.default.parentData}`),t.var(M.default.parentDataProperty,(0,N._)`${M.default.valCxt}.${M.default.parentDataProperty}`),t.var(M.default.rootData,(0,N._)`${M.default.valCxt}.${M.default.rootData}`),e.dynamicRef&&t.var(M.default.dynamicAnchors,(0,N._)`${M.default.valCxt}.${M.default.dynamicAnchors}`)},()=>{t.var(M.default.instancePath,(0,N._)`""`),t.var(M.default.parentData,(0,N._)`undefined`),t.var(M.default.parentDataProperty,(0,N._)`undefined`),t.var(M.default.rootData,M.default.data),e.dynamicRef&&t.var(M.default.dynamicAnchors,(0,N._)`{}`)})}function Nw(t){let{schema:e,opts:r,gen:n}=t;oh(t,()=>{r.$comment&&e.$comment&&uh(t),Mw(t),n.let(M.default.vErrors,null),n.let(M.default.errors,0),r.unevaluated&&Cw(t),ch(t),qw(t)})}function Cw(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,N._)`${r}.evaluated`),e.if((0,N._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,N._)`${t.evaluated}.props`,(0,N._)`undefined`)),e.if((0,N._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,N._)`${t.evaluated}.items`,(0,N._)`undefined`))}function eh(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,N._)`/*# sourceURL=${r} */`:N.nil}function Aw(t,e){if(ih(t)&&(ah(t),sh(t))){jw(t,e);return}(0,nh.boolOrEmptySchema)(t,e)}function sh({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 ih(t){return typeof t.schema!="boolean"}function jw(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&uh(t),Dw(t),Lw(t);let s=n.const("_errs",M.default.errors);ch(t,s),n.var(e,(0,N._)`${s} === ${M.default.errors}`)}function ah(t){(0,Zt.checkUnknownRules)(t),Zw(t)}function ch(t,e){if(t.opts.jtd)return th(t,[],!1,e);let r=(0,Qm.getSchemaTypes)(t.schema),n=(0,Qm.coerceAndCheckDataType)(t,r);th(t,r,!n,e)}function Zw(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Zt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function Mw(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Zt.checkStrictMode)(t,"default is ignored in the schema root")}function Dw(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,Pw.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function Lw(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function uh({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,N._)`${M.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,N.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,N._)`${M.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function qw(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,N._)`${M.default.errors} === 0`,()=>e.return(M.default.data),()=>e.throw((0,N._)`new ${o}(${M.default.vErrors})`)):(e.assign((0,N._)`${n}.errors`,M.default.vErrors),s.unevaluated&&Fw(t),e.return((0,N._)`${M.default.errors} === 0`))}function Fw({gen:t,evaluated:e,props:r,items:n}){r instanceof N.Name&&t.assign((0,N._)`${e}.props`,r),n instanceof N.Name&&t.assign((0,N._)`${e}.items`,n)}function th(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,Zt.schemaHasRulesButRef)(s,l))){o.block(()=>dh(t,"$ref",l.all.$ref.definition));return}c.jtd||Uw(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Hu.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Fs.checkDataType)(f.type,i,c.strictNumbers)),rh(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Fs.reportTypeError)(t)),o.endIf()):rh(t,f),a||o.if((0,N._)`${M.default.errors} === ${n||0}`))}}function rh(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,zw.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Hu.shouldUseRule)(n,s)&&dh(t,s.keyword,s.definition,e.type)})}function Uw(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(Vw(t,e),t.opts.allowUnionTypes||Hw(t,e),Bw(t,t.dataTypes))}function Vw(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{lh(t.dataTypes,r)||Bu(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),Ww(t,e)}}function Hw(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Bu(t,"use allowUnionTypes to allow union type keyword")}function Bw(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Hu.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>Kw(e,i))&&Bu(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function Kw(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function lh(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function Ww(t,e){let r=[];for(let n of t.dataTypes)lh(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Bu(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Zt.checkStrictMode)(t,e,t.opts.strictTypes)}var Us=class{constructor(e,r,n){if((0,co.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Zt.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",ph(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,co.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",M.default.errors))}result(e,r,n){this.failResult((0,N.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,N.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,N._)`${r} !== undefined && (${(0,N.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?ao.reportExtraError:ao.reportError)(this,this.def.error,r)}$dataError(){(0,ao.reportError)(this,this.def.$dataError||ao.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,ao.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=N.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=N.nil,r=N.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,N.or)((0,N._)`${o} === undefined`,r)),e!==N.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==N.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,N.or)(i(),a());function i(){if(n.length){if(!(r instanceof N.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,N._)`${(0,Fs.checkDataTypes)(c,r,s.opts.strictNumbers,Fs.DataType.Wrong)}`}return N.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,N._)`!${c}(${r})`}return N.nil}}subschema(e,r){let n=(0,Vu.getSubschema)(this.it,e);(0,Vu.extendSubschemaData)(n,this.it,e),(0,Vu.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return Aw(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Zt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Zt.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,N.Name)),!0}};tr.KeywordCxt=Us;function dh(t,e,r,n){let o=new Us(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,co.funcKeywordCode)(o,r):"macro"in r?(0,co.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,co.funcKeywordCode)(o,r)}var Jw=/^\/(?:[^~]|~0|~1)*$/,Gw=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function ph(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return M.default.rootData;if(t[0]==="/"){if(!Jw.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=M.default.rootData}else{let u=Gw.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,N._)`${s}${(0,N.getProperty)((0,Zt.unescapeJsonPointer)(u))}`,i=(0,N._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}tr.getData=ph});var Vs=T(Wu=>{"use strict";Object.defineProperty(Wu,"__esModule",{value:!0});var Ku=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Wu.default=Ku});var lo=T(Yu=>{"use strict";Object.defineProperty(Yu,"__esModule",{value:!0});var Ju=io(),Gu=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Ju.resolveUrl)(e,r,n),this.missingSchema=(0,Ju.normalizeId)((0,Ju.getFullPath)(e,this.missingRef))}};Yu.default=Gu});var Bs=T(st=>{"use strict";Object.defineProperty(st,"__esModule",{value:!0});st.resolveSchema=st.getCompilingSchema=st.resolveRef=st.compileSchema=st.SchemaEnv=void 0;var pt=F(),Yw=Vs(),jr=jt(),ft=io(),fh=X(),Xw=uo(),dn=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,ft.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};st.SchemaEnv=dn;function Qu(t){let e=mh.call(this,t);if(e)return e;let r=(0,ft.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new pt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:Yw.default,code:(0,pt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:jr.default.data,parentData:jr.default.parentData,parentDataProperty:jr.default.parentDataProperty,dataNames:[jr.default.data],dataPathArr:[pt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,pt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:pt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,pt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,Xw.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(jr.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${jr.default.self}`,`${jr.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 pt.Name?void 0:p,items:h instanceof pt.Name?void 0:h,dynamicProps:p instanceof pt.Name,dynamicItems:h instanceof pt.Name},m.source&&(m.source.evaluated=(0,pt.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)}}st.compileSchema=Qu;function Qw(t,e,r){var n;r=(0,ft.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=rk.call(this,t,r);if(s===void 0){let i=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;i&&(s=new dn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=ek.call(this,s)}st.resolveRef=Qw;function ek(t){return(0,ft.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Qu.call(this,t)}function mh(t){for(let e of this._compilations)if(tk(e,t))return e}st.getCompilingSchema=mh;function tk(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function rk(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Hs.call(this,t,e)}function Hs(t,e){let r=this.opts.uriResolver.parse(e),n=(0,ft._getFullPath)(this.opts.uriResolver,r),o=(0,ft.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Xu.call(this,r,t);let s=(0,ft.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Hs.call(this,t,i);return typeof a?.schema!="object"?void 0:Xu.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Qu.call(this,i),s===(0,ft.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,ft.resolveUrl)(this.opts.uriResolver,o,u)),new dn({schema:a,schemaId:c,root:t,baseId:o})}return Xu.call(this,r,i)}}st.resolveSchema=Hs;var nk=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Xu(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,fh.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!nk.has(a)&&u&&(e=(0,ft.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,fh.schemaHasRulesButRef)(r,this.RULES)){let a=(0,ft.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Hs.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new dn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var hh=T((rC,ok)=>{ok.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 tl=T((nC,vh)=>{"use strict";var sk=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),yh=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function el(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 ik=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function gh(t){return t.length=0,!0}function ak(t,e,r){if(t.length){let n=el(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function ck(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=ak;for(let c=0;c<t.length;c++){let u=t[c];if(!(u==="["||u==="]"))if(u===":"){if(s===!0&&(i=!0),!a(o,n,r))break;if(++e>7){r.error=!0;break}c>0&&t[c-1]===":"&&(s=!0),n.push(":");continue}else if(u==="%"){if(!a(o,n,r))break;a=gh}else{o.push(u);continue}}return o.length&&(a===gh?r.zone=o.join(""):i?n.push(o.join("")):n.push(el(o))),r.address=n.join(""),r}function _h(t){if(uk(t,":")<2)return{host:t,isIPV6:!1};let e=ck(t);if(e.error)return{host:t,isIPV6:!1};{let r=e.address,n=e.address;return e.zone&&(r+="%"+e.zone,n+="%25"+e.zone),{host:r,isIPV6:!0,escapedHost:n}}}function uk(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function lk(t){let e=t,r=[],n=-1,o=0;for(;o=e.length;){if(o===1){if(e===".")break;if(e==="/"){r.push("/");break}else{r.push(e);break}}else if(o===2){if(e[0]==="."){if(e[1]===".")break;if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&(e[1]==="."||e[1]==="/")){r.push("/");break}}else if(o===3&&e==="/.."){r.length!==0&&r.pop(),r.push("/");break}if(e[0]==="."){if(e[1]==="."){if(e[2]==="/"){e=e.slice(3);continue}}else if(e[1]==="/"){e=e.slice(2);continue}}else if(e[0]==="/"&&e[1]==="."){if(e[2]==="/"){e=e.slice(2);continue}else if(e[2]==="."&&e[3]==="/"){e=e.slice(3),r.length!==0&&r.pop();continue}}if((n=e.indexOf("/",1))===-1){r.push(e);break}else r.push(e.slice(0,n)),e=e.slice(n)}return r.join("")}function dk(t,e){let r=e!==!0?escape:unescape;return t.scheme!==void 0&&(t.scheme=r(t.scheme)),t.userinfo!==void 0&&(t.userinfo=r(t.userinfo)),t.host!==void 0&&(t.host=r(t.host)),t.path!==void 0&&(t.path=r(t.path)),t.query!==void 0&&(t.query=r(t.query)),t.fragment!==void 0&&(t.fragment=r(t.fragment)),t}function pk(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!yh(r)){let n=_h(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}vh.exports={nonSimpleDomain:ik,recomposeAuthority:pk,normalizeComponentEncoding:dk,removeDotSegments:lk,isIPv4:yh,isUUID:sk,normalizeIPv6:_h,stringArrayToHexStripped:el}});var kh=T((oC,wh)=>{"use strict";var{isUUID:fk}=tl(),mk=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,hk=["http","https","ws","wss","urn","urn:uuid"];function gk(t){return hk.indexOf(t)!==-1}function rl(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 xh(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function bh(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 yk(t){return t.secure=rl(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function _k(t){if((t.port===(rl(t)?443:80)||t.port==="")&&(t.port=void 0),typeof t.secure=="boolean"&&(t.scheme=t.secure?"wss":"ws",t.secure=void 0),t.resourceName){let[e,r]=t.resourceName.split("?");t.path=e&&e!=="/"?e:void 0,t.query=r,t.resourceName=void 0}return t.fragment=void 0,t}function vk(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(mk);if(r){let n=e.scheme||t.scheme||"urn";t.nid=r[1].toLowerCase(),t.nss=r[2];let o=`${n}:${e.nid||t.nid}`,s=nl(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function xk(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=nl(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 bk(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!fk(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function $k(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var $h={scheme:"http",domainHost:!0,parse:xh,serialize:bh},wk={scheme:"https",domainHost:$h.domainHost,parse:xh,serialize:bh},Ks={scheme:"ws",domainHost:!0,parse:yk,serialize:_k},kk={scheme:"wss",domainHost:Ks.domainHost,parse:Ks.parse,serialize:Ks.serialize},Sk={scheme:"urn",parse:vk,serialize:xk,skipNormalize:!0},Tk={scheme:"urn:uuid",parse:bk,serialize:$k,skipNormalize:!0},Ws={http:$h,https:wk,ws:Ks,wss:kk,urn:Sk,"urn:uuid":Tk};Object.setPrototypeOf(Ws,null);function nl(t){return t&&(Ws[t]||Ws[t.toLowerCase()])||void 0}wh.exports={wsIsSecure:rl,SCHEMES:Ws,isValidSchemeName:gk,getSchemeHandler:nl}});var Eh=T((sC,Gs)=>{"use strict";var{normalizeIPv6:Ek,removeDotSegments:po,recomposeAuthority:zk,normalizeComponentEncoding:Js,isIPv4:Pk,nonSimpleDomain:Rk}=tl(),{SCHEMES:Ik,getSchemeHandler:Sh}=kh();function Ok(t,e){return typeof t=="string"?t=wt(Mt(t,e),e):typeof t=="object"&&(t=Mt(wt(t,e),e)),t}function Nk(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=Th(Mt(t,n),Mt(e,n),n,!0);return n.skipEscape=!0,wt(o,n)}function Th(t,e,r,n){let o={};return n||(t=Mt(wt(t,r),r),e=Mt(wt(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=po(e.path||""),o.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=po(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=po(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?o.path="/"+e.path:t.path?o.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:o.path=e.path,o.path=po(o.path)),o.query=e.query):(o.path=t.path,e.query!==void 0?o.query=e.query:o.query=t.query),o.userinfo=t.userinfo,o.host=t.host,o.port=t.port),o.scheme=t.scheme),o.fragment=e.fragment,o}function Ck(t,e,r){return typeof t=="string"?(t=unescape(t),t=wt(Js(Mt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=wt(Js(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=wt(Js(Mt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=wt(Js(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function wt(t,e){let r={host:t.host,scheme:t.scheme,userinfo:t.userinfo,port:t.port,path:t.path,query:t.query,nid:t.nid,nss:t.nss,uuid:t.uuid,fragment:t.fragment,reference:t.reference,resourceName:t.resourceName,secure:t.secure,error:""},n=Object.assign({},e),o=[],s=Sh(n.scheme||r.scheme);s&&s.serialize&&s.serialize(r,n),r.path!==void 0&&(n.skipEscape?r.path=unescape(r.path):(r.path=escape(r.path),r.scheme!==void 0&&(r.path=r.path.split("%3A").join(":")))),n.reference!=="suffix"&&r.scheme&&o.push(r.scheme,":");let i=zk(r);if(i!==void 0&&(n.reference!=="suffix"&&o.push("//"),o.push(i),r.path&&r.path[0]!=="/"&&o.push("/")),r.path!==void 0){let a=r.path;!n.absolutePath&&(!s||!s.absolutePath)&&(a=po(a)),i===void 0&&a[0]==="/"&&a[1]==="/"&&(a="/%2F"+a.slice(2)),o.push(a)}return r.query!==void 0&&o.push("?",r.query),r.fragment!==void 0&&o.push("#",r.fragment),o.join("")}var Ak=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Mt(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(Ak);if(s){if(n.scheme=s[1],n.userinfo=s[3],n.host=s[4],n.port=parseInt(s[5],10),n.path=s[6]||"",n.query=s[7],n.fragment=s[8],isNaN(n.port)&&(n.port=s[5]),n.host)if(Pk(n.host)===!1){let c=Ek(n.host);n.host=c.host.toLowerCase(),o=c.isIPV6}else o=!0;n.scheme===void 0&&n.userinfo===void 0&&n.host===void 0&&n.port===void 0&&n.query===void 0&&!n.path?n.reference="same-document":n.scheme===void 0?n.reference="relative":n.fragment===void 0?n.reference="absolute":n.reference="uri",r.reference&&r.reference!=="suffix"&&r.reference!==n.reference&&(n.error=n.error||"URI is not a "+r.reference+" reference.");let i=Sh(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&Rk(n.host))try{n.host=URL.domainToASCII(n.host.toLowerCase())}catch(a){n.error=n.error||"Host's domain name can not be converted to ASCII: "+a}(!i||i&&!i.skipNormalize)&&(t.indexOf("%")!==-1&&(n.scheme!==void 0&&(n.scheme=unescape(n.scheme)),n.host!==void 0&&(n.host=unescape(n.host))),n.path&&(n.path=escape(unescape(n.path))),n.fragment&&(n.fragment=encodeURI(decodeURIComponent(n.fragment)))),i&&i.parse&&i.parse(n,r)}else n.error=n.error||"URI can not be parsed.";return n}var ol={SCHEMES:Ik,normalize:Ok,resolve:Nk,resolveComponent:Th,equal:Ck,serialize:wt,parse:Mt};Gs.exports=ol;Gs.exports.default=ol;Gs.exports.fastUri=ol});var Ph=T(sl=>{"use strict";Object.defineProperty(sl,"__esModule",{value:!0});var zh=Eh();zh.code='require("ajv/dist/runtime/uri").default';sl.default=zh});var Zh=T(Ee=>{"use strict";Object.defineProperty(Ee,"__esModule",{value:!0});Ee.CodeGen=Ee.Name=Ee.nil=Ee.stringify=Ee.str=Ee._=Ee.KeywordCxt=void 0;var jk=uo();Object.defineProperty(Ee,"KeywordCxt",{enumerable:!0,get:function(){return jk.KeywordCxt}});var pn=F();Object.defineProperty(Ee,"_",{enumerable:!0,get:function(){return pn._}});Object.defineProperty(Ee,"str",{enumerable:!0,get:function(){return pn.str}});Object.defineProperty(Ee,"stringify",{enumerable:!0,get:function(){return pn.stringify}});Object.defineProperty(Ee,"nil",{enumerable:!0,get:function(){return pn.nil}});Object.defineProperty(Ee,"Name",{enumerable:!0,get:function(){return pn.Name}});Object.defineProperty(Ee,"CodeGen",{enumerable:!0,get:function(){return pn.CodeGen}});var Zk=Vs(),Ch=lo(),Mk=Cu(),fo=Bs(),Dk=F(),mo=io(),Ys=so(),al=X(),Rh=hh(),Lk=Ph(),Ah=(t,e)=>new RegExp(t,e);Ah.code="new RegExp";var qk=["removeAdditional","useDefaults","coerceTypes"],Fk=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),Uk={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."},Vk={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},Ih=200;function Hk(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,_,x,b,k,P,se,ie,We,zt;let pe=t.strict,Dt=(e=t.code)===null||e===void 0?void 0:e.optimize,Ce=Dt===!0||Dt===void 0?1:Dt||0,Ro=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:Ah,zi=(o=t.uriResolver)!==null&&o!==void 0?o:Lk.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:pe)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:pe)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:pe)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:pe)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:pe)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Ce,regExp:Ro}:{optimize:Ce,regExp:Ro},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:Ih,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:Ih,meta:(_=t.meta)!==null&&_!==void 0?_:!0,messages:(x=t.messages)!==null&&x!==void 0?x:!0,inlineRefs:(b=t.inlineRefs)!==null&&b!==void 0?b:!0,schemaId:(k=t.schemaId)!==null&&k!==void 0?k:"$id",addUsedSchema:(P=t.addUsedSchema)!==null&&P!==void 0?P:!0,validateSchema:(se=t.validateSchema)!==null&&se!==void 0?se:!0,validateFormats:(ie=t.validateFormats)!==null&&ie!==void 0?ie:!0,unicodeRegExp:(We=t.unicodeRegExp)!==null&&We!==void 0?We:!0,int32range:(zt=t.int32range)!==null&&zt!==void 0?zt:!0,uriResolver:zi}}var ho=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...Hk(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new Dk.ValueScope({scope:{},prefixes:Fk,es5:r,lines:n}),this.logger=Yk(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,Mk.getRules)(),Oh.call(this,Uk,e,"NOT SUPPORTED"),Oh.call(this,Vk,e,"DEPRECATED","warn"),this._metaOpts=Jk.call(this),e.formats&&Kk.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&Wk.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),Bk.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=Rh;n==="id"&&(o={...Rh},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 Ch.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,mo.normalizeId)(r||s),this._checkUnique(r),this.schemas[r]=this._addSchema(e,n,r,o,!0),this}addMetaSchema(e,r,n=this.opts.validateSchema){return this.addSchema(e,r,!0,n),this}validateSchema(e,r){if(typeof e=="boolean")return!0;let n;if(n=e.$schema,n!==void 0&&typeof n!="string")throw new Error("$schema must be a string");if(n=n||this.opts.defaultMeta||this.defaultMeta(),!n)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let o=this.validate(n,e);if(!o&&r){let s="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(s);else throw new Error(s)}return o}getSchema(e){let r;for(;typeof(r=Nh.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new fo.SchemaEnv({schema:{},schemaId:n});if(r=fo.resolveSchema.call(this,o,e),!r)return;this.refs[e]=r}return r.validate||this._compileSchemaEnv(r)}removeSchema(e){if(e instanceof RegExp)return this._removeAllSchemas(this.schemas,e),this._removeAllSchemas(this.refs,e),this;switch(typeof e){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let r=Nh.call(this,e);return typeof r=="object"&&this._cache.delete(r.schema),delete this.schemas[e],delete this.refs[e],this}case"object":{let r=e;this._cache.delete(r);let n=e[this.opts.schemaId];return n&&(n=(0,mo.normalizeId)(n),delete this.schemas[n],delete this.refs[n]),this}default:throw new Error("ajv.removeSchema: invalid parameter")}}addVocabulary(e){for(let r of e)this.addKeyword(r);return this}addKeyword(e,r){let n;if(typeof e=="string")n=e,typeof r=="object"&&(this.logger.warn("these parameters are deprecated, see docs for addKeyword"),r.keyword=n);else if(typeof e=="object"&&r===void 0){if(r=e,n=r.keyword,Array.isArray(n)&&!n.length)throw new Error("addKeywords: keyword must be string or non-empty array")}else throw new Error("invalid addKeywords parameters");if(Qk.call(this,n,r),!r)return(0,al.eachItem)(n,s=>il.call(this,s)),this;tS.call(this,r);let o={...r,type:(0,Ys.getJSONTypes)(r.type),schemaType:(0,Ys.getJSONTypes)(r.schemaType)};return(0,al.eachItem)(n,o.type.length===0?s=>il.call(this,s,o):s=>o.type.forEach(i=>il.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]=jh(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,mo.normalizeId)(i||n);let u=mo.getSchemaRefs.call(this,e,n);return c=new fo.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):fo.compileSchema.call(this,e),!e.validate)throw new Error("ajv implementation error");return e.validate}_compileMetaSchema(e){let r=this.opts;this.opts=this._metaOpts;try{fo.compileSchema.call(this,e)}finally{this.opts=r}}};ho.ValidationError=Zk.default;ho.MissingRefError=Ch.default;Ee.default=ho;function Oh(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 Nh(t){return t=(0,mo.normalizeId)(t),this.schemas[t]||this.refs[t]}function Bk(){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 Kk(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function Wk(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 Jk(){let t={...this.opts};for(let e of qk)delete t[e];return t}var Gk={log(){},warn(){},error(){}};function Yk(t){if(t===!1)return Gk;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 Xk=/^[a-z_$][a-z0-9_$:-]*$/i;function Qk(t,e){let{RULES:r}=this;if((0,al.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!Xk.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 il(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,Ys.getJSONTypes)(e.type),schemaType:(0,Ys.getJSONTypes)(e.schemaType)}};e.before?eS.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 eS(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 tS(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=jh(e)),t.validateSchema=this.compile(e,!0))}var rS={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function jh(t){return{anyOf:[t,rS]}}});var Mh=T(cl=>{"use strict";Object.defineProperty(cl,"__esModule",{value:!0});var nS={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};cl.default=nS});var Fh=T(Zr=>{"use strict";Object.defineProperty(Zr,"__esModule",{value:!0});Zr.callRef=Zr.getValidate=void 0;var oS=lo(),Dh=ot(),Ke=F(),fn=jt(),Lh=Bs(),Xs=X(),sS={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=Lh.resolveRef.call(c,u,o,r);if(l===void 0)throw new oS.default(n.opts.uriResolver,o,r);if(l instanceof Lh.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Qs(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Qs(t,(0,Ke._)`${p}.validate`,u,u.$async)}function f(p){let h=qh(t,p);Qs(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,Ke.stringify)(p)}:{ref:p}),g=e.name("valid"),_=t.subschema({schema:p,dataTypes:[],schemaPath:Ke.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(_),t.ok(g)}}};function qh(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Ke._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Zr.getValidate=qh;function Qs(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?fn.default.this:Ke.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,Ke._)`await ${(0,Dh.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,Ke._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,Dh.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,Ke._)`${p}.errors`;o.assign(fn.default.vErrors,(0,Ke._)`${fn.default.vErrors} === null ? ${h} : ${fn.default.vErrors}.concat(${h})`),o.assign(fn.default.errors,(0,Ke._)`${fn.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=Xs.mergeEvaluated.props(o,g.props,s.props));else{let _=o.var("props",(0,Ke._)`${p}.evaluated.props`);s.props=Xs.mergeEvaluated.props(o,_,s.props,Ke.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Xs.mergeEvaluated.items(o,g.items,s.items));else{let _=o.var("items",(0,Ke._)`${p}.evaluated.items`);s.items=Xs.mergeEvaluated.items(o,_,s.items,Ke.Name)}}}Zr.callRef=Qs;Zr.default=sS});var Uh=T(ul=>{"use strict";Object.defineProperty(ul,"__esModule",{value:!0});var iS=Mh(),aS=Fh(),cS=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",iS.default,aS.default];ul.default=cS});var Vh=T(ll=>{"use strict";Object.defineProperty(ll,"__esModule",{value:!0});var ei=F(),rr=ei.operators,ti={maximum:{okStr:"<=",ok:rr.LTE,fail:rr.GT},minimum:{okStr:">=",ok:rr.GTE,fail:rr.LT},exclusiveMaximum:{okStr:"<",ok:rr.LT,fail:rr.GTE},exclusiveMinimum:{okStr:">",ok:rr.GT,fail:rr.LTE}},uS={message:({keyword:t,schemaCode:e})=>(0,ei.str)`must be ${ti[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,ei._)`{comparison: ${ti[t].okStr}, limit: ${e}}`},lS={keyword:Object.keys(ti),type:"number",schemaType:"number",$data:!0,error:uS,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,ei._)`${r} ${ti[e].fail} ${n} || isNaN(${r})`)}};ll.default=lS});var Hh=T(dl=>{"use strict";Object.defineProperty(dl,"__esModule",{value:!0});var go=F(),dS={message:({schemaCode:t})=>(0,go.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,go._)`{multipleOf: ${t}}`},pS={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:dS,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,go._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,go._)`${i} !== parseInt(${i})`;t.fail$data((0,go._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};dl.default=pS});var Kh=T(pl=>{"use strict";Object.defineProperty(pl,"__esModule",{value:!0});function Bh(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}pl.default=Bh;Bh.code='require("ajv/dist/runtime/ucs2length").default'});var Wh=T(fl=>{"use strict";Object.defineProperty(fl,"__esModule",{value:!0});var Mr=F(),fS=X(),mS=Kh(),hS={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,Mr.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,Mr._)`{limit: ${t}}`},gS={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:hS,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?Mr.operators.GT:Mr.operators.LT,i=o.opts.unicode===!1?(0,Mr._)`${r}.length`:(0,Mr._)`${(0,fS.useFunc)(t.gen,mS.default)}(${r})`;t.fail$data((0,Mr._)`${i} ${s} ${n}`)}};fl.default=gS});var Jh=T(ml=>{"use strict";Object.defineProperty(ml,"__esModule",{value:!0});var yS=ot(),_S=X(),mn=F(),vS={message:({schemaCode:t})=>(0,mn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,mn._)`{pattern: ${t}}`},xS={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:vS,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,mn._)`new RegExp`:(0,_S.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,mn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,mn._)`!${l}`)}else{let c=(0,yS.usePattern)(t,o);t.fail$data((0,mn._)`!${c}.test(${r})`)}}};ml.default=xS});var Gh=T(hl=>{"use strict";Object.defineProperty(hl,"__esModule",{value:!0});var yo=F(),bS={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,yo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,yo._)`{limit: ${t}}`},$S={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:bS,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?yo.operators.GT:yo.operators.LT;t.fail$data((0,yo._)`Object.keys(${r}).length ${o} ${n}`)}};hl.default=$S});var Yh=T(gl=>{"use strict";Object.defineProperty(gl,"__esModule",{value:!0});var _o=ot(),vo=F(),wS=X(),kS={message:({params:{missingProperty:t}})=>(0,vo.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,vo._)`{missingProperty: ${t}}`},SS={keyword:"required",type:"object",schemaType:"array",$data:!0,error:kS,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,wS.checkStrictMode)(i,_,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(vo.nil,d);else for(let m of r)(0,_o.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,_o.checkMissingProp)(t,r,m)),(0,_o.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,_o.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,_o.propertyInData)(e,o,m,a.ownProperties)),e.if((0,vo.not)(p),()=>{t.error(),e.break()})},vo.nil)}}};gl.default=SS});var Xh=T(yl=>{"use strict";Object.defineProperty(yl,"__esModule",{value:!0});var xo=F(),TS={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,xo.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,xo._)`{limit: ${t}}`},ES={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:TS,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?xo.operators.GT:xo.operators.LT;t.fail$data((0,xo._)`${r}.length ${o} ${n}`)}};yl.default=ES});var ri=T(_l=>{"use strict";Object.defineProperty(_l,"__esModule",{value:!0});var Qh=Fu();Qh.code='require("ajv/dist/runtime/equal").default';_l.default=Qh});var eg=T(xl=>{"use strict";Object.defineProperty(xl,"__esModule",{value:!0});var vl=so(),ze=F(),zS=X(),PS=ri(),RS={message:({params:{i:t,j:e}})=>(0,ze.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,ze._)`{i: ${t}, j: ${e}}`},IS={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:RS,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,vl.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,ze._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,ze._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,ze._)`${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,vl.checkDataTypes)(u,g,a.opts.strictNumbers,vl.DataType.Wrong),x=e.const("indices",(0,ze._)`{}`);e.for((0,ze._)`;${p}--;`,()=>{e.let(g,(0,ze._)`${r}[${p}]`),e.if(_,(0,ze._)`continue`),u.length>1&&e.if((0,ze._)`typeof ${g} == "string"`,(0,ze._)`${g} += "_"`),e.if((0,ze._)`typeof ${x}[${g}] == "number"`,()=>{e.assign(h,(0,ze._)`${x}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,ze._)`${x}[${g}] = ${p}`)})}function m(p,h){let g=(0,zS.useFunc)(e,PS.default),_=e.name("outer");e.label(_).for((0,ze._)`;${p}--;`,()=>e.for((0,ze._)`${h} = ${p}; ${h}--;`,()=>e.if((0,ze._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(_)})))}}};xl.default=IS});var tg=T($l=>{"use strict";Object.defineProperty($l,"__esModule",{value:!0});var bl=F(),OS=X(),NS=ri(),CS={message:"must be equal to constant",params:({schemaCode:t})=>(0,bl._)`{allowedValue: ${t}}`},AS={keyword:"const",$data:!0,error:CS,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,bl._)`!${(0,OS.useFunc)(e,NS.default)}(${r}, ${o})`):t.fail((0,bl._)`${s} !== ${r}`)}};$l.default=AS});var rg=T(wl=>{"use strict";Object.defineProperty(wl,"__esModule",{value:!0});var bo=F(),jS=X(),ZS=ri(),MS={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,bo._)`{allowedValues: ${t}}`},DS={keyword:"enum",schemaType:"array",$data:!0,error:MS,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,jS.useFunc)(e,ZS.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,bo.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,bo._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,bo._)`${u()}(${r}, ${m}[${p}])`:(0,bo._)`${r} === ${h}`}}};wl.default=DS});var ng=T(kl=>{"use strict";Object.defineProperty(kl,"__esModule",{value:!0});var LS=Vh(),qS=Hh(),FS=Wh(),US=Jh(),VS=Gh(),HS=Yh(),BS=Xh(),KS=eg(),WS=tg(),JS=rg(),GS=[LS.default,qS.default,FS.default,US.default,VS.default,HS.default,BS.default,KS.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},WS.default,JS.default];kl.default=GS});var Tl=T($o=>{"use strict";Object.defineProperty($o,"__esModule",{value:!0});$o.validateAdditionalItems=void 0;var Dr=F(),Sl=X(),YS={message:({params:{len:t}})=>(0,Dr.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Dr._)`{limit: ${t}}`},XS={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:YS,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Sl.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}og(t,n)}};function og(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,Dr._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,Dr._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Sl.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,Dr._)`${a} <= ${e.length}`);r.if((0,Dr.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Sl.Type.Num},u),i.allErrors||r.if((0,Dr.not)(u),()=>r.break())})}}$o.validateAdditionalItems=og;$o.default=XS});var El=T(wo=>{"use strict";Object.defineProperty(wo,"__esModule",{value:!0});wo.validateTuple=void 0;var sg=F(),ni=X(),QS=ot(),eT={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,ni.alwaysValidSchema)(r,e)&&t.ok((0,QS.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=ni.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,sg._)`${s}.length`);r.forEach((d,f)=>{(0,ni.alwaysValidSchema)(a,d)||(n.if((0,sg._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:m}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,ni.checkStrictMode)(a,g,f.strictTuples)}}}wo.validateTuple=ig;wo.default=eT});var ag=T(zl=>{"use strict";Object.defineProperty(zl,"__esModule",{value:!0});var tT=El(),rT={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,tT.validateTuple)(t,"items")};zl.default=rT});var ug=T(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});var cg=F(),nT=X(),oT=ot(),sT=Tl(),iT={message:({params:{len:t}})=>(0,cg.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,cg._)`{limit: ${t}}`},aT={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:iT,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,nT.alwaysValidSchema)(n,e)&&(o?(0,sT.validateAdditionalItems)(t,o):t.ok((0,oT.validateArray)(t)))}};Pl.default=aT});var lg=T(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});var it=F(),oi=X(),cT={message:({params:{min:t,max:e}})=>e===void 0?(0,it.str)`must contain at least ${t} valid item(s)`:(0,it.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,it._)`{minContains: ${t}}`:(0,it._)`{minContains: ${t}, maxContains: ${e}}`},uT={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:cT,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,it._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,oi.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,oi.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,oi.alwaysValidSchema)(s,r)){let h=(0,it._)`${l} >= ${i}`;a!==void 0&&(h=(0,it._)`${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,it._)`${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:oi.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,it._)`${h}++`),a===void 0?e.if((0,it._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,it._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,it._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Rl.default=uT});var fg=T(kt=>{"use strict";Object.defineProperty(kt,"__esModule",{value:!0});kt.validateSchemaDeps=kt.validatePropertyDeps=kt.error=void 0;var Il=F(),lT=X(),ko=ot();kt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Il.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Il._)`{property: ${t},
|
|
7
|
+
missingProperty: ${n},
|
|
8
|
+
depsCount: ${e},
|
|
9
|
+
deps: ${r}}`};var dT={keyword:"dependencies",type:"object",schemaType:"object",error:kt.error,code(t){let[e,r]=pT(t);dg(t,e),pg(t,r)}};function pT({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let o=Array.isArray(t[n])?e:r;o[n]=t[n]}return[e,r]}function dg(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,ko.propertyInData)(r,n,i,o.opts.ownProperties);t.setParams({property:i,depsCount:a.length,deps:a.join(", ")}),o.allErrors?r.if(c,()=>{for(let u of a)(0,ko.checkReportMissingProp)(t,u)}):(r.if((0,Il._)`${c} && (${(0,ko.checkMissingProp)(t,a,s)})`),(0,ko.reportMissingProp)(t,s),r.else())}}kt.validatePropertyDeps=dg;function pg(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,lT.alwaysValidSchema)(s,e[a])||(r.if((0,ko.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}kt.validateSchemaDeps=pg;kt.default=dT});var hg=T(Ol=>{"use strict";Object.defineProperty(Ol,"__esModule",{value:!0});var mg=F(),fT=X(),mT={message:"property name must be valid",params:({params:t})=>(0,mg._)`{propertyName: ${t.propertyName}}`},hT={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:mT,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,fT.alwaysValidSchema)(o,r))return;let s=e.name("valid");e.forIn("key",n,i=>{t.setParams({propertyName:i}),t.subschema({keyword:"propertyNames",data:i,dataTypes:["string"],propertyName:i,compositeRule:!0},s),e.if((0,mg.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Ol.default=hT});var Cl=T(Nl=>{"use strict";Object.defineProperty(Nl,"__esModule",{value:!0});var si=ot(),mt=F(),gT=jt(),ii=X(),yT={message:"must NOT have additional properties",params:({params:t})=>(0,mt._)`{additionalProperty: ${t.additionalProperty}}`},_T={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:yT,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,ii.alwaysValidSchema)(i,r))return;let u=(0,si.allSchemaProperties)(n.properties),l=(0,si.allSchemaProperties)(n.patternProperties);d(),t.ok((0,mt._)`${s} === ${gT.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 x=(0,ii.schemaRefOrVal)(i,n.properties,"properties");_=(0,si.isOwnProperty)(e,x,g)}else u.length?_=(0,mt.or)(...u.map(x=>(0,mt._)`${g} === ${x}`)):_=mt.nil;return l.length&&(_=(0,mt.or)(_,...l.map(x=>(0,mt._)`${(0,si.usePattern)(t,x)}.test(${g})`))),(0,mt.not)(_)}function m(g){e.code((0,mt._)`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,ii.alwaysValidSchema)(i,r)){let _=e.name("valid");c.removeAdditional==="failing"?(h(g,_,!1),e.if((0,mt.not)(_),()=>{t.reset(),m(g)})):(h(g,_),a||e.if((0,mt.not)(_),()=>e.break()))}}function h(g,_,x){let b={keyword:"additionalProperties",dataProp:g,dataPropType:ii.Type.Str};x===!1&&Object.assign(b,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(b,_)}}};Nl.default=_T});var _g=T(jl=>{"use strict";Object.defineProperty(jl,"__esModule",{value:!0});var vT=uo(),gg=ot(),Al=X(),yg=Cl(),xT={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&&yg.default.code(new vT.KeywordCxt(s,yg.default,"additionalProperties"));let i=(0,gg.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Al.mergeEvaluated.props(e,(0,Al.toHash)(i),s.props));let a=i.filter(d=>!(0,Al.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,gg.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)}}};jl.default=xT});var $g=T(Zl=>{"use strict";Object.defineProperty(Zl,"__esModule",{value:!0});var vg=ot(),ai=F(),xg=X(),bg=X(),bT={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,vg.allSchemaProperties)(r),c=a.filter(h=>(0,xg.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 ai.Name)&&(s.props=(0,bg.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,xg.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,ai._)`${(0,vg.usePattern)(t,h)}.test(${g})`,()=>{let _=c.includes(h);_||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:bg.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,ai._)`${d}[${g}]`,!0):!_&&!s.allErrors&&e.if((0,ai.not)(l),()=>e.break())})})}}};Zl.default=bT});var wg=T(Ml=>{"use strict";Object.defineProperty(Ml,"__esModule",{value:!0});var $T=X(),wT={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,$T.alwaysValidSchema)(n,r)){t.fail();return}let o=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),t.failResult(o,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};Ml.default=wT});var kg=T(Dl=>{"use strict";Object.defineProperty(Dl,"__esModule",{value:!0});var kT=ot(),ST={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:kT.validateUnion,error:{message:"must match a schema in anyOf"}};Dl.default=ST});var Sg=T(Ll=>{"use strict";Object.defineProperty(Ll,"__esModule",{value:!0});var ci=F(),TT=X(),ET={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,ci._)`{passingSchemas: ${t.passing}}`},zT={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:ET,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,TT.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,ci._)`${c} && ${i}`).assign(i,!1).assign(a,(0,ci._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,ci.Name)})})}}};Ll.default=zT});var Tg=T(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});var PT=X(),RT={keyword:"allOf",schemaType:"array",code(t){let{gen:e,schema:r,it:n}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");let o=e.name("valid");r.forEach((s,i)=>{if((0,PT.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};ql.default=RT});var Pg=T(Fl=>{"use strict";Object.defineProperty(Fl,"__esModule",{value:!0});var ui=F(),zg=X(),IT={message:({params:t})=>(0,ui.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,ui._)`{failingKeyword: ${t.ifClause}}`},OT={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:IT,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,zg.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Eg(n,"then"),s=Eg(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,ui.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,ui._)`${l}`):t.setParams({ifClause:l})}}}};function Eg(t,e){let r=t.schema[e];return r!==void 0&&!(0,zg.alwaysValidSchema)(t,r)}Fl.default=OT});var Rg=T(Ul=>{"use strict";Object.defineProperty(Ul,"__esModule",{value:!0});var NT=X(),CT={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,NT.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Ul.default=CT});var Ig=T(Vl=>{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});var AT=Tl(),jT=ag(),ZT=El(),MT=ug(),DT=lg(),LT=fg(),qT=hg(),FT=Cl(),UT=_g(),VT=$g(),HT=wg(),BT=kg(),KT=Sg(),WT=Tg(),JT=Pg(),GT=Rg();function YT(t=!1){let e=[HT.default,BT.default,KT.default,WT.default,JT.default,GT.default,qT.default,FT.default,LT.default,UT.default,VT.default];return t?e.push(jT.default,MT.default):e.push(AT.default,ZT.default),e.push(DT.default),e}Vl.default=YT});var Og=T(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});var ve=F(),XT={message:({schemaCode:t})=>(0,ve.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ve._)`{format: ${t}}`},QT={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:XT,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,ve._)`${p}[${i}]`),g=r.let("fType"),_=r.let("format");r.if((0,ve._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,ve._)`${h}.type || "string"`).assign(_,(0,ve._)`${h}.validate`),()=>r.assign(g,(0,ve._)`"string"`).assign(_,h)),t.fail$data((0,ve.or)(x(),b()));function x(){return c.strictSchema===!1?ve.nil:(0,ve._)`${i} && !${_}`}function b(){let k=l.$async?(0,ve._)`(${h}.async ? await ${_}(${n}) : ${_}(${n}))`:(0,ve._)`${_}(${n})`,P=(0,ve._)`(typeof ${_} == "function" ? ${k} : ${_}.test(${n}))`;return(0,ve._)`${_} && ${_} !== true && ${g} === ${e} && !${P}`}}function m(){let p=d.formats[s];if(!p){x();return}if(p===!0)return;let[h,g,_]=b(p);h===e&&t.pass(k());function x(){if(c.strictSchema===!1){d.logger.warn(P());return}throw new Error(P());function P(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function b(P){let se=P instanceof RegExp?(0,ve.regexpCode)(P):c.code.formats?(0,ve._)`${c.code.formats}${(0,ve.getProperty)(s)}`:void 0,ie=r.scopeValue("formats",{key:s,ref:P,code:se});return typeof P=="object"&&!(P instanceof RegExp)?[P.type||"string",P.validate,(0,ve._)`${ie}.validate`]:["string",P,ie]}function k(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ve._)`await ${_}(${n})`}return typeof g=="function"?(0,ve._)`${_}(${n})`:(0,ve._)`${_}.test(${n})`}}}};Hl.default=QT});var Ng=T(Bl=>{"use strict";Object.defineProperty(Bl,"__esModule",{value:!0});var eE=Og(),tE=[eE.default];Bl.default=tE});var Cg=T(hn=>{"use strict";Object.defineProperty(hn,"__esModule",{value:!0});hn.contentVocabulary=hn.metadataVocabulary=void 0;hn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];hn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var jg=T(Kl=>{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});var rE=Uh(),nE=ng(),oE=Ig(),sE=Ng(),Ag=Cg(),iE=[rE.default,nE.default,(0,oE.default)(),sE.default,Ag.metadataVocabulary,Ag.contentVocabulary];Kl.default=iE});var Mg=T(li=>{"use strict";Object.defineProperty(li,"__esModule",{value:!0});li.DiscrError=void 0;var Zg;(function(t){t.Tag="tag",t.Mapping="mapping"})(Zg||(li.DiscrError=Zg={}))});var Lg=T(Jl=>{"use strict";Object.defineProperty(Jl,"__esModule",{value:!0});var gn=F(),Wl=Mg(),Dg=Bs(),aE=lo(),cE=X(),uE={message:({params:{discrError:t,tagName:e}})=>t===Wl.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,gn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},lE={keyword:"discriminator",type:"object",schemaType:"object",error:uE,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,gn._)`${r}${(0,gn.getProperty)(a)}`);e.if((0,gn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Wl.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,gn._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:Wl.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,gn.Name),p}function f(){var m;let p={},h=_(o),g=!0;for(let k=0;k<i.length;k++){let P=i[k];if(P?.$ref&&!(0,cE.schemaHasRulesButRef)(P,s.self.RULES)){let ie=P.$ref;if(P=Dg.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,ie),P instanceof Dg.SchemaEnv&&(P=P.schema),P===void 0)throw new aE.default(s.opts.uriResolver,s.baseId,ie)}let se=(m=P?.properties)===null||m===void 0?void 0:m[a];if(typeof se!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||_(P)),x(se,k)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function _({required:k}){return Array.isArray(k)&&k.includes(a)}function x(k,P){if(k.const)b(k.const,P);else if(k.enum)for(let se of k.enum)b(se,P);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function b(k,P){if(typeof k!="string"||k in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[k]=P}}}};Jl.default=lE});var qg=T((KC,dE)=>{dE.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 Yl=T((de,Gl)=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.MissingRefError=de.ValidationError=de.CodeGen=de.Name=de.nil=de.stringify=de.str=de._=de.KeywordCxt=de.Ajv=void 0;var pE=Zh(),fE=jg(),mE=Lg(),Fg=qg(),hE=["/properties"],di="http://json-schema.org/draft-07/schema",yn=class extends pE.default{_addVocabularies(){super._addVocabularies(),fE.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(mE.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Fg,hE):Fg;this.addMetaSchema(e,di,!1),this.refs["http://json-schema.org/schema"]=di}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(di)?di:void 0)}};de.Ajv=yn;Gl.exports=de=yn;Gl.exports.Ajv=yn;Object.defineProperty(de,"__esModule",{value:!0});de.default=yn;var gE=uo();Object.defineProperty(de,"KeywordCxt",{enumerable:!0,get:function(){return gE.KeywordCxt}});var _n=F();Object.defineProperty(de,"_",{enumerable:!0,get:function(){return _n._}});Object.defineProperty(de,"str",{enumerable:!0,get:function(){return _n.str}});Object.defineProperty(de,"stringify",{enumerable:!0,get:function(){return _n.stringify}});Object.defineProperty(de,"nil",{enumerable:!0,get:function(){return _n.nil}});Object.defineProperty(de,"Name",{enumerable:!0,get:function(){return _n.Name}});Object.defineProperty(de,"CodeGen",{enumerable:!0,get:function(){return _n.CodeGen}});var yE=Vs();Object.defineProperty(de,"ValidationError",{enumerable:!0,get:function(){return yE.default}});var _E=lo();Object.defineProperty(de,"MissingRefError",{enumerable:!0,get:function(){return _E.default}})});var Gg=T(Tt=>{"use strict";Object.defineProperty(Tt,"__esModule",{value:!0});Tt.formatNames=Tt.fastFormats=Tt.fullFormats=void 0;function St(t,e){return{validate:t,compare:e}}Tt.fullFormats={date:St(Bg,td),time:St(Ql(!0),rd),"date-time":St(Ug(!0),Wg),"iso-time":St(Ql(),Kg),"iso-date-time":St(Ug(),Jg),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:kE,"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:IE,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:SE,int32:{type:"number",validate:zE},int64:{type:"number",validate:PE},float:{type:"number",validate:Hg},double:{type:"number",validate:Hg},password:!0,binary:!0};Tt.fastFormats={...Tt.fullFormats,date:St(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,td),time:St(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,rd),"date-time":St(/^\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,Wg),"iso-time":St(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Kg),"iso-date-time":St(/^\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,Jg),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};Tt.formatNames=Object.keys(Tt.fullFormats);function vE(t){return t%4===0&&(t%100!==0||t%400===0)}var xE=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,bE=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Bg(t){let e=xE.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&&vE(r)?29:bE[n])}function td(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Xl=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Ql(t){return function(r){let n=Xl.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 rd(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 Kg(t,e){if(!(t&&e))return;let r=Xl.exec(t),n=Xl.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 ed=/t|\s/i;function Ug(t){let e=Ql(t);return function(n){let o=n.split(ed);return o.length===2&&Bg(o[0])&&e(o[1])}}function Wg(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Jg(t,e){if(!(t&&e))return;let[r,n]=t.split(ed),[o,s]=e.split(ed),i=td(r,o);if(i!==void 0)return i||rd(n,s)}var $E=/\/|:/,wE=/^(?:[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 kE(t){return $E.test(t)&&wE.test(t)}var Vg=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function SE(t){return Vg.lastIndex=0,Vg.test(t)}var TE=-(2**31),EE=2**31-1;function zE(t){return Number.isInteger(t)&&t<=EE&&t>=TE}function PE(t){return Number.isInteger(t)}function Hg(){return!0}var RE=/[^\\]\\Z/;function IE(t){if(RE.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Yg=T(vn=>{"use strict";Object.defineProperty(vn,"__esModule",{value:!0});vn.formatLimitDefinition=void 0;var OE=Yl(),ht=F(),nr=ht.operators,pi={formatMaximum:{okStr:"<=",ok:nr.LTE,fail:nr.GT},formatMinimum:{okStr:">=",ok:nr.GTE,fail:nr.LT},formatExclusiveMaximum:{okStr:"<",ok:nr.LT,fail:nr.GTE},formatExclusiveMinimum:{okStr:">",ok:nr.GT,fail:nr.LTE}},NE={message:({keyword:t,schemaCode:e})=>(0,ht.str)`should be ${pi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,ht._)`{comparison: ${pi[t].okStr}, limit: ${e}}`};vn.formatLimitDefinition={keyword:Object.keys(pi),type:"string",schemaType:"string",$data:!0,error:NE,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 OE.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,ht._)`${f}[${c.schemaCode}]`);t.fail$data((0,ht.or)((0,ht._)`typeof ${m} != "object"`,(0,ht._)`${m} instanceof RegExp`,(0,ht._)`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,ht._)`${i.code.formats}${(0,ht.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,ht._)`${f}.compare(${r}, ${n}) ${pi[o].fail} 0`}},dependencies:["format"]};var CE=t=>(t.addKeyword(vn.formatLimitDefinition),t);vn.default=CE});var ty=T((So,ey)=>{"use strict";Object.defineProperty(So,"__esModule",{value:!0});var xn=Gg(),AE=Yg(),nd=F(),Xg=new nd.Name("fullFormats"),jE=new nd.Name("fastFormats"),od=(t,e={keywords:!0})=>{if(Array.isArray(e))return Qg(t,e,xn.fullFormats,Xg),t;let[r,n]=e.mode==="fast"?[xn.fastFormats,jE]:[xn.fullFormats,Xg],o=e.formats||xn.formatNames;return Qg(t,o,r,n),e.keywords&&(0,AE.default)(t),t};od.get=(t,e="full")=>{let n=(e==="fast"?xn.fastFormats:xn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Qg(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,nd._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}ey.exports=So=od;Object.defineProperty(So,"__esModule",{value:!0});So.default=od});var V={};Ri(V,{BRAND:()=>$_,DIRTY:()=>ar,EMPTY_PATH:()=>e_,INVALID:()=>A,NEVER:()=>sv,OK:()=>Re,ParseStatus:()=>$e,Schema:()=>q,ZodAny:()=>Ft,ZodArray:()=>Ot,ZodBigInt:()=>ur,ZodBoolean:()=>lr,ZodBranded:()=>kn,ZodCatch:()=>br,ZodDate:()=>dr,ZodDefault:()=>xr,ZodDiscriminatedUnion:()=>No,ZodEffects:()=>Qe,ZodEnum:()=>_r,ZodError:()=>Le,ZodFirstPartyTypeKind:()=>w,ZodFunction:()=>Ao,ZodIntersection:()=>hr,ZodIssueCode:()=>$,ZodLazy:()=>gr,ZodLiteral:()=>yr,ZodMap:()=>Br,ZodNaN:()=>Wr,ZodNativeEnum:()=>vr,ZodNever:()=>at,ZodNull:()=>fr,ZodNullable:()=>vt,ZodNumber:()=>cr,ZodObject:()=>Fe,ZodOptional:()=>qe,ZodParsedType:()=>E,ZodPipeline:()=>Sn,ZodPromise:()=>Ut,ZodReadonly:()=>$r,ZodRecord:()=>Co,ZodSchema:()=>q,ZodSet:()=>Kr,ZodString:()=>qt,ZodSymbol:()=>Vr,ZodTransformer:()=>Qe,ZodTuple:()=>_t,ZodType:()=>q,ZodUndefined:()=>pr,ZodUnion:()=>mr,ZodUnknown:()=>It,ZodVoid:()=>Hr,addIssueToContext:()=>S,any:()=>I_,array:()=>A_,bigint:()=>T_,boolean:()=>Od,coerce:()=>ov,custom:()=>Pd,date:()=>E_,datetimeRegex:()=>Ed,defaultErrorMap:()=>Pt,discriminatedUnion:()=>M_,effect:()=>G_,enum:()=>K_,function:()=>V_,getErrorMap:()=>qr,getParsedType:()=>yt,instanceof:()=>k_,intersection:()=>D_,isAborted:()=>Io,isAsync:()=>Fr,isDirty:()=>Oo,isValid:()=>Lt,late:()=>w_,lazy:()=>H_,literal:()=>B_,makeIssue:()=>wn,map:()=>F_,nan:()=>S_,nativeEnum:()=>W_,never:()=>N_,null:()=>R_,nullable:()=>X_,number:()=>Id,object:()=>Ci,objectUtil:()=>Ii,oboolean:()=>nv,onumber:()=>rv,optional:()=>Y_,ostring:()=>tv,pipeline:()=>ev,preprocess:()=>Q_,promise:()=>J_,quotelessJson:()=>Yy,record:()=>q_,set:()=>U_,setErrorMap:()=>Qy,strictObject:()=>j_,string:()=>Rd,symbol:()=>z_,transformer:()=>G_,tuple:()=>L_,undefined:()=>P_,union:()=>Z_,unknown:()=>O_,util:()=>B,void:()=>C_});var B;(function(t){t.assertEqual=o=>{};function e(o){}t.assertIs=e;function r(o){throw new Error}t.assertNever=r,t.arrayToEnum=o=>{let s={};for(let i of o)s[i]=i;return s},t.getValidEnumValues=o=>{let s=t.objectKeys(o).filter(a=>typeof o[o[a]]!="number"),i={};for(let a of s)i[a]=o[a];return t.objectValues(i)},t.objectValues=o=>t.objectKeys(o).map(function(s){return o[s]}),t.objectKeys=typeof Object.keys=="function"?o=>Object.keys(o):o=>{let s=[];for(let i in o)Object.prototype.hasOwnProperty.call(o,i)&&s.push(i);return s},t.find=(o,s)=>{for(let i of o)if(s(i))return i},t.isInteger=typeof Number.isInteger=="function"?o=>Number.isInteger(o):o=>typeof o=="number"&&Number.isFinite(o)&&Math.floor(o)===o;function n(o,s=" | "){return o.map(i=>typeof i=="string"?`'${i}'`:i).join(s)}t.joinValues=n,t.jsonStringifyReplacer=(o,s)=>typeof s=="bigint"?s.toString():s})(B||(B={}));var Ii;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Ii||(Ii={}));var E=B.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),yt=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 $=B.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Yy=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Le=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,B.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Le.create=t=>new Le(t);var Xy=(t,e)=>{let r;switch(t.code){case $.invalid_type:t.received===E.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case $.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,B.jsonStringifyReplacer)}`;break;case $.unrecognized_keys:r=`Unrecognized key(s) in object: ${B.joinValues(t.keys,", ")}`;break;case $.invalid_union:r="Invalid input";break;case $.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${B.joinValues(t.options)}`;break;case $.invalid_enum_value:r=`Invalid enum value. Expected ${B.joinValues(t.options)}, received '${t.received}'`;break;case $.invalid_arguments:r="Invalid function arguments";break;case $.invalid_return_type:r="Invalid function return type";break;case $.invalid_date:r="Invalid date";break;case $.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:B.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case $.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case $.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case $.custom:r="Invalid input";break;case $.invalid_intersection_types:r="Intersection results could not be merged";break;case $.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case $.not_finite:r="Number must be finite";break;default:r=e.defaultError,B.assertNever(t)}return{message:r}},Pt=Xy;var $d=Pt;function Qy(t){$d=t}function qr(){return $d}var wn=t=>{let{data:e,path:r,errorMaps:n,issueData:o}=t,s=[...r,...o.path||[]],i={...o,path:s};if(o.message!==void 0)return{...o,path:s,message:o.message};let a="",c=n.filter(u=>!!u).slice().reverse();for(let u of c)a=u(i,{data:e,defaultError:a}).message;return{...o,path:s,message:a}},e_=[];function S(t,e){let r=qr(),n=wn({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Pt?void 0:Pt].filter(o=>!!o)});t.common.issues.push(n)}var $e=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 A;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 A;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}}},A=Object.freeze({status:"aborted"}),ar=t=>({status:"dirty",value:t}),Re=t=>({status:"valid",value:t}),Io=t=>t.status==="aborted",Oo=t=>t.status==="dirty",Lt=t=>t.status==="valid",Fr=t=>typeof Promise<"u"&&t instanceof Promise;var R;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(R||(R={}));var Xe=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}},wd=(t,e)=>{if(Lt(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 Le(t.common.issues);return this._error=r,this._error}}};function D(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(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 q=class{get description(){return this._def.description}_getType(e){return yt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:yt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new $e,ctx:{common:e.parent.common,data:e.data,parsedType:yt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Fr(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:yt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return wd(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:yt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Lt(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=>Lt(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:yt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(Fr(o)?o:Promise.resolve(o));return wd(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:$.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new Qe({schema:this,typeName:w.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 qe.create(this,this._def)}nullable(){return vt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ot.create(this)}promise(){return Ut.create(this,this._def)}or(e){return mr.create([this,e],this._def)}and(e){return hr.create(this,e,this._def)}transform(e){return new Qe({...D(this._def),schema:this,typeName:w.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new xr({...D(this._def),innerType:this,defaultValue:r,typeName:w.ZodDefault})}brand(){return new kn({typeName:w.ZodBranded,type:this,...D(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new br({...D(this._def),innerType:this,catchValue:r,typeName:w.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return Sn.create(this,e)}readonly(){return $r.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},t_=/^c[^\s-]{8,}$/i,r_=/^[0-9a-z]+$/,n_=/^[0-9A-HJKMNP-TV-Z]{26}$/i,o_=/^[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,s_=/^[a-z0-9_-]{21}$/i,i_=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,a_=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,c_=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,u_="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Oi,l_=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,d_=/^(?:(?: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])$/,p_=/^(([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]))$/,f_=/^(([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])$/,m_=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,h_=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,Sd="((\\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])))",g_=new RegExp(`^${Sd}$`);function Td(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 y_(t){return new RegExp(`^${Td(t)}$`)}function Ed(t){let e=`${Sd}T${Td(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 __(t,e){return!!((e==="v4"||!e)&&l_.test(t)||(e==="v6"||!e)&&p_.test(t))}function v_(t,e){if(!i_.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 x_(t,e){return!!((e==="v4"||!e)&&d_.test(t)||(e==="v6"||!e)&&f_.test(t))}var qt=class t extends q{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==E.string){let s=this._getOrReturnCtx(e);return S(s,{code:$.invalid_type,expected:E.string,received:s.parsedType}),A}let n=new $e,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),S(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),S(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?S(o,{code:$.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&S(o,{code:$.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")c_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"email",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Oi||(Oi=new RegExp(u_,"u")),Oi.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"emoji",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")o_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"uuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")s_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"nanoid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")t_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"cuid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")r_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"cuid2",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")n_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"ulid",code:$.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),S(o,{validation:"url",code:$.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"regex",code:$.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),S(o,{code:$.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),S(o,{code:$.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),S(o,{code:$.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?Ed(s).test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{code:$.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?g_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{code:$.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?y_(s).test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{code:$.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?a_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"duration",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?__(e.data,s.version)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"ip",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?v_(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"jwt",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?x_(e.data,s.version)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"cidr",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?m_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"base64",code:$.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?h_.test(e.data)||(o=this._getOrReturnCtx(e,o),S(o,{validation:"base64url",code:$.invalid_string,message:s.message}),n.dirty()):B.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:$.invalid_string,...R.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...R.errToObj(e)})}url(e){return this._addCheck({kind:"url",...R.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...R.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...R.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...R.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...R.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...R.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...R.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...R.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...R.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...R.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...R.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...R.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...R.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...R.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...R.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...R.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...R.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...R.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...R.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...R.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...R.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...R.errToObj(r)})}nonempty(e){return this.min(1,R.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};qt.create=t=>new qt({checks:[],typeName:w.ZodString,coerce:t?.coerce??!1,...D(t)});function b_(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 cr=class t extends q{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 S(s,{code:$.invalid_type,expected:E.number,received:s.parsedType}),A}let n,o=new $e;for(let s of this._def.checks)s.kind==="int"?B.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),S(n,{code:$.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),S(n,{code:$.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),S(n,{code:$.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?b_(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),S(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),S(n,{code:$.not_finite,message:s.message}),o.dirty()):B.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,R.toString(r))}gt(e,r){return this.setLimit("min",e,!1,R.toString(r))}lte(e,r){return this.setLimit("max",e,!0,R.toString(r))}lt(e,r){return this.setLimit("max",e,!1,R.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:R.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:R.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:R.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:R.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:R.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:R.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:R.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:R.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:R.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:R.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&B.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};cr.create=t=>new cr({checks:[],typeName:w.ZodNumber,coerce:t?.coerce||!1,...D(t)});var ur=class t extends q{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 $e;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),S(n,{code:$.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),S(n,{code:$.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),S(n,{code:$.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):B.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return S(r,{code:$.invalid_type,expected:E.bigint,received:r.parsedType}),A}gte(e,r){return this.setLimit("min",e,!0,R.toString(r))}gt(e,r){return this.setLimit("min",e,!1,R.toString(r))}lte(e,r){return this.setLimit("max",e,!0,R.toString(r))}lt(e,r){return this.setLimit("max",e,!1,R.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:R.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:R.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:R.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:R.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:R.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:R.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};ur.create=t=>new ur({checks:[],typeName:w.ZodBigInt,coerce:t?.coerce??!1,...D(t)});var lr=class extends q{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==E.boolean){let n=this._getOrReturnCtx(e);return S(n,{code:$.invalid_type,expected:E.boolean,received:n.parsedType}),A}return Re(e.data)}};lr.create=t=>new lr({typeName:w.ZodBoolean,coerce:t?.coerce||!1,...D(t)});var dr=class t extends q{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==E.date){let s=this._getOrReturnCtx(e);return S(s,{code:$.invalid_type,expected:E.date,received:s.parsedType}),A}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return S(s,{code:$.invalid_date}),A}let n=new $e,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),S(o,{code:$.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),S(o,{code:$.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):B.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:R.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:R.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};dr.create=t=>new dr({checks:[],coerce:t?.coerce||!1,typeName:w.ZodDate,...D(t)});var Vr=class extends q{_parse(e){if(this._getType(e)!==E.symbol){let n=this._getOrReturnCtx(e);return S(n,{code:$.invalid_type,expected:E.symbol,received:n.parsedType}),A}return Re(e.data)}};Vr.create=t=>new Vr({typeName:w.ZodSymbol,...D(t)});var pr=class extends q{_parse(e){if(this._getType(e)!==E.undefined){let n=this._getOrReturnCtx(e);return S(n,{code:$.invalid_type,expected:E.undefined,received:n.parsedType}),A}return Re(e.data)}};pr.create=t=>new pr({typeName:w.ZodUndefined,...D(t)});var fr=class extends q{_parse(e){if(this._getType(e)!==E.null){let n=this._getOrReturnCtx(e);return S(n,{code:$.invalid_type,expected:E.null,received:n.parsedType}),A}return Re(e.data)}};fr.create=t=>new fr({typeName:w.ZodNull,...D(t)});var Ft=class extends q{constructor(){super(...arguments),this._any=!0}_parse(e){return Re(e.data)}};Ft.create=t=>new Ft({typeName:w.ZodAny,...D(t)});var It=class extends q{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Re(e.data)}};It.create=t=>new It({typeName:w.ZodUnknown,...D(t)});var at=class extends q{_parse(e){let r=this._getOrReturnCtx(e);return S(r,{code:$.invalid_type,expected:E.never,received:r.parsedType}),A}};at.create=t=>new at({typeName:w.ZodNever,...D(t)});var Hr=class extends q{_parse(e){if(this._getType(e)!==E.undefined){let n=this._getOrReturnCtx(e);return S(n,{code:$.invalid_type,expected:E.void,received:n.parsedType}),A}return Re(e.data)}};Hr.create=t=>new Hr({typeName:w.ZodVoid,...D(t)});var Ot=class t extends q{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==E.array)return S(r,{code:$.invalid_type,expected:E.array,received:r.parsedType}),A;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(S(r,{code:i?$.too_big:$.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(S(r,{code:$.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(S(r,{code:$.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new Xe(r,i,r.path,a)))).then(i=>$e.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new Xe(r,i,r.path,a)));return $e.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:R.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:R.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:R.toString(r)}})}nonempty(e){return this.min(1,e)}};Ot.create=(t,e)=>new Ot({type:t,minLength:null,maxLength:null,exactLength:null,typeName:w.ZodArray,...D(e)});function Ur(t){if(t instanceof Fe){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=qe.create(Ur(n))}return new Fe({...t._def,shape:()=>e})}else return t instanceof Ot?new Ot({...t._def,type:Ur(t.element)}):t instanceof qe?qe.create(Ur(t.unwrap())):t instanceof vt?vt.create(Ur(t.unwrap())):t instanceof _t?_t.create(t.items.map(e=>Ur(e))):t}var Fe=class t extends q{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=B.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==E.object){let u=this._getOrReturnCtx(e);return S(u,{code:$.invalid_type,expected:E.object,received:u.parsedType}),A}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof at&&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 Xe(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof at){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&&(S(o,{code:$.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new Xe(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=>$e.mergeObjectSync(n,u)):$e.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return R.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:R.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:w.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of B.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of B.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return Ur(this)}partial(e){let r={};for(let n of B.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of B.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof qe;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return zd(B.objectKeys(this.shape))}};Fe.create=(t,e)=>new Fe({shape:()=>t,unknownKeys:"strip",catchall:at.create(),typeName:w.ZodObject,...D(e)});Fe.strictCreate=(t,e)=>new Fe({shape:()=>t,unknownKeys:"strict",catchall:at.create(),typeName:w.ZodObject,...D(e)});Fe.lazycreate=(t,e)=>new Fe({shape:t,unknownKeys:"strip",catchall:at.create(),typeName:w.ZodObject,...D(e)});var mr=class extends q{_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 Le(a.ctx.common.issues));return S(r,{code:$.invalid_union,unionErrors:i}),A}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 Le(c));return S(r,{code:$.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};mr.create=(t,e)=>new mr({options:t,typeName:w.ZodUnion,...D(e)});var Rt=t=>t instanceof gr?Rt(t.schema):t instanceof Qe?Rt(t.innerType()):t instanceof yr?[t.value]:t instanceof _r?t.options:t instanceof vr?B.objectValues(t.enum):t instanceof xr?Rt(t._def.innerType):t instanceof pr?[void 0]:t instanceof fr?[null]:t instanceof qe?[void 0,...Rt(t.unwrap())]:t instanceof vt?[null,...Rt(t.unwrap())]:t instanceof kn||t instanceof $r?Rt(t.unwrap()):t instanceof br?Rt(t._def.innerType):[],No=class t extends q{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==E.object)return S(r,{code:$.invalid_type,expected:E.object,received:r.parsedType}),A;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(S(r,{code:$.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),A)}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=Rt(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:w.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...D(n)})}};function Ni(t,e){let r=yt(t),n=yt(e);if(t===e)return{valid:!0,data:t};if(r===E.object&&n===E.object){let o=B.objectKeys(e),s=B.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Ni(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=Ni(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 hr=class extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Io(s)||Io(i))return A;let a=Ni(s.value,i.value);return a.valid?((Oo(s)||Oo(i))&&r.dirty(),{status:r.value,value:a.data}):(S(n,{code:$.invalid_intersection_types}),A)};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}))}};hr.create=(t,e,r)=>new hr({left:t,right:e,typeName:w.ZodIntersection,...D(r)});var _t=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==E.array)return S(n,{code:$.invalid_type,expected:E.array,received:n.parsedType}),A;if(n.data.length<this._def.items.length)return S(n,{code:$.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),A;!this._def.rest&&n.data.length>this._def.items.length&&(S(n,{code:$.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new Xe(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>$e.mergeArray(r,i)):$e.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};_t.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new _t({items:t,typeName:w.ZodTuple,rest:null,...D(e)})};var Co=class t extends q{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 S(n,{code:$.invalid_type,expected:E.object,received:n.parsedType}),A;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new Xe(n,a,n.path,a)),value:i._parse(new Xe(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?$e.mergeObjectAsync(r,o):$e.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof q?new t({keyType:e,valueType:r,typeName:w.ZodRecord,...D(n)}):new t({keyType:qt.create(),valueType:e,typeName:w.ZodRecord,...D(r)})}},Br=class extends q{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 S(n,{code:$.invalid_type,expected:E.map,received:n.parsedType}),A;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new Xe(n,a,n.path,[u,"key"])),value:s._parse(new Xe(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 A;(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 A;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};Br.create=(t,e,r)=>new Br({valueType:e,keyType:t,typeName:w.ZodMap,...D(r)});var Kr=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==E.set)return S(n,{code:$.invalid_type,expected:E.set,received:n.parsedType}),A;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(S(n,{code:$.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(S(n,{code:$.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return A;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 Xe(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:R.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:R.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Kr.create=(t,e)=>new Kr({valueType:t,minSize:null,maxSize:null,typeName:w.ZodSet,...D(e)});var Ao=class t extends q{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==E.function)return S(r,{code:$.invalid_type,expected:E.function,received:r.parsedType}),A;function n(a,c){return wn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,qr(),Pt].filter(u=>!!u),issueData:{code:$.invalid_arguments,argumentsError:c}})}function o(a,c){return wn({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,qr(),Pt].filter(u=>!!u),issueData:{code:$.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof Ut){let a=this;return Re(async function(...c){let u=new Le([]),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 Re(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Le([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Le([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:_t.create(e).rest(It.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||_t.create([]).rest(It.create()),returns:r||It.create(),typeName:w.ZodFunction,...D(n)})}},gr=class extends q{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})}};gr.create=(t,e)=>new gr({getter:t,typeName:w.ZodLazy,...D(e)});var yr=class extends q{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return S(r,{received:r.data,code:$.invalid_literal,expected:this._def.value}),A}return{status:"valid",value:e.data}}get value(){return this._def.value}};yr.create=(t,e)=>new yr({value:t,typeName:w.ZodLiteral,...D(e)});function zd(t,e){return new _r({values:t,typeName:w.ZodEnum,...D(e)})}var _r=class t extends q{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return S(r,{expected:B.joinValues(n),received:r.parsedType,code:$.invalid_type}),A}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return S(r,{received:r.data,code:$.invalid_enum_value,options:n}),A}return Re(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})}};_r.create=zd;var vr=class extends q{_parse(e){let r=B.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==E.string&&n.parsedType!==E.number){let o=B.objectValues(r);return S(n,{expected:B.joinValues(o),received:n.parsedType,code:$.invalid_type}),A}if(this._cache||(this._cache=new Set(B.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=B.objectValues(r);return S(n,{received:n.data,code:$.invalid_enum_value,options:o}),A}return Re(e.data)}get enum(){return this._def.values}};vr.create=(t,e)=>new vr({values:t,typeName:w.ZodNativeEnum,...D(e)});var Ut=class extends q{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==E.promise&&r.common.async===!1)return S(r,{code:$.invalid_type,expected:E.promise,received:r.parsedType}),A;let n=r.parsedType===E.promise?r.data:Promise.resolve(r.data);return Re(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};Ut.create=(t,e)=>new Ut({type:t,typeName:w.ZodPromise,...D(e)});var Qe=class extends q{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===w.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{S(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return A;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?A:c.status==="dirty"?ar(c.value):r.value==="dirty"?ar(c.value):c});{if(r.value==="aborted")return A;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?A:a.status==="dirty"?ar(a.value):r.value==="dirty"?ar(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"?A:(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"?A:(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(!Lt(i))return A;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=>Lt(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);B.assertNever(o)}};Qe.create=(t,e,r)=>new Qe({schema:t,typeName:w.ZodEffects,effect:e,...D(r)});Qe.createWithPreprocess=(t,e,r)=>new Qe({schema:e,effect:{type:"preprocess",transform:t},typeName:w.ZodEffects,...D(r)});var qe=class extends q{_parse(e){return this._getType(e)===E.undefined?Re(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};qe.create=(t,e)=>new qe({innerType:t,typeName:w.ZodOptional,...D(e)});var vt=class extends q{_parse(e){return this._getType(e)===E.null?Re(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};vt.create=(t,e)=>new vt({innerType:t,typeName:w.ZodNullable,...D(e)});var xr=class extends q{_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}};xr.create=(t,e)=>new xr({innerType:t,typeName:w.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...D(e)});var br=class extends q{_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 Fr(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Le(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Le(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};br.create=(t,e)=>new br({innerType:t,typeName:w.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...D(e)});var Wr=class extends q{_parse(e){if(this._getType(e)!==E.nan){let n=this._getOrReturnCtx(e);return S(n,{code:$.invalid_type,expected:E.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};Wr.create=t=>new Wr({typeName:w.ZodNaN,...D(t)});var $_=Symbol("zod_brand"),kn=class extends q{_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}},Sn=class t extends q{_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"?A:s.status==="dirty"?(r.dirty(),ar(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"?A: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:w.ZodPipeline})}},$r=class extends q{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Lt(o)&&(o.value=Object.freeze(o.value)),o);return Fr(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};$r.create=(t,e)=>new $r({innerType:t,typeName:w.ZodReadonly,...D(e)});function kd(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Pd(t,e={},r){return t?Ft.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=kd(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=kd(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):Ft.create()}var w_={object:Fe.lazycreate},w;(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"})(w||(w={}));var k_=(t,e={message:`Input not instance of ${t.name}`})=>Pd(r=>r instanceof t,e),Rd=qt.create,Id=cr.create,S_=Wr.create,T_=ur.create,Od=lr.create,E_=dr.create,z_=Vr.create,P_=pr.create,R_=fr.create,I_=Ft.create,O_=It.create,N_=at.create,C_=Hr.create,A_=Ot.create,Ci=Fe.create,j_=Fe.strictCreate,Z_=mr.create,M_=No.create,D_=hr.create,L_=_t.create,q_=Co.create,F_=Br.create,U_=Kr.create,V_=Ao.create,H_=gr.create,B_=yr.create,K_=_r.create,W_=vr.create,J_=Ut.create,G_=Qe.create,Y_=qe.create,X_=vt.create,Q_=Qe.createWithPreprocess,ev=Sn.create,tv=()=>Rd().optional(),rv=()=>Id().optional(),nv=()=>Od().optional(),ov={string:(t=>qt.create({...t,coerce:!0})),number:(t=>cr.create({...t,coerce:!0})),boolean:(t=>lr.create({...t,coerce:!0})),bigint:(t=>ur.create({...t,coerce:!0})),date:(t=>dr.create({...t,coerce:!0}))};var sv=A;var iv=Object.freeze({status:"aborted"});function v(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Nt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},jo={};function Je(t){return t&&Object.assign(jo,t),jo}var K={};Ri(K,{BIGINT_FORMAT_RANGES:()=>Cd,Class:()=>ji,NUMBER_FORMAT_RANGES:()=>Ui,aborted:()=>kr,allowsEval:()=>Li,assert:()=>dv,assertEqual:()=>av,assertIs:()=>uv,assertNever:()=>lv,assertNotEqual:()=>cv,assignProp:()=>Di,cached:()=>zn,captureStackTrace:()=>Mo,cleanEnum:()=>kv,cleanRegex:()=>Rn,clone:()=>Ge,createTransparentProxy:()=>yv,defineLazy:()=>ae,esc:()=>wr,escapeRegex:()=>Vt,extend:()=>xv,finalizeIssue:()=>ct,floatSafeRemainder:()=>Mi,getElementAtPath:()=>pv,getEnumValues:()=>En,getLengthableOrigin:()=>In,getParsedType:()=>gv,getSizableOrigin:()=>Ad,isObject:()=>Jr,isPlainObject:()=>Gr,issue:()=>Vi,joinValues:()=>Zo,jsonStringifyReplacer:()=>Zi,merge:()=>bv,normalizeParams:()=>j,nullish:()=>Pn,numKeys:()=>hv,omit:()=>vv,optionalKeys:()=>Fi,partial:()=>$v,pick:()=>_v,prefixIssues:()=>xt,primitiveTypes:()=>Nd,promiseAllObject:()=>fv,propertyKeyTypes:()=>qi,randomString:()=>mv,required:()=>wv,stringifyPrimitive:()=>Do,unwrapMessage:()=>Tn});function av(t){return t}function cv(t){return t}function uv(t){}function lv(t){throw new Error}function dv(t){}function En(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function Zo(t,e="|"){return t.map(r=>Do(r)).join(e)}function Zi(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 Pn(t){return t==null}function Rn(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Mi(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 ae(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Di(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function pv(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function fv(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 mv(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function wr(t){return JSON.stringify(t)}var Mo=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function Jr(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Li=zn(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Gr(t){if(Jr(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(Jr(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function hv(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var gv=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}`)}},qi=new Set(["string","number","symbol"]),Nd=new Set(["string","number","bigint","boolean","symbol","undefined"]);function Vt(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Ge(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function j(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 yv(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function Do(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Fi(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Ui={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]},Cd={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function _v(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 Ge(t,{...t._zod.def,shape:r,checks:[]})}function vv(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 Ge(t,{...t._zod.def,shape:r,checks:[]})}function xv(t,e){if(!Gr(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 Di(this,"shape",n),n},checks:[]};return Ge(t,r)}function bv(t,e){return Ge(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Di(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function $v(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 Ge(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 Ge(e,{...e._zod.def,shape:o,checks:[]})}function kr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function xt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function Tn(t){return typeof t=="string"?t:t?.message}function ct(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=Tn(t.inst?._zod.def?.error?.(t))??Tn(e?.error?.(t))??Tn(r.customError?.(t))??Tn(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Ad(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function In(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Vi(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function kv(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var ji=class{constructor(...e){}};var jd=(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,Zi,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Lo=v("$ZodError",jd),On=v("$ZodError",jd,{Parent:Error});function Hi(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 Bi(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 Ki=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 Nt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>ct(c,s,Je())));throw Mo(a,o?.callee),a}return i.value},Wi=Ki(On),Ji=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=>ct(c,s,Je())));throw Mo(a,o?.callee),a}return i.value},Gi=Ji(On),Yi=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 Nt;return s.issues.length?{success:!1,error:new(t??Lo)(s.issues.map(i=>ct(i,o,Je())))}:{success:!0,data:s.value}},Sr=Yi(On),Xi=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=>ct(i,o,Je())))}:{success:!0,data:s.value}},Tr=Xi(On);var Zd=/^[cC][^\s-]{8,}$/,Md=/^[0-9a-z]+$/,Dd=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Ld=/^[0-9a-vA-V]{20}$/,qd=/^[A-Za-z0-9]{27}$/,Fd=/^[a-zA-Z0-9_-]{21}$/,Ud=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Vd=/^([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})$/,Qi=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 Hd=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Tv="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Bd(){return new RegExp(Tv,"u")}var Kd=/^(?:(?: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])$/,Wd=/^(([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})$/,Jd=/^((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])$/,Gd=/^(([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])$/,Yd=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,ea=/^[A-Za-z0-9_-]*$/,Xd=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Qd=/^\+(?:[0-9]){6,14}[0-9]$/,ep="(?:(?:\\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])))",tp=new RegExp(`^${ep}$`);function rp(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 np(t){return new RegExp(`^${rp(t)}$`)}function op(t){let e=rp({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(`^${ep}T(?:${n})$`)}var sp=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var ip=/^\d+$/,ap=/^-?\d+(?:\.\d+)?/i,cp=/true|false/i,up=/null/i;var lp=/^[^A-Z]*$/,dp=/^[^a-z]*$/;var we=v("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),pp={number:"number",bigint:"bigint",object:"date"},ta=v("$ZodCheckLessThan",(t,e)=>{we.init(t,e);let r=pp[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})}}),ra=v("$ZodCheckGreaterThan",(t,e)=>{we.init(t,e);let r=pp[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})}}),fp=v("$ZodCheckMultipleOf",(t,e)=>{we.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):Mi(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})}}),mp=v("$ZodCheckNumberFormat",(t,e)=>{we.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Ui[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=ip)}),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 hp=v("$ZodCheckMaxLength",(t,e)=>{var r;we.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Pn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.maximum??Number.POSITIVE_INFINITY;e.maximum<o&&(n._zod.bag.maximum=e.maximum)}),t._zod.check=n=>{let o=n.value;if(o.length<=e.maximum)return;let i=In(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),gp=v("$ZodCheckMinLength",(t,e)=>{var r;we.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Pn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag.minimum??Number.NEGATIVE_INFINITY;e.minimum>o&&(n._zod.bag.minimum=e.minimum)}),t._zod.check=n=>{let o=n.value;if(o.length>=e.minimum)return;let i=In(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),yp=v("$ZodCheckLengthEquals",(t,e)=>{var r;we.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!Pn(o)&&o.length!==void 0}),t._zod.onattach.push(n=>{let o=n._zod.bag;o.minimum=e.length,o.maximum=e.length,o.length=e.length}),t._zod.check=n=>{let o=n.value,s=o.length;if(s===e.length)return;let i=In(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})}}),Nn=v("$ZodCheckStringFormat",(t,e)=>{var r,n;we.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=()=>{})}),_p=v("$ZodCheckRegex",(t,e)=>{Nn.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})}}),vp=v("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=lp),Nn.init(t,e)}),xp=v("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=dp),Nn.init(t,e)}),bp=v("$ZodCheckIncludes",(t,e)=>{we.init(t,e);let r=Vt(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})}}),$p=v("$ZodCheckStartsWith",(t,e)=>{we.init(t,e);let r=new RegExp(`^${Vt(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})}}),wp=v("$ZodCheckEndsWith",(t,e)=>{we.init(t,e);let r=new RegExp(`.*${Vt(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 kp=v("$ZodCheckOverwrite",(t,e)=>{we.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Fo=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 Tp={major:4,minor:0,patch:0};var re=v("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Tp;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=kr(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 Nt;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=kr(s,d)))});else{if(s.issues.length===d)continue;c||(c=kr(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 Nt;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Sr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Tr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),Cn=v("$ZodString",(t,e)=>{re.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??sp(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}}),ce=v("$ZodStringFormat",(t,e)=>{Nn.init(t,e),Cn.init(t,e)}),oa=v("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Vd),ce.init(t,e)}),sa=v("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Qi(n))}else e.pattern??(e.pattern=Qi());ce.init(t,e)}),ia=v("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Hd),ce.init(t,e)}),aa=v("$ZodURL",(t,e)=>{ce.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:Xd.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})}}}),ca=v("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Bd()),ce.init(t,e)}),ua=v("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Fd),ce.init(t,e)}),la=v("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Zd),ce.init(t,e)}),da=v("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Md),ce.init(t,e)}),pa=v("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Dd),ce.init(t,e)}),fa=v("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Ld),ce.init(t,e)}),ma=v("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=qd),ce.init(t,e)}),jp=v("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=op(e)),ce.init(t,e)}),Zp=v("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=tp),ce.init(t,e)}),Mp=v("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=np(e)),ce.init(t,e)}),Dp=v("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Ud),ce.init(t,e)}),ha=v("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Kd),ce.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),ga=v("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Wd),ce.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})}}}),ya=v("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Jd),ce.init(t,e)}),_a=v("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Gd),ce.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 Lp(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var va=v("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Yd),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Lp(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function Ev(t){if(!ea.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Lp(r)}var xa=v("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=ea),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{Ev(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),ba=v("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Qd),ce.init(t,e)});function zv(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 $a=v("$ZodJWT",(t,e)=>{ce.init(t,e),t._zod.check=r=>{zv(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Vo=v("$ZodNumber",(t,e)=>{re.init(t,e),t._zod.pattern=t._zod.bag.pattern??ap,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}}),wa=v("$ZodNumber",(t,e)=>{mp.init(t,e),Vo.init(t,e)}),ka=v("$ZodBoolean",(t,e)=>{re.init(t,e),t._zod.pattern=cp,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 Sa=v("$ZodNull",(t,e)=>{re.init(t,e),t._zod.pattern=up,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 Ta=v("$ZodUnknown",(t,e)=>{re.init(t,e),t._zod.parse=r=>r}),Ea=v("$ZodNever",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function Ep(t,e,r){t.issues.length&&e.issues.push(...xt(r,t.issues)),e.value[r]=t.value}var za=v("$ZodArray",(t,e)=>{re.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=>Ep(u,r,i))):Ep(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Uo(t,e,r){t.issues.length&&e.issues.push(...xt(r,t.issues)),e.value[r]=t.value}function zp(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(...xt(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Ho=v("$ZodObject",(t,e)=>{re.init(t,e);let r=zn(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof re))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=Fi(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});ae(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 Fo(["shape","payload","ctx"]),m=r.value,p=x=>{let b=wr(x);return`shape[${b}]._zod.run({ value: input[${b}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),g=0;for(let x of m.keys)h[x]=`key_${g++}`;f.write("const newResult = {}");for(let x of m.keys)if(m.optionalKeys.has(x)){let b=h[x];f.write(`const ${b} = ${p(x)};`);let k=wr(x);f.write(`
|
|
12
|
+
if (${b}.issues.length) {
|
|
13
|
+
if (input[${k}] === undefined) {
|
|
14
|
+
if (${k} in input) {
|
|
15
|
+
newResult[${k}] = undefined;
|
|
16
|
+
}
|
|
17
|
+
} else {
|
|
18
|
+
payload.issues = payload.issues.concat(
|
|
19
|
+
${b}.issues.map((iss) => ({
|
|
20
|
+
...iss,
|
|
21
|
+
path: iss.path ? [${k}, ...iss.path] : [${k}],
|
|
22
|
+
}))
|
|
23
|
+
);
|
|
24
|
+
}
|
|
25
|
+
} else if (${b}.value === undefined) {
|
|
26
|
+
if (${k} in input) newResult[${k}] = undefined;
|
|
27
|
+
} else {
|
|
28
|
+
newResult[${k}] = ${b}.value;
|
|
29
|
+
}
|
|
30
|
+
`)}else{let b=h[x];f.write(`const ${b} = ${p(x)};`),f.write(`
|
|
31
|
+
if (${b}.issues.length) payload.issues = payload.issues.concat(${b}.issues.map(iss => ({
|
|
32
|
+
...iss,
|
|
33
|
+
path: iss.path ? [${wr(x)}, ...iss.path] : [${wr(x)}]
|
|
34
|
+
})));`),f.write(`newResult[${wr(x)}] = ${b}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let _=f.compile();return(x,b)=>_(d,x,b)},o,s=Jr,i=!jo.jitless,c=i&&Li.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 b=l.shape;for(let k of l.keys){let P=b[k],se=P._zod.run({value:m[k],issues:[]},f),ie=P._zod.optin==="optional"&&P._zod.optout==="optional";se instanceof Promise?p.push(se.then(We=>ie?zp(We,d,k,m):Uo(We,d,k))):ie?zp(se,d,k,m):Uo(se,d,k)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,_=u._zod,x=_.def.type;for(let b of Object.keys(m)){if(g.has(b))continue;if(x==="never"){h.push(b);continue}let k=_.run({value:m[b],issues:[]},f);k instanceof Promise?p.push(k.then(P=>Uo(P,d,b))):Uo(k,d,b)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function Pp(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=>ct(s,n,Je())))}),e}var Bo=v("$ZodUnion",(t,e)=>{re.init(t,e),ae(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ae(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ae(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ae(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>Rn(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=>Pp(i,r,t,n)):Pp(s,r,t,n)}}),Pa=v("$ZodDiscriminatedUnion",(t,e)=>{Bo.init(t,e);let r=t._zod.parse;ae(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(!Jr(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)}}),Ra=v("$ZodIntersection",(t,e)=>{re.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])=>Rp(r,c,u)):Rp(r,s,i)}});function na(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(Gr(t)&&Gr(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=na(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=na(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 Rp(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),kr(t))return t;let n=na(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 Ia=v("$ZodRecord",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Gr(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(...xt(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...xt(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=>ct(u,n,Je())),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(...xt(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...xt(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Oa=v("$ZodEnum",(t,e)=>{re.init(t,e);let r=En(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>qi.has(typeof n)).map(n=>typeof n=="string"?Vt(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}}),Na=v("$ZodLiteral",(t,e)=>{re.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?Vt(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 Ca=v("$ZodTransform",(t,e)=>{re.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 Nt;return r.value=o,r}}),Aa=v("$ZodOptional",(t,e)=>{re.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Rn(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=v("$ZodNullable",(t,e)=>{re.init(t,e),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${Rn(r.source)}|null)$`):void 0}),ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),Za=v("$ZodDefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Ip(s,e)):Ip(o,e)}});function Ip(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Ma=v("$ZodPrefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Da=v("$ZodNonOptional",(t,e)=>{re.init(t,e),ae(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Op(s,t)):Op(o,t)}});function Op(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 La=v("$ZodCatch",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>ct(i,n,Je()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>ct(s,n,Je()))},input:r.value}),r.issues=[]),r)}});var qa=v("$ZodPipe",(t,e)=>{re.init(t,e),ae(t._zod,"values",()=>e.in._zod.values),ae(t._zod,"optin",()=>e.in._zod.optin),ae(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>Np(s,e,n)):Np(o,e,n)}});function Np(t,e,r){return kr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Fa=v("$ZodReadonly",(t,e)=>{re.init(t,e),ae(t._zod,"propValues",()=>e.innerType._zod.propValues),ae(t._zod,"values",()=>e.innerType._zod.values),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(Cp):Cp(o)}});function Cp(t){return t.value=Object.freeze(t.value),t}var Ua=v("$ZodCustom",(t,e)=>{we.init(t,e),re.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=>Ap(s,r,n,t));Ap(o,r,n,t)}});function Ap(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(Vi(o))}}var Pv=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},Rv=()=>{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 ${Pv(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Do(n.values[0])}`:`Invalid option: expected one of ${Zo(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${Zo(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function qp(){return{localeError:Rv()}}var An=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 Fp(){return new An}var Ht=Fp();function Va(t,e){return new t({type:"string",...j(e)})}function Ha(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Ko(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function Ba(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function Ka(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function Wa(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function Ja(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function Ga(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function Ya(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function Xa(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function Qa(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function ec(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function tc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function rc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function nc(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function oc(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function sc(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function ic(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function ac(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function cc(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function uc(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function lc(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function dc(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function Up(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function Vp(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function Hp(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function Bp(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function pc(t,e){return new t({type:"number",checks:[],...j(e)})}function fc(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function mc(t,e){return new t({type:"boolean",...j(e)})}function hc(t,e){return new t({type:"null",...j(e)})}function gc(t){return new t({type:"unknown"})}function yc(t,e){return new t({type:"never",...j(e)})}function Wo(t,e){return new ta({check:"less_than",...j(e),value:t,inclusive:!1})}function jn(t,e){return new ta({check:"less_than",...j(e),value:t,inclusive:!0})}function Jo(t,e){return new ra({check:"greater_than",...j(e),value:t,inclusive:!1})}function Zn(t,e){return new ra({check:"greater_than",...j(e),value:t,inclusive:!0})}function Go(t,e){return new fp({check:"multiple_of",...j(e),value:t})}function Yo(t,e){return new hp({check:"max_length",...j(e),maximum:t})}function Yr(t,e){return new gp({check:"min_length",...j(e),minimum:t})}function Xo(t,e){return new yp({check:"length_equals",...j(e),length:t})}function _c(t,e){return new _p({check:"string_format",format:"regex",...j(e),pattern:t})}function vc(t){return new vp({check:"string_format",format:"lowercase",...j(t)})}function xc(t){return new xp({check:"string_format",format:"uppercase",...j(t)})}function bc(t,e){return new bp({check:"string_format",format:"includes",...j(e),includes:t})}function $c(t,e){return new $p({check:"string_format",format:"starts_with",...j(e),prefix:t})}function wc(t,e){return new wp({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Er(t){return new kp({check:"overwrite",tx:t})}function kc(t){return Er(e=>e.normalize(t))}function Sc(){return Er(t=>t.trim())}function Tc(){return Er(t=>t.toLowerCase())}function Ec(){return Er(t=>t.toUpperCase())}function Kp(t,e,r){return new t({type:"array",element:e,...j(r)})}function zc(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Pc(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var Qo=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??Ht,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:x,contentEncoding:b}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),_&&(p.format=s[_]??_,p.format===""&&delete p.format),b&&(p.contentEncoding=b),x&&x.size>0){let k=[...x];k.length===1?p.pattern=k[0].source:k.length>1&&(a.schema.allOf=[...k.map(P=>({...this.target==="draft-7"?{type:"string"}:{},pattern:P.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:_,multipleOf:x,exclusiveMaximum:b,exclusiveMinimum:k}=e._zod.bag;typeof _=="string"&&_.includes("int")?p.type="integer":p.type="number",typeof k=="number"&&(p.exclusiveMinimum=k),typeof h=="number"&&(p.minimum=h,typeof k=="number"&&(k>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof b=="number"&&(p.exclusiveMaximum=b),typeof g=="number"&&(p.maximum=g,typeof b=="number"&&(b<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof x=="number"&&(p.multipleOf=x);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 x in h)p.properties[x]=this.process(h[x],{...d,path:[...d.path,"properties",x]});let g=new Set(Object.keys(h)),_=new Set([...g].filter(x=>{let b=o.shape[x]._zod;return this.io==="input"?b.optin===void 0:b.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]}),_=b=>"allOf"in b&&Object.keys(b).length===1,x=[..._(h)?h.allOf:[h],..._(g)?g.allOf:[g]];p.allOf=x;break}case"tuple":{let p=m;p.type="array";let h=o.items.map((x,b)=>this.process(x,{...d,path:[...d.path,"prefixItems",b]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let x=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=x:p.additionalItems=x}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=En(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:x}=e._zod.bag;g!==void 0&&(h.minLength=g),_!==void 0&&(h.maxLength=_),x?x.length===1?(h.contentMediaType=x[0],Object.assign(p,h)):p.anyOf=x.map(b=>({...h,contentMediaType:b})):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"&&xe(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??(x=>x);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 Rc(t,e){if(t instanceof An){let n=new Qo(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 Qo(e);return r.process(t),r.emit(t,e)}function xe(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 xe(o.element,r);case"object":{for(let s in o.shape)if(xe(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(xe(s,r))return!0;return!1}case"intersection":return xe(o.left,r)||xe(o.right,r);case"tuple":{for(let s of o.items)if(xe(s,r))return!0;return!!(o.rest&&xe(o.rest,r))}case"record":return xe(o.keyType,r)||xe(o.valueType,r);case"map":return xe(o.keyType,r)||xe(o.valueType,r);case"set":return xe(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return xe(o.innerType,r);case"lazy":return xe(o.getter(),r);case"default":return xe(o.innerType,r);case"prefault":return xe(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return xe(o.in,r)||xe(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var dx=v("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");re.init(t,e),t.def=e,t.parse=(r,n)=>Wi(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Sr(t,r,n),t.parseAsync=async(r,n)=>Gi(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Tr(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)=>Ge(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var px=v("ZodMiniObject",(t,e)=>{Ho.init(t,e),dx.init(t,e),K.defineLazy(t,"shape",()=>e.shape)});function Ic(t,e){let r={type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},...K.normalizeParams(e)};return new px(r)}function et(t){return!!t._zod}function Pr(t){let e=Object.values(t);if(e.length===0)return Ic({});let r=e.every(et),n=e.every(o=>!et(o));if(r)return Ic(t);if(n)return Ci(t);throw new Error("Mixed Zod versions detected in object shape.")}function Bt(t,e){return et(t)?Sr(t,e):t.safeParse(e)}async function es(t,e){return et(t)?await Tr(t,e):await t.safeParseAsync(e)}function Kt(t){if(!t)return;let e;if(et(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function Xr(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 Pr(t)}}if(et(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 ts(t){if(t&&typeof t=="object"){if("message"in t&&typeof t.message=="string")return t.message;if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0){let e=t.issues[0];if(e&&typeof e=="object"&&"message"in e)return String(e.message)}try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function Jp(t){return t.description}function Gp(t){if(et(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function rs(t){if(et(t)){let s=t._zod?.def;if(s){if(s.value!==void 0)return s.value;if(Array.isArray(s.values)&&s.values.length>0)return s.values[0]}}let r=t._def;if(r){if(r.value!==void 0)return r.value;if(Array.isArray(r.values)&&r.values.length>0)return r.values[0]}let n=t.value;if(n!==void 0)return n}var Mn={};Ri(Mn,{ZodISODate:()=>Xp,ZodISODateTime:()=>Yp,ZodISODuration:()=>ef,ZodISOTime:()=>Qp,date:()=>Nc,datetime:()=>Oc,duration:()=>Ac,time:()=>Cc});var Yp=v("ZodISODateTime",(t,e)=>{jp.init(t,e),fe.init(t,e)});function Oc(t){return Up(Yp,t)}var Xp=v("ZodISODate",(t,e)=>{Zp.init(t,e),fe.init(t,e)});function Nc(t){return Vp(Xp,t)}var Qp=v("ZodISOTime",(t,e)=>{Mp.init(t,e),fe.init(t,e)});function Cc(t){return Hp(Qp,t)}var ef=v("ZodISODuration",(t,e)=>{Dp.init(t,e),fe.init(t,e)});function Ac(t){return Bp(ef,t)}var tf=(t,e)=>{Lo.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Bi(t,r)},flatten:{value:r=>Hi(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},uR=v("ZodError",tf),Dn=v("ZodError",tf,{Parent:Error});var rf=Ki(Dn),nf=Ji(Dn),of=Yi(Dn),sf=Xi(Dn);var _e=v("ZodType",(t,e)=>(re.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)=>Ge(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>rf(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>of(t,r,n),t.parseAsync=async(r,n)=>nf(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>sf(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(ub(r,n)),t.superRefine=r=>t.check(lb(r)),t.overwrite=r=>t.check(Er(r)),t.optional=()=>ye(t),t.nullable=()=>uf(t),t.nullish=()=>ye(uf(t)),t.nonoptional=r=>rb(t,r),t.array=()=>J(t),t.or=r=>ue([t,r]),t.and=r=>os(t,r),t.transform=r=>Zc(t,mf(r)),t.default=r=>Qx(t,r),t.prefault=r=>tb(t,r),t.catch=r=>ob(t,r),t.pipe=r=>Zc(t,r),t.readonly=()=>ab(t),t.describe=r=>{let n=t.clone();return Ht.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return Ht.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return Ht.get(t);let n=t.clone();return Ht.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),lf=v("_ZodString",(t,e)=>{Cn.init(t,e),_e.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(_c(...n)),t.includes=(...n)=>t.check(bc(...n)),t.startsWith=(...n)=>t.check($c(...n)),t.endsWith=(...n)=>t.check(wc(...n)),t.min=(...n)=>t.check(Yr(...n)),t.max=(...n)=>t.check(Yo(...n)),t.length=(...n)=>t.check(Xo(...n)),t.nonempty=(...n)=>t.check(Yr(1,...n)),t.lowercase=n=>t.check(vc(n)),t.uppercase=n=>t.check(xc(n)),t.trim=()=>t.check(Sc()),t.normalize=(...n)=>t.check(kc(...n)),t.toLowerCase=()=>t.check(Tc()),t.toUpperCase=()=>t.check(Ec())}),bx=v("ZodString",(t,e)=>{Cn.init(t,e),lf.init(t,e),t.email=r=>t.check(Ha($x,r)),t.url=r=>t.check(Ga(wx,r)),t.jwt=r=>t.check(dc(Mx,r)),t.emoji=r=>t.check(Ya(kx,r)),t.guid=r=>t.check(Ko(af,r)),t.uuid=r=>t.check(Ba(ns,r)),t.uuidv4=r=>t.check(Ka(ns,r)),t.uuidv6=r=>t.check(Wa(ns,r)),t.uuidv7=r=>t.check(Ja(ns,r)),t.nanoid=r=>t.check(Xa(Sx,r)),t.guid=r=>t.check(Ko(af,r)),t.cuid=r=>t.check(Qa(Tx,r)),t.cuid2=r=>t.check(ec(Ex,r)),t.ulid=r=>t.check(tc(zx,r)),t.base64=r=>t.check(cc(Ax,r)),t.base64url=r=>t.check(uc(jx,r)),t.xid=r=>t.check(rc(Px,r)),t.ksuid=r=>t.check(nc(Rx,r)),t.ipv4=r=>t.check(oc(Ix,r)),t.ipv6=r=>t.check(sc(Ox,r)),t.cidrv4=r=>t.check(ic(Nx,r)),t.cidrv6=r=>t.check(ac(Cx,r)),t.e164=r=>t.check(lc(Zx,r)),t.datetime=r=>t.check(Oc(r)),t.date=r=>t.check(Nc(r)),t.time=r=>t.check(Cc(r)),t.duration=r=>t.check(Ac(r))});function y(t){return Va(bx,t)}var fe=v("ZodStringFormat",(t,e)=>{ce.init(t,e),lf.init(t,e)}),$x=v("ZodEmail",(t,e)=>{ia.init(t,e),fe.init(t,e)});var af=v("ZodGUID",(t,e)=>{oa.init(t,e),fe.init(t,e)});var ns=v("ZodUUID",(t,e)=>{sa.init(t,e),fe.init(t,e)});var wx=v("ZodURL",(t,e)=>{aa.init(t,e),fe.init(t,e)});var kx=v("ZodEmoji",(t,e)=>{ca.init(t,e),fe.init(t,e)});var Sx=v("ZodNanoID",(t,e)=>{ua.init(t,e),fe.init(t,e)});var Tx=v("ZodCUID",(t,e)=>{la.init(t,e),fe.init(t,e)});var Ex=v("ZodCUID2",(t,e)=>{da.init(t,e),fe.init(t,e)});var zx=v("ZodULID",(t,e)=>{pa.init(t,e),fe.init(t,e)});var Px=v("ZodXID",(t,e)=>{fa.init(t,e),fe.init(t,e)});var Rx=v("ZodKSUID",(t,e)=>{ma.init(t,e),fe.init(t,e)});var Ix=v("ZodIPv4",(t,e)=>{ha.init(t,e),fe.init(t,e)});var Ox=v("ZodIPv6",(t,e)=>{ga.init(t,e),fe.init(t,e)});var Nx=v("ZodCIDRv4",(t,e)=>{ya.init(t,e),fe.init(t,e)});var Cx=v("ZodCIDRv6",(t,e)=>{_a.init(t,e),fe.init(t,e)});var Ax=v("ZodBase64",(t,e)=>{va.init(t,e),fe.init(t,e)});var jx=v("ZodBase64URL",(t,e)=>{xa.init(t,e),fe.init(t,e)});var Zx=v("ZodE164",(t,e)=>{ba.init(t,e),fe.init(t,e)});var Mx=v("ZodJWT",(t,e)=>{$a.init(t,e),fe.init(t,e)});var df=v("ZodNumber",(t,e)=>{Vo.init(t,e),_e.init(t,e),t.gt=(n,o)=>t.check(Jo(n,o)),t.gte=(n,o)=>t.check(Zn(n,o)),t.min=(n,o)=>t.check(Zn(n,o)),t.lt=(n,o)=>t.check(Wo(n,o)),t.lte=(n,o)=>t.check(jn(n,o)),t.max=(n,o)=>t.check(jn(n,o)),t.int=n=>t.check(cf(n)),t.safe=n=>t.check(cf(n)),t.positive=n=>t.check(Jo(0,n)),t.nonnegative=n=>t.check(Zn(0,n)),t.negative=n=>t.check(Wo(0,n)),t.nonpositive=n=>t.check(jn(0,n)),t.multipleOf=(n,o)=>t.check(Go(n,o)),t.step=(n,o)=>t.check(Go(n,o)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function te(t){return pc(df,t)}var Dx=v("ZodNumberFormat",(t,e)=>{wa.init(t,e),df.init(t,e)});function cf(t){return fc(Dx,t)}var Lx=v("ZodBoolean",(t,e)=>{ka.init(t,e),_e.init(t,e)});function be(t){return mc(Lx,t)}var qx=v("ZodNull",(t,e)=>{Sa.init(t,e),_e.init(t,e)});function Mc(t){return hc(qx,t)}var Fx=v("ZodUnknown",(t,e)=>{Ta.init(t,e),_e.init(t,e)});function me(){return gc(Fx)}var Ux=v("ZodNever",(t,e)=>{Ea.init(t,e),_e.init(t,e)});function Vx(t){return yc(Ux,t)}var Hx=v("ZodArray",(t,e)=>{za.init(t,e),_e.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Yr(r,n)),t.nonempty=r=>t.check(Yr(1,r)),t.max=(r,n)=>t.check(Yo(r,n)),t.length=(r,n)=>t.check(Xo(r,n)),t.unwrap=()=>t.element});function J(t,e){return Kp(Hx,t,e)}var pf=v("ZodObject",(t,e)=>{Ho.init(t,e),_e.init(t,e),K.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ue(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:me()}),t.loose=()=>t.clone({...t._zod.def,catchall:me()}),t.strict=()=>t.clone({...t._zod.def,catchall:Vx()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>K.extend(t,r),t.merge=r=>K.merge(t,r),t.pick=r=>K.pick(t,r),t.omit=r=>K.omit(t,r),t.partial=(...r)=>K.partial(hf,t,r[0]),t.required=(...r)=>K.required(gf,t,r[0])});function z(t,e){let r={type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},...K.normalizeParams(e)};return new pf(r)}function Ae(t,e){return new pf({type:"object",get shape(){return K.assignProp(this,"shape",{...t}),this.shape},catchall:me(),...K.normalizeParams(e)})}var ff=v("ZodUnion",(t,e)=>{Bo.init(t,e),_e.init(t,e),t.options=e.options});function ue(t,e){return new ff({type:"union",options:t,...K.normalizeParams(e)})}var Bx=v("ZodDiscriminatedUnion",(t,e)=>{ff.init(t,e),Pa.init(t,e)});function Dc(t,e,r){return new Bx({type:"union",options:e,discriminator:t,...K.normalizeParams(r)})}var Kx=v("ZodIntersection",(t,e)=>{Ra.init(t,e),_e.init(t,e)});function os(t,e){return new Kx({type:"intersection",left:t,right:e})}var Wx=v("ZodRecord",(t,e)=>{Ia.init(t,e),_e.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function he(t,e,r){return new Wx({type:"record",keyType:t,valueType:e,...K.normalizeParams(r)})}var jc=v("ZodEnum",(t,e)=>{Oa.init(t,e),_e.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new jc({...e,checks:[],...K.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:[],...K.normalizeParams(o),entries:s})}});function Ue(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new jc({type:"enum",entries:r,...K.normalizeParams(e)})}var Jx=v("ZodLiteral",(t,e)=>{Na.init(t,e),_e.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function O(t,e){return new Jx({type:"literal",values:Array.isArray(t)?t:[t],...K.normalizeParams(e)})}var Gx=v("ZodTransform",(t,e)=>{Ca.init(t,e),_e.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(K.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(K.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 mf(t){return new Gx({type:"transform",transform:t})}var hf=v("ZodOptional",(t,e)=>{Aa.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ye(t){return new hf({type:"optional",innerType:t})}var Yx=v("ZodNullable",(t,e)=>{ja.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function uf(t){return new Yx({type:"nullable",innerType:t})}var Xx=v("ZodDefault",(t,e)=>{Za.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Qx(t,e){return new Xx({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var eb=v("ZodPrefault",(t,e)=>{Ma.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function tb(t,e){return new eb({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var gf=v("ZodNonOptional",(t,e)=>{Da.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function rb(t,e){return new gf({type:"nonoptional",innerType:t,...K.normalizeParams(e)})}var nb=v("ZodCatch",(t,e)=>{La.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function ob(t,e){return new nb({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var sb=v("ZodPipe",(t,e)=>{qa.init(t,e),_e.init(t,e),t.in=e.in,t.out=e.out});function Zc(t,e){return new sb({type:"pipe",in:t,out:e})}var ib=v("ZodReadonly",(t,e)=>{Fa.init(t,e),_e.init(t,e)});function ab(t){return new ib({type:"readonly",innerType:t})}var yf=v("ZodCustom",(t,e)=>{Ua.init(t,e),_e.init(t,e)});function cb(t){let e=new we({check:"custom"});return e._zod.check=t,e}function _f(t,e){return zc(yf,t??(()=>!0),e)}function ub(t,e={}){return Pc(yf,t,e)}function lb(t){let e=cb(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(K.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(K.issue(o))}},t(r.value,r)));return e}function Lc(t,e){return Zc(mf(t),e)}Je(qp());var Fc="2025-11-25";var vf=[Fc,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],Wt="io.modelcontextprotocol/related-task",is="2.0",ke=_f(t=>t!==null&&(typeof t=="object"||typeof t=="function")),xf=ue([y(),te().int()]),bf=y(),wR=Ae({ttl:ue([te(),Mc()]).optional(),pollInterval:te().optional()}),db=z({ttl:te().optional()}),pb=z({taskId:y()}),Uc=Ae({progressToken:xf.optional(),[Wt]:pb.optional()}),Ye=z({_meta:Uc.optional()}),Ln=Ye.extend({task:db.optional()}),$f=t=>Ln.safeParse(t).success,Se=z({method:y(),params:Ye.loose().optional()}),tt=z({_meta:Uc.optional()}),rt=z({method:y(),params:tt.loose().optional()}),Te=Ae({_meta:Uc.optional()}),as=ue([y(),te().int()]),wf=z({jsonrpc:O(is),id:as,...Se.shape}).strict(),Vc=t=>wf.safeParse(t).success,kf=z({jsonrpc:O(is),...rt.shape}).strict(),Sf=t=>kf.safeParse(t).success,Hc=z({jsonrpc:O(is),id:as,result:Te}).strict(),qn=t=>Hc.safeParse(t).success;var C;(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"})(C||(C={}));var Bc=z({jsonrpc:O(is),id:as.optional(),error:z({code:te().int(),message:y(),data:me().optional()})}).strict();var Tf=t=>Bc.safeParse(t).success;var Ef=ue([wf,kf,Hc,Bc]),kR=ue([Hc,Bc]),cs=Te.strict(),fb=tt.extend({requestId:as.optional(),reason:y().optional()}),us=rt.extend({method:O("notifications/cancelled"),params:fb}),mb=z({src:y(),mimeType:y().optional(),sizes:J(y()).optional(),theme:Ue(["light","dark"]).optional()}),Fn=z({icons:J(mb).optional()}),Qr=z({name:y(),title:y().optional()}),zf=Qr.extend({...Qr.shape,...Fn.shape,version:y(),websiteUrl:y().optional(),description:y().optional()}),hb=os(z({applyDefaults:be().optional()}),he(y(),me())),gb=Lc(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,os(z({form:hb.optional(),url:ke.optional()}),he(y(),me()).optional())),yb=Ae({list:ke.optional(),cancel:ke.optional(),requests:Ae({sampling:Ae({createMessage:ke.optional()}).optional(),elicitation:Ae({create:ke.optional()}).optional()}).optional()}),_b=Ae({list:ke.optional(),cancel:ke.optional(),requests:Ae({tools:Ae({call:ke.optional()}).optional()}).optional()}),vb=z({experimental:he(y(),ke).optional(),sampling:z({context:ke.optional(),tools:ke.optional()}).optional(),elicitation:gb.optional(),roots:z({listChanged:be().optional()}).optional(),tasks:yb.optional()}),xb=Ye.extend({protocolVersion:y(),capabilities:vb,clientInfo:zf}),Kc=Se.extend({method:O("initialize"),params:xb});var bb=z({experimental:he(y(),ke).optional(),logging:ke.optional(),completions:ke.optional(),prompts:z({listChanged:be().optional()}).optional(),resources:z({subscribe:be().optional(),listChanged:be().optional()}).optional(),tools:z({listChanged:be().optional()}).optional(),tasks:_b.optional()}),$b=Te.extend({protocolVersion:y(),capabilities:bb,serverInfo:zf,instructions:y().optional()}),Wc=rt.extend({method:O("notifications/initialized"),params:tt.optional()});var ls=Se.extend({method:O("ping"),params:Ye.optional()}),wb=z({progress:te(),total:ye(te()),message:ye(y())}),kb=z({...tt.shape,...wb.shape,progressToken:xf}),ds=rt.extend({method:O("notifications/progress"),params:kb}),Sb=Ye.extend({cursor:bf.optional()}),Un=Se.extend({params:Sb.optional()}),Vn=Te.extend({nextCursor:bf.optional()}),Tb=Ue(["working","input_required","completed","failed","cancelled"]),Hn=z({taskId:y(),status:Tb,ttl:ue([te(),Mc()]),createdAt:y(),lastUpdatedAt:y(),pollInterval:ye(te()),statusMessage:ye(y())}),en=Te.extend({task:Hn}),Eb=tt.merge(Hn),Bn=rt.extend({method:O("notifications/tasks/status"),params:Eb}),ps=Se.extend({method:O("tasks/get"),params:Ye.extend({taskId:y()})}),fs=Te.merge(Hn),ms=Se.extend({method:O("tasks/result"),params:Ye.extend({taskId:y()})}),SR=Te.loose(),hs=Un.extend({method:O("tasks/list")}),gs=Vn.extend({tasks:J(Hn)}),ys=Se.extend({method:O("tasks/cancel"),params:Ye.extend({taskId:y()})}),Pf=Te.merge(Hn),Rf=z({uri:y(),mimeType:ye(y()),_meta:he(y(),me()).optional()}),If=Rf.extend({text:y()}),Jc=y().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Of=Rf.extend({blob:Jc}),Kn=Ue(["user","assistant"]),tn=z({audience:J(Kn).optional(),priority:te().min(0).max(1).optional(),lastModified:Mn.datetime({offset:!0}).optional()}),Nf=z({...Qr.shape,...Fn.shape,uri:y(),description:ye(y()),mimeType:ye(y()),annotations:tn.optional(),_meta:ye(Ae({}))}),zb=z({...Qr.shape,...Fn.shape,uriTemplate:y(),description:ye(y()),mimeType:ye(y()),annotations:tn.optional(),_meta:ye(Ae({}))}),_s=Un.extend({method:O("resources/list")}),Pb=Vn.extend({resources:J(Nf)}),vs=Un.extend({method:O("resources/templates/list")}),Rb=Vn.extend({resourceTemplates:J(zb)}),Gc=Ye.extend({uri:y()}),Ib=Gc,xs=Se.extend({method:O("resources/read"),params:Ib}),Ob=Te.extend({contents:J(ue([If,Of]))}),Nb=rt.extend({method:O("notifications/resources/list_changed"),params:tt.optional()}),Cb=Gc,Ab=Se.extend({method:O("resources/subscribe"),params:Cb}),jb=Gc,Zb=Se.extend({method:O("resources/unsubscribe"),params:jb}),Mb=tt.extend({uri:y()}),Db=rt.extend({method:O("notifications/resources/updated"),params:Mb}),Lb=z({name:y(),description:ye(y()),required:ye(be())}),qb=z({...Qr.shape,...Fn.shape,description:ye(y()),arguments:ye(J(Lb)),_meta:ye(Ae({}))}),bs=Un.extend({method:O("prompts/list")}),Fb=Vn.extend({prompts:J(qb)}),Ub=Ye.extend({name:y(),arguments:he(y(),y()).optional()}),$s=Se.extend({method:O("prompts/get"),params:Ub}),Yc=z({type:O("text"),text:y(),annotations:tn.optional(),_meta:he(y(),me()).optional()}),Xc=z({type:O("image"),data:Jc,mimeType:y(),annotations:tn.optional(),_meta:he(y(),me()).optional()}),Qc=z({type:O("audio"),data:Jc,mimeType:y(),annotations:tn.optional(),_meta:he(y(),me()).optional()}),Vb=z({type:O("tool_use"),name:y(),id:y(),input:he(y(),me()),_meta:he(y(),me()).optional()}),Hb=z({type:O("resource"),resource:ue([If,Of]),annotations:tn.optional(),_meta:he(y(),me()).optional()}),Bb=Nf.extend({type:O("resource_link")}),eu=ue([Yc,Xc,Qc,Bb,Hb]),Kb=z({role:Kn,content:eu}),Wb=Te.extend({description:y().optional(),messages:J(Kb)}),Jb=rt.extend({method:O("notifications/prompts/list_changed"),params:tt.optional()}),Gb=z({title:y().optional(),readOnlyHint:be().optional(),destructiveHint:be().optional(),idempotentHint:be().optional(),openWorldHint:be().optional()}),Yb=z({taskSupport:Ue(["required","optional","forbidden"]).optional()}),Cf=z({...Qr.shape,...Fn.shape,description:y().optional(),inputSchema:z({type:O("object"),properties:he(y(),ke).optional(),required:J(y()).optional()}).catchall(me()),outputSchema:z({type:O("object"),properties:he(y(),ke).optional(),required:J(y()).optional()}).catchall(me()).optional(),annotations:Gb.optional(),execution:Yb.optional(),_meta:he(y(),me()).optional()}),ws=Un.extend({method:O("tools/list")}),Xb=Vn.extend({tools:J(Cf)}),ks=Te.extend({content:J(eu).default([]),structuredContent:he(y(),me()).optional(),isError:be().optional()}),TR=ks.or(Te.extend({toolResult:me()})),Qb=Ln.extend({name:y(),arguments:he(y(),me()).optional()}),rn=Se.extend({method:O("tools/call"),params:Qb}),e$=rt.extend({method:O("notifications/tools/list_changed"),params:tt.optional()}),ER=z({autoRefresh:be().default(!0),debounceMs:te().int().nonnegative().default(300)}),Wn=Ue(["debug","info","notice","warning","error","critical","alert","emergency"]),t$=Ye.extend({level:Wn}),tu=Se.extend({method:O("logging/setLevel"),params:t$}),r$=tt.extend({level:Wn,logger:y().optional(),data:me()}),n$=rt.extend({method:O("notifications/message"),params:r$}),o$=z({name:y().optional()}),s$=z({hints:J(o$).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),i$=z({mode:Ue(["auto","required","none"]).optional()}),a$=z({type:O("tool_result"),toolUseId:y().describe("The unique identifier for the corresponding tool call."),content:J(eu).default([]),structuredContent:z({}).loose().optional(),isError:be().optional(),_meta:he(y(),me()).optional()}),c$=Dc("type",[Yc,Xc,Qc]),ss=Dc("type",[Yc,Xc,Qc,Vb,a$]),u$=z({role:Kn,content:ue([ss,J(ss)]),_meta:he(y(),me()).optional()}),l$=Ln.extend({messages:J(u$),modelPreferences:s$.optional(),systemPrompt:y().optional(),includeContext:Ue(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:J(y()).optional(),metadata:ke.optional(),tools:J(Cf).optional(),toolChoice:i$.optional()}),d$=Se.extend({method:O("sampling/createMessage"),params:l$}),ru=Te.extend({model:y(),stopReason:ye(Ue(["endTurn","stopSequence","maxTokens"]).or(y())),role:Kn,content:c$}),nu=Te.extend({model:y(),stopReason:ye(Ue(["endTurn","stopSequence","maxTokens","toolUse"]).or(y())),role:Kn,content:ue([ss,J(ss)])}),p$=z({type:O("boolean"),title:y().optional(),description:y().optional(),default:be().optional()}),f$=z({type:O("string"),title:y().optional(),description:y().optional(),minLength:te().optional(),maxLength:te().optional(),format:Ue(["email","uri","date","date-time"]).optional(),default:y().optional()}),m$=z({type:Ue(["number","integer"]),title:y().optional(),description:y().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),h$=z({type:O("string"),title:y().optional(),description:y().optional(),enum:J(y()),default:y().optional()}),g$=z({type:O("string"),title:y().optional(),description:y().optional(),oneOf:J(z({const:y(),title:y()})),default:y().optional()}),y$=z({type:O("string"),title:y().optional(),description:y().optional(),enum:J(y()),enumNames:J(y()).optional(),default:y().optional()}),_$=ue([h$,g$]),v$=z({type:O("array"),title:y().optional(),description:y().optional(),minItems:te().optional(),maxItems:te().optional(),items:z({type:O("string"),enum:J(y())}),default:J(y()).optional()}),x$=z({type:O("array"),title:y().optional(),description:y().optional(),minItems:te().optional(),maxItems:te().optional(),items:z({anyOf:J(z({const:y(),title:y()}))}),default:J(y()).optional()}),b$=ue([v$,x$]),$$=ue([y$,_$,b$]),w$=ue([$$,p$,f$,m$]),k$=Ln.extend({mode:O("form").optional(),message:y(),requestedSchema:z({type:O("object"),properties:he(y(),w$),required:J(y()).optional()})}),S$=Ln.extend({mode:O("url"),message:y(),elicitationId:y(),url:y().url()}),T$=ue([k$,S$]),E$=Se.extend({method:O("elicitation/create"),params:T$}),z$=tt.extend({elicitationId:y()}),P$=rt.extend({method:O("notifications/elicitation/complete"),params:z$}),Ss=Te.extend({action:Ue(["accept","decline","cancel"]),content:Lc(t=>t===null?void 0:t,he(y(),ue([y(),te(),be(),J(y())])).optional())}),R$=z({type:O("ref/resource"),uri:y()});var I$=z({type:O("ref/prompt"),name:y()}),O$=Ye.extend({ref:ue([I$,R$]),argument:z({name:y(),value:y()}),context:z({arguments:he(y(),y()).optional()}).optional()}),Ts=Se.extend({method:O("completion/complete"),params:O$});function Af(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function jf(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var N$=Te.extend({completion:Ae({values:J(y()).max(100),total:ye(te().int()),hasMore:ye(be())})}),C$=z({uri:y().startsWith("file://"),name:y().optional(),_meta:he(y(),me()).optional()}),A$=Se.extend({method:O("roots/list"),params:Ye.optional()}),ou=Te.extend({roots:J(C$)}),j$=rt.extend({method:O("notifications/roots/list_changed"),params:tt.optional()}),zR=ue([ls,Kc,Ts,tu,$s,bs,_s,vs,xs,Ab,Zb,rn,ws,ps,ms,hs,ys]),PR=ue([us,ds,Wc,j$,Bn]),RR=ue([cs,ru,nu,Ss,ou,fs,gs,en]),IR=ue([ls,d$,E$,A$,ps,ms,hs,ys]),OR=ue([us,ds,n$,Db,Nb,e$,Jb,Bn,P$]),NR=ue([cs,$b,N$,Wb,Fb,Pb,Rb,Ob,ks,Xb,fs,gs,en]),I=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===C.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new qc(o.elicitations,r)}return new t(e,r,n)}},qc=class extends I{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(C.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function Jt(t){return t==="completed"||t==="failed"||t==="cancelled"}var Mf=Symbol("Let zodToJsonSchema decide on which parser to use");var Zf={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"},Df=t=>typeof t=="string"?{...Zf,name:t}:{...Zf,...t};var Lf=t=>{let e=Df(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 su(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function G(t,e,r,n,o){t[e]=r,su(t,e,n,o)}var Es=(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 ge(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?Es(e,t.currentPath):e.join("/")}}function qf(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==w.ZodAny&&(r.items=Z(t.type._def,{...e,currentPath:[...e.currentPath,"items"]})),t.minLength&&G(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&G(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(G(r,"minItems",t.exactLength.value,t.exactLength.message,e),G(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Ff(t,e){let r={type:"integer",format:"int64"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"min":e.target==="jsonSchema7"?n.inclusive?G(r,"minimum",n.value,n.message,e):G(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),G(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?G(r,"maximum",n.value,n.message,e):G(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),G(r,"maximum",n.value,n.message,e));break;case"multipleOf":G(r,"multipleOf",n.value,n.message,e);break}return r}function Uf(){return{type:"boolean"}}function zs(t,e){return Z(t.type._def,e)}var Vf=(t,e)=>Z(t.innerType._def,e);function iu(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>iu(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 Z$(t,e)}}var Z$=(t,e)=>{let r={type:"integer",format:"unix-time"};if(e.target==="openApi3")return r;for(let n of t.checks)switch(n.kind){case"min":G(r,"minimum",n.value,n.message,e);break;case"max":G(r,"maximum",n.value,n.message,e);break}return r};function Hf(t,e){return{...Z(t.innerType._def,e),default:t.defaultValue()}}function Bf(t,e){return e.effectStrategy==="input"?Z(t.schema._def,e):ge(e)}function Kf(t){return{type:"string",enum:Array.from(t.values)}}var M$=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Wf(t,e){let r=[Z(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),Z(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(M$(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 Jf(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 au,ut={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:()=>(au===void 0&&(au=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),au),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 Ps(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":G(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":G(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"email":switch(e.emailStrategy){case"format:email":lt(r,"email",n.message,e);break;case"format:idn-email":lt(r,"idn-email",n.message,e);break;case"pattern:zod":je(r,ut.email,n.message,e);break}break;case"url":lt(r,"uri",n.message,e);break;case"uuid":lt(r,"uuid",n.message,e);break;case"regex":je(r,n.regex,n.message,e);break;case"cuid":je(r,ut.cuid,n.message,e);break;case"cuid2":je(r,ut.cuid2,n.message,e);break;case"startsWith":je(r,RegExp(`^${cu(n.value,e)}`),n.message,e);break;case"endsWith":je(r,RegExp(`${cu(n.value,e)}$`),n.message,e);break;case"datetime":lt(r,"date-time",n.message,e);break;case"date":lt(r,"date",n.message,e);break;case"time":lt(r,"time",n.message,e);break;case"duration":lt(r,"duration",n.message,e);break;case"length":G(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),G(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{je(r,RegExp(cu(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&<(r,"ipv4",n.message,e),n.version!=="v4"&<(r,"ipv6",n.message,e);break}case"base64url":je(r,ut.base64url,n.message,e);break;case"jwt":je(r,ut.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&je(r,ut.ipv4Cidr,n.message,e),n.version!=="v4"&&je(r,ut.ipv6Cidr,n.message,e);break}case"emoji":je(r,ut.emoji(),n.message,e);break;case"ulid":{je(r,ut.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{lt(r,"binary",n.message,e);break}case"contentEncoding:base64":{G(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{je(r,ut.base64,n.message,e);break}}break}case"nanoid":je(r,ut.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function cu(t,e){return e.patternStrategy==="escape"?L$(t):t}var D$=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function L$(t){let e="";for(let r=0;r<t.length;r++)D$.has(t[r])||(e+="\\"),e+=t[r];return e}function lt(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):G(t,"format",e,r,n)}function je(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:Gf(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):G(t,"pattern",Gf(e,n),r,n)}function Gf(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
|
|
37
|
+
]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
|
|
38
|
+
]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
|
|
39
|
+
`:`[${n[c]}\r
|
|
40
|
+
]`;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 Rs(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===w.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:Z(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??ge(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:Z(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===w.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=Ps(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===w.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===w.ZodBranded&&t.keyType._def.type._def.typeName===w.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=zs(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Yf(t,e){if(e.mapStrategy==="record")return Rs(t,e);let r=Z(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||ge(e),n=Z(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||ge(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Xf(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 Qf(t){return t.target==="openAi"?void 0:{not:ge({...t,currentPath:[...t.currentPath,"not"]})}}function em(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Jn={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function rm(t,e){if(e.target==="openApi3")return tm(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Jn&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Jn[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 tm(t,e)}var tm=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>Z(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 nm(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:Jn[t.innerType._def.typeName],nullable:!0}:{type:[Jn[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=Z(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=Z(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function om(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",su(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?G(r,"minimum",n.value,n.message,e):G(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),G(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?G(r,"maximum",n.value,n.message,e):G(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),G(r,"maximum",n.value,n.message,e));break;case"multipleOf":G(r,"multipleOf",n.value,n.message,e);break}return r}function sm(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=F$(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=Z(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=q$(t,e);return i!==void 0&&(n.additionalProperties=i),n}function q$(t,e){if(t.catchall._def.typeName!=="ZodNever")return Z(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 F$(t){try{return t.isOptional()}catch{return!0}}var im=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return Z(t.innerType._def,e);let r=Z(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:ge(e)},r]}:ge(e)};var am=(t,e)=>{if(e.pipeStrategy==="input")return Z(t.in._def,e);if(e.pipeStrategy==="output")return Z(t.out._def,e);let r=Z(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=Z(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function cm(t,e){return Z(t.type._def,e)}function um(t,e){let n={type:"array",uniqueItems:!0,items:Z(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&G(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&G(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function lm(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>Z(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:Z(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>Z(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function dm(t){return{not:ge(t)}}function pm(t){return ge(t)}var fm=(t,e)=>Z(t.innerType._def,e);var mm=(t,e,r)=>{switch(e){case w.ZodString:return Ps(t,r);case w.ZodNumber:return om(t,r);case w.ZodObject:return sm(t,r);case w.ZodBigInt:return Ff(t,r);case w.ZodBoolean:return Uf();case w.ZodDate:return iu(t,r);case w.ZodUndefined:return dm(r);case w.ZodNull:return em(r);case w.ZodArray:return qf(t,r);case w.ZodUnion:case w.ZodDiscriminatedUnion:return rm(t,r);case w.ZodIntersection:return Wf(t,r);case w.ZodTuple:return lm(t,r);case w.ZodRecord:return Rs(t,r);case w.ZodLiteral:return Jf(t,r);case w.ZodEnum:return Kf(t);case w.ZodNativeEnum:return Xf(t);case w.ZodNullable:return nm(t,r);case w.ZodOptional:return im(t,r);case w.ZodMap:return Yf(t,r);case w.ZodSet:return um(t,r);case w.ZodLazy:return()=>t.getter()._def;case w.ZodPromise:return cm(t,r);case w.ZodNaN:case w.ZodNever:return Qf(r);case w.ZodEffects:return Bf(t,r);case w.ZodAny:return ge(r);case w.ZodUnknown:return pm(r);case w.ZodDefault:return Hf(t,r);case w.ZodBranded:return zs(t,r);case w.ZodReadonly:return fm(t,r);case w.ZodCatch:return Vf(t,r);case w.ZodPipeline:return am(t,r);case w.ZodFunction:case w.ZodVoid:case w.ZodSymbol:return;default:return(n=>{})(e)}};function Z(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Mf)return a}if(n&&!r){let a=U$(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=mm(t,t.typeName,e),i=typeof s=="function"?Z(s(),e):s;if(i&&V$(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var U$=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Es(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`),ge(e)):e.$refStrategy==="seen"?ge(e):void 0}},V$=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var uu=(t,e)=>{let r=Lf(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:Z(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??ge(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=Z(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??ge(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 H$(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function lu(t,e){return et(t)?Rc(t,{target:H$(e?.target),io:e?.pipeStrategy??"input"}):uu(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function du(t){let r=Kt(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=rs(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function pu(t,e){let r=Bt(t,e);if(!r.success)throw r.error;return r.data}var B$=6e4,Is=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(us,r=>{this._oncancel(r)}),this.setNotificationHandler(ds,r=>{this._onprogress(r)}),this.setRequestHandler(ls,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ps,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new I(C.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(ms,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 I(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 I(C.InvalidParams,`Task not found: ${s}`);if(!Jt(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(Jt(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[Wt]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(hs,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 I(C.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(ys,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new I(C.InvalidParams,`Task not found: ${r.params.taskId}`);if(Jt(o.status))throw new I(C.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 I(C.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof I?o:new I(C.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),I.fromError(C.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),qn(s)||Tf(s)?this._onresponse(s):Vc(s)?this._onrequest(s,i):Sf(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._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=I.fromError(C.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?.[Wt]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:C.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=$f(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 I(C.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:C.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.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),qn(e))n(e);else{let i=new I(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(qn(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),qn(e))o(e);else{let i=I.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 I?i:new I(C.InternalError,String(i))}}return}let s;try{let i=await this.request(e,en,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new I(C.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},Jt(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new I(C.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new I(C.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 I?i:new I(C.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=x=>{l(x)};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(x){d(x);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||{},[Wt]:c}});let p=x=>{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(x)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(k=>this._onerror(new Error(`Failed to send cancellation: ${k}`)));let b=x instanceof I?x:new I(C.RequestTimeout,String(x));l(b)};this._responseHandlers.set(f,x=>{if(!n?.signal?.aborted){if(x instanceof Error)return l(x);try{let b=Bt(r,x.result);b.success?u(b.data):l(b.error)}catch(b){l(b)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??B$,g=()=>p(I.fromError(C.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let _=c?.taskId;if(_){let x=b=>{let k=this._responseHandlers.get(f);k?k(b):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,x),this._enqueueTaskMessage(_,{type:"request",message:m,timestamp:Date.now()}).catch(b=>{this._cleanupTimeout(f),l(b)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(x=>{this._cleanupTimeout(f),l(x)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},fs,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},gs,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Pf,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||{},[Wt]: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||{},[Wt]: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||{},[Wt]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=du(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=pu(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=du(e);this._notificationHandlers.set(n,o=>{let s=pu(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"&&Vc(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new I(C.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 I(C.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new I(C.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 I(C.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=Bn.parse({method:"notifications/tasks/status",params:a});await this.notification(c),Jt(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 I(C.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(Jt(a.status))throw new I(C.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=Bn.parse({method:"notifications/tasks/status",params:c});await this.notification(u),Jt(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function hm(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function gm(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];hm(i)&&hm(s)?r[o]={...i,...s}:r[o]=s}return r}var ry=bd(Yl(),1),ny=bd(ty(),1);function ZE(){let t=new ry.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,ny.default)(t),t}var fi=class{constructor(e){this._ajv=e??ZE()}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 mi=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}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 oy(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 sy(t,e,r){if(!t)throw new Error(`${r} does not support task creation (required for ${e})`);switch(e){case"sampling/createMessage":if(!t.sampling?.createMessage)throw new Error(`${r} does not support task creation for sampling/createMessage (required for ${e})`);break;case"elicitation/create":if(!t.elicitation?.create)throw new Error(`${r} does not support task creation for elicitation/create (required for ${e})`);break;default:break}}var hi=class extends Is{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Wn.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new fi,this.setRequestHandler(Kc,n=>this._oninitialize(n)),this.setNotificationHandler(Wc,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(tu,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Wn.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new mi(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=gm(this._capabilities,e)}setRequestHandler(e,r){let o=Kt(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(et(o)){let a=o;s=a._zod?.def?.value??a.value}else{let a=o;s=a._def?.value??a.value}if(typeof s!="string")throw new Error("Schema method literal must be a string");if(s==="tools/call"){let a=async(c,u)=>{let l=Bt(rn,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new I(C.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=Bt(en,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new I(C.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=Bt(ks,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new I(C.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){sy(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&oy(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:vf.includes(r)?r:Fc,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"},cs)}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},nu,r):this.request({method:"sampling/createMessage",params:e},ru,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},Ss,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},Ss,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new I(C.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof I?i:new I(C.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},ou,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 ay=Symbol.for("mcp.completable");function sd(t){return!!t&&typeof t=="object"&&ay in t}function cy(t){return t[ay]?.complete}var iy;(function(t){t.Completable="McpCompletable"})(iy||(iy={}));var ME=/^[A-Za-z0-9._-]{1,128}$/;function DE(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"),!ME.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 LE(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 id(t){let e=DE(t);return LE(t,e.warnings),e.isValid}var gi=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var yi=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new hi(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new gi(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(or(ws)),this.server.assertCanSetRequestHandler(or(rn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ws,()=>({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=Xr(r.inputSchema);return o?lu(o,{strictUnions:!0,pipeStrategy:"input"}):qE})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=Xr(r.outputSchema);o&&(n.outputSchema=lu(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(rn,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new I(C.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new I(C.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 I(C.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new I(C.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 I&&n.code===C.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=Xr(e.inputSchema)??e.inputSchema,i=await es(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=ts(a);throw new I(C.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 I(C.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=Xr(e.outputSchema),s=await es(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=ts(i);throw new I(C.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 I(C.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(or(Ts)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Ts,async e=>{switch(e.params.ref.type){case"ref/prompt":return Af(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return jf(e),this.handleResourceCompletion(e,e.params.ref);default:throw new I(C.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new I(C.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new I(C.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return To;let s=Kt(n.argsSchema)?.[e.params.argument.name];if(!sd(s))return To;let i=cy(s);if(!i)return To;let a=await i(e.params.argument.value,e.params.context);return ly(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 To;throw new I(C.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return To;let s=await o(e.params.argument.value,e.params.context);return ly(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(or(_s)),this.server.assertCanSetRequestHandler(or(vs)),this.server.assertCanSetRequestHandler(or(xs)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(_s,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(vs,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(xs,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new I(C.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 I(C.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(or(bs)),this.server.assertCanSetRequestHandler(or($s)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(bs,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?UE(r.argsSchema):void 0}))})),this.server.setRequestHandler($s,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new I(C.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new I(C.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=Xr(n.argsSchema),s=await es(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=ts(c);throw new I(C.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:Pr(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=Pr(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 qe?c._def?.innerType:c;return sd(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){id(e);let l={title:r,description:n,inputSchema:uy(o),outputSchema:uy(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"&&id(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=Pr(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Pr(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];ad(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!ad(r[0])&&(i=r.shift())):typeof c=="object"&&c!==null&&(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 qE={type:"object",properties:{}};function dy(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function FE(t){return"_def"in t||"_zod"in t||dy(t)}function ad(t){return typeof t!="object"||t===null||FE(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(dy)}function uy(t){if(t)return ad(t)?Pr(t):t}function UE(t){let e=Kt(t);return e?Object.entries(e).map(([r,n])=>{let o=Jp(n),s=Gp(n);return{name:r,description:o,required:!s}}):[]}function or(t){let r=Kt(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=rs(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function ly(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var To={completion:{values:[],hasMore:!1}};import fy from"node:process";var _i=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
|
|
41
|
+
`);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),VE(r)}clear(){this._buffer=void 0}};function VE(t){return Ef.parse(JSON.parse(t))}function py(t){return JSON.stringify(t)+`
|
|
42
|
+
`}var vi=class{constructor(e=fy.stdin,r=fy.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new _i,this._started=!1,this._ondata=n=>{this._readBuffer.append(n),this.processReadBuffer()},this._onerror=n=>{this.onerror?.(n)}}async start(){if(this._started)throw new Error("StdioServerTransport already started! If using Server class, note that connect() calls start() automatically.");this._started=!0,this._stdin.on("data",this._ondata),this._stdin.on("error",this._onerror)}processReadBuffer(){for(;;)try{let e=this._readBuffer.readMessage();if(e===null)break;this.onmessage?.(e)}catch(e){this.onerror?.(e)}}async close(){this._stdin.off("data",this._ondata),this._stdin.off("error",this._onerror),this._stdin.listenerCount("data")===0&&this._stdin.pause(),this._readBuffer.clear(),this.onclose?.()}send(e){return new Promise(r=>{let n=py(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as _d}from"node:module";import{createHash as pz}from"node:crypto";import{existsSync as Dy,unlinkSync as fz,readdirSync as mz,readFileSync as hz,rmSync as gz}from"node:fs";import{join as ki,dirname as Si}from"node:path";import{fileURLToPath as Ly}from"node:url";import{homedir as qy,tmpdir as yz}from"node:os";import{spawn as KE,execSync as by}from"node:child_process";import{mkdtempSync as WE,writeFileSync as _y,rmSync as vy,existsSync as xy}from"node:fs";import{join as bi,resolve as JE}from"node:path";import{tmpdir as GE}from"node:os";import{execSync as cd}from"node:child_process";import{existsSync as HE}from"node:fs";var my=process.platform==="win32";function Pe(t){try{let e=my?`where ${t}`:`command -v ${t}`;return cd(e,{stdio:"pipe"}),!0}catch{return!1}}function BE(){let t=["C:\\Program Files\\Git\\usr\\bin\\bash.exe","C:\\Program Files (x86)\\Git\\usr\\bin\\bash.exe"];for(let e of t)if(HE(e))return e;try{let r=cd("where bash",{encoding:"utf-8",stdio:"pipe"}).trim().split(/\r?\n/).map(n=>n.trim()).filter(Boolean);for(let n of r){let o=n.toLowerCase();if(!(o.includes("system32")||o.includes("windowsapps")))return n}return null}catch{return null}}function gt(t){try{return cd(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function xi(){let t=Pe("bun");return{javascript:t?"bun":"node",typescript:t?"bun":Pe("tsx")?"tsx":Pe("ts-node")?"ts-node":null,python:Pe("python3")?"python3":Pe("python")?"python":null,shell:my?BE()??(Pe("sh")?"sh":Pe("powershell")?"powershell":"cmd.exe"):Pe("bash")?"bash":"sh",ruby:Pe("ruby")?"ruby":null,go:Pe("go")?"go":null,rust:Pe("rustc")?"rustc":null,php:Pe("php")?"php":null,perl:Pe("perl")?"perl":null,r:Pe("Rscript")?"Rscript":Pe("r")?"r":null,elixir:Pe("elixir")?"elixir":null}}function ud(){return Pe("bun")}function hy(t){let e=[],r=t.javascript==="bun";return e.push(` JavaScript: ${t.javascript} (${gt(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${gt(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${gt(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${gt(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${gt(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${gt(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${gt(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${gt(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${gt(t.perl)})`),t.r&&e.push(` R: ${t.r} (${gt(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${gt(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
|
|
43
|
+
`)}function gy(t){let e=["javascript","shell"];return t.typescript&&e.push("typescript"),t.python&&e.push("python"),t.ruby&&e.push("ruby"),t.go&&e.push("go"),t.rust&&e.push("rust"),t.php&&e.push("php"),t.perl&&e.push("perl"),t.r&&e.push("r"),t.elixir&&e.push("elixir"),e}function yy(t,e,r){switch(e){case"javascript":return t.javascript==="bun"?["bun","run",r]:["node",r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript==="bun"?["bun","run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}function Eo(t,e){if(Buffer.byteLength(t)<=e)return t;let r=t.split(`
|
|
44
|
+
`),n=Math.floor(e*.6),o=e-n,s=[],i=0;for(let f of r){let m=Buffer.byteLength(f)+1;if(i+m>n)break;s.push(f),i+=m}let a=[],c=0;for(let f=r.length-1;f>=s.length;f--){let m=Buffer.byteLength(r[f])+1;if(c+m>o)break;a.unshift(r[f]),c+=m}let u=r.length-s.length-a.length,l=Buffer.byteLength(t)-i-c,d=`
|
|
45
|
+
|
|
46
|
+
... [${u} lines / ${(l/1024).toFixed(1)}KB truncated \u2014 showing first ${s.length} + last ${a.length} lines] ...
|
|
47
|
+
|
|
48
|
+
`;return s.join(`
|
|
49
|
+
`)+d+a.join(`
|
|
50
|
+
`)}var sr=process.platform==="win32";function ld(t){if(sr&&t.pid)try{by(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else t.kill("SIGKILL")}var $i=class{#e;#t;#r;#n;#o=new Set;constructor(e){this.#e=e?.maxOutputBytes??102400,this.#t=e?.hardCapBytes??100*1024*1024,this.#r=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??xi()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=WE(bi(GE(),"ctx-mode-"));try{let a=this.#i(i,n,r),c=yy(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#r:i,l=await this.#s(c,u,o,s);if(!l.backgrounded)try{vy(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{vy(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=JE(this.#r,r),a=this.#u(i,n,o);return this.execute({language:n,code:a,timeout:s})}#i(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
|
|
51
|
+
|
|
52
|
+
import "fmt"
|
|
53
|
+
|
|
54
|
+
func main() {
|
|
55
|
+
${r}
|
|
56
|
+
}
|
|
57
|
+
`),n==="php"&&!r.trimStart().startsWith("<?")&&(r=`<?php
|
|
58
|
+
${r}`),n==="elixir"&&xy(bi(this.#r,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(bi(this.#r,"_build/dev/lib"))}, "*/ebin"))
|
|
59
|
+
|> Enum.each(&Code.prepend_path/1)
|
|
60
|
+
|
|
61
|
+
${r}`);let s=bi(e,`script.${o[n]}`);return n==="shell"?_y(s,r,{encoding:"utf-8",mode:448}):_y(s,r,"utf-8"),s}async#a(e,r,n){let o=sr?".exe":"",s=e.replace(/\.rs$/,"")+o;try{by(`rustc ${e} -o ${s}`,{cwd:r,timeout:Math.min(n,3e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
|
|
62
|
+
${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,n)}async#s(e,r,n,o=!1){return new Promise(s=>{let i=sr&&["tsx","ts-node","elixir"].includes(e[0]),a=e[0],c;sr&&e.length===2&&e[1]?c=[e[1].replace(/\\/g,"/")]:c=sr?e.slice(1).map(_=>_.replace(/\\/g,"/")):e.slice(1);let u=KE(a,c,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(r),shell:i}),l=!1,d=!1,f=setTimeout(()=>{if(l=!0,o){d=!0,u.pid&&this.#o.add(u.pid),u.unref(),u.stdout.destroy(),u.stderr.destroy();let _=Buffer.concat(m).toString("utf-8"),x=Buffer.concat(p).toString("utf-8"),b=this.#e;s({stdout:Eo(_,b),stderr:Eo(x,b),exitCode:0,timedOut:!0,backgrounded:!0})}else ld(u)},n),m=[],p=[],h=0,g=!1;u.stdout.on("data",_=>{h+=_.length,h<=this.#t?m.push(_):g||(g=!0,ld(u))}),u.stderr.on("data",_=>{h+=_.length,h<=this.#t?p.push(_):g||(g=!0,ld(u))}),u.on("close",_=>{if(clearTimeout(f),d)return;let x=Buffer.concat(m).toString("utf-8"),b=Buffer.concat(p).toString("utf-8");g&&(b+=`
|
|
63
|
+
[output capped at ${(this.#t/1024/1024).toFixed(0)}MB \u2014 process killed]`);let k=this.#e,P=Eo(x,k),se=Eo(b,k);s({stdout:P,stderr:se,exitCode:l?1:_??1,timedOut:l})}),u.on("error",_=>{clearTimeout(f),!d&&s({stdout:"",stderr:_.message,exitCode:1,timedOut:!1})})})}#c(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=["GH_TOKEN","GITHUB_TOKEN","GH_HOST","AWS_ACCESS_KEY_ID","AWS_SECRET_ACCESS_KEY","AWS_SESSION_TOKEN","AWS_REGION","AWS_DEFAULT_REGION","AWS_PROFILE","GOOGLE_APPLICATION_CREDENTIALS","CLOUDSDK_CONFIG","DOCKER_HOST","KUBECONFIG","NPM_TOKEN","NODE_AUTH_TOKEN","npm_config_registry","HTTP_PROXY","HTTPS_PROXY","NO_PROXY","SSL_CERT_FILE","CURL_CA_BUNDLE","XDG_CONFIG_HOME","XDG_DATA_HOME","SSH_AUTH_SOCK","SSH_AGENT_PID","DIRENV_DIR","DIRENV_FILE","DIRENV_DIFF","DIRENV_WATCHES","DIRENV_LAYOUT_DIR","NIX_PATH","NIX_PROFILES","NIX_SSL_CERT_FILE","NIX_CC","NIX_STORE","NIX_BUILD_CORES","IN_NIX_SHELL","LOCALE_ARCHIVE","LD_LIBRARY_PATH","DYLD_LIBRARY_PATH","LIBRARY_PATH","C_INCLUDE_PATH","CPLUS_INCLUDE_PATH","PKG_CONFIG_PATH","CMAKE_PREFIX_PATH","GOPATH","GOROOT","CARGO_HOME","RUSTUP_HOME","ASDF_DIR","ASDF_DATA_DIR","MISE_DATA_DIR","VIRTUAL_ENV","CONDA_PREFIX","CONDA_DEFAULT_ENV","PYTHONPATH","GEM_HOME","GEM_PATH","BUNDLE_PATH","RBENV_ROOT","JAVA_HOME","SDKMAN_DIR"],o={PATH:process.env.PATH??(sr?"":"/usr/local/bin:/usr/bin:/bin"),HOME:r,TMPDIR:e,LANG:"en_US.UTF-8",PYTHONDONTWRITEBYTECODE:"1",PYTHONUNBUFFERED:"1",PYTHONUTF8:"1",NO_COLOR:"1"};if(sr){let s=["SYSTEMROOT","SystemRoot","COMSPEC","PATHEXT","USERPROFILE","APPDATA","LOCALAPPDATA","TEMP","TMP"];for(let c of s)process.env[c]&&(o[c]=process.env[c]);o.MSYS_NO_PATHCONV="1",o.MSYS2_ARG_CONV_EXCL="*";let i="C:\\Program Files\\Git\\usr\\bin",a="C:\\Program Files\\Git\\bin";o.PATH.includes(i)||(o.PATH=`${i};${a};${o.PATH}`)}for(let s of n)process.env[s]&&(o[s]=process.env[s]);if(!o.SSL_CERT_FILE){let s=sr?[]:["/etc/ssl/cert.pem","/etc/ssl/certs/ca-certificates.crt","/etc/pki/tls/certs/ca-bundle.crt","/etc/pki/ca-trust/extracted/pem/tls-ca-bundle.pem"];for(let i of s)if(xy(i)){o.SSL_CERT_FILE=i;break}}return o}#u(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
|
|
64
|
+
const FILE_CONTENT = require("fs").readFileSync(FILE_CONTENT_PATH, "utf-8");
|
|
65
|
+
${n}`;case"python":return`FILE_CONTENT_PATH = ${o}
|
|
66
|
+
with open(FILE_CONTENT_PATH, "r", encoding="utf-8") as _f:
|
|
67
|
+
FILE_CONTENT = _f.read()
|
|
68
|
+
${n}`;case"shell":{let s="'"+e.replace(/'/g,"'\\''")+"'";return`FILE_CONTENT_PATH=${s}
|
|
69
|
+
FILE_CONTENT=$(cat ${s})
|
|
70
|
+
${n}`}case"ruby":return`FILE_CONTENT_PATH = ${o}
|
|
71
|
+
FILE_CONTENT = File.read(FILE_CONTENT_PATH, encoding: "utf-8")
|
|
72
|
+
${n}`;case"go":return`package main
|
|
73
|
+
|
|
74
|
+
import (
|
|
75
|
+
"fmt"
|
|
76
|
+
"os"
|
|
77
|
+
)
|
|
78
|
+
|
|
79
|
+
var FILE_CONTENT_PATH = ${o}
|
|
80
|
+
|
|
81
|
+
func main() {
|
|
82
|
+
b, _ := os.ReadFile(FILE_CONTENT_PATH)
|
|
83
|
+
FILE_CONTENT := string(b)
|
|
84
|
+
_ = FILE_CONTENT
|
|
85
|
+
_ = fmt.Sprint()
|
|
86
|
+
${n}
|
|
87
|
+
}
|
|
88
|
+
`;case"rust":return`use std::fs;
|
|
89
|
+
|
|
90
|
+
fn main() {
|
|
91
|
+
let file_content_path = ${o};
|
|
92
|
+
let file_content = fs::read_to_string(file_content_path).unwrap();
|
|
93
|
+
${n}
|
|
94
|
+
}
|
|
95
|
+
`;case"php":return`<?php
|
|
96
|
+
$FILE_CONTENT_PATH = ${o};
|
|
97
|
+
$FILE_CONTENT = file_get_contents($FILE_CONTENT_PATH);
|
|
98
|
+
${n}`;case"perl":return`my $FILE_CONTENT_PATH = ${o};
|
|
99
|
+
open(my $fh, '<:encoding(UTF-8)', $FILE_CONTENT_PATH) or die "Cannot open: $!";
|
|
100
|
+
my $FILE_CONTENT = do { local $/; <$fh> };
|
|
101
|
+
close($fh);
|
|
102
|
+
${n}`;case"r":return`FILE_CONTENT_PATH <- ${o}
|
|
103
|
+
FILE_CONTENT <- readLines(FILE_CONTENT_PATH, warn=FALSE, encoding="UTF-8")
|
|
104
|
+
FILE_CONTENT <- paste(FILE_CONTENT, collapse="\\n")
|
|
105
|
+
${n}`;case"elixir":return`file_content_path = ${o}
|
|
106
|
+
file_content = File.read!(file_content_path)
|
|
107
|
+
${n}`}}};import{createRequire as YE}from"node:module";var dd=null;function $y(){return dd||(dd=YE(import.meta.url)("better-sqlite3")),dd}function wy(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}import{readFileSync as XE,readdirSync as QE,unlinkSync as Ty}from"node:fs";import{tmpdir as Ey}from"node:os";import{join as zy}from"node:path";var ky=new Set(["the","and","for","are","but","not","you","all","can","had","her","was","one","our","out","has","his","how","its","may","new","now","old","see","way","who","did","get","got","let","say","she","too","use","will","with","this","that","from","they","been","have","many","some","them","than","each","make","like","just","over","such","take","into","year","your","good","could","would","about","which","their","there","other","after","should","through","also","more","most","only","very","when","what","then","these","those","being","does","done","both","same","still","while","where","here","were","much","update","updates","updated","deps","dev","tests","test","add","added","fix","fixed","run","running","using"]);function ez(t,e="AND"){let r=t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(n=>n.length>0&&!["AND","OR","NOT","NEAR"].includes(n.toUpperCase()));return r.length===0?'""':r.map(n=>`"${n}"`).join(e==="OR"?" OR ":" ")}function tz(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=r.split(/\s+/).filter(o=>o.length>=3);return n.length===0?"":n.map(o=>`"${o}"`).join(e==="OR"?" OR ":" ")}function rz(t,e){if(t.length===0)return e.length;if(e.length===0)return t.length;let r=Array.from({length:e.length+1},(n,o)=>o);for(let n=1;n<=t.length;n++){let o=[n];for(let s=1;s<=e.length;s++)o[s]=t[n-1]===e[s-1]?r[s-1]:1+Math.min(r[s],o[s-1],r[s-1]);r=o}return r[e.length]}function nz(t){return t<=4?1:t<=12?2:3}var Sy=4096;function Py(){let t=Ey(),e=0;try{let r=QE(t);for(let n of r){let o=n.match(/^context-mode-(\d+)\.db$/);if(!o)continue;let s=parseInt(o[1],10);if(s!==process.pid)try{process.kill(s,0)}catch{let i=zy(t,n);for(let a of["","-wal","-shm"])try{Ty(i+a)}catch{}e++}}}catch{}return e}var wi=class{#e;#t;#r;#n;#o;#i;#a;#s;#c;#u;#d;#p;#f;#m;#h;#g;#y;#_;#v;#x;constructor(e){let r=$y();this.#t=e??zy(Ey(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),wy(this.#e),this.#$(),this.#w()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{Ty(this.#t+e)}catch{}}#$(){this.#e.exec(`
|
|
108
|
+
CREATE TABLE IF NOT EXISTS sources (
|
|
109
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
110
|
+
label TEXT NOT NULL,
|
|
111
|
+
chunk_count INTEGER NOT NULL DEFAULT 0,
|
|
112
|
+
code_chunk_count INTEGER NOT NULL DEFAULT 0,
|
|
113
|
+
indexed_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
114
|
+
);
|
|
115
|
+
|
|
116
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS chunks USING fts5(
|
|
117
|
+
title,
|
|
118
|
+
content,
|
|
119
|
+
source_id UNINDEXED,
|
|
120
|
+
content_type UNINDEXED,
|
|
121
|
+
tokenize='porter unicode61'
|
|
122
|
+
);
|
|
123
|
+
|
|
124
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS chunks_trigram USING fts5(
|
|
125
|
+
title,
|
|
126
|
+
content,
|
|
127
|
+
source_id UNINDEXED,
|
|
128
|
+
content_type UNINDEXED,
|
|
129
|
+
tokenize='trigram'
|
|
130
|
+
);
|
|
131
|
+
|
|
132
|
+
CREATE TABLE IF NOT EXISTS vocabulary (
|
|
133
|
+
word TEXT PRIMARY KEY
|
|
134
|
+
);
|
|
135
|
+
`)}#w(){this.#r=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, 0, 0)"),this.#n=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, ?, ?)"),this.#o=this.#e.prepare("INSERT INTO chunks (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#i=this.#e.prepare("INSERT INTO chunks_trigram (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#a=this.#e.prepare("INSERT OR IGNORE INTO vocabulary (word) VALUES (?)"),this.#s=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#c=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#u=this.#e.prepare("DELETE FROM sources WHERE label = ?"),this.#d=this.#e.prepare(`
|
|
136
|
+
SELECT
|
|
137
|
+
chunks.title,
|
|
138
|
+
chunks.content,
|
|
139
|
+
chunks.content_type,
|
|
140
|
+
sources.label,
|
|
141
|
+
bm25(chunks, 2.0, 1.0) AS rank,
|
|
142
|
+
highlight(chunks, 1, char(2), char(3)) AS highlighted
|
|
143
|
+
FROM chunks
|
|
144
|
+
JOIN sources ON sources.id = chunks.source_id
|
|
145
|
+
WHERE chunks MATCH ?
|
|
146
|
+
ORDER BY rank
|
|
147
|
+
LIMIT ?
|
|
148
|
+
`),this.#p=this.#e.prepare(`
|
|
149
|
+
SELECT
|
|
150
|
+
chunks.title,
|
|
151
|
+
chunks.content,
|
|
152
|
+
chunks.content_type,
|
|
153
|
+
sources.label,
|
|
154
|
+
bm25(chunks, 2.0, 1.0) AS rank,
|
|
155
|
+
highlight(chunks, 1, char(2), char(3)) AS highlighted
|
|
156
|
+
FROM chunks
|
|
157
|
+
JOIN sources ON sources.id = chunks.source_id
|
|
158
|
+
WHERE chunks MATCH ? AND sources.label LIKE ?
|
|
159
|
+
ORDER BY rank
|
|
160
|
+
LIMIT ?
|
|
161
|
+
`),this.#f=this.#e.prepare(`
|
|
162
|
+
SELECT
|
|
163
|
+
chunks_trigram.title,
|
|
164
|
+
chunks_trigram.content,
|
|
165
|
+
chunks_trigram.content_type,
|
|
166
|
+
sources.label,
|
|
167
|
+
bm25(chunks_trigram, 2.0, 1.0) AS rank,
|
|
168
|
+
highlight(chunks_trigram, 1, char(2), char(3)) AS highlighted
|
|
169
|
+
FROM chunks_trigram
|
|
170
|
+
JOIN sources ON sources.id = chunks_trigram.source_id
|
|
171
|
+
WHERE chunks_trigram MATCH ?
|
|
172
|
+
ORDER BY rank
|
|
173
|
+
LIMIT ?
|
|
174
|
+
`),this.#m=this.#e.prepare(`
|
|
175
|
+
SELECT
|
|
176
|
+
chunks_trigram.title,
|
|
177
|
+
chunks_trigram.content,
|
|
178
|
+
chunks_trigram.content_type,
|
|
179
|
+
sources.label,
|
|
180
|
+
bm25(chunks_trigram, 2.0, 1.0) AS rank,
|
|
181
|
+
highlight(chunks_trigram, 1, char(2), char(3)) AS highlighted
|
|
182
|
+
FROM chunks_trigram
|
|
183
|
+
JOIN sources ON sources.id = chunks_trigram.source_id
|
|
184
|
+
WHERE chunks_trigram MATCH ? AND sources.label LIKE ?
|
|
185
|
+
ORDER BY rank
|
|
186
|
+
LIMIT ?
|
|
187
|
+
`),this.#h=this.#e.prepare("SELECT word FROM vocabulary WHERE length(word) BETWEEN ? AND ?"),this.#g=this.#e.prepare("SELECT label, chunk_count as chunkCount FROM sources ORDER BY id DESC"),this.#y=this.#e.prepare(`SELECT c.title, c.content, c.content_type, s.label
|
|
188
|
+
FROM chunks c
|
|
189
|
+
JOIN sources s ON s.id = c.source_id
|
|
190
|
+
WHERE c.source_id = ?
|
|
191
|
+
ORDER BY c.rowid`),this.#_=this.#e.prepare("SELECT chunk_count FROM sources WHERE id = ?"),this.#v=this.#e.prepare("SELECT content FROM chunks WHERE source_id = ?"),this.#x=this.#e.prepare(`
|
|
192
|
+
SELECT
|
|
193
|
+
(SELECT COUNT(*) FROM sources) AS sources,
|
|
194
|
+
(SELECT COUNT(*) FROM chunks) AS chunks,
|
|
195
|
+
(SELECT COUNT(*) FROM chunks WHERE content_type = 'code') AS codeChunks
|
|
196
|
+
`)}index(e){let{content:r,path:n,source:o}=e;if(!r&&!n)throw new Error("Either content or path must be provided");let s=r??XE(n,"utf-8"),i=o??n??"untitled",a=this.#S(s);return this.#l(a,i,s)}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#T(e,n);return this.#l(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=Sy){if(!e||e.trim().length===0)return this.indexPlainText("",r);let o;try{o=JSON.parse(e)}catch{return this.indexPlainText(e,r)}let s=[];return this.#b(o,[],s,n),s.length===0?this.indexPlainText(e,r):this.#l(s,r,e)}#l(e,r,n){let o=e.filter(a=>a.hasCode).length,i=this.#e.transaction(()=>{if(this.#s.run(r),this.#c.run(r),this.#u.run(r),e.length===0){let u=this.#r.run(r);return Number(u.lastInsertRowid)}let a=this.#n.run(r,e.length,o),c=Number(a.lastInsertRowid);for(let u of e){let l=u.hasCode?"code":"prose";this.#o.run(u.title,u.content,c,l),this.#i.run(u.title,u.content,c,l)}return c})();return n&&this.#k(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}search(e,r=3,n,o="AND"){let s=ez(e,o),i=n?this.#p:this.#d,a=n?[s,`%${n}%`,r]:[s,r];return i.all(...a).map(u=>({title:u.title,content:u.content,source:u.label,rank:u.rank,contentType:u.content_type,highlighted:u.highlighted}))}searchTrigram(e,r=3,n,o="AND"){let s=tz(e,o);if(!s)return[];let i=n?this.#m:this.#f,a=n?[s,`%${n}%`,r]:[s,r];return i.all(...a).map(u=>({title:u.title,content:u.content,source:u.label,rank:u.rank,contentType:u.content_type,highlighted:u.highlighted}))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=nz(r.length),o=this.#h.all(r.length-n,r.length+n),s=null,i=n+1;for(let{word:a}of o){if(a===r)return null;let c=rz(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}searchWithFallback(e,r=3,n){let o=this.search(e,r,n,"AND");if(o.length>0)return o.map(f=>({...f,matchLayer:"porter"}));let s=this.search(e,r,n,"OR");if(s.length>0)return s.map(f=>({...f,matchLayer:"porter"}));let i=this.searchTrigram(e,r,n,"AND");if(i.length>0)return i.map(f=>({...f,matchLayer:"trigram"}));let a=this.searchTrigram(e,r,n,"OR");if(a.length>0)return a.map(f=>({...f,matchLayer:"trigram"}));let c=e.toLowerCase().trim().split(/\s+/).filter(f=>f.length>=3),u=c.join(" "),d=c.map(f=>this.fuzzyCorrect(f)??f).join(" ");if(d!==u){let f=this.search(d,r,n,"AND");if(f.length>0)return f.map(g=>({...g,matchLayer:"fuzzy"}));let m=this.search(d,r,n,"OR");if(m.length>0)return m.map(g=>({...g,matchLayer:"fuzzy"}));let p=this.searchTrigram(d,r,n,"AND");if(p.length>0)return p.map(g=>({...g,matchLayer:"fuzzy"}));let h=this.searchTrigram(d,r,n,"OR");if(h.length>0)return h.map(g=>({...g,matchLayer:"fuzzy"}))}return[]}listSources(){return this.#g.all()}getChunksBySource(e){return this.#y.all(e).map(n=>({title:n.title,content:n.content,source:n.label,rank:0,contentType:n.content_type}))}getDistinctiveTerms(e,r=40){let n=this.#_.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#v.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!ky.has(f)));for(let f of d)a.set(f,(a.get(f)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let f=Math.log(o/d),m=Math.min(l.length/20,.5),p=/[_]/.test(l),h=l.length>=12,g=p?1.5:h?.8:0;return{word:l,score:f+m+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#x.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}close(){this.#e.close()}#k(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!ky.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#a.run(o)})()}#S(e,r=Sy){let n=[],o=e.split(`
|
|
197
|
+
`),s=[],i=[],a="",c=()=>{let l=i.join(`
|
|
198
|
+
`).trim();if(l.length===0)return;let d=this.#R(s,a),f=i.some(_=>/^`{3,}/.test(_));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:f}),i=[];return}let m=l.split(/\n\n+/),p=[],h=1,g=()=>{if(p.length===0)return;let _=p.join(`
|
|
199
|
+
|
|
200
|
+
`).trim();if(_.length===0)return;let x=m.length>1?`${d} (${h})`:d;h++,n.push({title:x,content:_,hasCode:_.includes("```")}),p=[]};for(let _ of m){p.push(_);let x=p.join(`
|
|
201
|
+
|
|
202
|
+
`);Buffer.byteLength(x)>r&&p.length>1&&(p.pop(),g(),p=[_])}g(),i=[]},u=0;for(;u<o.length;){let l=o[u];if(/^[-_*]{3,}\s*$/.test(l)){c(),u++;continue}let d=l.match(/^(#{1,4})\s+(.+)$/);if(d){c();let m=d[1].length,p=d[2].trim();for(;s.length>0&&s[s.length-1].level>=m;)s.pop();s.push({level:m,text:p}),a=p,i.push(l),u++;continue}let f=l.match(/^(`{3,})(.*)?$/);if(f){let m=f[1],p=[l];for(u++;u<o.length;){if(p.push(o[u]),o[u].startsWith(m)&&o[u].trim()===m){u++;break}u++}i.push(...p);continue}i.push(l),u++}return c(),n}#T(e,r){let n=e.split(/\n\s*\n/);if(n.length>=3&&n.length<=200&&n.every(c=>Buffer.byteLength(c)<5e3))return n.map((c,u)=>{let l=c.trim();return{title:l.split(`
|
|
203
|
+
`)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
|
|
204
|
+
`);if(o.length<=r)return[{title:"Output",content:e}];let s=[],a=Math.max(r-2,1);for(let c=0;c<o.length;c+=a){let u=o.slice(c,c+r);if(u.length===0)break;let l=c+1,d=Math.min(c+u.length,o.length),f=u[0]?.trim().slice(0,80);s.push({title:f||`Lines ${l}-${d}`,content:u.join(`
|
|
205
|
+
`)})}return s}#b(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=JSON.stringify(e,null,2);if(Buffer.byteLength(i)<=o&&!(typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.values(e).some(c=>typeof c=="object"&&c!==null))){n.push({title:s,content:i,hasCode:!0});return}if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let a=Object.entries(e);if(a.length>0){for(let[c,u]of a)this.#b(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#P(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#E(e){if(e.length===0)return null;let r=e[0];if(typeof r!="object"||r===null||Array.isArray(r))return null;let n=["id","name","title","path","slug","key","label"],o=r;for(let s of n)if(s in o&&(typeof o[s]=="string"||typeof o[s]=="number"))return s;return null}#z(e,r,n,o,s){let i=e?`${e} > `:"";if(!s)return r===n?`${i}[${r}]`:`${i}[${r}-${n}]`;let a=c=>String(c[s]);return o.length===1?`${i}${a(o[0])}`:o.length<=3?i+o.map(a).join(", "):`${i}${a(o[0])}\u2026${a(o[o.length-1])}`}#P(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#E(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#z(s,c,l,a,i);n.push({title:d,content:JSON.stringify(a,null,2),hasCode:!0})};for(let l=0;l<e.length;l++){a.push(e[l]);let d=JSON.stringify(a,null,2);Buffer.byteLength(d)>o&&a.length>1&&(a.pop(),u(l-1),a=[e[l]],c=l)}u(c+a.length-1)}#R(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as Iy}from"node:fs";import{resolve as bn}from"node:path";import{homedir as Oy}from"node:os";function Ny(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function oz(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function sz(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function Ry(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function iz(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=sz(o),a=Ry(s);r=`^${i}(\\s${a})?$`}else r=`^${Ry(t)}$`;return new RegExp(r,e?"i":"")}function az(t,e=!1){let r="",n=0;for(;n<t.length;)t[n]==="*"&&t[n+1]==="*"?n+2<t.length&&t[n+2]==="/"?(r+="(.*/)?",n+=3):(r+=".*",n+=2):t[n]==="*"?(r+="[^/]*",n++):t[n]==="?"?(r+="[^/]",n++):(r+=t[n].replace(/[.+^${}()|[\]\\\/\-]/g,"\\$&"),n++);return new RegExp(`^${r}$`,e?"i":"")}function cz(t,e,r=!1){for(let n of e){let o=Ny(n);if(o&&iz(o,r).test(t))return n}return null}function uz(t){let e=[],r="",n=!1,o=!1,s=!1;for(let i=0;i<t.length;i++){let a=t[i],c=i>0?t[i-1]:"";a==="'"&&!o&&!s&&c!=="\\"?(n=!n,r+=a):a==='"'&&!n&&!s&&c!=="\\"?(o=!o,r+=a):a==="`"&&!n&&!o&&c!=="\\"?(s=!s,r+=a):!n&&!o&&!s?a===";"?(e.push(r.trim()),r=""):a==="|"&&t[i+1]==="|"||a==="&"&&t[i+1]==="&"?(e.push(r.trim()),r="",i++):a==="|"?(e.push(r.trim()),r=""):r+=a:r+=a}return r.trim()&&e.push(r.trim()),e.filter(i=>i.length>0)}function pd(t){let e;try{e=Iy(t,"utf-8")}catch{return null}let r;try{r=JSON.parse(e)}catch{return null}let n=r?.permissions;if(!n||typeof n!="object")return null;let o=s=>Array.isArray(s)?s.filter(i=>typeof i=="string"&&Ny(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function fd(t,e){let r=[];if(t){let s=bn(t,".claude","settings.local.json"),i=pd(s);i&&r.push(i);let a=bn(t,".claude","settings.json"),c=pd(a);c&&r.push(c)}let n=e??bn(Oy(),".claude","settings.json"),o=pd(n);return o&&r.push(o),r}function Cy(t,e,r){let n=[],o=a=>{let c;try{c=Iy(a,"utf-8")}catch{return null}let u;try{u=JSON.parse(c)}catch{return null}let l=u?.permissions?.deny;if(!Array.isArray(l))return[];let d=[];for(let f of l){if(typeof f!="string")continue;let m=oz(f);m&&m.tool===t&&d.push(m.glob)}return d};if(e){let a=o(bn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(bn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??bn(Oy(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function md(t,e,r=process.platform==="win32"){let n=uz(t);for(let o of n)for(let s of e){let i=cz(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function Ay(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(az(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var lz={python:[/os\.system\(\s*(['"])(.*?)\1\s*\)/g,/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*(['"])(.*?)\1/g],javascript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],typescript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],ruby:[/system\(\s*(['"])(.*?)\1/g,/`(.*?)`/g],go:[/exec\.Command\(\s*(['"`])(.*?)\1/g],php:[/shell_exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])system\(\s*(['"`])(.*?)\1/g,/passthru\(\s*(['"`])(.*?)\1/g,/proc_open\(\s*(['"`])(.*?)\1/g],rust:[/Command::new\(\s*(['"`])(.*?)\1/g]};function dz(t){let e=[],r=/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*\[([^\]]+)\]/g,n;for(;(n=r.exec(t))!==null;){let s=[...n[1].matchAll(/(['"])(.*?)\1/g)].map(i=>i[2]);s.length>0&&e.push(s.join(" "))}return e}function jy(t,e){let r=lz[e];if(!r&&e!=="python")return[];let n=[];if(r)for(let o of r){o.lastIndex=0;let s;for(;(s=o.exec(t))!==null;){let i=s[s.length-1];i&&n.push(i)}}return e==="python"&&n.push(...dz(t)),n}var Fy="1.0.0";process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
|
|
206
|
+
`)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
|
|
207
|
+
`)});var vd=xi(),_z=gy(vd),Et=new yi({name:"context-mode",version:Fy}),zo=new $i({runtimes:vd,projectRoot:process.env.CLAUDE_PROJECT_DIR}),$n=null;function vz(t){try{let e=ki(qy(),".claude","context-mode","sessions");if(!Dy(e))return;let r=mz(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=ki(e,n);try{t.index({path:o,source:"session-events"}),fz(o)}catch{}}}catch{}}function Po(){return $n||($n=new wi),vz($n),$n}var De={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,sessionStart:Date.now()};function W(t,e){let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return De.calls[t]=(De.calls[t]||0)+1,De.bytesReturned[t]=(De.bytesReturned[t]||0)+r,e}function ir(t){De.bytesIndexed+=t}function xd(t,e){try{let r=fd(process.env.CLAUDE_PROJECT_DIR),n=md(t,r);if(n.decision==="deny")return W(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Uy(t,e,r){try{let n=jy(t,e);if(n.length===0)return null;let o=fd(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=md(s,o);if(i.decision==="deny")return W(r,{content:[{type:"text",text:`Command blocked by security policy: embedded shell command "${s}" matches deny pattern ${i.matchedPattern}`}],isError:!0})}}catch{}return null}function xz(t,e){try{let r=Cy("Read",process.env.CLAUDE_PROJECT_DIR),n=Ay(t,r);if(n.denied)return W(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}var bz=_z.join(", "),$z=ud()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",wz="",kz="";function Sz(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===wz){for(e.push(r),n++;n<t.length&&t[n]!==kz;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Vy(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of Sz(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(d=>d.length>2),l=t.toLowerCase();for(let d of u){let f=l.indexOf(d);for(;f!==-1;)o.push(f),f=l.indexOf(d,f+1)}}if(o.length===0)return t.slice(0,r)+`
|
|
208
|
+
\u2026`;o.sort((u,l)=>u-l);let s=300,i=[];for(let u of o){let l=Math.max(0,u-s),d=Math.min(t.length,u+s);i.length>0&&l<=i[i.length-1][1]?i[i.length-1][1]=d:i.push([l,d])}let a=[],c=0;for(let[u,l]of i){if(c>=r)break;let d=t.slice(u,Math.min(l,u+(r-c)));a.push((u>0?"\u2026":"")+d+(l<t.length?"\u2026":"")),c+=d.length}return a.join(`
|
|
209
|
+
|
|
210
|
+
`)}Et.registerTool("ctx_execute",{title:"Execute Code",description:`MANDATORY: Use for any command where output exceeds 20 lines. Execute code in a sandboxed subprocess. Only stdout enters context \u2014 raw data stays in the subprocess.${$z} Available: ${bz}.
|
|
211
|
+
|
|
212
|
+
PREFER THIS OVER BASH for: API calls (gh, curl, aws), test runners (npm test, pytest), git queries (git log, git diff), data processing, and ANY CLI command that may produce large output. Bash should only be used for file mutations, git writes, and navigation.`,inputSchema:V.object({language:V.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:V.string().describe("Source code to execute. Use console.log (JS/TS), print (Python/Ruby/Perl/R), echo (Shell), echo (PHP), fmt.Println (Go), or IO.puts (Elixir) to output a summary to context."),timeout:V.number().optional().default(3e4).describe("Max execution time in ms"),background:V.boolean().optional().default(!1).describe("Keep process running after timeout (for servers/daemons). Returns partial output without killing the process. IMPORTANT: Do NOT add setTimeout/self-close timers in background scripts \u2014 the process must stay alive until the timeout detaches it. For server+fetch patterns, prefer putting both server and fetch in ONE ctx_execute call instead of using background."),intent:V.string().optional().describe(`What you're looking for in the output. When provided and output is large (>5KB), indexes output into knowledge base and returns section titles + previews \u2014 not full content. Use search(queries: [...]) to retrieve specific sections. Example: 'failing tests', 'HTTP 500 errors'.
|
|
213
|
+
|
|
214
|
+
TIP: Use specific technical terms, not just concepts. Check 'Searchable terms' in the response for available vocabulary.`)})},async({language:t,code:e,timeout:r,background:n,intent:o})=>{if(t==="shell"){let s=xd(e,"execute");if(s)return s}else{let s=Uy(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
|
|
215
|
+
let __cm_net=0;
|
|
216
|
+
// Report network bytes on process exit \u2014 works with both promise and callback patterns.
|
|
217
|
+
// process.on('exit') fires after all I/O completes, unlike .finally() which fires
|
|
218
|
+
// when __cm_main() resolves (immediately for callback-based http.get without await).
|
|
219
|
+
process.on('exit',()=>{if(__cm_net>0)try{process.stderr.write('__CM_NET__:'+__cm_net+'\\n')}catch{}});
|
|
220
|
+
;(function(__cm_req){
|
|
221
|
+
// Intercept globalThis.fetch
|
|
222
|
+
const __cm_f=globalThis.fetch;
|
|
223
|
+
globalThis.fetch=async(...a)=>{const r=await __cm_f(...a);
|
|
224
|
+
try{const cl=r.clone();const b=await cl.arrayBuffer();__cm_net+=b.byteLength}catch{}
|
|
225
|
+
return r};
|
|
226
|
+
// Shadow CJS require with http/https network tracking.
|
|
227
|
+
const __cm_hc=new Map();
|
|
228
|
+
const __cm_hm=new Set(['http','https','node:http','node:https']);
|
|
229
|
+
function __cm_wf(m,origFn){return function(...a){
|
|
230
|
+
const li=a.length-1;
|
|
231
|
+
if(li>=0&&typeof a[li]==='function'){const oc=a[li];a[li]=function(res){
|
|
232
|
+
res.on('data',function(c){__cm_net+=c.length});oc(res);};}
|
|
233
|
+
const req=origFn.apply(m,a);
|
|
234
|
+
const oOn=req.on.bind(req);
|
|
235
|
+
req.on=function(ev,cb,...r){
|
|
236
|
+
if(ev==='response'){return oOn(ev,function(res){
|
|
237
|
+
res.on('data',function(c){__cm_net+=c.length});cb(res);
|
|
238
|
+
},...r);}
|
|
239
|
+
return oOn(ev,cb,...r);
|
|
240
|
+
};
|
|
241
|
+
return req;
|
|
242
|
+
}}
|
|
243
|
+
var require=__cm_req?function(id){
|
|
244
|
+
const m=__cm_req(id);
|
|
245
|
+
if(!__cm_hm.has(id))return m;
|
|
246
|
+
const k=id.replace('node:','');
|
|
247
|
+
if(__cm_hc.has(k))return __cm_hc.get(k);
|
|
248
|
+
const w=Object.create(m);
|
|
249
|
+
if(typeof m.get==='function')w.get=__cm_wf(m,m.get);
|
|
250
|
+
if(typeof m.request==='function')w.request=__cm_wf(m,m.request);
|
|
251
|
+
__cm_hc.set(k,w);return w;
|
|
252
|
+
}:__cm_req;
|
|
253
|
+
if(__cm_req){if(__cm_req.resolve)require.resolve=__cm_req.resolve;
|
|
254
|
+
if(__cm_req.cache)require.cache=__cm_req.cache;}
|
|
255
|
+
async function __cm_main(){
|
|
256
|
+
${e}
|
|
257
|
+
}
|
|
258
|
+
__cm_main().catch(e=>{console.error(e);process.exitCode=1});${n?`
|
|
259
|
+
setInterval(()=>{},2147483647);`:""}
|
|
260
|
+
})(typeof require!=='undefined'?require:null);`);let i=await zo.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);if(a&&(De.bytesSandboxed+=parseInt(a[1]),i.stderr=i.stderr.replace(/\n?__CM_NET__:\d+\n?/g,"")),i.timedOut){let u=i.stdout?.trim();return i.backgrounded&&u?W("ctx_execute",{content:[{type:"text",text:`${u}
|
|
261
|
+
|
|
262
|
+
_(process backgrounded after ${r}ms \u2014 still running)_`}]}):u?W("ctx_execute",{content:[{type:"text",text:`${u}
|
|
263
|
+
|
|
264
|
+
_(timed out after ${r}ms \u2014 partial output shown above)_`}]}):W("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
|
|
265
|
+
|
|
266
|
+
stderr:
|
|
267
|
+
${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let u=`Exit code: ${i.exitCode}
|
|
268
|
+
|
|
269
|
+
stdout:
|
|
270
|
+
${i.stdout}
|
|
271
|
+
|
|
272
|
+
stderr:
|
|
273
|
+
${i.stderr}`;return o&&o.trim().length>0&&Buffer.byteLength(u)>Ti?(ir(Buffer.byteLength(u)),W("ctx_execute",{content:[{type:"text",text:Ei(u,o,`execute:${t}:error`)}],isError:!0})):W("ctx_execute",{content:[{type:"text",text:u}],isError:!0})}let c=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(c)>Ti?(ir(Buffer.byteLength(c)),W("ctx_execute",{content:[{type:"text",text:Ei(c,o,`execute:${t}`)}]})):W("ctx_execute",{content:[{type:"text",text:c}]})}catch(s){let i=s instanceof Error?s.message:String(s);return W("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});var Ti=5e3;function Ei(t,e,r,n=5){let o=t.split(`
|
|
274
|
+
`).length,s=Buffer.byteLength(t),i=Po(),a=i.indexPlainText(t,r),c=i.searchWithFallback(e,n,r),u=i.getDistinctiveTerms(a.sourceId);if(c.length===0){let d=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`No sections matched intent "${e}" in ${o}-line output (${(s/1024).toFixed(1)}KB).`];return u.length>0&&(d.push(""),d.push(`Searchable terms: ${u.join(", ")}`)),d.push(""),d.push("Use search() to explore the indexed content."),d.join(`
|
|
275
|
+
`)}let l=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`${c.length} sections matched "${e}" (${o} lines, ${(s/1024).toFixed(1)}KB):`,""];for(let d of c){let f=d.content.split(`
|
|
276
|
+
`)[0].slice(0,120);l.push(` - ${d.title}: ${f}`)}return u.length>0&&(l.push(""),l.push(`Searchable terms: ${u.join(", ")}`)),l.push(""),l.push("Use search(queries: [...]) to retrieve full content of any section."),l.join(`
|
|
277
|
+
`)}Et.registerTool("ctx_execute_file",{title:"Execute File Processing",description:`Read a file and process it without loading contents into context. The file is read into a FILE_CONTENT variable inside the sandbox. Only your printed summary enters context.
|
|
278
|
+
|
|
279
|
+
PREFER THIS OVER Read/cat for: log files, data files (CSV, JSON, XML), large source files for analysis, and any file where you need to extract specific information rather than read the entire content.`,inputSchema:V.object({path:V.string().describe("Absolute file path or relative to project root"),language:V.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:V.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:V.number().optional().default(3e4).describe("Max execution time in ms"),intent:V.string().optional().describe("What you're looking for in the output. When provided and output is large (>5KB), returns only matching sections via BM25 search instead of truncated output.")})},async({path:t,language:e,code:r,timeout:n,intent:o})=>{let s=xz(t,"execute_file");if(s)return s;if(e==="shell"){let i=xd(r,"execute_file");if(i)return i}else{let i=Uy(r,e,"execute_file");if(i)return i}try{let i=await zo.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return W("ctx_execute_file",{content:[{type:"text",text:`Timed out processing ${t} after ${n}ms`}],isError:!0});if(i.exitCode!==0){let c=`Error processing ${t} (exit ${i.exitCode}):
|
|
280
|
+
${i.stderr||i.stdout}`;return o&&o.trim().length>0&&Buffer.byteLength(c)>Ti?(ir(Buffer.byteLength(c)),W("ctx_execute_file",{content:[{type:"text",text:Ei(c,o,`file:${t}:error`)}],isError:!0})):W("ctx_execute_file",{content:[{type:"text",text:c}],isError:!0})}let a=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(a)>Ti?(ir(Buffer.byteLength(a)),W("ctx_execute_file",{content:[{type:"text",text:Ei(a,o,`file:${t}`)}]})):W("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return W("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});Et.registerTool("ctx_index",{title:"Index Content",description:`Index documentation or knowledge content into a searchable BM25 knowledge base. Chunks markdown by headings (keeping code blocks intact) and stores in ephemeral FTS5 database. The full content does NOT stay in context \u2014 only a brief summary is returned.
|
|
281
|
+
|
|
282
|
+
WHEN TO USE:
|
|
283
|
+
- Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
|
|
284
|
+
- API references (endpoint details, parameter specs, response schemas)
|
|
285
|
+
- MCP tools/list output (exact tool signatures and descriptions)
|
|
286
|
+
- Skill prompts and instructions that are too large for context
|
|
287
|
+
- README files, migration guides, changelog entries
|
|
288
|
+
- Any content with code examples you may need to reference precisely
|
|
289
|
+
|
|
290
|
+
After indexing, use 'search' to retrieve specific sections on-demand.
|
|
291
|
+
Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:V.object({content:V.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:V.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:V.string().optional().describe("Label for the indexed content (e.g., 'Context7: React useEffect', 'Skill: frontend-design')")})},async({content:t,path:e,source:r})=>{if(!t&&!e)return W("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)ir(Buffer.byteLength(t));else if(e)try{let s=await import("fs");ir(s.readFileSync(e).byteLength)}catch{}let o=Po().index({content:t,path:e,source:r});return W("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
|
|
292
|
+
Use search(queries: ["..."]) to query this content. Use source: "${o.label}" to scope results.`}]})}catch(n){let o=n instanceof Error?n.message:String(n);return W("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});var Lr=0,hd=Date.now(),Tz=6e4,Zy=3,My=8;Et.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Pass ALL search questions as queries array in ONE call.
|
|
293
|
+
|
|
294
|
+
TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:V.object({queries:V.array(V.string()).optional().describe("Array of search queries. Batch ALL questions in one call."),limit:V.number().optional().default(3).describe("Results per query (default: 3)"),source:V.string().optional().describe("Filter to a specific indexed source (partial match).")})},async t=>{try{let e=Po(),r=t,n=[];if(Array.isArray(r.queries)&&r.queries.length>0?n.push(...r.queries):typeof r.query=="string"&&r.query.length>0&&n.push(r.query),n.length===0)return W("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:o=3,source:s}=t,i=Date.now();if(i-hd>Tz&&(Lr=0,hd=i),Lr++,Lr>My)return W("ctx_search",{content:[{type:"text",text:`BLOCKED: ${Lr} search calls in ${Math.round((i-hd)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let a=Lr>Zy?1:Math.min(o,2),c=40*1024,u=0,l=[];for(let f of n){if(u>c){l.push(`## ${f}
|
|
295
|
+
(output cap reached)
|
|
296
|
+
`);continue}let m=e.searchWithFallback(f,a,s);if(m.length===0){l.push(`## ${f}
|
|
297
|
+
No results found.`);continue}let p=m.map((h,g)=>{let _=`--- [${h.source}] ---`,x=`### ${h.title}`,b=Vy(h.content,f,1500,h.highlighted);return`${_}
|
|
298
|
+
${x}
|
|
299
|
+
|
|
300
|
+
${b}`}).join(`
|
|
301
|
+
|
|
302
|
+
`);l.push(`## ${f}
|
|
303
|
+
|
|
304
|
+
${p}`),u+=p.length}let d=l.join(`
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
`);if(Lr>=Zy&&(d+=`
|
|
309
|
+
|
|
310
|
+
\u26A0 search call #${Lr}/${My} in this window. Results limited to ${a}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),d.trim().length===0){let f=e.listSources(),m=f.length>0?`
|
|
311
|
+
Indexed sources: ${f.map(p=>`"${p.label}" (${p.chunkCount} sections)`).join(", ")}`:"";return W("ctx_search",{content:[{type:"text",text:`No results found.${m}`}]})}return W("ctx_search",{content:[{type:"text",text:d}]})}catch(e){let r=e instanceof Error?e.message:String(e);return W("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});var gd=null,yd=null;function Ez(){return gd||(gd=_d(import.meta.url).resolve("turndown")),gd}function zz(){return yd||(yd=_d(import.meta.url).resolve("turndown-plugin-gfm")),yd}function Pz(t,e){let r=JSON.stringify(Ez()),n=JSON.stringify(zz()),o=JSON.stringify(e);return`
|
|
312
|
+
const TurndownService = require(${r});
|
|
313
|
+
const { gfm } = require(${n});
|
|
314
|
+
const fs = require('fs');
|
|
315
|
+
const url = ${JSON.stringify(t)};
|
|
316
|
+
const outputPath = ${o};
|
|
317
|
+
|
|
318
|
+
function emit(ct, content) {
|
|
319
|
+
// Write content to file to bypass executor stdout truncation (100KB limit).
|
|
320
|
+
// Only the content-type marker goes to stdout.
|
|
321
|
+
fs.writeFileSync(outputPath, content);
|
|
322
|
+
console.log('__CM_CT__:' + ct);
|
|
323
|
+
}
|
|
324
|
+
|
|
325
|
+
async function main() {
|
|
326
|
+
const resp = await fetch(url);
|
|
327
|
+
if (!resp.ok) { console.error("HTTP " + resp.status); process.exit(1); }
|
|
328
|
+
const contentType = resp.headers.get('content-type') || '';
|
|
329
|
+
|
|
330
|
+
// --- JSON responses ---
|
|
331
|
+
if (contentType.includes('application/json') || contentType.includes('+json')) {
|
|
332
|
+
const text = await resp.text();
|
|
333
|
+
try {
|
|
334
|
+
const pretty = JSON.stringify(JSON.parse(text), null, 2);
|
|
335
|
+
emit('json', pretty);
|
|
336
|
+
} catch {
|
|
337
|
+
emit('text', text);
|
|
338
|
+
}
|
|
339
|
+
return;
|
|
340
|
+
}
|
|
341
|
+
|
|
342
|
+
// --- HTML responses (default for text/html, application/xhtml+xml) ---
|
|
343
|
+
if (contentType.includes('text/html') || contentType.includes('application/xhtml')) {
|
|
344
|
+
const html = await resp.text();
|
|
345
|
+
const td = new TurndownService({ headingStyle: 'atx', codeBlockStyle: 'fenced' });
|
|
346
|
+
td.use(gfm);
|
|
347
|
+
td.remove(['script', 'style', 'nav', 'header', 'footer', 'noscript']);
|
|
348
|
+
emit('html', td.turndown(html));
|
|
349
|
+
return;
|
|
350
|
+
}
|
|
351
|
+
|
|
352
|
+
// --- Everything else: plain text, CSV, XML, etc. ---
|
|
353
|
+
const text = await resp.text();
|
|
354
|
+
emit('text', text);
|
|
355
|
+
}
|
|
356
|
+
main();
|
|
357
|
+
`}Et.registerTool("ctx_fetch_and_index",{title:"Fetch & Index URL",description:`Fetches URL content, converts HTML to markdown, indexes into searchable knowledge base, and returns a ~3KB preview. Full content stays in sandbox \u2014 use search() for deeper lookups.
|
|
358
|
+
|
|
359
|
+
Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
|
|
360
|
+
|
|
361
|
+
Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.`,inputSchema:V.object({url:V.string().describe("The URL to fetch and index"),source:V.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')")})},async({url:t,source:e})=>{let r=ki(yz(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let n=Pz(t,r),o=await zo.execute({language:"javascript",code:n,timeout:3e4});if(o.exitCode!==0)return W("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${o.stderr||o.stdout}`}],isError:!0});let s=Po(),i=(o.stdout||"").trim(),a;try{a=hz(r,"utf-8").trim()}catch{return W("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(a.length===0)return W("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});ir(Buffer.byteLength(a));let c;i==="__CM_CT__:json"?c=s.indexJSON(a,e??t):i==="__CM_CT__:text"?c=s.indexPlainText(a,e??t):c=s.index({content:a,source:e??t});let u=3072,l=a.length>u?a.slice(0,u)+`
|
|
362
|
+
|
|
363
|
+
\u2026[truncated \u2014 use search() for full content]`:a,d=(Buffer.byteLength(a)/1024).toFixed(1),f=[`Fetched and indexed **${c.totalChunks} sections** (${d}KB) from: ${c.label}`,`Full content indexed in sandbox \u2014 use search(queries: [...], source: "${c.label}") for specific lookups.`,"","---","",l].join(`
|
|
364
|
+
`);return W("ctx_fetch_and_index",{content:[{type:"text",text:f}]})}catch(n){let o=n instanceof Error?n.message:String(n);return W("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${o}`}],isError:!0})}finally{try{gz(r)}catch{}}});Et.registerTool("ctx_batch_execute",{title:"Batch Execute & Search",description:`Execute multiple commands in ONE call, auto-index all output, and search with multiple queries. Returns search results directly \u2014 no follow-up calls needed.
|
|
365
|
+
|
|
366
|
+
THIS IS THE PRIMARY TOOL. Use this instead of multiple execute() calls.
|
|
367
|
+
|
|
368
|
+
One batch_execute call replaces 30+ execute calls + 10+ search calls.
|
|
369
|
+
Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:V.object({commands:V.array(V.object({label:V.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:V.string().describe("Shell command to execute")})).min(1).describe("Commands to execute as a batch. Each runs sequentially, output is labeled with the section header."),queries:V.array(V.string()).min(1).describe("Search queries to extract information from indexed output. Use 5-8 comprehensive queries. Each returns top 5 matching sections with full content. This is your ONLY chance \u2014 put ALL your questions here. No follow-up calls needed."),timeout:V.number().optional().default(6e4).describe("Max execution time in ms (default: 60s)")})},async({commands:t,queries:e,timeout:r})=>{for(let n of t){let o=xd(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1;for(let k of t){let P=Date.now()-o,se=r-P;if(se<=0){n.push(`# ${k.label}
|
|
370
|
+
|
|
371
|
+
(skipped \u2014 batch timeout exceeded)
|
|
372
|
+
`),s=!0;continue}let ie=await zo.execute({language:"shell",code:`${k.command} 2>&1`,timeout:se}),We=ie.stdout||"(no output)";if(n.push(`# ${k.label}
|
|
373
|
+
|
|
374
|
+
${We}
|
|
375
|
+
`),ie.timedOut){s=!0;let zt=t.indexOf(k);for(let pe=zt+1;pe<t.length;pe++)n.push(`# ${t[pe].label}
|
|
376
|
+
|
|
377
|
+
(skipped \u2014 batch timeout exceeded)
|
|
378
|
+
`);break}}let i=n.join(`
|
|
379
|
+
`),a=Buffer.byteLength(i),c=i.split(`
|
|
380
|
+
`).length;if(s&&n.length===0)return W("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});ir(a);let u=Po(),l=`batch:${t.map(k=>k.label).join(",").slice(0,80)}`,d=u.index({content:i,source:l}),f=u.getChunksBySource(d.sourceId),m=["## Indexed Sections",""],p=[];for(let k of f){let P=Buffer.byteLength(k.content);m.push(`- ${k.title} (${(P/1024).toFixed(1)}KB)`),p.push(k.title)}let h=80*1024,g=[],_=0;for(let k of e){if(_>h){g.push(`## ${k}
|
|
381
|
+
(output cap reached \u2014 use search(queries: ["${k}"]) for details)
|
|
382
|
+
`);continue}let P=u.searchWithFallback(k,3,l),se=!1;if(P.length===0&&(P=u.searchWithFallback(k,3),se=P.length>0),g.push(`## ${k}`),se&&g.push("> **Note:** No results in current batch output. Showing results from previously indexed content."),g.push(""),P.length>0)for(let ie of P){let We=Vy(ie.content,k,3e3,ie.highlighted),zt=se?` _(source: ${ie.source})_`:"";g.push(`### ${ie.title}${zt}`),g.push(We),g.push(""),_+=We.length+ie.title.length}else g.push("No matching sections found."),g.push("")}let x=u.getDistinctiveTerms?u.getDistinctiveTerms(d.sourceId):[],b=[`Executed ${t.length} commands (${c} lines, ${(a/1024).toFixed(1)}KB). Indexed ${d.totalChunks} sections. Searched ${e.length} queries.`,"",...m,"",...g,x.length>0?`
|
|
383
|
+
Searchable terms for follow-up: ${x.join(", ")}`:""].join(`
|
|
384
|
+
`);return W("ctx_batch_execute",{content:[{type:"text",text:b}]})}catch(n){let o=n instanceof Error?n.message:String(n);return W("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});Et.registerTool("ctx_stats",{title:"Session Statistics",description:"Returns context consumption statistics for the current session. Shows total bytes returned to context, breakdown by tool, call counts, estimated token usage, and context savings ratio.",inputSchema:V.object({})},async()=>{let t=Object.values(De.bytesReturned).reduce((d,f)=>d+f,0),e=Object.values(De.calls).reduce((d,f)=>d+f,0),n=((Date.now()-De.sessionStart)/6e4).toFixed(1),o=De.bytesIndexed+De.bytesSandboxed,s=o+t,i=s/Math.max(t,1),a=s>0?((1-t/s)*100).toFixed(0):"0",c=d=>d>=1024*1024?`${(d/1024/1024).toFixed(1)}MB`:`${(d/1024).toFixed(1)}KB`,u=[`## context-mode \u2014 Session Report (${n} min)`];if(u.push("","### Context Window Protection",""),e===0)u.push("No context-mode tool calls yet. Use `batch_execute`, `execute`, or `fetch_and_index` to keep raw output out of your context window.");else{u.push("| Metric | Value |","|--------|------:|",`| Total data processed | **${c(s)}** |`,`| Kept in sandbox (never entered context) | **${c(o)}** |`,`| Entered context | ${c(t)} |`,`| Estimated tokens saved | ~${Math.round(o/4).toLocaleString()} |`,`| **Context savings** | **${i.toFixed(1)}x (${a}% reduction)** |`);let d=new Set([...Object.keys(De.calls),...Object.keys(De.bytesReturned)]);if(d.size>0){u.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let f of Array.from(d).sort()){let m=De.calls[f]||0,p=De.bytesReturned[f]||0,h=Math.round(p/4);u.push(`| ${f} | ${m} | ${c(p)} | ~${h.toLocaleString()} |`)}u.push(`| **Total** | **${e}** | **${c(t)}** | **~${Math.round(t/4).toLocaleString()}** |`)}o>0&&u.push("",`Without context-mode, **${c(s)}** of raw output would flood your context window. Instead, **${a}%** stayed in sandbox.`)}try{let d=process.env.CLAUDE_PROJECT_DIR||process.cwd(),f=pz("sha256").update(d).digest("hex").slice(0,16),m=ki(qy(),".claude","context-mode","sessions",`${f}.db`);if(Dy(m)){let h=_d(import.meta.url)("better-sqlite3"),g=new h(m,{readonly:!0}),_=g.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),x=g.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),b=g.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),k=g.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(_.cnt>0){let P=b?.compact_count??0,se=g.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),ie=new Map;for(let pe of se){ie.has(pe.category)||ie.set(pe.category,new Set);let Dt=ie.get(pe.category);if(Dt.size<5){let Ce=pe.data;pe.category==="file"?Ce=pe.data.split("/").pop()||pe.data:pe.category==="prompt"&&(Ce=Ce.length>50?Ce.slice(0,47)+"...":Ce),Ce.length>40&&(Ce=Ce.slice(0,37)+"..."),Dt.add(Ce)}}let We={file:"Files tracked",rule:"Project rules (CLAUDE.md)",prompt:"Your requests saved",mcp:"Plugin tools used",git:"Git operations",env:"Environment setup",error:"Errors caught",task:"Tasks in progress",decision:"Your decisions",cwd:"Working directory",skill:"Skills used",subagent:"Delegated work",intent:"Session mode",data:"Data references",role:"Behavioral directives"},zt={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won't ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"};u.push("","### Session Continuity","","| What's preserved | Count | I remember... | Why it matters |","|------------------|------:|---------------|----------------|");for(let pe of x){let Dt=We[pe.category]||pe.category,Ce=ie.get(pe.category),Ro=Ce?Array.from(Ce).join(", "):"",zi=zt[pe.category]||"Survives context resets";u.push(`| ${Dt} | ${pe.cnt} | ${Ro} | ${zi} |`)}u.push(`| **Total** | **${_.cnt}** | | **Zero knowledge lost on compact** |`),u.push(""),P>0?u.push(`Context has been compacted **${P} time(s)** \u2014 session knowledge was preserved each time.`):u.push("When your context compacts, all of this will restore Claude's awareness \u2014 no starting from scratch."),k&&!k.consumed&&u.push(`Resume snapshot ready (${k.event_count} events) for the next compaction.`),u.push(""),u.push("> **Note:** Previous session data is loaded when you start a new session. Without `--continue`, old session history is cleaned up to keep the database lean.")}g.close()}}catch{}u.push("","---","_Display this entire report as-is in your response. Do NOT summarize, collapse, or paraphrase any section._");let l=u.join(`
|
|
385
|
+
`);return W("ctx_stats",{content:[{type:"text",text:l}]})});Et.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a markdown checklist.",inputSchema:V.object({})},async()=>{let r=["## ctx-doctor","","Run this command using your shell execution tool:","","```",`node "${Si(Si(Ly(import.meta.url)))}/build/cli.js" doctor`,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for PASS, `[ ]` for FAIL, `[-]` for WARN","- Example format:"," ```"," ## context-mode doctor"," - [x] Runtimes: 6/10 (javascript, typescript, python, shell, ruby, perl)"," - [x] Performance: FAST (Bun)"," - [x] Server test: PASS"," - [x] Hooks: PASS"," - [x] FTS5: PASS"," - [x] npm: v0.9.23"," ```"].join(`
|
|
386
|
+
`);return W("ctx_doctor",{content:[{type:"text",text:r}]})});Et.registerTool("ctx_upgrade",{title:"Upgrade Plugin",description:"Upgrade context-mode to the latest version. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a checklist. Tell the user to restart their session after upgrade.",inputSchema:V.object({})},async()=>{let r=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",`node "${Si(Si(Ly(import.meta.url)))}/build/cli.js" upgrade`,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for success, `[ ]` for failure","- Example format:"," ```"," ## context-mode upgrade"," - [x] Pulled latest from GitHub"," - [x] Built and installed v0.9.24"," - [x] npm global updated"," - [x] Hooks configured"," - [x] Doctor: all checks PASS"," ```","- Tell the user to restart their session to pick up the new version."].join(`
|
|
387
|
+
`);return W("ctx_upgrade",{content:[{type:"text",text:r}]})});async function Rz(){let t=Py();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{zo.cleanupBackgrounded(),$n&&$n.cleanup()};process.on("exit",e),process.on("SIGINT",()=>{e(),process.exit(0)}),process.on("SIGTERM",()=>{e(),process.exit(0)});let r=new vi;await Et.connect(r),console.error(`Context Mode MCP server v${Fy} running on stdio`),console.error(`Detected runtimes:
|
|
388
|
+
${hy(vd)}`),ud()||(console.error(`
|
|
389
|
+
Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}Rz().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{Vy as extractSnippet,Sz as positionsFromHighlight};
|