context-mode 1.0.57 → 1.0.58

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/server.bundle.mjs CHANGED
@@ -1,63 +1,63 @@
1
1
  #!/usr/bin/env node
2
- var Yv=Object.create;var $a=Object.defineProperty;var Xv=Object.getOwnPropertyDescriptor;var Qv=Object.getOwnPropertyNames;var ek=Object.getPrototypeOf,tk=Object.prototype.hasOwnProperty;var Se=(t,e)=>()=>(t&&(e=t(t=0)),e);var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ke=(t,e)=>{for(var r in e)$a(t,r,{get:e[r],enumerable:!0})},rk=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Qv(e))!tk.call(t,o)&&o!==r&&$a(t,o,{get:()=>e[o],enumerable:!(n=Xv(e,o))||n.enumerable});return t};var ef=(t,e,r)=>(r=t!=null?Yv(ek(t)):{},rk(e||!t||!t.__esModule?$a(r,"default",{value:t,enumerable:!0}):r,t));var jo=T(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.regexpCode=te.getEsmExportName=te.getProperty=te.safeStringify=te.stringify=te.strConcat=te.addCodeArg=te.str=te._=te.nil=te._Code=te.Name=te.IDENTIFIER=te._CodeOrName=void 0;var No=class{};te._CodeOrName=No;te.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Vr=class extends No{constructor(e){if(super(),!te.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}}};te.Name=Vr;var lt=class extends No{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 Vr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};te._Code=lt;te.nil=new lt("");function Yh(t,...e){let r=[t[0]],n=0;for(;n<e.length;)ul(r,e[n]),r.push(t[++n]);return new lt(r)}te._=Yh;var cl=new lt("+");function Xh(t,...e){let r=[Ao(t[0])],n=0;for(;n<e.length;)r.push(cl),ul(r,e[n]),r.push(cl,Ao(t[++n]));return QE(r),new lt(r)}te.str=Xh;function ul(t,e){e instanceof lt?t.push(...e._items):e instanceof Vr?t.push(e):t.push(rT(e))}te.addCodeArg=ul;function QE(t){let e=1;for(;e<t.length-1;){if(t[e]===cl){let r=eT(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function eT(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Vr||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 Vr))return`"${t}${e.slice(1)}`}function tT(t,e){return e.emptyStr()?t:t.emptyStr()?e:Xh`${t}${e}`}te.strConcat=tT;function rT(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Ao(Array.isArray(t)?t.join(","):t)}function nT(t){return new lt(Ao(t))}te.stringify=nT;function Ao(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}te.safeStringify=Ao;function oT(t){return typeof t=="string"&&te.IDENTIFIER.test(t)?new lt(`.${t}`):Yh`[${t}]`}te.getProperty=oT;function sT(t){if(typeof t=="string"&&te.IDENTIFIER.test(t))return new lt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}te.getEsmExportName=sT;function iT(t){return new lt(t.toString())}te.regexpCode=iT});var pl=T(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.ValueScope=Qe.ValueScopeName=Qe.Scope=Qe.varKinds=Qe.UsedValueState=void 0;var Xe=jo(),ll=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},ki;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(ki||(Qe.UsedValueState=ki={}));Qe.varKinds={const:new Xe.Name("const"),let:new Xe.Name("let"),var:new Xe.Name("var")};var Si=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Xe.Name?e:this.name(e)}name(e){return new Xe.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Qe.Scope=Si;var bi=class extends Xe.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Xe._)`.${new Xe.Name(r)}[${n}]`}};Qe.ValueScopeName=bi;var aT=(0,Xe._)`\n`,dl=class extends Si{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?aT:Xe.nil}}get(){return this._scope}name(e){return new bi(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,Xe._)`${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=Xe.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,ki.Started);let l=r(u);if(l){let d=this.opts.es5?Qe.varKinds.var:Qe.varKinds.const;s=(0,Xe._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Xe._)`${s}${l}${this.opts._n}`;else throw new ll(u);c.set(u,ki.Completed)})}return s}};Qe.ValueScope=dl});var F=T(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.or=B.and=B.not=B.CodeGen=B.operators=B.varKinds=B.ValueScopeName=B.ValueScope=B.Scope=B.Name=B.regexpCode=B.stringify=B.getProperty=B.nil=B.strConcat=B.str=B._=void 0;var Y=jo(),xt=pl(),cr=jo();Object.defineProperty(B,"_",{enumerable:!0,get:function(){return cr._}});Object.defineProperty(B,"str",{enumerable:!0,get:function(){return cr.str}});Object.defineProperty(B,"strConcat",{enumerable:!0,get:function(){return cr.strConcat}});Object.defineProperty(B,"nil",{enumerable:!0,get:function(){return cr.nil}});Object.defineProperty(B,"getProperty",{enumerable:!0,get:function(){return cr.getProperty}});Object.defineProperty(B,"stringify",{enumerable:!0,get:function(){return cr.stringify}});Object.defineProperty(B,"regexpCode",{enumerable:!0,get:function(){return cr.regexpCode}});Object.defineProperty(B,"Name",{enumerable:!0,get:function(){return cr.Name}});var $i=pl();Object.defineProperty(B,"Scope",{enumerable:!0,get:function(){return $i.Scope}});Object.defineProperty(B,"ValueScope",{enumerable:!0,get:function(){return $i.ValueScope}});Object.defineProperty(B,"ValueScopeName",{enumerable:!0,get:function(){return $i.ValueScopeName}});Object.defineProperty(B,"varKinds",{enumerable:!0,get:function(){return $i.varKinds}});B.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 Vt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},fl=class extends Vt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?xt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=zn(this.rhs,e,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},wi=class extends Vt{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=zn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return Ti(e,this.rhs)}},ml=class extends wi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},hl=class extends Vt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},gl=class extends Vt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},_l=class extends Vt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},yl=class extends Vt{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=zn(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},Mo=class extends Vt{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)||(cT(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Wr(e,r.names),{})}},Kt=class extends Mo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},xl=class extends Mo{},In=class extends Kt{};In.kind="else";var Kr=class t extends Kt{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 In(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(Qh(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=zn(this.condition,e,r),this}get names(){let e=super.names;return Ti(e,this.condition),this.else&&Wr(e,this.else.names),e}};Kr.kind="if";var Jr=class extends Kt{};Jr.kind="for";var vl=class extends Jr{constructor(e){super(),this.iteration=e}render(e){return`for(${this.iteration})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iteration=zn(this.iteration,e,r),this}get names(){return Wr(super.names,this.iteration.names)}},kl=class extends Jr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?xt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=Ti(super.names,this.from);return Ti(e,this.to)}},Ei=class extends Jr{constructor(e,r,n,o){super(),this.loop=e,this.varKind=r,this.name=n,this.iterable=o}render(e){return`for(${this.varKind} ${this.name} ${this.loop} ${this.iterable})`+super.render(e)}optimizeNames(e,r){if(super.optimizeNames(e,r))return this.iterable=zn(this.iterable,e,r),this}get names(){return Wr(super.names,this.iterable.names)}},Do=class extends Kt{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)}};Do.kind="func";var Lo=class extends Mo{render(e){return"return "+super.render(e)}};Lo.kind="return";var Sl=class extends Kt{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&&Wr(e,this.catch.names),this.finally&&Wr(e,this.finally.names),e}},Zo=class extends Kt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Zo.kind="catch";var Uo=class extends Kt{render(e){return"finally"+super.render(e)}};Uo.kind="finally";var bl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
- `:""},this._extScope=e,this._scope=new xt.Scope({parent:e}),this._nodes=[new xl]}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 fl(e,s,n)),s}const(e,r,n){return this._def(xt.varKinds.const,e,r,n)}let(e,r,n){return this._def(xt.varKinds.let,e,r,n)}var(e,r,n){return this._def(xt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new wi(e,r,n))}add(e,r){return this._leafNode(new ml(e,B.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Y.nil&&this._leafNode(new yl(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 Kr(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 Kr(e))}else(){return this._elseNode(new In)}endIf(){return this._endBlockNode(Kr,In)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new vl(e),r)}forRange(e,r,n,o,s=this.opts.es5?xt.varKinds.var:xt.varKinds.let){let i=this._scope.toName(e);return this._for(new kl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=xt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof 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 Ei("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?xt.varKinds.var:xt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Y._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Ei("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Jr)}label(e){return this._leafNode(new hl(e))}break(e){return this._leafNode(new gl(e))}return(e){let r=new Lo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Lo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Sl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Zo(s),r(s)}return n&&(this._currNode=o.finally=new Uo,this.code(n)),this._endBlockNode(Zo,Uo)}throw(e){return this._leafNode(new _l(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 Do(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Do)}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 Kr))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}};B.CodeGen=bl;function Wr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ti(t,e){return e instanceof Y._CodeOrName?Wr(t,e.names):t}function zn(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 cT(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function Qh(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${wl(t)}`}B.not=Qh;var uT=eg(B.operators.AND);function lT(...t){return t.reduce(uT)}B.and=lT;var dT=eg(B.operators.OR);function pT(...t){return t.reduce(dT)}B.or=pT;function eg(t){return(e,r)=>e===Y.nil?r:r===Y.nil?e:(0,Y._)`${wl(e)} ${t} ${wl(r)}`}function wl(t){return t instanceof Y.Name?t:(0,Y._)`(${t})`}});var X=T(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.checkStrictMode=V.getErrorPath=V.Type=V.useFunc=V.setEvaluated=V.evaluatedPropsToName=V.mergeEvaluated=V.eachItem=V.unescapeJsonPointer=V.escapeJsonPointer=V.escapeFragment=V.unescapeFragment=V.schemaRefOrVal=V.schemaHasRulesButRef=V.schemaHasRules=V.checkUnknownRules=V.alwaysValidSchema=V.toHash=void 0;var se=F(),fT=jo();function mT(t){let e={};for(let r of t)e[r]=!0;return e}V.toHash=mT;function hT(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(ng(t,e),!og(e,t.self.RULES.all))}V.alwaysValidSchema=hT;function ng(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]||ag(t,`unknown keyword: "${s}"`)}V.checkUnknownRules=ng;function og(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}V.schemaHasRules=og;function gT(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}V.schemaHasRulesButRef=gT;function _T({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,se._)`${r}`}return(0,se._)`${t}${e}${(0,se.getProperty)(n)}`}V.schemaRefOrVal=_T;function yT(t){return sg(decodeURIComponent(t))}V.unescapeFragment=yT;function xT(t){return encodeURIComponent(Tl(t))}V.escapeFragment=xT;function Tl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}V.escapeJsonPointer=Tl;function sg(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}V.unescapeJsonPointer=sg;function vT(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}V.eachItem=vT;function tg({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof se.Name?(s instanceof se.Name?t(o,s,i):e(o,s,i),i):s instanceof se.Name?(e(o,i,s),s):r(s,i);return a===se.Name&&!(c instanceof se.Name)?n(o,c):c}}V.mergeEvaluated={props:tg({mergeNames:(t,e,r)=>t.if((0,se._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,se._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,se._)`${r} || {}`).code((0,se._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,se._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,se._)`${r} || {}`),$l(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:ig}),items:tg({mergeNames:(t,e,r)=>t.if((0,se._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,se._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,se._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,se._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function ig(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,se._)`{}`);return e!==void 0&&$l(t,r,e),r}V.evaluatedPropsToName=ig;function $l(t,e,r){Object.keys(r).forEach(n=>t.assign((0,se._)`${e}${(0,se.getProperty)(n)}`,!0))}V.setEvaluated=$l;var rg={};function kT(t,e){return t.scopeValue("func",{ref:e,code:rg[e.code]||(rg[e.code]=new fT._Code(e.code))})}V.useFunc=kT;var El;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(El||(V.Type=El={}));function ST(t,e,r){if(t instanceof se.Name){let n=e===El.Num;return r?n?(0,se._)`"[" + ${t} + "]"`:(0,se._)`"['" + ${t} + "']"`:n?(0,se._)`"/" + ${t}`:(0,se._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,se.getProperty)(t).toString():"/"+Tl(t)}V.getErrorPath=ST;function ag(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}V.checkStrictMode=ag});var Jt=T(Pl=>{"use strict";Object.defineProperty(Pl,"__esModule",{value:!0});var Me=F(),bT={data:new Me.Name("data"),valCxt:new Me.Name("valCxt"),instancePath:new Me.Name("instancePath"),parentData:new Me.Name("parentData"),parentDataProperty:new Me.Name("parentDataProperty"),rootData:new Me.Name("rootData"),dynamicAnchors:new Me.Name("dynamicAnchors"),vErrors:new Me.Name("vErrors"),errors:new Me.Name("errors"),this:new Me.Name("this"),self:new Me.Name("self"),scope:new Me.Name("scope"),json:new Me.Name("json"),jsonPos:new Me.Name("jsonPos"),jsonLen:new Me.Name("jsonLen"),jsonPart:new Me.Name("jsonPart")};Pl.default=bT});var Ho=T(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.extendErrors=De.resetErrorsCount=De.reportExtraError=De.reportError=De.keyword$DataError=De.keywordError=void 0;var Q=F(),Pi=X(),Fe=Jt();De.keywordError={message:({keyword:t})=>(0,Q.str)`must pass "${t}" keyword validation`};De.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 wT(t,e=De.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=lg(t,e,r);n??(i||a)?cg(s,c):ug(o,(0,Q._)`[${c}]`)}De.reportError=wT;function ET(t,e=De.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=lg(t,e,r);cg(o,a),s||i||ug(n,Fe.default.vErrors)}De.reportExtraError=ET;function TT(t,e){t.assign(Fe.default.errors,e),t.if((0,Q._)`${Fe.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Q._)`${Fe.default.vErrors}.length`,e),()=>t.assign(Fe.default.vErrors,null)))}De.resetErrorsCount=TT;function $T({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,Fe.default.errors,a=>{t.const(i,(0,Q._)`${Fe.default.vErrors}[${a}]`),t.if((0,Q._)`${i}.instancePath === undefined`,()=>t.assign((0,Q._)`${i}.instancePath`,(0,Q.strConcat)(Fe.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))})}De.extendErrors=$T;function cg(t,e){let r=t.const("err",e);t.if((0,Q._)`${Fe.default.vErrors} === null`,()=>t.assign(Fe.default.vErrors,(0,Q._)`[${r}]`),(0,Q._)`${Fe.default.vErrors}.push(${r})`),t.code((0,Q._)`${Fe.default.errors}++`)}function ug(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 Gr={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 lg(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:PT(t,e,r)}function PT(t,e,r={}){let{gen:n,it:o}=t,s=[RT(o,r),OT(t,r)];return CT(t,e,s),n.object(...s)}function RT({errorPath:t},{instancePath:e}){let r=e?(0,Q.str)`${t}${(0,Pi.getErrorPath)(e,Pi.Type.Str)}`:t;return[Fe.default.instancePath,(0,Q.strConcat)(Fe.default.instancePath,r)]}function OT({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,Pi.getErrorPath)(r,Pi.Type.Str)}`),[Gr.schemaPath,o]}function CT(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([Gr.keyword,o],[Gr.params,typeof e=="function"?e(t):e||(0,Q._)`{}`]),c.messages&&n.push([Gr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Gr.schema,i],[Gr.parentSchema,(0,Q._)`${l}${d}`],[Fe.default.data,s]),u&&n.push([Gr.propertyName,u])}});var pg=T(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.boolOrEmptySchema=Nn.topBoolOrEmptySchema=void 0;var IT=Ho(),zT=F(),NT=Jt(),AT={message:"boolean schema is false"};function jT(t){let{gen:e,schema:r,validateName:n}=t;r===!1?dg(t,!1):typeof r=="object"&&r.$async===!0?e.return(NT.default.data):(e.assign((0,zT._)`${n}.errors`,null),e.return(!0))}Nn.topBoolOrEmptySchema=jT;function MT(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),dg(t)):r.var(e,!0)}Nn.boolOrEmptySchema=MT;function dg(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,IT.reportError)(o,AT,void 0,e)}});var Rl=T(An=>{"use strict";Object.defineProperty(An,"__esModule",{value:!0});An.getRules=An.isJSONType=void 0;var DT=["string","number","integer","boolean","null","object","array"],LT=new Set(DT);function ZT(t){return typeof t=="string"&&LT.has(t)}An.isJSONType=ZT;function UT(){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=UT});var Ol=T(ur=>{"use strict";Object.defineProperty(ur,"__esModule",{value:!0});ur.shouldUseRule=ur.shouldUseGroup=ur.schemaHasRulesForType=void 0;function HT({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&fg(t,n)}ur.schemaHasRulesForType=HT;function fg(t,e){return e.rules.some(r=>mg(t,r))}ur.shouldUseGroup=fg;function mg(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))}ur.shouldUseRule=mg});var qo=T(Le=>{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});Le.reportTypeError=Le.checkDataTypes=Le.checkDataType=Le.coerceAndCheckDataType=Le.getJSONTypes=Le.getSchemaTypes=Le.DataType=void 0;var qT=Rl(),FT=Ol(),BT=Ho(),H=F(),hg=X(),jn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(jn||(Le.DataType=jn={}));function VT(t){let e=gg(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}Le.getSchemaTypes=VT;function gg(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(qT.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Le.getJSONTypes=gg;function KT(t,e){let{gen:r,data:n,opts:o}=t,s=JT(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,FT.schemaHasRulesForType)(t,e[0]));if(i){let a=Il(e,n,o.strictNumbers,jn.Wrong);r.if(a,()=>{s.length?WT(t,e,s):zl(t)})}return i}Le.coerceAndCheckDataType=KT;var _g=new Set(["string","number","integer","boolean","null"]);function JT(t,e){return e?t.filter(r=>_g.has(r)||e==="array"&&r==="array"):[]}function WT(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,H._)`typeof ${o}`),a=n.let("coerced",(0,H._)`undefined`);s.coerceTypes==="array"&&n.if((0,H._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,H._)`${o}[0]`).assign(i,(0,H._)`typeof ${o}`).if(Il(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,H._)`${a} !== undefined`);for(let u of r)(_g.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),zl(t),n.endIf(),n.if((0,H._)`${a} !== undefined`,()=>{n.assign(o,a),GT(t,a)});function c(u){switch(u){case"string":n.elseIf((0,H._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,H._)`"" + ${o}`).elseIf((0,H._)`${o} === null`).assign(a,(0,H._)`""`);return;case"number":n.elseIf((0,H._)`${i} == "boolean" || ${o} === null
2
+ var eS=Object.create;var Pa=Object.defineProperty;var tS=Object.getOwnPropertyDescriptor;var rS=Object.getOwnPropertyNames;var nS=Object.getPrototypeOf,oS=Object.prototype.hasOwnProperty;var be=(t,e)=>()=>(t&&(e=t(t=0)),e);var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ke=(t,e)=>{for(var r in e)Pa(t,r,{get:e[r],enumerable:!0})},sS=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of rS(e))!oS.call(t,o)&&o!==r&&Pa(t,o,{get:()=>e[o],enumerable:!(n=tS(e,o))||n.enumerable});return t};var nf=(t,e,r)=>(r=t!=null?eS(nS(t)):{},sS(e||!t||!t.__esModule?Pa(r,"default",{value:t,enumerable:!0}):r,t));var Mo=T(te=>{"use strict";Object.defineProperty(te,"__esModule",{value:!0});te.regexpCode=te.getEsmExportName=te.getProperty=te.safeStringify=te.stringify=te.strConcat=te.addCodeArg=te.str=te._=te.nil=te._Code=te.Name=te.IDENTIFIER=te._CodeOrName=void 0;var Ao=class{};te._CodeOrName=Ao;te.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Jr=class extends Ao{constructor(e){if(super(),!te.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}}};te.Name=Jr;var lt=class extends Ao{constructor(e){super(),this._items=typeof e=="string"?[e]:e}toString(){return this.str}emptyStr(){if(this._items.length>1)return!1;let e=this._items[0];return e===""||e==='""'}get str(){var e;return(e=this._str)!==null&&e!==void 0?e:this._str=this._items.reduce((r,n)=>`${r}${n}`,"")}get names(){var e;return(e=this._names)!==null&&e!==void 0?e:this._names=this._items.reduce((r,n)=>(n instanceof Jr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};te._Code=lt;te.nil=new lt("");function eg(t,...e){let r=[t[0]],n=0;for(;n<e.length;)ll(r,e[n]),r.push(t[++n]);return new lt(r)}te._=eg;var ul=new lt("+");function tg(t,...e){let r=[jo(t[0])],n=0;for(;n<e.length;)r.push(ul),ll(r,e[n]),r.push(ul,jo(t[++n]));return rT(r),new lt(r)}te.str=tg;function ll(t,e){e instanceof lt?t.push(...e._items):e instanceof Jr?t.push(e):t.push(sT(e))}te.addCodeArg=ll;function rT(t){let e=1;for(;e<t.length-1;){if(t[e]===ul){let r=nT(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function nT(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Jr||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 Jr))return`"${t}${e.slice(1)}`}function oT(t,e){return e.emptyStr()?t:t.emptyStr()?e:tg`${t}${e}`}te.strConcat=oT;function sT(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:jo(Array.isArray(t)?t.join(","):t)}function iT(t){return new lt(jo(t))}te.stringify=iT;function jo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}te.safeStringify=jo;function aT(t){return typeof t=="string"&&te.IDENTIFIER.test(t)?new lt(`.${t}`):eg`[${t}]`}te.getProperty=aT;function cT(t){if(typeof t=="string"&&te.IDENTIFIER.test(t))return new lt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}te.getEsmExportName=cT;function uT(t){return new lt(t.toString())}te.regexpCode=uT});var fl=T(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.ValueScope=Qe.ValueScopeName=Qe.Scope=Qe.varKinds=Qe.UsedValueState=void 0;var Xe=Mo(),dl=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},ki;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(ki||(Qe.UsedValueState=ki={}));Qe.varKinds={const:new Xe.Name("const"),let:new Xe.Name("let"),var:new Xe.Name("var")};var bi=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Xe.Name?e:this.name(e)}name(e){return new Xe.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Qe.Scope=bi;var wi=class extends Xe.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Xe._)`.${new Xe.Name(r)}[${n}]`}};Qe.ValueScopeName=wi;var lT=(0,Xe._)`\n`,pl=class extends bi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?lT:Xe.nil}}get(){return this._scope}name(e){return new wi(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,Xe._)`${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=Xe.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,ki.Started);let l=r(u);if(l){let d=this.opts.es5?Qe.varKinds.var:Qe.varKinds.const;s=(0,Xe._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Xe._)`${s}${l}${this.opts._n}`;else throw new dl(u);c.set(u,ki.Completed)})}return s}};Qe.ValueScope=pl});var F=T(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.or=B.and=B.not=B.CodeGen=B.operators=B.varKinds=B.ValueScopeName=B.ValueScope=B.Scope=B.Name=B.regexpCode=B.stringify=B.getProperty=B.nil=B.strConcat=B.str=B._=void 0;var Y=Mo(),vt=fl(),dr=Mo();Object.defineProperty(B,"_",{enumerable:!0,get:function(){return dr._}});Object.defineProperty(B,"str",{enumerable:!0,get:function(){return dr.str}});Object.defineProperty(B,"strConcat",{enumerable:!0,get:function(){return dr.strConcat}});Object.defineProperty(B,"nil",{enumerable:!0,get:function(){return dr.nil}});Object.defineProperty(B,"getProperty",{enumerable:!0,get:function(){return dr.getProperty}});Object.defineProperty(B,"stringify",{enumerable:!0,get:function(){return dr.stringify}});Object.defineProperty(B,"regexpCode",{enumerable:!0,get:function(){return dr.regexpCode}});Object.defineProperty(B,"Name",{enumerable:!0,get:function(){return dr.Name}});var Pi=fl();Object.defineProperty(B,"Scope",{enumerable:!0,get:function(){return Pi.Scope}});Object.defineProperty(B,"ValueScope",{enumerable:!0,get:function(){return Pi.ValueScope}});Object.defineProperty(B,"ValueScopeName",{enumerable:!0,get:function(){return Pi.ValueScopeName}});Object.defineProperty(B,"varKinds",{enumerable:!0,get:function(){return Pi.varKinds}});B.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 Jt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},ml=class extends Jt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?vt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=An(this.rhs,e,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},Ei=class extends Jt{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=An(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return $i(e,this.rhs)}},hl=class extends Ei{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},gl=class extends Jt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},_l=class extends Jt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},yl=class extends Jt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},xl=class extends Jt{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=An(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},Do=class extends Jt{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)||(dT(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Yr(e,r.names),{})}},Wt=class extends Do{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},vl=class extends Do{},Nn=class extends Wt{};Nn.kind="else";var Wr=class t extends Wt{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(rg(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=An(this.condition,e,r),this}get names(){let e=super.names;return $i(e,this.condition),this.else&&Yr(e,this.else.names),e}};Wr.kind="if";var Gr=class extends Wt{};Gr.kind="for";var Sl=class extends Gr{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=An(this.iteration,e,r),this}get names(){return Yr(super.names,this.iteration.names)}},kl=class extends Gr{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?vt.varKinds.var:this.varKind,{name:n,from:o,to:s}=this;return`for(${r} ${n}=${o}; ${n}<${s}; ${n}++)`+super.render(e)}get names(){let e=$i(super.names,this.from);return $i(e,this.to)}},Ti=class extends Gr{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=An(this.iterable,e,r),this}get names(){return Yr(super.names,this.iterable.names)}},Lo=class extends Wt{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)}};Lo.kind="func";var Zo=class extends Do{render(e){return"return "+super.render(e)}};Zo.kind="return";var bl=class extends Wt{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&&Yr(e,this.catch.names),this.finally&&Yr(e,this.finally.names),e}},Uo=class extends Wt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Uo.kind="catch";var Ho=class extends Wt{render(e){return"finally"+super.render(e)}};Ho.kind="finally";var wl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
+ `:""},this._extScope=e,this._scope=new vt.Scope({parent:e}),this._nodes=[new vl]}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 ml(e,s,n)),s}const(e,r,n){return this._def(vt.varKinds.const,e,r,n)}let(e,r,n){return this._def(vt.varKinds.let,e,r,n)}var(e,r,n){return this._def(vt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Ei(e,r,n))}add(e,r){return this._leafNode(new hl(e,B.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Y.nil&&this._leafNode(new xl(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 Wr(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 Wr(e))}else(){return this._elseNode(new Nn)}endIf(){return this._endBlockNode(Wr,Nn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Sl(e),r)}forRange(e,r,n,o,s=this.opts.es5?vt.varKinds.var:vt.varKinds.let){let i=this._scope.toName(e);return this._for(new kl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=vt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof 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 Ti("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?vt.varKinds.var:vt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Y._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Ti("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Gr)}label(e){return this._leafNode(new gl(e))}break(e){return this._leafNode(new _l(e))}return(e){let r=new Zo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Zo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new bl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Uo(s),r(s)}return n&&(this._currNode=o.finally=new Ho,this.code(n)),this._endBlockNode(Uo,Ho)}throw(e){return this._leafNode(new yl(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 Lo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Lo)}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 Wr))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}};B.CodeGen=wl;function Yr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function $i(t,e){return e instanceof Y._CodeOrName?Yr(t,e.names):t}function An(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 dT(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function rg(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${El(t)}`}B.not=rg;var pT=ng(B.operators.AND);function fT(...t){return t.reduce(pT)}B.and=fT;var mT=ng(B.operators.OR);function hT(...t){return t.reduce(mT)}B.or=hT;function ng(t){return(e,r)=>e===Y.nil?r:r===Y.nil?e:(0,Y._)`${El(e)} ${t} ${El(r)}`}function El(t){return t instanceof Y.Name?t:(0,Y._)`(${t})`}});var X=T(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.checkStrictMode=V.getErrorPath=V.Type=V.useFunc=V.setEvaluated=V.evaluatedPropsToName=V.mergeEvaluated=V.eachItem=V.unescapeJsonPointer=V.escapeJsonPointer=V.escapeFragment=V.unescapeFragment=V.schemaRefOrVal=V.schemaHasRulesButRef=V.schemaHasRules=V.checkUnknownRules=V.alwaysValidSchema=V.toHash=void 0;var ie=F(),gT=Mo();function _T(t){let e={};for(let r of t)e[r]=!0;return e}V.toHash=_T;function yT(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(ig(t,e),!ag(e,t.self.RULES.all))}V.alwaysValidSchema=yT;function ig(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]||lg(t,`unknown keyword: "${s}"`)}V.checkUnknownRules=ig;function ag(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}V.schemaHasRules=ag;function xT(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}V.schemaHasRulesButRef=xT;function vT({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ie._)`${r}`}return(0,ie._)`${t}${e}${(0,ie.getProperty)(n)}`}V.schemaRefOrVal=vT;function ST(t){return cg(decodeURIComponent(t))}V.unescapeFragment=ST;function kT(t){return encodeURIComponent($l(t))}V.escapeFragment=kT;function $l(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}V.escapeJsonPointer=$l;function cg(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}V.unescapeJsonPointer=cg;function bT(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}V.eachItem=bT;function og({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof ie.Name?(s instanceof ie.Name?t(o,s,i):e(o,s,i),i):s instanceof ie.Name?(e(o,i,s),s):r(s,i);return a===ie.Name&&!(c instanceof ie.Name)?n(o,c):c}}V.mergeEvaluated={props:og({mergeNames:(t,e,r)=>t.if((0,ie._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ie._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ie._)`${r} || {}`).code((0,ie._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ie._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ie._)`${r} || {}`),Pl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:ug}),items:og({mergeNames:(t,e,r)=>t.if((0,ie._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ie._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ie._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ie._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function ug(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ie._)`{}`);return e!==void 0&&Pl(t,r,e),r}V.evaluatedPropsToName=ug;function Pl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ie._)`${e}${(0,ie.getProperty)(n)}`,!0))}V.setEvaluated=Pl;var sg={};function wT(t,e){return t.scopeValue("func",{ref:e,code:sg[e.code]||(sg[e.code]=new gT._Code(e.code))})}V.useFunc=wT;var Tl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Tl||(V.Type=Tl={}));function ET(t,e,r){if(t instanceof ie.Name){let n=e===Tl.Num;return r?n?(0,ie._)`"[" + ${t} + "]"`:(0,ie._)`"['" + ${t} + "']"`:n?(0,ie._)`"/" + ${t}`:(0,ie._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ie.getProperty)(t).toString():"/"+$l(t)}V.getErrorPath=ET;function lg(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}V.checkStrictMode=lg});var Gt=T(Rl=>{"use strict";Object.defineProperty(Rl,"__esModule",{value:!0});var Me=F(),TT={data:new Me.Name("data"),valCxt:new Me.Name("valCxt"),instancePath:new Me.Name("instancePath"),parentData:new Me.Name("parentData"),parentDataProperty:new Me.Name("parentDataProperty"),rootData:new Me.Name("rootData"),dynamicAnchors:new Me.Name("dynamicAnchors"),vErrors:new Me.Name("vErrors"),errors:new Me.Name("errors"),this:new Me.Name("this"),self:new Me.Name("self"),scope:new Me.Name("scope"),json:new Me.Name("json"),jsonPos:new Me.Name("jsonPos"),jsonLen:new Me.Name("jsonLen"),jsonPart:new Me.Name("jsonPart")};Rl.default=TT});var qo=T(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.extendErrors=De.resetErrorsCount=De.reportExtraError=De.reportError=De.keyword$DataError=De.keywordError=void 0;var Q=F(),Ri=X(),Fe=Gt();De.keywordError={message:({keyword:t})=>(0,Q.str)`must pass "${t}" keyword validation`};De.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 $T(t,e=De.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=fg(t,e,r);n??(i||a)?dg(s,c):pg(o,(0,Q._)`[${c}]`)}De.reportError=$T;function PT(t,e=De.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=fg(t,e,r);dg(o,a),s||i||pg(n,Fe.default.vErrors)}De.reportExtraError=PT;function RT(t,e){t.assign(Fe.default.errors,e),t.if((0,Q._)`${Fe.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Q._)`${Fe.default.vErrors}.length`,e),()=>t.assign(Fe.default.vErrors,null)))}De.resetErrorsCount=RT;function OT({gen:t,keyword:e,schemaValue:r,data:n,errsCount:o,it:s}){if(o===void 0)throw new Error("ajv implementation error");let i=t.name("err");t.forRange("i",o,Fe.default.errors,a=>{t.const(i,(0,Q._)`${Fe.default.vErrors}[${a}]`),t.if((0,Q._)`${i}.instancePath === undefined`,()=>t.assign((0,Q._)`${i}.instancePath`,(0,Q.strConcat)(Fe.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))})}De.extendErrors=OT;function dg(t,e){let r=t.const("err",e);t.if((0,Q._)`${Fe.default.vErrors} === null`,()=>t.assign(Fe.default.vErrors,(0,Q._)`[${r}]`),(0,Q._)`${Fe.default.vErrors}.push(${r})`),t.code((0,Q._)`${Fe.default.errors}++`)}function pg(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 Xr={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 fg(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:CT(t,e,r)}function CT(t,e,r={}){let{gen:n,it:o}=t,s=[IT(o,r),zT(t,r)];return NT(t,e,s),n.object(...s)}function IT({errorPath:t},{instancePath:e}){let r=e?(0,Q.str)`${t}${(0,Ri.getErrorPath)(e,Ri.Type.Str)}`:t;return[Fe.default.instancePath,(0,Q.strConcat)(Fe.default.instancePath,r)]}function zT({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,Ri.getErrorPath)(r,Ri.Type.Str)}`),[Xr.schemaPath,o]}function NT(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([Xr.keyword,o],[Xr.params,typeof e=="function"?e(t):e||(0,Q._)`{}`]),c.messages&&n.push([Xr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Xr.schema,i],[Xr.parentSchema,(0,Q._)`${l}${d}`],[Fe.default.data,s]),u&&n.push([Xr.propertyName,u])}});var hg=T(jn=>{"use strict";Object.defineProperty(jn,"__esModule",{value:!0});jn.boolOrEmptySchema=jn.topBoolOrEmptySchema=void 0;var AT=qo(),jT=F(),MT=Gt(),DT={message:"boolean schema is false"};function LT(t){let{gen:e,schema:r,validateName:n}=t;r===!1?mg(t,!1):typeof r=="object"&&r.$async===!0?e.return(MT.default.data):(e.assign((0,jT._)`${n}.errors`,null),e.return(!0))}jn.topBoolOrEmptySchema=LT;function ZT(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),mg(t)):r.var(e,!0)}jn.boolOrEmptySchema=ZT;function mg(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,AT.reportError)(o,DT,void 0,e)}});var Ol=T(Mn=>{"use strict";Object.defineProperty(Mn,"__esModule",{value:!0});Mn.getRules=Mn.isJSONType=void 0;var UT=["string","number","integer","boolean","null","object","array"],HT=new Set(UT);function qT(t){return typeof t=="string"&&HT.has(t)}Mn.isJSONType=qT;function FT(){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:{}}}Mn.getRules=FT});var Cl=T(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.shouldUseRule=pr.shouldUseGroup=pr.schemaHasRulesForType=void 0;function BT({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&gg(t,n)}pr.schemaHasRulesForType=BT;function gg(t,e){return e.rules.some(r=>_g(t,r))}pr.shouldUseGroup=gg;function _g(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))}pr.shouldUseRule=_g});var Fo=T(Le=>{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});Le.reportTypeError=Le.checkDataTypes=Le.checkDataType=Le.coerceAndCheckDataType=Le.getJSONTypes=Le.getSchemaTypes=Le.DataType=void 0;var VT=Ol(),KT=Cl(),JT=qo(),H=F(),yg=X(),Dn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Dn||(Le.DataType=Dn={}));function WT(t){let e=xg(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}Le.getSchemaTypes=WT;function xg(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(VT.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Le.getJSONTypes=xg;function GT(t,e){let{gen:r,data:n,opts:o}=t,s=YT(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,KT.schemaHasRulesForType)(t,e[0]));if(i){let a=zl(e,n,o.strictNumbers,Dn.Wrong);r.if(a,()=>{s.length?XT(t,e,s):Nl(t)})}return i}Le.coerceAndCheckDataType=GT;var vg=new Set(["string","number","integer","boolean","null"]);function YT(t,e){return e?t.filter(r=>vg.has(r)||e==="array"&&r==="array"):[]}function XT(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,H._)`typeof ${o}`),a=n.let("coerced",(0,H._)`undefined`);s.coerceTypes==="array"&&n.if((0,H._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,H._)`${o}[0]`).assign(i,(0,H._)`typeof ${o}`).if(zl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,H._)`${a} !== undefined`);for(let u of r)(vg.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Nl(t),n.endIf(),n.if((0,H._)`${a} !== undefined`,()=>{n.assign(o,a),QT(t,a)});function c(u){switch(u){case"string":n.elseIf((0,H._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,H._)`"" + ${o}`).elseIf((0,H._)`${o} === null`).assign(a,(0,H._)`""`);return;case"number":n.elseIf((0,H._)`${i} == "boolean" || ${o} === null
4
4
  || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,H._)`+${o}`);return;case"integer":n.elseIf((0,H._)`${i} === "boolean" || ${o} === null
5
5
  || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,H._)`+${o}`);return;case"boolean":n.elseIf((0,H._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,H._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,H._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,H._)`${i} === "string" || ${i} === "number"
6
- || ${i} === "boolean" || ${o} === null`).assign(a,(0,H._)`[${o}]`)}}}function GT({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,H._)`${e} !== undefined`,()=>t.assign((0,H._)`${e}[${r}]`,n))}function Cl(t,e,r,n=jn.Correct){let o=n===jn.Correct?H.operators.EQ:H.operators.NEQ,s;switch(t){case"null":return(0,H._)`${e} ${o} null`;case"array":s=(0,H._)`Array.isArray(${e})`;break;case"object":s=(0,H._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,H._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,H._)`typeof ${e} ${o} ${t}`}return n===jn.Correct?s:(0,H.not)(s);function i(a=H.nil){return(0,H.and)((0,H._)`typeof ${e} == "number"`,a,r?(0,H._)`isFinite(${e})`:H.nil)}}Le.checkDataType=Cl;function Il(t,e,r,n){if(t.length===1)return Cl(t[0],e,r,n);let o,s=(0,hg.toHash)(t);if(s.array&&s.object){let i=(0,H._)`typeof ${e} != "object"`;o=s.null?i:(0,H._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=H.nil;s.number&&delete s.integer;for(let i in s)o=(0,H.and)(o,Cl(i,e,r,n));return o}Le.checkDataTypes=Il;var YT={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,H._)`{type: ${t}}`:(0,H._)`{type: ${e}}`};function zl(t){let e=XT(t);(0,BT.reportError)(e,YT)}Le.reportTypeError=zl;function XT(t){let{gen:e,data:r,schema:n}=t,o=(0,hg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var xg=T(Ri=>{"use strict";Object.defineProperty(Ri,"__esModule",{value:!0});Ri.assignDefaults=void 0;var Mn=F(),QT=X();function e$(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)yg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>yg(t,s,o.default))}Ri.assignDefaults=e$;function yg(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Mn._)`${s}${(0,Mn.getProperty)(e)}`;if(o){(0,QT.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Mn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Mn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Mn._)`${a} = ${(0,Mn.stringify)(r)}`)}});var dt=T(oe=>{"use strict";Object.defineProperty(oe,"__esModule",{value:!0});oe.validateUnion=oe.validateArray=oe.usePattern=oe.callValidateCode=oe.schemaProperties=oe.allSchemaProperties=oe.noPropertyInData=oe.propertyInData=oe.isOwnProperty=oe.hasPropFunc=oe.reportMissingProp=oe.checkMissingProp=oe.checkReportMissingProp=void 0;var de=F(),Nl=X(),lr=Jt(),t$=X();function r$(t,e){let{gen:r,data:n,it:o}=t;r.if(jl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,de._)`${e}`},!0),t.error()})}oe.checkReportMissingProp=r$;function n$({gen:t,data:e,it:{opts:r}},n,o){return(0,de.or)(...n.map(s=>(0,de.and)(jl(t,e,s,r.ownProperties),(0,de._)`${o} = ${s}`)))}oe.checkMissingProp=n$;function o$(t,e){t.setParams({missingProperty:e},!0),t.error()}oe.reportMissingProp=o$;function vg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,de._)`Object.prototype.hasOwnProperty`})}oe.hasPropFunc=vg;function Al(t,e,r){return(0,de._)`${vg(t)}.call(${e}, ${r})`}oe.isOwnProperty=Al;function s$(t,e,r,n){let o=(0,de._)`${e}${(0,de.getProperty)(r)} !== undefined`;return n?(0,de._)`${o} && ${Al(t,e,r)}`:o}oe.propertyInData=s$;function jl(t,e,r,n){let o=(0,de._)`${e}${(0,de.getProperty)(r)} === undefined`;return n?(0,de.or)(o,(0,de.not)(Al(t,e,r))):o}oe.noPropertyInData=jl;function kg(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}oe.allSchemaProperties=kg;function i$(t,e){return kg(e).filter(r=>!(0,Nl.alwaysValidSchema)(t,e[r]))}oe.schemaProperties=i$;function a$({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,de._)`${t}, ${e}, ${n}${o}`:e,d=[[lr.default.instancePath,(0,de.strConcat)(lr.default.instancePath,s)],[lr.default.parentData,i.parentData],[lr.default.parentDataProperty,i.parentDataProperty],[lr.default.rootData,lr.default.rootData]];i.opts.dynamicRef&&d.push([lr.default.dynamicAnchors,lr.default.dynamicAnchors]);let f=(0,de._)`${l}, ${r.object(...d)}`;return c!==de.nil?(0,de._)`${a}.call(${c}, ${f})`:(0,de._)`${a}(${f})`}oe.callValidateCode=a$;var c$=(0,de._)`new RegExp`;function u$({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,de._)`${o.code==="new RegExp"?c$:(0,t$.useFunc)(t,o)}(${r}, ${n})`})}oe.usePattern=u$;function l$(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,de._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Nl.Type.Num},s),e.if((0,de.not)(s),a)})}}oe.validateArray=l$;function d$(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,Nl.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,de._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,de.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}oe.validateUnion=d$});var wg=T(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.validateKeywordUsage=It.validSchemaType=It.funcKeywordCode=It.macroKeywordCode=void 0;var Be=F(),Yr=Jt(),p$=dt(),f$=Ho();function m$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=bg(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Be.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}It.macroKeywordCode=m$;function h$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;_$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=bg(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&&Sg(t),g(()=>t.error());else{let v=e.async?m():p();e.modifying&&Sg(t),g(()=>g$(t,v))}}function m(){let v=n.let("ruleErrs",null);return n.try(()=>h((0,Be._)`await `),y=>n.assign(d,!1).if((0,Be._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(v,(0,Be._)`${y}.errors`),()=>n.throw(y))),v}function p(){let v=(0,Be._)`${l}.errors`;return n.assign(v,null),h(Be.nil),v}function h(v=e.async?(0,Be._)`await `:Be.nil){let y=c.opts.passContext?Yr.default.this:Yr.default.self,k=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Be._)`${v}${(0,p$.callValidateCode)(t,l,y,k)}`,e.modifying)}function g(v){var y;n.if((0,Be.not)((y=e.valid)!==null&&y!==void 0?y:d),v)}}It.funcKeywordCode=h$;function Sg(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Be._)`${n.parentData}[${n.parentDataProperty}]`))}function g$(t,e){let{gen:r}=t;r.if((0,Be._)`Array.isArray(${e})`,()=>{r.assign(Yr.default.vErrors,(0,Be._)`${Yr.default.vErrors} === null ? ${e} : ${Yr.default.vErrors}.concat(${e})`).assign(Yr.default.errors,(0,Be._)`${Yr.default.vErrors}.length`),(0,f$.extendErrors)(t)},()=>t.error())}function _$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function bg(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Be.stringify)(r)})}function y$(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}It.validSchemaType=y$;function x$({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}It.validateKeywordUsage=x$});var Tg=T(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.extendSubschemaMode=dr.extendSubschemaData=dr.getSubschema=void 0;var zt=F(),Eg=X();function v$(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,zt._)`${t.schemaPath}${(0,zt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,zt._)`${t.schemaPath}${(0,zt.getProperty)(e)}${(0,zt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Eg.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')}dr.getSubschema=v$;function k$(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,zt._)`${e.data}${(0,zt.getProperty)(r)}`,!0);c(f),t.errorPath=(0,zt.str)`${u}${(0,Eg.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,zt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof zt.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]}}dr.extendSubschemaData=k$;function S$(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}dr.extendSubschemaMode=S$});var Ml=T((rM,$g)=>{"use strict";$g.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!t(e[o],r[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!t(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}});var Rg=T((nM,Pg)=>{"use strict";var pr=Pg.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(){};Oi(e,n,o,t,"",t)};pr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};pr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};pr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};pr.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 Oi(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 pr.arrayKeywords)for(var f=0;f<d.length;f++)Oi(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in pr.propsKeywords){if(d&&typeof d=="object")for(var m in d)Oi(t,e,r,d[m],o+"/"+l+"/"+b$(m),s,o,l,n,m)}else(l in pr.keywords||t.allKeys&&!(l in pr.skipKeywords))&&Oi(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function b$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Fo=T(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.getSchemaRefs=et.resolveUrl=et.normalizeId=et._getFullPath=et.getFullPath=et.inlineRef=void 0;var w$=X(),E$=Ml(),T$=Rg(),$$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function P$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Dl(t):e?Og(t)<=e:!1}et.inlineRef=P$;var R$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Dl(t){for(let e in t){if(R$.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Dl)||typeof r=="object"&&Dl(r))return!0}return!1}function Og(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!$$.has(r)&&(typeof t[r]=="object"&&(0,w$.eachItem)(t[r],n=>e+=Og(n)),e===1/0))return 1/0}return e}function Cg(t,e="",r){r!==!1&&(e=Dn(e));let n=t.parse(e);return Ig(t,n)}et.getFullPath=Cg;function Ig(t,e){return t.serialize(e).split("#")[0]+"#"}et._getFullPath=Ig;var O$=/#\/?$/;function Dn(t){return t?t.replace(O$,""):""}et.normalizeId=Dn;function C$(t,e,r){return r=Dn(r),t.resolve(e,r)}et.resolveUrl=C$;var I$=/^[a-z_][-a-z0-9._]*$/i;function z$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Dn(t[r]||e),s={"":o},i=Cg(n,o,!1),a={},c=new Set;return T$(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof d[r]=="string"&&(g=v.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[f]=g;function v(k){let E=this.opts.uriResolver.resolve;if(k=Dn(g?E(g,k):k),c.has(k))throw l(k);c.add(k);let C=this.refs[k];return typeof C=="string"&&(C=this.refs[C]),typeof C=="object"?u(d,C.schema,k):k!==Dn(h)&&(k[0]==="#"?(u(d,a[k],k),a[k]=d):this.refs[k]=h),k}function y(k){if(typeof k=="string"){if(!I$.test(k))throw new Error(`invalid anchor "${k}"`);v.call(this,`#${k}`)}}}),a;function u(d,f,m){if(f!==void 0&&!E$(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}et.getSchemaRefs=z$});var Ko=T(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.getData=fr.KeywordCxt=fr.validateFunctionCode=void 0;var Mg=pg(),zg=qo(),Zl=Ol(),Ci=qo(),N$=xg(),Vo=wg(),Ll=Tg(),z=F(),D=Jt(),A$=Fo(),Wt=X(),Bo=Ho();function j$(t){if(Zg(t)&&(Ug(t),Lg(t))){L$(t);return}Dg(t,()=>(0,Mg.topBoolOrEmptySchema)(t))}fr.validateFunctionCode=j$;function Dg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,z._)`${D.default.data}, ${D.default.valCxt}`,n.$async,()=>{t.code((0,z._)`"use strict"; ${Ng(r,o)}`),D$(t,o),t.code(s)}):t.func(e,(0,z._)`${D.default.data}, ${M$(o)}`,n.$async,()=>t.code(Ng(r,o)).code(s))}function M$(t){return(0,z._)`{${D.default.instancePath}="", ${D.default.parentData}, ${D.default.parentDataProperty}, ${D.default.rootData}=${D.default.data}${t.dynamicRef?(0,z._)`, ${D.default.dynamicAnchors}={}`:z.nil}}={}`}function D$(t,e){t.if(D.default.valCxt,()=>{t.var(D.default.instancePath,(0,z._)`${D.default.valCxt}.${D.default.instancePath}`),t.var(D.default.parentData,(0,z._)`${D.default.valCxt}.${D.default.parentData}`),t.var(D.default.parentDataProperty,(0,z._)`${D.default.valCxt}.${D.default.parentDataProperty}`),t.var(D.default.rootData,(0,z._)`${D.default.valCxt}.${D.default.rootData}`),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,z._)`${D.default.valCxt}.${D.default.dynamicAnchors}`)},()=>{t.var(D.default.instancePath,(0,z._)`""`),t.var(D.default.parentData,(0,z._)`undefined`),t.var(D.default.parentDataProperty,(0,z._)`undefined`),t.var(D.default.rootData,D.default.data),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,z._)`{}`)})}function L$(t){let{schema:e,opts:r,gen:n}=t;Dg(t,()=>{r.$comment&&e.$comment&&qg(t),F$(t),n.let(D.default.vErrors,null),n.let(D.default.errors,0),r.unevaluated&&Z$(t),Hg(t),K$(t)})}function Z$(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,z._)`${r}.evaluated`),e.if((0,z._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,z._)`${t.evaluated}.props`,(0,z._)`undefined`)),e.if((0,z._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,z._)`${t.evaluated}.items`,(0,z._)`undefined`))}function Ng(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,z._)`/*# sourceURL=${r} */`:z.nil}function U$(t,e){if(Zg(t)&&(Ug(t),Lg(t))){H$(t,e);return}(0,Mg.boolOrEmptySchema)(t,e)}function Lg({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function Zg(t){return typeof t.schema!="boolean"}function H$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&qg(t),B$(t),V$(t);let s=n.const("_errs",D.default.errors);Hg(t,s),n.var(e,(0,z._)`${s} === ${D.default.errors}`)}function Ug(t){(0,Wt.checkUnknownRules)(t),q$(t)}function Hg(t,e){if(t.opts.jtd)return Ag(t,[],!1,e);let r=(0,zg.getSchemaTypes)(t.schema),n=(0,zg.coerceAndCheckDataType)(t,r);Ag(t,r,!n,e)}function q$(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Wt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function F$(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Wt.checkStrictMode)(t,"default is ignored in the schema root")}function B$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,A$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function V$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function qg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,z._)`${D.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,z.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,z._)`${D.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function K$(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,z._)`${D.default.errors} === 0`,()=>e.return(D.default.data),()=>e.throw((0,z._)`new ${o}(${D.default.vErrors})`)):(e.assign((0,z._)`${n}.errors`,D.default.vErrors),s.unevaluated&&J$(t),e.return((0,z._)`${D.default.errors} === 0`))}function J$({gen:t,evaluated:e,props:r,items:n}){r instanceof z.Name&&t.assign((0,z._)`${e}.props`,r),n instanceof z.Name&&t.assign((0,z._)`${e}.items`,n)}function Ag(t,e,r,n){let{gen:o,schema:s,data:i,allErrors:a,opts:c,self:u}=t,{RULES:l}=u;if(s.$ref&&(c.ignoreKeywordsWithRef||!(0,Wt.schemaHasRulesButRef)(s,l))){o.block(()=>Bg(t,"$ref",l.all.$ref.definition));return}c.jtd||W$(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Zl.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Ci.checkDataType)(f.type,i,c.strictNumbers)),jg(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Ci.reportTypeError)(t)),o.endIf()):jg(t,f),a||o.if((0,z._)`${D.default.errors} === ${n||0}`))}}function jg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,N$.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Zl.shouldUseRule)(n,s)&&Bg(t,s.keyword,s.definition,e.type)})}function W$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(G$(t,e),t.opts.allowUnionTypes||Y$(t,e),X$(t,t.dataTypes))}function G$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Fg(t.dataTypes,r)||Ul(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),e0(t,e)}}function Y$(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Ul(t,"use allowUnionTypes to allow union type keyword")}function X$(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Zl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>Q$(e,i))&&Ul(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function Q$(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Fg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function e0(t,e){let r=[];for(let n of t.dataTypes)Fg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Ul(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Wt.checkStrictMode)(t,e,t.opts.strictTypes)}var Ii=class{constructor(e,r,n){if((0,Vo.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,Wt.schemaRefOrVal)(e,this.schema,n,this.$data),this.schemaType=r.schemaType,this.parentSchema=e.schema,this.params={},this.it=e,this.def=r,this.$data)this.schemaCode=e.gen.const("vSchema",Vg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Vo.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",D.default.errors))}result(e,r,n){this.failResult((0,z.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,z.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,z._)`${r} !== undefined && (${(0,z.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?Bo.reportExtraError:Bo.reportError)(this,this.def.error,r)}$dataError(){(0,Bo.reportError)(this,this.def.$dataError||Bo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Bo.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=z.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=z.nil,r=z.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,z.or)((0,z._)`${o} === undefined`,r)),e!==z.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==z.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,z.or)(i(),a());function i(){if(n.length){if(!(r instanceof z.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,z._)`${(0,Ci.checkDataTypes)(c,r,s.opts.strictNumbers,Ci.DataType.Wrong)}`}return z.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,z._)`!${c}(${r})`}return z.nil}}subschema(e,r){let n=(0,Ll.getSubschema)(this.it,e);(0,Ll.extendSubschemaData)(n,this.it,e),(0,Ll.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return U$(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Wt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Wt.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,z.Name)),!0}};fr.KeywordCxt=Ii;function Bg(t,e,r,n){let o=new Ii(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Vo.funcKeywordCode)(o,r):"macro"in r?(0,Vo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Vo.funcKeywordCode)(o,r)}var t0=/^\/(?:[^~]|~0|~1)*$/,r0=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Vg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return D.default.rootData;if(t[0]==="/"){if(!t0.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=D.default.rootData}else{let u=r0.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,z._)`${s}${(0,z.getProperty)((0,Wt.unescapeJsonPointer)(u))}`,i=(0,z._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}fr.getData=Vg});var zi=T(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});var Hl=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};ql.default=Hl});var Jo=T(Vl=>{"use strict";Object.defineProperty(Vl,"__esModule",{value:!0});var Fl=Fo(),Bl=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Fl.resolveUrl)(e,r,n),this.missingSchema=(0,Fl.normalizeId)((0,Fl.getFullPath)(e,this.missingRef))}};Vl.default=Bl});var Ai=T(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.resolveSchema=pt.getCompilingSchema=pt.resolveRef=pt.compileSchema=pt.SchemaEnv=void 0;var vt=F(),n0=zi(),Xr=Jt(),kt=Fo(),Kg=X(),o0=Ko(),Ln=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,kt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};pt.SchemaEnv=Ln;function Jl(t){let e=Jg.call(this,t);if(e)return e;let r=(0,kt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new vt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:n0.default,code:(0,vt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:Xr.default.data,parentData:Xr.default.parentData,parentDataProperty:Xr.default.parentDataProperty,dataNames:[Xr.default.data],dataPathArr:[vt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,vt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:vt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,vt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,o0.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(Xr.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${Xr.default.self}`,`${Xr.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 vt.Name?void 0:p,items:h instanceof vt.Name?void 0:h,dynamicProps:p instanceof vt.Name,dynamicItems:h instanceof vt.Name},m.source&&(m.source.evaluated=(0,vt.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)}}pt.compileSchema=Jl;function s0(t,e,r){var n;r=(0,kt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=c0.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 Ln({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=i0.call(this,s)}pt.resolveRef=s0;function i0(t){return(0,kt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Jl.call(this,t)}function Jg(t){for(let e of this._compilations)if(a0(e,t))return e}pt.getCompilingSchema=Jg;function a0(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function c0(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Ni.call(this,t,e)}function Ni(t,e){let r=this.opts.uriResolver.parse(e),n=(0,kt._getFullPath)(this.opts.uriResolver,r),o=(0,kt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Kl.call(this,r,t);let s=(0,kt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Ni.call(this,t,i);return typeof a?.schema!="object"?void 0:Kl.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Jl.call(this,i),s===(0,kt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,kt.resolveUrl)(this.opts.uriResolver,o,u)),new Ln({schema:a,schemaId:c,root:t,baseId:o})}return Kl.call(this,r,i)}}pt.resolveSchema=Ni;var u0=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Kl(t,{baseId:e,schema:r,root:n}){var o;if(((o=t.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,Kg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!u0.has(a)&&u&&(e=(0,kt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,Kg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,kt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Ni.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Ln({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var Wg=T((uM,l0)=>{l0.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 Gl=T((lM,Qg)=>{"use strict";var d0=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Yg=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 Wl(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 p0=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Gg(t){return t.length=0,!0}function f0(t,e,r){if(t.length){let n=Wl(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function m0(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=f0;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=Gg}else{o.push(u);continue}}return o.length&&(a===Gg?r.zone=o.join(""):i?n.push(o.join("")):n.push(Wl(o))),r.address=n.join(""),r}function Xg(t){if(h0(t,":")<2)return{host:t,isIPV6:!1};let e=m0(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 h0(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function g0(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 _0(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 y0(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!Yg(r)){let n=Xg(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}Qg.exports={nonSimpleDomain:p0,recomposeAuthority:y0,normalizeComponentEncoding:_0,removeDotSegments:g0,isIPv4:Yg,isUUID:d0,normalizeIPv6:Xg,stringArrayToHexStripped:Wl}});var o_=T((dM,n_)=>{"use strict";var{isUUID:x0}=Gl(),v0=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,k0=["http","https","ws","wss","urn","urn:uuid"];function S0(t){return k0.indexOf(t)!==-1}function Yl(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 e_(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function t_(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 b0(t){return t.secure=Yl(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function w0(t){if((t.port===(Yl(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 E0(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(v0);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=Xl(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function T0(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=Xl(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 $0(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!x0(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function P0(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var r_={scheme:"http",domainHost:!0,parse:e_,serialize:t_},R0={scheme:"https",domainHost:r_.domainHost,parse:e_,serialize:t_},ji={scheme:"ws",domainHost:!0,parse:b0,serialize:w0},O0={scheme:"wss",domainHost:ji.domainHost,parse:ji.parse,serialize:ji.serialize},C0={scheme:"urn",parse:E0,serialize:T0,skipNormalize:!0},I0={scheme:"urn:uuid",parse:$0,serialize:P0,skipNormalize:!0},Mi={http:r_,https:R0,ws:ji,wss:O0,urn:C0,"urn:uuid":I0};Object.setPrototypeOf(Mi,null);function Xl(t){return t&&(Mi[t]||Mi[t.toLowerCase()])||void 0}n_.exports={wsIsSecure:Yl,SCHEMES:Mi,isValidSchemeName:S0,getSchemeHandler:Xl}});var a_=T((pM,Li)=>{"use strict";var{normalizeIPv6:z0,removeDotSegments:Wo,recomposeAuthority:N0,normalizeComponentEncoding:Di,isIPv4:A0,nonSimpleDomain:j0}=Gl(),{SCHEMES:M0,getSchemeHandler:s_}=o_();function D0(t,e){return typeof t=="string"?t=Nt(Gt(t,e),e):typeof t=="object"&&(t=Gt(Nt(t,e),e)),t}function L0(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=i_(Gt(t,n),Gt(e,n),n,!0);return n.skipEscape=!0,Nt(o,n)}function i_(t,e,r,n){let o={};return n||(t=Gt(Nt(t,r),r),e=Gt(Nt(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=Wo(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=Wo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Wo(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=Wo(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 Z0(t,e,r){return typeof t=="string"?(t=unescape(t),t=Nt(Di(Gt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Nt(Di(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Nt(Di(Gt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Nt(Di(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Nt(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=s_(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=N0(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=Wo(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 U0=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Gt(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(U0);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(A0(n.host)===!1){let c=z0(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=s_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&j0(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 Ql={SCHEMES:M0,normalize:D0,resolve:L0,resolveComponent:i_,equal:Z0,serialize:Nt,parse:Gt};Li.exports=Ql;Li.exports.default=Ql;Li.exports.fastUri=Ql});var u_=T(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var c_=a_();c_.code='require("ajv/dist/runtime/uri").default';ed.default=c_});var __=T(Ie=>{"use strict";Object.defineProperty(Ie,"__esModule",{value:!0});Ie.CodeGen=Ie.Name=Ie.nil=Ie.stringify=Ie.str=Ie._=Ie.KeywordCxt=void 0;var H0=Ko();Object.defineProperty(Ie,"KeywordCxt",{enumerable:!0,get:function(){return H0.KeywordCxt}});var Zn=F();Object.defineProperty(Ie,"_",{enumerable:!0,get:function(){return Zn._}});Object.defineProperty(Ie,"str",{enumerable:!0,get:function(){return Zn.str}});Object.defineProperty(Ie,"stringify",{enumerable:!0,get:function(){return Zn.stringify}});Object.defineProperty(Ie,"nil",{enumerable:!0,get:function(){return Zn.nil}});Object.defineProperty(Ie,"Name",{enumerable:!0,get:function(){return Zn.Name}});Object.defineProperty(Ie,"CodeGen",{enumerable:!0,get:function(){return Zn.CodeGen}});var q0=zi(),m_=Jo(),F0=Rl(),Go=Ai(),B0=F(),Yo=Fo(),Zi=qo(),rd=X(),l_=Wg(),V0=u_(),h_=(t,e)=>new RegExp(t,e);h_.code="new RegExp";var K0=["removeAdditional","useDefaults","coerceTypes"],J0=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),W0={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."},G0={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},d_=200;function Y0(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,v,y,k,E,C,ye,Ae,Ze,oo;let kr=t.strict,Ee=(e=t.code)===null||e===void 0?void 0:e.optimize,Sr=Ee===!0||Ee===void 0?1:Ee||0,Ue=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:h_,Ta=(o=t.uriResolver)!==null&&o!==void 0?o:V0.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:kr)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:kr)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:kr)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:kr)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:kr)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Sr,regExp:Ue}:{optimize:Sr,regExp:Ue},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:d_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:d_,meta:(v=t.meta)!==null&&v!==void 0?v:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:(k=t.inlineRefs)!==null&&k!==void 0?k:!0,schemaId:(E=t.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(C=t.addUsedSchema)!==null&&C!==void 0?C:!0,validateSchema:(ye=t.validateSchema)!==null&&ye!==void 0?ye:!0,validateFormats:(Ae=t.validateFormats)!==null&&Ae!==void 0?Ae:!0,unicodeRegExp:(Ze=t.unicodeRegExp)!==null&&Ze!==void 0?Ze:!0,int32range:(oo=t.int32range)!==null&&oo!==void 0?oo:!0,uriResolver:Ta}}var Xo=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...Y0(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new B0.ValueScope({scope:{},prefixes:J0,es5:r,lines:n}),this.logger=nP(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,F0.getRules)(),p_.call(this,W0,e,"NOT SUPPORTED"),p_.call(this,G0,e,"DEPRECATED","warn"),this._metaOpts=tP.call(this),e.formats&&Q0.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&eP.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),X0.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=l_;n==="id"&&(o={...l_},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 m_.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,Yo.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=f_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Go.SchemaEnv({schema:{},schemaId:n});if(r=Go.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=f_.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,Yo.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(sP.call(this,n,r),!r)return(0,rd.eachItem)(n,s=>td.call(this,s)),this;aP.call(this,r);let o={...r,type:(0,Zi.getJSONTypes)(r.type),schemaType:(0,Zi.getJSONTypes)(r.schemaType)};return(0,rd.eachItem)(n,o.type.length===0?s=>td.call(this,s,o):s=>o.type.forEach(i=>td.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]=g_(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,Yo.normalizeId)(i||n);let u=Yo.getSchemaRefs.call(this,e,n);return c=new Go.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):Go.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{Go.compileSchema.call(this,e)}finally{this.opts=r}}};Xo.ValidationError=q0.default;Xo.MissingRefError=m_.default;Ie.default=Xo;function p_(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 f_(t){return t=(0,Yo.normalizeId)(t),this.schemas[t]||this.refs[t]}function X0(){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 Q0(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function eP(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 tP(){let t={...this.opts};for(let e of K0)delete t[e];return t}var rP={log(){},warn(){},error(){}};function nP(t){if(t===!1)return rP;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 oP=/^[a-z_$][a-z0-9_$:-]*$/i;function sP(t,e){let{RULES:r}=this;if((0,rd.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!oP.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 td(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,Zi.getJSONTypes)(e.type),schemaType:(0,Zi.getJSONTypes)(e.schemaType)}};e.before?iP.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 iP(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 aP(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=g_(e)),t.validateSchema=this.compile(e,!0))}var cP={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function g_(t){return{anyOf:[t,cP]}}});var y_=T(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var uP={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};nd.default=uP});var S_=T(Qr=>{"use strict";Object.defineProperty(Qr,"__esModule",{value:!0});Qr.callRef=Qr.getValidate=void 0;var lP=Jo(),x_=dt(),tt=F(),Un=Jt(),v_=Ai(),Ui=X(),dP={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=v_.resolveRef.call(c,u,o,r);if(l===void 0)throw new lP.default(n.opts.uriResolver,o,r);if(l instanceof v_.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Hi(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Hi(t,(0,tt._)`${p}.validate`,u,u.$async)}function f(p){let h=k_(t,p);Hi(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,tt.stringify)(p)}:{ref:p}),g=e.name("valid"),v=t.subschema({schema:p,dataTypes:[],schemaPath:tt.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(v),t.ok(g)}}};function k_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,tt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}Qr.getValidate=k_;function Hi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Un.default.this:tt.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,tt._)`await ${(0,x_.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,tt._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,x_.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,tt._)`${p}.errors`;o.assign(Un.default.vErrors,(0,tt._)`${Un.default.vErrors} === null ? ${h} : ${Un.default.vErrors}.concat(${h})`),o.assign(Un.default.errors,(0,tt._)`${Un.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=Ui.mergeEvaluated.props(o,g.props,s.props));else{let v=o.var("props",(0,tt._)`${p}.evaluated.props`);s.props=Ui.mergeEvaluated.props(o,v,s.props,tt.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Ui.mergeEvaluated.items(o,g.items,s.items));else{let v=o.var("items",(0,tt._)`${p}.evaluated.items`);s.items=Ui.mergeEvaluated.items(o,v,s.items,tt.Name)}}}Qr.callRef=Hi;Qr.default=dP});var b_=T(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var pP=y_(),fP=S_(),mP=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",pP.default,fP.default];od.default=mP});var w_=T(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});var qi=F(),mr=qi.operators,Fi={maximum:{okStr:"<=",ok:mr.LTE,fail:mr.GT},minimum:{okStr:">=",ok:mr.GTE,fail:mr.LT},exclusiveMaximum:{okStr:"<",ok:mr.LT,fail:mr.GTE},exclusiveMinimum:{okStr:">",ok:mr.GT,fail:mr.LTE}},hP={message:({keyword:t,schemaCode:e})=>(0,qi.str)`must be ${Fi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,qi._)`{comparison: ${Fi[t].okStr}, limit: ${e}}`},gP={keyword:Object.keys(Fi),type:"number",schemaType:"number",$data:!0,error:hP,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,qi._)`${r} ${Fi[e].fail} ${n} || isNaN(${r})`)}};sd.default=gP});var E_=T(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var Qo=F(),_P={message:({schemaCode:t})=>(0,Qo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Qo._)`{multipleOf: ${t}}`},yP={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:_P,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Qo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Qo._)`${i} !== parseInt(${i})`;t.fail$data((0,Qo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};id.default=yP});var $_=T(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});function T_(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}ad.default=T_;T_.code='require("ajv/dist/runtime/ucs2length").default'});var P_=T(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});var en=F(),xP=X(),vP=$_(),kP={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,en.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,en._)`{limit: ${t}}`},SP={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:kP,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?en.operators.GT:en.operators.LT,i=o.opts.unicode===!1?(0,en._)`${r}.length`:(0,en._)`${(0,xP.useFunc)(t.gen,vP.default)}(${r})`;t.fail$data((0,en._)`${i} ${s} ${n}`)}};cd.default=SP});var R_=T(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});var bP=dt(),wP=X(),Hn=F(),EP={message:({schemaCode:t})=>(0,Hn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Hn._)`{pattern: ${t}}`},TP={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:EP,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,Hn._)`new RegExp`:(0,wP.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Hn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Hn._)`!${l}`)}else{let c=(0,bP.usePattern)(t,o);t.fail$data((0,Hn._)`!${c}.test(${r})`)}}};ud.default=TP});var O_=T(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});var es=F(),$P={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,es.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,es._)`{limit: ${t}}`},PP={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:$P,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?es.operators.GT:es.operators.LT;t.fail$data((0,es._)`Object.keys(${r}).length ${o} ${n}`)}};ld.default=PP});var C_=T(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var ts=dt(),rs=F(),RP=X(),OP={message:({params:{missingProperty:t}})=>(0,rs.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,rs._)`{missingProperty: ${t}}`},CP={keyword:"required",type:"object",schemaType:"array",$data:!0,error:OP,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,v=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,RP.checkStrictMode)(i,v,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(rs.nil,d);else for(let m of r)(0,ts.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,ts.checkMissingProp)(t,r,m)),(0,ts.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,ts.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,ts.propertyInData)(e,o,m,a.ownProperties)),e.if((0,rs.not)(p),()=>{t.error(),e.break()})},rs.nil)}}};dd.default=CP});var I_=T(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var ns=F(),IP={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ns.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ns._)`{limit: ${t}}`},zP={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:IP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?ns.operators.GT:ns.operators.LT;t.fail$data((0,ns._)`${r}.length ${o} ${n}`)}};pd.default=zP});var Bi=T(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});var z_=Ml();z_.code='require("ajv/dist/runtime/equal").default';fd.default=z_});var N_=T(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var md=qo(),ze=F(),NP=X(),AP=Bi(),jP={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}}`},MP={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:jP,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,md.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"),v=(0,md.checkDataTypes)(u,g,a.opts.strictNumbers,md.DataType.Wrong),y=e.const("indices",(0,ze._)`{}`);e.for((0,ze._)`;${p}--;`,()=>{e.let(g,(0,ze._)`${r}[${p}]`),e.if(v,(0,ze._)`continue`),u.length>1&&e.if((0,ze._)`typeof ${g} == "string"`,(0,ze._)`${g} += "_"`),e.if((0,ze._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(h,(0,ze._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,ze._)`${y}[${g}] = ${p}`)})}function m(p,h){let g=(0,NP.useFunc)(e,AP.default),v=e.name("outer");e.label(v).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(v)})))}}};hd.default=MP});var A_=T(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var gd=F(),DP=X(),LP=Bi(),ZP={message:"must be equal to constant",params:({schemaCode:t})=>(0,gd._)`{allowedValue: ${t}}`},UP={keyword:"const",$data:!0,error:ZP,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,gd._)`!${(0,DP.useFunc)(e,LP.default)}(${r}, ${o})`):t.fail((0,gd._)`${s} !== ${r}`)}};_d.default=UP});var j_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var os=F(),HP=X(),qP=Bi(),FP={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,os._)`{allowedValues: ${t}}`},BP={keyword:"enum",schemaType:"array",$data:!0,error:FP,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,HP.useFunc)(e,qP.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,os.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,os._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,os._)`${u()}(${r}, ${m}[${p}])`:(0,os._)`${r} === ${h}`}}};yd.default=BP});var M_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var VP=w_(),KP=E_(),JP=P_(),WP=R_(),GP=O_(),YP=C_(),XP=I_(),QP=N_(),eR=A_(),tR=j_(),rR=[VP.default,KP.default,JP.default,WP.default,GP.default,YP.default,XP.default,QP.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},eR.default,tR.default];xd.default=rR});var kd=T(ss=>{"use strict";Object.defineProperty(ss,"__esModule",{value:!0});ss.validateAdditionalItems=void 0;var tn=F(),vd=X(),nR={message:({params:{len:t}})=>(0,tn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,tn._)`{limit: ${t}}`},oR={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:nR,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,vd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}D_(t,n)}};function D_(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,tn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,tn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,vd.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,tn._)`${a} <= ${e.length}`);r.if((0,tn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:vd.Type.Num},u),i.allErrors||r.if((0,tn.not)(u),()=>r.break())})}}ss.validateAdditionalItems=D_;ss.default=oR});var Sd=T(is=>{"use strict";Object.defineProperty(is,"__esModule",{value:!0});is.validateTuple=void 0;var L_=F(),Vi=X(),sR=dt(),iR={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Z_(t,"additionalItems",e);r.items=!0,!(0,Vi.alwaysValidSchema)(r,e)&&t.ok((0,sR.validateArray)(t))}};function Z_(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=Vi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,L_._)`${s}.length`);r.forEach((d,f)=>{(0,Vi.alwaysValidSchema)(a,d)||(n.if((0,L_._)`${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,Vi.checkStrictMode)(a,g,f.strictTuples)}}}is.validateTuple=Z_;is.default=iR});var U_=T(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var aR=Sd(),cR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,aR.validateTuple)(t,"items")};bd.default=cR});var q_=T(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var H_=F(),uR=X(),lR=dt(),dR=kd(),pR={message:({params:{len:t}})=>(0,H_.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,H_._)`{limit: ${t}}`},fR={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:pR,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,uR.alwaysValidSchema)(n,e)&&(o?(0,dR.validateAdditionalItems)(t,o):t.ok((0,lR.validateArray)(t)))}};wd.default=fR});var F_=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var ft=F(),Ki=X(),mR={message:({params:{min:t,max:e}})=>e===void 0?(0,ft.str)`must contain at least ${t} valid item(s)`:(0,ft.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ft._)`{minContains: ${t}}`:(0,ft._)`{minContains: ${t}, maxContains: ${e}}`},hR={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:mR,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,ft._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Ki.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Ki.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Ki.alwaysValidSchema)(s,r)){let h=(0,ft._)`${l} >= ${i}`;a!==void 0&&(h=(0,ft._)`${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,ft._)`${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,v=>{t.subschema({keyword:"contains",dataProp:v,dataPropType:Ki.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,ft._)`${h}++`),a===void 0?e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ft._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Ed.default=hR});var K_=T(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.validateSchemaDeps=At.validatePropertyDeps=At.error=void 0;var Td=F(),gR=X(),as=dt();At.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Td.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Td._)`{property: ${t},
6
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,H._)`[${o}]`)}}}function QT({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,H._)`${e} !== undefined`,()=>t.assign((0,H._)`${e}[${r}]`,n))}function Il(t,e,r,n=Dn.Correct){let o=n===Dn.Correct?H.operators.EQ:H.operators.NEQ,s;switch(t){case"null":return(0,H._)`${e} ${o} null`;case"array":s=(0,H._)`Array.isArray(${e})`;break;case"object":s=(0,H._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,H._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,H._)`typeof ${e} ${o} ${t}`}return n===Dn.Correct?s:(0,H.not)(s);function i(a=H.nil){return(0,H.and)((0,H._)`typeof ${e} == "number"`,a,r?(0,H._)`isFinite(${e})`:H.nil)}}Le.checkDataType=Il;function zl(t,e,r,n){if(t.length===1)return Il(t[0],e,r,n);let o,s=(0,yg.toHash)(t);if(s.array&&s.object){let i=(0,H._)`typeof ${e} != "object"`;o=s.null?i:(0,H._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=H.nil;s.number&&delete s.integer;for(let i in s)o=(0,H.and)(o,Il(i,e,r,n));return o}Le.checkDataTypes=zl;var e$={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,H._)`{type: ${t}}`:(0,H._)`{type: ${e}}`};function Nl(t){let e=t$(t);(0,JT.reportError)(e,e$)}Le.reportTypeError=Nl;function t$(t){let{gen:e,data:r,schema:n}=t,o=(0,yg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var kg=T(Oi=>{"use strict";Object.defineProperty(Oi,"__esModule",{value:!0});Oi.assignDefaults=void 0;var Ln=F(),r$=X();function n$(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Sg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Sg(t,s,o.default))}Oi.assignDefaults=n$;function Sg(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Ln._)`${s}${(0,Ln.getProperty)(e)}`;if(o){(0,r$.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Ln._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Ln._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Ln._)`${a} = ${(0,Ln.stringify)(r)}`)}});var dt=T(oe=>{"use strict";Object.defineProperty(oe,"__esModule",{value:!0});oe.validateUnion=oe.validateArray=oe.usePattern=oe.callValidateCode=oe.schemaProperties=oe.allSchemaProperties=oe.noPropertyInData=oe.propertyInData=oe.isOwnProperty=oe.hasPropFunc=oe.reportMissingProp=oe.checkMissingProp=oe.checkReportMissingProp=void 0;var pe=F(),Al=X(),fr=Gt(),o$=X();function s$(t,e){let{gen:r,data:n,it:o}=t;r.if(Ml(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,pe._)`${e}`},!0),t.error()})}oe.checkReportMissingProp=s$;function i$({gen:t,data:e,it:{opts:r}},n,o){return(0,pe.or)(...n.map(s=>(0,pe.and)(Ml(t,e,s,r.ownProperties),(0,pe._)`${o} = ${s}`)))}oe.checkMissingProp=i$;function a$(t,e){t.setParams({missingProperty:e},!0),t.error()}oe.reportMissingProp=a$;function bg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,pe._)`Object.prototype.hasOwnProperty`})}oe.hasPropFunc=bg;function jl(t,e,r){return(0,pe._)`${bg(t)}.call(${e}, ${r})`}oe.isOwnProperty=jl;function c$(t,e,r,n){let o=(0,pe._)`${e}${(0,pe.getProperty)(r)} !== undefined`;return n?(0,pe._)`${o} && ${jl(t,e,r)}`:o}oe.propertyInData=c$;function Ml(t,e,r,n){let o=(0,pe._)`${e}${(0,pe.getProperty)(r)} === undefined`;return n?(0,pe.or)(o,(0,pe.not)(jl(t,e,r))):o}oe.noPropertyInData=Ml;function wg(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}oe.allSchemaProperties=wg;function u$(t,e){return wg(e).filter(r=>!(0,Al.alwaysValidSchema)(t,e[r]))}oe.schemaProperties=u$;function l$({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,pe._)`${t}, ${e}, ${n}${o}`:e,d=[[fr.default.instancePath,(0,pe.strConcat)(fr.default.instancePath,s)],[fr.default.parentData,i.parentData],[fr.default.parentDataProperty,i.parentDataProperty],[fr.default.rootData,fr.default.rootData]];i.opts.dynamicRef&&d.push([fr.default.dynamicAnchors,fr.default.dynamicAnchors]);let f=(0,pe._)`${l}, ${r.object(...d)}`;return c!==pe.nil?(0,pe._)`${a}.call(${c}, ${f})`:(0,pe._)`${a}(${f})`}oe.callValidateCode=l$;var d$=(0,pe._)`new RegExp`;function p$({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,pe._)`${o.code==="new RegExp"?d$:(0,o$.useFunc)(t,o)}(${r}, ${n})`})}oe.usePattern=p$;function f$(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,pe._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Al.Type.Num},s),e.if((0,pe.not)(s),a)})}}oe.validateArray=f$;function m$(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,Al.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,pe._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,pe.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}oe.validateUnion=m$});var $g=T(zt=>{"use strict";Object.defineProperty(zt,"__esModule",{value:!0});zt.validateKeywordUsage=zt.validSchemaType=zt.funcKeywordCode=zt.macroKeywordCode=void 0;var Be=F(),Qr=Gt(),h$=dt(),g$=qo();function _$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Tg(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Be.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}zt.macroKeywordCode=_$;function y$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;v$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Tg(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&&Eg(t),g(()=>t.error());else{let v=e.async?m():p();e.modifying&&Eg(t),g(()=>x$(t,v))}}function m(){let v=n.let("ruleErrs",null);return n.try(()=>h((0,Be._)`await `),y=>n.assign(d,!1).if((0,Be._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(v,(0,Be._)`${y}.errors`),()=>n.throw(y))),v}function p(){let v=(0,Be._)`${l}.errors`;return n.assign(v,null),h(Be.nil),v}function h(v=e.async?(0,Be._)`await `:Be.nil){let y=c.opts.passContext?Qr.default.this:Qr.default.self,S=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Be._)`${v}${(0,h$.callValidateCode)(t,l,y,S)}`,e.modifying)}function g(v){var y;n.if((0,Be.not)((y=e.valid)!==null&&y!==void 0?y:d),v)}}zt.funcKeywordCode=y$;function Eg(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Be._)`${n.parentData}[${n.parentDataProperty}]`))}function x$(t,e){let{gen:r}=t;r.if((0,Be._)`Array.isArray(${e})`,()=>{r.assign(Qr.default.vErrors,(0,Be._)`${Qr.default.vErrors} === null ? ${e} : ${Qr.default.vErrors}.concat(${e})`).assign(Qr.default.errors,(0,Be._)`${Qr.default.vErrors}.length`),(0,g$.extendErrors)(t)},()=>t.error())}function v$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Tg(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Be.stringify)(r)})}function S$(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")}zt.validSchemaType=S$;function k$({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)}}zt.validateKeywordUsage=k$});var Rg=T(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.extendSubschemaMode=mr.extendSubschemaData=mr.getSubschema=void 0;var Nt=F(),Pg=X();function b$(t,{keyword:e,schemaProp:r,schema:n,schemaPath:o,errSchemaPath:s,topSchemaRef:i}){if(e!==void 0&&n!==void 0)throw new Error('both "keyword" and "schema" passed, only one allowed');if(e!==void 0){let a=t.schema[e];return r===void 0?{schema:a,schemaPath:(0,Nt._)`${t.schemaPath}${(0,Nt.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Nt._)`${t.schemaPath}${(0,Nt.getProperty)(e)}${(0,Nt.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Pg.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')}mr.getSubschema=b$;function w$(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,Nt._)`${e.data}${(0,Nt.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Nt.str)`${u}${(0,Pg.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Nt._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Nt.Name?o:a.let("data",o,!0);c(u),i!==void 0&&(t.propertyName=i)}s&&(t.dataTypes=s);function c(u){t.data=u,t.dataLevel=e.dataLevel+1,t.dataTypes=[],e.definedProperties=new Set,t.parentData=e.data,t.dataNames=[...e.dataNames,u]}}mr.extendSubschemaData=w$;function E$(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}mr.extendSubschemaMode=E$});var Dl=T((oM,Og)=>{"use strict";Og.exports=function t(e,r){if(e===r)return!0;if(e&&r&&typeof e=="object"&&typeof r=="object"){if(e.constructor!==r.constructor)return!1;var n,o,s;if(Array.isArray(e)){if(n=e.length,n!=r.length)return!1;for(o=n;o--!==0;)if(!t(e[o],r[o]))return!1;return!0}if(e.constructor===RegExp)return e.source===r.source&&e.flags===r.flags;if(e.valueOf!==Object.prototype.valueOf)return e.valueOf()===r.valueOf();if(e.toString!==Object.prototype.toString)return e.toString()===r.toString();if(s=Object.keys(e),n=s.length,n!==Object.keys(r).length)return!1;for(o=n;o--!==0;)if(!Object.prototype.hasOwnProperty.call(r,s[o]))return!1;for(o=n;o--!==0;){var i=s[o];if(!t(e[i],r[i]))return!1}return!0}return e!==e&&r!==r}});var Ig=T((sM,Cg)=>{"use strict";var hr=Cg.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(){};Ci(e,n,o,t,"",t)};hr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};hr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};hr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};hr.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 Ci(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 hr.arrayKeywords)for(var f=0;f<d.length;f++)Ci(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in hr.propsKeywords){if(d&&typeof d=="object")for(var m in d)Ci(t,e,r,d[m],o+"/"+l+"/"+T$(m),s,o,l,n,m)}else(l in hr.keywords||t.allKeys&&!(l in hr.skipKeywords))&&Ci(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function T$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Bo=T(et=>{"use strict";Object.defineProperty(et,"__esModule",{value:!0});et.getSchemaRefs=et.resolveUrl=et.normalizeId=et._getFullPath=et.getFullPath=et.inlineRef=void 0;var $$=X(),P$=Dl(),R$=Ig(),O$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function C$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Ll(t):e?zg(t)<=e:!1}et.inlineRef=C$;var I$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Ll(t){for(let e in t){if(I$.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Ll)||typeof r=="object"&&Ll(r))return!0}return!1}function zg(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!O$.has(r)&&(typeof t[r]=="object"&&(0,$$.eachItem)(t[r],n=>e+=zg(n)),e===1/0))return 1/0}return e}function Ng(t,e="",r){r!==!1&&(e=Zn(e));let n=t.parse(e);return Ag(t,n)}et.getFullPath=Ng;function Ag(t,e){return t.serialize(e).split("#")[0]+"#"}et._getFullPath=Ag;var z$=/#\/?$/;function Zn(t){return t?t.replace(z$,""):""}et.normalizeId=Zn;function N$(t,e,r){return r=Zn(r),t.resolve(e,r)}et.resolveUrl=N$;var A$=/^[a-z_][-a-z0-9._]*$/i;function j$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Zn(t[r]||e),s={"":o},i=Ng(n,o,!1),a={},c=new Set;return R$(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof d[r]=="string"&&(g=v.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[f]=g;function v(S){let E=this.opts.uriResolver.resolve;if(S=Zn(g?E(g,S):S),c.has(S))throw l(S);c.add(S);let C=this.refs[S];return typeof C=="string"&&(C=this.refs[C]),typeof C=="object"?u(d,C.schema,S):S!==Zn(h)&&(S[0]==="#"?(u(d,a[S],S),a[S]=d):this.refs[S]=h),S}function y(S){if(typeof S=="string"){if(!A$.test(S))throw new Error(`invalid anchor "${S}"`);v.call(this,`#${S}`)}}}),a;function u(d,f,m){if(f!==void 0&&!P$(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}et.getSchemaRefs=j$});var Jo=T(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.getData=gr.KeywordCxt=gr.validateFunctionCode=void 0;var Zg=hg(),jg=Fo(),Ul=Cl(),Ii=Fo(),M$=kg(),Ko=$g(),Zl=Rg(),z=F(),D=Gt(),D$=Bo(),Yt=X(),Vo=qo();function L$(t){if(qg(t)&&(Fg(t),Hg(t))){H$(t);return}Ug(t,()=>(0,Zg.topBoolOrEmptySchema)(t))}gr.validateFunctionCode=L$;function Ug({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,z._)`${D.default.data}, ${D.default.valCxt}`,n.$async,()=>{t.code((0,z._)`"use strict"; ${Mg(r,o)}`),U$(t,o),t.code(s)}):t.func(e,(0,z._)`${D.default.data}, ${Z$(o)}`,n.$async,()=>t.code(Mg(r,o)).code(s))}function Z$(t){return(0,z._)`{${D.default.instancePath}="", ${D.default.parentData}, ${D.default.parentDataProperty}, ${D.default.rootData}=${D.default.data}${t.dynamicRef?(0,z._)`, ${D.default.dynamicAnchors}={}`:z.nil}}={}`}function U$(t,e){t.if(D.default.valCxt,()=>{t.var(D.default.instancePath,(0,z._)`${D.default.valCxt}.${D.default.instancePath}`),t.var(D.default.parentData,(0,z._)`${D.default.valCxt}.${D.default.parentData}`),t.var(D.default.parentDataProperty,(0,z._)`${D.default.valCxt}.${D.default.parentDataProperty}`),t.var(D.default.rootData,(0,z._)`${D.default.valCxt}.${D.default.rootData}`),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,z._)`${D.default.valCxt}.${D.default.dynamicAnchors}`)},()=>{t.var(D.default.instancePath,(0,z._)`""`),t.var(D.default.parentData,(0,z._)`undefined`),t.var(D.default.parentDataProperty,(0,z._)`undefined`),t.var(D.default.rootData,D.default.data),e.dynamicRef&&t.var(D.default.dynamicAnchors,(0,z._)`{}`)})}function H$(t){let{schema:e,opts:r,gen:n}=t;Ug(t,()=>{r.$comment&&e.$comment&&Vg(t),K$(t),n.let(D.default.vErrors,null),n.let(D.default.errors,0),r.unevaluated&&q$(t),Bg(t),G$(t)})}function q$(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,z._)`${r}.evaluated`),e.if((0,z._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,z._)`${t.evaluated}.props`,(0,z._)`undefined`)),e.if((0,z._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,z._)`${t.evaluated}.items`,(0,z._)`undefined`))}function Mg(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,z._)`/*# sourceURL=${r} */`:z.nil}function F$(t,e){if(qg(t)&&(Fg(t),Hg(t))){B$(t,e);return}(0,Zg.boolOrEmptySchema)(t,e)}function Hg({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 qg(t){return typeof t.schema!="boolean"}function B$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&Vg(t),J$(t),W$(t);let s=n.const("_errs",D.default.errors);Bg(t,s),n.var(e,(0,z._)`${s} === ${D.default.errors}`)}function Fg(t){(0,Yt.checkUnknownRules)(t),V$(t)}function Bg(t,e){if(t.opts.jtd)return Dg(t,[],!1,e);let r=(0,jg.getSchemaTypes)(t.schema),n=(0,jg.coerceAndCheckDataType)(t,r);Dg(t,r,!n,e)}function V$(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Yt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function K$(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Yt.checkStrictMode)(t,"default is ignored in the schema root")}function J$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,D$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function W$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Vg({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,z._)`${D.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,z.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,z._)`${D.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function G$(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,z._)`${D.default.errors} === 0`,()=>e.return(D.default.data),()=>e.throw((0,z._)`new ${o}(${D.default.vErrors})`)):(e.assign((0,z._)`${n}.errors`,D.default.vErrors),s.unevaluated&&Y$(t),e.return((0,z._)`${D.default.errors} === 0`))}function Y$({gen:t,evaluated:e,props:r,items:n}){r instanceof z.Name&&t.assign((0,z._)`${e}.props`,r),n instanceof z.Name&&t.assign((0,z._)`${e}.items`,n)}function Dg(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,Yt.schemaHasRulesButRef)(s,l))){o.block(()=>Jg(t,"$ref",l.all.$ref.definition));return}c.jtd||X$(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Ul.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Ii.checkDataType)(f.type,i,c.strictNumbers)),Lg(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Ii.reportTypeError)(t)),o.endIf()):Lg(t,f),a||o.if((0,z._)`${D.default.errors} === ${n||0}`))}}function Lg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,M$.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Ul.shouldUseRule)(n,s)&&Jg(t,s.keyword,s.definition,e.type)})}function X$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(Q$(t,e),t.opts.allowUnionTypes||e0(t,e),t0(t,t.dataTypes))}function Q$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Kg(t.dataTypes,r)||Hl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),n0(t,e)}}function e0(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Hl(t,"use allowUnionTypes to allow union type keyword")}function t0(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Ul.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>r0(e,i))&&Hl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function r0(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Kg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function n0(t,e){let r=[];for(let n of t.dataTypes)Kg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Hl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Yt.checkStrictMode)(t,e,t.opts.strictTypes)}var zi=class{constructor(e,r,n){if((0,Ko.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,Yt.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",Wg(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Ko.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",D.default.errors))}result(e,r,n){this.failResult((0,z.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,z.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,z._)`${r} !== undefined && (${(0,z.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?Vo.reportExtraError:Vo.reportError)(this,this.def.error,r)}$dataError(){(0,Vo.reportError)(this,this.def.$dataError||Vo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Vo.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=z.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=z.nil,r=z.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,z.or)((0,z._)`${o} === undefined`,r)),e!==z.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==z.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,z.or)(i(),a());function i(){if(n.length){if(!(r instanceof z.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,z._)`${(0,Ii.checkDataTypes)(c,r,s.opts.strictNumbers,Ii.DataType.Wrong)}`}return z.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,z._)`!${c}(${r})`}return z.nil}}subschema(e,r){let n=(0,Zl.getSubschema)(this.it,e);(0,Zl.extendSubschemaData)(n,this.it,e),(0,Zl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return F$(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Yt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Yt.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,z.Name)),!0}};gr.KeywordCxt=zi;function Jg(t,e,r,n){let o=new zi(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Ko.funcKeywordCode)(o,r):"macro"in r?(0,Ko.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Ko.funcKeywordCode)(o,r)}var o0=/^\/(?:[^~]|~0|~1)*$/,s0=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function Wg(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return D.default.rootData;if(t[0]==="/"){if(!o0.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=D.default.rootData}else{let u=s0.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,z._)`${s}${(0,z.getProperty)((0,Yt.unescapeJsonPointer)(u))}`,i=(0,z._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}gr.getData=Wg});var Ni=T(Fl=>{"use strict";Object.defineProperty(Fl,"__esModule",{value:!0});var ql=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};Fl.default=ql});var Wo=T(Kl=>{"use strict";Object.defineProperty(Kl,"__esModule",{value:!0});var Bl=Bo(),Vl=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,Bl.resolveUrl)(e,r,n),this.missingSchema=(0,Bl.normalizeId)((0,Bl.getFullPath)(e,this.missingRef))}};Kl.default=Vl});var ji=T(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.resolveSchema=pt.getCompilingSchema=pt.resolveRef=pt.compileSchema=pt.SchemaEnv=void 0;var St=F(),i0=Ni(),en=Gt(),kt=Bo(),Gg=X(),a0=Jo(),Un=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,kt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};pt.SchemaEnv=Un;function Wl(t){let e=Yg.call(this,t);if(e)return e;let r=(0,kt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new St.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:i0.default,code:(0,St._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:en.default.data,parentData:en.default.parentData,parentDataProperty:en.default.parentDataProperty,dataNames:[en.default.data],dataPathArr:[St.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,St.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:St.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,St._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,a0.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(en.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${en.default.self}`,`${en.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 St.Name?void 0:p,items:h instanceof St.Name?void 0:h,dynamicProps:p instanceof St.Name,dynamicItems:h instanceof St.Name},m.source&&(m.source.evaluated=(0,St.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)}}pt.compileSchema=Wl;function c0(t,e,r){var n;r=(0,kt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=d0.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 Un({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=u0.call(this,s)}pt.resolveRef=c0;function u0(t){return(0,kt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:Wl.call(this,t)}function Yg(t){for(let e of this._compilations)if(l0(e,t))return e}pt.getCompilingSchema=Yg;function l0(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function d0(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Ai.call(this,t,e)}function Ai(t,e){let r=this.opts.uriResolver.parse(e),n=(0,kt._getFullPath)(this.opts.uriResolver,r),o=(0,kt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return Jl.call(this,r,t);let s=(0,kt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Ai.call(this,t,i);return typeof a?.schema!="object"?void 0:Jl.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||Wl.call(this,i),s===(0,kt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,kt.resolveUrl)(this.opts.uriResolver,o,u)),new Un({schema:a,schemaId:c,root:t,baseId:o})}return Jl.call(this,r,i)}}pt.resolveSchema=Ai;var p0=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function Jl(t,{baseId:e,schema:r,root:n}){var o;if(((o=t.fragment)===null||o===void 0?void 0:o[0])!=="/")return;for(let a of t.fragment.slice(1).split("/")){if(typeof r=="boolean")return;let c=r[(0,Gg.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!p0.has(a)&&u&&(e=(0,kt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,Gg.schemaHasRulesButRef)(r,this.RULES)){let a=(0,kt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Ai.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Un({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var Xg=T((dM,f0)=>{f0.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 Yl=T((pM,r_)=>{"use strict";var m0=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),e_=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 Gl(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 h0=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function Qg(t){return t.length=0,!0}function g0(t,e,r){if(t.length){let n=Gl(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function _0(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=g0;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=Qg}else{o.push(u);continue}}return o.length&&(a===Qg?r.zone=o.join(""):i?n.push(o.join("")):n.push(Gl(o))),r.address=n.join(""),r}function t_(t){if(y0(t,":")<2)return{host:t,isIPV6:!1};let e=_0(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 y0(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function x0(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 v0(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 S0(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!e_(r)){let n=t_(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}r_.exports={nonSimpleDomain:h0,recomposeAuthority:S0,normalizeComponentEncoding:v0,removeDotSegments:x0,isIPv4:e_,isUUID:m0,normalizeIPv6:t_,stringArrayToHexStripped:Gl}});var a_=T((fM,i_)=>{"use strict";var{isUUID:k0}=Yl(),b0=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,w0=["http","https","ws","wss","urn","urn:uuid"];function E0(t){return w0.indexOf(t)!==-1}function Xl(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 n_(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function o_(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 T0(t){return t.secure=Xl(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function $0(t){if((t.port===(Xl(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 P0(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(b0);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=Ql(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function R0(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=Ql(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 O0(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!k0(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function C0(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var s_={scheme:"http",domainHost:!0,parse:n_,serialize:o_},I0={scheme:"https",domainHost:s_.domainHost,parse:n_,serialize:o_},Mi={scheme:"ws",domainHost:!0,parse:T0,serialize:$0},z0={scheme:"wss",domainHost:Mi.domainHost,parse:Mi.parse,serialize:Mi.serialize},N0={scheme:"urn",parse:P0,serialize:R0,skipNormalize:!0},A0={scheme:"urn:uuid",parse:O0,serialize:C0,skipNormalize:!0},Di={http:s_,https:I0,ws:Mi,wss:z0,urn:N0,"urn:uuid":A0};Object.setPrototypeOf(Di,null);function Ql(t){return t&&(Di[t]||Di[t.toLowerCase()])||void 0}i_.exports={wsIsSecure:Xl,SCHEMES:Di,isValidSchemeName:E0,getSchemeHandler:Ql}});var l_=T((mM,Zi)=>{"use strict";var{normalizeIPv6:j0,removeDotSegments:Go,recomposeAuthority:M0,normalizeComponentEncoding:Li,isIPv4:D0,nonSimpleDomain:L0}=Yl(),{SCHEMES:Z0,getSchemeHandler:c_}=a_();function U0(t,e){return typeof t=="string"?t=At(Xt(t,e),e):typeof t=="object"&&(t=Xt(At(t,e),e)),t}function H0(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=u_(Xt(t,n),Xt(e,n),n,!0);return n.skipEscape=!0,At(o,n)}function u_(t,e,r,n){let o={};return n||(t=Xt(At(t,r),r),e=Xt(At(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=Go(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=Go(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Go(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=Go(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 q0(t,e,r){return typeof t=="string"?(t=unescape(t),t=At(Li(Xt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=At(Li(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=At(Li(Xt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=At(Li(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function At(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=c_(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=M0(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=Go(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 F0=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Xt(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(F0);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(D0(n.host)===!1){let c=j0(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=c_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&L0(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 ed={SCHEMES:Z0,normalize:U0,resolve:H0,resolveComponent:u_,equal:q0,serialize:At,parse:Xt};Zi.exports=ed;Zi.exports.default=ed;Zi.exports.fastUri=ed});var p_=T(td=>{"use strict";Object.defineProperty(td,"__esModule",{value:!0});var d_=l_();d_.code='require("ajv/dist/runtime/uri").default';td.default=d_});var v_=T(Ie=>{"use strict";Object.defineProperty(Ie,"__esModule",{value:!0});Ie.CodeGen=Ie.Name=Ie.nil=Ie.stringify=Ie.str=Ie._=Ie.KeywordCxt=void 0;var B0=Jo();Object.defineProperty(Ie,"KeywordCxt",{enumerable:!0,get:function(){return B0.KeywordCxt}});var Hn=F();Object.defineProperty(Ie,"_",{enumerable:!0,get:function(){return Hn._}});Object.defineProperty(Ie,"str",{enumerable:!0,get:function(){return Hn.str}});Object.defineProperty(Ie,"stringify",{enumerable:!0,get:function(){return Hn.stringify}});Object.defineProperty(Ie,"nil",{enumerable:!0,get:function(){return Hn.nil}});Object.defineProperty(Ie,"Name",{enumerable:!0,get:function(){return Hn.Name}});Object.defineProperty(Ie,"CodeGen",{enumerable:!0,get:function(){return Hn.CodeGen}});var V0=Ni(),__=Wo(),K0=Ol(),Yo=ji(),J0=F(),Xo=Bo(),Ui=Fo(),nd=X(),f_=Xg(),W0=p_(),y_=(t,e)=>new RegExp(t,e);y_.code="new RegExp";var G0=["removeAdditional","useDefaults","coerceTypes"],Y0=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),X0={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."},Q0={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},m_=200;function eP(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,v,y,S,E,C,xe,Ae,Ze,so;let br=t.strict,Te=(e=t.code)===null||e===void 0?void 0:e.optimize,wr=Te===!0||Te===void 0?1:Te||0,Ue=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:y_,$a=(o=t.uriResolver)!==null&&o!==void 0?o:W0.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:br)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:br)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:br)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:br)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:br)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:wr,regExp:Ue}:{optimize:wr,regExp:Ue},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:m_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:m_,meta:(v=t.meta)!==null&&v!==void 0?v:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:(S=t.inlineRefs)!==null&&S!==void 0?S:!0,schemaId:(E=t.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(C=t.addUsedSchema)!==null&&C!==void 0?C:!0,validateSchema:(xe=t.validateSchema)!==null&&xe!==void 0?xe:!0,validateFormats:(Ae=t.validateFormats)!==null&&Ae!==void 0?Ae:!0,unicodeRegExp:(Ze=t.unicodeRegExp)!==null&&Ze!==void 0?Ze:!0,int32range:(so=t.int32range)!==null&&so!==void 0?so:!0,uriResolver:$a}}var Qo=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...eP(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new J0.ValueScope({scope:{},prefixes:Y0,es5:r,lines:n}),this.logger=iP(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,K0.getRules)(),h_.call(this,X0,e,"NOT SUPPORTED"),h_.call(this,Q0,e,"DEPRECATED","warn"),this._metaOpts=oP.call(this),e.formats&&rP.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&nP.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),tP.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=f_;n==="id"&&(o={...f_},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 __.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,Xo.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=g_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Yo.SchemaEnv({schema:{},schemaId:n});if(r=Yo.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=g_.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,Xo.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(cP.call(this,n,r),!r)return(0,nd.eachItem)(n,s=>rd.call(this,s)),this;lP.call(this,r);let o={...r,type:(0,Ui.getJSONTypes)(r.type),schemaType:(0,Ui.getJSONTypes)(r.schemaType)};return(0,nd.eachItem)(n,o.type.length===0?s=>rd.call(this,s,o):s=>o.type.forEach(i=>rd.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]=x_(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,Xo.normalizeId)(i||n);let u=Xo.getSchemaRefs.call(this,e,n);return c=new Yo.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):Yo.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{Yo.compileSchema.call(this,e)}finally{this.opts=r}}};Qo.ValidationError=V0.default;Qo.MissingRefError=__.default;Ie.default=Qo;function h_(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 g_(t){return t=(0,Xo.normalizeId)(t),this.schemas[t]||this.refs[t]}function tP(){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 rP(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function nP(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 oP(){let t={...this.opts};for(let e of G0)delete t[e];return t}var sP={log(){},warn(){},error(){}};function iP(t){if(t===!1)return sP;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 aP=/^[a-z_$][a-z0-9_$:-]*$/i;function cP(t,e){let{RULES:r}=this;if((0,nd.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!aP.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 rd(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,Ui.getJSONTypes)(e.type),schemaType:(0,Ui.getJSONTypes)(e.schemaType)}};e.before?uP.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 uP(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 lP(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=x_(e)),t.validateSchema=this.compile(e,!0))}var dP={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function x_(t){return{anyOf:[t,dP]}}});var S_=T(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var pP={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};od.default=pP});var E_=T(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.callRef=tn.getValidate=void 0;var fP=Wo(),k_=dt(),tt=F(),qn=Gt(),b_=ji(),Hi=X(),mP={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=b_.resolveRef.call(c,u,o,r);if(l===void 0)throw new fP.default(n.opts.uriResolver,o,r);if(l instanceof b_.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return qi(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return qi(t,(0,tt._)`${p}.validate`,u,u.$async)}function f(p){let h=w_(t,p);qi(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,tt.stringify)(p)}:{ref:p}),g=e.name("valid"),v=t.subschema({schema:p,dataTypes:[],schemaPath:tt.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(v),t.ok(g)}}};function w_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,tt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}tn.getValidate=w_;function qi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?qn.default.this:tt.nil;n?l():d();function l(){if(!a.$async)throw new Error("async schema referenced by sync schema");let p=o.let("valid");o.try(()=>{o.code((0,tt._)`await ${(0,k_.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,tt._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,k_.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,tt._)`${p}.errors`;o.assign(qn.default.vErrors,(0,tt._)`${qn.default.vErrors} === null ? ${h} : ${qn.default.vErrors}.concat(${h})`),o.assign(qn.default.errors,(0,tt._)`${qn.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=Hi.mergeEvaluated.props(o,g.props,s.props));else{let v=o.var("props",(0,tt._)`${p}.evaluated.props`);s.props=Hi.mergeEvaluated.props(o,v,s.props,tt.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Hi.mergeEvaluated.items(o,g.items,s.items));else{let v=o.var("items",(0,tt._)`${p}.evaluated.items`);s.items=Hi.mergeEvaluated.items(o,v,s.items,tt.Name)}}}tn.callRef=qi;tn.default=mP});var T_=T(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});var hP=S_(),gP=E_(),_P=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",hP.default,gP.default];sd.default=_P});var $_=T(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var Fi=F(),_r=Fi.operators,Bi={maximum:{okStr:"<=",ok:_r.LTE,fail:_r.GT},minimum:{okStr:">=",ok:_r.GTE,fail:_r.LT},exclusiveMaximum:{okStr:"<",ok:_r.LT,fail:_r.GTE},exclusiveMinimum:{okStr:">",ok:_r.GT,fail:_r.LTE}},yP={message:({keyword:t,schemaCode:e})=>(0,Fi.str)`must be ${Bi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Fi._)`{comparison: ${Bi[t].okStr}, limit: ${e}}`},xP={keyword:Object.keys(Bi),type:"number",schemaType:"number",$data:!0,error:yP,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Fi._)`${r} ${Bi[e].fail} ${n} || isNaN(${r})`)}};id.default=xP});var P_=T(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var es=F(),vP={message:({schemaCode:t})=>(0,es.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,es._)`{multipleOf: ${t}}`},SP={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:vP,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,es._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,es._)`${i} !== parseInt(${i})`;t.fail$data((0,es._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};ad.default=SP});var O_=T(cd=>{"use strict";Object.defineProperty(cd,"__esModule",{value:!0});function R_(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}cd.default=R_;R_.code='require("ajv/dist/runtime/ucs2length").default'});var C_=T(ud=>{"use strict";Object.defineProperty(ud,"__esModule",{value:!0});var rn=F(),kP=X(),bP=O_(),wP={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,rn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,rn._)`{limit: ${t}}`},EP={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:wP,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?rn.operators.GT:rn.operators.LT,i=o.opts.unicode===!1?(0,rn._)`${r}.length`:(0,rn._)`${(0,kP.useFunc)(t.gen,bP.default)}(${r})`;t.fail$data((0,rn._)`${i} ${s} ${n}`)}};ud.default=EP});var I_=T(ld=>{"use strict";Object.defineProperty(ld,"__esModule",{value:!0});var TP=dt(),$P=X(),Fn=F(),PP={message:({schemaCode:t})=>(0,Fn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Fn._)`{pattern: ${t}}`},RP={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:PP,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,Fn._)`new RegExp`:(0,$P.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Fn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Fn._)`!${l}`)}else{let c=(0,TP.usePattern)(t,o);t.fail$data((0,Fn._)`!${c}.test(${r})`)}}};ld.default=RP});var z_=T(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var ts=F(),OP={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,ts.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,ts._)`{limit: ${t}}`},CP={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:OP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?ts.operators.GT:ts.operators.LT;t.fail$data((0,ts._)`Object.keys(${r}).length ${o} ${n}`)}};dd.default=CP});var N_=T(pd=>{"use strict";Object.defineProperty(pd,"__esModule",{value:!0});var rs=dt(),ns=F(),IP=X(),zP={message:({params:{missingProperty:t}})=>(0,ns.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,ns._)`{missingProperty: ${t}}`},NP={keyword:"required",type:"object",schemaType:"array",$data:!0,error:zP,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,v=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,IP.checkStrictMode)(i,v,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(ns.nil,d);else for(let m of r)(0,rs.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,rs.checkMissingProp)(t,r,m)),(0,rs.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,rs.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,rs.propertyInData)(e,o,m,a.ownProperties)),e.if((0,ns.not)(p),()=>{t.error(),e.break()})},ns.nil)}}};pd.default=NP});var A_=T(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});var os=F(),AP={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,os.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,os._)`{limit: ${t}}`},jP={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:AP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?os.operators.GT:os.operators.LT;t.fail$data((0,os._)`${r}.length ${o} ${n}`)}};fd.default=jP});var Vi=T(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var j_=Dl();j_.code='require("ajv/dist/runtime/equal").default';md.default=j_});var M_=T(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var hd=Fo(),ze=F(),MP=X(),DP=Vi(),LP={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}}`},ZP={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:LP,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,hd.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"),v=(0,hd.checkDataTypes)(u,g,a.opts.strictNumbers,hd.DataType.Wrong),y=e.const("indices",(0,ze._)`{}`);e.for((0,ze._)`;${p}--;`,()=>{e.let(g,(0,ze._)`${r}[${p}]`),e.if(v,(0,ze._)`continue`),u.length>1&&e.if((0,ze._)`typeof ${g} == "string"`,(0,ze._)`${g} += "_"`),e.if((0,ze._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(h,(0,ze._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,ze._)`${y}[${g}] = ${p}`)})}function m(p,h){let g=(0,MP.useFunc)(e,DP.default),v=e.name("outer");e.label(v).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(v)})))}}};gd.default=ZP});var D_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var _d=F(),UP=X(),HP=Vi(),qP={message:"must be equal to constant",params:({schemaCode:t})=>(0,_d._)`{allowedValue: ${t}}`},FP={keyword:"const",$data:!0,error:qP,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,_d._)`!${(0,UP.useFunc)(e,HP.default)}(${r}, ${o})`):t.fail((0,_d._)`${s} !== ${r}`)}};yd.default=FP});var L_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var ss=F(),BP=X(),VP=Vi(),KP={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,ss._)`{allowedValues: ${t}}`},JP={keyword:"enum",schemaType:"array",$data:!0,error:KP,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,BP.useFunc)(e,VP.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,ss.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,ss._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,ss._)`${u()}(${r}, ${m}[${p}])`:(0,ss._)`${r} === ${h}`}}};xd.default=JP});var Z_=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var WP=$_(),GP=P_(),YP=C_(),XP=I_(),QP=z_(),eR=N_(),tR=A_(),rR=M_(),nR=D_(),oR=L_(),sR=[WP.default,GP.default,YP.default,XP.default,QP.default,eR.default,tR.default,rR.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},nR.default,oR.default];vd.default=sR});var kd=T(is=>{"use strict";Object.defineProperty(is,"__esModule",{value:!0});is.validateAdditionalItems=void 0;var nn=F(),Sd=X(),iR={message:({params:{len:t}})=>(0,nn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,nn._)`{limit: ${t}}`},aR={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:iR,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Sd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}U_(t,n)}};function U_(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,nn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,nn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Sd.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,nn._)`${a} <= ${e.length}`);r.if((0,nn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Sd.Type.Num},u),i.allErrors||r.if((0,nn.not)(u),()=>r.break())})}}is.validateAdditionalItems=U_;is.default=aR});var bd=T(as=>{"use strict";Object.defineProperty(as,"__esModule",{value:!0});as.validateTuple=void 0;var H_=F(),Ki=X(),cR=dt(),uR={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return q_(t,"additionalItems",e);r.items=!0,!(0,Ki.alwaysValidSchema)(r,e)&&t.ok((0,cR.validateArray)(t))}};function q_(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=Ki.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,H_._)`${s}.length`);r.forEach((d,f)=>{(0,Ki.alwaysValidSchema)(a,d)||(n.if((0,H_._)`${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,Ki.checkStrictMode)(a,g,f.strictTuples)}}}as.validateTuple=q_;as.default=uR});var F_=T(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var lR=bd(),dR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,lR.validateTuple)(t,"items")};wd.default=dR});var V_=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var B_=F(),pR=X(),fR=dt(),mR=kd(),hR={message:({params:{len:t}})=>(0,B_.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,B_._)`{limit: ${t}}`},gR={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:hR,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,pR.alwaysValidSchema)(n,e)&&(o?(0,mR.validateAdditionalItems)(t,o):t.ok((0,fR.validateArray)(t)))}};Ed.default=gR});var K_=T(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var ft=F(),Ji=X(),_R={message:({params:{min:t,max:e}})=>e===void 0?(0,ft.str)`must contain at least ${t} valid item(s)`:(0,ft.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ft._)`{minContains: ${t}}`:(0,ft._)`{minContains: ${t}, maxContains: ${e}}`},yR={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:_R,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,ft._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Ji.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Ji.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Ji.alwaysValidSchema)(s,r)){let h=(0,ft._)`${l} >= ${i}`;a!==void 0&&(h=(0,ft._)`${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,ft._)`${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,v=>{t.subschema({keyword:"contains",dataProp:v,dataPropType:Ji.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,ft._)`${h}++`),a===void 0?e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ft._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ft._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Td.default=yR});var G_=T(jt=>{"use strict";Object.defineProperty(jt,"__esModule",{value:!0});jt.validateSchemaDeps=jt.validatePropertyDeps=jt.error=void 0;var $d=F(),xR=X(),cs=dt();jt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,$d.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,$d._)`{property: ${t},
7
7
  missingProperty: ${n},
8
8
  depsCount: ${e},
9
- deps: ${r}}`};var _R={keyword:"dependencies",type:"object",schemaType:"object",error:At.error,code(t){let[e,r]=yR(t);B_(t,e),V_(t,r)}};function yR({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 B_(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,as.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,as.checkReportMissingProp)(t,u)}):(r.if((0,Td._)`${c} && (${(0,as.checkMissingProp)(t,a,s)})`),(0,as.reportMissingProp)(t,s),r.else())}}At.validatePropertyDeps=B_;function V_(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,gR.alwaysValidSchema)(s,e[a])||(r.if((0,as.propertyInData)(r,n,a,s.opts.ownProperties),()=>{let c=t.subschema({keyword:o,schemaProp:a},i);t.mergeValidEvaluated(c,i)},()=>r.var(i,!0)),t.ok(i))}At.validateSchemaDeps=V_;At.default=_R});var W_=T($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var J_=F(),xR=X(),vR={message:"property name must be valid",params:({params:t})=>(0,J_._)`{propertyName: ${t.propertyName}}`},kR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:vR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,xR.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,J_.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};$d.default=kR});var Rd=T(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var Ji=dt(),St=F(),SR=Jt(),Wi=X(),bR={message:"must NOT have additional properties",params:({params:t})=>(0,St._)`{additionalProperty: ${t.additionalProperty}}`},wR={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:bR,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,Wi.alwaysValidSchema)(i,r))return;let u=(0,Ji.allSchemaProperties)(n.properties),l=(0,Ji.allSchemaProperties)(n.patternProperties);d(),t.ok((0,St._)`${s} === ${SR.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 v;if(u.length>8){let y=(0,Wi.schemaRefOrVal)(i,n.properties,"properties");v=(0,Ji.isOwnProperty)(e,y,g)}else u.length?v=(0,St.or)(...u.map(y=>(0,St._)`${g} === ${y}`)):v=St.nil;return l.length&&(v=(0,St.or)(v,...l.map(y=>(0,St._)`${(0,Ji.usePattern)(t,y)}.test(${g})`))),(0,St.not)(v)}function m(g){e.code((0,St._)`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,Wi.alwaysValidSchema)(i,r)){let v=e.name("valid");c.removeAdditional==="failing"?(h(g,v,!1),e.if((0,St.not)(v),()=>{t.reset(),m(g)})):(h(g,v),a||e.if((0,St.not)(v),()=>e.break()))}}function h(g,v,y){let k={keyword:"additionalProperties",dataProp:g,dataPropType:Wi.Type.Str};y===!1&&Object.assign(k,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(k,v)}}};Pd.default=wR});var X_=T(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var ER=Ko(),G_=dt(),Od=X(),Y_=Rd(),TR={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&&Y_.default.code(new ER.KeywordCxt(s,Y_.default,"additionalProperties"));let i=(0,G_.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Od.mergeEvaluated.props(e,(0,Od.toHash)(i),s.props));let a=i.filter(d=>!(0,Od.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,G_.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)}}};Cd.default=TR});var ry=T(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var Q_=dt(),Gi=F(),ey=X(),ty=X(),$R={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,Q_.allSchemaProperties)(r),c=a.filter(h=>(0,ey.alwaysValidSchema)(s,r[h]));if(a.length===0||c.length===a.length&&(!s.opts.unevaluated||s.props===!0))return;let u=i.strictSchema&&!i.allowMatchingProperties&&o.properties,l=e.name("valid");s.props!==!0&&!(s.props instanceof Gi.Name)&&(s.props=(0,ty.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,ey.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,Gi._)`${(0,Q_.usePattern)(t,h)}.test(${g})`,()=>{let v=c.includes(h);v||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:ty.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Gi._)`${d}[${g}]`,!0):!v&&!s.allErrors&&e.if((0,Gi.not)(l),()=>e.break())})})}}};Id.default=$R});var ny=T(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var PR=X(),RR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,PR.alwaysValidSchema)(n,r)){t.fail();return}let o=e.name("valid");t.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},o),t.failResult(o,()=>t.reset(),()=>t.error())},error:{message:"must NOT be valid"}};zd.default=RR});var oy=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var OR=dt(),CR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:OR.validateUnion,error:{message:"must match a schema in anyOf"}};Nd.default=CR});var sy=T(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var Yi=F(),IR=X(),zR={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Yi._)`{passingSchemas: ${t.passing}}`},NR={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:zR,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,IR.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Yi._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Yi._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,Yi.Name)})})}}};Ad.default=NR});var iy=T(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});var AR=X(),jR={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,AR.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};jd.default=jR});var uy=T(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var Xi=F(),cy=X(),MR={message:({params:t})=>(0,Xi.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Xi._)`{failingKeyword: ${t.ifClause}}`},DR={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:MR,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,cy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=ay(n,"then"),s=ay(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,Xi.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,Xi._)`${l}`):t.setParams({ifClause:l})}}}};function ay(t,e){let r=t.schema[e];return r!==void 0&&!(0,cy.alwaysValidSchema)(t,r)}Md.default=DR});var ly=T(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var LR=X(),ZR={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,LR.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Dd.default=ZR});var dy=T(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var UR=kd(),HR=U_(),qR=Sd(),FR=q_(),BR=F_(),VR=K_(),KR=W_(),JR=Rd(),WR=X_(),GR=ry(),YR=ny(),XR=oy(),QR=sy(),eO=iy(),tO=uy(),rO=ly();function nO(t=!1){let e=[YR.default,XR.default,QR.default,eO.default,tO.default,rO.default,KR.default,JR.default,VR.default,WR.default,GR.default];return t?e.push(HR.default,FR.default):e.push(UR.default,qR.default),e.push(BR.default),e}Ld.default=nO});var py=T(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var xe=F(),oO={message:({schemaCode:t})=>(0,xe.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,xe._)`{format: ${t}}`},sO={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:oO,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,xe._)`${p}[${i}]`),g=r.let("fType"),v=r.let("format");r.if((0,xe._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,xe._)`${h}.type || "string"`).assign(v,(0,xe._)`${h}.validate`),()=>r.assign(g,(0,xe._)`"string"`).assign(v,h)),t.fail$data((0,xe.or)(y(),k()));function y(){return c.strictSchema===!1?xe.nil:(0,xe._)`${i} && !${v}`}function k(){let E=l.$async?(0,xe._)`(${h}.async ? await ${v}(${n}) : ${v}(${n}))`:(0,xe._)`${v}(${n})`,C=(0,xe._)`(typeof ${v} == "function" ? ${E} : ${v}.test(${n}))`;return(0,xe._)`${v} && ${v} !== true && ${g} === ${e} && !${C}`}}function m(){let p=d.formats[s];if(!p){y();return}if(p===!0)return;let[h,g,v]=k(p);h===e&&t.pass(E());function y(){if(c.strictSchema===!1){d.logger.warn(C());return}throw new Error(C());function C(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function k(C){let ye=C instanceof RegExp?(0,xe.regexpCode)(C):c.code.formats?(0,xe._)`${c.code.formats}${(0,xe.getProperty)(s)}`:void 0,Ae=r.scopeValue("formats",{key:s,ref:C,code:ye});return typeof C=="object"&&!(C instanceof RegExp)?[C.type||"string",C.validate,(0,xe._)`${Ae}.validate`]:["string",C,Ae]}function E(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,xe._)`await ${v}(${n})`}return typeof g=="function"?(0,xe._)`${v}(${n})`:(0,xe._)`${v}.test(${n})`}}}};Zd.default=sO});var fy=T(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var iO=py(),aO=[iO.default];Ud.default=aO});var my=T(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.contentVocabulary=qn.metadataVocabulary=void 0;qn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];qn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var gy=T(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var cO=b_(),uO=M_(),lO=dy(),dO=fy(),hy=my(),pO=[cO.default,uO.default,(0,lO.default)(),dO.default,hy.metadataVocabulary,hy.contentVocabulary];Hd.default=pO});var yy=T(Qi=>{"use strict";Object.defineProperty(Qi,"__esModule",{value:!0});Qi.DiscrError=void 0;var _y;(function(t){t.Tag="tag",t.Mapping="mapping"})(_y||(Qi.DiscrError=_y={}))});var vy=T(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});var Fn=F(),qd=yy(),xy=Ai(),fO=Jo(),mO=X(),hO={message:({params:{discrError:t,tagName:e}})=>t===qd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Fn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},gO={keyword:"discriminator",type:"object",schemaType:"object",error:hO,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,Fn._)`${r}${(0,Fn.getProperty)(a)}`);e.if((0,Fn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:qd.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,Fn._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:qd.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,Fn.Name),p}function f(){var m;let p={},h=v(o),g=!0;for(let E=0;E<i.length;E++){let C=i[E];if(C?.$ref&&!(0,mO.schemaHasRulesButRef)(C,s.self.RULES)){let Ae=C.$ref;if(C=xy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,Ae),C instanceof xy.SchemaEnv&&(C=C.schema),C===void 0)throw new fO.default(s.opts.uriResolver,s.baseId,Ae)}let ye=(m=C?.properties)===null||m===void 0?void 0:m[a];if(typeof ye!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||v(C)),y(ye,E)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function v({required:E}){return Array.isArray(E)&&E.includes(a)}function y(E,C){if(E.const)k(E.const,C);else if(E.enum)for(let ye of E.enum)k(ye,C);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function k(E,C){if(typeof E!="string"||E in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[E]=C}}}};Fd.default=gO});var ky=T((eD,_O)=>{_O.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 Vd=T((pe,Bd)=>{"use strict";Object.defineProperty(pe,"__esModule",{value:!0});pe.MissingRefError=pe.ValidationError=pe.CodeGen=pe.Name=pe.nil=pe.stringify=pe.str=pe._=pe.KeywordCxt=pe.Ajv=void 0;var yO=__(),xO=gy(),vO=vy(),Sy=ky(),kO=["/properties"],ea="http://json-schema.org/draft-07/schema",Bn=class extends yO.default{_addVocabularies(){super._addVocabularies(),xO.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(vO.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Sy,kO):Sy;this.addMetaSchema(e,ea,!1),this.refs["http://json-schema.org/schema"]=ea}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ea)?ea:void 0)}};pe.Ajv=Bn;Bd.exports=pe=Bn;Bd.exports.Ajv=Bn;Object.defineProperty(pe,"__esModule",{value:!0});pe.default=Bn;var SO=Ko();Object.defineProperty(pe,"KeywordCxt",{enumerable:!0,get:function(){return SO.KeywordCxt}});var Vn=F();Object.defineProperty(pe,"_",{enumerable:!0,get:function(){return Vn._}});Object.defineProperty(pe,"str",{enumerable:!0,get:function(){return Vn.str}});Object.defineProperty(pe,"stringify",{enumerable:!0,get:function(){return Vn.stringify}});Object.defineProperty(pe,"nil",{enumerable:!0,get:function(){return Vn.nil}});Object.defineProperty(pe,"Name",{enumerable:!0,get:function(){return Vn.Name}});Object.defineProperty(pe,"CodeGen",{enumerable:!0,get:function(){return Vn.CodeGen}});var bO=zi();Object.defineProperty(pe,"ValidationError",{enumerable:!0,get:function(){return bO.default}});var wO=Jo();Object.defineProperty(pe,"MissingRefError",{enumerable:!0,get:function(){return wO.default}})});var Oy=T(Mt=>{"use strict";Object.defineProperty(Mt,"__esModule",{value:!0});Mt.formatNames=Mt.fastFormats=Mt.fullFormats=void 0;function jt(t,e){return{validate:t,compare:e}}Mt.fullFormats={date:jt(Ty,Gd),time:jt(Jd(!0),Yd),"date-time":jt(by(!0),Py),"iso-time":jt(Jd(),$y),"iso-date-time":jt(by(),Ry),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:OO,"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:MO,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:CO,int32:{type:"number",validate:NO},int64:{type:"number",validate:AO},float:{type:"number",validate:Ey},double:{type:"number",validate:Ey},password:!0,binary:!0};Mt.fastFormats={...Mt.fullFormats,date:jt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Gd),time:jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Yd),"date-time":jt(/^\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,Py),"iso-time":jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,$y),"iso-date-time":jt(/^\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,Ry),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};Mt.formatNames=Object.keys(Mt.fullFormats);function EO(t){return t%4===0&&(t%100!==0||t%400===0)}var TO=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,$O=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Ty(t){let e=TO.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&&EO(r)?29:$O[n])}function Gd(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Kd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Jd(t){return function(r){let n=Kd.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 Yd(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 $y(t,e){if(!(t&&e))return;let r=Kd.exec(t),n=Kd.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 Wd=/t|\s/i;function by(t){let e=Jd(t);return function(n){let o=n.split(Wd);return o.length===2&&Ty(o[0])&&e(o[1])}}function Py(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Ry(t,e){if(!(t&&e))return;let[r,n]=t.split(Wd),[o,s]=e.split(Wd),i=Gd(r,o);if(i!==void 0)return i||Yd(n,s)}var PO=/\/|:/,RO=/^(?:[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 OO(t){return PO.test(t)&&RO.test(t)}var wy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function CO(t){return wy.lastIndex=0,wy.test(t)}var IO=-(2**31),zO=2**31-1;function NO(t){return Number.isInteger(t)&&t<=zO&&t>=IO}function AO(t){return Number.isInteger(t)}function Ey(){return!0}var jO=/[^\\]\\Z/;function MO(t){if(jO.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Cy=T(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.formatLimitDefinition=void 0;var DO=Vd(),bt=F(),hr=bt.operators,ta={formatMaximum:{okStr:"<=",ok:hr.LTE,fail:hr.GT},formatMinimum:{okStr:">=",ok:hr.GTE,fail:hr.LT},formatExclusiveMaximum:{okStr:"<",ok:hr.LT,fail:hr.GTE},formatExclusiveMinimum:{okStr:">",ok:hr.GT,fail:hr.LTE}},LO={message:({keyword:t,schemaCode:e})=>(0,bt.str)`should be ${ta[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,bt._)`{comparison: ${ta[t].okStr}, limit: ${e}}`};Kn.formatLimitDefinition={keyword:Object.keys(ta),type:"string",schemaType:"string",$data:!0,error:LO,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 DO.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,bt._)`${f}[${c.schemaCode}]`);t.fail$data((0,bt.or)((0,bt._)`typeof ${m} != "object"`,(0,bt._)`${m} instanceof RegExp`,(0,bt._)`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,bt._)`${i.code.formats}${(0,bt.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,bt._)`${f}.compare(${r}, ${n}) ${ta[o].fail} 0`}},dependencies:["format"]};var ZO=t=>(t.addKeyword(Kn.formatLimitDefinition),t);Kn.default=ZO});var Ay=T((cs,Ny)=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});var Jn=Oy(),UO=Cy(),Xd=F(),Iy=new Xd.Name("fullFormats"),HO=new Xd.Name("fastFormats"),Qd=(t,e={keywords:!0})=>{if(Array.isArray(e))return zy(t,e,Jn.fullFormats,Iy),t;let[r,n]=e.mode==="fast"?[Jn.fastFormats,HO]:[Jn.fullFormats,Iy],o=e.formats||Jn.formatNames;return zy(t,o,r,n),e.keywords&&(0,UO.default)(t),t};Qd.get=(t,e="full")=>{let n=(e==="fast"?Jn.fastFormats:Jn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function zy(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Xd._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}Ny.exports=cs=Qd;Object.defineProperty(cs,"__esModule",{value:!0});cs.default=Qd});var Sx,bx=Se(()=>{"use strict";Sx={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed"}});function fs(t,e){let r=ps[e],n=mp(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function mp(t,e){if(e){let r=ps[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}function hp(t){return t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function Tx(t){let e=Object.values(ps);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var Et,wC,wx,ps,Ex,dL,$x=Se(()=>{"use strict";Et={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},wC=["Bash","WebFetch","Read","Grep","Agent","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"],wx=wC.join("|"),ps={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},Ex=[Et.PRE_TOOL_USE,Et.SESSION_START],dL=[Et.POST_TOOL_USE,Et.PRE_COMPACT,Et.USER_PROMPT_SUBMIT]});var _p={};Ke(_p,{ClaudeCodeAdapter:()=>gp});import{createHash as Px}from"node:crypto";import{readFileSync as ma,writeFileSync as Rx,mkdirSync as EC,copyFileSync as TC,accessSync as Ox,existsSync as $C,readdirSync as PC,chmodSync as RC,constants as Cx}from"node:fs";import{resolve as rn,join as ms}from"node:path";import{homedir as Gn}from"node:os";var gp,yp=Se(()=>{"use strict";$x();gp=class{name="Claude Code";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return rn(Gn(),".claude","settings.json")}getSessionDir(){let e=ms(Gn(),".claude","context-mode","sessions");return EC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Px("sha256").update(e).digest("hex").slice(0,16);return ms(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Px("sha256").update(e).digest("hex").slice(0,16);return ms(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=ma(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){Rx(this.getSettingsPath(),JSON.stringify(e,null,2)+`
10
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"PreToolUse hook",status:"fail",message:"Could not read ~/.claude/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=this.readPluginHooks(e),i=this.checkHookType(o,s,Et.PRE_TOOL_USE);r.push({check:"PreToolUse hook",status:i?"pass":"fail",message:i?"PreToolUse hook configured":"No PreToolUse hooks found",fix:i?void 0:"context-mode upgrade"});let a=this.checkHookType(o,s,Et.SESSION_START);return r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"No SessionStart hooks found",fix:a?void 0:"context-mode upgrade"}),r}readPluginHooks(e){let r=[ms(e,"hooks","hooks.json"),ms(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=ma(n,"utf-8"),s=JSON.parse(o);if(s.hooks)return s.hooks}catch{}}checkHookType(e,r,n){let o=e?.[n];if(o&&o.length>0&&o.some(i=>fs(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>fs(i,n)))}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read settings.json"};let r=e.enabledPlugins;if(!r)return{check:"Plugin registration",status:"warn",message:"No enabledPlugins section found (might be using standalone MCP mode)"};let n=Object.keys(r).find(o=>o.startsWith("context-mode"));return n&&r[n]?{check:"Plugin registration",status:"pass",message:`Plugin enabled: ${n}`}:{check:"Plugin registration",status:"warn",message:"context-mode not in enabledPlugins (might be using standalone MCP mode)"}}getInstalledVersion(){try{let r=rn(Gn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(ma(r,"utf-8")).plugins??{};for(let[s,i]of Object.entries(o)){if(!s.toLowerCase().includes("context-mode"))continue;let a=i;if(a.length>0&&typeof a[0].version=="string")return a[0].version}}catch{}let e=[rn(Gn(),".claude"),rn(Gn(),".config","claude")];for(let r of e){let n=rn(r,"plugins","cache","context-mode","context-mode");try{let s=PC(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let a of Object.keys(n)){let c=n[a];if(!Array.isArray(c))continue;let u=c.filter(d=>{let f=d;if(!Tx(f))return!0;let m=f.hooks??[];return m.every(h=>!h.command||!hp(h.command))?!0:m.every(h=>{let g=h.command?hp(h.command):null;return g?$C(g):!0})}),l=c.length-u.length;l>0&&(n[a]=u,o.push(`Removed ${l} stale ${a} hook(s)`))}let s=this.readPluginHooks(e);if(s&&Ex.every(c=>this.checkHookType(void 0,s,c)))return r.hooks=n,this.writeSettings(r),o.push("Skipped settings.json registration \u2014 plugin hooks.json is sufficient"),o;let i=[Et.PRE_TOOL_USE,Et.SESSION_START];for(let a of i){let c=mp(a,e);if(a===Et.PRE_TOOL_USE){let u={matcher:wx,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(f=>fs(f,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n.PreToolUse=l}else n.PreToolUse=[u],o.push(`Created ${a} hooks section`)}else{let u={matcher:"",hooks:[{type:"command",command:c}]},l=n[a];if(l&&Array.isArray(l)){let d=l.findIndex(f=>fs(f,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n[a]=l}else n[a]=[u],o.push(`Created ${a} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{Ox(e,Cx.R_OK);let r=e+".bak";return TC(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(ps)){let o=rn(e,"hooks",n);try{Ox(o,Cx.R_OK),RC(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=rn(Gn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(ma(n,"utf-8"));for(let[s,i]of Object.entries(o.plugins||{}))if(s.toLowerCase().includes("context-mode"))for(let a of i)a.installPath=e,a.version=r,a.lastUpdated=new Date().toISOString();Rx(n,JSON.stringify(o,null,2)+`
11
- `,"utf-8")}catch{}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function Yn(t,e){let r=xp[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var ve,xp,yL,xL,Ix=Se(()=>{"use strict";ve={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},xp={[ve.BEFORE_TOOL]:"beforetool.mjs",[ve.AFTER_TOOL]:"aftertool.mjs",[ve.PRE_COMPRESS]:"precompress.mjs",[ve.SESSION_START]:"sessionstart.mjs"},yL=[ve.BEFORE_TOOL,ve.SESSION_START],xL=[ve.AFTER_TOOL,ve.PRE_COMPRESS]});var Dx={};Ke(Dx,{GeminiCLIAdapter:()=>kp});import{createHash as zx}from"node:crypto";import{readFileSync as vp,writeFileSync as Nx,mkdirSync as Ax,copyFileSync as OC,accessSync as jx,chmodSync as CC,constants as Mx}from"node:fs";import{resolve as hs,join as ha}from"node:path";import{homedir as gs}from"node:os";var kp,Lx=Se(()=>{"use strict";Ix();kp=class{name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return hs(gs(),".gemini","settings.json")}getSessionDir(){let e=ha(gs(),".gemini","context-mode","sessions");return Ax(e,{recursive:!0}),e}getSessionDBPath(e){let r=zx("sha256").update(e).digest("hex").slice(0,16);return ha(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=zx("sha256").update(e).digest("hex").slice(0,16);return ha(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ve.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Yn(ve.BEFORE_TOOL,e)}]}],[ve.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Yn(ve.AFTER_TOOL,e)}]}],[ve.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Yn(ve.PRE_COMPRESS,e)}]}],[ve.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Yn(ve.SESSION_START,e)}]}]}}readSettings(){try{let e=vp(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=hs(gs(),".gemini");Ax(r,{recursive:!0}),Nx(this.getSettingsPath(),JSON.stringify(e,null,2)+`
12
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[ve.BEFORE_TOOL];if(s&&s.length>0){let a=s.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"BeforeTool hook",status:a?"pass":"fail",message:a?"BeforeTool hook configured":"BeforeTool exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"BeforeTool hook",status:"fail",message:"No BeforeTool hooks found",fix:"context-mode upgrade"});let i=o?.[ve.SESSION_START];if(i&&i.length>0){let a=i.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"SessionStart exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"SessionStart hook",status:"fail",message:"No SessionStart hooks found",fix:"context-mode upgrade"});return r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read ~/.gemini/settings.json"};let r=e.extensions;return r&&(Array.isArray(r)?r.some(o=>typeof o=="string"&&o.includes("context-mode")):Object.keys(r).some(o=>o.includes("context-mode")))?{check:"Plugin registration",status:"pass",message:"context-mode found in extensions"}:{check:"Plugin registration",status:"warn",message:"context-mode not found in extensions (might be using standalone MCP mode)"}}getInstalledVersion(){try{let e=hs(gs(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(vp(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[{name:ve.BEFORE_TOOL},{name:ve.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Yn(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(m=>m.command?.includes("context-mode")));l>=0?(u[l]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{jx(e,Mx.R_OK);let r=e+".bak";return OC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=ha(e,"hooks","gemini-cli");for(let o of Object.values(xp)){let s=hs(n,o);try{jx(s,Mx.R_OK),CC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=hs(gs(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(vp(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),Nx(n,JSON.stringify(o,null,2)+`
13
- `,"utf-8")}catch{}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var nn,TL,$L,Zx=Se(()=>{"use strict";nn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},TL=[nn.BEFORE,nn.AFTER],$L=[nn.COMPACTING]});var qx={};Ke(qx,{OpenCodeAdapter:()=>Sp});import{createHash as Ux}from"node:crypto";import{readFileSync as Hx,writeFileSync as zC,mkdirSync as NC,copyFileSync as AC,accessSync as jC,constants as MC}from"node:fs";import{resolve as _r,join as Xn}from"node:path";import{homedir as _s}from"node:os";function IC(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var Sp,Fx=Se(()=>{"use strict";Zx();Sp=class{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};platform;constructor(e="opencode"){this.platform=e}parsePreToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},toolOutput:r.output,isError:void 0,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return this.settingsPath??_r(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[_r("kilo.json"),_r(".kilocode","kilo.json"),Xn(_s(),".config","kilo","kilo.json")]:[_r("opencode.json"),_r("opencode.jsonc"),_r(".opencode","opencode.json"),_r(".opencode","opencode.jsonc"),Xn(_s(),".config","opencode","opencode.json"),Xn(_s(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e=Xn(_s(),".config",this.platform,"context-mode","sessions");return NC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Ux("sha256").update(e).digest("hex").slice(0,16);return Xn(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Ux("sha256").update(e).digest("hex").slice(0,16);return Xn(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[nn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[nn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[nn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;for(let e of this.paths())try{let r=Hx(e,"utf-8");this.settingsPath=e;let n=e.endsWith(".jsonc")?IC(r):r;return JSON.parse(n)}catch{continue}return null}writeSettings(e){zC(this.getSettingsPath(),JSON.stringify(e,null,2)+`
14
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r;let o=n.plugin;if(o&&Array.isArray(o)){let s=o.some(i=>i.includes("context-mode"));r.push({check:"Plugin registration",status:s?"pass":"fail",message:s?"context-mode found in plugin array":"context-mode not found in plugin array",fix:s?void 0:"context-mode upgrade"})}else r.push({check:"Plugin registration",status:"fail",message:"No plugin array found in opencode.json",fix:"context-mode upgrade"});return r.push({check:"SessionStart hook",status:"warn",message:"SessionStart not supported in OpenCode (see issues #14808, #5409)"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`};let r=e.plugin;return r&&Array.isArray(r)&&r.some(o=>o.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in opencode.json plugin array",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=_r(_s(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(Hx(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){this.settingsPath=void 0;for(let e of this.paths())try{jC(e,MC.R_OK),this.settingsPath=e;let r=e+".bak";return AC(e,r),r}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var on,NL,AL,Bx=Se(()=>{"use strict";on={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},NL=[on.TOOL_CALL_BEFORE,on.TOOL_CALL_AFTER],AL=[on.COMMAND_NEW]});var Kx={};Ke(Kx,{OpenClawAdapter:()=>wp});import{createHash as Vx}from"node:crypto";import{readFileSync as bp,writeFileSync as DC,mkdirSync as LC,copyFileSync as ZC,accessSync as UC,constants as HC}from"node:fs";import{resolve as yr,join as ys}from"node:path";import{homedir as ga}from"node:os";var wp,Jx=Se(()=>{"use strict";Bx();wp=class{name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return yr("openclaw.json")}getSessionDir(){let e=ys(ga(),".openclaw","context-mode","sessions");return LC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Vx("sha256").update(e).digest("hex").slice(0,16);return ys(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Vx("sha256").update(e).digest("hex").slice(0,16);return ys(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[on.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[on.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[on.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[yr("openclaw.json"),yr(".openclaw","openclaw.json"),ys(ga(),".openclaw","openclaw.json")];for(let r of e)try{let n=bp(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=yr("openclaw.json");DC(r,JSON.stringify(e,null,2)+`
15
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read openclaw.json",fix:"context-mode upgrade"}),r;let o=n.plugins,s=o?.entries;if(s){let a=Object.keys(s).some(c=>c.includes("context-mode"));if(r.push({check:"Plugin registration",status:a?"pass":"fail",message:a?"context-mode found in plugins.entries":"context-mode not found in plugins.entries",fix:a?void 0:"context-mode upgrade"}),a){let u=s["context-mode"]?.enabled!==!1;r.push({check:"Plugin enabled",status:u?"pass":"warn",message:u?"context-mode plugin is enabled":"context-mode plugin is disabled"})}}else r.push({check:"Plugin registration",status:"fail",message:"No plugins.entries found in openclaw.json",fix:"context-mode upgrade"});return o?.slots?.contextEngine==="context-mode"?r.push({check:"Context engine",status:"pass",message:"context-mode registered as context engine (owns compaction)"}):r.push({check:"Context engine",status:"warn",message:"context-mode not set as context engine \u2014 compaction will use default engine"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read openclaw.json"};let n=e.plugins?.entries;return n&&Object.keys(n).some(s=>s.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugins.entries"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in openclaw.json plugins.entries",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=yr(ga(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(bp(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=yr("node_modules","context-mode","package.json"),r=JSON.parse(bp(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[];r.plugins||(r.plugins={});let o=r.plugins;o.entries||(o.entries={});let s=o.entries;if(!s["context-mode"])s["context-mode"]={enabled:!0},n.push("Added context-mode to plugins.entries");else{let a=s["context-mode"];a.enabled===!1?(a.enabled=!0,n.push("Enabled context-mode plugin")):n.push("context-mode already configured in plugins.entries")}o.slots||(o.slots={});let i=o.slots;return i.contextEngine?i.contextEngine!=="context-mode"&&n.push(`Context engine already set to "${i.contextEngine}" \u2014 not overwriting`):(i.contextEngine="context-mode",n.push("Set context-mode as context engine (owns compaction)")),this.writeSettings(r),n}backupSettings(){let e=[yr("openclaw.json"),yr(".openclaw","openclaw.json"),ys(ga(),".openclaw","openclaw.json")];for(let r of e)try{UC(r,HC.R_OK);let n=r+".bak";return ZC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var Xx={};Ke(Xx,{CodexAdapter:()=>$p});import{createHash as Wx}from"node:crypto";import{readFileSync as Ep,mkdirSync as qC,copyFileSync as FC,accessSync as BC,constants as VC}from"node:fs";import{resolve as Gx,join as Tp,dirname as KC}from"node:path";import{fileURLToPath as JC}from"node:url";import{homedir as Yx}from"node:os";var $p,Qx=Se(()=>{"use strict";$p=class{name="Codex CLI";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePostToolUseInput(e){throw new Error("Codex CLI does not support hooks")}parsePreCompactInput(e){throw new Error("Codex CLI does not support hooks")}parseSessionStartInput(e){throw new Error("Codex CLI does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Gx(Yx(),".codex","config.toml")}getSessionDir(){let e=Tp(Yx(),".codex","context-mode","sessions");return qC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Wx("sha256").update(e).digest("hex").slice(0,16);return Tp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Wx("sha256").update(e).digest("hex").slice(0,16);return Tp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{return{_raw_toml:Ep(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Codex CLI does not support hooks (PRs #2904, #9796 closed without merge). Only MCP integration is available."}]}checkPluginRegistration(){try{let e=Ep(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{BC(e,VC.R_OK);let r=e+".bak";return FC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Gx(KC(JC(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Ep(e,"utf-8")}catch{return`# context-mode
9
+ deps: ${r}}`};var vR={keyword:"dependencies",type:"object",schemaType:"object",error:jt.error,code(t){let[e,r]=SR(t);J_(t,e),W_(t,r)}};function SR({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 J_(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,cs.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,cs.checkReportMissingProp)(t,u)}):(r.if((0,$d._)`${c} && (${(0,cs.checkMissingProp)(t,a,s)})`),(0,cs.reportMissingProp)(t,s),r.else())}}jt.validatePropertyDeps=J_;function W_(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,xR.alwaysValidSchema)(s,e[a])||(r.if((0,cs.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))}jt.validateSchemaDeps=W_;jt.default=vR});var X_=T(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var Y_=F(),kR=X(),bR={message:"property name must be valid",params:({params:t})=>(0,Y_._)`{propertyName: ${t.propertyName}}`},wR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:bR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,kR.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,Y_.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Pd.default=wR});var Od=T(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var Wi=dt(),bt=F(),ER=Gt(),Gi=X(),TR={message:"must NOT have additional properties",params:({params:t})=>(0,bt._)`{additionalProperty: ${t.additionalProperty}}`},$R={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:TR,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,Gi.alwaysValidSchema)(i,r))return;let u=(0,Wi.allSchemaProperties)(n.properties),l=(0,Wi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,bt._)`${s} === ${ER.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 v;if(u.length>8){let y=(0,Gi.schemaRefOrVal)(i,n.properties,"properties");v=(0,Wi.isOwnProperty)(e,y,g)}else u.length?v=(0,bt.or)(...u.map(y=>(0,bt._)`${g} === ${y}`)):v=bt.nil;return l.length&&(v=(0,bt.or)(v,...l.map(y=>(0,bt._)`${(0,Wi.usePattern)(t,y)}.test(${g})`))),(0,bt.not)(v)}function m(g){e.code((0,bt._)`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,Gi.alwaysValidSchema)(i,r)){let v=e.name("valid");c.removeAdditional==="failing"?(h(g,v,!1),e.if((0,bt.not)(v),()=>{t.reset(),m(g)})):(h(g,v),a||e.if((0,bt.not)(v),()=>e.break()))}}function h(g,v,y){let S={keyword:"additionalProperties",dataProp:g,dataPropType:Gi.Type.Str};y===!1&&Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(S,v)}}};Rd.default=$R});var ty=T(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var PR=Jo(),Q_=dt(),Cd=X(),ey=Od(),RR={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&&ey.default.code(new PR.KeywordCxt(s,ey.default,"additionalProperties"));let i=(0,Q_.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Cd.mergeEvaluated.props(e,(0,Cd.toHash)(i),s.props));let a=i.filter(d=>!(0,Cd.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,Q_.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)}}};Id.default=RR});var sy=T(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var ry=dt(),Yi=F(),ny=X(),oy=X(),OR={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,ry.allSchemaProperties)(r),c=a.filter(h=>(0,ny.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 Yi.Name)&&(s.props=(0,oy.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,ny.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,Yi._)`${(0,ry.usePattern)(t,h)}.test(${g})`,()=>{let v=c.includes(h);v||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:oy.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,Yi._)`${d}[${g}]`,!0):!v&&!s.allErrors&&e.if((0,Yi.not)(l),()=>e.break())})})}}};zd.default=OR});var iy=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var CR=X(),IR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,CR.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"}};Nd.default=IR});var ay=T(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var zR=dt(),NR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:zR.validateUnion,error:{message:"must match a schema in anyOf"}};Ad.default=NR});var cy=T(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});var Xi=F(),AR=X(),jR={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,Xi._)`{passingSchemas: ${t.passing}}`},MR={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:jR,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,AR.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,Xi._)`${c} && ${i}`).assign(i,!1).assign(a,(0,Xi._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,Xi.Name)})})}}};jd.default=MR});var uy=T(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var DR=X(),LR={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,DR.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Md.default=LR});var py=T(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var Qi=F(),dy=X(),ZR={message:({params:t})=>(0,Qi.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,Qi._)`{failingKeyword: ${t.ifClause}}`},UR={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:ZR,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,dy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=ly(n,"then"),s=ly(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,Qi.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,Qi._)`${l}`):t.setParams({ifClause:l})}}}};function ly(t,e){let r=t.schema[e];return r!==void 0&&!(0,dy.alwaysValidSchema)(t,r)}Dd.default=UR});var fy=T(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var HR=X(),qR={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,HR.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Ld.default=qR});var my=T(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var FR=kd(),BR=F_(),VR=bd(),KR=V_(),JR=K_(),WR=G_(),GR=X_(),YR=Od(),XR=ty(),QR=sy(),eO=iy(),tO=ay(),rO=cy(),nO=uy(),oO=py(),sO=fy();function iO(t=!1){let e=[eO.default,tO.default,rO.default,nO.default,oO.default,sO.default,GR.default,YR.default,WR.default,XR.default,QR.default];return t?e.push(BR.default,KR.default):e.push(FR.default,VR.default),e.push(JR.default),e}Zd.default=iO});var hy=T(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var ve=F(),aO={message:({schemaCode:t})=>(0,ve.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,ve._)`{format: ${t}}`},cO={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:aO,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"),v=r.let("format");r.if((0,ve._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,ve._)`${h}.type || "string"`).assign(v,(0,ve._)`${h}.validate`),()=>r.assign(g,(0,ve._)`"string"`).assign(v,h)),t.fail$data((0,ve.or)(y(),S()));function y(){return c.strictSchema===!1?ve.nil:(0,ve._)`${i} && !${v}`}function S(){let E=l.$async?(0,ve._)`(${h}.async ? await ${v}(${n}) : ${v}(${n}))`:(0,ve._)`${v}(${n})`,C=(0,ve._)`(typeof ${v} == "function" ? ${E} : ${v}.test(${n}))`;return(0,ve._)`${v} && ${v} !== true && ${g} === ${e} && !${C}`}}function m(){let p=d.formats[s];if(!p){y();return}if(p===!0)return;let[h,g,v]=S(p);h===e&&t.pass(E());function y(){if(c.strictSchema===!1){d.logger.warn(C());return}throw new Error(C());function C(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function S(C){let xe=C instanceof RegExp?(0,ve.regexpCode)(C):c.code.formats?(0,ve._)`${c.code.formats}${(0,ve.getProperty)(s)}`:void 0,Ae=r.scopeValue("formats",{key:s,ref:C,code:xe});return typeof C=="object"&&!(C instanceof RegExp)?[C.type||"string",C.validate,(0,ve._)`${Ae}.validate`]:["string",C,Ae]}function E(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,ve._)`await ${v}(${n})`}return typeof g=="function"?(0,ve._)`${v}(${n})`:(0,ve._)`${v}.test(${n})`}}}};Ud.default=cO});var gy=T(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var uO=hy(),lO=[uO.default];Hd.default=lO});var _y=T(Bn=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.contentVocabulary=Bn.metadataVocabulary=void 0;Bn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Bn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var xy=T(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var dO=T_(),pO=Z_(),fO=my(),mO=gy(),yy=_y(),hO=[dO.default,pO.default,(0,fO.default)(),mO.default,yy.metadataVocabulary,yy.contentVocabulary];qd.default=hO});var Sy=T(ea=>{"use strict";Object.defineProperty(ea,"__esModule",{value:!0});ea.DiscrError=void 0;var vy;(function(t){t.Tag="tag",t.Mapping="mapping"})(vy||(ea.DiscrError=vy={}))});var by=T(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var Vn=F(),Fd=Sy(),ky=ji(),gO=Wo(),_O=X(),yO={message:({params:{discrError:t,tagName:e}})=>t===Fd.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Vn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},xO={keyword:"discriminator",type:"object",schemaType:"object",error:yO,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,Vn._)`${r}${(0,Vn.getProperty)(a)}`);e.if((0,Vn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:Fd.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,Vn._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:Fd.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,Vn.Name),p}function f(){var m;let p={},h=v(o),g=!0;for(let E=0;E<i.length;E++){let C=i[E];if(C?.$ref&&!(0,_O.schemaHasRulesButRef)(C,s.self.RULES)){let Ae=C.$ref;if(C=ky.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,Ae),C instanceof ky.SchemaEnv&&(C=C.schema),C===void 0)throw new gO.default(s.opts.uriResolver,s.baseId,Ae)}let xe=(m=C?.properties)===null||m===void 0?void 0:m[a];if(typeof xe!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||v(C)),y(xe,E)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function v({required:E}){return Array.isArray(E)&&E.includes(a)}function y(E,C){if(E.const)S(E.const,C);else if(E.enum)for(let xe of E.enum)S(xe,C);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function S(E,C){if(typeof E!="string"||E in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[E]=C}}}};Bd.default=xO});var wy=T((rD,vO)=>{vO.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 Kd=T((fe,Vd)=>{"use strict";Object.defineProperty(fe,"__esModule",{value:!0});fe.MissingRefError=fe.ValidationError=fe.CodeGen=fe.Name=fe.nil=fe.stringify=fe.str=fe._=fe.KeywordCxt=fe.Ajv=void 0;var SO=v_(),kO=xy(),bO=by(),Ey=wy(),wO=["/properties"],ta="http://json-schema.org/draft-07/schema",Kn=class extends SO.default{_addVocabularies(){super._addVocabularies(),kO.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(bO.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Ey,wO):Ey;this.addMetaSchema(e,ta,!1),this.refs["http://json-schema.org/schema"]=ta}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ta)?ta:void 0)}};fe.Ajv=Kn;Vd.exports=fe=Kn;Vd.exports.Ajv=Kn;Object.defineProperty(fe,"__esModule",{value:!0});fe.default=Kn;var EO=Jo();Object.defineProperty(fe,"KeywordCxt",{enumerable:!0,get:function(){return EO.KeywordCxt}});var Jn=F();Object.defineProperty(fe,"_",{enumerable:!0,get:function(){return Jn._}});Object.defineProperty(fe,"str",{enumerable:!0,get:function(){return Jn.str}});Object.defineProperty(fe,"stringify",{enumerable:!0,get:function(){return Jn.stringify}});Object.defineProperty(fe,"nil",{enumerable:!0,get:function(){return Jn.nil}});Object.defineProperty(fe,"Name",{enumerable:!0,get:function(){return Jn.Name}});Object.defineProperty(fe,"CodeGen",{enumerable:!0,get:function(){return Jn.CodeGen}});var TO=Ni();Object.defineProperty(fe,"ValidationError",{enumerable:!0,get:function(){return TO.default}});var $O=Wo();Object.defineProperty(fe,"MissingRefError",{enumerable:!0,get:function(){return $O.default}})});var zy=T(Dt=>{"use strict";Object.defineProperty(Dt,"__esModule",{value:!0});Dt.formatNames=Dt.fastFormats=Dt.fullFormats=void 0;function Mt(t,e){return{validate:t,compare:e}}Dt.fullFormats={date:Mt(Ry,Yd),time:Mt(Wd(!0),Xd),"date-time":Mt(Ty(!0),Cy),"iso-time":Mt(Wd(),Oy),"iso-date-time":Mt(Ty(),Iy),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:zO,"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:ZO,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:NO,int32:{type:"number",validate:MO},int64:{type:"number",validate:DO},float:{type:"number",validate:Py},double:{type:"number",validate:Py},password:!0,binary:!0};Dt.fastFormats={...Dt.fullFormats,date:Mt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,Yd),time:Mt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Xd),"date-time":Mt(/^\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,Cy),"iso-time":Mt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Oy),"iso-date-time":Mt(/^\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,Iy),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};Dt.formatNames=Object.keys(Dt.fullFormats);function PO(t){return t%4===0&&(t%100!==0||t%400===0)}var RO=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,OO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Ry(t){let e=RO.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&&PO(r)?29:OO[n])}function Yd(t,e){if(t&&e)return t>e?1:t<e?-1:0}var Jd=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function Wd(t){return function(r){let n=Jd.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 Xd(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 Oy(t,e){if(!(t&&e))return;let r=Jd.exec(t),n=Jd.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 Gd=/t|\s/i;function Ty(t){let e=Wd(t);return function(n){let o=n.split(Gd);return o.length===2&&Ry(o[0])&&e(o[1])}}function Cy(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Iy(t,e){if(!(t&&e))return;let[r,n]=t.split(Gd),[o,s]=e.split(Gd),i=Yd(r,o);if(i!==void 0)return i||Xd(n,s)}var CO=/\/|:/,IO=/^(?:[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 zO(t){return CO.test(t)&&IO.test(t)}var $y=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function NO(t){return $y.lastIndex=0,$y.test(t)}var AO=-(2**31),jO=2**31-1;function MO(t){return Number.isInteger(t)&&t<=jO&&t>=AO}function DO(t){return Number.isInteger(t)}function Py(){return!0}var LO=/[^\\]\\Z/;function ZO(t){if(LO.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Ny=T(Wn=>{"use strict";Object.defineProperty(Wn,"__esModule",{value:!0});Wn.formatLimitDefinition=void 0;var UO=Kd(),wt=F(),yr=wt.operators,ra={formatMaximum:{okStr:"<=",ok:yr.LTE,fail:yr.GT},formatMinimum:{okStr:">=",ok:yr.GTE,fail:yr.LT},formatExclusiveMaximum:{okStr:"<",ok:yr.LT,fail:yr.GTE},formatExclusiveMinimum:{okStr:">",ok:yr.GT,fail:yr.LTE}},HO={message:({keyword:t,schemaCode:e})=>(0,wt.str)`should be ${ra[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,wt._)`{comparison: ${ra[t].okStr}, limit: ${e}}`};Wn.formatLimitDefinition={keyword:Object.keys(ra),type:"string",schemaType:"string",$data:!0,error:HO,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 UO.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,wt._)`${f}[${c.schemaCode}]`);t.fail$data((0,wt.or)((0,wt._)`typeof ${m} != "object"`,(0,wt._)`${m} instanceof RegExp`,(0,wt._)`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,wt._)`${i.code.formats}${(0,wt.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,wt._)`${f}.compare(${r}, ${n}) ${ra[o].fail} 0`}},dependencies:["format"]};var qO=t=>(t.addKeyword(Wn.formatLimitDefinition),t);Wn.default=qO});var Dy=T((us,My)=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});var Gn=zy(),FO=Ny(),Qd=F(),Ay=new Qd.Name("fullFormats"),BO=new Qd.Name("fastFormats"),ep=(t,e={keywords:!0})=>{if(Array.isArray(e))return jy(t,e,Gn.fullFormats,Ay),t;let[r,n]=e.mode==="fast"?[Gn.fastFormats,BO]:[Gn.fullFormats,Ay],o=e.formats||Gn.formatNames;return jy(t,o,r,n),e.keywords&&(0,FO.default)(t),t};ep.get=(t,e="full")=>{let n=(e==="fast"?Gn.fastFormats:Gn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function jy(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,Qd._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}My.exports=us=ep;Object.defineProperty(us,"__esModule",{value:!0});us.default=ep});var Ex,Tx=be(()=>{"use strict";Ex={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed"}});function hs(t,e){let r=ms[e],n=_p(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function _p(t,e){if(e){let r=ms[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}function yp(t){return t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function Rx(t){let e=Object.values(ms);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var Tt,TC,$x,ms,Px,mL,Ox=be(()=>{"use strict";Tt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},TC=["Bash","WebFetch","Read","Grep","Agent","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"],$x=TC.join("|"),ms={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},Px=[Tt.PRE_TOOL_USE,Tt.SESSION_START],mL=[Tt.POST_TOOL_USE,Tt.PRE_COMPACT,Tt.USER_PROMPT_SUBMIT]});var vp={};Ke(vp,{ClaudeCodeAdapter:()=>xp});import{createHash as Cx}from"node:crypto";import{readFileSync as ha,writeFileSync as Ix,mkdirSync as $C,copyFileSync as PC,accessSync as zx,existsSync as RC,readdirSync as OC,chmodSync as CC,constants as Nx}from"node:fs";import{resolve as on,join as gs}from"node:path";import{homedir as Xn}from"node:os";var xp,Sp=be(()=>{"use strict";Ox();xp=class{name="Claude Code";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR,raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{updatedInput:e.updatedInput};if(e.decision==="context"&&e.additionalContext)return{additionalContext:e.additionalContext};if(e.decision==="ask")return{permissionDecision:"ask"}}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),e.updatedOutput&&(r.updatedMCPToolOutput=e.updatedOutput),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return on(Xn(),".claude","settings.json")}getSessionDir(){let e=gs(Xn(),".claude","context-mode","sessions");return $C(e,{recursive:!0}),e}getSessionDBPath(e){let r=Cx("sha256").update(e).digest("hex").slice(0,16);return gs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Cx("sha256").update(e).digest("hex").slice(0,16);return gs(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){let r=`node ${e}/hooks/pretooluse.mjs`;return{PreToolUse:["Bash","WebFetch","Read","Grep","Task","mcp__plugin_context-mode_context-mode__ctx_execute","mcp__plugin_context-mode_context-mode__ctx_execute_file","mcp__plugin_context-mode_context-mode__ctx_batch_execute"].map(o=>({matcher:o,hooks:[{type:"command",command:r}]})),PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{let e=ha(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){Ix(this.getSettingsPath(),JSON.stringify(e,null,2)+`
10
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"PreToolUse hook",status:"fail",message:"Could not read ~/.claude/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=this.readPluginHooks(e),i=this.checkHookType(o,s,Tt.PRE_TOOL_USE);r.push({check:"PreToolUse hook",status:i?"pass":"fail",message:i?"PreToolUse hook configured":"No PreToolUse hooks found",fix:i?void 0:"context-mode upgrade"});let a=this.checkHookType(o,s,Tt.SESSION_START);return r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"No SessionStart hooks found",fix:a?void 0:"context-mode upgrade"}),r}readPluginHooks(e){let r=[gs(e,"hooks","hooks.json"),gs(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=ha(n,"utf-8"),s=JSON.parse(o);if(s.hooks)return s.hooks}catch{}}checkHookType(e,r,n){let o=e?.[n];if(o&&o.length>0&&o.some(i=>hs(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>hs(i,n)))}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read settings.json"};let r=e.enabledPlugins;if(!r)return{check:"Plugin registration",status:"warn",message:"No enabledPlugins section found (might be using standalone MCP mode)"};let n=Object.keys(r).find(o=>o.startsWith("context-mode"));return n&&r[n]?{check:"Plugin registration",status:"pass",message:`Plugin enabled: ${n}`}:{check:"Plugin registration",status:"warn",message:"context-mode not in enabledPlugins (might be using standalone MCP mode)"}}getInstalledVersion(){try{let r=on(Xn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(ha(r,"utf-8")).plugins??{};for(let[s,i]of Object.entries(o)){if(!s.toLowerCase().includes("context-mode"))continue;let a=i;if(a.length>0&&typeof a[0].version=="string")return a[0].version}}catch{}let e=[on(Xn(),".claude"),on(Xn(),".config","claude")];for(let r of e){let n=on(r,"plugins","cache","context-mode","context-mode");try{let s=OC(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let a of Object.keys(n)){let c=n[a];if(!Array.isArray(c))continue;let u=c.filter(d=>{let f=d;if(!Rx(f))return!0;let m=f.hooks??[];return m.every(h=>!h.command||!yp(h.command))?!0:m.every(h=>{let g=h.command?yp(h.command):null;return g?RC(g):!0})}),l=c.length-u.length;l>0&&(n[a]=u,o.push(`Removed ${l} stale ${a} hook(s)`))}let s=this.readPluginHooks(e);if(s&&Px.every(c=>this.checkHookType(void 0,s,c)))return r.hooks=n,this.writeSettings(r),o.push("Skipped settings.json registration \u2014 plugin hooks.json is sufficient"),o;let i=[Tt.PRE_TOOL_USE,Tt.SESSION_START];for(let a of i){let c=_p(a,e);if(a===Tt.PRE_TOOL_USE){let u={matcher:$x,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(f=>hs(f,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n.PreToolUse=l}else n.PreToolUse=[u],o.push(`Created ${a} hooks section`)}else{let u={matcher:"",hooks:[{type:"command",command:c}]},l=n[a];if(l&&Array.isArray(l)){let d=l.findIndex(f=>hs(f,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n[a]=l}else n[a]=[u],o.push(`Created ${a} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{zx(e,Nx.R_OK);let r=e+".bak";return PC(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(ms)){let o=on(e,"hooks",n);try{zx(o,Nx.R_OK),CC(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=on(Xn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(ha(n,"utf-8"));for(let[s,i]of Object.entries(o.plugins||{}))if(s.toLowerCase().includes("context-mode"))for(let a of i)a.installPath=e,a.version=r,a.lastUpdated=new Date().toISOString();Ix(n,JSON.stringify(o,null,2)+`
11
+ `,"utf-8")}catch{}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function Qn(t,e){let r=kp[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var Se,kp,SL,kL,Ax=be(()=>{"use strict";Se={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},kp={[Se.BEFORE_TOOL]:"beforetool.mjs",[Se.AFTER_TOOL]:"aftertool.mjs",[Se.PRE_COMPRESS]:"precompress.mjs",[Se.SESSION_START]:"sessionstart.mjs"},SL=[Se.BEFORE_TOOL,Se.SESSION_START],kL=[Se.AFTER_TOOL,Se.PRE_COMPRESS]});var Ux={};Ke(Ux,{GeminiCLIAdapter:()=>wp});import{createHash as jx}from"node:crypto";import{readFileSync as bp,writeFileSync as Mx,mkdirSync as Dx,copyFileSync as IC,accessSync as Lx,chmodSync as zC,constants as Zx}from"node:fs";import{resolve as _s,join as ga}from"node:path";import{homedir as ys}from"node:os";var wp,Hx=be(()=>{"use strict";Ax();wp=class{name="Gemini CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{decision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{tool_input:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}};if(e.decision==="ask")return{decision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{decision:"deny",reason:e.updatedOutput};if(e.additionalContext)return{hookSpecificOutput:{additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return _s(ys(),".gemini","settings.json")}getSessionDir(){let e=ga(ys(),".gemini","context-mode","sessions");return Dx(e,{recursive:!0}),e}getSessionDBPath(e){let r=jx("sha256").update(e).digest("hex").slice(0,16);return ga(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=jx("sha256").update(e).digest("hex").slice(0,16);return ga(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[Se.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Qn(Se.BEFORE_TOOL,e)}]}],[Se.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Qn(Se.AFTER_TOOL,e)}]}],[Se.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Qn(Se.PRE_COMPRESS,e)}]}],[Se.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Qn(Se.SESSION_START,e)}]}]}}readSettings(){try{let e=bp(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=_s(ys(),".gemini");Dx(r,{recursive:!0}),Mx(this.getSettingsPath(),JSON.stringify(e,null,2)+`
12
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[Se.BEFORE_TOOL];if(s&&s.length>0){let a=s.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"BeforeTool hook",status:a?"pass":"fail",message:a?"BeforeTool hook configured":"BeforeTool exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"BeforeTool hook",status:"fail",message:"No BeforeTool hooks found",fix:"context-mode upgrade"});let i=o?.[Se.SESSION_START];if(i&&i.length>0){let a=i.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"SessionStart exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"SessionStart hook",status:"fail",message:"No SessionStart hooks found",fix:"context-mode upgrade"});return r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read ~/.gemini/settings.json"};let r=e.extensions;return r&&(Array.isArray(r)?r.some(o=>typeof o=="string"&&o.includes("context-mode")):Object.keys(r).some(o=>o.includes("context-mode")))?{check:"Plugin registration",status:"pass",message:"context-mode found in extensions"}:{check:"Plugin registration",status:"warn",message:"context-mode not found in extensions (might be using standalone MCP mode)"}}getInstalledVersion(){try{let e=_s(ys(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(bp(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[{name:Se.BEFORE_TOOL},{name:Se.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Qn(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(m=>m.command?.includes("context-mode")));l>=0?(u[l]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{Lx(e,Zx.R_OK);let r=e+".bak";return IC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=ga(e,"hooks","gemini-cli");for(let o of Object.values(kp)){let s=_s(n,o);try{Lx(s,Zx.R_OK),zC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=_s(ys(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(bp(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),Mx(n,JSON.stringify(o,null,2)+`
13
+ `,"utf-8")}catch{}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var sn,RL,OL,qx=be(()=>{"use strict";sn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},RL=[sn.BEFORE,sn.AFTER],OL=[sn.COMPACTING]});var Vx={};Ke(Vx,{OpenCodeAdapter:()=>Ep});import{createHash as Fx}from"node:crypto";import{readFileSync as Bx,writeFileSync as AC,mkdirSync as jC,copyFileSync as MC,accessSync as DC,constants as LC}from"node:fs";import{resolve as Lt,join as Qt}from"node:path";import{homedir as vr}from"node:os";function NC(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var Ep,Kx=be(()=>{"use strict";qx();Ep=class{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};platform;constructor(e="opencode"){this.platform=e}parsePreToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},toolOutput:r.output,isError:void 0,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return this.settingsPath??Lt(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[Lt("kilo.json"),Lt("kilo.jsonc"),Lt(".kilo","kilo.json"),Lt(".kilo","kilo.jsonc"),Qt(vr(),".config","kilo","kilo.json"),Qt(vr(),".config","kilo","kilo.jsonc")]:[Lt("opencode.json"),Lt("opencode.jsonc"),Lt(".opencode","opencode.json"),Lt(".opencode","opencode.jsonc"),Qt(vr(),".config","opencode","opencode.json"),Qt(vr(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e;process.platform==="win32"?e=process.env.APPDATA||Qt(vr(),"AppData","Roaming"):e=process.env.XDG_CONFIG_HOME||Qt(vr(),".config");let r=Qt(e,this.platform,"context-mode","sessions");return jC(r,{recursive:!0}),r}getSessionDBPath(e){let r=Fx("sha256").update(e).digest("hex").slice(0,16);return Qt(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Fx("sha256").update(e).digest("hex").slice(0,16);return Qt(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[sn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;let e=this.paths(),r=new Set(e.filter(s=>s.includes(vr()))),n=null,o;for(let s of e)try{let i=Bx(s,"utf-8"),a=s.endsWith(".jsonc")?NC(i):i,c=JSON.parse(a);n||(n=c,o=s);let u=r.has(s);if(this.hasContextModePlugin(c)||u)return this.settingsPath=s,c}catch{continue}return n?(this.settingsPath=o,n):null}writeSettings(e){AC(this.getSettingsPath(),JSON.stringify(e,null,2)+`
14
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r;let o=this.hasContextModePlugin(n);return Array.isArray(n.plugin)?r.push({check:"Plugin registration",status:o?"pass":"fail",message:o?"context-mode found in plugin array":"context-mode not found in plugin array",fix:o?void 0:"context-mode upgrade"}):r.push({check:"Plugin registration",status:"fail",message:`No plugin array found in ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r.push({check:"SessionStart hook",status:"warn",message:`SessionStart not supported in ${this.name} (see issues #14808, #5409)`}),r}checkPluginRegistration(){let e=this.readSettings();return e?this.hasContextModePlugin(e)?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:`context-mode not found in ${this.platform}.json plugin array`,fix:"context-mode upgrade"}:{check:"Plugin registration",status:"warn",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`}}getInstalledVersion(){try{let e=Lt(vr(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(Bx(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){let e=this.checkPluginRegistration();if(!this.settingsPath)return null;if(e.status==="pass")return this.settingsPath;try{DC(this.settingsPath,LC.R_OK);let r=this.settingsPath+".bak";return MC(this.settingsPath,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}hasContextModePlugin(e){let r=e.plugin;return Array.isArray(r)&&r.some(n=>typeof n=="string"&&n.includes("context-mode"))}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var an,ML,DL,Jx=be(()=>{"use strict";an={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},ML=[an.TOOL_CALL_BEFORE,an.TOOL_CALL_AFTER],DL=[an.COMMAND_NEW]});var Gx={};Ke(Gx,{OpenClawAdapter:()=>$p});import{createHash as Wx}from"node:crypto";import{readFileSync as Tp,writeFileSync as ZC,mkdirSync as UC,copyFileSync as HC,accessSync as qC,constants as FC}from"node:fs";import{resolve as Sr,join as xs}from"node:path";import{homedir as _a}from"node:os";var $p,Yx=be(()=>{"use strict";Jx();$p=class{name="OpenClaw";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.toolName??r.tool_name??"",toolInput:r.params??r.tool_input??{},toolOutput:r.output??r.tool_output,isError:r.isError??r.is_error,sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{block:!0,blockReason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{params:e.updatedInput};if(e.decision==="ask")return{block:!0,blockReason:e.reason??"Action requires user confirmation (security policy)"};e.decision==="context"&&e.additionalContext}formatPostToolUseResponse(e){let r={};return e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Sr("openclaw.json")}getSessionDir(){let e=xs(_a(),".openclaw","context-mode","sessions");return UC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Wx("sha256").update(e).digest("hex").slice(0,16);return xs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Wx("sha256").update(e).digest("hex").slice(0,16);return xs(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[an.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[an.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[an.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Sr("openclaw.json"),Sr(".openclaw","openclaw.json"),xs(_a(),".openclaw","openclaw.json")];for(let r of e)try{let n=Tp(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Sr("openclaw.json");ZC(r,JSON.stringify(e,null,2)+`
15
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read openclaw.json",fix:"context-mode upgrade"}),r;let o=n.plugins,s=o?.entries;if(s){let a=Object.keys(s).some(c=>c.includes("context-mode"));if(r.push({check:"Plugin registration",status:a?"pass":"fail",message:a?"context-mode found in plugins.entries":"context-mode not found in plugins.entries",fix:a?void 0:"context-mode upgrade"}),a){let u=s["context-mode"]?.enabled!==!1;r.push({check:"Plugin enabled",status:u?"pass":"warn",message:u?"context-mode plugin is enabled":"context-mode plugin is disabled"})}}else r.push({check:"Plugin registration",status:"fail",message:"No plugins.entries found in openclaw.json",fix:"context-mode upgrade"});return o?.slots?.contextEngine==="context-mode"?r.push({check:"Context engine",status:"pass",message:"context-mode registered as context engine (owns compaction)"}):r.push({check:"Context engine",status:"warn",message:"context-mode not set as context engine \u2014 compaction will use default engine"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read openclaw.json"};let n=e.plugins?.entries;return n&&Object.keys(n).some(s=>s.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugins.entries"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in openclaw.json plugins.entries",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=Sr(_a(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Tp(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=Sr("node_modules","context-mode","package.json"),r=JSON.parse(Tp(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[];r.plugins||(r.plugins={});let o=r.plugins;o.entries||(o.entries={});let s=o.entries;if(!s["context-mode"])s["context-mode"]={enabled:!0},n.push("Added context-mode to plugins.entries");else{let a=s["context-mode"];a.enabled===!1?(a.enabled=!0,n.push("Enabled context-mode plugin")):n.push("context-mode already configured in plugins.entries")}o.slots||(o.slots={});let i=o.slots;return i.contextEngine?i.contextEngine!=="context-mode"&&n.push(`Context engine already set to "${i.contextEngine}" \u2014 not overwriting`):(i.contextEngine="context-mode",n.push("Set context-mode as context engine (owns compaction)")),this.writeSettings(r),n}backupSettings(){let e=[Sr("openclaw.json"),Sr(".openclaw","openclaw.json"),xs(_a(),".openclaw","openclaw.json")];for(let r of e)try{qC(r,FC.R_OK);let n=r+".bak";return HC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var tv={};Ke(tv,{CodexAdapter:()=>Op});import{createHash as Xx}from"node:crypto";import{readFileSync as Pp,mkdirSync as BC,copyFileSync as VC,accessSync as KC,constants as JC}from"node:fs";import{resolve as Qx,join as Rp,dirname as WC}from"node:path";import{fileURLToPath as GC}from"node:url";import{homedir as ev}from"node:os";var Op,rv=be(()=>{"use strict";Op=class{name="Codex CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_response,sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:r.cwd,raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{hookSpecificOutput:{permissionDecision:"deny",permissionDecisionReason:e.reason??"Blocked by context-mode hook"}}:e.decision==="context"&&e.additionalContext?{hookSpecificOutput:{additionalContext:e.additionalContext}}:{}}formatPostToolUseResponse(e){return e.additionalContext?{hookSpecificOutput:{additionalContext:e.additionalContext}}:{}}formatPreCompactResponse(e){return e.context?{hookSpecificOutput:{additionalContext:e.context}}:{}}formatSessionStartResponse(e){return e.context?{hookSpecificOutput:{additionalContext:e.context}}:{}}getSettingsPath(){return Qx(ev(),".codex","config.toml")}getSessionDir(){let e=Rp(ev(),".codex","context-mode","sessions");return BC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Xx("sha256").update(e).digest("hex").slice(0,16);return Rp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Xx("sha256").update(e).digest("hex").slice(0,16);return Rp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{PreToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/pretooluse.mjs`}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{return{_raw_toml:Pp(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"pass",message:"Codex CLI supports hooks (PreToolUse, PostToolUse, SessionStart) via JSON stdin/stdout."}]}checkPluginRegistration(){try{let e=Pp(this.getSettingsPath(),"utf-8"),r=e.includes("context-mode"),n=e.includes("[mcp_servers]")||e.includes("[mcp_servers.");return r&&n?{check:"MCP registration",status:"pass",message:"context-mode found in [mcp_servers] config"}:n?{check:"MCP registration",status:"fail",message:"[mcp_servers] section exists but context-mode not found",fix:"Add context-mode to [mcp_servers] in ~/.codex/config.toml"}:{check:"MCP registration",status:"fail",message:"No [mcp_servers] section in config.toml",fix:"Add [mcp_servers.context-mode] to ~/.codex/config.toml"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.codex/config.toml"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{KC(e,JC.R_OK);let r=e+".bak";return VC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Qx(WC(GC(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Pp(e,"utf-8")}catch{return`# context-mode
16
16
 
17
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});function Qn(t,e){let r=_a[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var ie,_a,KL,JL,ev=Se(()=>{"use strict";ie={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},_a={[ie.PRE_TOOL_USE]:"pretooluse.mjs",[ie.POST_TOOL_USE]:"posttooluse.mjs",[ie.PRE_COMPACT]:"precompact.mjs",[ie.SESSION_START]:"sessionstart.mjs"},KL=[ie.PRE_TOOL_USE,ie.SESSION_START],JL=[ie.POST_TOOL_USE,ie.PRE_COMPACT]});var nv={};Ke(nv,{VSCodeCopilotAdapter:()=>Ip});import{createHash as tv}from"node:crypto";import{readFileSync as ya,writeFileSync as rv,mkdirSync as Pp,copyFileSync as WC,accessSync as Rp,existsSync as GC,chmodSync as YC,constants as Op}from"node:fs";import{resolve as Tt,join as sn}from"node:path";import{homedir as Cp}from"node:os";var Ip,ov=Se(()=>{"use strict";ev();Ip=class{name="VS Code Copilot";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:ie.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:ie.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:ie.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:ie.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Tt(".github","hooks","context-mode.json")}getSessionDir(){let e=Tt(".github","context-mode","sessions"),r=sn(Cp(),".vscode","context-mode","sessions"),n=GC(Tt(".github"))?e:r;return Pp(n,{recursive:!0}),n}getSessionDBPath(e){let r=tv("sha256").update(e).digest("hex").slice(0,16);return sn(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=tv("sha256").update(e).digest("hex").slice(0,16);return sn(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ie.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Qn(ie.PRE_TOOL_USE,e)}]}],[ie.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Qn(ie.POST_TOOL_USE,e)}]}],[ie.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:Qn(ie.PRE_COMPACT,e)}]}],[ie.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Qn(ie.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),Tt(".claude","settings.json")];for(let r of e)try{let n=ya(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=Tt(".github","hooks");Pp(n,{recursive:!0}),rv(r,JSON.stringify(e,null,2)+`
18
- `,"utf-8")}validateHooks(e){let r=[],n=Tt(".github","hooks");try{Rp(n,Op.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=Tt(n,"context-mode.json");try{let s=ya(o,"utf-8"),a=JSON.parse(s).hooks;a?.[ie.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in context-mode.json",fix:"context-mode upgrade"}),a?.[ie.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"API stability",status:"warn",message:"VS Code Copilot hooks are in preview \u2014 API may change without notice"}),r.push({check:"Matcher support",status:"warn",message:"Matchers are parsed but IGNORED \u2014 all hooks fire on all tools"}),r}checkPluginRegistration(){try{let e=Tt(".vscode","mcp.json"),r=ya(e,"utf-8"),o=JSON.parse(r).servers;return o&&Object.keys(o).some(i=>i.includes("context-mode"))?{check:"MCP registration",status:"pass",message:"context-mode found in .vscode/mcp.json"}:{check:"MCP registration",status:"fail",message:"context-mode not found in .vscode/mcp.json",fix:"Add context-mode server to .vscode/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read .vscode/mcp.json"}}}getInstalledVersion(){let e=[sn(Cp(),".vscode","extensions"),sn(Cp(),".vscode-insiders","extensions")];for(let r of e)try{let n=ya(sn(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}configureAllHooks(e){let r=[],n={hooks:{}},o=n.hooks,s=[ie.PRE_TOOL_USE,ie.POST_TOOL_USE,ie.PRE_COMPACT,ie.SESSION_START];for(let c of s)_a[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:Qn(c,e)}]}],r.push(`Configured ${c} hook`));let i=Tt(".github","hooks");Pp(i,{recursive:!0});let a=Tt(i,"context-mode.json");return rv(a,JSON.stringify(n,null,2)+`
19
- `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Rp(e,Op.R_OK);let r=e+".bak";return WC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=sn(e,"hooks","vscode-copilot");for(let o of Object.values(_a)){let s=Tt(n,o);try{Rp(s,Op.R_OK),YC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}}});function xa(t,e){let r=zp[e],n=xr(e);return"command"in t?t.command?.includes(r)||t.command?.includes(n)||!1:t.hooks?.some(s=>s.command?.includes(r)||s.command?.includes(n))??!1}function xr(t){return`context-mode hook cursor ${t.toLowerCase()}`}var $e,zp,XC,Np,sv,iv,av=Se(()=>{"use strict";$e={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart"},zp={[$e.PRE_TOOL_USE]:"pretooluse.mjs",[$e.POST_TOOL_USE]:"posttooluse.mjs",[$e.SESSION_START]:"sessionstart.mjs"},XC=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Np=XC.join("|"),sv=[$e.PRE_TOOL_USE],iv=[$e.POST_TOOL_USE]});var mv={};Ke(mv,{CursorAdapter:()=>jp});import{createHash as cv}from"node:crypto";import{readFileSync as Ap,writeFileSync as QC,mkdirSync as uv,copyFileSync as eI,accessSync as lv,chmodSync as tI,constants as dv,existsSync as pv}from"node:fs";import{execSync as rI}from"node:child_process";import{resolve as eo,join as an}from"node:path";import{homedir as va}from"node:os";var fv,jp,hv=Se(()=>{"use strict";av();fv="/Library/Application Support/Cursor/hooks.json",jp=class{name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}getSettingsPath(){return eo(".cursor","hooks.json")}getSessionDir(){let e=an(va(),".cursor","context-mode","sessions");return uv(e,{recursive:!0}),e}getSessionDBPath(e){let r=cv("sha256").update(e).digest("hex").slice(0,16);return an(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=cv("sha256").update(e).digest("hex").slice(0,16);return an(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[$e.PRE_TOOL_USE]:[{type:"command",command:xr($e.PRE_TOOL_USE),matcher:Np,loop_limit:null,failClosed:!1}],[$e.POST_TOOL_USE]:[{type:"command",command:xr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[$e.SESSION_START]:[{type:"command",command:xr($e.SESSION_START),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Ap(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();uv(eo(".cursor"),{recursive:!0}),QC(r,JSON.stringify(e,null,2)+`
20
- `,"utf-8")}validateHooks(e){let r=[],n=this.loadNativeHookConfig();if(!n)r.push({check:"Native hook config",status:"fail",message:"No readable native Cursor hook config found in .cursor/hooks.json or ~/.cursor/hooks.json",fix:"context-mode upgrade"});else{let o=n.config.hooks??{};r.push({check:"Native hook config",status:"pass",message:`Loaded ${n.path}`});for(let s of sv){let i=o[s],a=Array.isArray(i)&&i.some(c=>xa(c,s));r.push({check:s,status:a?"pass":"fail",message:a?`${s} hook configured`:`${s} hook not configured in ${n.path}`,fix:a?void 0:"context-mode upgrade"})}for(let s of iv){let i=o[s],a=Array.isArray(i)&&i.some(c=>xa(c,s));r.push({check:s,status:a?"pass":"warn",message:a?`${s} hook configured`:`${s} hook missing \u2014 session event capture will be reduced`})}}return pv(fv)&&r.push({check:"Enterprise hook config",status:"warn",message:"Enterprise Cursor hook config detected at /Library/Application Support/Cursor/hooks.json (read-only informational layer)"}),this.hasClaudeCompatibilityHooks()&&r.push({check:"Claude compatibility",status:"warn",message:"Claude-compatible hooks detected; native Cursor hooks are the supported configuration"}),r}checkPluginRegistration(){let e=[eo(".cursor","mcp.json"),an(va(),".cursor","mcp.json")];for(let r of e)try{let n=Ap(r,"utf-8"),o=JSON.parse(n),s=o.mcpServers??o.servers;if(!s)continue;if(Object.entries(s).some(([a,c])=>a.includes("context-mode")?!0:!c||typeof c!="object"?!1:c.command==="context-mode"))return{check:"MCP registration",status:"pass",message:`context-mode found in ${r}`}}catch{continue}return{check:"MCP registration",status:"warn",message:"Could not find context-mode in .cursor/mcp.json or ~/.cursor/mcp.json"}}getInstalledVersion(){try{return rI("cursor --version",{encoding:"utf-8",stdio:["ignore","pipe","ignore"]}).trim().split(/\r?\n/)[0]||"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=this.readSettings()??{version:1,hooks:{}},n=r.hooks??{},o=[];return this.upsertHookEntry(n,$e.PRE_TOOL_USE,{type:"command",command:xr($e.PRE_TOOL_USE),matcher:Np,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.POST_TOOL_USE,{type:"command",command:xr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.SESSION_START,{type:"command",command:xr($e.SESSION_START),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}backupSettings(){let e=this.getSettingsPath();try{lv(e,dv.R_OK);let r=e+".bak";return eI(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=an(e,"hooks","cursor");for(let o of Object.values(zp)){let s=eo(n,o);try{lv(s,dv.R_OK),tI(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),an(va(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(fv),e}getProjectDir(e){return e.cwd||e.workspace_roots?.[0]||process.env.CURSOR_CWD||process.cwd()}extractSessionId(e){return e.conversation_id?e.conversation_id:e.session_id?e.session_id:process.env.CURSOR_SESSION_ID?process.env.CURSOR_SESSION_ID:process.env.CURSOR_TRACE_ID?process.env.CURSOR_TRACE_ID:`pid-${process.ppid}`}loadNativeHookConfig(){for(let e of this.getCandidateHookConfigPaths())try{let r=Ap(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[eo(".claude","settings.json"),eo(".claude","settings.local.json"),an(va(),".claude","settings.json")].some(r=>pv(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>xa(c,r));a>=0?(i[a]=n,o.push(`Updated existing ${r} hook entry`)):(i.push(n),o.push(`Added ${r} hook entry`)),e[r]=i}}});var xv={};Ke(xv,{AntigravityAdapter:()=>Zp});import{createHash as gv}from"node:crypto";import{readFileSync as ka,writeFileSync as nI,mkdirSync as _v,copyFileSync as oI,accessSync as sI,constants as iI}from"node:fs";import{resolve as Mp,join as Dp,dirname as yv}from"node:path";import{fileURLToPath as aI}from"node:url";import{homedir as Lp}from"node:os";var Zp,vv=Se(()=>{"use strict";Zp=class{name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Mp(Lp(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Dp(Lp(),".gemini","context-mode","sessions");return _v(e,{recursive:!0}),e}getSessionDBPath(e){let r=gv("sha256").update(e).digest("hex").slice(0,16);return Dp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=gv("sha256").update(e).digest("hex").slice(0,16);return Dp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=ka(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();_v(yv(r),{recursive:!0}),nI(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Antigravity does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=ka(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.gemini/antigravity/mcp_config.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.gemini/antigravity/mcp_config.json"}}}getInstalledVersion(){try{let e=Mp(Lp(),".gemini","extensions","context-mode","package.json");return JSON.parse(ka(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{sI(e,iI.R_OK);let r=e+".bak";return oI(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Mp(yv(aI(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return ka(e,"utf-8")}catch{return`# context-mode
17
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});function eo(t,e){let r=ya[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var ae,ya,GL,YL,nv=be(()=>{"use strict";ae={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},ya={[ae.PRE_TOOL_USE]:"pretooluse.mjs",[ae.POST_TOOL_USE]:"posttooluse.mjs",[ae.PRE_COMPACT]:"precompact.mjs",[ae.SESSION_START]:"sessionstart.mjs"},GL=[ae.PRE_TOOL_USE,ae.SESSION_START],YL=[ae.POST_TOOL_USE,ae.PRE_COMPACT]});var iv={};Ke(iv,{VSCodeCopilotAdapter:()=>Ap});import{createHash as ov}from"node:crypto";import{readFileSync as xa,writeFileSync as sv,mkdirSync as Cp,copyFileSync as YC,accessSync as Ip,existsSync as XC,chmodSync as QC,constants as zp}from"node:fs";import{resolve as $t,join as cn}from"node:path";import{homedir as Np}from"node:os";var Ap,av=be(()=>{"use strict";nv();Ap=class{name="VS Code Copilot";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output,isError:r.is_error,sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.CLAUDE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")return{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:ae.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:ae.PRE_TOOL_USE,additionalContext:e.additionalContext}};if(e.decision==="ask")return{permissionDecision:"deny",reason:e.reason??"Action requires user confirmation (security policy)"}}formatPostToolUseResponse(e){if(e.updatedOutput)return{hookSpecificOutput:{hookEventName:ae.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:ae.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return $t(".github","hooks","context-mode.json")}getSessionDir(){let e=$t(".github","context-mode","sessions"),r=cn(Np(),".vscode","context-mode","sessions"),n=XC($t(".github"))?e:r;return Cp(n,{recursive:!0}),n}getSessionDBPath(e){let r=ov("sha256").update(e).digest("hex").slice(0,16);return cn(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=ov("sha256").update(e).digest("hex").slice(0,16);return cn(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ae.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:eo(ae.PRE_TOOL_USE,e)}]}],[ae.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:eo(ae.POST_TOOL_USE,e)}]}],[ae.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:eo(ae.PRE_COMPACT,e)}]}],[ae.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:eo(ae.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),$t(".claude","settings.json")];for(let r of e)try{let n=xa(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=$t(".github","hooks");Cp(n,{recursive:!0}),sv(r,JSON.stringify(e,null,2)+`
18
+ `,"utf-8")}validateHooks(e){let r=[],n=$t(".github","hooks");try{Ip(n,zp.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=$t(n,"context-mode.json");try{let s=xa(o,"utf-8"),a=JSON.parse(s).hooks;a?.[ae.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in context-mode.json",fix:"context-mode upgrade"}),a?.[ae.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in context-mode.json",fix:"context-mode upgrade"})}catch{r.push({check:"Hook configuration",status:"fail",message:"Could not read .github/hooks/context-mode.json",fix:"context-mode upgrade"})}return r.push({check:"API stability",status:"warn",message:"VS Code Copilot hooks are in preview \u2014 API may change without notice"}),r.push({check:"Matcher support",status:"warn",message:"Matchers are parsed but IGNORED \u2014 all hooks fire on all tools"}),r}checkPluginRegistration(){try{let e=$t(".vscode","mcp.json"),r=xa(e,"utf-8"),o=JSON.parse(r).servers;return o&&Object.keys(o).some(i=>i.includes("context-mode"))?{check:"MCP registration",status:"pass",message:"context-mode found in .vscode/mcp.json"}:{check:"MCP registration",status:"fail",message:"context-mode not found in .vscode/mcp.json",fix:"Add context-mode server to .vscode/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read .vscode/mcp.json"}}}getInstalledVersion(){let e=[cn(Np(),".vscode","extensions"),cn(Np(),".vscode-insiders","extensions")];for(let r of e)try{let n=xa(cn(r,"extensions.json"),"utf-8"),s=JSON.parse(n).find(i=>typeof i.identifier=="object"&&i.identifier!==null&&i.identifier.id?.toString().includes("context-mode"));if(s&&typeof s.version=="string")return s.version}catch{continue}return"not installed"}configureAllHooks(e){let r=[],n={hooks:{}},o=n.hooks,s=[ae.PRE_TOOL_USE,ae.POST_TOOL_USE,ae.PRE_COMPACT,ae.SESSION_START];for(let c of s)ya[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:eo(c,e)}]}],r.push(`Configured ${c} hook`));let i=$t(".github","hooks");Cp(i,{recursive:!0});let a=$t(i,"context-mode.json");return sv(a,JSON.stringify(n,null,2)+`
19
+ `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Ip(e,zp.R_OK);let r=e+".bak";return YC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=cn(e,"hooks","vscode-copilot");for(let o of Object.values(ya)){let s=$t(n,o);try{Ip(s,zp.R_OK),QC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}}});function va(t,e){let r=jp[e],n=ht(e);return"command"in t?t.command?.includes(r)||t.command?.includes(n)||!1:t.hooks?.some(s=>s.command?.includes(r)||s.command?.includes(n))??!1}function ht(t){return`context-mode hook cursor ${t.toLowerCase()}`}var se,jp,eI,Mp,cv,uv,lv=be(()=>{"use strict";se={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},jp={[se.PRE_TOOL_USE]:"pretooluse.mjs",[se.POST_TOOL_USE]:"posttooluse.mjs",[se.SESSION_START]:"sessionstart.mjs",[se.STOP]:"stop.mjs",[se.AFTER_AGENT_RESPONSE]:"afteragentresponse.mjs"},eI=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Mp=eI.join("|"),cv=[se.PRE_TOOL_USE],uv=[se.POST_TOOL_USE]});var _v={};Ke(_v,{CursorAdapter:()=>Lp});import{createHash as dv}from"node:crypto";import{readFileSync as Dp,writeFileSync as tI,mkdirSync as pv,copyFileSync as rI,accessSync as fv,chmodSync as nI,constants as mv,existsSync as hv}from"node:fs";import{execSync as oI}from"node:child_process";import{resolve as to,join as un}from"node:path";import{homedir as Sa}from"node:os";var gv,Lp,yv=be(()=>{"use strict";lv();gv="/Library/Application Support/Cursor/hooks.json",Lp=class{name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}parseStopInput(e){let r=e;return{sessionId:r.conversation_id??`pid-${process.ppid}`,status:r.status??"completed",loopCount:r.loop_count??0,generationId:r.generation_id,transcriptPath:r.transcript_path??void 0}}formatStopResponse(e){return e.followupMessage?{followup_message:e.followupMessage}:{}}parseAfterAgentResponseInput(e){return{text:e.text??""}}getSettingsPath(){return to(".cursor","hooks.json")}getSessionDir(){let e=un(Sa(),".cursor","context-mode","sessions");return pv(e,{recursive:!0}),e}getSessionDBPath(e){let r=dv("sha256").update(e).digest("hex").slice(0,16);return un(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=dv("sha256").update(e).digest("hex").slice(0,16);return un(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[se.PRE_TOOL_USE]:[{type:"command",command:ht(se.PRE_TOOL_USE),matcher:Mp,loop_limit:null,failClosed:!1}],[se.POST_TOOL_USE]:[{type:"command",command:ht(se.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[se.SESSION_START]:[{type:"command",command:ht(se.SESSION_START),loop_limit:null,failClosed:!1}],[se.STOP]:[{type:"command",command:ht(se.STOP),loop_limit:null,failClosed:!1}],[se.AFTER_AGENT_RESPONSE]:[{type:"command",command:ht(se.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Dp(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();pv(to(".cursor"),{recursive:!0}),tI(r,JSON.stringify(e,null,2)+`
20
+ `,"utf-8")}validateHooks(e){let r=[],n=this.loadNativeHookConfig();if(!n)r.push({check:"Native hook config",status:"fail",message:"No readable native Cursor hook config found in .cursor/hooks.json or ~/.cursor/hooks.json",fix:"context-mode upgrade"});else{let o=n.config.hooks??{};r.push({check:"Native hook config",status:"pass",message:`Loaded ${n.path}`});for(let s of cv){let i=o[s],a=Array.isArray(i)&&i.some(c=>va(c,s));r.push({check:s,status:a?"pass":"fail",message:a?`${s} hook configured`:`${s} hook not configured in ${n.path}`,fix:a?void 0:"context-mode upgrade"})}for(let s of uv){let i=o[s],a=Array.isArray(i)&&i.some(c=>va(c,s));r.push({check:s,status:a?"pass":"warn",message:a?`${s} hook configured`:`${s} hook missing \u2014 session event capture will be reduced`})}}return hv(gv)&&r.push({check:"Enterprise hook config",status:"warn",message:"Enterprise Cursor hook config detected at /Library/Application Support/Cursor/hooks.json (read-only informational layer)"}),this.hasClaudeCompatibilityHooks()&&r.push({check:"Claude compatibility",status:"warn",message:"Claude-compatible hooks detected; native Cursor hooks are the supported configuration"}),r}checkPluginRegistration(){let e=[to(".cursor","mcp.json"),un(Sa(),".cursor","mcp.json")];for(let r of e)try{let n=Dp(r,"utf-8"),o=JSON.parse(n),s=o.mcpServers??o.servers;if(!s)continue;if(Object.entries(s).some(([a,c])=>a.includes("context-mode")?!0:!c||typeof c!="object"?!1:c.command==="context-mode"))return{check:"MCP registration",status:"pass",message:`context-mode found in ${r}`}}catch{continue}return{check:"MCP registration",status:"warn",message:"Could not find context-mode in .cursor/mcp.json or ~/.cursor/mcp.json"}}getInstalledVersion(){try{return oI("cursor --version",{encoding:"utf-8",stdio:["ignore","pipe","ignore"]}).trim().split(/\r?\n/)[0]||"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=this.readSettings()??{version:1,hooks:{}},n=r.hooks??{},o=[];return this.upsertHookEntry(n,se.PRE_TOOL_USE,{type:"command",command:ht(se.PRE_TOOL_USE),matcher:Mp,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,se.POST_TOOL_USE,{type:"command",command:ht(se.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,se.SESSION_START,{type:"command",command:ht(se.SESSION_START),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,se.STOP,{type:"command",command:ht(se.STOP),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,se.AFTER_AGENT_RESPONSE,{type:"command",command:ht(se.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}backupSettings(){let e=this.getSettingsPath();try{fv(e,mv.R_OK);let r=e+".bak";return rI(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=un(e,"hooks","cursor");for(let o of Object.values(jp)){let s=to(n,o);try{fv(s,mv.R_OK),nI(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),un(Sa(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(gv),e}getProjectDir(e){return e.cwd||e.workspace_roots?.[0]||process.env.CURSOR_CWD||process.cwd()}extractSessionId(e){return e.conversation_id?e.conversation_id:e.session_id?e.session_id:process.env.CURSOR_SESSION_ID?process.env.CURSOR_SESSION_ID:process.env.CURSOR_TRACE_ID?process.env.CURSOR_TRACE_ID:`pid-${process.ppid}`}loadNativeHookConfig(){for(let e of this.getCandidateHookConfigPaths())try{let r=Dp(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[to(".claude","settings.json"),to(".claude","settings.local.json"),un(Sa(),".claude","settings.json")].some(r=>hv(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>va(c,r));a>=0?(i[a]=n,o.push(`Updated existing ${r} hook entry`)):(i.push(n),o.push(`Added ${r} hook entry`)),e[r]=i}}});var kv={};Ke(kv,{AntigravityAdapter:()=>qp});import{createHash as xv}from"node:crypto";import{readFileSync as ka,writeFileSync as sI,mkdirSync as vv,copyFileSync as iI,accessSync as aI,constants as cI}from"node:fs";import{resolve as Zp,join as Up,dirname as Sv}from"node:path";import{fileURLToPath as uI}from"node:url";import{homedir as Hp}from"node:os";var qp,bv=be(()=>{"use strict";qp=class{name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Zp(Hp(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Up(Hp(),".gemini","context-mode","sessions");return vv(e,{recursive:!0}),e}getSessionDBPath(e){let r=xv("sha256").update(e).digest("hex").slice(0,16);return Up(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=xv("sha256").update(e).digest("hex").slice(0,16);return Up(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=ka(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();vv(Sv(r),{recursive:!0}),sI(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Antigravity does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=ka(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.gemini/antigravity/mcp_config.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.gemini/antigravity/mcp_config.json"}}}getInstalledVersion(){try{let e=Zp(Hp(),".gemini","extensions","context-mode","package.json");return JSON.parse(ka(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{aI(e,cI.R_OK);let r=e+".bak";return iI(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Zp(Sv(uI(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return ka(e,"utf-8")}catch{return`# context-mode
21
21
 
22
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});function xs(t,e){let r=kv[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function vs(t,e){let r=kv[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var ke,kv,fZ,mZ,Sv=Se(()=>{"use strict";ke={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},kv={[ke.PRE_TOOL_USE]:"pretooluse.mjs",[ke.POST_TOOL_USE]:"posttooluse.mjs"},fZ=[ke.PRE_TOOL_USE],mZ=[ke.POST_TOOL_USE]});var Tv={};Ke(Tv,{KiroAdapter:()=>qp});import{createHash as bv}from"node:crypto";import{readFileSync as to,writeFileSync as wv,mkdirSync as Up,copyFileSync as cI,accessSync as uI,constants as lI}from"node:fs";import{resolve as ro,join as Hp,dirname as Ev}from"node:path";import{fileURLToPath as dI}from"node:url";import{homedir as ks}from"node:os";var qp,$v=Se(()=>{"use strict";Sv();qp=class{name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return ro(ks(),".kiro","settings","mcp.json")}getSessionDir(){let e=Hp(ks(),".kiro","context-mode","sessions");return Up(e,{recursive:!0}),e}getSessionDBPath(e){let r=bv("sha256").update(e).digest("hex").slice(0,16);return Hp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=bv("sha256").update(e).digest("hex").slice(0,16);return Hp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ke.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:vs(ke.PRE_TOOL_USE,e)}]}],[ke.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:vs(ke.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=to(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Up(Ev(r),{recursive:!0}),wv(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=ro(ks(),".kiro","agents","default.json");try{let s=JSON.parse(to(n,"utf-8")).hooks??{};for(let i of[ke.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>xs(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"fail",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured`,...c?{}:{fix:"Run: context-mode upgrade"}})}for(let i of[ke.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>xs(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"warn",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured (optional)`})}}catch{r.push({check:"Hook configuration",status:"warn",message:"Could not read ~/.kiro/agents/default.json",fix:"Run: context-mode upgrade"})}return r}checkPluginRegistration(){try{let e=to(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.kiro/settings/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp.json"}}}getInstalledVersion(){try{let e=ro(ks(),".kiro","extensions","context-mode","package.json");return JSON.parse(to(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=ro(ks(),".kiro","agents"),o=ro(n,"default.json");try{Up(n,{recursive:!0});let s={};try{s=JSON.parse(to(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[ke.PRE_TOOL_USE]??[];a.some(u=>xs(u,ke.PRE_TOOL_USE))||(a.push({matcher:"*",command:vs(ke.PRE_TOOL_USE,e)}),i[ke.PRE_TOOL_USE]=a,r.push(`Added ${ke.PRE_TOOL_USE} hook to ${o}`));let c=i[ke.POST_TOOL_USE]??[];c.some(u=>xs(u,ke.POST_TOOL_USE))||(c.push({matcher:"*",command:vs(ke.POST_TOOL_USE,e)}),i[ke.POST_TOOL_USE]=c,r.push(`Added ${ke.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,wv(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}backupSettings(){let e=this.getSettingsPath();try{uI(e,lI.R_OK);let r=e+".bak";return cI(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=ro(Ev(dI(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return to(e,"utf-8")}catch{return`# context-mode
22
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});function vs(t,e){let r=wv[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function Ss(t,e){let r=wv[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var ke,wv,gZ,_Z,Ev=be(()=>{"use strict";ke={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},wv={[ke.PRE_TOOL_USE]:"pretooluse.mjs",[ke.POST_TOOL_USE]:"posttooluse.mjs"},gZ=[ke.PRE_TOOL_USE],_Z=[ke.POST_TOOL_USE]});var Rv={};Ke(Rv,{KiroAdapter:()=>Vp});import{createHash as Tv}from"node:crypto";import{readFileSync as ro,writeFileSync as $v,mkdirSync as Fp,copyFileSync as lI,accessSync as dI,constants as pI}from"node:fs";import{resolve as no,join as Bp,dirname as Pv}from"node:path";import{fileURLToPath as fI}from"node:url";import{homedir as ks}from"node:os";var Vp,Ov=be(()=>{"use strict";Ev();Vp=class{name="Kiro";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e,n=r.tool_response;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:typeof n=="string"?n:JSON.stringify(n??""),sessionId:`pid-${process.ppid}`,projectDir:r.cwd??process.cwd(),raw:e}}parsePreCompactInput(e){throw new Error("Kiro does not support PreCompact hooks")}parseSessionStartInput(e){throw new Error("Kiro does not support SessionStart hooks (yet)")}formatPreToolUseResponse(e){switch(e.decision){case"deny":return{exitCode:2,stderr:e.reason??"Blocked by context-mode"};case"context":return{exitCode:0,stdout:e.additionalContext??""};default:return}}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return no(ks(),".kiro","settings","mcp.json")}getSessionDir(){let e=Bp(ks(),".kiro","context-mode","sessions");return Fp(e,{recursive:!0}),e}getSessionDBPath(e){let r=Tv("sha256").update(e).digest("hex").slice(0,16);return Bp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Tv("sha256").update(e).digest("hex").slice(0,16);return Bp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ke.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:Ss(ke.PRE_TOOL_USE,e)}]}],[ke.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:Ss(ke.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=ro(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Fp(Pv(r),{recursive:!0}),$v(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=no(ks(),".kiro","agents","default.json");try{let s=JSON.parse(ro(n,"utf-8")).hooks??{};for(let i of[ke.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>vs(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"fail",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured`,...c?{}:{fix:"Run: context-mode upgrade"}})}for(let i of[ke.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>vs(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"warn",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured (optional)`})}}catch{r.push({check:"Hook configuration",status:"warn",message:"Could not read ~/.kiro/agents/default.json",fix:"Run: context-mode upgrade"})}return r}checkPluginRegistration(){try{let e=ro(this.getSettingsPath(),"utf-8");return"context-mode"in(JSON.parse(e)?.mcpServers??{})?{check:"MCP registration",status:"pass",message:"context-mode found in mcpServers config"}:{check:"MCP registration",status:"fail",message:"context-mode not found in mcpServers",fix:"Add context-mode to mcpServers in ~/.kiro/settings/mcp.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp.json"}}}getInstalledVersion(){try{let e=no(ks(),".kiro","extensions","context-mode","package.json");return JSON.parse(ro(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=no(ks(),".kiro","agents"),o=no(n,"default.json");try{Fp(n,{recursive:!0});let s={};try{s=JSON.parse(ro(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[ke.PRE_TOOL_USE]??[];a.some(u=>vs(u,ke.PRE_TOOL_USE))||(a.push({matcher:"*",command:Ss(ke.PRE_TOOL_USE,e)}),i[ke.PRE_TOOL_USE]=a,r.push(`Added ${ke.PRE_TOOL_USE} hook to ${o}`));let c=i[ke.POST_TOOL_USE]??[];c.some(u=>vs(u,ke.POST_TOOL_USE))||(c.push({matcher:"*",command:Ss(ke.POST_TOOL_USE,e)}),i[ke.POST_TOOL_USE]=c,r.push(`Added ${ke.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,$v(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}backupSettings(){let e=this.getSettingsPath();try{dI(e,pI.R_OK);let r=e+".bak";return lI(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=no(Pv(fI(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return ro(e,"utf-8")}catch{return`# context-mode
23
23
 
24
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});var zv={};Ke(zv,{ZedAdapter:()=>Vp});import{createHash as Pv}from"node:crypto";import{readFileSync as Fp,writeFileSync as pI,mkdirSync as Rv,copyFileSync as fI,accessSync as mI,constants as hI}from"node:fs";import{resolve as Ov,join as Bp,dirname as Cv}from"node:path";import{fileURLToPath as gI}from"node:url";import{homedir as Iv}from"node:os";var Vp,Nv=Se(()=>{"use strict";Vp=class{name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return Ov(Iv(),".config","zed","settings.json")}getSessionDir(){let e=Bp(Iv(),".config","zed","context-mode","sessions");return Rv(e,{recursive:!0}),e}getSessionDBPath(e){let r=Pv("sha256").update(e).digest("hex").slice(0,16);return Bp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Pv("sha256").update(e).digest("hex").slice(0,16);return Bp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Fp(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Rv(Cv(r),{recursive:!0}),pI(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Zed does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=Fp(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{mI(e,hI.R_OK);let r=e+".bak";return fI(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Ov(Cv(gI(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return Fp(e,"utf-8")}catch{return`# context-mode
24
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});var jv={};Ke(jv,{ZedAdapter:()=>Wp});import{createHash as Cv}from"node:crypto";import{readFileSync as Kp,writeFileSync as mI,mkdirSync as Iv,copyFileSync as hI,accessSync as gI,constants as _I}from"node:fs";import{resolve as zv,join as Jp,dirname as Nv}from"node:path";import{fileURLToPath as yI}from"node:url";import{homedir as Av}from"node:os";var Wp,Mv=be(()=>{"use strict";Wp=class{name="Zed";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Zed does not support hooks")}parsePostToolUseInput(e){throw new Error("Zed does not support hooks")}parsePreCompactInput(e){throw new Error("Zed does not support hooks")}parseSessionStartInput(e){throw new Error("Zed does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return zv(Av(),".config","zed","settings.json")}getSessionDir(){let e=Jp(Av(),".config","zed","context-mode","sessions");return Iv(e,{recursive:!0}),e}getSessionDBPath(e){let r=Cv("sha256").update(e).digest("hex").slice(0,16);return Jp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Cv("sha256").update(e).digest("hex").slice(0,16);return Jp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Kp(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Iv(Nv(r),{recursive:!0}),mI(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){return[{check:"Hook support",status:"warn",message:"Zed does not support hooks. Only MCP integration is available."}]}checkPluginRegistration(){try{let e=Kp(this.getSettingsPath(),"utf-8"),n=JSON.parse(e).context_servers!==void 0,o=e.includes("context-mode");return n&&o?{check:"MCP registration",status:"pass",message:"context-mode found in context_servers config"}:n?{check:"MCP registration",status:"fail",message:"context_servers section exists but context-mode not found",fix:"Add context-mode to context_servers in ~/.config/zed/settings.json"}:{check:"MCP registration",status:"fail",message:"No context_servers section in settings.json",fix:"Add context_servers.context-mode to ~/.config/zed/settings.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.config/zed/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{gI(e,_I.R_OK);let r=e+".bak";return hI(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=zv(Nv(yI(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return Kp(e,"utf-8")}catch{return`# context-mode
25
25
 
26
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var jv={};Ke(jv,{detectPlatform:()=>Av,getAdapter:()=>yI});import{existsSync as Dt}from"node:fs";import{resolve as Lt}from"node:path";import{homedir as _I}from"node:os";function Av(t){if(t?.name){let n=Sx[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","cursor","antigravity","kiro","pi","zed"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};if(process.env.CLAUDE_PROJECT_DIR||process.env.CLAUDE_SESSION_ID)return{platform:"claude-code",confidence:"high",reason:"CLAUDE_PROJECT_DIR or CLAUDE_SESSION_ID env var set"};if(process.env.GEMINI_PROJECT_DIR||process.env.GEMINI_CLI)return{platform:"gemini-cli",confidence:"high",reason:"GEMINI_PROJECT_DIR or GEMINI_CLI env var set"};if(process.env.OPENCLAW_HOME||process.env.OPENCLAW_CLI)return{platform:"openclaw",confidence:"high",reason:"OPENCLAW_HOME or OPENCLAW_CLI env var set"};if(process.env.KILO||process.env.KILO_PID)return{platform:"kilo",confidence:"high",reason:"KILO or KILO_PID env var set"};if(process.env.OPENCODE||process.env.OPENCODE_PID)return{platform:"opencode",confidence:"high",reason:"OPENCODE or OPENCODE_PID env var set"};if(process.env.CODEX_CI||process.env.CODEX_THREAD_ID)return{platform:"codex",confidence:"high",reason:"CODEX_CI or CODEX_THREAD_ID env var set"};if(process.env.CURSOR_TRACE_ID||process.env.CURSOR_CLI)return{platform:"cursor",confidence:"high",reason:"CURSOR_TRACE_ID or CURSOR_CLI env var set"};if(process.env.VSCODE_PID||process.env.VSCODE_CWD)return{platform:"vscode-copilot",confidence:"high",reason:"VSCODE_PID or VSCODE_CWD env var set"};let r=_I();return Dt(Lt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Dt(Lt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Dt(Lt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Dt(Lt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Dt(Lt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Dt(Lt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Dt(Lt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Dt(Lt(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:Dt(Lt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Dt(Lt(r,".config","zed"))?{platform:"zed",confidence:"medium",reason:"~/.config/zed/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function yI(t){let e=t??Av().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(yp(),_p));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Lx(),Dx));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Fx(),qx));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Jx(),Kx));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(Qx(),Xx));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(ov(),nv));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(hv(),mv));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(vv(),xv));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>($v(),Tv));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(Nv(),zv));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(yp(),_p));return new r}}}var Mv=Se(()=>{"use strict";bx()});var L={};Ke(L,{BRAND:()=>Pk,DIRTY:()=>br,EMPTY_PATH:()=>ik,INVALID:()=>A,NEVER:()=>dS,OK:()=>je,ParseStatus:()=>Pe,Schema:()=>q,ZodAny:()=>er,ZodArray:()=>Ft,ZodBigInt:()=>Er,ZodBoolean:()=>Tr,ZodBranded:()=>io,ZodCatch:()=>Mr,ZodDate:()=>$r,ZodDefault:()=>jr,ZodDiscriminatedUnion:()=>Ts,ZodEffects:()=>it,ZodEnum:()=>Nr,ZodError:()=>Je,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>Ps,ZodIntersection:()=>Cr,ZodIssueCode:()=>S,ZodLazy:()=>Ir,ZodLiteral:()=>zr,ZodMap:()=>_n,ZodNaN:()=>xn,ZodNativeEnum:()=>Ar,ZodNever:()=>ht,ZodNull:()=>Rr,ZodNullable:()=>Ot,ZodNumber:()=>wr,ZodObject:()=>Ge,ZodOptional:()=>We,ZodParsedType:()=>$,ZodPipeline:()=>ao,ZodPromise:()=>tr,ZodReadonly:()=>Dr,ZodRecord:()=>$s,ZodSchema:()=>q,ZodSet:()=>yn,ZodString:()=>Qt,ZodSymbol:()=>hn,ZodTransformer:()=>it,ZodTuple:()=>Rt,ZodType:()=>q,ZodUndefined:()=>Pr,ZodUnion:()=>Or,ZodUnknown:()=>qt,ZodVoid:()=>gn,addIssueToContext:()=>w,any:()=>Mk,array:()=>Uk,bigint:()=>Ik,boolean:()=>pf,coerce:()=>lS,custom:()=>uf,date:()=>zk,datetimeRegex:()=>af,defaultErrorMap:()=>Ut,discriminatedUnion:()=>Fk,effect:()=>rS,enum:()=>Qk,function:()=>Gk,getErrorMap:()=>pn,getParsedType:()=>Pt,instanceof:()=>Ok,intersection:()=>Bk,isAborted:()=>ws,isAsync:()=>fn,isDirty:()=>Es,isValid:()=>Xt,late:()=>Rk,lazy:()=>Yk,literal:()=>Xk,makeIssue:()=>so,map:()=>Jk,nan:()=>Ck,nativeEnum:()=>eS,never:()=>Lk,null:()=>jk,nullable:()=>oS,number:()=>df,object:()=>Ca,objectUtil:()=>Pa,oboolean:()=>uS,onumber:()=>cS,optional:()=>nS,ostring:()=>aS,pipeline:()=>iS,preprocess:()=>sS,promise:()=>tS,quotelessJson:()=>nk,record:()=>Kk,set:()=>Wk,setErrorMap:()=>sk,strictObject:()=>Hk,string:()=>lf,symbol:()=>Nk,transformer:()=>rS,tuple:()=>Vk,undefined:()=>Ak,union:()=>qk,unknown:()=>Dk,util:()=>K,void:()=>Zk});var K;(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})(K||(K={}));var Pa;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Pa||(Pa={}));var $=K.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Pt=t=>{switch(typeof t){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:$.object;default:return $.unknown}};var S=K.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"]),nk=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Je=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,K.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Je.create=t=>new Je(t);var ok=(t,e)=>{let r;switch(t.code){case S.invalid_type:t.received===$.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case S.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,K.jsonStringifyReplacer)}`;break;case S.unrecognized_keys:r=`Unrecognized key(s) in object: ${K.joinValues(t.keys,", ")}`;break;case S.invalid_union:r="Invalid input";break;case S.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${K.joinValues(t.options)}`;break;case S.invalid_enum_value:r=`Invalid enum value. Expected ${K.joinValues(t.options)}, received '${t.received}'`;break;case S.invalid_arguments:r="Invalid function arguments";break;case S.invalid_return_type:r="Invalid function return type";break;case S.invalid_date:r="Invalid date";break;case S.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}"`:K.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case S.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 S.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 S.custom:r="Invalid input";break;case S.invalid_intersection_types:r="Intersection results could not be merged";break;case S.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case S.not_finite:r="Number must be finite";break;default:r=e.defaultError,K.assertNever(t)}return{message:r}},Ut=ok;var tf=Ut;function sk(t){tf=t}function pn(){return tf}var so=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}},ik=[];function w(t,e){let r=pn(),n=so({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Ut?void 0:Ut].filter(o=>!!o)});t.common.issues.push(n)}var Pe=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return 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"}),br=t=>({status:"dirty",value:t}),je=t=>({status:"valid",value:t}),ws=t=>t.status==="aborted",Es=t=>t.status==="dirty",Xt=t=>t.status==="valid",fn=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 st=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}},rf=(t,e)=>{if(Xt(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Je(t.common.issues);return this._error=r,this._error}}};function U(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message: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 Pt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Pt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Pe,ctx:{common:e.parent.common,data:e.data,parsedType:Pt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(fn(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:Pt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return rf(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return Xt(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=>Xt(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:Pt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(fn(o)?o:Promise.resolve(o));return rf(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:S.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 it({schema:this,typeName:b.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 We.create(this,this._def)}nullable(){return Ot.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ft.create(this)}promise(){return tr.create(this,this._def)}or(e){return Or.create([this,e],this._def)}and(e){return Cr.create(this,e,this._def)}transform(e){return new it({...U(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new jr({...U(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new io({typeName:b.ZodBranded,type:this,...U(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Mr({...U(this._def),innerType:this,catchValue:r,typeName:b.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return ao.create(this,e)}readonly(){return Dr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},ak=/^c[^\s-]{8,}$/i,ck=/^[0-9a-z]+$/,uk=/^[0-9A-HJKMNP-TV-Z]{26}$/i,lk=/^[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,dk=/^[a-z0-9_-]{21}$/i,pk=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,fk=/^[-+]?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)?)??$/,mk=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,hk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Ra,gk=/^(?:(?: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])$/,_k=/^(?:(?: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])$/,yk=/^(([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]))$/,xk=/^(([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])$/,vk=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,kk=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,of="((\\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])))",Sk=new RegExp(`^${of}$`);function sf(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 bk(t){return new RegExp(`^${sf(t)}$`)}function af(t){let e=`${of}T${sf(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 wk(t,e){return!!((e==="v4"||!e)&&gk.test(t)||(e==="v6"||!e)&&yk.test(t))}function Ek(t,e){if(!pk.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 Tk(t,e){return!!((e==="v4"||!e)&&_k.test(t)||(e==="v6"||!e)&&xk.test(t))}var Qt=class t extends q{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==$.string){let s=this._getOrReturnCtx(e);return w(s,{code:S.invalid_type,expected:$.string,received:s.parsedType}),A}let n=new Pe,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:S.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),w(o,{code:S.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?w(o,{code:S.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&w(o,{code:S.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")mk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"email",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Ra||(Ra=new RegExp(hk,"u")),Ra.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"emoji",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")lk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"uuid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")dk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"nanoid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")ak.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cuid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")ck.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cuid2",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")uk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"ulid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),w(o,{validation:"url",code:S.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),w(o,{validation:"regex",code:S.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),w(o,{code:S.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),w(o,{code:S.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?af(s).test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?Sk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?bk(s).test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?fk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"duration",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?wk(e.data,s.version)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"ip",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?Ek(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"jwt",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?Tk(e.data,s.version)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cidr",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?vk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"base64",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?kk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"base64url",code:S.invalid_string,message:s.message}),n.dirty()):K.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:S.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:b.ZodString,coerce:t?.coerce??!1,...U(t)});function $k(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}var wr=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)!==$.number){let s=this._getOrReturnCtx(e);return w(s,{code:S.invalid_type,expected:$.number,received:s.parsedType}),A}let n,o=new Pe;for(let s of this._def.checks)s.kind==="int"?K.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),w(n,{code:S.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),w(n,{code:S.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),w(n,{code:S.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?$k(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),w(n,{code:S.not_finite,message:s.message}),o.dirty()):K.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"&&K.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)}};wr.create=t=>new wr({checks:[],typeName:b.ZodNumber,coerce:t?.coerce||!1,...U(t)});var Er=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)!==$.bigint)return this._getInvalidInput(e);let n,o=new Pe;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.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),w(n,{code:S.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),w(n,{code:S.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):K.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return w(r,{code:S.invalid_type,expected:$.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}};Er.create=t=>new Er({checks:[],typeName:b.ZodBigInt,coerce:t?.coerce??!1,...U(t)});var Tr=class extends q{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==$.boolean){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.boolean,received:n.parsedType}),A}return je(e.data)}};Tr.create=t=>new Tr({typeName:b.ZodBoolean,coerce:t?.coerce||!1,...U(t)});var $r=class t extends q{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==$.date){let s=this._getOrReturnCtx(e);return w(s,{code:S.invalid_type,expected:$.date,received:s.parsedType}),A}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return w(s,{code:S.invalid_date}),A}let n=new Pe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:S.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),w(o,{code:S.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):K.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}};$r.create=t=>new $r({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...U(t)});var hn=class extends q{_parse(e){if(this._getType(e)!==$.symbol){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.symbol,received:n.parsedType}),A}return je(e.data)}};hn.create=t=>new hn({typeName:b.ZodSymbol,...U(t)});var Pr=class extends q{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.undefined,received:n.parsedType}),A}return je(e.data)}};Pr.create=t=>new Pr({typeName:b.ZodUndefined,...U(t)});var Rr=class extends q{_parse(e){if(this._getType(e)!==$.null){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.null,received:n.parsedType}),A}return je(e.data)}};Rr.create=t=>new Rr({typeName:b.ZodNull,...U(t)});var er=class extends q{constructor(){super(...arguments),this._any=!0}_parse(e){return je(e.data)}};er.create=t=>new er({typeName:b.ZodAny,...U(t)});var qt=class extends q{constructor(){super(...arguments),this._unknown=!0}_parse(e){return je(e.data)}};qt.create=t=>new qt({typeName:b.ZodUnknown,...U(t)});var ht=class extends q{_parse(e){let r=this._getOrReturnCtx(e);return w(r,{code:S.invalid_type,expected:$.never,received:r.parsedType}),A}};ht.create=t=>new ht({typeName:b.ZodNever,...U(t)});var gn=class extends q{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.void,received:n.parsedType}),A}return je(e.data)}};gn.create=t=>new gn({typeName:b.ZodVoid,...U(t)});var Ft=class t extends q{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==$.array)return w(r,{code:S.invalid_type,expected:$.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)&&(w(r,{code:i?S.too_big:S.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&&(w(r,{code:S.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&&(w(r,{code:S.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 st(r,i,r.path,a)))).then(i=>Pe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new st(r,i,r.path,a)));return Pe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message: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)}};Ft.create=(t,e)=>new Ft({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...U(e)});function mn(t){if(t instanceof Ge){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=We.create(mn(n))}return new Ge({...t._def,shape:()=>e})}else return t instanceof Ft?new Ft({...t._def,type:mn(t.element)}):t instanceof We?We.create(mn(t.unwrap())):t instanceof Ot?Ot.create(mn(t.unwrap())):t instanceof Rt?Rt.create(t.items.map(e=>mn(e))):t}var Ge=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=K.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==$.object){let u=this._getOrReturnCtx(e);return w(u,{code:S.invalid_type,expected:$.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 ht&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new st(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof ht){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(w(o,{code:S.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 st(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=>Pe.mergeObjectSync(n,u)):Pe.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:b.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 K.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 K.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return mn(this)}partial(e){let r={};for(let n of K.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 K.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof We;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return cf(K.objectKeys(this.shape))}};Ge.create=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...U(e)});Ge.strictCreate=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strict",catchall:ht.create(),typeName:b.ZodObject,...U(e)});Ge.lazycreate=(t,e)=>new Ge({shape:t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...U(e)});var Or=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 Je(a.ctx.common.issues));return w(r,{code:S.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 Je(c));return w(r,{code:S.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};Or.create=(t,e)=>new Or({options:t,typeName:b.ZodUnion,...U(e)});var Ht=t=>t instanceof Ir?Ht(t.schema):t instanceof it?Ht(t.innerType()):t instanceof zr?[t.value]:t instanceof Nr?t.options:t instanceof Ar?K.objectValues(t.enum):t instanceof jr?Ht(t._def.innerType):t instanceof Pr?[void 0]:t instanceof Rr?[null]:t instanceof We?[void 0,...Ht(t.unwrap())]:t instanceof Ot?[null,...Ht(t.unwrap())]:t instanceof io||t instanceof Dr?Ht(t.unwrap()):t instanceof Mr?Ht(t._def.innerType):[],Ts=class t extends q{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.object)return w(r,{code:S.invalid_type,expected:$.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}):(w(r,{code:S.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=Ht(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:b.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...U(n)})}};function Oa(t,e){let r=Pt(t),n=Pt(e);if(t===e)return{valid:!0,data:t};if(r===$.object&&n===$.object){let o=K.objectKeys(e),s=K.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Oa(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===$.array&&n===$.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=Oa(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===$.date&&n===$.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var Cr=class extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(ws(s)||ws(i))return A;let a=Oa(s.value,i.value);return a.valid?((Es(s)||Es(i))&&r.dirty(),{status:r.value,value:a.data}):(w(n,{code:S.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}))}};Cr.create=(t,e,r)=>new Cr({left:t,right:e,typeName:b.ZodIntersection,...U(r)});var Rt=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.array)return w(n,{code:S.invalid_type,expected:$.array,received:n.parsedType}),A;if(n.data.length<this._def.items.length)return w(n,{code:S.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),A;!this._def.rest&&n.data.length>this._def.items.length&&(w(n,{code:S.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 st(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Pe.mergeArray(r,i)):Pe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Rt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Rt({items:t,typeName:b.ZodTuple,rest:null,...U(e)})};var $s=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!==$.object)return w(n,{code:S.invalid_type,expected:$.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 st(n,a,n.path,a)),value:i._parse(new st(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Pe.mergeObjectAsync(r,o):Pe.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof q?new t({keyType:e,valueType:r,typeName:b.ZodRecord,...U(n)}):new t({keyType:Qt.create(),valueType:e,typeName:b.ZodRecord,...U(r)})}},_n=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!==$.map)return w(n,{code:S.invalid_type,expected:$.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 st(n,a,n.path,[u,"key"])),value:s._parse(new st(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}}}};_n.create=(t,e,r)=>new _n({valueType:e,keyType:t,typeName:b.ZodMap,...U(r)});var yn=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.set)return w(n,{code:S.invalid_type,expected:$.set,received:n.parsedType}),A;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(w(n,{code:S.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&&(w(n,{code:S.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 st(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)}};yn.create=(t,e)=>new yn({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...U(e)});var Ps=class t extends q{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.function)return w(r,{code:S.invalid_type,expected:$.function,received:r.parsedType}),A;function n(a,c){return so({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,pn(),Ut].filter(u=>!!u),issueData:{code:S.invalid_arguments,argumentsError:c}})}function o(a,c){return so({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,pn(),Ut].filter(u=>!!u),issueData:{code:S.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof tr){let a=this;return je(async function(...c){let u=new Je([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return je(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Je([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Je([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Rt.create(e).rest(qt.create())})}returns(e){return new t({...this._def,returns:e})}implement(e){return this.parse(e)}strictImplement(e){return this.parse(e)}static create(e,r,n){return new t({args:e||Rt.create([]).rest(qt.create()),returns:r||qt.create(),typeName:b.ZodFunction,...U(n)})}},Ir=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})}};Ir.create=(t,e)=>new Ir({getter:t,typeName:b.ZodLazy,...U(e)});var zr=class extends q{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return w(r,{received:r.data,code:S.invalid_literal,expected:this._def.value}),A}return{status:"valid",value:e.data}}get value(){return this._def.value}};zr.create=(t,e)=>new zr({value:t,typeName:b.ZodLiteral,...U(e)});function cf(t,e){return new Nr({values:t,typeName:b.ZodEnum,...U(e)})}var Nr=class t extends q{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return w(r,{expected:K.joinValues(n),received:r.parsedType,code:S.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 w(r,{received:r.data,code:S.invalid_enum_value,options:n}),A}return je(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})}};Nr.create=cf;var Ar=class extends q{_parse(e){let r=K.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==$.string&&n.parsedType!==$.number){let o=K.objectValues(r);return w(n,{expected:K.joinValues(o),received:n.parsedType,code:S.invalid_type}),A}if(this._cache||(this._cache=new Set(K.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=K.objectValues(r);return w(n,{received:n.data,code:S.invalid_enum_value,options:o}),A}return je(e.data)}get enum(){return this._def.values}};Ar.create=(t,e)=>new Ar({values:t,typeName:b.ZodNativeEnum,...U(e)});var tr=class extends q{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.promise&&r.common.async===!1)return w(r,{code:S.invalid_type,expected:$.promise,received:r.parsedType}),A;let n=r.parsedType===$.promise?r.data:Promise.resolve(r.data);return je(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};tr.create=(t,e)=>new tr({type:t,typeName:b.ZodPromise,...U(e)});var it=class extends q{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===b.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=>{w(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"?br(c.value):r.value==="dirty"?br(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"?br(a.value):r.value==="dirty"?br(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(!Xt(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=>Xt(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);K.assertNever(o)}};it.create=(t,e,r)=>new it({schema:t,typeName:b.ZodEffects,effect:e,...U(r)});it.createWithPreprocess=(t,e,r)=>new it({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...U(r)});var We=class extends q{_parse(e){return this._getType(e)===$.undefined?je(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};We.create=(t,e)=>new We({innerType:t,typeName:b.ZodOptional,...U(e)});var Ot=class extends q{_parse(e){return this._getType(e)===$.null?je(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ot.create=(t,e)=>new Ot({innerType:t,typeName:b.ZodNullable,...U(e)});var jr=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===$.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};jr.create=(t,e)=>new jr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...U(e)});var Mr=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 fn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Je(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Je(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Mr.create=(t,e)=>new Mr({innerType:t,typeName:b.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...U(e)});var xn=class extends q{_parse(e){if(this._getType(e)!==$.nan){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};xn.create=t=>new xn({typeName:b.ZodNaN,...U(t)});var Pk=Symbol("zod_brand"),io=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}},ao=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(),br(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:b.ZodPipeline})}},Dr=class extends q{_parse(e){let r=this._def.innerType._parse(e),n=o=>(Xt(o)&&(o.value=Object.freeze(o.value)),o);return fn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Dr.create=(t,e)=>new Dr({innerType:t,typeName:b.ZodReadonly,...U(e)});function nf(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function uf(t,e={},r){return t?er.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=nf(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=nf(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):er.create()}var Rk={object:Ge.lazycreate},b;(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"})(b||(b={}));var Ok=(t,e={message:`Input not instance of ${t.name}`})=>uf(r=>r instanceof t,e),lf=Qt.create,df=wr.create,Ck=xn.create,Ik=Er.create,pf=Tr.create,zk=$r.create,Nk=hn.create,Ak=Pr.create,jk=Rr.create,Mk=er.create,Dk=qt.create,Lk=ht.create,Zk=gn.create,Uk=Ft.create,Ca=Ge.create,Hk=Ge.strictCreate,qk=Or.create,Fk=Ts.create,Bk=Cr.create,Vk=Rt.create,Kk=$s.create,Jk=_n.create,Wk=yn.create,Gk=Ps.create,Yk=Ir.create,Xk=zr.create,Qk=Nr.create,eS=Ar.create,tS=tr.create,rS=it.create,nS=We.create,oS=Ot.create,sS=it.createWithPreprocess,iS=ao.create,aS=()=>lf().optional(),cS=()=>df().optional(),uS=()=>pf().optional(),lS={string:(t=>Qt.create({...t,coerce:!0})),number:(t=>wr.create({...t,coerce:!0})),boolean:(t=>Tr.create({...t,coerce:!0})),bigint:(t=>Er.create({...t,coerce:!0})),date:(t=>$r.create({...t,coerce:!0}))};var dS=A;var pS=Object.freeze({status:"aborted"});function x(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Bt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Rs={};function rt(t){return t&&Object.assign(Rs,t),Rs}var J={};Ke(J,{BIGINT_FORMAT_RANGES:()=>mf,Class:()=>za,NUMBER_FORMAT_RANGES:()=>Za,aborted:()=>Zr,allowsEval:()=>Ma,assert:()=>_S,assertEqual:()=>fS,assertIs:()=>hS,assertNever:()=>gS,assertNotEqual:()=>mS,assignProp:()=>ja,cached:()=>lo,captureStackTrace:()=>Cs,cleanEnum:()=>OS,cleanRegex:()=>fo,clone:()=>nt,createTransparentProxy:()=>bS,defineLazy:()=>ae,esc:()=>Lr,escapeRegex:()=>rr,extend:()=>TS,finalizeIssue:()=>gt,floatSafeRemainder:()=>Aa,getElementAtPath:()=>yS,getEnumValues:()=>uo,getLengthableOrigin:()=>mo,getParsedType:()=>SS,getSizableOrigin:()=>hf,isObject:()=>vn,isPlainObject:()=>kn,issue:()=>Ua,joinValues:()=>Os,jsonStringifyReplacer:()=>Na,merge:()=>$S,normalizeParams:()=>j,nullish:()=>po,numKeys:()=>kS,omit:()=>ES,optionalKeys:()=>La,partial:()=>PS,pick:()=>wS,prefixIssues:()=>Ct,primitiveTypes:()=>ff,promiseAllObject:()=>xS,propertyKeyTypes:()=>Da,randomString:()=>vS,required:()=>RS,stringifyPrimitive:()=>Is,unwrapMessage:()=>co});function fS(t){return t}function mS(t){return t}function hS(t){}function gS(t){throw new Error}function _S(t){}function uo(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 Os(t,e="|"){return t.map(r=>Is(r)).join(e)}function Na(t,e){return typeof e=="bigint"?e.toString():e}function lo(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function po(t){return t==null}function fo(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Aa(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 ja(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function yS(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function xS(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 vS(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Lr(t){return JSON.stringify(t)}var Cs=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function vn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ma=lo(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function kn(t){if(vn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(vn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function kS(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var SS=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}`)}},Da=new Set(["string","number","symbol"]),ff=new Set(["string","number","bigint","boolean","symbol","undefined"]);function rr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function nt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function 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 bS(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 Is(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function La(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Za={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]},mf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function wS(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return nt(t,{...t._zod.def,shape:r,checks:[]})}function ES(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return nt(t,{...t._zod.def,shape:r,checks:[]})}function TS(t,e){if(!kn(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 ja(this,"shape",n),n},checks:[]};return nt(t,r)}function $S(t,e){return nt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return ja(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function PS(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return nt(e,{...e._zod.def,shape:o,checks:[]})}function RS(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return nt(e,{...e._zod.def,shape:o,checks:[]})}function Zr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Ct(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function co(t){return typeof t=="string"?t:t?.message}function gt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=co(t.inst?._zod.def?.error?.(t))??co(e?.error?.(t))??co(r.customError?.(t))??co(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function hf(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function mo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Ua(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function OS(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var za=class{constructor(...e){}};var gf=(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,Na,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},zs=x("$ZodError",gf),ho=x("$ZodError",gf,{Parent:Error});function Ha(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 qa(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 Fa=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 Bt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>gt(c,s,rt())));throw Cs(a,o?.callee),a}return i.value},Ba=Fa(ho),Va=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>gt(c,s,rt())));throw Cs(a,o?.callee),a}return i.value},Ka=Va(ho),Ja=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 Bt;return s.issues.length?{success:!1,error:new(t??zs)(s.issues.map(i=>gt(i,o,rt())))}:{success:!0,data:s.value}},Ur=Ja(ho),Wa=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>gt(i,o,rt())))}:{success:!0,data:s.value}},Hr=Wa(ho);var _f=/^[cC][^\s-]{8,}$/,yf=/^[0-9a-z]+$/,xf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,vf=/^[0-9a-vA-V]{20}$/,kf=/^[A-Za-z0-9]{27}$/,Sf=/^[a-zA-Z0-9_-]{21}$/,bf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var wf=/^([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})$/,Ga=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 Ef=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var IS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Tf(){return new RegExp(IS,"u")}var $f=/^(?:(?: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])$/,Pf=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})$/,Rf=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Of=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Cf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ya=/^[A-Za-z0-9_-]*$/,If=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var zf=/^\+(?:[0-9]){6,14}[0-9]$/,Nf="(?:(?:\\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])))",Af=new RegExp(`^${Nf}$`);function jf(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 Mf(t){return new RegExp(`^${jf(t)}$`)}function Df(t){let e=jf({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(`^${Nf}T(?:${n})$`)}var Lf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Zf=/^\d+$/,Uf=/^-?\d+(?:\.\d+)?/i,Hf=/true|false/i,qf=/null/i;var Ff=/^[^A-Z]*$/,Bf=/^[^a-z]*$/;var Re=x("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Vf={number:"number",bigint:"bigint",object:"date"},Xa=x("$ZodCheckLessThan",(t,e)=>{Re.init(t,e);let r=Vf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Qa=x("$ZodCheckGreaterThan",(t,e)=>{Re.init(t,e);let r=Vf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Kf=x("$ZodCheckMultipleOf",(t,e)=>{Re.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):Aa(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})}}),Jf=x("$ZodCheckNumberFormat",(t,e)=>{Re.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Za[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=Zf)}),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 Wf=x("$ZodCheckMaxLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!po(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=mo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Gf=x("$ZodCheckMinLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!po(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=mo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Yf=x("$ZodCheckLengthEquals",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!po(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=mo(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})}}),go=x("$ZodCheckStringFormat",(t,e)=>{var r,n;Re.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=()=>{})}),Xf=x("$ZodCheckRegex",(t,e)=>{go.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})}}),Qf=x("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Ff),go.init(t,e)}),em=x("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Bf),go.init(t,e)}),tm=x("$ZodCheckIncludes",(t,e)=>{Re.init(t,e);let r=rr(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})}}),rm=x("$ZodCheckStartsWith",(t,e)=>{Re.init(t,e);let r=new RegExp(`^${rr(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})}}),nm=x("$ZodCheckEndsWith",(t,e)=>{Re.init(t,e);let r=new RegExp(`.*${rr(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 om=x("$ZodCheckOverwrite",(t,e)=>{Re.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var As=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(`
26
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var Lv={};Ke(Lv,{detectPlatform:()=>Dv,getAdapter:()=>vI});import{existsSync as Zt}from"node:fs";import{resolve as Ut}from"node:path";import{homedir as xI}from"node:os";function Dv(t){if(t?.name){let n=Ex[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","cursor","antigravity","kiro","pi","zed"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};if(process.env.CLAUDE_PROJECT_DIR||process.env.CLAUDE_SESSION_ID)return{platform:"claude-code",confidence:"high",reason:"CLAUDE_PROJECT_DIR or CLAUDE_SESSION_ID env var set"};if(process.env.GEMINI_PROJECT_DIR||process.env.GEMINI_CLI)return{platform:"gemini-cli",confidence:"high",reason:"GEMINI_PROJECT_DIR or GEMINI_CLI env var set"};if(process.env.OPENCLAW_HOME||process.env.OPENCLAW_CLI)return{platform:"openclaw",confidence:"high",reason:"OPENCLAW_HOME or OPENCLAW_CLI env var set"};if(process.env.KILO||process.env.KILO_PID)return{platform:"kilo",confidence:"high",reason:"KILO or KILO_PID env var set"};if(process.env.OPENCODE||process.env.OPENCODE_PID)return{platform:"opencode",confidence:"high",reason:"OPENCODE or OPENCODE_PID env var set"};if(process.env.CODEX_CI||process.env.CODEX_THREAD_ID)return{platform:"codex",confidence:"high",reason:"CODEX_CI or CODEX_THREAD_ID env var set"};if(process.env.CURSOR_TRACE_ID||process.env.CURSOR_CLI)return{platform:"cursor",confidence:"high",reason:"CURSOR_TRACE_ID or CURSOR_CLI env var set"};if(process.env.VSCODE_PID||process.env.VSCODE_CWD)return{platform:"vscode-copilot",confidence:"high",reason:"VSCODE_PID or VSCODE_CWD env var set"};let r=xI();return Zt(Ut(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Zt(Ut(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Zt(Ut(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Zt(Ut(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Zt(Ut(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Zt(Ut(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Zt(Ut(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Zt(Ut(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:Zt(Ut(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Zt(Ut(r,".config","zed"))?{platform:"zed",confidence:"medium",reason:"~/.config/zed/ directory exists"}:{platform:"claude-code",confidence:"low",reason:"No platform detected, defaulting to Claude Code"}}async function vI(t){let e=t??Dv().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Sp(),vp));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Hx(),Ux));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Kx(),Vx));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Yx(),Gx));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(rv(),tv));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(av(),iv));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(yv(),_v));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(bv(),kv));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(Ov(),Rv));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(Mv(),jv));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Sp(),vp));return new r}}}var Zv=be(()=>{"use strict";Tx()});var L={};Ke(L,{BRAND:()=>CS,DIRTY:()=>Er,EMPTY_PATH:()=>uS,INVALID:()=>A,NEVER:()=>mk,OK:()=>je,ParseStatus:()=>Pe,Schema:()=>q,ZodAny:()=>nr,ZodArray:()=>Vt,ZodBigInt:()=>$r,ZodBoolean:()=>Pr,ZodBranded:()=>ao,ZodCatch:()=>Lr,ZodDate:()=>Rr,ZodDefault:()=>Dr,ZodDiscriminatedUnion:()=>$s,ZodEffects:()=>it,ZodEnum:()=>jr,ZodError:()=>Je,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>Rs,ZodIntersection:()=>zr,ZodIssueCode:()=>k,ZodLazy:()=>Nr,ZodLiteral:()=>Ar,ZodMap:()=>xn,ZodNaN:()=>Sn,ZodNativeEnum:()=>Mr,ZodNever:()=>gt,ZodNull:()=>Cr,ZodNullable:()=>Ct,ZodNumber:()=>Tr,ZodObject:()=>Ge,ZodOptional:()=>We,ZodParsedType:()=>$,ZodPipeline:()=>co,ZodPromise:()=>or,ZodReadonly:()=>Zr,ZodRecord:()=>Ps,ZodSchema:()=>q,ZodSet:()=>vn,ZodString:()=>rr,ZodSymbol:()=>_n,ZodTransformer:()=>it,ZodTuple:()=>Ot,ZodType:()=>q,ZodUndefined:()=>Or,ZodUnion:()=>Ir,ZodUnknown:()=>Bt,ZodVoid:()=>yn,addIssueToContext:()=>w,any:()=>ZS,array:()=>FS,bigint:()=>AS,boolean:()=>hf,coerce:()=>fk,custom:()=>pf,date:()=>jS,datetimeRegex:()=>lf,defaultErrorMap:()=>qt,discriminatedUnion:()=>KS,effect:()=>sk,enum:()=>rk,function:()=>QS,getErrorMap:()=>mn,getParsedType:()=>Rt,instanceof:()=>zS,intersection:()=>JS,isAborted:()=>Es,isAsync:()=>hn,isDirty:()=>Ts,isValid:()=>tr,late:()=>IS,lazy:()=>ek,literal:()=>tk,makeIssue:()=>io,map:()=>YS,nan:()=>NS,nativeEnum:()=>nk,never:()=>HS,null:()=>LS,nullable:()=>ak,number:()=>mf,object:()=>Ia,objectUtil:()=>Ra,oboolean:()=>pk,onumber:()=>dk,optional:()=>ik,ostring:()=>lk,pipeline:()=>uk,preprocess:()=>ck,promise:()=>ok,quotelessJson:()=>iS,record:()=>GS,set:()=>XS,setErrorMap:()=>cS,strictObject:()=>BS,string:()=>ff,symbol:()=>MS,transformer:()=>sk,tuple:()=>WS,undefined:()=>DS,union:()=>VS,unknown:()=>US,util:()=>K,void:()=>qS});var K;(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})(K||(K={}));var Ra;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Ra||(Ra={}));var $=K.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Rt=t=>{switch(typeof t){case"undefined":return $.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:$.object;default:return $.unknown}};var k=K.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"]),iS=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Je=class t extends Error{get errors(){return this.issues}constructor(e){super(),this.issues=[],this.addIssue=n=>{this.issues=[...this.issues,n]},this.addIssues=(n=[])=>{this.issues=[...this.issues,...n]};let r=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,r):this.__proto__=r,this.name="ZodError",this.issues=e}format(e){let r=e||function(s){return s.message},n={_errors:[]},o=s=>{for(let i of s.issues)if(i.code==="invalid_union")i.unionErrors.map(o);else if(i.code==="invalid_return_type")o(i.returnTypeError);else if(i.code==="invalid_arguments")o(i.argumentsError);else if(i.path.length===0)n._errors.push(r(i));else{let a=n,c=0;for(;c<i.path.length;){let u=i.path[c];c===i.path.length-1?(a[u]=a[u]||{_errors:[]},a[u]._errors.push(r(i))):a[u]=a[u]||{_errors:[]},a=a[u],c++}}};return o(this),n}static assert(e){if(!(e instanceof t))throw new Error(`Not a ZodError: ${e}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,K.jsonStringifyReplacer,2)}get isEmpty(){return this.issues.length===0}flatten(e=r=>r.message){let r={},n=[];for(let o of this.issues)if(o.path.length>0){let s=o.path[0];r[s]=r[s]||[],r[s].push(e(o))}else n.push(e(o));return{formErrors:n,fieldErrors:r}}get formErrors(){return this.flatten()}};Je.create=t=>new Je(t);var aS=(t,e)=>{let r;switch(t.code){case k.invalid_type:t.received===$.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case k.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,K.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${K.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${K.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${K.joinValues(t.options)}, received '${t.received}'`;break;case k.invalid_arguments:r="Invalid function arguments";break;case k.invalid_return_type:r="Invalid function return type";break;case k.invalid_date:r="Invalid date";break;case k.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:K.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case k.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case k.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case k.custom:r="Invalid input";break;case k.invalid_intersection_types:r="Intersection results could not be merged";break;case k.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case k.not_finite:r="Number must be finite";break;default:r=e.defaultError,K.assertNever(t)}return{message:r}},qt=aS;var of=qt;function cS(t){of=t}function mn(){return of}var io=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}},uS=[];function w(t,e){let r=mn(),n=io({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===qt?void 0:qt].filter(o=>!!o)});t.common.issues.push(n)}var Pe=class t{constructor(){this.value="valid"}dirty(){this.value==="valid"&&(this.value="dirty")}abort(){this.value!=="aborted"&&(this.value="aborted")}static mergeArray(e,r){let n=[];for(let o of r){if(o.status==="aborted")return 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"}),Er=t=>({status:"dirty",value:t}),je=t=>({status:"valid",value:t}),Es=t=>t.status==="aborted",Ts=t=>t.status==="dirty",tr=t=>t.status==="valid",hn=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 st=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}},sf=(t,e)=>{if(tr(e))return{success:!0,data:e.value};if(!t.common.issues.length)throw new Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let r=new Je(t.common.issues);return this._error=r,this._error}}};function U(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message: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 Rt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:Rt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Pe,ctx:{common:e.parent.common,data:e.data,parsedType:Rt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(hn(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Rt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return sf(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Rt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return tr(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=>tr(n)?{value:n.value}:{issues:r.common.issues})}async parseAsync(e,r){let n=await this.safeParseAsync(e,r);if(n.success)return n.data;throw n.error}async safeParseAsync(e,r){let n={common:{issues:[],contextualErrorMap:r?.errorMap,async:!0},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Rt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(hn(o)?o:Promise.resolve(o));return sf(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:k.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new it({schema:this,typeName:b.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 We.create(this,this._def)}nullable(){return Ct.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Vt.create(this)}promise(){return or.create(this,this._def)}or(e){return Ir.create([this,e],this._def)}and(e){return zr.create(this,e,this._def)}transform(e){return new it({...U(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Dr({...U(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new ao({typeName:b.ZodBranded,type:this,...U(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Lr({...U(this._def),innerType:this,catchValue:r,typeName:b.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return co.create(this,e)}readonly(){return Zr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},lS=/^c[^\s-]{8,}$/i,dS=/^[0-9a-z]+$/,pS=/^[0-9A-HJKMNP-TV-Z]{26}$/i,fS=/^[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,mS=/^[a-z0-9_-]{21}$/i,hS=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,gS=/^[-+]?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)?)??$/,_S=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,yS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Oa,xS=/^(?:(?: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])$/,vS=/^(?:(?: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])$/,SS=/^(([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]))$/,kS=/^(([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])$/,bS=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,wS=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,cf="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",ES=new RegExp(`^${cf}$`);function uf(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 TS(t){return new RegExp(`^${uf(t)}$`)}function lf(t){let e=`${cf}T${uf(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 $S(t,e){return!!((e==="v4"||!e)&&xS.test(t)||(e==="v6"||!e)&&SS.test(t))}function PS(t,e){if(!hS.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 RS(t,e){return!!((e==="v4"||!e)&&vS.test(t)||(e==="v6"||!e)&&kS.test(t))}var rr=class t extends q{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==$.string){let s=this._getOrReturnCtx(e);return w(s,{code:k.invalid_type,expected:$.string,received:s.parsedType}),A}let n=new Pe,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?w(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&w(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")_S.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"email",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Oa||(Oa=new RegExp(yS,"u")),Oa.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"emoji",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")fS.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"uuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")mS.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"nanoid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")lS.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")dS.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cuid2",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")pS.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"ulid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),w(o,{validation:"url",code:k.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"regex",code:k.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),w(o,{code:k.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),w(o,{code:k.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),w(o,{code:k.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?lf(s).test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:k.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?ES.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?TS(s).test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:k.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?gS.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?$S(e.data,s.version)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"ip",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?PS(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"jwt",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?RS(e.data,s.version)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cidr",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?bS.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?wS.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):K.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:k.invalid_string,...R.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...R.errToObj(e)})}url(e){return this._addCheck({kind:"url",...R.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...R.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...R.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...R.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...R.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...R.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...R.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...R.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...R.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...R.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...R.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...R.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...R.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...R.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...R.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...R.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...R.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...R.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...R.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...R.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...R.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...R.errToObj(r)})}nonempty(e){return this.min(1,R.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};rr.create=t=>new rr({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...U(t)});function OS(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 Tr=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)!==$.number){let s=this._getOrReturnCtx(e);return w(s,{code:k.invalid_type,expected:$.number,received:s.parsedType}),A}let n,o=new Pe;for(let s of this._def.checks)s.kind==="int"?K.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),w(n,{code:k.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:k.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:k.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?OS(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),w(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),w(n,{code:k.not_finite,message:s.message}),o.dirty()):K.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"&&K.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)}};Tr.create=t=>new Tr({checks:[],typeName:b.ZodNumber,coerce:t?.coerce||!1,...U(t)});var $r=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)!==$.bigint)return this._getInvalidInput(e);let n,o=new Pe;for(let s of this._def.checks)s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:k.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:k.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),w(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):K.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return w(r,{code:k.invalid_type,expected:$.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}};$r.create=t=>new $r({checks:[],typeName:b.ZodBigInt,coerce:t?.coerce??!1,...U(t)});var Pr=class extends q{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==$.boolean){let n=this._getOrReturnCtx(e);return w(n,{code:k.invalid_type,expected:$.boolean,received:n.parsedType}),A}return je(e.data)}};Pr.create=t=>new Pr({typeName:b.ZodBoolean,coerce:t?.coerce||!1,...U(t)});var Rr=class t extends q{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==$.date){let s=this._getOrReturnCtx(e);return w(s,{code:k.invalid_type,expected:$.date,received:s.parsedType}),A}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return w(s,{code:k.invalid_date}),A}let n=new Pe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:k.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:k.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):K.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}};Rr.create=t=>new Rr({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...U(t)});var _n=class extends q{_parse(e){if(this._getType(e)!==$.symbol){let n=this._getOrReturnCtx(e);return w(n,{code:k.invalid_type,expected:$.symbol,received:n.parsedType}),A}return je(e.data)}};_n.create=t=>new _n({typeName:b.ZodSymbol,...U(t)});var Or=class extends q{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return w(n,{code:k.invalid_type,expected:$.undefined,received:n.parsedType}),A}return je(e.data)}};Or.create=t=>new Or({typeName:b.ZodUndefined,...U(t)});var Cr=class extends q{_parse(e){if(this._getType(e)!==$.null){let n=this._getOrReturnCtx(e);return w(n,{code:k.invalid_type,expected:$.null,received:n.parsedType}),A}return je(e.data)}};Cr.create=t=>new Cr({typeName:b.ZodNull,...U(t)});var nr=class extends q{constructor(){super(...arguments),this._any=!0}_parse(e){return je(e.data)}};nr.create=t=>new nr({typeName:b.ZodAny,...U(t)});var Bt=class extends q{constructor(){super(...arguments),this._unknown=!0}_parse(e){return je(e.data)}};Bt.create=t=>new Bt({typeName:b.ZodUnknown,...U(t)});var gt=class extends q{_parse(e){let r=this._getOrReturnCtx(e);return w(r,{code:k.invalid_type,expected:$.never,received:r.parsedType}),A}};gt.create=t=>new gt({typeName:b.ZodNever,...U(t)});var yn=class extends q{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return w(n,{code:k.invalid_type,expected:$.void,received:n.parsedType}),A}return je(e.data)}};yn.create=t=>new yn({typeName:b.ZodVoid,...U(t)});var Vt=class t extends q{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==$.array)return w(r,{code:k.invalid_type,expected:$.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)&&(w(r,{code:i?k.too_big:k.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(w(r,{code:k.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(w(r,{code:k.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new st(r,i,r.path,a)))).then(i=>Pe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new st(r,i,r.path,a)));return Pe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message: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)}};Vt.create=(t,e)=>new Vt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...U(e)});function gn(t){if(t instanceof Ge){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=We.create(gn(n))}return new Ge({...t._def,shape:()=>e})}else return t instanceof Vt?new Vt({...t._def,type:gn(t.element)}):t instanceof We?We.create(gn(t.unwrap())):t instanceof Ct?Ct.create(gn(t.unwrap())):t instanceof Ot?Ot.create(t.items.map(e=>gn(e))):t}var Ge=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=K.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==$.object){let u=this._getOrReturnCtx(e);return w(u,{code:k.invalid_type,expected:$.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 gt&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new st(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof gt){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(w(o,{code:k.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new st(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=>Pe.mergeObjectSync(n,u)):Pe.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:b.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 K.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 K.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return gn(this)}partial(e){let r={};for(let n of K.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 K.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof We;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return df(K.objectKeys(this.shape))}};Ge.create=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strip",catchall:gt.create(),typeName:b.ZodObject,...U(e)});Ge.strictCreate=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strict",catchall:gt.create(),typeName:b.ZodObject,...U(e)});Ge.lazycreate=(t,e)=>new Ge({shape:t,unknownKeys:"strip",catchall:gt.create(),typeName:b.ZodObject,...U(e)});var Ir=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 Je(a.ctx.common.issues));return w(r,{code:k.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 Je(c));return w(r,{code:k.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};Ir.create=(t,e)=>new Ir({options:t,typeName:b.ZodUnion,...U(e)});var Ft=t=>t instanceof Nr?Ft(t.schema):t instanceof it?Ft(t.innerType()):t instanceof Ar?[t.value]:t instanceof jr?t.options:t instanceof Mr?K.objectValues(t.enum):t instanceof Dr?Ft(t._def.innerType):t instanceof Or?[void 0]:t instanceof Cr?[null]:t instanceof We?[void 0,...Ft(t.unwrap())]:t instanceof Ct?[null,...Ft(t.unwrap())]:t instanceof ao||t instanceof Zr?Ft(t.unwrap()):t instanceof Lr?Ft(t._def.innerType):[],$s=class t extends q{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.object)return w(r,{code:k.invalid_type,expected:$.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}):(w(r,{code:k.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=Ft(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:b.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...U(n)})}};function Ca(t,e){let r=Rt(t),n=Rt(e);if(t===e)return{valid:!0,data:t};if(r===$.object&&n===$.object){let o=K.objectKeys(e),s=K.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Ca(t[a],e[a]);if(!c.valid)return{valid:!1};i[a]=c.data}return{valid:!0,data:i}}else if(r===$.array&&n===$.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=Ca(i,a);if(!c.valid)return{valid:!1};o.push(c.data)}return{valid:!0,data:o}}else return r===$.date&&n===$.date&&+t==+e?{valid:!0,data:t}:{valid:!1}}var zr=class extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Es(s)||Es(i))return A;let a=Ca(s.value,i.value);return a.valid?((Ts(s)||Ts(i))&&r.dirty(),{status:r.value,value:a.data}):(w(n,{code:k.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}))}};zr.create=(t,e,r)=>new zr({left:t,right:e,typeName:b.ZodIntersection,...U(r)});var Ot=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.array)return w(n,{code:k.invalid_type,expected:$.array,received:n.parsedType}),A;if(n.data.length<this._def.items.length)return w(n,{code:k.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),A;!this._def.rest&&n.data.length>this._def.items.length&&(w(n,{code:k.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new st(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Pe.mergeArray(r,i)):Pe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Ot.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Ot({items:t,typeName:b.ZodTuple,rest:null,...U(e)})};var Ps=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!==$.object)return w(n,{code:k.invalid_type,expected:$.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 st(n,a,n.path,a)),value:i._parse(new st(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Pe.mergeObjectAsync(r,o):Pe.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof q?new t({keyType:e,valueType:r,typeName:b.ZodRecord,...U(n)}):new t({keyType:rr.create(),valueType:e,typeName:b.ZodRecord,...U(r)})}},xn=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!==$.map)return w(n,{code:k.invalid_type,expected:$.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 st(n,a,n.path,[u,"key"])),value:s._parse(new st(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}}}};xn.create=(t,e,r)=>new xn({valueType:e,keyType:t,typeName:b.ZodMap,...U(r)});var vn=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.set)return w(n,{code:k.invalid_type,expected:$.set,received:n.parsedType}),A;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(w(n,{code:k.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(w(n,{code:k.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return 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 st(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)}};vn.create=(t,e)=>new vn({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...U(e)});var Rs=class t extends q{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.function)return w(r,{code:k.invalid_type,expected:$.function,received:r.parsedType}),A;function n(a,c){return io({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,mn(),qt].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return io({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,mn(),qt].filter(u=>!!u),issueData:{code:k.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof or){let a=this;return je(async function(...c){let u=new Je([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return je(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Je([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Je([o(l,d.error)]);return d.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...e){return new t({...this._def,args:Ot.create(e).rest(Bt.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||Ot.create([]).rest(Bt.create()),returns:r||Bt.create(),typeName:b.ZodFunction,...U(n)})}},Nr=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})}};Nr.create=(t,e)=>new Nr({getter:t,typeName:b.ZodLazy,...U(e)});var Ar=class extends q{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return w(r,{received:r.data,code:k.invalid_literal,expected:this._def.value}),A}return{status:"valid",value:e.data}}get value(){return this._def.value}};Ar.create=(t,e)=>new Ar({value:t,typeName:b.ZodLiteral,...U(e)});function df(t,e){return new jr({values:t,typeName:b.ZodEnum,...U(e)})}var jr=class t extends q{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return w(r,{expected:K.joinValues(n),received:r.parsedType,code:k.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 w(r,{received:r.data,code:k.invalid_enum_value,options:n}),A}return je(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})}};jr.create=df;var Mr=class extends q{_parse(e){let r=K.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==$.string&&n.parsedType!==$.number){let o=K.objectValues(r);return w(n,{expected:K.joinValues(o),received:n.parsedType,code:k.invalid_type}),A}if(this._cache||(this._cache=new Set(K.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=K.objectValues(r);return w(n,{received:n.data,code:k.invalid_enum_value,options:o}),A}return je(e.data)}get enum(){return this._def.values}};Mr.create=(t,e)=>new Mr({values:t,typeName:b.ZodNativeEnum,...U(e)});var or=class extends q{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.promise&&r.common.async===!1)return w(r,{code:k.invalid_type,expected:$.promise,received:r.parsedType}),A;let n=r.parsedType===$.promise?r.data:Promise.resolve(r.data);return je(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};or.create=(t,e)=>new or({type:t,typeName:b.ZodPromise,...U(e)});var it=class extends q{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===b.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=>{w(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"?Er(c.value):r.value==="dirty"?Er(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"?Er(a.value):r.value==="dirty"?Er(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(!tr(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=>tr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);K.assertNever(o)}};it.create=(t,e,r)=>new it({schema:t,typeName:b.ZodEffects,effect:e,...U(r)});it.createWithPreprocess=(t,e,r)=>new it({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...U(r)});var We=class extends q{_parse(e){return this._getType(e)===$.undefined?je(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};We.create=(t,e)=>new We({innerType:t,typeName:b.ZodOptional,...U(e)});var Ct=class extends q{_parse(e){return this._getType(e)===$.null?je(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ct.create=(t,e)=>new Ct({innerType:t,typeName:b.ZodNullable,...U(e)});var Dr=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===$.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Dr.create=(t,e)=>new Dr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...U(e)});var Lr=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 hn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Je(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Je(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Lr.create=(t,e)=>new Lr({innerType:t,typeName:b.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...U(e)});var Sn=class extends q{_parse(e){if(this._getType(e)!==$.nan){let n=this._getOrReturnCtx(e);return w(n,{code:k.invalid_type,expected:$.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};Sn.create=t=>new Sn({typeName:b.ZodNaN,...U(t)});var CS=Symbol("zod_brand"),ao=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}},co=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(),Er(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:b.ZodPipeline})}},Zr=class extends q{_parse(e){let r=this._def.innerType._parse(e),n=o=>(tr(o)&&(o.value=Object.freeze(o.value)),o);return hn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Zr.create=(t,e)=>new Zr({innerType:t,typeName:b.ZodReadonly,...U(e)});function af(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function pf(t,e={},r){return t?nr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=af(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=af(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):nr.create()}var IS={object:Ge.lazycreate},b;(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"})(b||(b={}));var zS=(t,e={message:`Input not instance of ${t.name}`})=>pf(r=>r instanceof t,e),ff=rr.create,mf=Tr.create,NS=Sn.create,AS=$r.create,hf=Pr.create,jS=Rr.create,MS=_n.create,DS=Or.create,LS=Cr.create,ZS=nr.create,US=Bt.create,HS=gt.create,qS=yn.create,FS=Vt.create,Ia=Ge.create,BS=Ge.strictCreate,VS=Ir.create,KS=$s.create,JS=zr.create,WS=Ot.create,GS=Ps.create,YS=xn.create,XS=vn.create,QS=Rs.create,ek=Nr.create,tk=Ar.create,rk=jr.create,nk=Mr.create,ok=or.create,sk=it.create,ik=We.create,ak=Ct.create,ck=it.createWithPreprocess,uk=co.create,lk=()=>ff().optional(),dk=()=>mf().optional(),pk=()=>hf().optional(),fk={string:(t=>rr.create({...t,coerce:!0})),number:(t=>Tr.create({...t,coerce:!0})),boolean:(t=>Pr.create({...t,coerce:!0})),bigint:(t=>$r.create({...t,coerce:!0})),date:(t=>Rr.create({...t,coerce:!0}))};var mk=A;var hk=Object.freeze({status:"aborted"});function x(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Kt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Os={};function rt(t){return t&&Object.assign(Os,t),Os}var J={};Ke(J,{BIGINT_FORMAT_RANGES:()=>_f,Class:()=>Na,NUMBER_FORMAT_RANGES:()=>Ua,aborted:()=>Hr,allowsEval:()=>Da,assert:()=>vk,assertEqual:()=>gk,assertIs:()=>yk,assertNever:()=>xk,assertNotEqual:()=>_k,assignProp:()=>Ma,cached:()=>po,captureStackTrace:()=>Is,cleanEnum:()=>zk,cleanRegex:()=>mo,clone:()=>nt,createTransparentProxy:()=>Tk,defineLazy:()=>ce,esc:()=>Ur,escapeRegex:()=>sr,extend:()=>Rk,finalizeIssue:()=>_t,floatSafeRemainder:()=>ja,getElementAtPath:()=>Sk,getEnumValues:()=>lo,getLengthableOrigin:()=>ho,getParsedType:()=>Ek,getSizableOrigin:()=>yf,isObject:()=>kn,isPlainObject:()=>bn,issue:()=>Ha,joinValues:()=>Cs,jsonStringifyReplacer:()=>Aa,merge:()=>Ok,normalizeParams:()=>j,nullish:()=>fo,numKeys:()=>wk,omit:()=>Pk,optionalKeys:()=>Za,partial:()=>Ck,pick:()=>$k,prefixIssues:()=>It,primitiveTypes:()=>gf,promiseAllObject:()=>kk,propertyKeyTypes:()=>La,randomString:()=>bk,required:()=>Ik,stringifyPrimitive:()=>zs,unwrapMessage:()=>uo});function gk(t){return t}function _k(t){return t}function yk(t){}function xk(t){throw new Error}function vk(t){}function lo(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 Cs(t,e="|"){return t.map(r=>zs(r)).join(e)}function Aa(t,e){return typeof e=="bigint"?e.toString():e}function po(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function fo(t){return t==null}function mo(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function ja(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function ce(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 Ma(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function Sk(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function kk(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 bk(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Ur(t){return JSON.stringify(t)}var Is=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function kn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Da=po(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function bn(t){if(kn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(kn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function wk(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var Ek=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}`)}},La=new Set(["string","number","symbol"]),gf=new Set(["string","number","bigint","boolean","symbol","undefined"]);function sr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function nt(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function 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 Tk(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 zs(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Za(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Ua={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]},_f={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function $k(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return nt(t,{...t._zod.def,shape:r,checks:[]})}function Pk(t,e){let r={...t._zod.def.shape},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&delete r[o]}return nt(t,{...t._zod.def,shape:r,checks:[]})}function Rk(t,e){if(!bn(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 Ma(this,"shape",n),n},checks:[]};return nt(t,r)}function Ok(t,e){return nt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ma(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function Ck(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return nt(e,{...e._zod.def,shape:o,checks:[]})}function Ik(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return nt(e,{...e._zod.def,shape:o,checks:[]})}function Hr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function It(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function uo(t){return typeof t=="string"?t:t?.message}function _t(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=uo(t.inst?._zod.def?.error?.(t))??uo(e?.error?.(t))??uo(r.customError?.(t))??uo(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function yf(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function ho(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Ha(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function zk(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Na=class{constructor(...e){}};var xf=(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,Aa,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Ns=x("$ZodError",xf),go=x("$ZodError",xf,{Parent:Error});function qa(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 Fa(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 Ba=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 Kt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,rt())));throw Is(a,o?.callee),a}return i.value},Va=Ba(go),Ka=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,rt())));throw Is(a,o?.callee),a}return i.value},Ja=Ka(go),Wa=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 Kt;return s.issues.length?{success:!1,error:new(t??Ns)(s.issues.map(i=>_t(i,o,rt())))}:{success:!0,data:s.value}},qr=Wa(go),Ga=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>_t(i,o,rt())))}:{success:!0,data:s.value}},Fr=Ga(go);var vf=/^[cC][^\s-]{8,}$/,Sf=/^[0-9a-z]+$/,kf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,bf=/^[0-9a-vA-V]{20}$/,wf=/^[A-Za-z0-9]{27}$/,Ef=/^[a-zA-Z0-9_-]{21}$/,Tf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var $f=/^([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})$/,Ya=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 Pf=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var Ak="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Rf(){return new RegExp(Ak,"u")}var Of=/^(?:(?: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])$/,Cf=/^(([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})$/,If=/^((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])$/,zf=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,Nf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Xa=/^[A-Za-z0-9_-]*$/,Af=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var jf=/^\+(?:[0-9]){6,14}[0-9]$/,Mf="(?:(?:\\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])))",Df=new RegExp(`^${Mf}$`);function Lf(t){let e="(?:[01]\\d|2[0-3]):[0-5]\\d";return typeof t.precision=="number"?t.precision===-1?`${e}`:t.precision===0?`${e}:[0-5]\\d`:`${e}:[0-5]\\d\\.\\d{${t.precision}}`:`${e}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Zf(t){return new RegExp(`^${Lf(t)}$`)}function Uf(t){let e=Lf({precision:t.precision}),r=["Z"];t.local&&r.push(""),t.offset&&r.push("([+-]\\d{2}:\\d{2})");let n=`${e}(?:${r.join("|")})`;return new RegExp(`^${Mf}T(?:${n})$`)}var Hf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var qf=/^\d+$/,Ff=/^-?\d+(?:\.\d+)?/i,Bf=/true|false/i,Vf=/null/i;var Kf=/^[^A-Z]*$/,Jf=/^[^a-z]*$/;var Re=x("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),Wf={number:"number",bigint:"bigint",object:"date"},Qa=x("$ZodCheckLessThan",(t,e)=>{Re.init(t,e);let r=Wf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.maximum:o.exclusiveMaximum)??Number.POSITIVE_INFINITY;e.value<s&&(e.inclusive?o.maximum=e.value:o.exclusiveMaximum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value<=e.value:n.value<e.value)||n.issues.push({origin:r,code:"too_big",maximum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),ec=x("$ZodCheckGreaterThan",(t,e)=>{Re.init(t,e);let r=Wf[typeof e.value];t._zod.onattach.push(n=>{let o=n._zod.bag,s=(e.inclusive?o.minimum:o.exclusiveMinimum)??Number.NEGATIVE_INFINITY;e.value>s&&(e.inclusive?o.minimum=e.value:o.exclusiveMinimum=e.value)}),t._zod.check=n=>{(e.inclusive?n.value>=e.value:n.value>e.value)||n.issues.push({origin:r,code:"too_small",minimum:e.value,input:n.value,inclusive:e.inclusive,inst:t,continue:!e.abort})}}),Gf=x("$ZodCheckMultipleOf",(t,e)=>{Re.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):ja(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),Yf=x("$ZodCheckNumberFormat",(t,e)=>{Re.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Ua[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=qf)}),t._zod.check=i=>{let a=i.value;if(r){if(!Number.isInteger(a)){i.issues.push({expected:n,format:e.format,code:"invalid_type",input:a,inst:t});return}if(!Number.isSafeInteger(a)){a>0?i.issues.push({input:a,code:"too_big",maximum:Number.MAX_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort}):i.issues.push({input:a,code:"too_small",minimum:Number.MIN_SAFE_INTEGER,note:"Integers must be within the safe integer range.",inst:t,origin:n,continue:!e.abort});return}}a<o&&i.issues.push({origin:"number",input:a,code:"too_small",minimum:o,inclusive:!0,inst:t,continue:!e.abort}),a>s&&i.issues.push({origin:"number",input:a,code:"too_big",maximum:s,inst:t})}});var Xf=x("$ZodCheckMaxLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!fo(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=ho(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Qf=x("$ZodCheckMinLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!fo(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=ho(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),em=x("$ZodCheckLengthEquals",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!fo(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=ho(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})}}),_o=x("$ZodCheckStringFormat",(t,e)=>{var r,n;Re.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=()=>{})}),tm=x("$ZodCheckRegex",(t,e)=>{_o.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})}}),rm=x("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Kf),_o.init(t,e)}),nm=x("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=Jf),_o.init(t,e)}),om=x("$ZodCheckIncludes",(t,e)=>{Re.init(t,e);let r=sr(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})}}),sm=x("$ZodCheckStartsWith",(t,e)=>{Re.init(t,e);let r=new RegExp(`^${sr(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})}}),im=x("$ZodCheckEndsWith",(t,e)=>{Re.init(t,e);let r=new RegExp(`.*${sr(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 am=x("$ZodCheckOverwrite",(t,e)=>{Re.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var js=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(`
27
27
  `).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(`
28
- `))}};var im={major:4,minor:0,patch:0};var ne=x("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=im;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=Zr(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 Bt;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=Zr(s,d)))});else{if(s.issues.length===d)continue;c||(c=Zr(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 Bt;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Ur(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Hr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),_o=x("$ZodString",(t,e)=>{ne.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Lf(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=x("$ZodStringFormat",(t,e)=>{go.init(t,e),_o.init(t,e)}),tc=x("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=wf),ce.init(t,e)}),rc=x("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Ga(n))}else e.pattern??(e.pattern=Ga());ce.init(t,e)}),nc=x("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Ef),ce.init(t,e)}),oc=x("$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:If.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})}}}),sc=x("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Tf()),ce.init(t,e)}),ic=x("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Sf),ce.init(t,e)}),ac=x("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=_f),ce.init(t,e)}),cc=x("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=yf),ce.init(t,e)}),uc=x("$ZodULID",(t,e)=>{e.pattern??(e.pattern=xf),ce.init(t,e)}),lc=x("$ZodXID",(t,e)=>{e.pattern??(e.pattern=vf),ce.init(t,e)}),dc=x("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=kf),ce.init(t,e)}),gm=x("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Df(e)),ce.init(t,e)}),_m=x("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Af),ce.init(t,e)}),ym=x("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Mf(e)),ce.init(t,e)}),xm=x("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=bf),ce.init(t,e)}),pc=x("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=$f),ce.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),fc=x("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Pf),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})}}}),mc=x("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Rf),ce.init(t,e)}),hc=x("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Of),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 vm(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var gc=x("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Cf),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{vm(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function zS(t){if(!Ya.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return vm(r)}var _c=x("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Ya),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{zS(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),yc=x("$ZodE164",(t,e)=>{e.pattern??(e.pattern=zf),ce.init(t,e)});function NS(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 xc=x("$ZodJWT",(t,e)=>{ce.init(t,e),t._zod.check=r=>{NS(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Ms=x("$ZodNumber",(t,e)=>{ne.init(t,e),t._zod.pattern=t._zod.bag.pattern??Uf,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}}),vc=x("$ZodNumber",(t,e)=>{Jf.init(t,e),Ms.init(t,e)}),kc=x("$ZodBoolean",(t,e)=>{ne.init(t,e),t._zod.pattern=Hf,t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=!!r.value}catch{}let o=r.value;return typeof o=="boolean"||r.issues.push({expected:"boolean",code:"invalid_type",input:o,inst:t}),r}});var Sc=x("$ZodNull",(t,e)=>{ne.init(t,e),t._zod.pattern=qf,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 bc=x("$ZodUnknown",(t,e)=>{ne.init(t,e),t._zod.parse=r=>r}),wc=x("$ZodNever",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function am(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}var Ec=x("$ZodArray",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>am(u,r,i))):am(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function js(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}function cm(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(...Ct(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Ds=x("$ZodObject",(t,e)=>{ne.init(t,e);let r=lo(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof ne))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=La(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 As(["shape","payload","ctx"]),m=r.value,p=y=>{let k=Lr(y);return`shape[${k}]._zod.run({ value: input[${k}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),g=0;for(let y of m.keys)h[y]=`key_${g++}`;f.write("const newResult = {}");for(let y of m.keys)if(m.optionalKeys.has(y)){let k=h[y];f.write(`const ${k} = ${p(y)};`);let E=Lr(y);f.write(`
29
- if (${k}.issues.length) {
28
+ `))}};var um={major:4,minor:0,patch:0};var ne=x("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=um;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=Hr(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 Kt;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=Hr(s,d)))});else{if(s.issues.length===d)continue;c||(c=Hr(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 Kt;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=qr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Fr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),yo=x("$ZodString",(t,e)=>{ne.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Hf(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}}),ue=x("$ZodStringFormat",(t,e)=>{_o.init(t,e),yo.init(t,e)}),rc=x("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=$f),ue.init(t,e)}),nc=x("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=Ya(n))}else e.pattern??(e.pattern=Ya());ue.init(t,e)}),oc=x("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Pf),ue.init(t,e)}),sc=x("$ZodURL",(t,e)=>{ue.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:Af.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})}}}),ic=x("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Rf()),ue.init(t,e)}),ac=x("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Ef),ue.init(t,e)}),cc=x("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=vf),ue.init(t,e)}),uc=x("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Sf),ue.init(t,e)}),lc=x("$ZodULID",(t,e)=>{e.pattern??(e.pattern=kf),ue.init(t,e)}),dc=x("$ZodXID",(t,e)=>{e.pattern??(e.pattern=bf),ue.init(t,e)}),pc=x("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=wf),ue.init(t,e)}),xm=x("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Uf(e)),ue.init(t,e)}),vm=x("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Df),ue.init(t,e)}),Sm=x("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Zf(e)),ue.init(t,e)}),km=x("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Tf),ue.init(t,e)}),fc=x("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Of),ue.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),mc=x("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Cf),ue.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})}}}),hc=x("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=If),ue.init(t,e)}),gc=x("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=zf),ue.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 bm(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var _c=x("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Nf),ue.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{bm(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function jk(t){if(!Xa.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return bm(r)}var yc=x("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=Xa),ue.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{jk(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),xc=x("$ZodE164",(t,e)=>{e.pattern??(e.pattern=jf),ue.init(t,e)});function Mk(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 vc=x("$ZodJWT",(t,e)=>{ue.init(t,e),t._zod.check=r=>{Mk(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Ds=x("$ZodNumber",(t,e)=>{ne.init(t,e),t._zod.pattern=t._zod.bag.pattern??Ff,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}}),Sc=x("$ZodNumber",(t,e)=>{Yf.init(t,e),Ds.init(t,e)}),kc=x("$ZodBoolean",(t,e)=>{ne.init(t,e),t._zod.pattern=Bf,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 bc=x("$ZodNull",(t,e)=>{ne.init(t,e),t._zod.pattern=Vf,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 wc=x("$ZodUnknown",(t,e)=>{ne.init(t,e),t._zod.parse=r=>r}),Ec=x("$ZodNever",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function lm(t,e,r){t.issues.length&&e.issues.push(...It(r,t.issues)),e.value[r]=t.value}var Tc=x("$ZodArray",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>lm(u,r,i))):lm(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Ms(t,e,r){t.issues.length&&e.issues.push(...It(r,t.issues)),e.value[r]=t.value}function dm(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(...It(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Ls=x("$ZodObject",(t,e)=>{ne.init(t,e);let r=po(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof ne))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=Za(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});ce(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 js(["shape","payload","ctx"]),m=r.value,p=y=>{let S=Ur(y);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),g=0;for(let y of m.keys)h[y]=`key_${g++}`;f.write("const newResult = {}");for(let y of m.keys)if(m.optionalKeys.has(y)){let S=h[y];f.write(`const ${S} = ${p(y)};`);let E=Ur(y);f.write(`
29
+ if (${S}.issues.length) {
30
30
  if (input[${E}] === undefined) {
31
31
  if (${E} in input) {
32
32
  newResult[${E}] = undefined;
33
33
  }
34
34
  } else {
35
35
  payload.issues = payload.issues.concat(
36
- ${k}.issues.map((iss) => ({
36
+ ${S}.issues.map((iss) => ({
37
37
  ...iss,
38
38
  path: iss.path ? [${E}, ...iss.path] : [${E}],
39
39
  }))
40
40
  );
41
41
  }
42
- } else if (${k}.value === undefined) {
42
+ } else if (${S}.value === undefined) {
43
43
  if (${E} in input) newResult[${E}] = undefined;
44
44
  } else {
45
- newResult[${E}] = ${k}.value;
45
+ newResult[${E}] = ${S}.value;
46
46
  }
47
- `)}else{let k=h[y];f.write(`const ${k} = ${p(y)};`),f.write(`
48
- if (${k}.issues.length) payload.issues = payload.issues.concat(${k}.issues.map(iss => ({
47
+ `)}else{let S=h[y];f.write(`const ${S} = ${p(y)};`),f.write(`
48
+ if (${S}.issues.length) payload.issues = payload.issues.concat(${S}.issues.map(iss => ({
49
49
  ...iss,
50
- path: iss.path ? [${Lr(y)}, ...iss.path] : [${Lr(y)}]
51
- })));`),f.write(`newResult[${Lr(y)}] = ${k}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let v=f.compile();return(y,k)=>v(d,y,k)},o,s=vn,i=!Rs.jitless,c=i&&Ma.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 k=l.shape;for(let E of l.keys){let C=k[E],ye=C._zod.run({value:m[E],issues:[]},f),Ae=C._zod.optin==="optional"&&C._zod.optout==="optional";ye instanceof Promise?p.push(ye.then(Ze=>Ae?cm(Ze,d,E,m):js(Ze,d,E))):Ae?cm(ye,d,E,m):js(ye,d,E)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,v=u._zod,y=v.def.type;for(let k of Object.keys(m)){if(g.has(k))continue;if(y==="never"){h.push(k);continue}let E=v.run({value:m[k],issues:[]},f);E instanceof Promise?p.push(E.then(C=>js(C,d,k))):js(E,d,k)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function um(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>gt(s,n,rt())))}),e}var Ls=x("$ZodUnion",(t,e)=>{ne.init(t,e),ae(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ae(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ae(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ae(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>fo(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=>um(i,r,t,n)):um(s,r,t,n)}}),Tc=x("$ZodDiscriminatedUnion",(t,e)=>{Ls.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=lo(()=>{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(!vn(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),$c=x("$ZodIntersection",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>lm(r,c,u)):lm(r,s,i)}});function ec(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(kn(t)&&kn(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=ec(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=ec(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 lm(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Zr(t))return t;let n=ec(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 Pc=x("$ZodRecord",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!kn(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(...Ct(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Ct(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>gt(u,n,rt())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Ct(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Ct(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Rc=x("$ZodEnum",(t,e)=>{ne.init(t,e);let r=uo(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Da.has(typeof n)).map(n=>typeof n=="string"?rr(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}}),Oc=x("$ZodLiteral",(t,e)=>{ne.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?rr(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 Cc=x("$ZodTransform",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new Bt;return r.value=o,r}}),Ic=x("$ZodOptional",(t,e)=>{ne.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${fo(r.source)})?$`):void 0}),t._zod.parse=(r,n)=>e.innerType._zod.optin==="optional"?e.innerType._zod.run(r,n):r.value===void 0?r:e.innerType._zod.run(r,n)}),zc=x("$ZodNullable",(t,e)=>{ne.init(t,e),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${fo(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)}),Nc=x("$ZodDefault",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>dm(s,e)):dm(o,e)}});function dm(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Ac=x("$ZodPrefault",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),jc=x("$ZodNonOptional",(t,e)=>{ne.init(t,e),ae(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>pm(s,t)):pm(o,t)}});function pm(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 Mc=x("$ZodCatch",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>gt(i,n,rt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>gt(s,n,rt()))},input:r.value}),r.issues=[]),r)}});var Dc=x("$ZodPipe",(t,e)=>{ne.init(t,e),ae(t._zod,"values",()=>e.in._zod.values),ae(t._zod,"optin",()=>e.in._zod.optin),ae(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>fm(s,e,n)):fm(o,e,n)}});function fm(t,e,r){return Zr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Lc=x("$ZodReadonly",(t,e)=>{ne.init(t,e),ae(t._zod,"propValues",()=>e.innerType._zod.propValues),ae(t._zod,"values",()=>e.innerType._zod.values),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(mm):mm(o)}});function mm(t){return t.value=Object.freeze(t.value),t}var Zc=x("$ZodCustom",(t,e)=>{Re.init(t,e),ne.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>hm(s,r,n,t));hm(o,r,n,t)}});function hm(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(Ua(o))}}var AS=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},jS=()=>{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 ${AS(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Is(n.values[0])}`:`Invalid option: expected one of ${Os(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":""}: ${Os(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 km(){return{localeError:jS()}}var yo=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 Sm(){return new yo}var nr=Sm();function Uc(t,e){return new t({type:"string",...j(e)})}function Hc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Zs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function qc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function Fc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function Bc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function Vc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function Kc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function Jc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function Wc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function Gc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function Yc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function Xc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function Qc(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function eu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function tu(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function ru(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function nu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function ou(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function su(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function iu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function bm(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function wm(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function Em(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function Tm(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function uu(t,e){return new t({type:"number",checks:[],...j(e)})}function lu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function du(t,e){return new t({type:"boolean",...j(e)})}function pu(t,e){return new t({type:"null",...j(e)})}function fu(t){return new t({type:"unknown"})}function mu(t,e){return new t({type:"never",...j(e)})}function Us(t,e){return new Xa({check:"less_than",...j(e),value:t,inclusive:!1})}function xo(t,e){return new Xa({check:"less_than",...j(e),value:t,inclusive:!0})}function Hs(t,e){return new Qa({check:"greater_than",...j(e),value:t,inclusive:!1})}function vo(t,e){return new Qa({check:"greater_than",...j(e),value:t,inclusive:!0})}function qs(t,e){return new Kf({check:"multiple_of",...j(e),value:t})}function Fs(t,e){return new Wf({check:"max_length",...j(e),maximum:t})}function Sn(t,e){return new Gf({check:"min_length",...j(e),minimum:t})}function Bs(t,e){return new Yf({check:"length_equals",...j(e),length:t})}function hu(t,e){return new Xf({check:"string_format",format:"regex",...j(e),pattern:t})}function gu(t){return new Qf({check:"string_format",format:"lowercase",...j(t)})}function _u(t){return new em({check:"string_format",format:"uppercase",...j(t)})}function yu(t,e){return new tm({check:"string_format",format:"includes",...j(e),includes:t})}function xu(t,e){return new rm({check:"string_format",format:"starts_with",...j(e),prefix:t})}function vu(t,e){return new nm({check:"string_format",format:"ends_with",...j(e),suffix:t})}function qr(t){return new om({check:"overwrite",tx:t})}function ku(t){return qr(e=>e.normalize(t))}function Su(){return qr(t=>t.trim())}function bu(){return qr(t=>t.toLowerCase())}function wu(){return qr(t=>t.toUpperCase())}function $m(t,e,r){return new t({type:"array",element:e,...j(r)})}function Eu(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Tu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var Vs=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??nr,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:v,patterns:y,contentEncoding:k}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),v&&(p.format=s[v]??v,p.format===""&&delete p.format),k&&(p.contentEncoding=k),y&&y.size>0){let E=[...y];E.length===1?p.pattern=E[0].source:E.length>1&&(a.schema.allOf=[...E.map(C=>({...this.target==="draft-7"?{type:"string"}:{},pattern:C.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:v,multipleOf:y,exclusiveMaximum:k,exclusiveMinimum:E}=e._zod.bag;typeof v=="string"&&v.includes("int")?p.type="integer":p.type="number",typeof E=="number"&&(p.exclusiveMinimum=E),typeof h=="number"&&(p.minimum=h,typeof E=="number"&&(E>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof k=="number"&&(p.exclusiveMaximum=k),typeof g=="number"&&(p.maximum=g,typeof k=="number"&&(k<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof y=="number"&&(p.multipleOf=y);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 y in h)p.properties[y]=this.process(h[y],{...d,path:[...d.path,"properties",y]});let g=new Set(Object.keys(h)),v=new Set([...g].filter(y=>{let k=o.shape[y]._zod;return this.io==="input"?k.optin===void 0:k.optout===void 0}));v.size>0&&(p.required=Array.from(v)),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]}),v=k=>"allOf"in k&&Object.keys(k).length===1,y=[...v(h)?h.allOf:[h],...v(g)?g.allOf:[g]];p.allOf=y;break}case"tuple":{let p=m;p.type="array";let h=o.items.map((y,k)=>this.process(y,{...d,path:[...d.path,"prefixItems",k]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let y=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=y:p.additionalItems=y}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:v}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof v=="number"&&(p.maxItems=v);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=uo(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:v,mime:y}=e._zod.bag;g!==void 0&&(h.minLength=g),v!==void 0&&(h.maxLength=v),y?y.length===1?(h.contentMediaType=y[0],Object.assign(p,h)):p.anyOf=y.map(k=>({...h,contentMediaType:k})):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"&&be(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(y=>y);if(h)return{ref:g(h)};let v=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=v,{defId:v,ref:`${g("__shared")}#/${d}/${v}`}}if(l[1]===o)return{ref:"#"};let 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>
50
+ path: iss.path ? [${Ur(y)}, ...iss.path] : [${Ur(y)}]
51
+ })));`),f.write(`newResult[${Ur(y)}] = ${S}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let v=f.compile();return(y,S)=>v(d,y,S)},o,s=kn,i=!Os.jitless,c=i&&Da.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 S=l.shape;for(let E of l.keys){let C=S[E],xe=C._zod.run({value:m[E],issues:[]},f),Ae=C._zod.optin==="optional"&&C._zod.optout==="optional";xe instanceof Promise?p.push(xe.then(Ze=>Ae?dm(Ze,d,E,m):Ms(Ze,d,E))):Ae?dm(xe,d,E,m):Ms(xe,d,E)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,v=u._zod,y=v.def.type;for(let S of Object.keys(m)){if(g.has(S))continue;if(y==="never"){h.push(S);continue}let E=v.run({value:m[S],issues:[]},f);E instanceof Promise?p.push(E.then(C=>Ms(C,d,S))):Ms(E,d,S)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function pm(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>_t(s,n,rt())))}),e}var Zs=x("$ZodUnion",(t,e)=>{ne.init(t,e),ce(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ce(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ce(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ce(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=>mo(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=>pm(i,r,t,n)):pm(s,r,t,n)}}),$c=x("$ZodDiscriminatedUnion",(t,e)=>{Zs.init(t,e);let r=t._zod.parse;ce(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=po(()=>{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(!kn(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)}}),Pc=x("$ZodIntersection",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>fm(r,c,u)):fm(r,s,i)}});function tc(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(bn(t)&&bn(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=tc(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=tc(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 fm(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Hr(t))return t;let n=tc(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 Rc=x("$ZodRecord",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!bn(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(...It(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...It(c,u.issues)),r.value[c]=u.value)}let a;for(let c in o)i.has(c)||(a=a??[],a.push(c));a&&a.length>0&&r.issues.push({code:"unrecognized_keys",input:o,inst:t,keys:a})}else{r.value={};for(let i of Reflect.ownKeys(o)){if(i==="__proto__")continue;let a=e.keyType._zod.run({value:i,issues:[]},n);if(a instanceof Promise)throw new Error("Async schemas not supported in object keys currently");if(a.issues.length){r.issues.push({origin:"record",code:"invalid_key",issues:a.issues.map(u=>_t(u,n,rt())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...It(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...It(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Oc=x("$ZodEnum",(t,e)=>{ne.init(t,e);let r=lo(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>La.has(typeof n)).map(n=>typeof n=="string"?sr(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}}),Cc=x("$ZodLiteral",(t,e)=>{ne.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?sr(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 Ic=x("$ZodTransform",(t,e)=>{ne.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new Kt;return r.value=o,r}}),zc=x("$ZodOptional",(t,e)=>{ne.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ce(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ce(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${mo(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)}),Nc=x("$ZodNullable",(t,e)=>{ne.init(t,e),ce(t._zod,"optin",()=>e.innerType._zod.optin),ce(t._zod,"optout",()=>e.innerType._zod.optout),ce(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${mo(r.source)}|null)$`):void 0}),ce(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)}),Ac=x("$ZodDefault",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ce(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=>mm(s,e)):mm(o,e)}});function mm(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var jc=x("$ZodPrefault",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ce(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))}),Mc=x("$ZodNonOptional",(t,e)=>{ne.init(t,e),ce(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=>hm(s,t)):hm(o,t)}});function hm(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 Dc=x("$ZodCatch",(t,e)=>{ne.init(t,e),t._zod.optin="optional",ce(t._zod,"optout",()=>e.innerType._zod.optout),ce(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>_t(i,n,rt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>_t(s,n,rt()))},input:r.value}),r.issues=[]),r)}});var Lc=x("$ZodPipe",(t,e)=>{ne.init(t,e),ce(t._zod,"values",()=>e.in._zod.values),ce(t._zod,"optin",()=>e.in._zod.optin),ce(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=>gm(s,e,n)):gm(o,e,n)}});function gm(t,e,r){return Hr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Zc=x("$ZodReadonly",(t,e)=>{ne.init(t,e),ce(t._zod,"propValues",()=>e.innerType._zod.propValues),ce(t._zod,"values",()=>e.innerType._zod.values),ce(t._zod,"optin",()=>e.innerType._zod.optin),ce(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(_m):_m(o)}});function _m(t){return t.value=Object.freeze(t.value),t}var Uc=x("$ZodCustom",(t,e)=>{Re.init(t,e),ne.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>ym(s,r,n,t));ym(o,r,n,t)}});function ym(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(Ha(o))}}var Dk=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},Lk=()=>{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 ${Dk(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${zs(n.values[0])}`:`Invalid option: expected one of ${Cs(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":""}: ${Cs(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 wm(){return{localeError:Lk()}}var xo=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 Em(){return new xo}var ir=Em();function Hc(t,e){return new t({type:"string",...j(e)})}function qc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Us(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function Fc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function Bc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function Vc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function Kc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function Jc(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function Wc(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function Gc(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function Yc(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function Xc(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function Qc(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function eu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function tu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function ru(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function nu(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function ou(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function su(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function iu(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function uu(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function Tm(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function $m(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function Pm(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function Rm(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function lu(t,e){return new t({type:"number",checks:[],...j(e)})}function du(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function pu(t,e){return new t({type:"boolean",...j(e)})}function fu(t,e){return new t({type:"null",...j(e)})}function mu(t){return new t({type:"unknown"})}function hu(t,e){return new t({type:"never",...j(e)})}function Hs(t,e){return new Qa({check:"less_than",...j(e),value:t,inclusive:!1})}function vo(t,e){return new Qa({check:"less_than",...j(e),value:t,inclusive:!0})}function qs(t,e){return new ec({check:"greater_than",...j(e),value:t,inclusive:!1})}function So(t,e){return new ec({check:"greater_than",...j(e),value:t,inclusive:!0})}function Fs(t,e){return new Gf({check:"multiple_of",...j(e),value:t})}function Bs(t,e){return new Xf({check:"max_length",...j(e),maximum:t})}function wn(t,e){return new Qf({check:"min_length",...j(e),minimum:t})}function Vs(t,e){return new em({check:"length_equals",...j(e),length:t})}function gu(t,e){return new tm({check:"string_format",format:"regex",...j(e),pattern:t})}function _u(t){return new rm({check:"string_format",format:"lowercase",...j(t)})}function yu(t){return new nm({check:"string_format",format:"uppercase",...j(t)})}function xu(t,e){return new om({check:"string_format",format:"includes",...j(e),includes:t})}function vu(t,e){return new sm({check:"string_format",format:"starts_with",...j(e),prefix:t})}function Su(t,e){return new im({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Br(t){return new am({check:"overwrite",tx:t})}function ku(t){return Br(e=>e.normalize(t))}function bu(){return Br(t=>t.trim())}function wu(){return Br(t=>t.toLowerCase())}function Eu(){return Br(t=>t.toUpperCase())}function Om(t,e,r){return new t({type:"array",element:e,...j(r)})}function Tu(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function $u(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var Ks=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??ir,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:v,patterns:y,contentEncoding:S}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),v&&(p.format=s[v]??v,p.format===""&&delete p.format),S&&(p.contentEncoding=S),y&&y.size>0){let E=[...y];E.length===1?p.pattern=E[0].source:E.length>1&&(a.schema.allOf=[...E.map(C=>({...this.target==="draft-7"?{type:"string"}:{},pattern:C.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:v,multipleOf:y,exclusiveMaximum:S,exclusiveMinimum:E}=e._zod.bag;typeof v=="string"&&v.includes("int")?p.type="integer":p.type="number",typeof E=="number"&&(p.exclusiveMinimum=E),typeof h=="number"&&(p.minimum=h,typeof E=="number"&&(E>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof S=="number"&&(p.exclusiveMaximum=S),typeof g=="number"&&(p.maximum=g,typeof S=="number"&&(S<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof y=="number"&&(p.multipleOf=y);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 y in h)p.properties[y]=this.process(h[y],{...d,path:[...d.path,"properties",y]});let g=new Set(Object.keys(h)),v=new Set([...g].filter(y=>{let S=o.shape[y]._zod;return this.io==="input"?S.optin===void 0:S.optout===void 0}));v.size>0&&(p.required=Array.from(v)),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]}),v=S=>"allOf"in S&&Object.keys(S).length===1,y=[...v(h)?h.allOf:[h],...v(g)?g.allOf:[g]];p.allOf=y;break}case"tuple":{let p=m;p.type="array";let h=o.items.map((y,S)=>this.process(y,{...d,path:[...d.path,"prefixItems",S]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let y=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=y:p.additionalItems=y}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:v}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof v=="number"&&(p.maxItems=v);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=lo(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:v,mime:y}=e._zod.bag;g!==void 0&&(h.minLength=g),v!==void 0&&(h.maxLength=v),y?y.length===1?(h.contentMediaType=y[0],Object.assign(p,h)):p.anyOf=y.map(S=>({...h,contentMediaType:S})):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"&&we(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(y=>y);if(h)return{ref:g(h)};let v=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=v,{defId:v,ref:`${g("__shared")}#/${d}/${v}`}}if(l[1]===o)return{ref:"#"};let 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>
52
52
 
53
- 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 $u(t,e){if(t instanceof yo){let n=new Vs(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 Vs(e);return r.process(t),r.emit(t,e)}function be(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 be(o.element,r);case"object":{for(let s in o.shape)if(be(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(be(s,r))return!0;return!1}case"intersection":return be(o.left,r)||be(o.right,r);case"tuple":{for(let s of o.items)if(be(s,r))return!0;return!!(o.rest&&be(o.rest,r))}case"record":return be(o.keyType,r)||be(o.valueType,r);case"map":return be(o.keyType,r)||be(o.valueType,r);case"set":return be(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return be(o.innerType,r);case"lazy":return be(o.getter(),r);case"default":return be(o.innerType,r);case"prefault":return be(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return be(o.in,r)||be(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var _b=x("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ne.init(t,e),t.def=e,t.parse=(r,n)=>Ba(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Ur(t,r,n),t.parseAsync=async(r,n)=>Ka(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Hr(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>nt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var yb=x("ZodMiniObject",(t,e)=>{Ds.init(t,e),_b.init(t,e),J.defineLazy(t,"shape",()=>e.shape)});function Pu(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new yb(r)}function at(t){return!!t._zod}function Br(t){let e=Object.values(t);if(e.length===0)return Pu({});let r=e.every(at),n=e.every(o=>!at(o));if(r)return Pu(t);if(n)return Ca(t);throw new Error("Mixed Zod versions detected in object shape.")}function or(t,e){return at(t)?Ur(t,e):t.safeParse(e)}async function Ks(t,e){return at(t)?await Hr(t,e):await t.safeParseAsync(e)}function sr(t){if(!t)return;let e;if(at(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function bn(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 Br(t)}}if(at(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 Js(t){if(t&&typeof t=="object"){if("message"in t&&typeof t.message=="string")return t.message;if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0){let e=t.issues[0];if(e&&typeof e=="object"&&"message"in e)return String(e.message)}try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function Rm(t){return t.description}function Om(t){if(at(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Ws(t){if(at(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 ko={};Ke(ko,{ZodISODate:()=>Im,ZodISODateTime:()=>Cm,ZodISODuration:()=>Nm,ZodISOTime:()=>zm,date:()=>Ou,datetime:()=>Ru,duration:()=>Iu,time:()=>Cu});var Cm=x("ZodISODateTime",(t,e)=>{gm.init(t,e),fe.init(t,e)});function Ru(t){return bm(Cm,t)}var Im=x("ZodISODate",(t,e)=>{_m.init(t,e),fe.init(t,e)});function Ou(t){return wm(Im,t)}var zm=x("ZodISOTime",(t,e)=>{ym.init(t,e),fe.init(t,e)});function Cu(t){return Em(zm,t)}var Nm=x("ZodISODuration",(t,e)=>{xm.init(t,e),fe.init(t,e)});function Iu(t){return Tm(Nm,t)}var Am=(t,e)=>{zs.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>qa(t,r)},flatten:{value:r=>Ha(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},gN=x("ZodError",Am),So=x("ZodError",Am,{Parent:Error});var jm=Fa(So),Mm=Va(So),Dm=Ja(So),Lm=Wa(So);var _e=x("ZodType",(t,e)=>(ne.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>nt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>jm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Dm(t,r,n),t.parseAsync=async(r,n)=>Mm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Lm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(hw(r,n)),t.superRefine=r=>t.check(gw(r)),t.overwrite=r=>t.check(qr(r)),t.optional=()=>he(t),t.nullable=()=>Hm(t),t.nullish=()=>he(Hm(t)),t.nonoptional=r=>cw(t,r),t.array=()=>W(t),t.or=r=>le([t,r]),t.and=r=>Ys(t,r),t.transform=r=>Nu(t,Jm(r)),t.default=r=>sw(t,r),t.prefault=r=>aw(t,r),t.catch=r=>lw(t,r),t.pipe=r=>Nu(t,r),t.readonly=()=>fw(t),t.describe=r=>{let n=t.clone();return nr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return nr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return nr.get(t);let n=t.clone();return nr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),qm=x("_ZodString",(t,e)=>{_o.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(hu(...n)),t.includes=(...n)=>t.check(yu(...n)),t.startsWith=(...n)=>t.check(xu(...n)),t.endsWith=(...n)=>t.check(vu(...n)),t.min=(...n)=>t.check(Sn(...n)),t.max=(...n)=>t.check(Fs(...n)),t.length=(...n)=>t.check(Bs(...n)),t.nonempty=(...n)=>t.check(Sn(1,...n)),t.lowercase=n=>t.check(gu(n)),t.uppercase=n=>t.check(_u(n)),t.trim=()=>t.check(Su()),t.normalize=(...n)=>t.check(ku(...n)),t.toLowerCase=()=>t.check(bu()),t.toUpperCase=()=>t.check(wu())}),$b=x("ZodString",(t,e)=>{_o.init(t,e),qm.init(t,e),t.email=r=>t.check(Hc(Pb,r)),t.url=r=>t.check(Kc(Rb,r)),t.jwt=r=>t.check(cu(Fb,r)),t.emoji=r=>t.check(Jc(Ob,r)),t.guid=r=>t.check(Zs(Zm,r)),t.uuid=r=>t.check(qc(Gs,r)),t.uuidv4=r=>t.check(Fc(Gs,r)),t.uuidv6=r=>t.check(Bc(Gs,r)),t.uuidv7=r=>t.check(Vc(Gs,r)),t.nanoid=r=>t.check(Wc(Cb,r)),t.guid=r=>t.check(Zs(Zm,r)),t.cuid=r=>t.check(Gc(Ib,r)),t.cuid2=r=>t.check(Yc(zb,r)),t.ulid=r=>t.check(Xc(Nb,r)),t.base64=r=>t.check(su(Ub,r)),t.base64url=r=>t.check(iu(Hb,r)),t.xid=r=>t.check(Qc(Ab,r)),t.ksuid=r=>t.check(eu(jb,r)),t.ipv4=r=>t.check(tu(Mb,r)),t.ipv6=r=>t.check(ru(Db,r)),t.cidrv4=r=>t.check(nu(Lb,r)),t.cidrv6=r=>t.check(ou(Zb,r)),t.e164=r=>t.check(au(qb,r)),t.datetime=r=>t.check(Ru(r)),t.date=r=>t.check(Ou(r)),t.time=r=>t.check(Cu(r)),t.duration=r=>t.check(Iu(r))});function _(t){return Uc($b,t)}var fe=x("ZodStringFormat",(t,e)=>{ce.init(t,e),qm.init(t,e)}),Pb=x("ZodEmail",(t,e)=>{nc.init(t,e),fe.init(t,e)});var Zm=x("ZodGUID",(t,e)=>{tc.init(t,e),fe.init(t,e)});var Gs=x("ZodUUID",(t,e)=>{rc.init(t,e),fe.init(t,e)});var Rb=x("ZodURL",(t,e)=>{oc.init(t,e),fe.init(t,e)});var Ob=x("ZodEmoji",(t,e)=>{sc.init(t,e),fe.init(t,e)});var Cb=x("ZodNanoID",(t,e)=>{ic.init(t,e),fe.init(t,e)});var Ib=x("ZodCUID",(t,e)=>{ac.init(t,e),fe.init(t,e)});var zb=x("ZodCUID2",(t,e)=>{cc.init(t,e),fe.init(t,e)});var Nb=x("ZodULID",(t,e)=>{uc.init(t,e),fe.init(t,e)});var Ab=x("ZodXID",(t,e)=>{lc.init(t,e),fe.init(t,e)});var jb=x("ZodKSUID",(t,e)=>{dc.init(t,e),fe.init(t,e)});var Mb=x("ZodIPv4",(t,e)=>{pc.init(t,e),fe.init(t,e)});var Db=x("ZodIPv6",(t,e)=>{fc.init(t,e),fe.init(t,e)});var Lb=x("ZodCIDRv4",(t,e)=>{mc.init(t,e),fe.init(t,e)});var Zb=x("ZodCIDRv6",(t,e)=>{hc.init(t,e),fe.init(t,e)});var Ub=x("ZodBase64",(t,e)=>{gc.init(t,e),fe.init(t,e)});var Hb=x("ZodBase64URL",(t,e)=>{_c.init(t,e),fe.init(t,e)});var qb=x("ZodE164",(t,e)=>{yc.init(t,e),fe.init(t,e)});var Fb=x("ZodJWT",(t,e)=>{xc.init(t,e),fe.init(t,e)});var Fm=x("ZodNumber",(t,e)=>{Ms.init(t,e),_e.init(t,e),t.gt=(n,o)=>t.check(Hs(n,o)),t.gte=(n,o)=>t.check(vo(n,o)),t.min=(n,o)=>t.check(vo(n,o)),t.lt=(n,o)=>t.check(Us(n,o)),t.lte=(n,o)=>t.check(xo(n,o)),t.max=(n,o)=>t.check(xo(n,o)),t.int=n=>t.check(Um(n)),t.safe=n=>t.check(Um(n)),t.positive=n=>t.check(Hs(0,n)),t.nonnegative=n=>t.check(vo(0,n)),t.negative=n=>t.check(Us(0,n)),t.nonpositive=n=>t.check(xo(0,n)),t.multipleOf=(n,o)=>t.check(qs(n,o)),t.step=(n,o)=>t.check(qs(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 re(t){return uu(Fm,t)}var Bb=x("ZodNumberFormat",(t,e)=>{vc.init(t,e),Fm.init(t,e)});function Um(t){return lu(Bb,t)}var Vb=x("ZodBoolean",(t,e)=>{kc.init(t,e),_e.init(t,e)});function Te(t){return du(Vb,t)}var Kb=x("ZodNull",(t,e)=>{Sc.init(t,e),_e.init(t,e)});function Bm(t){return pu(Kb,t)}var Jb=x("ZodUnknown",(t,e)=>{bc.init(t,e),_e.init(t,e)});function me(){return fu(Jb)}var Wb=x("ZodNever",(t,e)=>{wc.init(t,e),_e.init(t,e)});function Gb(t){return mu(Wb,t)}var Yb=x("ZodArray",(t,e)=>{Ec.init(t,e),_e.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Sn(r,n)),t.nonempty=r=>t.check(Sn(1,r)),t.max=(r,n)=>t.check(Fs(r,n)),t.length=(r,n)=>t.check(Bs(r,n)),t.unwrap=()=>t.element});function W(t,e){return $m(Yb,t,e)}var Vm=x("ZodObject",(t,e)=>{Ds.init(t,e),_e.init(t,e),J.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ye(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:Gb()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>J.extend(t,r),t.merge=r=>J.merge(t,r),t.pick=r=>J.pick(t,r),t.omit=r=>J.omit(t,r),t.partial=(...r)=>J.partial(Wm,t,r[0]),t.required=(...r)=>J.required(Gm,t,r[0])});function P(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new Vm(r)}function He(t,e){return new Vm({type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},catchall:me(),...J.normalizeParams(e)})}var Km=x("ZodUnion",(t,e)=>{Ls.init(t,e),_e.init(t,e),t.options=e.options});function le(t,e){return new Km({type:"union",options:t,...J.normalizeParams(e)})}var Xb=x("ZodDiscriminatedUnion",(t,e)=>{Km.init(t,e),Tc.init(t,e)});function Au(t,e,r){return new Xb({type:"union",options:e,discriminator:t,...J.normalizeParams(r)})}var Qb=x("ZodIntersection",(t,e)=>{$c.init(t,e),_e.init(t,e)});function Ys(t,e){return new Qb({type:"intersection",left:t,right:e})}var ew=x("ZodRecord",(t,e)=>{Pc.init(t,e),_e.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function ue(t,e,r){return new ew({type:"record",keyType:t,valueType:e,...J.normalizeParams(r)})}var zu=x("ZodEnum",(t,e)=>{Rc.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 zu({...e,checks:[],...J.normalizeParams(o),entries:s})},t.exclude=(n,o)=>{let s={...e.entries};for(let i of n)if(r.has(i))delete s[i];else throw new Error(`Key ${i} not found in enum`);return new zu({...e,checks:[],...J.normalizeParams(o),entries:s})}});function Ye(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new zu({type:"enum",entries:r,...J.normalizeParams(e)})}var tw=x("ZodLiteral",(t,e)=>{Oc.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 I(t,e){return new tw({type:"literal",values:Array.isArray(t)?t:[t],...J.normalizeParams(e)})}var rw=x("ZodTransform",(t,e)=>{Cc.init(t,e),_e.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(J.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(J.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 Jm(t){return new rw({type:"transform",transform:t})}var Wm=x("ZodOptional",(t,e)=>{Ic.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function he(t){return new Wm({type:"optional",innerType:t})}var nw=x("ZodNullable",(t,e)=>{zc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Hm(t){return new nw({type:"nullable",innerType:t})}var ow=x("ZodDefault",(t,e)=>{Nc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function sw(t,e){return new ow({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var iw=x("ZodPrefault",(t,e)=>{Ac.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function aw(t,e){return new iw({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Gm=x("ZodNonOptional",(t,e)=>{jc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function cw(t,e){return new Gm({type:"nonoptional",innerType:t,...J.normalizeParams(e)})}var uw=x("ZodCatch",(t,e)=>{Mc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function lw(t,e){return new uw({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var dw=x("ZodPipe",(t,e)=>{Dc.init(t,e),_e.init(t,e),t.in=e.in,t.out=e.out});function Nu(t,e){return new dw({type:"pipe",in:t,out:e})}var pw=x("ZodReadonly",(t,e)=>{Lc.init(t,e),_e.init(t,e)});function fw(t){return new pw({type:"readonly",innerType:t})}var Ym=x("ZodCustom",(t,e)=>{Zc.init(t,e),_e.init(t,e)});function mw(t){let e=new Re({check:"custom"});return e._zod.check=t,e}function Xm(t,e){return Eu(Ym,t??(()=>!0),e)}function hw(t,e={}){return Tu(Ym,t,e)}function gw(t){let e=mw(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(J.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(J.issue(o))}},t(r.value,r)));return e}function ju(t,e){return Nu(Jm(t),e)}rt(km());var Du="2025-11-25";var Qm=[Du,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],ir="io.modelcontextprotocol/related-task",Qs="2.0",we=Xm(t=>t!==null&&(typeof t=="object"||typeof t=="function")),eh=le([_(),re().int()]),th=_(),ON=He({ttl:re().optional(),pollInterval:re().optional()}),_w=P({ttl:re().optional()}),yw=P({taskId:_()}),Lu=He({progressToken:eh.optional(),[ir]:yw.optional()}),ot=P({_meta:Lu.optional()}),bo=ot.extend({task:_w.optional()}),rh=t=>bo.safeParse(t).success,Oe=P({method:_(),params:ot.loose().optional()}),ct=P({_meta:Lu.optional()}),ut=P({method:_(),params:ct.loose().optional()}),Ce=He({_meta:Lu.optional()}),ei=le([_(),re().int()]),nh=P({jsonrpc:I(Qs),id:ei,...Oe.shape}).strict(),Zu=t=>nh.safeParse(t).success,oh=P({jsonrpc:I(Qs),...ut.shape}).strict(),sh=t=>oh.safeParse(t).success,Uu=P({jsonrpc:I(Qs),id:ei,result:Ce}).strict(),wo=t=>Uu.safeParse(t).success;var N;(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"})(N||(N={}));var Hu=P({jsonrpc:I(Qs),id:ei.optional(),error:P({code:re().int(),message:_(),data:me().optional()})}).strict();var ih=t=>Hu.safeParse(t).success;var ah=le([nh,oh,Uu,Hu]),CN=le([Uu,Hu]),ti=Ce.strict(),xw=ct.extend({requestId:ei.optional(),reason:_().optional()}),ri=ut.extend({method:I("notifications/cancelled"),params:xw}),vw=P({src:_(),mimeType:_().optional(),sizes:W(_()).optional(),theme:Ye(["light","dark"]).optional()}),Eo=P({icons:W(vw).optional()}),wn=P({name:_(),title:_().optional()}),ch=wn.extend({...wn.shape,...Eo.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),kw=Ys(P({applyDefaults:Te().optional()}),ue(_(),me())),Sw=ju(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Ys(P({form:kw.optional(),url:we.optional()}),ue(_(),me()).optional())),bw=He({list:we.optional(),cancel:we.optional(),requests:He({sampling:He({createMessage:we.optional()}).optional(),elicitation:He({create:we.optional()}).optional()}).optional()}),ww=He({list:we.optional(),cancel:we.optional(),requests:He({tools:He({call:we.optional()}).optional()}).optional()}),Ew=P({experimental:ue(_(),we).optional(),sampling:P({context:we.optional(),tools:we.optional()}).optional(),elicitation:Sw.optional(),roots:P({listChanged:Te().optional()}).optional(),tasks:bw.optional(),extensions:ue(_(),we).optional()}),Tw=ot.extend({protocolVersion:_(),capabilities:Ew,clientInfo:ch}),qu=Oe.extend({method:I("initialize"),params:Tw});var $w=P({experimental:ue(_(),we).optional(),logging:we.optional(),completions:we.optional(),prompts:P({listChanged:Te().optional()}).optional(),resources:P({subscribe:Te().optional(),listChanged:Te().optional()}).optional(),tools:P({listChanged:Te().optional()}).optional(),tasks:ww.optional(),extensions:ue(_(),we).optional()}),Pw=Ce.extend({protocolVersion:_(),capabilities:$w,serverInfo:ch,instructions:_().optional()}),Fu=ut.extend({method:I("notifications/initialized"),params:ct.optional()});var ni=Oe.extend({method:I("ping"),params:ot.optional()}),Rw=P({progress:re(),total:he(re()),message:he(_())}),Ow=P({...ct.shape,...Rw.shape,progressToken:eh}),oi=ut.extend({method:I("notifications/progress"),params:Ow}),Cw=ot.extend({cursor:th.optional()}),To=Oe.extend({params:Cw.optional()}),$o=Ce.extend({nextCursor:th.optional()}),Iw=Ye(["working","input_required","completed","failed","cancelled"]),Po=P({taskId:_(),status:Iw,ttl:le([re(),Bm()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:he(re()),statusMessage:he(_())}),En=Ce.extend({task:Po}),zw=ct.merge(Po),Ro=ut.extend({method:I("notifications/tasks/status"),params:zw}),si=Oe.extend({method:I("tasks/get"),params:ot.extend({taskId:_()})}),ii=Ce.merge(Po),ai=Oe.extend({method:I("tasks/result"),params:ot.extend({taskId:_()})}),IN=Ce.loose(),ci=To.extend({method:I("tasks/list")}),ui=$o.extend({tasks:W(Po)}),li=Oe.extend({method:I("tasks/cancel"),params:ot.extend({taskId:_()})}),uh=Ce.merge(Po),lh=P({uri:_(),mimeType:he(_()),_meta:ue(_(),me()).optional()}),dh=lh.extend({text:_()}),Bu=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),ph=lh.extend({blob:Bu}),Oo=Ye(["user","assistant"]),Tn=P({audience:W(Oo).optional(),priority:re().min(0).max(1).optional(),lastModified:ko.datetime({offset:!0}).optional()}),fh=P({...wn.shape,...Eo.shape,uri:_(),description:he(_()),mimeType:he(_()),size:he(re()),annotations:Tn.optional(),_meta:he(He({}))}),Nw=P({...wn.shape,...Eo.shape,uriTemplate:_(),description:he(_()),mimeType:he(_()),annotations:Tn.optional(),_meta:he(He({}))}),$n=To.extend({method:I("resources/list")}),Aw=$o.extend({resources:W(fh)}),Pn=To.extend({method:I("resources/templates/list")}),jw=$o.extend({resourceTemplates:W(Nw)}),Vu=ot.extend({uri:_()}),Mw=Vu,di=Oe.extend({method:I("resources/read"),params:Mw}),Dw=Ce.extend({contents:W(le([dh,ph]))}),Lw=ut.extend({method:I("notifications/resources/list_changed"),params:ct.optional()}),Zw=Vu,Uw=Oe.extend({method:I("resources/subscribe"),params:Zw}),Hw=Vu,qw=Oe.extend({method:I("resources/unsubscribe"),params:Hw}),Fw=ct.extend({uri:_()}),Bw=ut.extend({method:I("notifications/resources/updated"),params:Fw}),Vw=P({name:_(),description:he(_()),required:he(Te())}),Kw=P({...wn.shape,...Eo.shape,description:he(_()),arguments:he(W(Vw)),_meta:he(He({}))}),Rn=To.extend({method:I("prompts/list")}),Jw=$o.extend({prompts:W(Kw)}),Ww=ot.extend({name:_(),arguments:ue(_(),_()).optional()}),pi=Oe.extend({method:I("prompts/get"),params:Ww}),Ku=P({type:I("text"),text:_(),annotations:Tn.optional(),_meta:ue(_(),me()).optional()}),Ju=P({type:I("image"),data:Bu,mimeType:_(),annotations:Tn.optional(),_meta:ue(_(),me()).optional()}),Wu=P({type:I("audio"),data:Bu,mimeType:_(),annotations:Tn.optional(),_meta:ue(_(),me()).optional()}),Gw=P({type:I("tool_use"),name:_(),id:_(),input:ue(_(),me()),_meta:ue(_(),me()).optional()}),Yw=P({type:I("resource"),resource:le([dh,ph]),annotations:Tn.optional(),_meta:ue(_(),me()).optional()}),Xw=fh.extend({type:I("resource_link")}),Gu=le([Ku,Ju,Wu,Xw,Yw]),Qw=P({role:Oo,content:Gu}),eE=Ce.extend({description:_().optional(),messages:W(Qw)}),tE=ut.extend({method:I("notifications/prompts/list_changed"),params:ct.optional()}),rE=P({title:_().optional(),readOnlyHint:Te().optional(),destructiveHint:Te().optional(),idempotentHint:Te().optional(),openWorldHint:Te().optional()}),nE=P({taskSupport:Ye(["required","optional","forbidden"]).optional()}),mh=P({...wn.shape,...Eo.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:ue(_(),we).optional(),required:W(_()).optional()}).catchall(me()),outputSchema:P({type:I("object"),properties:ue(_(),we).optional(),required:W(_()).optional()}).catchall(me()).optional(),annotations:rE.optional(),execution:nE.optional(),_meta:ue(_(),me()).optional()}),fi=To.extend({method:I("tools/list")}),oE=$o.extend({tools:W(mh)}),mi=Ce.extend({content:W(Gu).default([]),structuredContent:ue(_(),me()).optional(),isError:Te().optional()}),zN=mi.or(Ce.extend({toolResult:me()})),sE=bo.extend({name:_(),arguments:ue(_(),me()).optional()}),On=Oe.extend({method:I("tools/call"),params:sE}),iE=ut.extend({method:I("notifications/tools/list_changed"),params:ct.optional()}),NN=P({autoRefresh:Te().default(!0),debounceMs:re().int().nonnegative().default(300)}),Co=Ye(["debug","info","notice","warning","error","critical","alert","emergency"]),aE=ot.extend({level:Co}),Yu=Oe.extend({method:I("logging/setLevel"),params:aE}),cE=ct.extend({level:Co,logger:_().optional(),data:me()}),uE=ut.extend({method:I("notifications/message"),params:cE}),lE=P({name:_().optional()}),dE=P({hints:W(lE).optional(),costPriority:re().min(0).max(1).optional(),speedPriority:re().min(0).max(1).optional(),intelligencePriority:re().min(0).max(1).optional()}),pE=P({mode:Ye(["auto","required","none"]).optional()}),fE=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:W(Gu).default([]),structuredContent:P({}).loose().optional(),isError:Te().optional(),_meta:ue(_(),me()).optional()}),mE=Au("type",[Ku,Ju,Wu]),Xs=Au("type",[Ku,Ju,Wu,Gw,fE]),hE=P({role:Oo,content:le([Xs,W(Xs)]),_meta:ue(_(),me()).optional()}),gE=bo.extend({messages:W(hE),modelPreferences:dE.optional(),systemPrompt:_().optional(),includeContext:Ye(["none","thisServer","allServers"]).optional(),temperature:re().optional(),maxTokens:re().int(),stopSequences:W(_()).optional(),metadata:we.optional(),tools:W(mh).optional(),toolChoice:pE.optional()}),_E=Oe.extend({method:I("sampling/createMessage"),params:gE}),Io=Ce.extend({model:_(),stopReason:he(Ye(["endTurn","stopSequence","maxTokens"]).or(_())),role:Oo,content:mE}),Xu=Ce.extend({model:_(),stopReason:he(Ye(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Oo,content:le([Xs,W(Xs)])}),yE=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:Te().optional()}),xE=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:re().optional(),maxLength:re().optional(),format:Ye(["email","uri","date","date-time"]).optional(),default:_().optional()}),vE=P({type:Ye(["number","integer"]),title:_().optional(),description:_().optional(),minimum:re().optional(),maximum:re().optional(),default:re().optional()}),kE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:W(_()),default:_().optional()}),SE=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:W(P({const:_(),title:_()})),default:_().optional()}),bE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:W(_()),enumNames:W(_()).optional(),default:_().optional()}),wE=le([kE,SE]),EE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:re().optional(),maxItems:re().optional(),items:P({type:I("string"),enum:W(_())}),default:W(_()).optional()}),TE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:re().optional(),maxItems:re().optional(),items:P({anyOf:W(P({const:_(),title:_()}))}),default:W(_()).optional()}),$E=le([EE,TE]),PE=le([bE,wE,$E]),RE=le([PE,yE,xE,vE]),OE=bo.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:ue(_(),RE),required:W(_()).optional()})}),CE=bo.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),IE=le([OE,CE]),zE=Oe.extend({method:I("elicitation/create"),params:IE}),NE=ct.extend({elicitationId:_()}),AE=ut.extend({method:I("notifications/elicitation/complete"),params:NE}),Cn=Ce.extend({action:Ye(["accept","decline","cancel"]),content:ju(t=>t===null?void 0:t,ue(_(),le([_(),re(),Te(),W(_())])).optional())}),jE=P({type:I("ref/resource"),uri:_()});var ME=P({type:I("ref/prompt"),name:_()}),DE=ot.extend({ref:le([ME,jE]),argument:P({name:_(),value:_()}),context:P({arguments:ue(_(),_()).optional()}).optional()}),hi=Oe.extend({method:I("completion/complete"),params:DE});function hh(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function gh(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var LE=Ce.extend({completion:He({values:W(_()).max(100),total:he(re().int()),hasMore:he(Te())})}),ZE=P({uri:_().startsWith("file://"),name:_().optional(),_meta:ue(_(),me()).optional()}),UE=Oe.extend({method:I("roots/list"),params:ot.optional()}),Qu=Ce.extend({roots:W(ZE)}),HE=ut.extend({method:I("notifications/roots/list_changed"),params:ct.optional()}),AN=le([ni,qu,hi,Yu,pi,Rn,$n,Pn,di,Uw,qw,On,fi,si,ai,ci,li]),jN=le([ri,oi,Fu,HE,Ro]),MN=le([ti,Io,Xu,Cn,Qu,ii,ui,En]),DN=le([ni,_E,zE,UE,si,ai,ci,li]),LN=le([ri,oi,uE,Bw,Lw,iE,tE,Ro,AE]),ZN=le([ti,Pw,LE,eE,Jw,Aw,jw,Dw,mi,oE,ii,ui,En]),O=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===N.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Mu(o.elicitations,r)}return new t(e,r,n)}},Mu=class extends O{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(N.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function ar(t){return t==="completed"||t==="failed"||t==="cancelled"}var yh=Symbol("Let zodToJsonSchema decide on which parser to use");var _h={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"},xh=t=>typeof t=="string"?{..._h,name:t}:{..._h,...t};var vh=t=>{let e=xh(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 el(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function G(t,e,r,n,o){t[e]=r,el(t,e,n,o)}var gi=(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"?gi(e,t.currentPath):e.join("/")}}function kh(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==b.ZodAny&&(r.items=M(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 Sh(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 bh(){return{type:"boolean"}}function _i(t,e){return M(t.type._def,e)}var wh=(t,e)=>M(t.innerType._def,e);function tl(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>tl(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 qE(t,e)}}var qE=(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 Eh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function Th(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):ge(e)}function $h(t){return{type:"string",enum:Array.from(t.values)}}var FE=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Ph(t,e){let r=[M(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),M(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(FE(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let i=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:a,...c}=s;i=c}else n=void 0;o.push(i)}}),o.length?{allOf:o,...n}:void 0}function Rh(t,e){let r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}var rl,_t={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(rl===void 0&&(rl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),rl),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 yi(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":yt(r,"email",n.message,e);break;case"format:idn-email":yt(r,"idn-email",n.message,e);break;case"pattern:zod":qe(r,_t.email,n.message,e);break}break;case"url":yt(r,"uri",n.message,e);break;case"uuid":yt(r,"uuid",n.message,e);break;case"regex":qe(r,n.regex,n.message,e);break;case"cuid":qe(r,_t.cuid,n.message,e);break;case"cuid2":qe(r,_t.cuid2,n.message,e);break;case"startsWith":qe(r,RegExp(`^${nl(n.value,e)}`),n.message,e);break;case"endsWith":qe(r,RegExp(`${nl(n.value,e)}$`),n.message,e);break;case"datetime":yt(r,"date-time",n.message,e);break;case"date":yt(r,"date",n.message,e);break;case"time":yt(r,"time",n.message,e);break;case"duration":yt(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":{qe(r,RegExp(nl(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&yt(r,"ipv4",n.message,e),n.version!=="v4"&&yt(r,"ipv6",n.message,e);break}case"base64url":qe(r,_t.base64url,n.message,e);break;case"jwt":qe(r,_t.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&qe(r,_t.ipv4Cidr,n.message,e),n.version!=="v4"&&qe(r,_t.ipv6Cidr,n.message,e);break}case"emoji":qe(r,_t.emoji(),n.message,e);break;case"ulid":{qe(r,_t.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{yt(r,"binary",n.message,e);break}case"contentEncoding:base64":{G(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{qe(r,_t.base64,n.message,e);break}}break}case"nanoid":qe(r,_t.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function nl(t,e){return e.patternStrategy==="escape"?VE(t):t}var BE=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function VE(t){let e="";for(let r=0;r<t.length;r++)BE.has(t[r])||(e+="\\"),e+=t[r];return e}function yt(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 qe(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:Oh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):G(t,"pattern",Oh(e,n),r,n)}function Oh(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
53
+ 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 Pu(t,e){if(t instanceof xo){let n=new Ks(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 Ks(e);return r.process(t),r.emit(t,e)}function we(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 we(o.element,r);case"object":{for(let s in o.shape)if(we(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(we(s,r))return!0;return!1}case"intersection":return we(o.left,r)||we(o.right,r);case"tuple":{for(let s of o.items)if(we(s,r))return!0;return!!(o.rest&&we(o.rest,r))}case"record":return we(o.keyType,r)||we(o.valueType,r);case"map":return we(o.keyType,r)||we(o.valueType,r);case"set":return we(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return we(o.innerType,r);case"lazy":return we(o.getter(),r);case"default":return we(o.innerType,r);case"prefault":return we(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return we(o.in,r)||we(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var vb=x("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");ne.init(t,e),t.def=e,t.parse=(r,n)=>Va(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>qr(t,r,n),t.parseAsync=async(r,n)=>Ja(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Fr(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>nt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var Sb=x("ZodMiniObject",(t,e)=>{Ls.init(t,e),vb.init(t,e),J.defineLazy(t,"shape",()=>e.shape)});function Ru(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new Sb(r)}function at(t){return!!t._zod}function Kr(t){let e=Object.values(t);if(e.length===0)return Ru({});let r=e.every(at),n=e.every(o=>!at(o));if(r)return Ru(t);if(n)return Ia(t);throw new Error("Mixed Zod versions detected in object shape.")}function ar(t,e){return at(t)?qr(t,e):t.safeParse(e)}async function Js(t,e){return at(t)?await Fr(t,e):await t.safeParseAsync(e)}function cr(t){if(!t)return;let e;if(at(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function En(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 Kr(t)}}if(at(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 Ws(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 Im(t){return t.description}function zm(t){if(at(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function Gs(t){if(at(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 ko={};Ke(ko,{ZodISODate:()=>Am,ZodISODateTime:()=>Nm,ZodISODuration:()=>Mm,ZodISOTime:()=>jm,date:()=>Cu,datetime:()=>Ou,duration:()=>zu,time:()=>Iu});var Nm=x("ZodISODateTime",(t,e)=>{xm.init(t,e),me.init(t,e)});function Ou(t){return Tm(Nm,t)}var Am=x("ZodISODate",(t,e)=>{vm.init(t,e),me.init(t,e)});function Cu(t){return $m(Am,t)}var jm=x("ZodISOTime",(t,e)=>{Sm.init(t,e),me.init(t,e)});function Iu(t){return Pm(jm,t)}var Mm=x("ZodISODuration",(t,e)=>{km.init(t,e),me.init(t,e)});function zu(t){return Rm(Mm,t)}var Dm=(t,e)=>{Ns.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Fa(t,r)},flatten:{value:r=>qa(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},yN=x("ZodError",Dm),bo=x("ZodError",Dm,{Parent:Error});var Lm=Ba(bo),Zm=Ka(bo),Um=Wa(bo),Hm=Ga(bo);var ye=x("ZodType",(t,e)=>(ne.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>nt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>Lm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Um(t,r,n),t.parseAsync=async(r,n)=>Zm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Hm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(yw(r,n)),t.superRefine=r=>t.check(xw(r)),t.overwrite=r=>t.check(Br(r)),t.optional=()=>ge(t),t.nullable=()=>Bm(t),t.nullish=()=>ge(Bm(t)),t.nonoptional=r=>dw(t,r),t.array=()=>W(t),t.or=r=>de([t,r]),t.and=r=>Xs(t,r),t.transform=r=>Au(t,Ym(r)),t.default=r=>cw(t,r),t.prefault=r=>lw(t,r),t.catch=r=>fw(t,r),t.pipe=r=>Au(t,r),t.readonly=()=>gw(t),t.describe=r=>{let n=t.clone();return ir.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return ir.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return ir.get(t);let n=t.clone();return ir.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),Vm=x("_ZodString",(t,e)=>{yo.init(t,e),ye.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(gu(...n)),t.includes=(...n)=>t.check(xu(...n)),t.startsWith=(...n)=>t.check(vu(...n)),t.endsWith=(...n)=>t.check(Su(...n)),t.min=(...n)=>t.check(wn(...n)),t.max=(...n)=>t.check(Bs(...n)),t.length=(...n)=>t.check(Vs(...n)),t.nonempty=(...n)=>t.check(wn(1,...n)),t.lowercase=n=>t.check(_u(n)),t.uppercase=n=>t.check(yu(n)),t.trim=()=>t.check(bu()),t.normalize=(...n)=>t.check(ku(...n)),t.toLowerCase=()=>t.check(wu()),t.toUpperCase=()=>t.check(Eu())}),Ob=x("ZodString",(t,e)=>{yo.init(t,e),Vm.init(t,e),t.email=r=>t.check(qc(Cb,r)),t.url=r=>t.check(Jc(Ib,r)),t.jwt=r=>t.check(uu(Kb,r)),t.emoji=r=>t.check(Wc(zb,r)),t.guid=r=>t.check(Us(qm,r)),t.uuid=r=>t.check(Fc(Ys,r)),t.uuidv4=r=>t.check(Bc(Ys,r)),t.uuidv6=r=>t.check(Vc(Ys,r)),t.uuidv7=r=>t.check(Kc(Ys,r)),t.nanoid=r=>t.check(Gc(Nb,r)),t.guid=r=>t.check(Us(qm,r)),t.cuid=r=>t.check(Yc(Ab,r)),t.cuid2=r=>t.check(Xc(jb,r)),t.ulid=r=>t.check(Qc(Mb,r)),t.base64=r=>t.check(iu(Fb,r)),t.base64url=r=>t.check(au(Bb,r)),t.xid=r=>t.check(eu(Db,r)),t.ksuid=r=>t.check(tu(Lb,r)),t.ipv4=r=>t.check(ru(Zb,r)),t.ipv6=r=>t.check(nu(Ub,r)),t.cidrv4=r=>t.check(ou(Hb,r)),t.cidrv6=r=>t.check(su(qb,r)),t.e164=r=>t.check(cu(Vb,r)),t.datetime=r=>t.check(Ou(r)),t.date=r=>t.check(Cu(r)),t.time=r=>t.check(Iu(r)),t.duration=r=>t.check(zu(r))});function _(t){return Hc(Ob,t)}var me=x("ZodStringFormat",(t,e)=>{ue.init(t,e),Vm.init(t,e)}),Cb=x("ZodEmail",(t,e)=>{oc.init(t,e),me.init(t,e)});var qm=x("ZodGUID",(t,e)=>{rc.init(t,e),me.init(t,e)});var Ys=x("ZodUUID",(t,e)=>{nc.init(t,e),me.init(t,e)});var Ib=x("ZodURL",(t,e)=>{sc.init(t,e),me.init(t,e)});var zb=x("ZodEmoji",(t,e)=>{ic.init(t,e),me.init(t,e)});var Nb=x("ZodNanoID",(t,e)=>{ac.init(t,e),me.init(t,e)});var Ab=x("ZodCUID",(t,e)=>{cc.init(t,e),me.init(t,e)});var jb=x("ZodCUID2",(t,e)=>{uc.init(t,e),me.init(t,e)});var Mb=x("ZodULID",(t,e)=>{lc.init(t,e),me.init(t,e)});var Db=x("ZodXID",(t,e)=>{dc.init(t,e),me.init(t,e)});var Lb=x("ZodKSUID",(t,e)=>{pc.init(t,e),me.init(t,e)});var Zb=x("ZodIPv4",(t,e)=>{fc.init(t,e),me.init(t,e)});var Ub=x("ZodIPv6",(t,e)=>{mc.init(t,e),me.init(t,e)});var Hb=x("ZodCIDRv4",(t,e)=>{hc.init(t,e),me.init(t,e)});var qb=x("ZodCIDRv6",(t,e)=>{gc.init(t,e),me.init(t,e)});var Fb=x("ZodBase64",(t,e)=>{_c.init(t,e),me.init(t,e)});var Bb=x("ZodBase64URL",(t,e)=>{yc.init(t,e),me.init(t,e)});var Vb=x("ZodE164",(t,e)=>{xc.init(t,e),me.init(t,e)});var Kb=x("ZodJWT",(t,e)=>{vc.init(t,e),me.init(t,e)});var Km=x("ZodNumber",(t,e)=>{Ds.init(t,e),ye.init(t,e),t.gt=(n,o)=>t.check(qs(n,o)),t.gte=(n,o)=>t.check(So(n,o)),t.min=(n,o)=>t.check(So(n,o)),t.lt=(n,o)=>t.check(Hs(n,o)),t.lte=(n,o)=>t.check(vo(n,o)),t.max=(n,o)=>t.check(vo(n,o)),t.int=n=>t.check(Fm(n)),t.safe=n=>t.check(Fm(n)),t.positive=n=>t.check(qs(0,n)),t.nonnegative=n=>t.check(So(0,n)),t.negative=n=>t.check(Hs(0,n)),t.nonpositive=n=>t.check(vo(0,n)),t.multipleOf=(n,o)=>t.check(Fs(n,o)),t.step=(n,o)=>t.check(Fs(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 re(t){return lu(Km,t)}var Jb=x("ZodNumberFormat",(t,e)=>{Sc.init(t,e),Km.init(t,e)});function Fm(t){return du(Jb,t)}var Wb=x("ZodBoolean",(t,e)=>{kc.init(t,e),ye.init(t,e)});function $e(t){return pu(Wb,t)}var Gb=x("ZodNull",(t,e)=>{bc.init(t,e),ye.init(t,e)});function Jm(t){return fu(Gb,t)}var Yb=x("ZodUnknown",(t,e)=>{wc.init(t,e),ye.init(t,e)});function he(){return mu(Yb)}var Xb=x("ZodNever",(t,e)=>{Ec.init(t,e),ye.init(t,e)});function Qb(t){return hu(Xb,t)}var ew=x("ZodArray",(t,e)=>{Tc.init(t,e),ye.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(wn(r,n)),t.nonempty=r=>t.check(wn(1,r)),t.max=(r,n)=>t.check(Bs(r,n)),t.length=(r,n)=>t.check(Vs(r,n)),t.unwrap=()=>t.element});function W(t,e){return Om(ew,t,e)}var Wm=x("ZodObject",(t,e)=>{Ls.init(t,e),ye.init(t,e),J.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ye(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:he()}),t.loose=()=>t.clone({...t._zod.def,catchall:he()}),t.strict=()=>t.clone({...t._zod.def,catchall:Qb()}),t.strip=()=>t.clone({...t._zod.def,catchall:void 0}),t.extend=r=>J.extend(t,r),t.merge=r=>J.merge(t,r),t.pick=r=>J.pick(t,r),t.omit=r=>J.omit(t,r),t.partial=(...r)=>J.partial(Xm,t,r[0]),t.required=(...r)=>J.required(Qm,t,r[0])});function P(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new Wm(r)}function He(t,e){return new Wm({type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},catchall:he(),...J.normalizeParams(e)})}var Gm=x("ZodUnion",(t,e)=>{Zs.init(t,e),ye.init(t,e),t.options=e.options});function de(t,e){return new Gm({type:"union",options:t,...J.normalizeParams(e)})}var tw=x("ZodDiscriminatedUnion",(t,e)=>{Gm.init(t,e),$c.init(t,e)});function ju(t,e,r){return new tw({type:"union",options:e,discriminator:t,...J.normalizeParams(r)})}var rw=x("ZodIntersection",(t,e)=>{Pc.init(t,e),ye.init(t,e)});function Xs(t,e){return new rw({type:"intersection",left:t,right:e})}var nw=x("ZodRecord",(t,e)=>{Rc.init(t,e),ye.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function le(t,e,r){return new nw({type:"record",keyType:t,valueType:e,...J.normalizeParams(r)})}var Nu=x("ZodEnum",(t,e)=>{Oc.init(t,e),ye.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 Nu({...e,checks:[],...J.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 Nu({...e,checks:[],...J.normalizeParams(o),entries:s})}});function Ye(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Nu({type:"enum",entries:r,...J.normalizeParams(e)})}var ow=x("ZodLiteral",(t,e)=>{Cc.init(t,e),ye.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function I(t,e){return new ow({type:"literal",values:Array.isArray(t)?t:[t],...J.normalizeParams(e)})}var sw=x("ZodTransform",(t,e)=>{Ic.init(t,e),ye.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(J.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(J.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 Ym(t){return new sw({type:"transform",transform:t})}var Xm=x("ZodOptional",(t,e)=>{zc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ge(t){return new Xm({type:"optional",innerType:t})}var iw=x("ZodNullable",(t,e)=>{Nc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Bm(t){return new iw({type:"nullable",innerType:t})}var aw=x("ZodDefault",(t,e)=>{Ac.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function cw(t,e){return new aw({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var uw=x("ZodPrefault",(t,e)=>{jc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function lw(t,e){return new uw({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Qm=x("ZodNonOptional",(t,e)=>{Mc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType});function dw(t,e){return new Qm({type:"nonoptional",innerType:t,...J.normalizeParams(e)})}var pw=x("ZodCatch",(t,e)=>{Dc.init(t,e),ye.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function fw(t,e){return new pw({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var mw=x("ZodPipe",(t,e)=>{Lc.init(t,e),ye.init(t,e),t.in=e.in,t.out=e.out});function Au(t,e){return new mw({type:"pipe",in:t,out:e})}var hw=x("ZodReadonly",(t,e)=>{Zc.init(t,e),ye.init(t,e)});function gw(t){return new hw({type:"readonly",innerType:t})}var eh=x("ZodCustom",(t,e)=>{Uc.init(t,e),ye.init(t,e)});function _w(t){let e=new Re({check:"custom"});return e._zod.check=t,e}function th(t,e){return Tu(eh,t??(()=>!0),e)}function yw(t,e={}){return $u(eh,t,e)}function xw(t){let e=_w(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(J.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(J.issue(o))}},t(r.value,r)));return e}function Mu(t,e){return Au(Ym(t),e)}rt(wm());var Lu="2025-11-25";var rh=[Lu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],ur="io.modelcontextprotocol/related-task",ei="2.0",Ee=th(t=>t!==null&&(typeof t=="object"||typeof t=="function")),nh=de([_(),re().int()]),oh=_(),IN=He({ttl:re().optional(),pollInterval:re().optional()}),vw=P({ttl:re().optional()}),Sw=P({taskId:_()}),Zu=He({progressToken:nh.optional(),[ur]:Sw.optional()}),ot=P({_meta:Zu.optional()}),wo=ot.extend({task:vw.optional()}),sh=t=>wo.safeParse(t).success,Oe=P({method:_(),params:ot.loose().optional()}),ct=P({_meta:Zu.optional()}),ut=P({method:_(),params:ct.loose().optional()}),Ce=He({_meta:Zu.optional()}),ti=de([_(),re().int()]),ih=P({jsonrpc:I(ei),id:ti,...Oe.shape}).strict(),Uu=t=>ih.safeParse(t).success,ah=P({jsonrpc:I(ei),...ut.shape}).strict(),ch=t=>ah.safeParse(t).success,Hu=P({jsonrpc:I(ei),id:ti,result:Ce}).strict(),Eo=t=>Hu.safeParse(t).success;var N;(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"})(N||(N={}));var qu=P({jsonrpc:I(ei),id:ti.optional(),error:P({code:re().int(),message:_(),data:he().optional()})}).strict();var uh=t=>qu.safeParse(t).success;var lh=de([ih,ah,Hu,qu]),zN=de([Hu,qu]),ri=Ce.strict(),kw=ct.extend({requestId:ti.optional(),reason:_().optional()}),ni=ut.extend({method:I("notifications/cancelled"),params:kw}),bw=P({src:_(),mimeType:_().optional(),sizes:W(_()).optional(),theme:Ye(["light","dark"]).optional()}),To=P({icons:W(bw).optional()}),Tn=P({name:_(),title:_().optional()}),dh=Tn.extend({...Tn.shape,...To.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),ww=Xs(P({applyDefaults:$e().optional()}),le(_(),he())),Ew=Mu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Xs(P({form:ww.optional(),url:Ee.optional()}),le(_(),he()).optional())),Tw=He({list:Ee.optional(),cancel:Ee.optional(),requests:He({sampling:He({createMessage:Ee.optional()}).optional(),elicitation:He({create:Ee.optional()}).optional()}).optional()}),$w=He({list:Ee.optional(),cancel:Ee.optional(),requests:He({tools:He({call:Ee.optional()}).optional()}).optional()}),Pw=P({experimental:le(_(),Ee).optional(),sampling:P({context:Ee.optional(),tools:Ee.optional()}).optional(),elicitation:Ew.optional(),roots:P({listChanged:$e().optional()}).optional(),tasks:Tw.optional(),extensions:le(_(),Ee).optional()}),Rw=ot.extend({protocolVersion:_(),capabilities:Pw,clientInfo:dh}),Fu=Oe.extend({method:I("initialize"),params:Rw});var Ow=P({experimental:le(_(),Ee).optional(),logging:Ee.optional(),completions:Ee.optional(),prompts:P({listChanged:$e().optional()}).optional(),resources:P({subscribe:$e().optional(),listChanged:$e().optional()}).optional(),tools:P({listChanged:$e().optional()}).optional(),tasks:$w.optional(),extensions:le(_(),Ee).optional()}),Cw=Ce.extend({protocolVersion:_(),capabilities:Ow,serverInfo:dh,instructions:_().optional()}),Bu=ut.extend({method:I("notifications/initialized"),params:ct.optional()});var oi=Oe.extend({method:I("ping"),params:ot.optional()}),Iw=P({progress:re(),total:ge(re()),message:ge(_())}),zw=P({...ct.shape,...Iw.shape,progressToken:nh}),si=ut.extend({method:I("notifications/progress"),params:zw}),Nw=ot.extend({cursor:oh.optional()}),$o=Oe.extend({params:Nw.optional()}),Po=Ce.extend({nextCursor:oh.optional()}),Aw=Ye(["working","input_required","completed","failed","cancelled"]),Ro=P({taskId:_(),status:Aw,ttl:de([re(),Jm()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:ge(re()),statusMessage:ge(_())}),$n=Ce.extend({task:Ro}),jw=ct.merge(Ro),Oo=ut.extend({method:I("notifications/tasks/status"),params:jw}),ii=Oe.extend({method:I("tasks/get"),params:ot.extend({taskId:_()})}),ai=Ce.merge(Ro),ci=Oe.extend({method:I("tasks/result"),params:ot.extend({taskId:_()})}),NN=Ce.loose(),ui=$o.extend({method:I("tasks/list")}),li=Po.extend({tasks:W(Ro)}),di=Oe.extend({method:I("tasks/cancel"),params:ot.extend({taskId:_()})}),ph=Ce.merge(Ro),fh=P({uri:_(),mimeType:ge(_()),_meta:le(_(),he()).optional()}),mh=fh.extend({text:_()}),Vu=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),hh=fh.extend({blob:Vu}),Co=Ye(["user","assistant"]),Pn=P({audience:W(Co).optional(),priority:re().min(0).max(1).optional(),lastModified:ko.datetime({offset:!0}).optional()}),gh=P({...Tn.shape,...To.shape,uri:_(),description:ge(_()),mimeType:ge(_()),size:ge(re()),annotations:Pn.optional(),_meta:ge(He({}))}),Mw=P({...Tn.shape,...To.shape,uriTemplate:_(),description:ge(_()),mimeType:ge(_()),annotations:Pn.optional(),_meta:ge(He({}))}),Rn=$o.extend({method:I("resources/list")}),Dw=Po.extend({resources:W(gh)}),On=$o.extend({method:I("resources/templates/list")}),Lw=Po.extend({resourceTemplates:W(Mw)}),Ku=ot.extend({uri:_()}),Zw=Ku,pi=Oe.extend({method:I("resources/read"),params:Zw}),Uw=Ce.extend({contents:W(de([mh,hh]))}),Hw=ut.extend({method:I("notifications/resources/list_changed"),params:ct.optional()}),qw=Ku,Fw=Oe.extend({method:I("resources/subscribe"),params:qw}),Bw=Ku,Vw=Oe.extend({method:I("resources/unsubscribe"),params:Bw}),Kw=ct.extend({uri:_()}),Jw=ut.extend({method:I("notifications/resources/updated"),params:Kw}),Ww=P({name:_(),description:ge(_()),required:ge($e())}),Gw=P({...Tn.shape,...To.shape,description:ge(_()),arguments:ge(W(Ww)),_meta:ge(He({}))}),Cn=$o.extend({method:I("prompts/list")}),Yw=Po.extend({prompts:W(Gw)}),Xw=ot.extend({name:_(),arguments:le(_(),_()).optional()}),fi=Oe.extend({method:I("prompts/get"),params:Xw}),Ju=P({type:I("text"),text:_(),annotations:Pn.optional(),_meta:le(_(),he()).optional()}),Wu=P({type:I("image"),data:Vu,mimeType:_(),annotations:Pn.optional(),_meta:le(_(),he()).optional()}),Gu=P({type:I("audio"),data:Vu,mimeType:_(),annotations:Pn.optional(),_meta:le(_(),he()).optional()}),Qw=P({type:I("tool_use"),name:_(),id:_(),input:le(_(),he()),_meta:le(_(),he()).optional()}),eE=P({type:I("resource"),resource:de([mh,hh]),annotations:Pn.optional(),_meta:le(_(),he()).optional()}),tE=gh.extend({type:I("resource_link")}),Yu=de([Ju,Wu,Gu,tE,eE]),rE=P({role:Co,content:Yu}),nE=Ce.extend({description:_().optional(),messages:W(rE)}),oE=ut.extend({method:I("notifications/prompts/list_changed"),params:ct.optional()}),sE=P({title:_().optional(),readOnlyHint:$e().optional(),destructiveHint:$e().optional(),idempotentHint:$e().optional(),openWorldHint:$e().optional()}),iE=P({taskSupport:Ye(["required","optional","forbidden"]).optional()}),_h=P({...Tn.shape,...To.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:le(_(),Ee).optional(),required:W(_()).optional()}).catchall(he()),outputSchema:P({type:I("object"),properties:le(_(),Ee).optional(),required:W(_()).optional()}).catchall(he()).optional(),annotations:sE.optional(),execution:iE.optional(),_meta:le(_(),he()).optional()}),mi=$o.extend({method:I("tools/list")}),aE=Po.extend({tools:W(_h)}),hi=Ce.extend({content:W(Yu).default([]),structuredContent:le(_(),he()).optional(),isError:$e().optional()}),AN=hi.or(Ce.extend({toolResult:he()})),cE=wo.extend({name:_(),arguments:le(_(),he()).optional()}),In=Oe.extend({method:I("tools/call"),params:cE}),uE=ut.extend({method:I("notifications/tools/list_changed"),params:ct.optional()}),jN=P({autoRefresh:$e().default(!0),debounceMs:re().int().nonnegative().default(300)}),Io=Ye(["debug","info","notice","warning","error","critical","alert","emergency"]),lE=ot.extend({level:Io}),Xu=Oe.extend({method:I("logging/setLevel"),params:lE}),dE=ct.extend({level:Io,logger:_().optional(),data:he()}),pE=ut.extend({method:I("notifications/message"),params:dE}),fE=P({name:_().optional()}),mE=P({hints:W(fE).optional(),costPriority:re().min(0).max(1).optional(),speedPriority:re().min(0).max(1).optional(),intelligencePriority:re().min(0).max(1).optional()}),hE=P({mode:Ye(["auto","required","none"]).optional()}),gE=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:W(Yu).default([]),structuredContent:P({}).loose().optional(),isError:$e().optional(),_meta:le(_(),he()).optional()}),_E=ju("type",[Ju,Wu,Gu]),Qs=ju("type",[Ju,Wu,Gu,Qw,gE]),yE=P({role:Co,content:de([Qs,W(Qs)]),_meta:le(_(),he()).optional()}),xE=wo.extend({messages:W(yE),modelPreferences:mE.optional(),systemPrompt:_().optional(),includeContext:Ye(["none","thisServer","allServers"]).optional(),temperature:re().optional(),maxTokens:re().int(),stopSequences:W(_()).optional(),metadata:Ee.optional(),tools:W(_h).optional(),toolChoice:hE.optional()}),vE=Oe.extend({method:I("sampling/createMessage"),params:xE}),zo=Ce.extend({model:_(),stopReason:ge(Ye(["endTurn","stopSequence","maxTokens"]).or(_())),role:Co,content:_E}),Qu=Ce.extend({model:_(),stopReason:ge(Ye(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Co,content:de([Qs,W(Qs)])}),SE=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:$e().optional()}),kE=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:re().optional(),maxLength:re().optional(),format:Ye(["email","uri","date","date-time"]).optional(),default:_().optional()}),bE=P({type:Ye(["number","integer"]),title:_().optional(),description:_().optional(),minimum:re().optional(),maximum:re().optional(),default:re().optional()}),wE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:W(_()),default:_().optional()}),EE=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:W(P({const:_(),title:_()})),default:_().optional()}),TE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:W(_()),enumNames:W(_()).optional(),default:_().optional()}),$E=de([wE,EE]),PE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:re().optional(),maxItems:re().optional(),items:P({type:I("string"),enum:W(_())}),default:W(_()).optional()}),RE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:re().optional(),maxItems:re().optional(),items:P({anyOf:W(P({const:_(),title:_()}))}),default:W(_()).optional()}),OE=de([PE,RE]),CE=de([TE,$E,OE]),IE=de([CE,SE,kE,bE]),zE=wo.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:le(_(),IE),required:W(_()).optional()})}),NE=wo.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),AE=de([zE,NE]),jE=Oe.extend({method:I("elicitation/create"),params:AE}),ME=ct.extend({elicitationId:_()}),DE=ut.extend({method:I("notifications/elicitation/complete"),params:ME}),zn=Ce.extend({action:Ye(["accept","decline","cancel"]),content:Mu(t=>t===null?void 0:t,le(_(),de([_(),re(),$e(),W(_())])).optional())}),LE=P({type:I("ref/resource"),uri:_()});var ZE=P({type:I("ref/prompt"),name:_()}),UE=ot.extend({ref:de([ZE,LE]),argument:P({name:_(),value:_()}),context:P({arguments:le(_(),_()).optional()}).optional()}),gi=Oe.extend({method:I("completion/complete"),params:UE});function yh(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function xh(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var HE=Ce.extend({completion:He({values:W(_()).max(100),total:ge(re().int()),hasMore:ge($e())})}),qE=P({uri:_().startsWith("file://"),name:_().optional(),_meta:le(_(),he()).optional()}),FE=Oe.extend({method:I("roots/list"),params:ot.optional()}),el=Ce.extend({roots:W(qE)}),BE=ut.extend({method:I("notifications/roots/list_changed"),params:ct.optional()}),MN=de([oi,Fu,gi,Xu,fi,Cn,Rn,On,pi,Fw,Vw,In,mi,ii,ci,ui,di]),DN=de([ni,si,Bu,BE,Oo]),LN=de([ri,zo,Qu,zn,el,ai,li,$n]),ZN=de([oi,vE,jE,FE,ii,ci,ui,di]),UN=de([ni,si,pE,Jw,Hw,uE,oE,Oo,DE]),HN=de([ri,Cw,HE,nE,Yw,Dw,Lw,Uw,hi,aE,ai,li,$n]),O=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===N.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Du(o.elicitations,r)}return new t(e,r,n)}},Du=class extends O{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(N.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function lr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Sh=Symbol("Let zodToJsonSchema decide on which parser to use");var vh={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"},kh=t=>typeof t=="string"?{...vh,name:t}:{...vh,...t};var bh=t=>{let e=kh(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 tl(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function G(t,e,r,n,o){t[e]=r,tl(t,e,n,o)}var _i=(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 _e(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?_i(e,t.currentPath):e.join("/")}}function wh(t,e){let r={type:"array"};return t.type?._def&&t.type?._def?.typeName!==b.ZodAny&&(r.items=M(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 Eh(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 Th(){return{type:"boolean"}}function yi(t,e){return M(t.type._def,e)}var $h=(t,e)=>M(t.innerType._def,e);function rl(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>rl(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 VE(t,e)}}var VE=(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 Ph(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function Rh(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):_e(e)}function Oh(t){return{type:"string",enum:Array.from(t.values)}}var KE=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Ch(t,e){let r=[M(t.left._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),M(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(KE(s))o.push(...s.allOf),s.unevaluatedProperties===void 0&&(n=void 0);else{let i=s;if("additionalProperties"in s&&s.additionalProperties===!1){let{additionalProperties:a,...c}=s;i=c}else n=void 0;o.push(i)}}),o.length?{allOf:o,...n}:void 0}function Ih(t,e){let r=typeof t.value;return r!=="bigint"&&r!=="number"&&r!=="boolean"&&r!=="string"?{type:Array.isArray(t.value)?"array":"object"}:e.target==="openApi3"?{type:r==="bigint"?"integer":r,enum:[t.value]}:{type:r==="bigint"?"integer":r,const:t.value}}var nl,yt={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(nl===void 0&&(nl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),nl),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 xi(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":xt(r,"email",n.message,e);break;case"format:idn-email":xt(r,"idn-email",n.message,e);break;case"pattern:zod":qe(r,yt.email,n.message,e);break}break;case"url":xt(r,"uri",n.message,e);break;case"uuid":xt(r,"uuid",n.message,e);break;case"regex":qe(r,n.regex,n.message,e);break;case"cuid":qe(r,yt.cuid,n.message,e);break;case"cuid2":qe(r,yt.cuid2,n.message,e);break;case"startsWith":qe(r,RegExp(`^${ol(n.value,e)}`),n.message,e);break;case"endsWith":qe(r,RegExp(`${ol(n.value,e)}$`),n.message,e);break;case"datetime":xt(r,"date-time",n.message,e);break;case"date":xt(r,"date",n.message,e);break;case"time":xt(r,"time",n.message,e);break;case"duration":xt(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":{qe(r,RegExp(ol(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&xt(r,"ipv4",n.message,e),n.version!=="v4"&&xt(r,"ipv6",n.message,e);break}case"base64url":qe(r,yt.base64url,n.message,e);break;case"jwt":qe(r,yt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&qe(r,yt.ipv4Cidr,n.message,e),n.version!=="v4"&&qe(r,yt.ipv6Cidr,n.message,e);break}case"emoji":qe(r,yt.emoji(),n.message,e);break;case"ulid":{qe(r,yt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{xt(r,"binary",n.message,e);break}case"contentEncoding:base64":{G(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{qe(r,yt.base64,n.message,e);break}}break}case"nanoid":qe(r,yt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function ol(t,e){return e.patternStrategy==="escape"?WE(t):t}var JE=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function WE(t){let e="";for(let r=0;r<t.length;r++)JE.has(t[r])||(e+="\\"),e+=t[r];return e}function xt(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 qe(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:zh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):G(t,"pattern",zh(e,n),r,n)}function zh(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
54
54
  ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
55
55
  ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
56
56
  `:`[${n[c]}\r
57
- ]`;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 xi(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===b.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??ge(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===b.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=yi(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===b.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===b.ZodBranded&&t.keyType._def.type._def.typeName===b.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=_i(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Ch(t,e){if(e.mapStrategy==="record")return xi(t,e);let r=M(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||ge(e),n=M(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 Ih(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 zh(t){return t.target==="openAi"?void 0:{not:ge({...t,currentPath:[...t.currentPath,"not"]})}}function Nh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var zo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function jh(t,e){if(e.target==="openApi3")return Ah(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in zo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=zo[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 Ah(t,e)}var Ah=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>M(n._def,{...e,currentPath:[...e.currentPath,"anyOf",`${o}`]})).filter(n=>!!n&&(!e.strictUnions||typeof n=="object"&&Object.keys(n).length>0));return r.length?{anyOf:r}:void 0};function Mh(t,e){if(["ZodString","ZodNumber","ZodBigInt","ZodBoolean","ZodNull"].includes(t.innerType._def.typeName)&&(!t.innerType._def.checks||!t.innerType._def.checks.length))return e.target==="openApi3"?{type:zo[t.innerType._def.typeName],nullable:!0}:{type:[zo[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=M(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Dh(t,e){let r={type:"number"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"int":r.type="integer",el(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 Lh(t,e){let r=e.target==="openAi",n={type:"object",properties:{}},o=[],s=t.shape();for(let a in s){let c=s[a];if(c===void 0||c._def===void 0)continue;let u=JE(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=M(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=KE(t,e);return i!==void 0&&(n.additionalProperties=i),n}function KE(t,e){if(t.catchall._def.typeName!=="ZodNever")return M(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 JE(t){try{return t.isOptional()}catch{return!0}}var Zh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return M(t.innerType._def,e);let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:ge(e)},r]}:ge(e)};var Uh=(t,e)=>{if(e.pipeStrategy==="input")return M(t.in._def,e);if(e.pipeStrategy==="output")return M(t.out._def,e);let r=M(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=M(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function Hh(t,e){return M(t.type._def,e)}function qh(t,e){let n={type:"array",uniqueItems:!0,items:M(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 Fh(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>M(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:M(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>M(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function Bh(t){return{not:ge(t)}}function Vh(t){return ge(t)}var Kh=(t,e)=>M(t.innerType._def,e);var Jh=(t,e,r)=>{switch(e){case b.ZodString:return yi(t,r);case b.ZodNumber:return Dh(t,r);case b.ZodObject:return Lh(t,r);case b.ZodBigInt:return Sh(t,r);case b.ZodBoolean:return bh();case b.ZodDate:return tl(t,r);case b.ZodUndefined:return Bh(r);case b.ZodNull:return Nh(r);case b.ZodArray:return kh(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return jh(t,r);case b.ZodIntersection:return Ph(t,r);case b.ZodTuple:return Fh(t,r);case b.ZodRecord:return xi(t,r);case b.ZodLiteral:return Rh(t,r);case b.ZodEnum:return $h(t);case b.ZodNativeEnum:return Ih(t);case b.ZodNullable:return Mh(t,r);case b.ZodOptional:return Zh(t,r);case b.ZodMap:return Ch(t,r);case b.ZodSet:return qh(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return Hh(t,r);case b.ZodNaN:case b.ZodNever:return zh(r);case b.ZodEffects:return Th(t,r);case b.ZodAny:return ge(r);case b.ZodUnknown:return Vh(r);case b.ZodDefault:return Eh(t,r);case b.ZodBranded:return _i(t,r);case b.ZodReadonly:return Kh(t,r);case b.ZodCatch:return wh(t,r);case b.ZodPipeline:return Uh(t,r);case b.ZodFunction:case b.ZodVoid:case b.ZodSymbol:return;default:return(n=>{})(e)}};function M(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==yh)return a}if(n&&!r){let a=WE(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=Jh(t,t.typeName,e),i=typeof s=="function"?M(s(),e):s;if(i&&GE(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var WE=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:gi(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}},GE=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var ol=(t,e)=>{let r=vh(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:M(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=M(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 YE(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function sl(t,e){return at(t)?$u(t,{target:YE(e?.target),io:e?.pipeStrategy??"input"}):ol(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function il(t){let r=sr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ws(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function al(t,e){let r=or(t,e);if(!r.success)throw r.error;return r.data}var XE=6e4,vi=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(ri,r=>{this._oncancel(r)}),this.setNotificationHandler(oi,r=>{this._onprogress(r)}),this.setRequestHandler(ni,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(si,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(N.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(ai,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,f=new O(d.error.code,d.error.message,d.error.data);l(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new O(N.InvalidParams,`Task not found: ${s}`);if(!ar(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(ar(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[ir]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(ci,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new O(N.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(li,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(N.InvalidParams,`Task not found: ${r.params.taskId}`);if(ar(o.status))throw new O(N.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new O(N.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof O?o:new O(N.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),O.fromError(N.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),wo(s)||ih(s)?this._onresponse(s):Zu(s)?this._onrequest(s,i):sh(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=O.fromError(N.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?.[ir]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:N.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=rh(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,f)=>{if(i.signal.aborted)throw new O(N.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:N.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===i&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),wo(e))n(e);else{let i=new O(e.error.code,e.error.message,e.error.data);n(i)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(wo(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),wo(e))o(e);else{let i=O.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof O?i:new O(N.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 O(N.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},ar(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new O(N.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new O(N.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof O?i:new O(N.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=y=>{l(y)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(y){d(y);return}n?.signal?.throwIfAborted();let 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||{},[ir]:c}});let p=y=>{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(y)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(E=>this._onerror(new Error(`Failed to send cancellation: ${E}`)));let k=y instanceof O?y:new O(N.RequestTimeout,String(y));l(k)};this._responseHandlers.set(f,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return l(y);try{let k=or(r,y.result);k.success?u(k.data):l(k.error)}catch(k){l(k)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??XE,g=()=>p(O.fromError(N.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let v=c?.taskId;if(v){let y=k=>{let E=this._responseHandlers.get(f);E?E(k):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,y),this._enqueueTaskMessage(v,{type:"request",message:m,timestamp:Date.now()}).catch(k=>{this._cleanupTimeout(f),l(k)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(y=>{this._cleanupTimeout(f),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},ii,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},ui,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},uh,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||{},[ir]: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||{},[ir]: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||{},[ir]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=il(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=al(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=il(e);this._notificationHandlers.set(n,o=>{let s=al(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"&&Zu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new O(N.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new O(N.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new O(N.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new O(N.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=Ro.parse({method:"notifications/tasks/status",params:a});await this.notification(c),ar(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new O(N.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(ar(a.status))throw new O(N.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=Ro.parse({method:"notifications/tasks/status",params:c});await this.notification(u),ar(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function Wh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Gh(t,e){let r={...t};for(let n in e){let o=n,s=e[o];if(s===void 0)continue;let i=r[o];Wh(i)&&Wh(s)?r[o]={...i,...s}:r[o]=s}return r}var jy=ef(Vd(),1),My=ef(Ay(),1);function qO(){let t=new jy.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,My.default)(t),t}var ra=class{constructor(e){this._ajv=e??qO()}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 na=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(f=>f.type==="tool_use").map(f=>f.id)),d=new Set(s.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(l.size!==d.size||![...l].every(f=>d.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},Io,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},Cn,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function Dy(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 Ly(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 oa=class extends vi{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Co.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 ra,this.setRequestHandler(qu,n=>this._oninitialize(n)),this.setNotificationHandler(Fu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Yu,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Co.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new na(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Gh(this._capabilities,e)}setRequestHandler(e,r){let o=sr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(at(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=or(On,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new O(N.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=or(En,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new O(N.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=or(mi,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new O(N.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){Ly(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Dy(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:Qm.includes(r)?r:Du,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"},ti)}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},Xu,r):this.request({method:"sampling/createMessage",params:e},Io,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},Cn,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},Cn,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new O(N.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof O?i:new O(N.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},Qu,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 Uy=Symbol.for("mcp.completable");function ep(t){return!!t&&typeof t=="object"&&Uy in t}function Hy(t){return t[Uy]?.complete}var Zy;(function(t){t.Completable="McpCompletable"})(Zy||(Zy={}));var FO=/^[A-Za-z0-9._-]{1,128}$/;function BO(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"),!FO.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 VO(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 tp(t){let e=BO(t);return VO(t,e.warnings),e.isValid}var sa=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 ia=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 oa(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new sa(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(gr(fi)),this.server.assertCanSetRequestHandler(gr(On)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(fi,()=>({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=bn(r.inputSchema);return o?sl(o,{strictUnions:!0,pipeStrategy:"input"}):KO})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=bn(r.outputSchema);o&&(n.outputSchema=sl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(On,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new O(N.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new O(N.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new O(N.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof O&&n.code===N.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=bn(e.inputSchema)??e.inputSchema,i=await Ks(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Js(a);throw new O(N.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new O(N.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=bn(e.outputSchema),s=await Ks(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Js(i);throw new O(N.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new O(N.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(gr(hi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(hi,async e=>{switch(e.params.ref.type){case"ref/prompt":return hh(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return gh(e),this.handleResourceCompletion(e,e.params.ref);default:throw new O(N.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new O(N.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return us;let s=sr(n.argsSchema)?.[e.params.argument.name];if(!ep(s))return us;let i=Hy(s);if(!i)return us;let a=await i(e.params.argument.value,e.params.context);return Fy(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 us;throw new O(N.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return us;let s=await o(e.params.argument.value,e.params.context);return Fy(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(gr($n)),this.server.assertCanSetRequestHandler(gr(Pn)),this.server.assertCanSetRequestHandler(gr(di)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler($n,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(Pn,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(di,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new O(N.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new O(N.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(gr(Rn)),this.server.assertCanSetRequestHandler(gr(pi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Rn,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?JO(r.argsSchema):void 0}))})),this.server.setRequestHandler(pi,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new O(N.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=bn(n.argsSchema),s=await Ks(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Js(c);throw new O(N.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:Br(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=Br(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 We?c._def?.innerType:c;return ep(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){tp(e);let l={title:r,description:n,inputSchema:qy(o),outputSchema:qy(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"&&tp(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=Br(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Br(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];if(rp(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!rp(r[0])&&(i=r.shift());else if(typeof c=="object"&&c!==null){if(Object.values(c).some(u=>typeof u=="object"&&u!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);i=r.shift()}}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var KO={type:"object",properties:{}};function By(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function Vy(t){return"_def"in t||"_zod"in t||By(t)}function rp(t){return typeof t!="object"||t===null||Vy(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(By)}function qy(t){if(t){if(rp(t))return Br(t);if(!Vy(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function JO(t){let e=sr(t);return e?Object.entries(e).map(([r,n])=>{let o=Rm(n),s=Om(n);return{name:r,description:o,required:!s}}):[]}function gr(t){let r=sr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Ws(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Fy(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var us={completion:{values:[],hasMore:!1}};import Jy from"node:process";var aa=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
58
- `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),WO(r)}clear(){this._buffer=void 0}};function WO(t){return ah.parse(JSON.parse(t))}function Ky(t){return JSON.stringify(t)+`
59
- `}var ca=class{constructor(e=Jy.stdin,r=Jy.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new aa,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=Ky(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as Zv}from"node:module";import{createHash as Uv}from"node:crypto";import{existsSync as vr,unlinkSync as Hv,readdirSync as qv,readFileSync as Fv,rmSync as xI,mkdirSync as vI}from"node:fs";import{join as Yt,dirname as Gp,resolve as un}from"node:path";import{fileURLToPath as kI}from"node:url";import{homedir as Ss,tmpdir as SI}from"node:os";import{spawn as XO,execSync as QO,execFileSync as nx}from"node:child_process";import{mkdtempSync as eC,writeFileSync as ex,rmSync as tx,existsSync as rx}from"node:fs";import{join as da,resolve as ox}from"node:path";import{tmpdir as tC}from"node:os";import{execSync as np}from"node:child_process";import{existsSync as Wy}from"node:fs";var op=process.platform==="win32";function Ne(t){try{let e=op?`where ${t}`:`command -v ${t}`;return np(e,{stdio:"pipe"}),!0}catch{return!1}}function Gy(){if(Ne("bun"))return!0;if(!op){let t=process.env.HOME??process.env.USERPROFILE??"";if(t&&Wy(`${t}/.bun/bin/bun`))return!0}return!1}function GO(){return Ne("bun")?"bun":`${process.env.HOME??process.env.USERPROFILE??""}/.bun/bin/bun`}function YO(){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(Wy(e))return e;try{let r=np("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 wt(t){try{return np(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function ua(){let e=Gy()?GO():null;return{javascript:e??process.execPath,typescript:e||(Ne("tsx")?"tsx":Ne("ts-node")?"ts-node":null),python:Ne("python3")?"python3":Ne("python")?"python":null,shell:op?YO()??(Ne("sh")?"sh":Ne("powershell")?"powershell":"cmd.exe"):Ne("bash")?"bash":"sh",ruby:Ne("ruby")?"ruby":null,go:Ne("go")?"go":null,rust:Ne("rustc")?"rustc":null,php:Ne("php")?"php":null,perl:Ne("perl")?"perl":null,r:Ne("Rscript")?"Rscript":Ne("r")?"r":null,elixir:Ne("elixir")?"elixir":null}}function la(){return Gy()}function Yy(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${wt(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${wt(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${wt(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${wt(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${wt(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${wt(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${wt(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${wt(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${wt(t.perl)})`),t.r&&e.push(` R: ${t.r} (${wt(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${wt(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
60
- `)}function Xy(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 Qy(t,e,r){switch(e){case"javascript":return t.javascript.endsWith("bun")?[t.javascript,"run",r]:[t.javascript,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?.endsWith("bun")?[t.typescript,"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]}}var mt=process.platform==="win32",rC=(()=>{if(mt)return process.env.TEMP??process.env.TMP??tC();try{let t=nx(process.platform==="darwin"?"getconf":"mktemp",process.platform==="darwin"?["DARWIN_USER_TEMP_DIR"]:["-u","-d"],{env:{...process.env,TMPDIR:void 0},encoding:"utf-8"}).trim(),e=process.platform==="darwin"?t:ox(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();function sp(t){if(mt&&t.pid)try{QO(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var ls=class{#e;#t;#r;#n=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024,this.#t=e?.projectRoot??process.cwd(),this.#r=e?.runtimes??ua()}get runtimes(){return{...this.#r}}cleanupBackgrounded(){for(let e of this.#n)try{process.kill(mt?e:-e,"SIGTERM")}catch{}this.#n.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=eC(da(rC,".ctx-mode-"));try{let a=this.#s(i,n,r),c=Qy(this.#r,r,a);if(c[0]==="__rust_compile_run__")return await this.#i(a,i,o);let u=r==="shell"?this.#t:i,l=await this.#o(c,u,i,o,s);if(!l.backgrounded)try{tx(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{tx(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=ox(this.#t,r),a=this.#c(i,n,o);return this.execute({language:n,code:a,timeout:s})}#s(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
57
+ ]`;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 vi(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===b.ZodEnum)return{type:"object",required:t.keyType._def.values,properties:t.keyType._def.values.reduce((n,o)=>({...n,[o]:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"properties",o]})??_e(e)}),{}),additionalProperties:e.rejectedAdditionalProperties};let r={type:"object",additionalProperties:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"additionalProperties"]})??e.allowedAdditionalProperties};if(e.target==="openApi3")return r;if(t.keyType?._def.typeName===b.ZodString&&t.keyType._def.checks?.length){let{type:n,...o}=xi(t.keyType._def,e);return{...r,propertyNames:o}}else{if(t.keyType?._def.typeName===b.ZodEnum)return{...r,propertyNames:{enum:t.keyType._def.values}};if(t.keyType?._def.typeName===b.ZodBranded&&t.keyType._def.type._def.typeName===b.ZodString&&t.keyType._def.type._def.checks?.length){let{type:n,...o}=yi(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Nh(t,e){if(e.mapStrategy==="record")return vi(t,e);let r=M(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||_e(e),n=M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||_e(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Ah(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 jh(t){return t.target==="openAi"?void 0:{not:_e({...t,currentPath:[...t.currentPath,"not"]})}}function Mh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var No={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Lh(t,e){if(e.target==="openApi3")return Dh(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in No&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=No[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 Dh(t,e)}var Dh=(t,e)=>{let r=(t.options instanceof Map?Array.from(t.options.values()):t.options).map((n,o)=>M(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 Zh(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:No[t.innerType._def.typeName],nullable:!0}:{type:[No[t.innerType._def.typeName],"null"]};if(e.target==="openApi3"){let n=M(t.innerType._def,{...e,currentPath:[...e.currentPath]});return n&&"$ref"in n?{allOf:[n],nullable:!0}:n&&{...n,nullable:!0}}let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","0"]});return r&&{anyOf:[r,{type:"null"}]}}function Uh(t,e){let r={type:"number"};if(!t.checks)return r;for(let n of t.checks)switch(n.kind){case"int":r.type="integer",tl(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 Hh(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=YE(c);u&&r&&(c._def.typeName==="ZodOptional"&&(c=c._def.innerType),c.isNullable()||(c=c.nullable()),u=!1);let l=M(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=GE(t,e);return i!==void 0&&(n.additionalProperties=i),n}function GE(t,e){if(t.catchall._def.typeName!=="ZodNever")return M(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 YE(t){try{return t.isOptional()}catch{return!0}}var qh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return M(t.innerType._def,e);let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:_e(e)},r]}:_e(e)};var Fh=(t,e)=>{if(e.pipeStrategy==="input")return M(t.in._def,e);if(e.pipeStrategy==="output")return M(t.out._def,e);let r=M(t.in._def,{...e,currentPath:[...e.currentPath,"allOf","0"]}),n=M(t.out._def,{...e,currentPath:[...e.currentPath,"allOf",r?"1":"0"]});return{allOf:[r,n].filter(o=>o!==void 0)}};function Bh(t,e){return M(t.type._def,e)}function Vh(t,e){let n={type:"array",uniqueItems:!0,items:M(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 Kh(t,e){return t.rest?{type:"array",minItems:t.items.length,items:t.items.map((r,n)=>M(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[]),additionalItems:M(t.rest._def,{...e,currentPath:[...e.currentPath,"additionalItems"]})}:{type:"array",minItems:t.items.length,maxItems:t.items.length,items:t.items.map((r,n)=>M(r._def,{...e,currentPath:[...e.currentPath,"items",`${n}`]})).reduce((r,n)=>n===void 0?r:[...r,n],[])}}function Jh(t){return{not:_e(t)}}function Wh(t){return _e(t)}var Gh=(t,e)=>M(t.innerType._def,e);var Yh=(t,e,r)=>{switch(e){case b.ZodString:return xi(t,r);case b.ZodNumber:return Uh(t,r);case b.ZodObject:return Hh(t,r);case b.ZodBigInt:return Eh(t,r);case b.ZodBoolean:return Th();case b.ZodDate:return rl(t,r);case b.ZodUndefined:return Jh(r);case b.ZodNull:return Mh(r);case b.ZodArray:return wh(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return Lh(t,r);case b.ZodIntersection:return Ch(t,r);case b.ZodTuple:return Kh(t,r);case b.ZodRecord:return vi(t,r);case b.ZodLiteral:return Ih(t,r);case b.ZodEnum:return Oh(t);case b.ZodNativeEnum:return Ah(t);case b.ZodNullable:return Zh(t,r);case b.ZodOptional:return qh(t,r);case b.ZodMap:return Nh(t,r);case b.ZodSet:return Vh(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return Bh(t,r);case b.ZodNaN:case b.ZodNever:return jh(r);case b.ZodEffects:return Rh(t,r);case b.ZodAny:return _e(r);case b.ZodUnknown:return Wh(r);case b.ZodDefault:return Ph(t,r);case b.ZodBranded:return yi(t,r);case b.ZodReadonly:return Gh(t,r);case b.ZodCatch:return $h(t,r);case b.ZodPipeline:return Fh(t,r);case b.ZodFunction:case b.ZodVoid:case b.ZodSymbol:return;default:return(n=>{})(e)}};function M(t,e,r=!1){let n=e.seen.get(t);if(e.override){let a=e.override?.(t,e,n,r);if(a!==Sh)return a}if(n&&!r){let a=XE(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=Yh(t,t.typeName,e),i=typeof s=="function"?M(s(),e):s;if(i&&QE(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var XE=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:_i(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`),_e(e)):e.$refStrategy==="seen"?_e(e):void 0}},QE=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var sl=(t,e)=>{let r=bh(e),n=typeof e=="object"&&e.definitions?Object.entries(e.definitions).reduce((c,[u,l])=>({...c,[u]:M(l._def,{...r,currentPath:[...r.basePath,r.definitionPath,u]},!0)??_e(r)}),{}):void 0,o=typeof e=="string"?e:e?.nameStrategy==="title"?void 0:e?.name,s=M(t._def,o===void 0?r:{...r,currentPath:[...r.basePath,r.definitionPath,o]},!1)??_e(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 eT(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function il(t,e){return at(t)?Pu(t,{target:eT(e?.target),io:e?.pipeStrategy??"input"}):sl(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function al(t){let r=cr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Gs(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function cl(t,e){let r=ar(t,e);if(!r.success)throw r.error;return r.data}var tT=6e4,Si=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(ni,r=>{this._oncancel(r)}),this.setNotificationHandler(si,r=>{this._onprogress(r)}),this.setRequestHandler(oi,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(ii,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(N.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(ci,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,f=new O(d.error.code,d.error.message,d.error.data);l(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new O(N.InvalidParams,`Task not found: ${s}`);if(!lr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(lr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[ur]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(ui,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new O(N.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(di,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(N.InvalidParams,`Task not found: ${r.params.taskId}`);if(lr(o.status))throw new O(N.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new O(N.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof O?o:new O(N.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),O.fromError(N.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),Eo(s)||uh(s)?this._onresponse(s):Uu(s)?this._onrequest(s,i):ch(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._timeoutInfo.values())clearTimeout(n.timeoutId);this._timeoutInfo.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=O.fromError(N.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?.[ur]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:N.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=sh(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,f)=>{if(i.signal.aborted)throw new O(N.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:N.InternalError,message:l.message??"Internal error",...l.data!==void 0&&{data:l.data}}};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"error",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)}).catch(l=>this._onerror(new Error(`Failed to send response: ${l}`))).finally(()=>{this._requestHandlerAbortControllers.get(e.id)===i&&this._requestHandlerAbortControllers.delete(e.id)})}_onprogress(e){let{progressToken:r,...n}=e.params,o=Number(r),s=this._progressHandlers.get(o);if(!s){this._onerror(new Error(`Received a progress notification for an unknown token: ${JSON.stringify(e)}`));return}let i=this._responseHandlers.get(o),a=this._timeoutInfo.get(o);if(a&&i&&a.resetTimeoutOnProgress)try{this._resetTimeout(o)}catch(c){this._responseHandlers.delete(o),this._progressHandlers.delete(o),this._cleanupTimeout(o),i(c);return}s(n)}_onresponse(e){let r=Number(e.id),n=this._requestResolvers.get(r);if(n){if(this._requestResolvers.delete(r),Eo(e))n(e);else{let i=new O(e.error.code,e.error.message,e.error.data);n(i)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(Eo(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),Eo(e))o(e);else{let i=O.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof O?i:new O(N.InternalError,String(i))}}return}let s;try{let i=await this.request(e,$n,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new O(N.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},lr(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new O(N.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new O(N.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof O?i:new O(N.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=y=>{l(y)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(y){d(y);return}n?.signal?.throwIfAborted();let 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||{},[ur]:c}});let p=y=>{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(y)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(E=>this._onerror(new Error(`Failed to send cancellation: ${E}`)));let S=y instanceof O?y:new O(N.RequestTimeout,String(y));l(S)};this._responseHandlers.set(f,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return l(y);try{let S=ar(r,y.result);S.success?u(S.data):l(S.error)}catch(S){l(S)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??tT,g=()=>p(O.fromError(N.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let v=c?.taskId;if(v){let y=S=>{let E=this._responseHandlers.get(f);E?E(S):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,y),this._enqueueTaskMessage(v,{type:"request",message:m,timestamp:Date.now()}).catch(S=>{this._cleanupTimeout(f),l(S)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(y=>{this._cleanupTimeout(f),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},ai,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},li,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},ph,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||{},[ur]: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||{},[ur]: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||{},[ur]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=al(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=cl(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=al(e);this._notificationHandlers.set(n,o=>{let s=cl(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"&&Uu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new O(N.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new O(N.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new O(N.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new O(N.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=Oo.parse({method:"notifications/tasks/status",params:a});await this.notification(c),lr(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new O(N.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(lr(a.status))throw new O(N.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=Oo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),lr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function Xh(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function Qh(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];Xh(i)&&Xh(s)?r[o]={...i,...s}:r[o]=s}return r}var Ly=nf(Kd(),1),Zy=nf(Dy(),1);function VO(){let t=new Ly.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Zy.default)(t),t}var na=class{constructor(e){this._ajv=e??VO()}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 oa=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}createMessageStream(e,r){let n=this._server.getClientCapabilities();if((e.tools||e.toolChoice)&&!n?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let o=e.messages[e.messages.length-1],s=Array.isArray(o.content)?o.content:[o.content],i=s.some(l=>l.type==="tool_result"),a=e.messages.length>1?e.messages[e.messages.length-2]:void 0,c=a?Array.isArray(a.content)?a.content:[a.content]:[],u=c.some(l=>l.type==="tool_use");if(i){if(s.some(l=>l.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!u)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(u){let l=new Set(c.filter(f=>f.type==="tool_use").map(f=>f.id)),d=new Set(s.filter(f=>f.type==="tool_result").map(f=>f.toolUseId));if(l.size!==d.size||![...l].every(f=>d.has(f)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return this.requestStream({method:"sampling/createMessage",params:e},zo,r)}elicitInputStream(e,r){let n=this._server.getClientCapabilities(),o=e.mode??"form";switch(o){case"url":{if(!n?.elicitation?.url)throw new Error("Client does not support url elicitation.");break}case"form":{if(!n?.elicitation?.form)throw new Error("Client does not support form elicitation.");break}}let s=o==="form"&&e.mode===void 0?{...e,mode:"form"}:e;return this.requestStream({method:"elicitation/create",params:s},zn,r)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function Uy(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 Hy(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 sa=class extends Si{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Io.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 na,this.setRequestHandler(Fu,n=>this._oninitialize(n)),this.setNotificationHandler(Bu,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(Xu,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Io.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new oa(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=Qh(this._capabilities,e)}setRequestHandler(e,r){let o=cr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(at(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=ar(In,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new O(N.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=ar($n,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new O(N.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=ar(hi,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new O(N.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){Hy(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Uy(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:rh.includes(r)?r:Lu,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"},ri)}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},Qu,r):this.request({method:"sampling/createMessage",params:e},zo,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},zn,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},zn,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new O(N.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof O?i:new O(N.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},el,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 Fy=Symbol.for("mcp.completable");function tp(t){return!!t&&typeof t=="object"&&Fy in t}function By(t){return t[Fy]?.complete}var qy;(function(t){t.Completable="McpCompletable"})(qy||(qy={}));var KO=/^[A-Za-z0-9._-]{1,128}$/;function JO(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"),!KO.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 WO(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 rp(t){let e=JO(t);return WO(t,e.warnings),e.isValid}var ia=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 aa=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 sa(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new ia(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(xr(mi)),this.server.assertCanSetRequestHandler(xr(In)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(mi,()=>({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=En(r.inputSchema);return o?il(o,{strictUnions:!0,pipeStrategy:"input"}):GO})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=En(r.outputSchema);o&&(n.outputSchema=il(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(In,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new O(N.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new O(N.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new O(N.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof O&&n.code===N.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=En(e.inputSchema)??e.inputSchema,i=await Js(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Ws(a);throw new O(N.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new O(N.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=En(e.outputSchema),s=await Js(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Ws(i);throw new O(N.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new O(N.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(xr(gi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(gi,async e=>{switch(e.params.ref.type){case"ref/prompt":return yh(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return xh(e),this.handleResourceCompletion(e,e.params.ref);default:throw new O(N.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new O(N.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return ls;let s=cr(n.argsSchema)?.[e.params.argument.name];if(!tp(s))return ls;let i=By(s);if(!i)return ls;let a=await i(e.params.argument.value,e.params.context);return Ky(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 ls;throw new O(N.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return ls;let s=await o(e.params.argument.value,e.params.context);return Ky(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(xr(Rn)),this.server.assertCanSetRequestHandler(xr(On)),this.server.assertCanSetRequestHandler(xr(pi)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Rn,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(On,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(pi,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new O(N.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new O(N.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(xr(Cn)),this.server.assertCanSetRequestHandler(xr(fi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Cn,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?YO(r.argsSchema):void 0}))})),this.server.setRequestHandler(fi,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new O(N.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=En(n.argsSchema),s=await Js(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Ws(c);throw new O(N.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:Kr(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=Kr(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 We?c._def?.innerType:c;return tp(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){rp(e);let l={title:r,description:n,inputSchema:Vy(o),outputSchema:Vy(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"&&rp(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=Kr(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Kr(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];if(np(c))o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!np(r[0])&&(i=r.shift());else if(typeof c=="object"&&c!==null){if(Object.values(c).some(u=>typeof u=="object"&&u!==null))throw new Error(`Tool ${e} expected a Zod schema or ToolAnnotations, but received an unrecognized object`);i=r.shift()}}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var GO={type:"object",properties:{}};function Jy(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function Wy(t){return"_def"in t||"_zod"in t||Jy(t)}function np(t){return typeof t!="object"||t===null||Wy(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(Jy)}function Vy(t){if(t){if(np(t))return Kr(t);if(!Wy(t))throw new Error("inputSchema must be a Zod schema or raw shape, received an unrecognized object");return t}}function YO(t){let e=cr(t);return e?Object.entries(e).map(([r,n])=>{let o=Im(n),s=zm(n);return{name:r,description:o,required:!s}}):[]}function xr(t){let r=cr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=Gs(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function Ky(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var ls={completion:{values:[],hasMore:!1}};import Yy from"node:process";var ca=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
58
+ `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),XO(r)}clear(){this._buffer=void 0}};function XO(t){return lh.parse(JSON.parse(t))}function Gy(t){return JSON.stringify(t)+`
59
+ `}var ua=class{constructor(e=Yy.stdin,r=Yy.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ca,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=Gy(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as qv}from"node:module";import{createHash as Fv}from"node:crypto";import{existsSync as kr,unlinkSync as Bv,readdirSync as Vv,readFileSync as Kv,rmSync as SI,mkdirSync as kI}from"node:fs";import{join as er,dirname as Qp,resolve as dn}from"node:path";import{fileURLToPath as bI}from"node:url";import{homedir as bs,tmpdir as wI}from"node:os";import{spawn as tC,execSync as rC,execFileSync as ix}from"node:child_process";import{mkdtempSync as nC,writeFileSync as nx,rmSync as ox,existsSync as sx}from"node:fs";import{join as pa,resolve as ax}from"node:path";import{tmpdir as oC}from"node:os";import{execSync as op}from"node:child_process";import{existsSync as Xy}from"node:fs";var sp=process.platform==="win32";function Ne(t){try{let e=sp?`where ${t}`:`command -v ${t}`;return op(e,{stdio:"pipe"}),!0}catch{return!1}}function Qy(){if(Ne("bun"))return!0;if(!sp){let t=process.env.HOME??process.env.USERPROFILE??"";if(t&&Xy(`${t}/.bun/bin/bun`))return!0}return!1}function QO(){return Ne("bun")?"bun":`${process.env.HOME??process.env.USERPROFILE??""}/.bun/bin/bun`}function eC(){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(Xy(e))return e;try{let r=op("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 Et(t){try{return op(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function la(){let e=Qy()?QO():null;return{javascript:e??process.execPath,typescript:e||(Ne("tsx")?"tsx":Ne("ts-node")?"ts-node":null),python:Ne("python3")?"python3":Ne("python")?"python":null,shell:sp?eC()??(Ne("sh")?"sh":Ne("powershell")?"powershell":"cmd.exe"):Ne("bash")?"bash":"sh",ruby:Ne("ruby")?"ruby":null,go:Ne("go")?"go":null,rust:Ne("rustc")?"rustc":null,php:Ne("php")?"php":null,perl:Ne("perl")?"perl":null,r:Ne("Rscript")?"Rscript":Ne("r")?"r":null,elixir:Ne("elixir")?"elixir":null}}function da(){return Qy()}function ex(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${Et(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Et(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Et(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Et(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Et(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Et(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${Et(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Et(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Et(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Et(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Et(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
60
+ `)}function tx(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 rx(t,e,r){switch(e){case"javascript":return t.javascript.endsWith("bun")?[t.javascript,"run",r]:[t.javascript,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?.endsWith("bun")?[t.typescript,"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]}}var mt=process.platform==="win32",sC=(()=>{if(mt)return process.env.TEMP??process.env.TMP??oC();try{let t=ix(process.platform==="darwin"?"getconf":"mktemp",process.platform==="darwin"?["DARWIN_USER_TEMP_DIR"]:["-u","-d"],{env:{...process.env,TMPDIR:void 0},encoding:"utf-8"}).trim(),e=process.platform==="darwin"?t:ax(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();function ip(t){if(mt&&t.pid)try{rC(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var ds=class{#e;#t;#r;#n=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024,this.#t=e?.projectRoot??process.cwd(),this.#r=e?.runtimes??la()}get runtimes(){return{...this.#r}}cleanupBackgrounded(){for(let e of this.#n)try{process.kill(mt?e:-e,"SIGTERM")}catch{}this.#n.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=nC(pa(sC,".ctx-mode-"));try{let a=this.#s(i,n,r),c=rx(this.#r,r,a);if(c[0]==="__rust_compile_run__")return await this.#i(a,i,o);let u=r==="shell"?this.#t:i,l=await this.#o(c,u,i,o,s);if(!l.backgrounded)try{ox(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{ox(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=ax(this.#t,r),a=this.#c(i,n,o);return this.execute({language:n,code:a,timeout:s})}#s(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
61
61
 
62
62
  import "fmt"
63
63
 
@@ -65,12 +65,12 @@ func main() {
65
65
  ${r}
66
66
  }
67
67
  `),n==="php"&&!r.trimStart().startsWith("<?")&&(r=`<?php
68
- ${r}`),n==="elixir"&&rx(da(this.#t,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(da(this.#t,"_build/dev/lib"))}, "*/ebin"))
68
+ ${r}`),n==="elixir"&&sx(pa(this.#t,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(pa(this.#t,"_build/dev/lib"))}, "*/ebin"))
69
69
  |> Enum.each(&Code.prepend_path/1)
70
70
 
71
- ${r}`);let s=da(e,`script.${o[n]}`);return n==="shell"?ex(s,r,{encoding:"utf-8",mode:448}):ex(s,r,"utf-8"),s}async#i(e,r,n){let o=mt?".exe":"",s=e.replace(/\.rs$/,"")+o;try{nx("rustc",[e,"-o",s],{cwd:r,timeout:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
72
- ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#o([s],r,r,n)}async#o(e,r,n,o,s=!1){return new Promise(i=>{let a=mt&&["tsx","ts-node","elixir"].includes(e[0]),c=e[0],u;mt&&e.length===2&&e[1]?u=[e[1].replace(/\\/g,"/")]:u=mt?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let l=XO(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#a(n),shell:a,detached:!mt}),d=!1,f=!1,m=setTimeout(()=>{if(d=!0,s){f=!0,l.pid&&this.#n.add(l.pid),l.unref(),l.stdout.destroy(),l.stderr.destroy();let y=Buffer.concat(p).toString("utf-8"),k=Buffer.concat(h).toString("utf-8");i({stdout:y,stderr:k,exitCode:0,timedOut:!0,backgrounded:!0})}else sp(l)},o),p=[],h=[],g=0,v=!1;l.stdout.on("data",y=>{g+=y.length,g<=this.#e?p.push(y):v||(v=!0,sp(l))}),l.stderr.on("data",y=>{g+=y.length,g<=this.#e?h.push(y):v||(v=!0,sp(l))}),l.on("close",y=>{if(clearTimeout(m),f)return;let k=Buffer.concat(p).toString("utf-8"),E=Buffer.concat(h).toString("utf-8");v&&(E+=`
73
- [output capped at ${(this.#e/1024/1024).toFixed(0)}MB \u2014 process killed]`),i({stdout:k,stderr:E,exitCode:d?1:y??1,timedOut:d})}),l.on("error",y=>{clearTimeout(m),!f&&i({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#a(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=new Set(["BASH_ENV","ENV","PROMPT_COMMAND","PS4","SHELLOPTS","BASHOPTS","CDPATH","INPUTRC","BASH_XTRACEFD","NODE_OPTIONS","NODE_PATH","PYTHONSTARTUP","PYTHONHOME","PYTHONWARNINGS","PYTHONBREAKPOINT","PYTHONINSPECT","RUBYOPT","RUBYLIB","PERL5OPT","PERL5LIB","PERLLIB","PERL5DB","ERL_AFLAGS","ERL_FLAGS","ELIXIR_ERL_OPTIONS","ERL_LIBS","GOFLAGS","CGO_CFLAGS","CGO_LDFLAGS","RUSTC","RUSTC_WRAPPER","RUSTC_WORKSPACE_WRAPPER","CARGO_BUILD_RUSTC","CARGO_BUILD_RUSTC_WRAPPER","RUSTFLAGS","PHPRC","PHP_INI_SCAN_DIR","R_PROFILE","R_PROFILE_USER","R_HOME","LD_PRELOAD","DYLD_INSERT_LIBRARIES","OPENSSL_CONF","OPENSSL_ENGINES","CC","CXX","AR","GIT_TEMPLATE_DIR","GIT_CONFIG_GLOBAL","GIT_CONFIG_SYSTEM","GIT_EXEC_PATH","GIT_SSH","GIT_SSH_COMMAND","GIT_ASKPASS"]),o={};for(let[s,i]of Object.entries(process.env))i!==void 0&&!n.has(s)&&!s.startsWith("BASH_FUNC_")&&(o[s]=i);if(o.TMPDIR=e,o.HOME=r,o.LANG="en_US.UTF-8",o.PYTHONDONTWRITEBYTECODE="1",o.PYTHONUNBUFFERED="1",o.PYTHONUTF8="1",o.NO_COLOR="1",mt&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=mt?"":"/usr/local/bin:/usr/bin:/bin"),mt){o.MSYS_NO_PATHCONV="1",o.MSYS2_ARG_CONV_EXCL="*";let s="C:\\Program Files\\Git\\usr\\bin",i="C:\\Program Files\\Git\\bin";o.PATH.includes(s)||(o.PATH=`${s};${i};${o.PATH}`)}if(!o.SSL_CERT_FILE){let s=mt?[]:["/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(rx(i)){o.SSL_CERT_FILE=i;break}}return o}#c(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
71
+ ${r}`);let s=pa(e,`script.${o[n]}`);return n==="shell"?nx(s,r,{encoding:"utf-8",mode:448}):nx(s,r,"utf-8"),s}async#i(e,r,n){let o=mt?".exe":"",s=e.replace(/\.rs$/,"")+o;try{ix("rustc",[e,"-o",s],{cwd:r,timeout:Math.min(n,6e4),encoding:"utf-8",stdio:["pipe","pipe","pipe"]})}catch(i){return{stdout:"",stderr:`Compilation failed:
72
+ ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#o([s],r,r,n)}async#o(e,r,n,o,s=!1){return new Promise(i=>{let a=mt&&["tsx","ts-node","elixir"].includes(e[0]),c=e[0],u;mt&&e.length===2&&e[1]?u=[e[1].replace(/\\/g,"/")]:u=mt?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let l=tC(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#a(n),shell:a,detached:!mt}),d=!1,f=!1,m=setTimeout(()=>{if(d=!0,s){f=!0,l.pid&&this.#n.add(l.pid),l.unref(),l.stdout.destroy(),l.stderr.destroy();let y=Buffer.concat(p).toString("utf-8"),S=Buffer.concat(h).toString("utf-8");i({stdout:y,stderr:S,exitCode:0,timedOut:!0,backgrounded:!0})}else ip(l)},o),p=[],h=[],g=0,v=!1;l.stdout.on("data",y=>{g+=y.length,g<=this.#e?p.push(y):v||(v=!0,ip(l))}),l.stderr.on("data",y=>{g+=y.length,g<=this.#e?h.push(y):v||(v=!0,ip(l))}),l.on("close",y=>{if(clearTimeout(m),f)return;let S=Buffer.concat(p).toString("utf-8"),E=Buffer.concat(h).toString("utf-8");v&&(E+=`
73
+ [output capped at ${(this.#e/1024/1024).toFixed(0)}MB \u2014 process killed]`),i({stdout:S,stderr:E,exitCode:d?1:y??1,timedOut:d})}),l.on("error",y=>{clearTimeout(m),!f&&i({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#a(e){let r=process.env.HOME??process.env.USERPROFILE??e,n=new Set(["BASH_ENV","ENV","PROMPT_COMMAND","PS4","SHELLOPTS","BASHOPTS","CDPATH","INPUTRC","BASH_XTRACEFD","NODE_OPTIONS","NODE_PATH","PYTHONSTARTUP","PYTHONHOME","PYTHONWARNINGS","PYTHONBREAKPOINT","PYTHONINSPECT","RUBYOPT","RUBYLIB","PERL5OPT","PERL5LIB","PERLLIB","PERL5DB","ERL_AFLAGS","ERL_FLAGS","ELIXIR_ERL_OPTIONS","ERL_LIBS","GOFLAGS","CGO_CFLAGS","CGO_LDFLAGS","RUSTC","RUSTC_WRAPPER","RUSTC_WORKSPACE_WRAPPER","CARGO_BUILD_RUSTC","CARGO_BUILD_RUSTC_WRAPPER","RUSTFLAGS","PHPRC","PHP_INI_SCAN_DIR","R_PROFILE","R_PROFILE_USER","R_HOME","LD_PRELOAD","DYLD_INSERT_LIBRARIES","OPENSSL_CONF","OPENSSL_ENGINES","CC","CXX","AR","GIT_TEMPLATE_DIR","GIT_CONFIG_GLOBAL","GIT_CONFIG_SYSTEM","GIT_EXEC_PATH","GIT_SSH","GIT_SSH_COMMAND","GIT_ASKPASS"]),o={};for(let[s,i]of Object.entries(process.env))i!==void 0&&!n.has(s)&&!s.startsWith("BASH_FUNC_")&&(o[s]=i);if(o.TMPDIR=e,o.HOME=r,o.LANG="en_US.UTF-8",o.PYTHONDONTWRITEBYTECODE="1",o.PYTHONUNBUFFERED="1",o.PYTHONUTF8="1",o.NO_COLOR="1",mt&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=mt?"":"/usr/local/bin:/usr/bin:/bin"),mt){o.MSYS_NO_PATHCONV="1",o.MSYS2_ARG_CONV_EXCL="*";let s="C:\\Program Files\\Git\\usr\\bin",i="C:\\Program Files\\Git\\bin";o.PATH.includes(s)||(o.PATH=`${s};${i};${o.PATH}`)}if(!o.SSL_CERT_FILE){let s=mt?[]:["/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(sx(i)){o.SSL_CERT_FILE=i;break}}return o}#c(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
74
74
  const file_path = FILE_CONTENT_PATH;
75
75
  const FILE_CONTENT = require("fs").readFileSync(FILE_CONTENT_PATH, "utf-8");
76
76
  ${n}`;case"python":return`FILE_CONTENT_PATH = ${o}
@@ -125,7 +125,7 @@ FILE_CONTENT <- paste(FILE_CONTENT, collapse="\\n")
125
125
  ${n}`;case"elixir":return`file_content_path = ${o}
126
126
  file_path = file_content_path
127
127
  file_content = File.read!(file_content_path)
128
- ${n}`}}};import{createRequire as nC}from"node:module";var ip=class{#e;constructor(e){this.#e=e}pragma(e){let n=this.#e.prepare(`PRAGMA ${e}`).all();if(!n||n.length===0)return;if(n.length>1)return n;let o=Object.values(n[0]);return o.length===1?o[0]:n[0]}exec(e){let r="",n=null;for(let s=0;s<e.length;s++){let i=e[s];if(n)r+=i,i===n&&(n=null);else if(i==="'"||i==='"')r+=i,n=i;else if(i===";"){let a=r.trim();a&&this.#e.prepare(a).run(),r=""}else r+=i}let o=r.trim();return o&&this.#e.prepare(o).run(),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>{let o=r.get(...n);return o===null?void 0:o},all:(...n)=>r.all(...n),iterate:(...n)=>r.iterate(...n)}}transaction(e){return this.#e.transaction(e)}close(){this.#e.close()}},pa=null;function ds(){if(!pa){let t=nC(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;pa=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0});return new ip(s)}}else pa=t("better-sqlite3")}return pa}function sx(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}function ix(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}import{readFileSync as oC,readdirSync as ux,unlinkSync as ap,existsSync as sC,statSync as lx}from"node:fs";import{tmpdir as dx}from"node:os";import{join as cp}from"node:path";var ax=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 iC(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 aC(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 cC(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 uC(t){return t<=4?1:t<=12?2:3}var cx=4096;function up(){let t=dx(),e=0;try{let r=ux(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=cp(t,n);for(let a of["","-wal","-shm"])try{ap(i+a)}catch{}e++}}}catch{}return e}function px(t,e){let r=0;try{if(!sC(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=ux(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=cp(t,s);if(lx(i).mtimeMs<n){for(let c of["","-wal","-shm"])try{ap(i+c)}catch{}r++}}catch{}}catch{}return r}function lC(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function dC(t){if(t.length===0)return 1/0;if(t.length===1)return 0;let e=t.map(o=>[...o].sort((s,i)=>s-i)),r=new Array(e.length).fill(0),n=1/0;for(;;){let o=1/0,s=-1/0,i=0;for(let c=0;c<e.length;c++){let u=e[c][r[c]];u<o&&(o=u,i=c),u>s&&(s=u)}let a=s-o;if(a<n&&(n=a),r[i]++,r[i]>=e[i].length)break}return n}var fa=class{#e;#t;#r;#n;#s;#i;#o;#a;#c;#d;#p;#f;#m;#h;#g;#_;#y;#x;#v;#k;#S;#b;#w;#E;#T;#$;#P;#R;#O;constructor(e){let r=ds();this.#t=e??cp(dx(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),sx(this.#e),this.#A(),this.#j()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{ap(this.#t+e)}catch{}}#A(){this.#e.exec(`
128
+ ${n}`}}};import{createRequire as iC}from"node:module";var ap=class{#e;constructor(e){this.#e=e}pragma(e){let n=this.#e.prepare(`PRAGMA ${e}`).all();if(!n||n.length===0)return;if(n.length>1)return n;let o=Object.values(n[0]);return o.length===1?o[0]:n[0]}exec(e){let r="",n=null;for(let s=0;s<e.length;s++){let i=e[s];if(n)r+=i,i===n&&(n=null);else if(i==="'"||i==='"')r+=i,n=i;else if(i===";"){let a=r.trim();a&&this.#e.prepare(a).run(),r=""}else r+=i}let o=r.trim();return o&&this.#e.prepare(o).run(),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>{let o=r.get(...n);return o===null?void 0:o},all:(...n)=>r.all(...n),iterate:(...n)=>r.iterate(...n)}}transaction(e){return this.#e.transaction(e)}close(){this.#e.close()}},fa=null;function fs(){if(!fa){let t=iC(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;fa=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0});return new ap(s)}}else fa=t("better-sqlite3")}return fa}function cx(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}function ux(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}function cp(t,e=[100,500,2e3]){let r;for(let n=0;n<=e.length;n++)try{return t()}catch(o){let s=o instanceof Error?o.message:String(o);if(!s.includes("SQLITE_BUSY")&&!s.includes("database is locked"))throw o;if(r=o instanceof Error?o:new Error(s),n<e.length){let i=e[n],a=Date.now();for(;Date.now()-a<i;);}}throw new Error(`SQLITE_BUSY: database is locked after ${e.length} retries. Original error: ${r?.message}`)}var ps=Symbol.for("__context_mode_live_dbs__"),JD=(()=>{let t=globalThis;return t[ps]||(t[ps]=new Set,process.on("exit",()=>{for(let e of t[ps])try{e.close()}catch{}t[ps].clear()})),t[ps]})();import{readFileSync as aC,readdirSync as fx,unlinkSync as lp,existsSync as lx,statSync as up}from"node:fs";import{tmpdir as mx}from"node:os";import{join as dp}from"node:path";var dx=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 cC(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 uC(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 lC(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 dC(t){return t<=4?1:t<=12?2:3}var px=4096;function pp(){let t=mx(),e=0;try{let r=fx(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=dp(t,n);for(let a of["","-wal","-shm"])try{lp(i+a)}catch{}e++}}}catch{}return e}function hx(t,e){let r=0;try{if(!lx(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=fx(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=dp(t,s),c=up(i).mtimeMs<n;if(!c){let u=i+"-wal";if(lx(u))try{let l=up(u);l.size>0&&Date.now()-l.mtimeMs>36e5&&(c=!0)}catch{}}if(c){for(let u of["","-wal","-shm"])try{lp(i+u)}catch{}r++}}catch{}}catch{}return r}function pC(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function fC(t){if(t.length===0)return 1/0;if(t.length===1)return 0;let e=t.map(o=>[...o].sort((s,i)=>s-i)),r=new Array(e.length).fill(0),n=1/0;for(;;){let o=1/0,s=-1/0,i=0;for(let c=0;c<e.length;c++){let u=e[c][r[c]];u<o&&(o=u,i=c),u>s&&(s=u)}let a=s-o;if(a<n&&(n=a),r[i]++,r[i]>=e[i].length)break}return n}var ma=class{#e;#t;#r;#n;#s;#i;#o;#a;#c;#d;#p;#f;#m;#h;#g;#_;#y;#x;#v;#S;#k;#b;#w;#E;#T;#$;#P;#R;#O;constructor(e){let r=fs();this.#t=e??dp(mx(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:3e4}),cx(this.#e),this.#A(),this.#j()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{lp(this.#t+e)}catch{}}#A(){this.#e.exec(`
129
129
  CREATE TABLE IF NOT EXISTS sources (
130
130
  id INTEGER PRIMARY KEY AUTOINCREMENT,
131
131
  label TEXT NOT NULL,
@@ -259,7 +259,7 @@ ${n}`}}};import{createRequire as nC}from"node:module";var ip=class{#e;constructo
259
259
  WHERE chunks MATCH ? AND sources.label LIKE ? AND chunks.content_type = ?
260
260
  ORDER BY rank
261
261
  LIMIT ?
262
- `),this.#k=this.#e.prepare(`
262
+ `),this.#S=this.#e.prepare(`
263
263
  SELECT
264
264
  chunks.title,
265
265
  chunks.content,
@@ -272,7 +272,7 @@ ${n}`}}};import{createRequire as nC}from"node:module";var ip=class{#e;constructo
272
272
  WHERE chunks MATCH ? AND sources.label = ? AND chunks.content_type = ?
273
273
  ORDER BY rank
274
274
  LIMIT ?
275
- `),this.#S=this.#e.prepare(`
275
+ `),this.#k=this.#e.prepare(`
276
276
  SELECT
277
277
  chunks_trigram.title,
278
278
  chunks_trigram.content,
@@ -320,7 +320,7 @@ ${n}`}}};import{createRequire as nC}from"node:module";var ip=class{#e;constructo
320
320
  (SELECT COUNT(*) FROM sources) AS sources,
321
321
  (SELECT COUNT(*) FROM chunks) AS chunks,
322
322
  (SELECT COUNT(*) FROM chunks WHERE content_type = 'code') AS codeChunks
323
- `)}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??oC(n,"utf-8"),i=o??n??"untitled",a=this.#D(s);return this.#u(a,i,s)}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#u([],r,"");let o=this.#L(e,n);return this.#u(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=cx){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.#N(o,[],s,n),s.length===0?this.indexPlainText(e,r):this.#u(s,r,e)}#u(e,r,n){let o=e.filter(a=>a.hasCode).length,i=this.#e.transaction(()=>{if(this.#a.run(r),this.#c.run(r),this.#d.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.#s.run(u.title,u.content,c,l),this.#i.run(u.title,u.content,c,l)}return c})();return n&&this.#M(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}#C(e){return e.map(r=>({title:r.title,content:r.content,source:r.label,rank:r.rank,contentType:r.content_type,highlighted:r.highlighted}))}#l(e,r){return r==="exact"?e:`%${e}%`}search(e,r=3,n,o="AND",s,i="like"){let a=iC(e,o),c,u;return n&&s?(c=i==="exact"?this.#k:this.#v,u=[a,this.#l(n,i),s,r]):n?(c=i==="exact"?this.#m:this.#f,u=[a,this.#l(n,i),r]):s?(c=this.#x,u=[a,s,r]):(c=this.#p,u=[a,r]),this.#C(c.all(...u))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=aC(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#w:this.#b,u=[a,this.#l(n,i),s,r]):n?(c=i==="exact"?this.#_:this.#g,u=[a,this.#l(n,i),r]):s?(c=this.#S,u=[a,s,r]):(c=this.#h,u=[a,r]),this.#C(c.all(...u))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=uC(r.length),o=this.#y.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=cC(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}#I(e,r,n,o,s="like"){let a=Math.max(r*2,10),c=this.search(e,a,n,"OR",o,s),u=this.searchTrigram(e,a,n,"OR",o,s),l=new Map,d=f=>`${f.source}::${f.title}`;for(let[f,m]of c.entries()){let p=d(m),h=l.get(p);h?h.score+=1/(60+f+1):l.set(p,{result:m,score:1/(60+f+1)})}for(let[f,m]of u.entries()){let p=d(m),h=l.get(p);h?h.score+=1/(60+f+1):l.set(p,{result:m,score:1/(60+f+1)})}return Array.from(l.values()).sort((f,m)=>m.score-f.score).slice(0,r).map(({result:f,score:m})=>({...f,rank:-m}))}#z(e,r){let n=r.toLowerCase().split(/\s+/).filter(o=>o.length>=2);return n.length<2?e:e.map(o=>{let s=o.content.toLowerCase(),i=n.map(u=>lC(s,u));if(i.some(u=>u.length===0))return{result:o,boost:0};let c=1/(1+dC(i)/Math.max(s.length,1));return{result:o,boost:c}}).sort((o,s)=>s.boost-o.boost||o.result.rank-s.result.rank).map(({result:o})=>o)}searchWithFallback(e,r=3,n,o,s="like"){let i=this.#I(e,r,n,o,s);if(i.length>0)return this.#z(i,e).map(f=>({...f,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#I(l,r,n,o,s);if(d.length>0)return this.#z(d,l).map(m=>({...m,matchLayer:"rrf-fuzzy"}))}return[]}getSourceMeta(e){let r=this.#O.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at}:null}listSources(){return this.#E.all()}getChunksBySource(e){return this.#T.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.#P.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!ax.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.#R.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){let r=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),n=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),o=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')");return this.#e.transaction(a=>(r.run(a),n.run(a),o.run(a)))(e).changes}getDBSizeBytes(){try{return lx(this.#t).size}catch{return 0}}close(){ix(this.#e)}#M(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!ax.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#o.run(o)})()}#D(e,r=cx){let n=[],o=e.split(`
323
+ `)}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??aC(n,"utf-8"),i=o??n??"untitled",a=this.#D(s);return cp(()=>this.#u(a,i,s))}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#u([],r,"");let o=this.#L(e,n);return this.#u(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=px){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.#N(o,[],s,n),s.length===0?this.indexPlainText(e,r):this.#u(s,r,e)}#u(e,r,n){let o=e.filter(a=>a.hasCode).length,i=this.#e.transaction(()=>{if(this.#a.run(r),this.#c.run(r),this.#d.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.#s.run(u.title,u.content,c,l),this.#i.run(u.title,u.content,c,l)}return c})();return n&&this.#M(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}#C(e){return e.map(r=>({title:r.title,content:r.content,source:r.label,rank:r.rank,contentType:r.content_type,highlighted:r.highlighted}))}#l(e,r){return r==="exact"?e:`%${e}%`}search(e,r=3,n,o="AND",s,i="like"){let a=cC(e,o),c,u;return n&&s?(c=i==="exact"?this.#S:this.#v,u=[a,this.#l(n,i),s,r]):n?(c=i==="exact"?this.#m:this.#f,u=[a,this.#l(n,i),r]):s?(c=this.#x,u=[a,s,r]):(c=this.#p,u=[a,r]),cp(()=>this.#C(c.all(...u)))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=uC(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#w:this.#b,u=[a,this.#l(n,i),s,r]):n?(c=i==="exact"?this.#_:this.#g,u=[a,this.#l(n,i),r]):s?(c=this.#k,u=[a,s,r]):(c=this.#h,u=[a,r]),this.#C(c.all(...u))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=dC(r.length),o=this.#y.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=lC(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}#I(e,r,n,o,s="like"){let a=Math.max(r*2,10),c=this.search(e,a,n,"OR",o,s),u=this.searchTrigram(e,a,n,"OR",o,s),l=new Map,d=f=>`${f.source}::${f.title}`;for(let[f,m]of c.entries()){let p=d(m),h=l.get(p);h?h.score+=1/(60+f+1):l.set(p,{result:m,score:1/(60+f+1)})}for(let[f,m]of u.entries()){let p=d(m),h=l.get(p);h?h.score+=1/(60+f+1):l.set(p,{result:m,score:1/(60+f+1)})}return Array.from(l.values()).sort((f,m)=>m.score-f.score).slice(0,r).map(({result:f,score:m})=>({...f,rank:-m}))}#z(e,r){let n=r.toLowerCase().split(/\s+/).filter(o=>o.length>=2);return n.length<2?e:e.map(o=>{let s=o.content.toLowerCase(),i=n.map(u=>pC(s,u));if(i.some(u=>u.length===0))return{result:o,boost:0};let c=1/(1+fC(i)/Math.max(s.length,1));return{result:o,boost:c}}).sort((o,s)=>s.boost-o.boost||o.result.rank-s.result.rank).map(({result:o})=>o)}searchWithFallback(e,r=3,n,o,s="like"){let i=this.#I(e,r,n,o,s);if(i.length>0)return this.#z(i,e).map(f=>({...f,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#I(l,r,n,o,s);if(d.length>0)return this.#z(d,l).map(m=>({...m,matchLayer:"rrf-fuzzy"}))}return[]}getSourceMeta(e){let r=this.#O.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at}:null}listSources(){return this.#E.all()}getChunksBySource(e){return this.#T.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.#P.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!dx.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.#R.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){let r=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),n=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),o=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')");return this.#e.transaction(a=>(r.run(a),n.run(a),o.run(a)))(e).changes}getDBSizeBytes(){try{return up(this.#t).size}catch{return 0}}close(){ux(this.#e)}#M(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!dx.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#o.run(o)})()}#D(e,r=px){let n=[],o=e.split(`
324
324
  `),s=[],i=[],a="",c=()=>{let l=i.join(`
325
325
  `).trim();if(l.length===0)return;let d=this.#q(s,a),f=i.some(v=>/^`{3,}/.test(v));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 v=p.join(`
326
326
 
@@ -329,24 +329,24 @@ ${n}`}}};import{createRequire as nC}from"node:module";var ip=class{#e;constructo
329
329
  `);Buffer.byteLength(y)>r&&p.length>1&&(p.pop(),g(),p=[v])}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}#L(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(`
330
330
  `)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
331
331
  `);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(`
332
- `)})}return s}#N(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.#N(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#H(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#Z(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}#U(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])}`}#H(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#Z(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#U(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)}#q(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as mx}from"node:fs";import{resolve as Wn}from"node:path";import{homedir as hx}from"node:os";function gx(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function pC(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function fC(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function fx(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function mC(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=fC(o),a=fx(s);r=`^${i}(\\s${a})?$`}else r=`^${fx(t)}$`;return new RegExp(r,e?"i":"")}function hC(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 gC(t,e,r=!1){for(let n of e){let o=gx(n);if(o&&mC(o,r).test(t))return n}return null}function _C(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 lp(t){let e;try{e=mx(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"&&gx(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function dp(t,e){let r=[];if(t){let s=Wn(t,".claude","settings.local.json"),i=lp(s);i&&r.push(i);let a=Wn(t,".claude","settings.json"),c=lp(a);c&&r.push(c)}let n=e??Wn(hx(),".claude","settings.json"),o=lp(n);return o&&r.push(o),r}function _x(t,e,r){let n=[],o=a=>{let c;try{c=mx(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=pC(f);m&&m.tool===t&&d.push(m.glob)}return d};if(e){let a=o(Wn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Wn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Wn(hx(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function pp(t,e,r=process.platform==="win32"){let n=_C(t);for(let o of n)for(let s of e){let i=gC(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function yx(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(hC(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var yC={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 xC(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 xx(t,e){let r=yC[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(...xC(t)),n}function fp(t){let{language:e,exitCode:r,stdout:n,stderr:o}=t,s=e==="shell"&&r===1&&n.trim().length>0;return{isError:!s,output:s?n:`Exit code: ${r}
332
+ `)})}return s}#N(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.#N(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#H(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#Z(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}#U(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])}`}#H(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#Z(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#U(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)}#q(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as _x}from"node:fs";import{resolve as Yn}from"node:path";import{homedir as yx}from"node:os";function xx(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function mC(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function hC(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function gx(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function gC(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=hC(o),a=gx(s);r=`^${i}(\\s${a})?$`}else r=`^${gx(t)}$`;return new RegExp(r,e?"i":"")}function _C(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 yC(t,e,r=!1){for(let n of e){let o=xx(n);if(o&&gC(o,r).test(t))return n}return null}function xC(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 fp(t){let e;try{e=_x(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"&&xx(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function mp(t,e){let r=[];if(t){let s=Yn(t,".claude","settings.local.json"),i=fp(s);i&&r.push(i);let a=Yn(t,".claude","settings.json"),c=fp(a);c&&r.push(c)}let n=e??Yn(yx(),".claude","settings.json"),o=fp(n);return o&&r.push(o),r}function vx(t,e,r){let n=[],o=a=>{let c;try{c=_x(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=mC(f);m&&m.tool===t&&d.push(m.glob)}return d};if(e){let a=o(Yn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Yn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Yn(yx(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function hp(t,e,r=process.platform==="win32"){let n=xC(t);for(let o of n)for(let s of e){let i=yC(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function Sx(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(_C(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var vC={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 SC(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 kx(t,e){let r=vC[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(...SC(t)),n}function gp(t){let{language:e,exitCode:r,stdout:n,stderr:o}=t,s=e==="shell"&&r===1&&n.trim().length>0;return{isError:!s,output:s?n:`Exit code: ${r}
333
333
 
334
334
  stdout:
335
335
  ${n}
336
336
 
337
337
  stderr:
338
- ${o}`}}var vC=process.ppid;function kC(){let t=process.ppid;return!(t!==vC||t===0||t===1)}function vx(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??kC,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=()=>o();process.stdin.resume(),process.stdin.on("end",i),process.stdin.on("close",i),process.stdin.on("error",i);let a=["SIGTERM","SIGINT"];process.platform!=="win32"&&a.push("SIGHUP");for(let c of a)process.on(c,o);return()=>{n=!0,clearInterval(s),process.stdin.removeListener("end",i),process.stdin.removeListener("close",i),process.stdin.removeListener("error",i);for(let c of a)process.removeListener(c,o)}}import{createHash as SC}from"node:crypto";import{execFileSync as bC}from"node:child_process";function kx(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=bC("git",["worktree","list","--porcelain"],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).split(/\r?\n/).find(n=>n.startsWith("worktree "))?.replace("worktree ","")?.trim();if(r&&e!==r)return`__${SC("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var ln=Gp(kI(import.meta.url)),Yp=(()=>{for(let t of["../package.json","./package.json"]){let e=un(ln,t);if(vr(e))try{return JSON.parse(Fv(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
338
+ ${o}`}}var kC=process.ppid;function bC(){let t=process.ppid;return!(t!==kC||t===0||t===1)}function bx(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??bC,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=()=>o();process.stdin.resume(),process.stdin.on("end",i),process.stdin.on("close",i),process.stdin.on("error",i);let a=["SIGTERM","SIGINT"];process.platform!=="win32"&&a.push("SIGHUP");for(let c of a)process.on(c,o);return()=>{n=!0,clearInterval(s),process.stdin.removeListener("end",i),process.stdin.removeListener("close",i),process.stdin.removeListener("error",i);for(let c of a)process.removeListener(c,o)}}import{createHash as wC}from"node:crypto";import{execFileSync as EC}from"node:child_process";function wx(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=EC("git",["worktree","list","--porcelain"],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).split(/\r?\n/).find(n=>n.startsWith("worktree "))?.replace("worktree ","")?.trim();if(r&&e!==r)return`__${wC("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var pn=Qp(bI(import.meta.url)),ef=(()=>{for(let t of["../package.json","./package.json"]){let e=dn(pn,t);if(kr(e))try{return JSON.parse(Kv(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
339
339
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
340
- `)});var Ea=ua(),Sa=Xy(Ea),Ve=new ia({name:"context-mode",version:Yp});Ve.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Ve.server.setRequestHandler(Rn,async()=>({prompts:[]}));Ve.server.setRequestHandler($n,async()=>({resources:[]}));Ve.server.setRequestHandler(Pn,async()=>({resourceTemplates:[]}));var bs=new ls({runtimes:Ea,projectRoot:process.env.CLAUDE_PROJECT_DIR}),Zt=null;function bI(t){try{let e=Yt(Ss(),".claude","context-mode","sessions");if(!vr(e))return;let r=qv(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=Yt(e,n);try{t.index({path:o,source:"session-events"}),Hv(o)}catch{}}}catch{}}function wI(){let e=(process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.OPENCLAW_HOME||process.cwd()).replace(/\\/g,"/"),r=Uv("sha256").update(e).digest("hex").slice(0,16),n=Yt(Ss(),".context-mode","content");return vI(n,{recursive:!0}),Yt(n,`${r}.db`)}function dn(){if(!Zt){let t=wI();Zt=new fa(t);try{let e=Yt(Ss(),".context-mode","content");px(e,14),Zt.cleanupStaleSources(14)}catch{}up()}return bI(Zt),Zt}var ee={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()};function Bv(){if(ee.calls={},ee.bytesReturned={},ee.bytesIndexed=0,ee.bytesSandboxed=0,ee.cacheHits=0,ee.cacheBytesSaved=0,ee.sessionStart=Date.now(),Zt){try{Zt.cleanup()}catch{}Zt=null}}function Vv(){let t=Yt(Ss(),".claude","context-mode","sessions");try{let e=qv(t).filter(r=>r.endsWith(".clear-stats"));for(let r of e)Hv(Yt(t,r));e.length>0&&Bv()}catch{}}function Z(t,e){Vv();let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return ee.calls[t]=(ee.calls[t]||0)+1,ee.bytesReturned[t]=(ee.bytesReturned[t]||0)+r,e}function $t(t){ee.bytesIndexed+=t}function Xp(t,e){try{let r=dp(process.env.CLAUDE_PROJECT_DIR),n=pp(t,r);if(n.decision==="deny")return Z(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Kv(t,e,r){try{let n=xx(t,e);if(n.length===0)return null;let o=dp(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=pp(s,o);if(i.decision==="deny")return Z(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 EI(t,e){try{let r=_x("Read",process.env.CLAUDE_PROJECT_DIR),n=yx(t,r);if(n.denied)return Z(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}var TI=Sa.join(", "),$I=la()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",PI="",RI="";function OI(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===PI){for(e.push(r),n++;n<t.length&&t[n]!==RI;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Jv(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of OI(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)+`
340
+ `)});var Ta=la(),ba=tx(Ta),Ve=new aa({name:"context-mode",version:ef});Ve.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Ve.server.setRequestHandler(Cn,async()=>({prompts:[]}));Ve.server.setRequestHandler(Rn,async()=>({resources:[]}));Ve.server.setRequestHandler(On,async()=>({resourceTemplates:[]}));var ws=new ds({runtimes:Ta,projectRoot:process.env.CLAUDE_PROJECT_DIR}),Ht=null;function EI(t){try{let e=er(bs(),".claude","context-mode","sessions");if(!kr(e))return;let r=Vv(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=er(e,n);try{t.index({path:o,source:"session-events"}),Bv(o)}catch{}}}catch{}}function TI(){let e=(process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.OPENCLAW_HOME||process.cwd()).replace(/\\/g,"/"),r=Fv("sha256").update(e).digest("hex").slice(0,16),n=er(bs(),".context-mode","content");return kI(n,{recursive:!0}),er(n,`${r}.db`)}function fn(){if(!Ht){let t=TI();Ht=new ma(t);try{let e=er(bs(),".context-mode","content");hx(e,14),Ht.cleanupStaleSources(14)}catch{}pp()}return EI(Ht),Ht}var ee={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()};function Jv(){if(ee.calls={},ee.bytesReturned={},ee.bytesIndexed=0,ee.bytesSandboxed=0,ee.cacheHits=0,ee.cacheBytesSaved=0,ee.sessionStart=Date.now(),Ht){try{Ht.cleanup()}catch{}Ht=null}}function Wv(){let t=er(bs(),".claude","context-mode","sessions");try{let e=Vv(t).filter(r=>r.endsWith(".clear-stats"));for(let r of e)Bv(er(t,r));e.length>0&&Jv()}catch{}}function Z(t,e){Wv();let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return ee.calls[t]=(ee.calls[t]||0)+1,ee.bytesReturned[t]=(ee.bytesReturned[t]||0)+r,e}function Pt(t){ee.bytesIndexed+=t}function tf(t,e){try{let r=mp(process.env.CLAUDE_PROJECT_DIR),n=hp(t,r);if(n.decision==="deny")return Z(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Gv(t,e,r){try{let n=kx(t,e);if(n.length===0)return null;let o=mp(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=hp(s,o);if(i.decision==="deny")return Z(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 $I(t,e){try{let r=vx("Read",process.env.CLAUDE_PROJECT_DIR),n=Sx(t,r);if(n.denied)return Z(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}var PI=ba.join(", "),RI=da()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",OI="",CI="";function II(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===OI){for(e.push(r),n++;n<t.length&&t[n]!==CI;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Yv(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of II(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)+`
341
341
  \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(`
342
342
 
343
- `)}function CI(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
343
+ `)}function zI(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
344
344
  (output cap reached \u2014 use search(queries: ["${i}"]) for details)
345
- `);continue}let a=t.searchWithFallback(i,3,r,void 0,"exact");if(o.push(`## ${i}`),o.push(""),a.length>0){for(let c of a){let u=Jv(c.content,i,3e3,c.highlighted);o.push(`### ${c.title}`),o.push(u),o.push(""),s+=u.length+c.title.length}continue}o.push("No matching sections found."),o.push("")}return o.push("\n> **Tip:** Results are scoped to this batch only. To search across all indexed sources, use `ctx_search(queries: [...])`."),o}Ve.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.${$I} Available: ${TI}.
345
+ `);continue}let a=t.searchWithFallback(i,3,r,void 0,"exact");if(o.push(`## ${i}`),o.push(""),a.length>0){for(let c of a){let u=Yv(c.content,i,3e3,c.highlighted);o.push(`### ${c.title}`),o.push(u),o.push(""),s+=u.length+c.title.length}continue}o.push("No matching sections found."),o.push("")}return o.push("\n> **Tip:** Results are scoped to this batch only. To search across all indexed sources, use `ctx_search(queries: [...])`."),o}Ve.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.${RI} Available: ${PI}.
346
346
 
347
347
  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:L.object({language:L.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:L.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:L.number().optional().default(3e4).describe("Max execution time in ms"),background:L.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:L.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'.
348
348
 
349
- 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=Xp(e,"execute");if(s)return s}else{let s=Kv(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
349
+ 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=tf(e,"execute");if(s)return s}else{let s=Gv(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
350
350
  let __cm_net=0;
351
351
  // Report network bytes on process exit \u2014 works with both promise and callback patterns.
352
352
  // process.on('exit') fires after all I/O completes, unlike .finally() which fires
@@ -392,21 +392,21 @@ ${e}
392
392
  }
393
393
  __cm_main().catch(e=>{console.error(e);process.exitCode=1});${n?`
394
394
  setInterval(()=>{},2147483647);`:""}
395
- })(typeof require!=='undefined'?require:null);`);let i=await bs.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);if(a&&(ee.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?Z("ctx_execute",{content:[{type:"text",text:`${u}
395
+ })(typeof require!=='undefined'?require:null);`);let i=await ws.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);if(a&&(ee.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?Z("ctx_execute",{content:[{type:"text",text:`${u}
396
396
 
397
397
  _(process backgrounded after ${r}ms \u2014 still running)_`}]}):u?Z("ctx_execute",{content:[{type:"text",text:`${u}
398
398
 
399
399
  _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):Z("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
400
400
 
401
401
  stderr:
402
- ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:u,output:l}=fp({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(l)>ba?($t(Buffer.byteLength(l)),Z("ctx_execute",{content:[{type:"text",text:no(l,o,u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):Buffer.byteLength(l)>wa?($t(Buffer.byteLength(l)),Z("ctx_execute",{content:[{type:"text",text:no(l,"errors failures exceptions",u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):Z("ctx_execute",{content:[{type:"text",text:l}],isError:u})}let c=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(c)>ba?($t(Buffer.byteLength(c)),Z("ctx_execute",{content:[{type:"text",text:no(c,o,`execute:${t}`)}]})):Buffer.byteLength(c)>wa?Z("ctx_execute",Wv(c,`execute:${t}`)):Z("ctx_execute",{content:[{type:"text",text:c}]})}catch(s){let i=s instanceof Error?s.message:String(s);return Z("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});function Wv(t,e){let r=dn();$t(Buffer.byteLength(t));let n=r.index({content:t,source:e});return{content:[{type:"text",text:`Indexed ${n.totalChunks} sections (${n.codeChunks} with code) from: ${n.label}
403
- Use search(queries: ["..."]) to query this content. Use source: "${n.label}" to scope results.`}]}}var ba=5e3,wa=102400;function no(t,e,r,n=5){let o=t.split(`
404
- `).length,s=Buffer.byteLength(t),i=dn(),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(`
402
+ ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:u,output:l}=gp({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(l)>wa?(Pt(Buffer.byteLength(l)),Z("ctx_execute",{content:[{type:"text",text:oo(l,o,u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):Buffer.byteLength(l)>Ea?(Pt(Buffer.byteLength(l)),Z("ctx_execute",{content:[{type:"text",text:oo(l,"errors failures exceptions",u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):Z("ctx_execute",{content:[{type:"text",text:l}],isError:u})}let c=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(c)>wa?(Pt(Buffer.byteLength(c)),Z("ctx_execute",{content:[{type:"text",text:oo(c,o,`execute:${t}`)}]})):Buffer.byteLength(c)>Ea?Z("ctx_execute",Xv(c,`execute:${t}`)):Z("ctx_execute",{content:[{type:"text",text:c}]})}catch(s){let i=s instanceof Error?s.message:String(s);return Z("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});function Xv(t,e){let r=fn();Pt(Buffer.byteLength(t));let n=r.index({content:t,source:e});return{content:[{type:"text",text:`Indexed ${n.totalChunks} sections (${n.codeChunks} with code) from: ${n.label}
403
+ Use search(queries: ["..."]) to query this content. Use source: "${n.label}" to scope results.`}]}}var wa=5e3,Ea=102400;function oo(t,e,r,n=5){let o=t.split(`
404
+ `).length,s=Buffer.byteLength(t),i=fn(),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(`
405
405
  `)}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(`
406
406
  `)[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(`
407
407
  `)}Ve.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.
408
408
 
409
- 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:L.object({path:L.string().describe("Absolute file path or relative to project root"),language:L.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:L.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:L.number().optional().default(3e4).describe("Max execution time in ms"),intent:L.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=EI(t,"execute_file");if(s)return s;if(e==="shell"){let i=Xp(r,"execute_file");if(i)return i}else{let i=Kv(r,e,"execute_file");if(i)return i}try{let i=await bs.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return Z("ctx_execute_file",{content:[{type:"text",text:`Timed out processing ${t} after ${n}ms`}],isError:!0});if(i.exitCode!==0){let{isError:c,output:u}=fp({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>ba?($t(Buffer.byteLength(u)),Z("ctx_execute_file",{content:[{type:"text",text:no(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>wa?($t(Buffer.byteLength(u)),Z("ctx_execute_file",{content:[{type:"text",text:no(u,"errors failures exceptions",c?`file:${t}:error`:`file:${t}`)}],isError:c})):Z("ctx_execute_file",{content:[{type:"text",text:u}],isError:c})}let a=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(a)>ba?($t(Buffer.byteLength(a)),Z("ctx_execute_file",{content:[{type:"text",text:no(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>wa?Z("ctx_execute_file",Wv(a,`file:${t}`)):Z("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return Z("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});Ve.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.
409
+ 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:L.object({path:L.string().describe("Absolute file path or relative to project root"),language:L.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:L.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:L.number().optional().default(3e4).describe("Max execution time in ms"),intent:L.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=$I(t,"execute_file");if(s)return s;if(e==="shell"){let i=tf(r,"execute_file");if(i)return i}else{let i=Gv(r,e,"execute_file");if(i)return i}try{let i=await ws.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return Z("ctx_execute_file",{content:[{type:"text",text:`Timed out processing ${t} after ${n}ms`}],isError:!0});if(i.exitCode!==0){let{isError:c,output:u}=gp({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>wa?(Pt(Buffer.byteLength(u)),Z("ctx_execute_file",{content:[{type:"text",text:oo(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>Ea?(Pt(Buffer.byteLength(u)),Z("ctx_execute_file",{content:[{type:"text",text:oo(u,"errors failures exceptions",c?`file:${t}:error`:`file:${t}`)}],isError:c})):Z("ctx_execute_file",{content:[{type:"text",text:u}],isError:c})}let a=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(a)>wa?(Pt(Buffer.byteLength(a)),Z("ctx_execute_file",{content:[{type:"text",text:oo(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>Ea?Z("ctx_execute_file",Xv(a,`file:${t}`)):Z("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return Z("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});Ve.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.
410
410
 
411
411
  WHEN TO USE:
412
412
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -417,21 +417,21 @@ WHEN TO USE:
417
417
  - Any content with code examples you may need to reference precisely
418
418
 
419
419
  After indexing, use 'search' to retrieve specific sections on-demand.
420
- Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:L.object({content:L.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:L.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:L.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 Z("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)$t(Buffer.byteLength(t));else if(e)try{let s=await import("fs");$t(s.readFileSync(e).byteLength)}catch{}let o=dn().index({content:t,path:e,source:r});return Z("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
421
- 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 Z("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});var cn=0,Kp=Date.now(),II=6e4,Dv=3,Lv=8;function Qp(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function zI(t){let e=Qp(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}Ve.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Requires prior indexing via ctx_batch_execute, ctx_index, or ctx_fetch_and_index. Pass ALL search questions as queries array in ONE call.
420
+ Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:L.object({content:L.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:L.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:L.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 Z("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)Pt(Buffer.byteLength(t));else if(e)try{let s=await import("fs");Pt(s.readFileSync(e).byteLength)}catch{}let o=fn().index({content:t,path:e,source:r});return Z("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
421
+ 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 Z("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});var ln=0,Gp=Date.now(),NI=6e4,Uv=3,Hv=8;function rf(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function AI(t){let e=rf(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}Ve.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Requires prior indexing via ctx_batch_execute, ctx_index, or ctx_fetch_and_index. Pass ALL search questions as queries array in ONE call.
422
422
 
423
- TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:L.object({queries:L.preprocess(Qp,L.array(L.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:L.number().optional().default(3).describe("Results per query (default: 3)"),source:L.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:L.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'.")})},async t=>{try{let e=dn();if(e.getStats().chunks===0)return Z("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
423
+ TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:L.object({queries:L.preprocess(rf,L.array(L.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:L.number().optional().default(3).describe("Results per query (default: 3)"),source:L.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:L.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'.")})},async t=>{try{let e=fn();if(e.getStats().chunks===0)return Z("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
424
424
 
425
425
  ctx_search is a follow-up tool that queries previously indexed content. To gather and index content first, use:
426
426
  \u2022 ctx_batch_execute(commands, queries) \u2014 run commands, auto-index output, and search in one call
427
427
  \u2022 ctx_fetch_and_index(url) \u2014 fetch a URL, index it, then search with ctx_search
428
428
  \u2022 ctx_index(content, source) \u2014 manually index text content
429
429
 
430
- After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let 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 Z("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:o=3,source:s,contentType:i}=t,a=Date.now();if(a-Kp>II&&(cn=0,Kp=a),cn++,cn>Lv)return Z("ctx_search",{content:[{type:"text",text:`BLOCKED: ${cn} search calls in ${Math.round((a-Kp)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let c=cn>Dv?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let m of n){if(l>u){d.push(`## ${m}
430
+ After indexing, ctx_search becomes available for follow-up queries.`}],isError:!0});let 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 Z("ctx_search",{content:[{type:"text",text:"Error: provide query or queries."}],isError:!0});let{limit:o=3,source:s,contentType:i}=t,a=Date.now();if(a-Gp>NI&&(ln=0,Gp=a),ln++,ln>Hv)return Z("ctx_search",{content:[{type:"text",text:`BLOCKED: ${ln} search calls in ${Math.round((a-Gp)/1e3)}s. You're flooding context. STOP making individual search calls. Use batch_execute(commands, queries) for your next research step.`}],isError:!0});let c=ln>Uv?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let m of n){if(l>u){d.push(`## ${m}
431
431
  (output cap reached)
432
432
  `);continue}let p=e.searchWithFallback(m,c,s,i);if(p.length===0){d.push(`## ${m}
433
- No results found.`);continue}let h=p.map((g,v)=>{let y=`--- [${g.source}] ---`,k=`### ${g.title}`,E=Jv(g.content,m,1500,g.highlighted);return`${y}
434
- ${k}
433
+ No results found.`);continue}let h=p.map((g,v)=>{let y=`--- [${g.source}] ---`,S=`### ${g.title}`,E=Yv(g.content,m,1500,g.highlighted);return`${y}
434
+ ${S}
435
435
 
436
436
  ${E}`}).join(`
437
437
 
@@ -441,10 +441,10 @@ ${h}`),l+=h.length}let f=d.join(`
441
441
 
442
442
  ---
443
443
 
444
- `);if(cn>=Dv&&(f+=`
444
+ `);if(ln>=Uv&&(f+=`
445
445
 
446
- \u26A0 search call #${cn}/${Lv} in this window. Results limited to ${c}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),f.trim().length===0){let m=e.listSources(),p=m.length>0?`
447
- Indexed sources: ${m.map(h=>`"${h.label}" (${h.chunkCount} sections)`).join(", ")}`:"";return Z("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return Z("ctx_search",{content:[{type:"text",text:f}]})}catch(e){let r=e instanceof Error?e.message:String(e);return Z("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});var Jp=null,Wp=null;function NI(){return Jp||(Jp=Zv(import.meta.url).resolve("turndown")),Jp}function AI(){return Wp||(Wp=Zv(import.meta.url).resolve("turndown-plugin-gfm")),Wp}function jI(t,e){let r=JSON.stringify(NI()),n=JSON.stringify(AI()),o=JSON.stringify(e);return`
446
+ \u26A0 search call #${ln}/${Hv} in this window. Results limited to ${c}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),f.trim().length===0){let m=e.listSources(),p=m.length>0?`
447
+ Indexed sources: ${m.map(h=>`"${h.label}" (${h.chunkCount} sections)`).join(", ")}`:"";return Z("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return Z("ctx_search",{content:[{type:"text",text:f}]})}catch(e){let r=e instanceof Error?e.message:String(e);return Z("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});var Yp=null,Xp=null;function jI(){return Yp||(Yp=qv(import.meta.url).resolve("turndown")),Yp}function MI(){return Xp||(Xp=qv(import.meta.url).resolve("turndown-plugin-gfm")),Xp}function DI(t,e){let r=JSON.stringify(jI()),n=JSON.stringify(MI()),o=JSON.stringify(e);return`
448
448
  const TurndownService = require(${r});
449
449
  const { gfm } = require(${n});
450
450
  const fs = require('fs');
@@ -494,35 +494,35 @@ main();
494
494
 
495
495
  Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
496
496
 
497
- Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.`,inputSchema:L.object({url:L.string().describe("The URL to fetch and index"),source:L.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')"),force:L.boolean().optional().describe("Skip cache and re-fetch even if content was recently indexed")})},async({url:t,source:e,force:r})=>{if(!r){let o=dn(),s=e??t,i=o.getSourceMeta(s);if(i){let a=new Date(i.indexedAt+"Z"),c=Date.now()-a.getTime(),u=1440*60*1e3;if(c<u){let l=Math.floor(c/36e5),d=Math.floor(c/(60*1e3)),f=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now",m=i.chunkCount*1600;return ee.cacheHits++,ee.cacheBytesSaved+=m,Z("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${f} (fresh, TTL: 24h).
497
+ Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.`,inputSchema:L.object({url:L.string().describe("The URL to fetch and index"),source:L.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')"),force:L.boolean().optional().describe("Skip cache and re-fetch even if content was recently indexed")})},async({url:t,source:e,force:r})=>{if(!r){let o=fn(),s=e??t,i=o.getSourceMeta(s);if(i){let a=new Date(i.indexedAt+"Z"),c=Date.now()-a.getTime(),u=1440*60*1e3;if(c<u){let l=Math.floor(c/36e5),d=Math.floor(c/(60*1e3)),f=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now",m=i.chunkCount*1600;return ee.cacheHits++,ee.cacheBytesSaved+=m,Z("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${f} (fresh, TTL: 24h).
498
498
  To refresh: call ctx_fetch_and_index again with \`force: true\`.
499
499
 
500
500
  You MUST call search() to answer questions about this content \u2014 this cached response contains no content.
501
- Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=Yt(SI(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=jI(t,n),s=await bs.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=dn(),a=(s.stdout||"").trim(),c;try{c=Fv(n,"utf-8").trim()}catch{return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});$t(Buffer.byteLength(c));let u;a==="__CM_CT__:json"?u=i.indexJSON(c,e??t):a==="__CM_CT__:text"?u=i.indexPlainText(c,e??t):u=i.index({content:c,source:e??t});let l=3072,d=c.length>l?c.slice(0,l)+`
501
+ Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=er(wI(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=DI(t,n),s=await ws.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=fn(),a=(s.stdout||"").trim(),c;try{c=Kv(n,"utf-8").trim()}catch{return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});Pt(Buffer.byteLength(c));let u;a==="__CM_CT__:json"?u=i.indexJSON(c,e??t):a==="__CM_CT__:text"?u=i.indexPlainText(c,e??t):u=i.index({content:c,source:e??t});let l=3072,d=c.length>l?c.slice(0,l)+`
502
502
 
503
503
  \u2026[truncated \u2014 use search() for full content]`:c,f=(Buffer.byteLength(c)/1024).toFixed(1),m=[`Fetched and indexed **${u.totalChunks} sections** (${f}KB) from: ${u.label}`,`Full content indexed in sandbox \u2014 use search(queries: [...], source: "${u.label}") for specific lookups.`,"","---","",d].join(`
504
- `);return Z("ctx_fetch_and_index",{content:[{type:"text",text:m}]})}catch(o){let s=o instanceof Error?o.message:String(o);return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{xI(n)}catch{}}});Ve.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.
504
+ `);return Z("ctx_fetch_and_index",{content:[{type:"text",text:m}]})}catch(o){let s=o instanceof Error?o.message:String(o);return Z("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{SI(n)}catch{}}});Ve.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.
505
505
 
506
506
  THIS IS THE PRIMARY TOOL. Use this instead of multiple execute() calls.
507
507
 
508
508
  One batch_execute call replaces 30+ execute calls + 10+ search calls.
509
- Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:L.object({commands:L.preprocess(zI,L.array(L.object({label:L.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:L.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:L.preprocess(Qp,L.array(L.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:L.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=Xp(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1;for(let y of t){let k=Date.now()-o,E=r-k;if(E<=0){n.push(`# ${y.label}
509
+ Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:L.object({commands:L.preprocess(AI,L.array(L.object({label:L.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:L.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:L.preprocess(rf,L.array(L.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:L.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=tf(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1;for(let y of t){let S=Date.now()-o,E=r-S;if(E<=0){n.push(`# ${y.label}
510
510
 
511
511
  (skipped \u2014 batch timeout exceeded)
512
- `),s=!0;continue}let C=await bs.execute({language:"shell",code:`${y.command} 2>&1`,timeout:E}),ye=C.stdout||"(no output)";if(n.push(`# ${y.label}
512
+ `),s=!0;continue}let C=await ws.execute({language:"shell",code:`${y.command} 2>&1`,timeout:E}),xe=C.stdout||"(no output)";if(n.push(`# ${y.label}
513
513
 
514
- ${ye}
514
+ ${xe}
515
515
  `),C.timedOut){s=!0;let Ae=t.indexOf(y);for(let Ze=Ae+1;Ze<t.length;Ze++)n.push(`# ${t[Ze].label}
516
516
 
517
517
  (skipped \u2014 batch timeout exceeded)
518
518
  `);break}}let i=n.join(`
519
519
  `),a=Buffer.byteLength(i),c=i.split(`
520
- `).length;if(s&&n.length===0)return Z("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});$t(a);let u=dn(),l=`batch:${t.map(y=>y.label).join(",").slice(0,80)}`,d=u.index({content:i,source:l}),f=u.getChunksBySource(d.sourceId),m=["## Indexed Sections",""],p=[];for(let y of f){let k=Buffer.byteLength(y.content);m.push(`- ${y.title} (${(k/1024).toFixed(1)}KB)`),p.push(y.title)}let h=CI(u,e,l),g=u.getDistinctiveTerms?u.getDistinctiveTerms(d.sourceId):[],v=[`Executed ${t.length} commands (${c} lines, ${(a/1024).toFixed(1)}KB). Indexed ${d.totalChunks} sections. Searched ${e.length} queries.`,"",...m,"",...h,g.length>0?`
520
+ `).length;if(s&&n.length===0)return Z("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});Pt(a);let u=fn(),l=`batch:${t.map(y=>y.label).join(",").slice(0,80)}`,d=u.index({content:i,source:l}),f=u.getChunksBySource(d.sourceId),m=["## Indexed Sections",""],p=[];for(let y of f){let S=Buffer.byteLength(y.content);m.push(`- ${y.title} (${(S/1024).toFixed(1)}KB)`),p.push(y.title)}let h=zI(u,e,l),g=u.getDistinctiveTerms?u.getDistinctiveTerms(d.sourceId):[],v=[`Executed ${t.length} commands (${c} lines, ${(a/1024).toFixed(1)}KB). Indexed ${d.totalChunks} sections. Searched ${e.length} queries.`,"",...m,"",...h,g.length>0?`
521
521
  Searchable terms for follow-up: ${g.join(", ")}`:""].join(`
522
- `);return Z("ctx_batch_execute",{content:[{type:"text",text:v}]})}catch(n){let o=n instanceof Error?n.message:String(n);return Z("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});Ve.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:L.object({reset:L.boolean().optional().describe("Reset all stats and FTS5 store to zero. Use after /clear.")})},async({reset:t})=>{if(Vv(),t)return Bv(),Z("ctx_stats",{content:[{type:"text",text:"Session stats and search index reset."}]});let e=Object.values(ee.bytesReturned).reduce((f,m)=>f+m,0),r=Object.values(ee.calls).reduce((f,m)=>f+m,0),o=((Date.now()-ee.sessionStart)/6e4).toFixed(1),s=ee.bytesIndexed+ee.bytesSandboxed,i=s+e,a=i/Math.max(e,1),c=i>0?((1-e/i)*100).toFixed(0):"0",u=f=>f>=1024*1024?`${(f/1024/1024).toFixed(1)}MB`:`${(f/1024).toFixed(1)}KB`,l=[`## context-mode \u2014 Session Report (${o} min)`];if(l.push("","### Context Window Protection",""),r===0)l.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{l.push("| Metric | Value |","|--------|------:|",`| Total data processed | **${u(i)}** |`,`| Kept in sandbox (never entered context) | **${u(s)}** |`,`| Entered context | ${u(e)} |`,`| Estimated tokens saved | ~${Math.round(s/4).toLocaleString()} |`,`| **Context savings** | **${a.toFixed(1)}x (${c}% reduction)** |`);let f=new Set([...Object.keys(ee.calls),...Object.keys(ee.bytesReturned)]);if(f.size>0){l.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let m of Array.from(f).sort()){let p=ee.calls[m]||0,h=ee.bytesReturned[m]||0,g=Math.round(h/4);l.push(`| ${m} | ${p} | ${u(h)} | ~${g.toLocaleString()} |`)}l.push(`| **Total** | **${r}** | **${u(e)}** | **~${Math.round(e/4).toLocaleString()}** |`)}if(s>0&&l.push("",`Without context-mode, **${u(i)}** of raw output would flood your context window. Instead, **${c}%** stayed in sandbox.`),ee.cacheHits>0||ee.cacheBytesSaved>0){let m=i+ee.cacheBytesSaved,p=m/Math.max(e,1),h=Math.max(0,24-Math.floor((Date.now()-ee.sessionStart)/(3600*1e3)));l.push("","### TTL Cache","","| Metric | Value |","|--------|------:|",`| Cache hits | **${ee.cacheHits}** |`,`| Data avoided by cache | **${u(ee.cacheBytesSaved)}** |`,`| Network requests saved | **${ee.cacheHits}** |`,`| TTL remaining | **~${h}h** |`,"",`Content was already indexed in the knowledge base \u2014 ${ee.cacheHits} fetch${ee.cacheHits>1?"es":""} skipped entirely. **${u(ee.cacheBytesSaved)}** of network I/O avoided. Search results served directly from local FTS5 index.`),p>a&&l.push("",`**Total context savings (sandbox + cache): ${p.toFixed(1)}x** \u2014 ${u(m)} processed, only ${u(e)} entered context.`)}}try{let f=process.env.CLAUDE_PROJECT_DIR||process.cwd(),m=Uv("sha256").update(f).digest("hex").slice(0,16),p=kx(),h=Yt(Ss(),".claude","context-mode","sessions",`${m}${p}.db`);if(vr(h)){let g=ds(),v=new g(h,{readonly:!0}),y=v.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),k=v.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),E=v.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),C=v.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(y.cnt>0){let ye=E?.compact_count??0,Ae=v.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),Ze=new Map;for(let Ee of Ae){Ze.has(Ee.category)||Ze.set(Ee.category,new Set);let Sr=Ze.get(Ee.category);if(Sr.size<5){let Ue=Ee.data;Ee.category==="file"?Ue=Ee.data.split("/").pop()||Ee.data:Ee.category==="prompt"&&(Ue=Ue.length>50?Ue.slice(0,47)+"...":Ue),Ue.length>40&&(Ue=Ue.slice(0,37)+"..."),Sr.add(Ue)}}let oo={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"},kr={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"};l.push("","### Session Continuity","","| What's preserved | Count | I remember... | Why it matters |","|------------------|------:|---------------|----------------|");for(let Ee of k){let Sr=oo[Ee.category]||Ee.category,Ue=Ze.get(Ee.category),Ta=Ue?Array.from(Ue).join(", "):"",Gv=kr[Ee.category]||"Survives context resets";l.push(`| ${Sr} | ${Ee.cnt} | ${Ta} | ${Gv} |`)}l.push(`| **Total** | **${y.cnt}** | | **Zero knowledge lost on compact** |`),l.push(""),ye>0?l.push(`Context has been compacted **${ye} time(s)** \u2014 session knowledge was preserved each time.`):l.push("When your context compacts, all of this will restore Claude's awareness \u2014 no starting from scratch."),C&&!C.consumed&&l.push(`Resume snapshot ready (${C.event_count} events) for the next compaction.`),l.push(""),l.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.")}v.close()}}catch{}l.push("","---","_Display this entire report as-is in your response. Do NOT summarize, collapse, or paraphrase any section._");let d=l.join(`
523
- `);return Z("ctx_stats",{content:[{type:"text",text:d}]})});Ve.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns results as a markdown checklist. No CLI execution needed.",inputSchema:L.object({})},async()=>{let t=["## context-mode doctor",""],e=vr(un(ln,"package.json"))?ln:Gp(ln),r=11,n=(Sa.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${Sa.length}/${r} (${n}%) \u2014 ${Sa.join(", ")}`),la()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");try{let i=await new ls({runtimes:Ea}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});i.exitCode===0&&i.stdout.trim()==="ok"?t.push("- [x] Server test: PASS"):t.push(`- [ ] Server test: FAIL \u2014 exit ${i.exitCode}`)}catch(s){t.push(`- [ ] Server test: FAIL \u2014 ${s instanceof Error?s.message:s}`)}try{let s=ds(),i=new s(":memory:");i.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),i.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=i.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();i.close(),a&&a.content==="hello world"?t.push("- [x] FTS5 / SQLite: PASS \u2014 native module works"):t.push("- [ ] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(s){t.push(`- [ ] FTS5 / SQLite: FAIL \u2014 ${s instanceof Error?s.message:s}`)}let o=un(e,"hooks","pretooluse.mjs");return vr(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${Yp}`),Z("ctx_doctor",{content:[{type:"text",text:t.join(`
524
- `)}]})});Ve.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:L.object({})},async()=>{let t=vr(un(ln,"package.json"))?ln:Gp(ln),e=un(t,"cli.bundle.mjs"),r=un(t,"build","cli.js"),n;if(vr(e))n=`node "${e}" upgrade`;else if(vr(r))n=`node "${r}" upgrade`;else{let s="https://github.com/mksglu/context-mode.git",i=["build","hooks","skills","scripts",".claude-plugin"],a=["start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json"],c=['import{execFileSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");',`execFileSync("git",["clone","--depth","1","${s}",T],{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execFileSync("npm",["install"],{cwd:T,stdio:"inherit"});','execFileSync("npm",["run","build"],{cwd:T,stdio:"inherit"});','console.log("- [x] Built from source");',...i.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{recursive:true,force:true});`),...a.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{force:true});`),'console.log("- [x] Copied build artifacts");','execFileSync("npm",["install","--production"],{cwd:P,stdio:"inherit"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
525
- `),u=un(t,".ctx-upgrade-inline.mjs"),{writeFileSync:l}=await import("node:fs");l(u,c),n=`node "${u}"`}let o=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",n,"```","","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(`
526
- `);return Z("ctx_upgrade",{content:[{type:"text",text:o}]})});async function MI(){let t=up();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{bs.cleanupBackgrounded(),Zt&&Zt.close()},r=async()=>{e(),process.exit(0)};process.on("exit",e),process.on("SIGINT",()=>{r()}),process.on("SIGTERM",()=>{r()}),vx({onShutdown:()=>r()});let n=new ca;await Ve.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>(Mv(),jv)),i=Ve.server.getClientVersion(),a=o(i??void 0);await s(a.platform),i&&console.error(`MCP client: ${i.name} v${i.version} \u2192 ${a.platform}`)}catch{}console.error(`Context Mode MCP server v${Yp} running on stdio`),console.error(`Detected runtimes:
527
- ${Yy(Ea)}`),la()||(console.error(`
528
- Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}MI().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{Jv as extractSnippet,CI as formatBatchQueryResults,OI as positionsFromHighlight};
522
+ `);return Z("ctx_batch_execute",{content:[{type:"text",text:v}]})}catch(n){let o=n instanceof Error?n.message:String(n);return Z("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});Ve.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:L.object({reset:L.boolean().optional().describe("Reset all stats and FTS5 store to zero. Use after /clear.")})},async({reset:t})=>{if(Wv(),t)return Jv(),Z("ctx_stats",{content:[{type:"text",text:"Session stats and search index reset."}]});let e=Object.values(ee.bytesReturned).reduce((f,m)=>f+m,0),r=Object.values(ee.calls).reduce((f,m)=>f+m,0),o=((Date.now()-ee.sessionStart)/6e4).toFixed(1),s=ee.bytesIndexed+ee.bytesSandboxed,i=s+e,a=i/Math.max(e,1),c=i>0?((1-e/i)*100).toFixed(0):"0",u=f=>f>=1024*1024?`${(f/1024/1024).toFixed(1)}MB`:`${(f/1024).toFixed(1)}KB`,l=[`## context-mode \u2014 Session Report (${o} min)`];if(l.push("","### Context Window Protection",""),r===0)l.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{l.push("| Metric | Value |","|--------|------:|",`| Total data processed | **${u(i)}** |`,`| Kept in sandbox (never entered context) | **${u(s)}** |`,`| Entered context | ${u(e)} |`,`| Estimated tokens saved | ~${Math.round(s/4).toLocaleString()} |`,`| **Context savings** | **${a.toFixed(1)}x (${c}% reduction)** |`);let f=new Set([...Object.keys(ee.calls),...Object.keys(ee.bytesReturned)]);if(f.size>0){l.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let m of Array.from(f).sort()){let p=ee.calls[m]||0,h=ee.bytesReturned[m]||0,g=Math.round(h/4);l.push(`| ${m} | ${p} | ${u(h)} | ~${g.toLocaleString()} |`)}l.push(`| **Total** | **${r}** | **${u(e)}** | **~${Math.round(e/4).toLocaleString()}** |`)}if(s>0&&l.push("",`Without context-mode, **${u(i)}** of raw output would flood your context window. Instead, **${c}%** stayed in sandbox.`),ee.cacheHits>0||ee.cacheBytesSaved>0){let m=i+ee.cacheBytesSaved,p=m/Math.max(e,1),h=Math.max(0,24-Math.floor((Date.now()-ee.sessionStart)/(3600*1e3)));l.push("","### TTL Cache","","| Metric | Value |","|--------|------:|",`| Cache hits | **${ee.cacheHits}** |`,`| Data avoided by cache | **${u(ee.cacheBytesSaved)}** |`,`| Network requests saved | **${ee.cacheHits}** |`,`| TTL remaining | **~${h}h** |`,"",`Content was already indexed in the knowledge base \u2014 ${ee.cacheHits} fetch${ee.cacheHits>1?"es":""} skipped entirely. **${u(ee.cacheBytesSaved)}** of network I/O avoided. Search results served directly from local FTS5 index.`),p>a&&l.push("",`**Total context savings (sandbox + cache): ${p.toFixed(1)}x** \u2014 ${u(m)} processed, only ${u(e)} entered context.`)}}try{let f=process.env.CLAUDE_PROJECT_DIR||process.cwd(),m=Fv("sha256").update(f).digest("hex").slice(0,16),p=wx(),h=er(bs(),".claude","context-mode","sessions",`${m}${p}.db`);if(kr(h)){let g=fs(),v=new g(h,{readonly:!0}),y=v.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),S=v.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),E=v.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),C=v.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(y.cnt>0){let xe=E?.compact_count??0,Ae=v.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),Ze=new Map;for(let Te of Ae){Ze.has(Te.category)||Ze.set(Te.category,new Set);let wr=Ze.get(Te.category);if(wr.size<5){let Ue=Te.data;Te.category==="file"?Ue=Te.data.split("/").pop()||Te.data:Te.category==="prompt"&&(Ue=Ue.length>50?Ue.slice(0,47)+"...":Ue),Ue.length>40&&(Ue=Ue.slice(0,37)+"..."),wr.add(Ue)}}let so={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"},br={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"};l.push("","### Session Continuity","","| What's preserved | Count | I remember... | Why it matters |","|------------------|------:|---------------|----------------|");for(let Te of S){let wr=so[Te.category]||Te.category,Ue=Ze.get(Te.category),$a=Ue?Array.from(Ue).join(", "):"",Qv=br[Te.category]||"Survives context resets";l.push(`| ${wr} | ${Te.cnt} | ${$a} | ${Qv} |`)}l.push(`| **Total** | **${y.cnt}** | | **Zero knowledge lost on compact** |`),l.push(""),xe>0?l.push(`Context has been compacted **${xe} time(s)** \u2014 session knowledge was preserved each time.`):l.push("When your context compacts, all of this will restore Claude's awareness \u2014 no starting from scratch."),C&&!C.consumed&&l.push(`Resume snapshot ready (${C.event_count} events) for the next compaction.`),l.push(""),l.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.")}v.close()}}catch{}l.push("","---","_Display this entire report as-is in your response. Do NOT summarize, collapse, or paraphrase any section._");let d=l.join(`
523
+ `);return Z("ctx_stats",{content:[{type:"text",text:d}]})});Ve.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns results as a markdown checklist. No CLI execution needed.",inputSchema:L.object({})},async()=>{let t=["## context-mode doctor",""],e=kr(dn(pn,"package.json"))?pn:Qp(pn),r=11,n=(ba.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${ba.length}/${r} (${n}%) \u2014 ${ba.join(", ")}`),da()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");try{let i=await new ds({runtimes:Ta}).execute({language:"javascript",code:'console.log("ok");',timeout:5e3});i.exitCode===0&&i.stdout.trim()==="ok"?t.push("- [x] Server test: PASS"):t.push(`- [ ] Server test: FAIL \u2014 exit ${i.exitCode}`)}catch(s){t.push(`- [ ] Server test: FAIL \u2014 ${s instanceof Error?s.message:s}`)}try{let s=fs(),i=new s(":memory:");i.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),i.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=i.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();i.close(),a&&a.content==="hello world"?t.push("- [x] FTS5 / SQLite: PASS \u2014 native module works"):t.push("- [ ] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(s){t.push(`- [ ] FTS5 / SQLite: FAIL \u2014 ${s instanceof Error?s.message:s}`)}let o=dn(e,"hooks","pretooluse.mjs");return kr(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${ef}`),Z("ctx_doctor",{content:[{type:"text",text:t.join(`
524
+ `)}]})});Ve.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:L.object({})},async()=>{let t=kr(dn(pn,"package.json"))?pn:Qp(pn),e=dn(t,"cli.bundle.mjs"),r=dn(t,"build","cli.js"),n;if(kr(e))n=`node "${e}" upgrade`;else if(kr(r))n=`node "${r}" upgrade`;else{let s="https://github.com/mksglu/context-mode.git",i=["build","hooks","skills","scripts",".claude-plugin"],a=["start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json"],c=['import{execFileSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");',`execFileSync("git",["clone","--depth","1","${s}",T],{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execFileSync("npm",["install"],{cwd:T,stdio:"inherit"});','execFileSync("npm",["run","build"],{cwd:T,stdio:"inherit"});','console.log("- [x] Built from source");',...i.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{recursive:true,force:true});`),...a.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{force:true});`),'console.log("- [x] Copied build artifacts");','execFileSync("npm",["install","--production"],{cwd:P,stdio:"inherit"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
525
+ `),u=dn(t,".ctx-upgrade-inline.mjs"),{writeFileSync:l}=await import("node:fs");l(u,c),n=`node "${u}"`}let o=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",n,"```","","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(`
526
+ `);return Z("ctx_upgrade",{content:[{type:"text",text:o}]})});async function LI(){let t=pp();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{ws.cleanupBackgrounded(),Ht&&Ht.close()},r=async()=>{e(),process.exit(0)};process.on("exit",e),process.on("SIGINT",()=>{r()}),process.on("SIGTERM",()=>{r()}),bx({onShutdown:()=>r()});let n=new ua;await Ve.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>(Zv(),Lv)),i=Ve.server.getClientVersion(),a=o(i??void 0);await s(a.platform),i&&console.error(`MCP client: ${i.name} v${i.version} \u2192 ${a.platform}`)}catch{}console.error(`Context Mode MCP server v${ef} running on stdio`),console.error(`Detected runtimes:
527
+ ${ex(Ta)}`),da()||(console.error(`
528
+ Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}LI().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{Yv as extractSnippet,zI as formatBatchQueryResults,II as positionsFromHighlight};