context-mode 1.0.44 → 1.0.45

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,49 +1,49 @@
1
1
  #!/usr/bin/env node
2
- var Hx=Object.create;var ja=Object.defineProperty;var qx=Object.getOwnPropertyDescriptor;var Fx=Object.getOwnPropertyNames;var Bx=Object.getPrototypeOf,Vx=Object.prototype.hasOwnProperty;var we=(t,e)=>()=>(t&&(e=t(t=0)),e);var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Be=(t,e)=>{for(var r in e)ja(t,r,{get:e[r],enumerable:!0})},Kx=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Fx(e))!Vx.call(t,o)&&o!==r&&ja(t,o,{get:()=>e[o],enumerable:!(n=qx(e,o))||n.enumerable});return t};var lf=(t,e,r)=>(r=t!=null?Hx(Bx(t)):{},Kx(e||!t||!t.__esModule?ja(r,"default",{value:t,enumerable:!0}):r,t));var No=T(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.regexpCode=ee.getEsmExportName=ee.getProperty=ee.safeStringify=ee.stringify=ee.strConcat=ee.addCodeArg=ee.str=ee._=ee.nil=ee._Code=ee.Name=ee.IDENTIFIER=ee._CodeOrName=void 0;var Io=class{};ee._CodeOrName=Io;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Jr=class extends Io{constructor(e){if(super(),!ee.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ee.Name=Jr;var lt=class extends Io{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),{})}};ee._Code=lt;ee.nil=new lt("");function sg(t,...e){let r=[t[0]],n=0;for(;n<e.length;)xl(r,e[n]),r.push(t[++n]);return new lt(r)}ee._=sg;var vl=new lt("+");function ig(t,...e){let r=[zo(t[0])],n=0;for(;n<e.length;)r.push(vl),xl(r,e[n]),r.push(vl,zo(t[++n]));return FE(r),new lt(r)}ee.str=ig;function xl(t,e){e instanceof lt?t.push(...e._items):e instanceof Jr?t.push(e):t.push(KE(e))}ee.addCodeArg=xl;function FE(t){let e=1;for(;e<t.length-1;){if(t[e]===vl){let r=BE(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function BE(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 VE(t,e){return e.emptyStr()?t:t.emptyStr()?e:ig`${t}${e}`}ee.strConcat=VE;function KE(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:zo(Array.isArray(t)?t.join(","):t)}function JE(t){return new lt(zo(t))}ee.stringify=JE;function zo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=zo;function GE(t){return typeof t=="string"&&ee.IDENTIFIER.test(t)?new lt(`.${t}`):sg`[${t}]`}ee.getProperty=GE;function WE(t){if(typeof t=="string"&&ee.IDENTIFIER.test(t))return new lt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ee.getEsmExportName=WE;function YE(t){return new lt(t.toString())}ee.regexpCode=YE});var bl=T(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.ValueScope=Ye.ValueScopeName=Ye.Scope=Ye.varKinds=Ye.UsedValueState=void 0;var We=No(),Sl=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Ei;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Ei||(Ye.UsedValueState=Ei={}));Ye.varKinds={const:new We.Name("const"),let:new We.Name("let"),var:new We.Name("var")};var Ti=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof We.Name?e:this.name(e)}name(e){return new We.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ye.Scope=Ti;var $i=class extends We.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,We._)`.${new We.Name(r)}[${n}]`}};Ye.ValueScopeName=$i;var XE=(0,We._)`\n`,kl=class extends Ti{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?XE:We.nil}}get(){return this._scope}name(e){return new $i(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,We._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=We.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,Ei.Started);let l=r(u);if(l){let d=this.opts.es5?Ye.varKinds.var:Ye.varKinds.const;s=(0,We._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,We._)`${s}${l}${this.opts._n}`;else throw new Sl(u);c.set(u,Ei.Completed)})}return s}};Ye.ValueScope=kl});var q=T(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.or=F.and=F.not=F.CodeGen=F.operators=F.varKinds=F.ValueScopeName=F.ValueScope=F.Scope=F.Name=F.regexpCode=F.stringify=F.getProperty=F.nil=F.strConcat=F.str=F._=void 0;var Y=No(),vt=bl(),dr=No();Object.defineProperty(F,"_",{enumerable:!0,get:function(){return dr._}});Object.defineProperty(F,"str",{enumerable:!0,get:function(){return dr.str}});Object.defineProperty(F,"strConcat",{enumerable:!0,get:function(){return dr.strConcat}});Object.defineProperty(F,"nil",{enumerable:!0,get:function(){return dr.nil}});Object.defineProperty(F,"getProperty",{enumerable:!0,get:function(){return dr.getProperty}});Object.defineProperty(F,"stringify",{enumerable:!0,get:function(){return dr.stringify}});Object.defineProperty(F,"regexpCode",{enumerable:!0,get:function(){return dr.regexpCode}});Object.defineProperty(F,"Name",{enumerable:!0,get:function(){return dr.Name}});var Ci=bl();Object.defineProperty(F,"Scope",{enumerable:!0,get:function(){return Ci.Scope}});Object.defineProperty(F,"ValueScope",{enumerable:!0,get:function(){return Ci.ValueScope}});Object.defineProperty(F,"ValueScopeName",{enumerable:!0,get:function(){return Ci.ValueScopeName}});Object.defineProperty(F,"varKinds",{enumerable:!0,get:function(){return Ci.varKinds}});F.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}},wl=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?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=Rn(this.rhs,e,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},Pi=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=Rn(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return Oi(e,this.rhs)}},El=class extends Pi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Tl=class extends Vt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},$l=class extends Vt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Pl=class extends Vt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Rl=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=Rn(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},Ao=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)||(QE(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),{})}},Kt=class extends Ao{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Ol=class extends Ao{},Pn=class extends Kt{};Pn.kind="else";var Gr=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 Pn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(ag(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=Rn(this.condition,e,r),this}get names(){let e=super.names;return Oi(e,this.condition),this.else&&Yr(e,this.else.names),e}};Gr.kind="if";var Wr=class extends Kt{};Wr.kind="for";var Cl=class extends Wr{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=Rn(this.iteration,e,r),this}get names(){return Yr(super.names,this.iteration.names)}},Il=class extends Wr{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=Oi(super.names,this.from);return Oi(e,this.to)}},Ri=class extends Wr{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=Rn(this.iterable,e,r),this}get names(){return Yr(super.names,this.iterable.names)}},jo=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)}};jo.kind="func";var Mo=class extends Ao{render(e){return"return "+super.render(e)}};Mo.kind="return";var zl=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&&Yr(e,this.catch.names),this.finally&&Yr(e,this.finally.names),e}},Do=class extends Kt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Do.kind="catch";var Lo=class extends Kt{render(e){return"finally"+super.render(e)}};Lo.kind="finally";var Nl=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 Ol]}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 wl(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 Pi(e,r,n))}add(e,r){return this._leafNode(new El(e,F.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Y.nil&&this._leafNode(new Rl(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 Gr(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 Gr(e))}else(){return this._elseNode(new Pn)}endIf(){return this._endBlockNode(Gr,Pn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Cl(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 Il(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 Ri("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 Ri("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Wr)}label(e){return this._leafNode(new Tl(e))}break(e){return this._leafNode(new $l(e))}return(e){let r=new Mo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Mo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new zl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Do(s),r(s)}return n&&(this._currNode=o.finally=new Lo,this.code(n)),this._endBlockNode(Do,Lo)}throw(e){return this._leafNode(new Pl(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 jo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(jo)}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 Gr))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}};F.CodeGen=Nl;function Yr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Oi(t,e){return e instanceof Y._CodeOrName?Yr(t,e.names):t}function Rn(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 QE(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function ag(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${Al(t)}`}F.not=ag;var eT=cg(F.operators.AND);function tT(...t){return t.reduce(eT)}F.and=tT;var rT=cg(F.operators.OR);function nT(...t){return t.reduce(rT)}F.or=nT;function cg(t){return(e,r)=>e===Y.nil?r:r===Y.nil?e:(0,Y._)`${Al(e)} ${t} ${Al(r)}`}function Al(t){return t instanceof Y.Name?t:(0,Y._)`(${t})`}});var X=T(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.checkStrictMode=B.getErrorPath=B.Type=B.useFunc=B.setEvaluated=B.evaluatedPropsToName=B.mergeEvaluated=B.eachItem=B.unescapeJsonPointer=B.escapeJsonPointer=B.escapeFragment=B.unescapeFragment=B.schemaRefOrVal=B.schemaHasRulesButRef=B.schemaHasRules=B.checkUnknownRules=B.alwaysValidSchema=B.toHash=void 0;var oe=q(),oT=No();function sT(t){let e={};for(let r of t)e[r]=!0;return e}B.toHash=sT;function iT(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(dg(t,e),!pg(e,t.self.RULES.all))}B.alwaysValidSchema=iT;function dg(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]||hg(t,`unknown keyword: "${s}"`)}B.checkUnknownRules=dg;function pg(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}B.schemaHasRules=pg;function aT(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}B.schemaHasRulesButRef=aT;function cT({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,oe._)`${r}`}return(0,oe._)`${t}${e}${(0,oe.getProperty)(n)}`}B.schemaRefOrVal=cT;function uT(t){return fg(decodeURIComponent(t))}B.unescapeFragment=uT;function lT(t){return encodeURIComponent(Ml(t))}B.escapeFragment=lT;function Ml(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}B.escapeJsonPointer=Ml;function fg(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}B.unescapeJsonPointer=fg;function dT(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}B.eachItem=dT;function ug({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof oe.Name?(s instanceof oe.Name?t(o,s,i):e(o,s,i),i):s instanceof oe.Name?(e(o,i,s),s):r(s,i);return a===oe.Name&&!(c instanceof oe.Name)?n(o,c):c}}B.mergeEvaluated={props:ug({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,oe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,oe._)`${r} || {}`).code((0,oe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,oe._)`${r} || {}`),Dl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:mg}),items:ug({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,oe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,oe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function mg(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,oe._)`{}`);return e!==void 0&&Dl(t,r,e),r}B.evaluatedPropsToName=mg;function Dl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,oe._)`${e}${(0,oe.getProperty)(n)}`,!0))}B.setEvaluated=Dl;var lg={};function pT(t,e){return t.scopeValue("func",{ref:e,code:lg[e.code]||(lg[e.code]=new oT._Code(e.code))})}B.useFunc=pT;var jl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(jl||(B.Type=jl={}));function fT(t,e,r){if(t instanceof oe.Name){let n=e===jl.Num;return r?n?(0,oe._)`"[" + ${t} + "]"`:(0,oe._)`"['" + ${t} + "']"`:n?(0,oe._)`"/" + ${t}`:(0,oe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,oe.getProperty)(t).toString():"/"+Ml(t)}B.getErrorPath=fT;function hg(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}B.checkStrictMode=hg});var Jt=T(Ll=>{"use strict";Object.defineProperty(Ll,"__esModule",{value:!0});var Me=q(),mT={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")};Ll.default=mT});var Zo=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=q(),Ii=X(),qe=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 hT(t,e=De.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=yg(t,e,r);n??(i||a)?gg(s,c):_g(o,(0,Q._)`[${c}]`)}De.reportError=hT;function gT(t,e=De.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=yg(t,e,r);gg(o,a),s||i||_g(n,qe.default.vErrors)}De.reportExtraError=gT;function _T(t,e){t.assign(qe.default.errors,e),t.if((0,Q._)`${qe.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Q._)`${qe.default.vErrors}.length`,e),()=>t.assign(qe.default.vErrors,null)))}De.resetErrorsCount=_T;function yT({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,qe.default.errors,a=>{t.const(i,(0,Q._)`${qe.default.vErrors}[${a}]`),t.if((0,Q._)`${i}.instancePath === undefined`,()=>t.assign((0,Q._)`${i}.instancePath`,(0,Q.strConcat)(qe.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=yT;function gg(t,e){let r=t.const("err",e);t.if((0,Q._)`${qe.default.vErrors} === null`,()=>t.assign(qe.default.vErrors,(0,Q._)`[${r}]`),(0,Q._)`${qe.default.vErrors}.push(${r})`),t.code((0,Q._)`${qe.default.errors}++`)}function _g(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 yg(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:vT(t,e,r)}function vT(t,e,r={}){let{gen:n,it:o}=t,s=[xT(o,r),ST(t,r)];return kT(t,e,s),n.object(...s)}function xT({errorPath:t},{instancePath:e}){let r=e?(0,Q.str)`${t}${(0,Ii.getErrorPath)(e,Ii.Type.Str)}`:t;return[qe.default.instancePath,(0,Q.strConcat)(qe.default.instancePath,r)]}function ST({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,Ii.getErrorPath)(r,Ii.Type.Str)}`),[Xr.schemaPath,o]}function kT(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}`],[qe.default.data,s]),u&&n.push([Xr.propertyName,u])}});var xg=T(On=>{"use strict";Object.defineProperty(On,"__esModule",{value:!0});On.boolOrEmptySchema=On.topBoolOrEmptySchema=void 0;var bT=Zo(),wT=q(),ET=Jt(),TT={message:"boolean schema is false"};function $T(t){let{gen:e,schema:r,validateName:n}=t;r===!1?vg(t,!1):typeof r=="object"&&r.$async===!0?e.return(ET.default.data):(e.assign((0,wT._)`${n}.errors`,null),e.return(!0))}On.topBoolOrEmptySchema=$T;function PT(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),vg(t)):r.var(e,!0)}On.boolOrEmptySchema=PT;function vg(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,bT.reportError)(o,TT,void 0,e)}});var Zl=T(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.getRules=Cn.isJSONType=void 0;var RT=["string","number","integer","boolean","null","object","array"],OT=new Set(RT);function CT(t){return typeof t=="string"&&OT.has(t)}Cn.isJSONType=CT;function IT(){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:{}}}Cn.getRules=IT});var Ul=T(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.shouldUseRule=pr.shouldUseGroup=pr.schemaHasRulesForType=void 0;function zT({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Sg(t,n)}pr.schemaHasRulesForType=zT;function Sg(t,e){return e.rules.some(r=>kg(t,r))}pr.shouldUseGroup=Sg;function kg(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=kg});var Uo=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 NT=Zl(),AT=Ul(),jT=Zo(),U=q(),bg=X(),In;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(In||(Le.DataType=In={}));function MT(t){let e=wg(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=MT;function wg(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(NT.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Le.getJSONTypes=wg;function DT(t,e){let{gen:r,data:n,opts:o}=t,s=LT(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,AT.schemaHasRulesForType)(t,e[0]));if(i){let a=ql(e,n,o.strictNumbers,In.Wrong);r.if(a,()=>{s.length?ZT(t,e,s):Fl(t)})}return i}Le.coerceAndCheckDataType=DT;var Eg=new Set(["string","number","integer","boolean","null"]);function LT(t,e){return e?t.filter(r=>Eg.has(r)||e==="array"&&r==="array"):[]}function ZT(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,U._)`typeof ${o}`),a=n.let("coerced",(0,U._)`undefined`);s.coerceTypes==="array"&&n.if((0,U._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,U._)`${o}[0]`).assign(i,(0,U._)`typeof ${o}`).if(ql(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,U._)`${a} !== undefined`);for(let u of r)(Eg.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Fl(t),n.endIf(),n.if((0,U._)`${a} !== undefined`,()=>{n.assign(o,a),UT(t,a)});function c(u){switch(u){case"string":n.elseIf((0,U._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,U._)`"" + ${o}`).elseIf((0,U._)`${o} === null`).assign(a,(0,U._)`""`);return;case"number":n.elseIf((0,U._)`${i} == "boolean" || ${o} === null
2
+ var qv=Object.create;var Ua=Object.defineProperty;var Fv=Object.getOwnPropertyDescriptor;var Bv=Object.getOwnPropertyNames;var Vv=Object.getPrototypeOf,Kv=Object.prototype.hasOwnProperty;var we=(t,e)=>()=>(t&&(e=t(t=0)),e);var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Be=(t,e)=>{for(var r in e)Ua(t,r,{get:e[r],enumerable:!0})},Jv=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Bv(e))!Kv.call(t,o)&&o!==r&&Ua(t,o,{get:()=>e[o],enumerable:!(n=Fv(e,o))||n.enumerable});return t};var ff=(t,e,r)=>(r=t!=null?qv(Vv(t)):{},Jv(e||!t||!t.__esModule?Ua(r,"default",{value:t,enumerable:!0}):r,t));var Lo=T(ee=>{"use strict";Object.defineProperty(ee,"__esModule",{value:!0});ee.regexpCode=ee.getEsmExportName=ee.getProperty=ee.safeStringify=ee.stringify=ee.strConcat=ee.addCodeArg=ee.str=ee._=ee.nil=ee._Code=ee.Name=ee.IDENTIFIER=ee._CodeOrName=void 0;var jo=class{};ee._CodeOrName=jo;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Gr=class extends jo{constructor(e){if(super(),!ee.IDENTIFIER.test(e))throw new Error("CodeGen: name must be a valid identifier");this.str=e}toString(){return this.str}emptyStr(){return!1}get names(){return{[this.str]:1}}};ee.Name=Gr;var lt=class extends jo{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 Gr&&(r[n.str]=(r[n.str]||0)+1),r),{})}};ee._Code=lt;ee.nil=new lt("");function cg(t,...e){let r=[t[0]],n=0;for(;n<e.length;)wl(r,e[n]),r.push(t[++n]);return new lt(r)}ee._=cg;var bl=new lt("+");function ug(t,...e){let r=[Mo(t[0])],n=0;for(;n<e.length;)r.push(bl),wl(r,e[n]),r.push(bl,Mo(t[++n]));return BE(r),new lt(r)}ee.str=ug;function wl(t,e){e instanceof lt?t.push(...e._items):e instanceof Gr?t.push(e):t.push(JE(e))}ee.addCodeArg=wl;function BE(t){let e=1;for(;e<t.length-1;){if(t[e]===bl){let r=VE(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function VE(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof Gr||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 Gr))return`"${t}${e.slice(1)}`}function KE(t,e){return e.emptyStr()?t:t.emptyStr()?e:ug`${t}${e}`}ee.strConcat=KE;function JE(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Mo(Array.isArray(t)?t.join(","):t)}function GE(t){return new lt(Mo(t))}ee.stringify=GE;function Mo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=Mo;function WE(t){return typeof t=="string"&&ee.IDENTIFIER.test(t)?new lt(`.${t}`):cg`[${t}]`}ee.getProperty=WE;function YE(t){if(typeof t=="string"&&ee.IDENTIFIER.test(t))return new lt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ee.getEsmExportName=YE;function XE(t){return new lt(t.toString())}ee.regexpCode=XE});var $l=T(Ye=>{"use strict";Object.defineProperty(Ye,"__esModule",{value:!0});Ye.ValueScope=Ye.ValueScopeName=Ye.Scope=Ye.varKinds=Ye.UsedValueState=void 0;var We=Lo(),El=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Oi;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Oi||(Ye.UsedValueState=Oi={}));Ye.varKinds={const:new We.Name("const"),let:new We.Name("let"),var:new We.Name("var")};var Ci=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof We.Name?e:this.name(e)}name(e){return new We.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Ye.Scope=Ci;var Ii=class extends We.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,We._)`.${new We.Name(r)}[${n}]`}};Ye.ValueScopeName=Ii;var QE=(0,We._)`\n`,Tl=class extends Ci{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?QE:We.nil}}get(){return this._scope}name(e){return new Ii(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,We._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=We.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,Oi.Started);let l=r(u);if(l){let d=this.opts.es5?Ye.varKinds.var:Ye.varKinds.const;s=(0,We._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,We._)`${s}${l}${this.opts._n}`;else throw new El(u);c.set(u,Oi.Completed)})}return s}};Ye.ValueScope=Tl});var q=T(F=>{"use strict";Object.defineProperty(F,"__esModule",{value:!0});F.or=F.and=F.not=F.CodeGen=F.operators=F.varKinds=F.ValueScopeName=F.ValueScope=F.Scope=F.Name=F.regexpCode=F.stringify=F.getProperty=F.nil=F.strConcat=F.str=F._=void 0;var Y=Lo(),xt=$l(),dr=Lo();Object.defineProperty(F,"_",{enumerable:!0,get:function(){return dr._}});Object.defineProperty(F,"str",{enumerable:!0,get:function(){return dr.str}});Object.defineProperty(F,"strConcat",{enumerable:!0,get:function(){return dr.strConcat}});Object.defineProperty(F,"nil",{enumerable:!0,get:function(){return dr.nil}});Object.defineProperty(F,"getProperty",{enumerable:!0,get:function(){return dr.getProperty}});Object.defineProperty(F,"stringify",{enumerable:!0,get:function(){return dr.stringify}});Object.defineProperty(F,"regexpCode",{enumerable:!0,get:function(){return dr.regexpCode}});Object.defineProperty(F,"Name",{enumerable:!0,get:function(){return dr.Name}});var ji=$l();Object.defineProperty(F,"Scope",{enumerable:!0,get:function(){return ji.Scope}});Object.defineProperty(F,"ValueScope",{enumerable:!0,get:function(){return ji.ValueScope}});Object.defineProperty(F,"ValueScopeName",{enumerable:!0,get:function(){return ji.ValueScopeName}});Object.defineProperty(F,"varKinds",{enumerable:!0,get:function(){return ji.varKinds}});F.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}},Pl=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:{}}},zi=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 Ai(e,this.rhs)}},Rl=class extends zi{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Ol=class extends Vt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Cl=class extends Vt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Il=class extends Vt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},zl=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:{}}},Do=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)||(eT(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>Xr(e,r.names),{})}},Kt=class extends Do{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Nl=class extends Do{},In=class extends Kt{};In.kind="else";var Wr=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(lg(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 Ai(e,this.condition),this.else&&Xr(e,this.else.names),e}};Wr.kind="if";var Yr=class extends Kt{};Yr.kind="for";var Al=class extends Yr{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 Xr(super.names,this.iteration.names)}},jl=class extends Yr{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=Ai(super.names,this.from);return Ai(e,this.to)}},Ni=class extends Yr{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 Xr(super.names,this.iterable.names)}},Zo=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)}};Zo.kind="func";var Uo=class extends Do{render(e){return"return "+super.render(e)}};Uo.kind="return";var Ml=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&&Xr(e,this.catch.names),this.finally&&Xr(e,this.finally.names),e}},Ho=class extends Kt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Ho.kind="catch";var qo=class extends Kt{render(e){return"finally"+super.render(e)}};qo.kind="finally";var Ll=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 Nl]}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 Pl(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 zi(e,r,n))}add(e,r){return this._leafNode(new Rl(e,F.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Y.nil&&this._leafNode(new zl(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 In)}endIf(){return this._endBlockNode(Wr,In)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Al(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 jl(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 Ni("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 Ni("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Yr)}label(e){return this._leafNode(new Ol(e))}break(e){return this._leafNode(new Cl(e))}return(e){let r=new Uo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Uo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Ml;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Ho(s),r(s)}return n&&(this._currNode=o.finally=new qo,this.code(n)),this._endBlockNode(Ho,qo)}throw(e){return this._leafNode(new Il(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 Zo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Zo)}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}};F.CodeGen=Ll;function Xr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ai(t,e){return e instanceof Y._CodeOrName?Xr(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 eT(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function lg(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${Dl(t)}`}F.not=lg;var tT=dg(F.operators.AND);function rT(...t){return t.reduce(tT)}F.and=rT;var nT=dg(F.operators.OR);function oT(...t){return t.reduce(nT)}F.or=oT;function dg(t){return(e,r)=>e===Y.nil?r:r===Y.nil?e:(0,Y._)`${Dl(e)} ${t} ${Dl(r)}`}function Dl(t){return t instanceof Y.Name?t:(0,Y._)`(${t})`}});var X=T(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.checkStrictMode=B.getErrorPath=B.Type=B.useFunc=B.setEvaluated=B.evaluatedPropsToName=B.mergeEvaluated=B.eachItem=B.unescapeJsonPointer=B.escapeJsonPointer=B.escapeFragment=B.unescapeFragment=B.schemaRefOrVal=B.schemaHasRulesButRef=B.schemaHasRules=B.checkUnknownRules=B.alwaysValidSchema=B.toHash=void 0;var oe=q(),sT=Lo();function iT(t){let e={};for(let r of t)e[r]=!0;return e}B.toHash=iT;function aT(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(mg(t,e),!hg(e,t.self.RULES.all))}B.alwaysValidSchema=aT;function mg(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]||yg(t,`unknown keyword: "${s}"`)}B.checkUnknownRules=mg;function hg(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}B.schemaHasRules=hg;function cT(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}B.schemaHasRulesButRef=cT;function uT({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,oe._)`${r}`}return(0,oe._)`${t}${e}${(0,oe.getProperty)(n)}`}B.schemaRefOrVal=uT;function lT(t){return gg(decodeURIComponent(t))}B.unescapeFragment=lT;function dT(t){return encodeURIComponent(Ul(t))}B.escapeFragment=dT;function Ul(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}B.escapeJsonPointer=Ul;function gg(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}B.unescapeJsonPointer=gg;function pT(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}B.eachItem=pT;function pg({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof oe.Name?(s instanceof oe.Name?t(o,s,i):e(o,s,i),i):s instanceof oe.Name?(e(o,i,s),s):r(s,i);return a===oe.Name&&!(c instanceof oe.Name)?n(o,c):c}}B.mergeEvaluated={props:pg({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,oe._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,oe._)`${r} || {}`).code((0,oe._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,oe._)`${r} || {}`),Hl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:_g}),items:pg({mergeNames:(t,e,r)=>t.if((0,oe._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,oe._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,oe._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,oe._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function _g(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,oe._)`{}`);return e!==void 0&&Hl(t,r,e),r}B.evaluatedPropsToName=_g;function Hl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,oe._)`${e}${(0,oe.getProperty)(n)}`,!0))}B.setEvaluated=Hl;var fg={};function fT(t,e){return t.scopeValue("func",{ref:e,code:fg[e.code]||(fg[e.code]=new sT._Code(e.code))})}B.useFunc=fT;var Zl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Zl||(B.Type=Zl={}));function mT(t,e,r){if(t instanceof oe.Name){let n=e===Zl.Num;return r?n?(0,oe._)`"[" + ${t} + "]"`:(0,oe._)`"['" + ${t} + "']"`:n?(0,oe._)`"/" + ${t}`:(0,oe._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,oe.getProperty)(t).toString():"/"+Ul(t)}B.getErrorPath=mT;function yg(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}B.checkStrictMode=yg});var Jt=T(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});var Me=q(),hT={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")};ql.default=hT});var Fo=T(Le=>{"use strict";Object.defineProperty(Le,"__esModule",{value:!0});Le.extendErrors=Le.resetErrorsCount=Le.reportExtraError=Le.reportError=Le.keyword$DataError=Le.keywordError=void 0;var Q=q(),Mi=X(),qe=Jt();Le.keywordError={message:({keyword:t})=>(0,Q.str)`must pass "${t}" keyword validation`};Le.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 gT(t,e=Le.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Sg(t,e,r);n??(i||a)?xg(s,c):vg(o,(0,Q._)`[${c}]`)}Le.reportError=gT;function _T(t,e=Le.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Sg(t,e,r);xg(o,a),s||i||vg(n,qe.default.vErrors)}Le.reportExtraError=_T;function yT(t,e){t.assign(qe.default.errors,e),t.if((0,Q._)`${qe.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,Q._)`${qe.default.vErrors}.length`,e),()=>t.assign(qe.default.vErrors,null)))}Le.resetErrorsCount=yT;function xT({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,qe.default.errors,a=>{t.const(i,(0,Q._)`${qe.default.vErrors}[${a}]`),t.if((0,Q._)`${i}.instancePath === undefined`,()=>t.assign((0,Q._)`${i}.instancePath`,(0,Q.strConcat)(qe.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))})}Le.extendErrors=xT;function xg(t,e){let r=t.const("err",e);t.if((0,Q._)`${qe.default.vErrors} === null`,()=>t.assign(qe.default.vErrors,(0,Q._)`[${r}]`),(0,Q._)`${qe.default.vErrors}.push(${r})`),t.code((0,Q._)`${qe.default.errors}++`)}function vg(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 Qr={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 Sg(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:vT(t,e,r)}function vT(t,e,r={}){let{gen:n,it:o}=t,s=[ST(o,r),kT(t,r)];return bT(t,e,s),n.object(...s)}function ST({errorPath:t},{instancePath:e}){let r=e?(0,Q.str)`${t}${(0,Mi.getErrorPath)(e,Mi.Type.Str)}`:t;return[qe.default.instancePath,(0,Q.strConcat)(qe.default.instancePath,r)]}function kT({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,Mi.getErrorPath)(r,Mi.Type.Str)}`),[Qr.schemaPath,o]}function bT(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([Qr.keyword,o],[Qr.params,typeof e=="function"?e(t):e||(0,Q._)`{}`]),c.messages&&n.push([Qr.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([Qr.schema,i],[Qr.parentSchema,(0,Q._)`${l}${d}`],[qe.default.data,s]),u&&n.push([Qr.propertyName,u])}});var bg=T(Nn=>{"use strict";Object.defineProperty(Nn,"__esModule",{value:!0});Nn.boolOrEmptySchema=Nn.topBoolOrEmptySchema=void 0;var wT=Fo(),ET=q(),TT=Jt(),$T={message:"boolean schema is false"};function PT(t){let{gen:e,schema:r,validateName:n}=t;r===!1?kg(t,!1):typeof r=="object"&&r.$async===!0?e.return(TT.default.data):(e.assign((0,ET._)`${n}.errors`,null),e.return(!0))}Nn.topBoolOrEmptySchema=PT;function RT(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),kg(t)):r.var(e,!0)}Nn.boolOrEmptySchema=RT;function kg(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,wT.reportError)(o,$T,void 0,e)}});var Fl=T(An=>{"use strict";Object.defineProperty(An,"__esModule",{value:!0});An.getRules=An.isJSONType=void 0;var OT=["string","number","integer","boolean","null","object","array"],CT=new Set(OT);function IT(t){return typeof t=="string"&&CT.has(t)}An.isJSONType=IT;function zT(){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=zT});var Bl=T(pr=>{"use strict";Object.defineProperty(pr,"__esModule",{value:!0});pr.shouldUseRule=pr.shouldUseGroup=pr.schemaHasRulesForType=void 0;function NT({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&wg(t,n)}pr.schemaHasRulesForType=NT;function wg(t,e){return e.rules.some(r=>Eg(t,r))}pr.shouldUseGroup=wg;function Eg(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=Eg});var Bo=T(De=>{"use strict";Object.defineProperty(De,"__esModule",{value:!0});De.reportTypeError=De.checkDataTypes=De.checkDataType=De.coerceAndCheckDataType=De.getJSONTypes=De.getSchemaTypes=De.DataType=void 0;var AT=Fl(),jT=Bl(),MT=Fo(),U=q(),Tg=X(),jn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(jn||(De.DataType=jn={}));function LT(t){let e=$g(t.type);if(e.includes("null")){if(t.nullable===!1)throw new Error("type: null contradicts nullable: false")}else{if(!e.length&&t.nullable!==void 0)throw new Error('"nullable" cannot be used without "type"');t.nullable===!0&&e.push("null")}return e}De.getSchemaTypes=LT;function $g(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(AT.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}De.getJSONTypes=$g;function DT(t,e){let{gen:r,data:n,opts:o}=t,s=ZT(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,jT.schemaHasRulesForType)(t,e[0]));if(i){let a=Kl(e,n,o.strictNumbers,jn.Wrong);r.if(a,()=>{s.length?UT(t,e,s):Jl(t)})}return i}De.coerceAndCheckDataType=DT;var Pg=new Set(["string","number","integer","boolean","null"]);function ZT(t,e){return e?t.filter(r=>Pg.has(r)||e==="array"&&r==="array"):[]}function UT(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,U._)`typeof ${o}`),a=n.let("coerced",(0,U._)`undefined`);s.coerceTypes==="array"&&n.if((0,U._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,U._)`${o}[0]`).assign(i,(0,U._)`typeof ${o}`).if(Kl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,U._)`${a} !== undefined`);for(let u of r)(Pg.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Jl(t),n.endIf(),n.if((0,U._)`${a} !== undefined`,()=>{n.assign(o,a),HT(t,a)});function c(u){switch(u){case"string":n.elseIf((0,U._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,U._)`"" + ${o}`).elseIf((0,U._)`${o} === null`).assign(a,(0,U._)`""`);return;case"number":n.elseIf((0,U._)`${i} == "boolean" || ${o} === null
4
4
  || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,U._)`+${o}`);return;case"integer":n.elseIf((0,U._)`${i} === "boolean" || ${o} === null
5
5
  || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,U._)`+${o}`);return;case"boolean":n.elseIf((0,U._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,U._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,U._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,U._)`${i} === "string" || ${i} === "number"
6
- || ${i} === "boolean" || ${o} === null`).assign(a,(0,U._)`[${o}]`)}}}function UT({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,U._)`${e} !== undefined`,()=>t.assign((0,U._)`${e}[${r}]`,n))}function Hl(t,e,r,n=In.Correct){let o=n===In.Correct?U.operators.EQ:U.operators.NEQ,s;switch(t){case"null":return(0,U._)`${e} ${o} null`;case"array":s=(0,U._)`Array.isArray(${e})`;break;case"object":s=(0,U._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,U._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,U._)`typeof ${e} ${o} ${t}`}return n===In.Correct?s:(0,U.not)(s);function i(a=U.nil){return(0,U.and)((0,U._)`typeof ${e} == "number"`,a,r?(0,U._)`isFinite(${e})`:U.nil)}}Le.checkDataType=Hl;function ql(t,e,r,n){if(t.length===1)return Hl(t[0],e,r,n);let o,s=(0,bg.toHash)(t);if(s.array&&s.object){let i=(0,U._)`typeof ${e} != "object"`;o=s.null?i:(0,U._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=U.nil;s.number&&delete s.integer;for(let i in s)o=(0,U.and)(o,Hl(i,e,r,n));return o}Le.checkDataTypes=ql;var HT={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,U._)`{type: ${t}}`:(0,U._)`{type: ${e}}`};function Fl(t){let e=qT(t);(0,jT.reportError)(e,HT)}Le.reportTypeError=Fl;function qT(t){let{gen:e,data:r,schema:n}=t,o=(0,bg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var $g=T(zi=>{"use strict";Object.defineProperty(zi,"__esModule",{value:!0});zi.assignDefaults=void 0;var zn=q(),FT=X();function BT(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Tg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Tg(t,s,o.default))}zi.assignDefaults=BT;function Tg(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,zn._)`${s}${(0,zn.getProperty)(e)}`;if(o){(0,FT.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,zn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,zn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,zn._)`${a} = ${(0,zn.stringify)(r)}`)}});var dt=T(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.validateUnion=ne.validateArray=ne.usePattern=ne.callValidateCode=ne.schemaProperties=ne.allSchemaProperties=ne.noPropertyInData=ne.propertyInData=ne.isOwnProperty=ne.hasPropFunc=ne.reportMissingProp=ne.checkMissingProp=ne.checkReportMissingProp=void 0;var pe=q(),Bl=X(),fr=Jt(),VT=X();function KT(t,e){let{gen:r,data:n,it:o}=t;r.if(Kl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,pe._)`${e}`},!0),t.error()})}ne.checkReportMissingProp=KT;function JT({gen:t,data:e,it:{opts:r}},n,o){return(0,pe.or)(...n.map(s=>(0,pe.and)(Kl(t,e,s,r.ownProperties),(0,pe._)`${o} = ${s}`)))}ne.checkMissingProp=JT;function GT(t,e){t.setParams({missingProperty:e},!0),t.error()}ne.reportMissingProp=GT;function Pg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,pe._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=Pg;function Vl(t,e,r){return(0,pe._)`${Pg(t)}.call(${e}, ${r})`}ne.isOwnProperty=Vl;function WT(t,e,r,n){let o=(0,pe._)`${e}${(0,pe.getProperty)(r)} !== undefined`;return n?(0,pe._)`${o} && ${Vl(t,e,r)}`:o}ne.propertyInData=WT;function Kl(t,e,r,n){let o=(0,pe._)`${e}${(0,pe.getProperty)(r)} === undefined`;return n?(0,pe.or)(o,(0,pe.not)(Vl(t,e,r))):o}ne.noPropertyInData=Kl;function Rg(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ne.allSchemaProperties=Rg;function YT(t,e){return Rg(e).filter(r=>!(0,Bl.alwaysValidSchema)(t,e[r]))}ne.schemaProperties=YT;function XT({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 m=(0,pe._)`${l}, ${r.object(...d)}`;return c!==pe.nil?(0,pe._)`${a}.call(${c}, ${m})`:(0,pe._)`${a}(${m})`}ne.callValidateCode=XT;var QT=(0,pe._)`new RegExp`;function e$({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"?QT:(0,VT.useFunc)(t,o)}(${r}, ${n})`})}ne.usePattern=e$;function t$(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:Bl.Type.Num},s),e.if((0,pe.not)(s),a)})}}ne.validateArray=t$;function r$(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,Bl.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))}ne.validateUnion=r$});var Ig=T(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.validateKeywordUsage=It.validSchemaType=It.funcKeywordCode=It.macroKeywordCode=void 0;var Fe=q(),Qr=Jt(),n$=dt(),o$=Zo();function s$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Cg(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Fe.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}It.macroKeywordCode=s$;function i$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;c$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Cg(n,o,u),d=n.let("valid");t.block$data(d,m),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function m(){if(e.errors===!1)h(),e.modifying&&Og(t),g(()=>t.error());else{let y=e.async?f():p();e.modifying&&Og(t),g(()=>a$(t,y))}}function f(){let y=n.let("ruleErrs",null);return n.try(()=>h((0,Fe._)`await `),x=>n.assign(d,!1).if((0,Fe._)`${x} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,Fe._)`${x}.errors`),()=>n.throw(x))),y}function p(){let y=(0,Fe._)`${l}.errors`;return n.assign(y,null),h(Fe.nil),y}function h(y=e.async?(0,Fe._)`await `:Fe.nil){let x=c.opts.passContext?Qr.default.this:Qr.default.self,S=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Fe._)`${y}${(0,n$.callValidateCode)(t,l,x,S)}`,e.modifying)}function g(y){var x;n.if((0,Fe.not)((x=e.valid)!==null&&x!==void 0?x:d),y)}}It.funcKeywordCode=i$;function Og(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Fe._)`${n.parentData}[${n.parentDataProperty}]`))}function a$(t,e){let{gen:r}=t;r.if((0,Fe._)`Array.isArray(${e})`,()=>{r.assign(Qr.default.vErrors,(0,Fe._)`${Qr.default.vErrors} === null ? ${e} : ${Qr.default.vErrors}.concat(${e})`).assign(Qr.default.errors,(0,Fe._)`${Qr.default.vErrors}.length`),(0,o$.extendErrors)(t)},()=>t.error())}function c$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Cg(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Fe.stringify)(r)})}function u$(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=u$;function l$({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=l$});var Ng=T(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.extendSubschemaMode=mr.extendSubschemaData=mr.getSubschema=void 0;var zt=q(),zg=X();function d$(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,zg.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=d$;function p$(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,m=a.let("data",(0,zt._)`${e.data}${(0,zt.getProperty)(r)}`,!0);c(m),t.errorPath=(0,zt.str)`${u}${(0,zg.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]}}mr.extendSubschemaData=p$;function f$(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=f$});var Jl=T((q1,Ag)=>{"use strict";Ag.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 Mg=T((F1,jg)=>{"use strict";var hr=jg.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(){};Ni(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 Ni(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 m=0;m<d.length;m++)Ni(t,e,r,d[m],o+"/"+l+"/"+m,s,o,l,n,m)}else if(l in hr.propsKeywords){if(d&&typeof d=="object")for(var f in d)Ni(t,e,r,d[f],o+"/"+l+"/"+m$(f),s,o,l,n,f)}else(l in hr.keywords||t.allKeys&&!(l in hr.skipKeywords))&&Ni(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function m$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Ho=T(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.getSchemaRefs=Xe.resolveUrl=Xe.normalizeId=Xe._getFullPath=Xe.getFullPath=Xe.inlineRef=void 0;var h$=X(),g$=Jl(),_$=Mg(),y$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function v$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Gl(t):e?Dg(t)<=e:!1}Xe.inlineRef=v$;var x$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Gl(t){for(let e in t){if(x$.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Gl)||typeof r=="object"&&Gl(r))return!0}return!1}function Dg(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!y$.has(r)&&(typeof t[r]=="object"&&(0,h$.eachItem)(t[r],n=>e+=Dg(n)),e===1/0))return 1/0}return e}function Lg(t,e="",r){r!==!1&&(e=Nn(e));let n=t.parse(e);return Zg(t,n)}Xe.getFullPath=Lg;function Zg(t,e){return t.serialize(e).split("#")[0]+"#"}Xe._getFullPath=Zg;var S$=/#\/?$/;function Nn(t){return t?t.replace(S$,""):""}Xe.normalizeId=Nn;function k$(t,e,r){return r=Nn(r),t.resolve(e,r)}Xe.resolveUrl=k$;var b$=/^[a-z_][-a-z0-9._]*$/i;function w$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Nn(t[r]||e),s={"":o},i=Lg(n,o,!1),a={},c=new Set;return _$(t,{allKeys:!0},(d,m,f,p)=>{if(p===void 0)return;let h=i+m,g=s[p];typeof d[r]=="string"&&(g=y.call(this,d[r])),x.call(this,d.$anchor),x.call(this,d.$dynamicAnchor),s[m]=g;function y(S){let w=this.opts.uriResolver.resolve;if(S=Nn(g?w(g,S):S),c.has(S))throw l(S);c.add(S);let R=this.refs[S];return typeof R=="string"&&(R=this.refs[R]),typeof R=="object"?u(d,R.schema,S):S!==Nn(h)&&(S[0]==="#"?(u(d,a[S],S),a[S]=d):this.refs[S]=h),S}function x(S){if(typeof S=="string"){if(!b$.test(S))throw new Error(`invalid anchor "${S}"`);y.call(this,`#${S}`)}}}),a;function u(d,m,f){if(m!==void 0&&!g$(d,m))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Xe.getSchemaRefs=w$});var Bo=T(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.getData=gr.KeywordCxt=gr.validateFunctionCode=void 0;var Bg=xg(),Ug=Uo(),Yl=Ul(),Ai=Uo(),E$=$g(),Fo=Ig(),Wl=Ng(),z=q(),D=Jt(),T$=Ho(),Gt=X(),qo=Zo();function $$(t){if(Jg(t)&&(Gg(t),Kg(t))){O$(t);return}Vg(t,()=>(0,Bg.topBoolOrEmptySchema)(t))}gr.validateFunctionCode=$$;function Vg({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"; ${Hg(r,o)}`),R$(t,o),t.code(s)}):t.func(e,(0,z._)`${D.default.data}, ${P$(o)}`,n.$async,()=>t.code(Hg(r,o)).code(s))}function P$(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 R$(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 O$(t){let{schema:e,opts:r,gen:n}=t;Vg(t,()=>{r.$comment&&e.$comment&&Yg(t),A$(t),n.let(D.default.vErrors,null),n.let(D.default.errors,0),r.unevaluated&&C$(t),Wg(t),D$(t)})}function C$(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 Hg(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 I$(t,e){if(Jg(t)&&(Gg(t),Kg(t))){z$(t,e);return}(0,Bg.boolOrEmptySchema)(t,e)}function Kg({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 Jg(t){return typeof t.schema!="boolean"}function z$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&Yg(t),j$(t),M$(t);let s=n.const("_errs",D.default.errors);Wg(t,s),n.var(e,(0,z._)`${s} === ${D.default.errors}`)}function Gg(t){(0,Gt.checkUnknownRules)(t),N$(t)}function Wg(t,e){if(t.opts.jtd)return qg(t,[],!1,e);let r=(0,Ug.getSchemaTypes)(t.schema),n=(0,Ug.coerceAndCheckDataType)(t,r);qg(t,r,!n,e)}function N$(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Gt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function A$(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Gt.checkStrictMode)(t,"default is ignored in the schema root")}function j$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,T$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function M$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function Yg({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 D$(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&&L$(t),e.return((0,z._)`${D.default.errors} === 0`))}function L$({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 qg(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,Gt.schemaHasRulesButRef)(s,l))){o.block(()=>Qg(t,"$ref",l.all.$ref.definition));return}c.jtd||Z$(t,e),o.block(()=>{for(let m of l.rules)d(m);d(l.post)});function d(m){(0,Yl.shouldUseGroup)(s,m)&&(m.type?(o.if((0,Ai.checkDataType)(m.type,i,c.strictNumbers)),Fg(t,m),e.length===1&&e[0]===m.type&&r&&(o.else(),(0,Ai.reportTypeError)(t)),o.endIf()):Fg(t,m),a||o.if((0,z._)`${D.default.errors} === ${n||0}`))}}function Fg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,E$.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,Yl.shouldUseRule)(n,s)&&Qg(t,s.keyword,s.definition,e.type)})}function Z$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(U$(t,e),t.opts.allowUnionTypes||H$(t,e),q$(t,t.dataTypes))}function U$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{Xg(t.dataTypes,r)||Xl(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),B$(t,e)}}function H$(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&Xl(t,"use allowUnionTypes to allow union type keyword")}function q$(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Yl.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>F$(e,i))&&Xl(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function F$(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function Xg(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function B$(t,e){let r=[];for(let n of t.dataTypes)Xg(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function Xl(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Gt.checkStrictMode)(t,e,t.opts.strictTypes)}var ji=class{constructor(e,r,n){if((0,Fo.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,Gt.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",e_(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Fo.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?qo.reportExtraError:qo.reportError)(this,this.def.error,r)}$dataError(){(0,qo.reportError)(this,this.def.$dataError||qo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,qo.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,Ai.checkDataTypes)(c,r,s.opts.strictNumbers,Ai.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,Wl.getSubschema)(this.it,e);(0,Wl.extendSubschemaData)(n,this.it,e),(0,Wl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return I$(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Gt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Gt.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=ji;function Qg(t,e,r,n){let o=new ji(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Fo.funcKeywordCode)(o,r):"macro"in r?(0,Fo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Fo.funcKeywordCode)(o,r)}var V$=/^\/(?:[^~]|~0|~1)*$/,K$=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function e_(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return D.default.rootData;if(t[0]==="/"){if(!V$.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=D.default.rootData}else{let u=K$.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,Gt.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=e_});var Mi=T(ed=>{"use strict";Object.defineProperty(ed,"__esModule",{value:!0});var Ql=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};ed.default=Ql});var Vo=T(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var td=Ho(),rd=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,td.resolveUrl)(e,r,n),this.missingSchema=(0,td.normalizeId)((0,td.getFullPath)(e,this.missingRef))}};nd.default=rd});var Li=T(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.resolveSchema=pt.getCompilingSchema=pt.resolveRef=pt.compileSchema=pt.SchemaEnv=void 0;var xt=q(),J$=Mi(),en=Jt(),St=Ho(),t_=X(),G$=Bo(),An=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,St.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};pt.SchemaEnv=An;function sd(t){let e=r_.call(this,t);if(e)return e;let r=(0,St.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new xt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:J$.default,code:(0,xt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:en.default.data,parentData:en.default.parentData,parentDataProperty:en.default.parentDataProperty,dataNames:[en.default.data],dataPathArr:[xt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,xt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:xt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,xt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,G$.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 f=new Function(`${en.default.self}`,`${en.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:f}),f.errors=null,f.schema=t.schema,f.schemaEnv=t,t.$async&&(f.$async=!0),this.opts.code.source===!0&&(f.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;f.evaluated={props:p instanceof xt.Name?void 0:p,items:h instanceof xt.Name?void 0:h,dynamicProps:p instanceof xt.Name,dynamicItems:h instanceof xt.Name},f.source&&(f.source.evaluated=(0,xt.stringify)(f.evaluated))}return t.validate=f,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}pt.compileSchema=sd;function W$(t,e,r){var n;r=(0,St.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=Q$.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 An({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=Y$.call(this,s)}pt.resolveRef=W$;function Y$(t){return(0,St.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:sd.call(this,t)}function r_(t){for(let e of this._compilations)if(X$(e,t))return e}pt.getCompilingSchema=r_;function X$(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function Q$(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Di.call(this,t,e)}function Di(t,e){let r=this.opts.uriResolver.parse(e),n=(0,St._getFullPath)(this.opts.uriResolver,r),o=(0,St.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return od.call(this,r,t);let s=(0,St.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Di.call(this,t,i);return typeof a?.schema!="object"?void 0:od.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||sd.call(this,i),s===(0,St.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,St.resolveUrl)(this.opts.uriResolver,o,u)),new An({schema:a,schemaId:c,root:t,baseId:o})}return od.call(this,r,i)}}pt.resolveSchema=Di;var eP=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function od(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,t_.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!eP.has(a)&&u&&(e=(0,St.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,t_.schemaHasRulesButRef)(r,this.RULES)){let a=(0,St.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Di.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new An({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var n_=T((W1,tP)=>{tP.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 ad=T((Y1,a_)=>{"use strict";var rP=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),s_=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 id(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 nP=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function o_(t){return t.length=0,!0}function oP(t,e,r){if(t.length){let n=id(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function sP(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=oP;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=o_}else{o.push(u);continue}}return o.length&&(a===o_?r.zone=o.join(""):i?n.push(o.join("")):n.push(id(o))),r.address=n.join(""),r}function i_(t){if(iP(t,":")<2)return{host:t,isIPV6:!1};let e=sP(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 iP(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function aP(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 cP(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 uP(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!s_(r)){let n=i_(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}a_.exports={nonSimpleDomain:nP,recomposeAuthority:uP,normalizeComponentEncoding:cP,removeDotSegments:aP,isIPv4:s_,isUUID:rP,normalizeIPv6:i_,stringArrayToHexStripped:id}});var p_=T((X1,d_)=>{"use strict";var{isUUID:lP}=ad(),dP=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,pP=["http","https","ws","wss","urn","urn:uuid"];function fP(t){return pP.indexOf(t)!==-1}function cd(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 c_(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function u_(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 mP(t){return t.secure=cd(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function hP(t){if((t.port===(cd(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 gP(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(dP);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=ud(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function _P(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=ud(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 yP(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!lP(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function vP(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var l_={scheme:"http",domainHost:!0,parse:c_,serialize:u_},xP={scheme:"https",domainHost:l_.domainHost,parse:c_,serialize:u_},Zi={scheme:"ws",domainHost:!0,parse:mP,serialize:hP},SP={scheme:"wss",domainHost:Zi.domainHost,parse:Zi.parse,serialize:Zi.serialize},kP={scheme:"urn",parse:gP,serialize:_P,skipNormalize:!0},bP={scheme:"urn:uuid",parse:yP,serialize:vP,skipNormalize:!0},Ui={http:l_,https:xP,ws:Zi,wss:SP,urn:kP,"urn:uuid":bP};Object.setPrototypeOf(Ui,null);function ud(t){return t&&(Ui[t]||Ui[t.toLowerCase()])||void 0}d_.exports={wsIsSecure:cd,SCHEMES:Ui,isValidSchemeName:fP,getSchemeHandler:ud}});var h_=T((Q1,qi)=>{"use strict";var{normalizeIPv6:wP,removeDotSegments:Ko,recomposeAuthority:EP,normalizeComponentEncoding:Hi,isIPv4:TP,nonSimpleDomain:$P}=ad(),{SCHEMES:PP,getSchemeHandler:f_}=p_();function RP(t,e){return typeof t=="string"?t=Nt(Wt(t,e),e):typeof t=="object"&&(t=Wt(Nt(t,e),e)),t}function OP(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=m_(Wt(t,n),Wt(e,n),n,!0);return n.skipEscape=!0,Nt(o,n)}function m_(t,e,r,n){let o={};return n||(t=Wt(Nt(t,r),r),e=Wt(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=Ko(e.path||""),o.query=e.query):(e.userinfo!==void 0||e.host!==void 0||e.port!==void 0?(o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Ko(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Ko(e.path):((t.userinfo!==void 0||t.host!==void 0||t.port!==void 0)&&!t.path?o.path="/"+e.path:t.path?o.path=t.path.slice(0,t.path.lastIndexOf("/")+1)+e.path:o.path=e.path,o.path=Ko(o.path)),o.query=e.query):(o.path=t.path,e.query!==void 0?o.query=e.query:o.query=t.query),o.userinfo=t.userinfo,o.host=t.host,o.port=t.port),o.scheme=t.scheme),o.fragment=e.fragment,o}function CP(t,e,r){return typeof t=="string"?(t=unescape(t),t=Nt(Hi(Wt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Nt(Hi(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Nt(Hi(Wt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Nt(Hi(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=f_(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=EP(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=Ko(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 IP=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Wt(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(IP);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(TP(n.host)===!1){let c=wP(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=f_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&$P(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 ld={SCHEMES:PP,normalize:RP,resolve:OP,resolveComponent:m_,equal:CP,serialize:Nt,parse:Wt};qi.exports=ld;qi.exports.default=ld;qi.exports.fastUri=ld});var __=T(dd=>{"use strict";Object.defineProperty(dd,"__esModule",{value:!0});var g_=h_();g_.code='require("ajv/dist/runtime/uri").default';dd.default=g_});var E_=T(ze=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.CodeGen=ze.Name=ze.nil=ze.stringify=ze.str=ze._=ze.KeywordCxt=void 0;var zP=Bo();Object.defineProperty(ze,"KeywordCxt",{enumerable:!0,get:function(){return zP.KeywordCxt}});var jn=q();Object.defineProperty(ze,"_",{enumerable:!0,get:function(){return jn._}});Object.defineProperty(ze,"str",{enumerable:!0,get:function(){return jn.str}});Object.defineProperty(ze,"stringify",{enumerable:!0,get:function(){return jn.stringify}});Object.defineProperty(ze,"nil",{enumerable:!0,get:function(){return jn.nil}});Object.defineProperty(ze,"Name",{enumerable:!0,get:function(){return jn.Name}});Object.defineProperty(ze,"CodeGen",{enumerable:!0,get:function(){return jn.CodeGen}});var NP=Mi(),k_=Vo(),AP=Zl(),Jo=Li(),jP=q(),Go=Ho(),Fi=Uo(),fd=X(),y_=n_(),MP=__(),b_=(t,e)=>new RegExp(t,e);b_.code="new RegExp";var DP=["removeAdditional","useDefaults","coerceTypes"],LP=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),ZP={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."},UP={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},v_=200;function HP(t){var e,r,n,o,s,i,a,c,u,l,d,m,f,p,h,g,y,x,S,w,R,ae,ce,tt,Zt;let me=t.strict,er=(e=t.code)===null||e===void 0?void 0:e.optimize,Ze=er===!0||er===void 0?1:er||0,bs=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:b_,Aa=(o=t.uriResolver)!==null&&o!==void 0?o:MP.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:me)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:me)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:me)!==null&&l!==void 0?l:"log",strictTuples:(m=(d=t.strictTuples)!==null&&d!==void 0?d:me)!==null&&m!==void 0?m:"log",strictRequired:(p=(f=t.strictRequired)!==null&&f!==void 0?f:me)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Ze,regExp:bs}:{optimize:Ze,regExp:bs},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:v_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:v_,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(x=t.messages)!==null&&x!==void 0?x:!0,inlineRefs:(S=t.inlineRefs)!==null&&S!==void 0?S:!0,schemaId:(w=t.schemaId)!==null&&w!==void 0?w:"$id",addUsedSchema:(R=t.addUsedSchema)!==null&&R!==void 0?R:!0,validateSchema:(ae=t.validateSchema)!==null&&ae!==void 0?ae:!0,validateFormats:(ce=t.validateFormats)!==null&&ce!==void 0?ce:!0,unicodeRegExp:(tt=t.unicodeRegExp)!==null&&tt!==void 0?tt:!0,int32range:(Zt=t.int32range)!==null&&Zt!==void 0?Zt:!0,uriResolver:Aa}}var Wo=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...HP(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new jP.ValueScope({scope:{},prefixes:LP,es5:r,lines:n}),this.logger=JP(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,AP.getRules)(),x_.call(this,ZP,e,"NOT SUPPORTED"),x_.call(this,UP,e,"DEPRECATED","warn"),this._metaOpts=VP.call(this),e.formats&&FP.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&BP.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),qP.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=y_;n==="id"&&(o={...y_},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 m=this._addSchema(l,d);return m.validate||i.call(this,m)}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 k_.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,Go.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=S_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Jo.SchemaEnv({schema:{},schemaId:n});if(r=Jo.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=S_.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,Go.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(WP.call(this,n,r),!r)return(0,fd.eachItem)(n,s=>pd.call(this,s)),this;XP.call(this,r);let o={...r,type:(0,Fi.getJSONTypes)(r.type),schemaType:(0,Fi.getJSONTypes)(r.schemaType)};return(0,fd.eachItem)(n,o.type.length===0?s=>pd.call(this,s,o):s=>o.type.forEach(i=>pd.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]=w_(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,Go.normalizeId)(i||n);let u=Go.getSchemaRefs.call(this,e,n);return c=new Jo.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):Jo.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{Jo.compileSchema.call(this,e)}finally{this.opts=r}}};Wo.ValidationError=NP.default;Wo.MissingRefError=k_.default;ze.default=Wo;function x_(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 S_(t){return t=(0,Go.normalizeId)(t),this.schemas[t]||this.refs[t]}function qP(){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 FP(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function BP(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 VP(){let t={...this.opts};for(let e of DP)delete t[e];return t}var KP={log(){},warn(){},error(){}};function JP(t){if(t===!1)return KP;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 GP=/^[a-z_$][a-z0-9_$:-]*$/i;function WP(t,e){let{RULES:r}=this;if((0,fd.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!GP.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 pd(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,Fi.getJSONTypes)(e.type),schemaType:(0,Fi.getJSONTypes)(e.schemaType)}};e.before?YP.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 YP(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 XP(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=w_(e)),t.validateSchema=this.compile(e,!0))}var QP={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function w_(t){return{anyOf:[t,QP]}}});var T_=T(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var e0={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};md.default=e0});var O_=T(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.callRef=tn.getValidate=void 0;var t0=Vo(),$_=dt(),Qe=q(),Mn=Jt(),P_=Li(),Bi=X(),r0={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=P_.resolveRef.call(c,u,o,r);if(l===void 0)throw new t0.default(n.opts.uriResolver,o,r);if(l instanceof P_.SchemaEnv)return m(l);return f(l);function d(){if(s===u)return Vi(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Vi(t,(0,Qe._)`${p}.validate`,u,u.$async)}function m(p){let h=R_(t,p);Vi(t,h,p,p.$async)}function f(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,Qe.stringify)(p)}:{ref:p}),g=e.name("valid"),y=t.subschema({schema:p,dataTypes:[],schemaPath:Qe.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(y),t.ok(g)}}};function R_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Qe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}tn.getValidate=R_;function Vi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Mn.default.this:Qe.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,Qe._)`await ${(0,$_.callValidateCode)(t,e,u)}`),f(e),i||o.assign(p,!0)},h=>{o.if((0,Qe._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),m(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,$_.callValidateCode)(t,e,u),()=>f(e),()=>m(e))}function m(p){let h=(0,Qe._)`${p}.errors`;o.assign(Mn.default.vErrors,(0,Qe._)`${Mn.default.vErrors} === null ? ${h} : ${Mn.default.vErrors}.concat(${h})`),o.assign(Mn.default.errors,(0,Qe._)`${Mn.default.vErrors}.length`)}function f(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=Bi.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,Qe._)`${p}.evaluated.props`);s.props=Bi.mergeEvaluated.props(o,y,s.props,Qe.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Bi.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,Qe._)`${p}.evaluated.items`);s.items=Bi.mergeEvaluated.items(o,y,s.items,Qe.Name)}}}tn.callRef=Vi;tn.default=r0});var C_=T(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var n0=T_(),o0=O_(),s0=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",n0.default,o0.default];hd.default=s0});var I_=T(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var Ki=q(),_r=Ki.operators,Ji={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}},i0={message:({keyword:t,schemaCode:e})=>(0,Ki.str)`must be ${Ji[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ki._)`{comparison: ${Ji[t].okStr}, limit: ${e}}`},a0={keyword:Object.keys(Ji),type:"number",schemaType:"number",$data:!0,error:i0,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Ki._)`${r} ${Ji[e].fail} ${n} || isNaN(${r})`)}};gd.default=a0});var z_=T(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var Yo=q(),c0={message:({schemaCode:t})=>(0,Yo.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,Yo._)`{multipleOf: ${t}}`},u0={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:c0,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,Yo._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,Yo._)`${i} !== parseInt(${i})`;t.fail$data((0,Yo._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};_d.default=u0});var A_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});function N_(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}yd.default=N_;N_.code='require("ajv/dist/runtime/ucs2length").default'});var j_=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var rn=q(),l0=X(),d0=A_(),p0={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}}`},f0={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:p0,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,l0.useFunc)(t.gen,d0.default)}(${r})`;t.fail$data((0,rn._)`${i} ${s} ${n}`)}};vd.default=f0});var M_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var m0=dt(),h0=X(),Dn=q(),g0={message:({schemaCode:t})=>(0,Dn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Dn._)`{pattern: ${t}}`},_0={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:g0,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,Dn._)`new RegExp`:(0,h0.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Dn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Dn._)`!${l}`)}else{let c=(0,m0.usePattern)(t,o);t.fail$data((0,Dn._)`!${c}.test(${r})`)}}};xd.default=_0});var D_=T(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var Xo=q(),y0={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,Xo.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,Xo._)`{limit: ${t}}`},v0={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:y0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?Xo.operators.GT:Xo.operators.LT;t.fail$data((0,Xo._)`Object.keys(${r}).length ${o} ${n}`)}};Sd.default=v0});var L_=T(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var Qo=dt(),es=q(),x0=X(),S0={message:({params:{missingProperty:t}})=>(0,es.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,es._)`{missingProperty: ${t}}`},k0={keyword:"required",type:"object",schemaType:"array",$data:!0,error:S0,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let f=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(f?.[h]===void 0&&!p.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,y=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,x0.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(es.nil,d);else for(let f of r)(0,Qo.checkReportMissingProp)(t,f)}function l(){let f=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>m(f,p)),t.ok(p)}else e.if((0,Qo.checkMissingProp)(t,r,f)),(0,Qo.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,Qo.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function m(f,p){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(p,(0,Qo.propertyInData)(e,o,f,a.ownProperties)),e.if((0,es.not)(p),()=>{t.error(),e.break()})},es.nil)}}};kd.default=k0});var Z_=T(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var ts=q(),b0={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ts.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ts._)`{limit: ${t}}`},w0={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:b0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?ts.operators.GT:ts.operators.LT;t.fail$data((0,ts._)`${r}.length ${o} ${n}`)}};bd.default=w0});var Gi=T(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var U_=Jl();U_.code='require("ajv/dist/runtime/equal").default';wd.default=U_});var H_=T(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var Ed=Uo(),Ne=q(),E0=X(),T0=Gi(),$0={message:({params:{i:t,j:e}})=>(0,Ne.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ne._)`{i: ${t}, j: ${e}}`},P0={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:$0,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,Ed.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ne._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Ne._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,Ne._)`${p} > 1`,()=>(d()?m:f)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function m(p,h){let g=e.name("item"),y=(0,Ed.checkDataTypes)(u,g,a.opts.strictNumbers,Ed.DataType.Wrong),x=e.const("indices",(0,Ne._)`{}`);e.for((0,Ne._)`;${p}--;`,()=>{e.let(g,(0,Ne._)`${r}[${p}]`),e.if(y,(0,Ne._)`continue`),u.length>1&&e.if((0,Ne._)`typeof ${g} == "string"`,(0,Ne._)`${g} += "_"`),e.if((0,Ne._)`typeof ${x}[${g}] == "number"`,()=>{e.assign(h,(0,Ne._)`${x}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ne._)`${x}[${g}] = ${p}`)})}function f(p,h){let g=(0,E0.useFunc)(e,T0.default),y=e.name("outer");e.label(y).for((0,Ne._)`;${p}--;`,()=>e.for((0,Ne._)`${h} = ${p}; ${h}--;`,()=>e.if((0,Ne._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};Td.default=P0});var q_=T(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var $d=q(),R0=X(),O0=Gi(),C0={message:"must be equal to constant",params:({schemaCode:t})=>(0,$d._)`{allowedValue: ${t}}`},I0={keyword:"const",$data:!0,error:C0,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,R0.useFunc)(e,O0.default)}(${r}, ${o})`):t.fail((0,$d._)`${s} !== ${r}`)}};Pd.default=I0});var F_=T(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var rs=q(),z0=X(),N0=Gi(),A0={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,rs._)`{allowedValues: ${t}}`},j0={keyword:"enum",schemaType:"array",$data:!0,error:A0,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,z0.useFunc)(e,N0.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let f=e.const("vSchema",s);l=(0,rs.or)(...o.map((p,h)=>m(f,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,f=>e.if((0,rs._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function m(f,p){let h=o[p];return typeof h=="object"&&h!==null?(0,rs._)`${u()}(${r}, ${f}[${p}])`:(0,rs._)`${r} === ${h}`}}};Rd.default=j0});var B_=T(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var M0=I_(),D0=z_(),L0=j_(),Z0=M_(),U0=D_(),H0=L_(),q0=Z_(),F0=H_(),B0=q_(),V0=F_(),K0=[M0.default,D0.default,L0.default,Z0.default,U0.default,H0.default,q0.default,F0.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},B0.default,V0.default];Od.default=K0});var Id=T(ns=>{"use strict";Object.defineProperty(ns,"__esModule",{value:!0});ns.validateAdditionalItems=void 0;var nn=q(),Cd=X(),J0={message:({params:{len:t}})=>(0,nn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,nn._)`{limit: ${t}}`},G0={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:J0,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Cd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}V_(t,n)}};function V_(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,Cd.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:Cd.Type.Num},u),i.allErrors||r.if((0,nn.not)(u),()=>r.break())})}}ns.validateAdditionalItems=V_;ns.default=G0});var zd=T(os=>{"use strict";Object.defineProperty(os,"__esModule",{value:!0});os.validateTuple=void 0;var K_=q(),Wi=X(),W0=dt(),Y0={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return J_(t,"additionalItems",e);r.items=!0,!(0,Wi.alwaysValidSchema)(r,e)&&t.ok((0,W0.validateArray)(t))}};function J_(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=Wi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,K_._)`${s}.length`);r.forEach((d,m)=>{(0,Wi.alwaysValidSchema)(a,d)||(n.if((0,K_._)`${u} > ${m}`,()=>t.subschema({keyword:i,schemaProp:m,dataProp:m},c)),t.ok(c))});function l(d){let{opts:m,errSchemaPath:f}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(m.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${f}"`;(0,Wi.checkStrictMode)(a,g,m.strictTuples)}}}os.validateTuple=J_;os.default=Y0});var G_=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var X0=zd(),Q0={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,X0.validateTuple)(t,"items")};Nd.default=Q0});var Y_=T(Ad=>{"use strict";Object.defineProperty(Ad,"__esModule",{value:!0});var W_=q(),eR=X(),tR=dt(),rR=Id(),nR={message:({params:{len:t}})=>(0,W_.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,W_._)`{limit: ${t}}`},oR={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:nR,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,eR.alwaysValidSchema)(n,e)&&(o?(0,rR.validateAdditionalItems)(t,o):t.ok((0,tR.validateArray)(t)))}};Ad.default=oR});var X_=T(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});var ft=q(),Yi=X(),sR={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}}`},iR={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:sR,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,Yi.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Yi.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Yi.alwaysValidSchema)(s,r)){let h=(0,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?f(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ft._)`${o}.length > 0`,m)):(e.let(d,!1),m()),t.result(d,()=>t.reset());function m(){let h=e.name("_valid"),g=e.let("count",0);f(h,()=>e.if(h,()=>p(g)))}function f(h,g){e.forRange("i",0,l,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:Yi.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)))}}};jd.default=iR});var ty=T(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.validateSchemaDeps=At.validatePropertyDeps=At.error=void 0;var Md=q(),aR=X(),ss=dt();At.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Md.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Md._)`{property: ${t},
6
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,U._)`[${o}]`)}}}function HT({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,U._)`${e} !== undefined`,()=>t.assign((0,U._)`${e}[${r}]`,n))}function Vl(t,e,r,n=jn.Correct){let o=n===jn.Correct?U.operators.EQ:U.operators.NEQ,s;switch(t){case"null":return(0,U._)`${e} ${o} null`;case"array":s=(0,U._)`Array.isArray(${e})`;break;case"object":s=(0,U._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,U._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,U._)`typeof ${e} ${o} ${t}`}return n===jn.Correct?s:(0,U.not)(s);function i(a=U.nil){return(0,U.and)((0,U._)`typeof ${e} == "number"`,a,r?(0,U._)`isFinite(${e})`:U.nil)}}De.checkDataType=Vl;function Kl(t,e,r,n){if(t.length===1)return Vl(t[0],e,r,n);let o,s=(0,Tg.toHash)(t);if(s.array&&s.object){let i=(0,U._)`typeof ${e} != "object"`;o=s.null?i:(0,U._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=U.nil;s.number&&delete s.integer;for(let i in s)o=(0,U.and)(o,Vl(i,e,r,n));return o}De.checkDataTypes=Kl;var qT={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,U._)`{type: ${t}}`:(0,U._)`{type: ${e}}`};function Jl(t){let e=FT(t);(0,MT.reportError)(e,qT)}De.reportTypeError=Jl;function FT(t){let{gen:e,data:r,schema:n}=t,o=(0,Tg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Og=T(Li=>{"use strict";Object.defineProperty(Li,"__esModule",{value:!0});Li.assignDefaults=void 0;var Mn=q(),BT=X();function VT(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Rg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Rg(t,s,o.default))}Li.assignDefaults=VT;function Rg(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,BT.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(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.validateUnion=ne.validateArray=ne.usePattern=ne.callValidateCode=ne.schemaProperties=ne.allSchemaProperties=ne.noPropertyInData=ne.propertyInData=ne.isOwnProperty=ne.hasPropFunc=ne.reportMissingProp=ne.checkMissingProp=ne.checkReportMissingProp=void 0;var pe=q(),Gl=X(),fr=Jt(),KT=X();function JT(t,e){let{gen:r,data:n,it:o}=t;r.if(Yl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,pe._)`${e}`},!0),t.error()})}ne.checkReportMissingProp=JT;function GT({gen:t,data:e,it:{opts:r}},n,o){return(0,pe.or)(...n.map(s=>(0,pe.and)(Yl(t,e,s,r.ownProperties),(0,pe._)`${o} = ${s}`)))}ne.checkMissingProp=GT;function WT(t,e){t.setParams({missingProperty:e},!0),t.error()}ne.reportMissingProp=WT;function Cg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,pe._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=Cg;function Wl(t,e,r){return(0,pe._)`${Cg(t)}.call(${e}, ${r})`}ne.isOwnProperty=Wl;function YT(t,e,r,n){let o=(0,pe._)`${e}${(0,pe.getProperty)(r)} !== undefined`;return n?(0,pe._)`${o} && ${Wl(t,e,r)}`:o}ne.propertyInData=YT;function Yl(t,e,r,n){let o=(0,pe._)`${e}${(0,pe.getProperty)(r)} === undefined`;return n?(0,pe.or)(o,(0,pe.not)(Wl(t,e,r))):o}ne.noPropertyInData=Yl;function Ig(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ne.allSchemaProperties=Ig;function XT(t,e){return Ig(e).filter(r=>!(0,Gl.alwaysValidSchema)(t,e[r]))}ne.schemaProperties=XT;function QT({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})`}ne.callValidateCode=QT;var e$=(0,pe._)`new RegExp`;function t$({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"?e$:(0,KT.useFunc)(t,o)}(${r}, ${n})`})}ne.usePattern=t$;function r$(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:Gl.Type.Num},s),e.if((0,pe.not)(s),a)})}}ne.validateArray=r$;function n$(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,Gl.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))}ne.validateUnion=n$});var Ag=T(It=>{"use strict";Object.defineProperty(It,"__esModule",{value:!0});It.validateKeywordUsage=It.validSchemaType=It.funcKeywordCode=It.macroKeywordCode=void 0;var Fe=q(),en=Jt(),o$=dt(),s$=Fo();function i$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Ng(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Fe.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}It.macroKeywordCode=i$;function a$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;u$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Ng(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&&zg(t),g(()=>t.error());else{let y=e.async?m():p();e.modifying&&zg(t),g(()=>c$(t,y))}}function m(){let y=n.let("ruleErrs",null);return n.try(()=>h((0,Fe._)`await `),v=>n.assign(d,!1).if((0,Fe._)`${v} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,Fe._)`${v}.errors`),()=>n.throw(v))),y}function p(){let y=(0,Fe._)`${l}.errors`;return n.assign(y,null),h(Fe.nil),y}function h(y=e.async?(0,Fe._)`await `:Fe.nil){let v=c.opts.passContext?en.default.this:en.default.self,S=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Fe._)`${y}${(0,o$.callValidateCode)(t,l,v,S)}`,e.modifying)}function g(y){var v;n.if((0,Fe.not)((v=e.valid)!==null&&v!==void 0?v:d),y)}}It.funcKeywordCode=a$;function zg(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Fe._)`${n.parentData}[${n.parentDataProperty}]`))}function c$(t,e){let{gen:r}=t;r.if((0,Fe._)`Array.isArray(${e})`,()=>{r.assign(en.default.vErrors,(0,Fe._)`${en.default.vErrors} === null ? ${e} : ${en.default.vErrors}.concat(${e})`).assign(en.default.errors,(0,Fe._)`${en.default.vErrors}.length`),(0,s$.extendErrors)(t)},()=>t.error())}function u$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Ng(t,e,r){if(r===void 0)throw new Error(`keyword "${e}" failed to compile`);return t.scopeValue("keyword",typeof r=="function"?{ref:r}:{ref:r,code:(0,Fe.stringify)(r)})}function l$(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}It.validSchemaType=l$;function d$({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=d$});var Mg=T(mr=>{"use strict";Object.defineProperty(mr,"__esModule",{value:!0});mr.extendSubschemaMode=mr.extendSubschemaData=mr.getSubschema=void 0;var zt=q(),jg=X();function p$(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,jg.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=p$;function f$(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=a.let("data",(0,zt._)`${e.data}${(0,zt.getProperty)(r)}`,!0);c(f),t.errorPath=(0,zt.str)`${u}${(0,jg.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]}}mr.extendSubschemaData=f$;function m$(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=m$});var Xl=T((q1,Lg)=>{"use strict";Lg.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 Zg=T((F1,Dg)=>{"use strict";var hr=Dg.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(){};Di(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 Di(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++)Di(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)Di(t,e,r,d[m],o+"/"+l+"/"+h$(m),s,o,l,n,m)}else(l in hr.keywords||t.allKeys&&!(l in hr.skipKeywords))&&Di(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function h$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Vo=T(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.getSchemaRefs=Xe.resolveUrl=Xe.normalizeId=Xe._getFullPath=Xe.getFullPath=Xe.inlineRef=void 0;var g$=X(),_$=Xl(),y$=Zg(),x$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function v$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Ql(t):e?Ug(t)<=e:!1}Xe.inlineRef=v$;var S$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Ql(t){for(let e in t){if(S$.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Ql)||typeof r=="object"&&Ql(r))return!0}return!1}function Ug(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!x$.has(r)&&(typeof t[r]=="object"&&(0,g$.eachItem)(t[r],n=>e+=Ug(n)),e===1/0))return 1/0}return e}function Hg(t,e="",r){r!==!1&&(e=Ln(e));let n=t.parse(e);return qg(t,n)}Xe.getFullPath=Hg;function qg(t,e){return t.serialize(e).split("#")[0]+"#"}Xe._getFullPath=qg;var k$=/#\/?$/;function Ln(t){return t?t.replace(k$,""):""}Xe.normalizeId=Ln;function b$(t,e,r){return r=Ln(r),t.resolve(e,r)}Xe.resolveUrl=b$;var w$=/^[a-z_][-a-z0-9._]*$/i;function E$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Ln(t[r]||e),s={"":o},i=Hg(n,o,!1),a={},c=new Set;return y$(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof d[r]=="string"&&(g=y.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[f]=g;function y(S){let w=this.opts.uriResolver.resolve;if(S=Ln(g?w(g,S):S),c.has(S))throw l(S);c.add(S);let R=this.refs[S];return typeof R=="string"&&(R=this.refs[R]),typeof R=="object"?u(d,R.schema,S):S!==Ln(h)&&(S[0]==="#"?(u(d,a[S],S),a[S]=d):this.refs[S]=h),S}function v(S){if(typeof S=="string"){if(!w$.test(S))throw new Error(`invalid anchor "${S}"`);y.call(this,`#${S}`)}}}),a;function u(d,f,m){if(f!==void 0&&!_$(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Xe.getSchemaRefs=E$});var Go=T(gr=>{"use strict";Object.defineProperty(gr,"__esModule",{value:!0});gr.getData=gr.KeywordCxt=gr.validateFunctionCode=void 0;var Jg=bg(),Fg=Bo(),td=Bl(),Zi=Bo(),T$=Og(),Jo=Ag(),ed=Mg(),z=q(),L=Jt(),$$=Vo(),Gt=X(),Ko=Fo();function P$(t){if(Yg(t)&&(Xg(t),Wg(t))){C$(t);return}Gg(t,()=>(0,Jg.topBoolOrEmptySchema)(t))}gr.validateFunctionCode=P$;function Gg({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,z._)`${L.default.data}, ${L.default.valCxt}`,n.$async,()=>{t.code((0,z._)`"use strict"; ${Bg(r,o)}`),O$(t,o),t.code(s)}):t.func(e,(0,z._)`${L.default.data}, ${R$(o)}`,n.$async,()=>t.code(Bg(r,o)).code(s))}function R$(t){return(0,z._)`{${L.default.instancePath}="", ${L.default.parentData}, ${L.default.parentDataProperty}, ${L.default.rootData}=${L.default.data}${t.dynamicRef?(0,z._)`, ${L.default.dynamicAnchors}={}`:z.nil}}={}`}function O$(t,e){t.if(L.default.valCxt,()=>{t.var(L.default.instancePath,(0,z._)`${L.default.valCxt}.${L.default.instancePath}`),t.var(L.default.parentData,(0,z._)`${L.default.valCxt}.${L.default.parentData}`),t.var(L.default.parentDataProperty,(0,z._)`${L.default.valCxt}.${L.default.parentDataProperty}`),t.var(L.default.rootData,(0,z._)`${L.default.valCxt}.${L.default.rootData}`),e.dynamicRef&&t.var(L.default.dynamicAnchors,(0,z._)`${L.default.valCxt}.${L.default.dynamicAnchors}`)},()=>{t.var(L.default.instancePath,(0,z._)`""`),t.var(L.default.parentData,(0,z._)`undefined`),t.var(L.default.parentDataProperty,(0,z._)`undefined`),t.var(L.default.rootData,L.default.data),e.dynamicRef&&t.var(L.default.dynamicAnchors,(0,z._)`{}`)})}function C$(t){let{schema:e,opts:r,gen:n}=t;Gg(t,()=>{r.$comment&&e.$comment&&e_(t),j$(t),n.let(L.default.vErrors,null),n.let(L.default.errors,0),r.unevaluated&&I$(t),Qg(t),D$(t)})}function I$(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 Bg(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 z$(t,e){if(Yg(t)&&(Xg(t),Wg(t))){N$(t,e);return}(0,Jg.boolOrEmptySchema)(t,e)}function Wg({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function Yg(t){return typeof t.schema!="boolean"}function N$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&e_(t),M$(t),L$(t);let s=n.const("_errs",L.default.errors);Qg(t,s),n.var(e,(0,z._)`${s} === ${L.default.errors}`)}function Xg(t){(0,Gt.checkUnknownRules)(t),A$(t)}function Qg(t,e){if(t.opts.jtd)return Vg(t,[],!1,e);let r=(0,Fg.getSchemaTypes)(t.schema),n=(0,Fg.coerceAndCheckDataType)(t,r);Vg(t,r,!n,e)}function A$(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,Gt.schemaHasRulesButRef)(e,o.RULES)&&o.logger.warn(`$ref: keywords ignored in schema at path "${r}"`)}function j$(t){let{schema:e,opts:r}=t;e.default!==void 0&&r.useDefaults&&r.strictSchema&&(0,Gt.checkStrictMode)(t,"default is ignored in the schema root")}function M$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,$$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function L$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function e_({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,z._)`${L.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._)`${L.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function D$(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,z._)`${L.default.errors} === 0`,()=>e.return(L.default.data),()=>e.throw((0,z._)`new ${o}(${L.default.vErrors})`)):(e.assign((0,z._)`${n}.errors`,L.default.vErrors),s.unevaluated&&Z$(t),e.return((0,z._)`${L.default.errors} === 0`))}function Z$({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 Vg(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,Gt.schemaHasRulesButRef)(s,l))){o.block(()=>r_(t,"$ref",l.all.$ref.definition));return}c.jtd||U$(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,td.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Zi.checkDataType)(f.type,i,c.strictNumbers)),Kg(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Zi.reportTypeError)(t)),o.endIf()):Kg(t,f),a||o.if((0,z._)`${L.default.errors} === ${n||0}`))}}function Kg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,T$.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,td.shouldUseRule)(n,s)&&r_(t,s.keyword,s.definition,e.type)})}function U$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(H$(t,e),t.opts.allowUnionTypes||q$(t,e),F$(t,t.dataTypes))}function H$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{t_(t.dataTypes,r)||rd(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),V$(t,e)}}function q$(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&rd(t,"use allowUnionTypes to allow union type keyword")}function F$(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,td.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>B$(e,i))&&rd(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function B$(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function t_(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function V$(t,e){let r=[];for(let n of t.dataTypes)t_(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function rd(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,Gt.checkStrictMode)(t,e,t.opts.strictTypes)}var Ui=class{constructor(e,r,n){if((0,Jo.validateKeywordUsage)(e,r,n),this.gen=e.gen,this.allErrors=e.allErrors,this.keyword=n,this.data=e.data,this.schema=e.schema[n],this.$data=r.$data&&e.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,Gt.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",n_(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Jo.validSchemaType)(this.schema,r.schemaType,r.allowUndefined))throw new Error(`${n} value must be ${JSON.stringify(r.schemaType)}`);("code"in r?r.trackErrors:r.errors!==!1)&&(this.errsCount=e.gen.const("_errs",L.default.errors))}result(e,r,n){this.failResult((0,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?Ko.reportExtraError:Ko.reportError)(this,this.def.error,r)}$dataError(){(0,Ko.reportError)(this,this.def.$dataError||Ko.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Ko.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,Zi.checkDataTypes)(c,r,s.opts.strictNumbers,Zi.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,ed.getSubschema)(this.it,e);(0,ed.extendSubschemaData)(n,this.it,e),(0,ed.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return z$(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=Gt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Gt.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=Ui;function r_(t,e,r,n){let o=new Ui(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Jo.funcKeywordCode)(o,r):"macro"in r?(0,Jo.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Jo.funcKeywordCode)(o,r)}var K$=/^\/(?:[^~]|~0|~1)*$/,J$=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function n_(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return L.default.rootData;if(t[0]==="/"){if(!K$.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=L.default.rootData}else{let u=J$.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,Gt.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=n_});var Hi=T(od=>{"use strict";Object.defineProperty(od,"__esModule",{value:!0});var nd=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};od.default=nd});var Wo=T(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var sd=Vo(),id=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,sd.resolveUrl)(e,r,n),this.missingSchema=(0,sd.normalizeId)((0,sd.getFullPath)(e,this.missingRef))}};ad.default=id});var Fi=T(pt=>{"use strict";Object.defineProperty(pt,"__esModule",{value:!0});pt.resolveSchema=pt.getCompilingSchema=pt.resolveRef=pt.compileSchema=pt.SchemaEnv=void 0;var vt=q(),G$=Hi(),tn=Jt(),St=Vo(),o_=X(),W$=Go(),Dn=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,St.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=Dn;function ud(t){let e=s_.call(this,t);if(e)return e;let r=(0,St.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new vt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:G$.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:tn.default.data,parentData:tn.default.parentData,parentDataProperty:tn.default.parentDataProperty,dataNames:[tn.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,W$.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(tn.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${tn.default.self}`,`${tn.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=ud;function Y$(t,e,r){var n;r=(0,St.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=e0.call(this,t,r);if(s===void 0){let i=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;i&&(s=new Dn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=X$.call(this,s)}pt.resolveRef=Y$;function X$(t){return(0,St.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:ud.call(this,t)}function s_(t){for(let e of this._compilations)if(Q$(e,t))return e}pt.getCompilingSchema=s_;function Q$(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function e0(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||qi.call(this,t,e)}function qi(t,e){let r=this.opts.uriResolver.parse(e),n=(0,St._getFullPath)(this.opts.uriResolver,r),o=(0,St.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return cd.call(this,r,t);let s=(0,St.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=qi.call(this,t,i);return typeof a?.schema!="object"?void 0:cd.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||ud.call(this,i),s===(0,St.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,St.resolveUrl)(this.opts.uriResolver,o,u)),new Dn({schema:a,schemaId:c,root:t,baseId:o})}return cd.call(this,r,i)}}pt.resolveSchema=qi;var t0=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function cd(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,o_.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!t0.has(a)&&u&&(e=(0,St.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,o_.schemaHasRulesButRef)(r,this.RULES)){let a=(0,St.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=qi.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Dn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var i_=T((W1,r0)=>{r0.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 dd=T((Y1,l_)=>{"use strict";var n0=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),c_=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 ld(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 o0=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function a_(t){return t.length=0,!0}function s0(t,e,r){if(t.length){let n=ld(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function i0(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=s0;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=a_}else{o.push(u);continue}}return o.length&&(a===a_?r.zone=o.join(""):i?n.push(o.join("")):n.push(ld(o))),r.address=n.join(""),r}function u_(t){if(a0(t,":")<2)return{host:t,isIPV6:!1};let e=i0(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 a0(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function c0(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 u0(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 l0(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!c_(r)){let n=u_(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}l_.exports={nonSimpleDomain:o0,recomposeAuthority:l0,normalizeComponentEncoding:u0,removeDotSegments:c0,isIPv4:c_,isUUID:n0,normalizeIPv6:u_,stringArrayToHexStripped:ld}});var h_=T((X1,m_)=>{"use strict";var{isUUID:d0}=dd(),p0=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,f0=["http","https","ws","wss","urn","urn:uuid"];function m0(t){return f0.indexOf(t)!==-1}function pd(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 d_(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function p_(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 h0(t){return t.secure=pd(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function g0(t){if((t.port===(pd(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 _0(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(p0);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=fd(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function y0(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=fd(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 x0(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!d0(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function v0(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var f_={scheme:"http",domainHost:!0,parse:d_,serialize:p_},S0={scheme:"https",domainHost:f_.domainHost,parse:d_,serialize:p_},Bi={scheme:"ws",domainHost:!0,parse:h0,serialize:g0},k0={scheme:"wss",domainHost:Bi.domainHost,parse:Bi.parse,serialize:Bi.serialize},b0={scheme:"urn",parse:_0,serialize:y0,skipNormalize:!0},w0={scheme:"urn:uuid",parse:x0,serialize:v0,skipNormalize:!0},Vi={http:f_,https:S0,ws:Bi,wss:k0,urn:b0,"urn:uuid":w0};Object.setPrototypeOf(Vi,null);function fd(t){return t&&(Vi[t]||Vi[t.toLowerCase()])||void 0}m_.exports={wsIsSecure:pd,SCHEMES:Vi,isValidSchemeName:m0,getSchemeHandler:fd}});var y_=T((Q1,Ji)=>{"use strict";var{normalizeIPv6:E0,removeDotSegments:Yo,recomposeAuthority:T0,normalizeComponentEncoding:Ki,isIPv4:$0,nonSimpleDomain:P0}=dd(),{SCHEMES:R0,getSchemeHandler:g_}=h_();function O0(t,e){return typeof t=="string"?t=Nt(Wt(t,e),e):typeof t=="object"&&(t=Wt(Nt(t,e),e)),t}function C0(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=__(Wt(t,n),Wt(e,n),n,!0);return n.skipEscape=!0,Nt(o,n)}function __(t,e,r,n){let o={};return n||(t=Wt(Nt(t,r),r),e=Wt(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=Yo(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=Yo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Yo(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=Yo(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 I0(t,e,r){return typeof t=="string"?(t=unescape(t),t=Nt(Ki(Wt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Nt(Ki(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Nt(Ki(Wt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Nt(Ki(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=g_(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=T0(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=Yo(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 z0=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Wt(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(z0);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($0(n.host)===!1){let c=E0(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=g_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&P0(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 md={SCHEMES:R0,normalize:O0,resolve:C0,resolveComponent:__,equal:I0,serialize:Nt,parse:Wt};Ji.exports=md;Ji.exports.default=md;Ji.exports.fastUri=md});var v_=T(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var x_=y_();x_.code='require("ajv/dist/runtime/uri").default';hd.default=x_});var P_=T(ze=>{"use strict";Object.defineProperty(ze,"__esModule",{value:!0});ze.CodeGen=ze.Name=ze.nil=ze.stringify=ze.str=ze._=ze.KeywordCxt=void 0;var N0=Go();Object.defineProperty(ze,"KeywordCxt",{enumerable:!0,get:function(){return N0.KeywordCxt}});var Zn=q();Object.defineProperty(ze,"_",{enumerable:!0,get:function(){return Zn._}});Object.defineProperty(ze,"str",{enumerable:!0,get:function(){return Zn.str}});Object.defineProperty(ze,"stringify",{enumerable:!0,get:function(){return Zn.stringify}});Object.defineProperty(ze,"nil",{enumerable:!0,get:function(){return Zn.nil}});Object.defineProperty(ze,"Name",{enumerable:!0,get:function(){return Zn.Name}});Object.defineProperty(ze,"CodeGen",{enumerable:!0,get:function(){return Zn.CodeGen}});var A0=Hi(),E_=Wo(),j0=Fl(),Xo=Fi(),M0=q(),Qo=Vo(),Gi=Bo(),_d=X(),S_=i_(),L0=v_(),T_=(t,e)=>new RegExp(t,e);T_.code="new RegExp";var D0=["removeAdditional","useDefaults","coerceTypes"],Z0=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),U0={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."},H0={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},k_=200;function q0(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,y,v,S,w,R,ae,ce,tt,Zt;let me=t.strict,er=(e=t.code)===null||e===void 0?void 0:e.optimize,Ze=er===!0||er===void 0?1:er||0,Rs=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:T_,Za=(o=t.uriResolver)!==null&&o!==void 0?o:L0.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:me)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:me)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:me)!==null&&l!==void 0?l:"log",strictTuples:(f=(d=t.strictTuples)!==null&&d!==void 0?d:me)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:me)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Ze,regExp:Rs}:{optimize:Ze,regExp:Rs},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:k_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:k_,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(v=t.messages)!==null&&v!==void 0?v:!0,inlineRefs:(S=t.inlineRefs)!==null&&S!==void 0?S:!0,schemaId:(w=t.schemaId)!==null&&w!==void 0?w:"$id",addUsedSchema:(R=t.addUsedSchema)!==null&&R!==void 0?R:!0,validateSchema:(ae=t.validateSchema)!==null&&ae!==void 0?ae:!0,validateFormats:(ce=t.validateFormats)!==null&&ce!==void 0?ce:!0,unicodeRegExp:(tt=t.unicodeRegExp)!==null&&tt!==void 0?tt:!0,int32range:(Zt=t.int32range)!==null&&Zt!==void 0?Zt:!0,uriResolver:Za}}var es=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...q0(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new M0.ValueScope({scope:{},prefixes:Z0,es5:r,lines:n}),this.logger=G0(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,j0.getRules)(),b_.call(this,U0,e,"NOT SUPPORTED"),b_.call(this,H0,e,"DEPRECATED","warn"),this._metaOpts=K0.call(this),e.formats&&B0.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&V0.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),F0.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=S_;n==="id"&&(o={...S_},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 E_.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,Qo.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=w_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Xo.SchemaEnv({schema:{},schemaId:n});if(r=Xo.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=w_.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,Qo.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(Y0.call(this,n,r),!r)return(0,_d.eachItem)(n,s=>gd.call(this,s)),this;Q0.call(this,r);let o={...r,type:(0,Gi.getJSONTypes)(r.type),schemaType:(0,Gi.getJSONTypes)(r.schemaType)};return(0,_d.eachItem)(n,o.type.length===0?s=>gd.call(this,s,o):s=>o.type.forEach(i=>gd.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]=$_(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,Qo.normalizeId)(i||n);let u=Qo.getSchemaRefs.call(this,e,n);return c=new Xo.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):Xo.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{Xo.compileSchema.call(this,e)}finally{this.opts=r}}};es.ValidationError=A0.default;es.MissingRefError=E_.default;ze.default=es;function b_(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 w_(t){return t=(0,Qo.normalizeId)(t),this.schemas[t]||this.refs[t]}function F0(){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 B0(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function V0(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 K0(){let t={...this.opts};for(let e of D0)delete t[e];return t}var J0={log(){},warn(){},error(){}};function G0(t){if(t===!1)return J0;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 W0=/^[a-z_$][a-z0-9_$:-]*$/i;function Y0(t,e){let{RULES:r}=this;if((0,_d.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!W0.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 gd(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,Gi.getJSONTypes)(e.type),schemaType:(0,Gi.getJSONTypes)(e.schemaType)}};e.before?X0.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 X0(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 Q0(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=$_(e)),t.validateSchema=this.compile(e,!0))}var eP={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function $_(t){return{anyOf:[t,eP]}}});var R_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var tP={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};yd.default=tP});var z_=T(rn=>{"use strict";Object.defineProperty(rn,"__esModule",{value:!0});rn.callRef=rn.getValidate=void 0;var rP=Wo(),O_=dt(),Qe=q(),Un=Jt(),C_=Fi(),Wi=X(),nP={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=C_.resolveRef.call(c,u,o,r);if(l===void 0)throw new rP.default(n.opts.uriResolver,o,r);if(l instanceof C_.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Yi(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Yi(t,(0,Qe._)`${p}.validate`,u,u.$async)}function f(p){let h=I_(t,p);Yi(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,Qe.stringify)(p)}:{ref:p}),g=e.name("valid"),y=t.subschema({schema:p,dataTypes:[],schemaPath:Qe.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(y),t.ok(g)}}};function I_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,Qe._)`${r.scopeValue("wrapper",{ref:e})}.validate`}rn.getValidate=I_;function Yi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Un.default.this:Qe.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,Qe._)`await ${(0,O_.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,Qe._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,O_.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,Qe._)`${p}.errors`;o.assign(Un.default.vErrors,(0,Qe._)`${Un.default.vErrors} === null ? ${h} : ${Un.default.vErrors}.concat(${h})`),o.assign(Un.default.errors,(0,Qe._)`${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=Wi.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,Qe._)`${p}.evaluated.props`);s.props=Wi.mergeEvaluated.props(o,y,s.props,Qe.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Wi.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,Qe._)`${p}.evaluated.items`);s.items=Wi.mergeEvaluated.items(o,y,s.items,Qe.Name)}}}rn.callRef=Yi;rn.default=nP});var N_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var oP=R_(),sP=z_(),iP=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",oP.default,sP.default];xd.default=iP});var A_=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var Xi=q(),_r=Xi.operators,Qi={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}},aP={message:({keyword:t,schemaCode:e})=>(0,Xi.str)`must be ${Qi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Xi._)`{comparison: ${Qi[t].okStr}, limit: ${e}}`},cP={keyword:Object.keys(Qi),type:"number",schemaType:"number",$data:!0,error:aP,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Xi._)`${r} ${Qi[e].fail} ${n} || isNaN(${r})`)}};vd.default=cP});var j_=T(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var ts=q(),uP={message:({schemaCode:t})=>(0,ts.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,ts._)`{multipleOf: ${t}}`},lP={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:uP,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,ts._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,ts._)`${i} !== parseInt(${i})`;t.fail$data((0,ts._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Sd.default=lP});var L_=T(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});function M_(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}kd.default=M_;M_.code='require("ajv/dist/runtime/ucs2length").default'});var D_=T(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var nn=q(),dP=X(),pP=L_(),fP={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,nn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,nn._)`{limit: ${t}}`},mP={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:fP,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?nn.operators.GT:nn.operators.LT,i=o.opts.unicode===!1?(0,nn._)`${r}.length`:(0,nn._)`${(0,dP.useFunc)(t.gen,pP.default)}(${r})`;t.fail$data((0,nn._)`${i} ${s} ${n}`)}};bd.default=mP});var Z_=T(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var hP=dt(),gP=X(),Hn=q(),_P={message:({schemaCode:t})=>(0,Hn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Hn._)`{pattern: ${t}}`},yP={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:_P,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,gP.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,hP.usePattern)(t,o);t.fail$data((0,Hn._)`!${c}.test(${r})`)}}};wd.default=yP});var U_=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var rs=q(),xP={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,rs.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,rs._)`{limit: ${t}}`},vP={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:xP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?rs.operators.GT:rs.operators.LT;t.fail$data((0,rs._)`Object.keys(${r}).length ${o} ${n}`)}};Ed.default=vP});var H_=T(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var ns=dt(),os=q(),SP=X(),kP={message:({params:{missingProperty:t}})=>(0,os.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,os._)`{missingProperty: ${t}}`},bP={keyword:"required",type:"object",schemaType:"array",$data:!0,error:kP,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,y=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,SP.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(os.nil,d);else for(let m of r)(0,ns.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,ns.checkMissingProp)(t,r,m)),(0,ns.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,ns.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,ns.propertyInData)(e,o,m,a.ownProperties)),e.if((0,os.not)(p),()=>{t.error(),e.break()})},os.nil)}}};Td.default=bP});var q_=T($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var ss=q(),wP={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ss.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ss._)`{limit: ${t}}`},EP={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:wP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?ss.operators.GT:ss.operators.LT;t.fail$data((0,ss._)`${r}.length ${o} ${n}`)}};$d.default=EP});var ea=T(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var F_=Xl();F_.code='require("ajv/dist/runtime/equal").default';Pd.default=F_});var B_=T(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var Rd=Bo(),Ne=q(),TP=X(),$P=ea(),PP={message:({params:{i:t,j:e}})=>(0,Ne.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,Ne._)`{i: ${t}, j: ${e}}`},RP={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:PP,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,Rd.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,Ne._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,Ne._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,Ne._)`${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"),y=(0,Rd.checkDataTypes)(u,g,a.opts.strictNumbers,Rd.DataType.Wrong),v=e.const("indices",(0,Ne._)`{}`);e.for((0,Ne._)`;${p}--;`,()=>{e.let(g,(0,Ne._)`${r}[${p}]`),e.if(y,(0,Ne._)`continue`),u.length>1&&e.if((0,Ne._)`typeof ${g} == "string"`,(0,Ne._)`${g} += "_"`),e.if((0,Ne._)`typeof ${v}[${g}] == "number"`,()=>{e.assign(h,(0,Ne._)`${v}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,Ne._)`${v}[${g}] = ${p}`)})}function m(p,h){let g=(0,TP.useFunc)(e,$P.default),y=e.name("outer");e.label(y).for((0,Ne._)`;${p}--;`,()=>e.for((0,Ne._)`${h} = ${p}; ${h}--;`,()=>e.if((0,Ne._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};Od.default=RP});var V_=T(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var Cd=q(),OP=X(),CP=ea(),IP={message:"must be equal to constant",params:({schemaCode:t})=>(0,Cd._)`{allowedValue: ${t}}`},zP={keyword:"const",$data:!0,error:IP,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,Cd._)`!${(0,OP.useFunc)(e,CP.default)}(${r}, ${o})`):t.fail((0,Cd._)`${s} !== ${r}`)}};Id.default=zP});var K_=T(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var is=q(),NP=X(),AP=ea(),jP={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,is._)`{allowedValues: ${t}}`},MP={keyword:"enum",schemaType:"array",$data:!0,error:jP,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,NP.useFunc)(e,AP.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,is.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,is._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,is._)`${u()}(${r}, ${m}[${p}])`:(0,is._)`${r} === ${h}`}}};zd.default=MP});var J_=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var LP=A_(),DP=j_(),ZP=D_(),UP=Z_(),HP=U_(),qP=H_(),FP=q_(),BP=B_(),VP=V_(),KP=K_(),JP=[LP.default,DP.default,ZP.default,UP.default,HP.default,qP.default,FP.default,BP.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},VP.default,KP.default];Nd.default=JP});var jd=T(as=>{"use strict";Object.defineProperty(as,"__esModule",{value:!0});as.validateAdditionalItems=void 0;var on=q(),Ad=X(),GP={message:({params:{len:t}})=>(0,on.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,on._)`{limit: ${t}}`},WP={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:GP,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Ad.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}G_(t,n)}};function G_(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,on._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,on._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Ad.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,on._)`${a} <= ${e.length}`);r.if((0,on.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Ad.Type.Num},u),i.allErrors||r.if((0,on.not)(u),()=>r.break())})}}as.validateAdditionalItems=G_;as.default=WP});var Md=T(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.validateTuple=void 0;var W_=q(),ta=X(),YP=dt(),XP={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Y_(t,"additionalItems",e);r.items=!0,!(0,ta.alwaysValidSchema)(r,e)&&t.ok((0,YP.validateArray)(t))}};function Y_(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=ta.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,W_._)`${s}.length`);r.forEach((d,f)=>{(0,ta.alwaysValidSchema)(a,d)||(n.if((0,W_._)`${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,ta.checkStrictMode)(a,g,f.strictTuples)}}}cs.validateTuple=Y_;cs.default=XP});var X_=T(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var QP=Md(),eR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,QP.validateTuple)(t,"items")};Ld.default=eR});var ey=T(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var Q_=q(),tR=X(),rR=dt(),nR=jd(),oR={message:({params:{len:t}})=>(0,Q_.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,Q_._)`{limit: ${t}}`},sR={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:oR,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,tR.alwaysValidSchema)(n,e)&&(o?(0,nR.validateAdditionalItems)(t,o):t.ok((0,rR.validateArray)(t)))}};Dd.default=sR});var ty=T(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var ft=q(),ra=X(),iR={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}}`},aR={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:iR,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,ra.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,ra.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,ra.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,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:ra.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)))}}};Zd.default=aR});var oy=T(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.validateSchemaDeps=At.validatePropertyDeps=At.error=void 0;var Ud=q(),cR=X(),us=dt();At.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Ud.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Ud._)`{property: ${t},
7
7
  missingProperty: ${n},
8
8
  depsCount: ${e},
9
- deps: ${r}}`};var cR={keyword:"dependencies",type:"object",schemaType:"object",error:At.error,code(t){let[e,r]=uR(t);Q_(t,e),ey(t,r)}};function uR({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 Q_(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,ss.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,ss.checkReportMissingProp)(t,u)}):(r.if((0,Md._)`${c} && (${(0,ss.checkMissingProp)(t,a,s)})`),(0,ss.reportMissingProp)(t,s),r.else())}}At.validatePropertyDeps=Q_;function ey(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,aR.alwaysValidSchema)(s,e[a])||(r.if((0,ss.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=ey;At.default=cR});var ny=T(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var ry=q(),lR=X(),dR={message:"property name must be valid",params:({params:t})=>(0,ry._)`{propertyName: ${t.propertyName}}`},pR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:dR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,lR.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,ry.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Dd.default=pR});var Zd=T(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var Xi=dt(),kt=q(),fR=Jt(),Qi=X(),mR={message:"must NOT have additional properties",params:({params:t})=>(0,kt._)`{additionalProperty: ${t.additionalProperty}}`},hR={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:mR,code(t){let{gen:e,schema:r,parentSchema:n,data:o,errsCount:s,it:i}=t;if(!s)throw new Error("ajv implementation error");let{allErrors:a,opts:c}=i;if(i.props=!0,c.removeAdditional!=="all"&&(0,Qi.alwaysValidSchema)(i,r))return;let u=(0,Xi.allSchemaProperties)(n.properties),l=(0,Xi.allSchemaProperties)(n.patternProperties);d(),t.ok((0,kt._)`${s} === ${fR.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(m(g),()=>p(g))})}function m(g){let y;if(u.length>8){let x=(0,Qi.schemaRefOrVal)(i,n.properties,"properties");y=(0,Xi.isOwnProperty)(e,x,g)}else u.length?y=(0,kt.or)(...u.map(x=>(0,kt._)`${g} === ${x}`)):y=kt.nil;return l.length&&(y=(0,kt.or)(y,...l.map(x=>(0,kt._)`${(0,Xi.usePattern)(t,x)}.test(${g})`))),(0,kt.not)(y)}function f(g){e.code((0,kt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){f(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,Qi.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(h(g,y,!1),e.if((0,kt.not)(y),()=>{t.reset(),f(g)})):(h(g,y),a||e.if((0,kt.not)(y),()=>e.break()))}}function h(g,y,x){let S={keyword:"additionalProperties",dataProp:g,dataPropType:Qi.Type.Str};x===!1&&Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(S,y)}}};Ld.default=hR});var iy=T(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var gR=Bo(),oy=dt(),Ud=X(),sy=Zd(),_R={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&&sy.default.code(new gR.KeywordCxt(s,sy.default,"additionalProperties"));let i=(0,oy.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Ud.mergeEvaluated.props(e,(0,Ud.toHash)(i),s.props));let a=i.filter(d=>!(0,Ud.alwaysValidSchema)(s,r[d]));if(a.length===0)return;let c=e.name("valid");for(let d of a)u(d)?l(d):(e.if((0,oy.propertyInData)(e,o,d,s.opts.ownProperties)),l(d),s.allErrors||e.else().var(c,!0),e.endIf()),t.it.definedProperties.add(d),t.ok(c);function u(d){return s.opts.useDefaults&&!s.compositeRule&&r[d].default!==void 0}function l(d){t.subschema({keyword:"properties",schemaProp:d,dataProp:d},c)}}};Hd.default=_R});var ly=T(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var ay=dt(),ea=q(),cy=X(),uy=X(),yR={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,ay.allSchemaProperties)(r),c=a.filter(h=>(0,cy.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 ea.Name)&&(s.props=(0,uy.evaluatedPropsToName)(e,s.props));let{props:d}=s;m();function m(){for(let h of a)u&&f(h),s.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function f(h){for(let g in u)new RegExp(h).test(g)&&(0,cy.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,ea._)`${(0,ay.usePattern)(t,h)}.test(${g})`,()=>{let y=c.includes(h);y||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:uy.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,ea._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,ea.not)(l),()=>e.break())})})}}};qd.default=yR});var dy=T(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});var vR=X(),xR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,vR.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"}};Fd.default=xR});var py=T(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var SR=dt(),kR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:SR.validateUnion,error:{message:"must match a schema in anyOf"}};Bd.default=kR});var fy=T(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var ta=q(),bR=X(),wR={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,ta._)`{passingSchemas: ${t.passing}}`},ER={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:wR,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 m;(0,bR.alwaysValidSchema)(o,l)?e.var(c,!0):m=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,ta._)`${c} && ${i}`).assign(i,!1).assign(a,(0,ta._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),m&&t.mergeEvaluated(m,ta.Name)})})}}};Vd.default=ER});var my=T(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var TR=X(),$R={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,TR.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Kd.default=$R});var _y=T(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var ra=q(),gy=X(),PR={message:({params:t})=>(0,ra.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,ra._)`{failingKeyword: ${t.ifClause}}`},RR={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:PR,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,gy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=hy(n,"then"),s=hy(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,ra.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 m=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(m,i),d?e.assign(d,(0,ra._)`${l}`):t.setParams({ifClause:l})}}}};function hy(t,e){let r=t.schema[e];return r!==void 0&&!(0,gy.alwaysValidSchema)(t,r)}Jd.default=RR});var yy=T(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var OR=X(),CR={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,OR.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Gd.default=CR});var vy=T(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var IR=Id(),zR=G_(),NR=zd(),AR=Y_(),jR=X_(),MR=ty(),DR=ny(),LR=Zd(),ZR=iy(),UR=ly(),HR=dy(),qR=py(),FR=fy(),BR=my(),VR=_y(),KR=yy();function JR(t=!1){let e=[HR.default,qR.default,FR.default,BR.default,VR.default,KR.default,DR.default,LR.default,MR.default,ZR.default,UR.default];return t?e.push(zR.default,AR.default):e.push(IR.default,NR.default),e.push(jR.default),e}Wd.default=JR});var xy=T(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});var Se=q(),GR={message:({schemaCode:t})=>(0,Se.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Se._)`{format: ${t}}`},WR={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:GR,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?m():f();function m(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,Se._)`${p}[${i}]`),g=r.let("fType"),y=r.let("format");r.if((0,Se._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Se._)`${h}.type || "string"`).assign(y,(0,Se._)`${h}.validate`),()=>r.assign(g,(0,Se._)`"string"`).assign(y,h)),t.fail$data((0,Se.or)(x(),S()));function x(){return c.strictSchema===!1?Se.nil:(0,Se._)`${i} && !${y}`}function S(){let w=l.$async?(0,Se._)`(${h}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,Se._)`${y}(${n})`,R=(0,Se._)`(typeof ${y} == "function" ? ${w} : ${y}.test(${n}))`;return(0,Se._)`${y} && ${y} !== true && ${g} === ${e} && !${R}`}}function f(){let p=d.formats[s];if(!p){x();return}if(p===!0)return;let[h,g,y]=S(p);h===e&&t.pass(w());function x(){if(c.strictSchema===!1){d.logger.warn(R());return}throw new Error(R());function R(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function S(R){let ae=R instanceof RegExp?(0,Se.regexpCode)(R):c.code.formats?(0,Se._)`${c.code.formats}${(0,Se.getProperty)(s)}`:void 0,ce=r.scopeValue("formats",{key:s,ref:R,code:ae});return typeof R=="object"&&!(R instanceof RegExp)?[R.type||"string",R.validate,(0,Se._)`${ce}.validate`]:["string",R,ce]}function w(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Se._)`await ${y}(${n})`}return typeof g=="function"?(0,Se._)`${y}(${n})`:(0,Se._)`${y}.test(${n})`}}}};Yd.default=WR});var Sy=T(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});var YR=xy(),XR=[YR.default];Xd.default=XR});var ky=T(Ln=>{"use strict";Object.defineProperty(Ln,"__esModule",{value:!0});Ln.contentVocabulary=Ln.metadataVocabulary=void 0;Ln.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Ln.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var wy=T(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});var QR=C_(),eO=B_(),tO=vy(),rO=Sy(),by=ky(),nO=[QR.default,eO.default,(0,tO.default)(),rO.default,by.metadataVocabulary,by.contentVocabulary];Qd.default=nO});var Ty=T(na=>{"use strict";Object.defineProperty(na,"__esModule",{value:!0});na.DiscrError=void 0;var Ey;(function(t){t.Tag="tag",t.Mapping="mapping"})(Ey||(na.DiscrError=Ey={}))});var Py=T(tp=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});var Zn=q(),ep=Ty(),$y=Li(),oO=Vo(),sO=X(),iO={message:({params:{discrError:t,tagName:e}})=>t===ep.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Zn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},aO={keyword:"discriminator",type:"object",schemaType:"object",error:iO,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,Zn._)`${r}${(0,Zn.getProperty)(a)}`);e.if((0,Zn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:ep.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let f=m();e.if(!1);for(let p in f)e.elseIf((0,Zn._)`${u} === ${p}`),e.assign(c,d(f[p]));e.else(),t.error(!1,{discrError:ep.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(f){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:f},p);return t.mergeEvaluated(h,Zn.Name),p}function m(){var f;let p={},h=y(o),g=!0;for(let w=0;w<i.length;w++){let R=i[w];if(R?.$ref&&!(0,sO.schemaHasRulesButRef)(R,s.self.RULES)){let ce=R.$ref;if(R=$y.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,ce),R instanceof $y.SchemaEnv&&(R=R.schema),R===void 0)throw new oO.default(s.opts.uriResolver,s.baseId,ce)}let ae=(f=R?.properties)===null||f===void 0?void 0:f[a];if(typeof ae!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||y(R)),x(ae,w)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function y({required:w}){return Array.isArray(w)&&w.includes(a)}function x(w,R){if(w.const)S(w.const,R);else if(w.enum)for(let ae of w.enum)S(ae,R);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function S(w,R){if(typeof w!="string"||w in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[w]=R}}}};tp.default=aO});var Ry=T((UM,cO)=>{cO.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 np=T((fe,rp)=>{"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 uO=E_(),lO=wy(),dO=Py(),Oy=Ry(),pO=["/properties"],oa="http://json-schema.org/draft-07/schema",Un=class extends uO.default{_addVocabularies(){super._addVocabularies(),lO.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(dO.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Oy,pO):Oy;this.addMetaSchema(e,oa,!1),this.refs["http://json-schema.org/schema"]=oa}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(oa)?oa:void 0)}};fe.Ajv=Un;rp.exports=fe=Un;rp.exports.Ajv=Un;Object.defineProperty(fe,"__esModule",{value:!0});fe.default=Un;var fO=Bo();Object.defineProperty(fe,"KeywordCxt",{enumerable:!0,get:function(){return fO.KeywordCxt}});var Hn=q();Object.defineProperty(fe,"_",{enumerable:!0,get:function(){return Hn._}});Object.defineProperty(fe,"str",{enumerable:!0,get:function(){return Hn.str}});Object.defineProperty(fe,"stringify",{enumerable:!0,get:function(){return Hn.stringify}});Object.defineProperty(fe,"nil",{enumerable:!0,get:function(){return Hn.nil}});Object.defineProperty(fe,"Name",{enumerable:!0,get:function(){return Hn.Name}});Object.defineProperty(fe,"CodeGen",{enumerable:!0,get:function(){return Hn.CodeGen}});var mO=Mi();Object.defineProperty(fe,"ValidationError",{enumerable:!0,get:function(){return mO.default}});var hO=Vo();Object.defineProperty(fe,"MissingRefError",{enumerable:!0,get:function(){return hO.default}})});var Dy=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(Ny,ap),time:jt(sp(!0),cp),"date-time":jt(Cy(!0),jy),"iso-time":jt(sp(),Ay),"iso-date-time":jt(Cy(),My),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:SO,"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:PO,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:kO,int32:{type:"number",validate:EO},int64:{type:"number",validate:TO},float:{type:"number",validate:zy},double:{type:"number",validate:zy},password:!0,binary:!0};Mt.fastFormats={...Mt.fullFormats,date:jt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,ap),time:jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,cp),"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,jy),"iso-time":jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Ay),"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,My),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 gO(t){return t%4===0&&(t%100!==0||t%400===0)}var _O=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,yO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Ny(t){let e=_O.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&&gO(r)?29:yO[n])}function ap(t,e){if(t&&e)return t>e?1:t<e?-1:0}var op=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function sp(t){return function(r){let n=op.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,m=o-u*c-(d<0?1:0);return(m===23||m===-1)&&(d===59||d===-1)&&i<61}}function cp(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 Ay(t,e){if(!(t&&e))return;let r=op.exec(t),n=op.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 ip=/t|\s/i;function Cy(t){let e=sp(t);return function(n){let o=n.split(ip);return o.length===2&&Ny(o[0])&&e(o[1])}}function jy(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function My(t,e){if(!(t&&e))return;let[r,n]=t.split(ip),[o,s]=e.split(ip),i=ap(r,o);if(i!==void 0)return i||cp(n,s)}var vO=/\/|:/,xO=/^(?:[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 SO(t){return vO.test(t)&&xO.test(t)}var Iy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function kO(t){return Iy.lastIndex=0,Iy.test(t)}var bO=-(2**31),wO=2**31-1;function EO(t){return Number.isInteger(t)&&t<=wO&&t>=bO}function TO(t){return Number.isInteger(t)}function zy(){return!0}var $O=/[^\\]\\Z/;function PO(t){if($O.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Ly=T(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.formatLimitDefinition=void 0;var RO=np(),bt=q(),yr=bt.operators,sa={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}},OO={message:({keyword:t,schemaCode:e})=>(0,bt.str)`should be ${sa[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,bt._)`{comparison: ${sa[t].okStr}, limit: ${e}}`};qn.formatLimitDefinition={keyword:Object.keys(sa),type:"string",schemaType:"string",$data:!0,error:OO,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 RO.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let m=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,bt._)`${m}[${c.schemaCode}]`);t.fail$data((0,bt.or)((0,bt._)`typeof ${f} != "object"`,(0,bt._)`${f} instanceof RegExp`,(0,bt._)`typeof ${f}.compare != "function"`,d(f)))}function l(){let m=c.schema,f=a.formats[m];if(!f||f===!0)return;if(typeof f!="object"||f instanceof RegExp||typeof f.compare!="function")throw new Error(`"${o}": format "${m}" does not define "compare" function`);let p=e.scopeValue("formats",{key:m,ref:f,code:i.code.formats?(0,bt._)`${i.code.formats}${(0,bt.getProperty)(m)}`:void 0});t.fail$data(d(p))}function d(m){return(0,bt._)`${m}.compare(${r}, ${n}) ${sa[o].fail} 0`}},dependencies:["format"]};var CO=t=>(t.addKeyword(qn.formatLimitDefinition),t);qn.default=CO});var qy=T((is,Hy)=>{"use strict";Object.defineProperty(is,"__esModule",{value:!0});var Fn=Dy(),IO=Ly(),up=q(),Zy=new up.Name("fullFormats"),zO=new up.Name("fastFormats"),lp=(t,e={keywords:!0})=>{if(Array.isArray(e))return Uy(t,e,Fn.fullFormats,Zy),t;let[r,n]=e.mode==="fast"?[Fn.fastFormats,zO]:[Fn.fullFormats,Zy],o=e.formats||Fn.formatNames;return Uy(t,o,r,n),e.keywords&&(0,IO.default)(t),t};lp.get=(t,e="full")=>{let n=(e==="fast"?Fn.fastFormats:Fn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Uy(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,up._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}Hy.exports=is=lp;Object.defineProperty(is,"__esModule",{value:!0});is.default=lp});var $v,Pv=we(()=>{"use strict";$v={"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","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed"}});function us(t,e){let r=va[e],n=Ep(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Ep(t,e){if(e){let r=va[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}var Tt,hC,Rv,va,QD,eL,Ov=we(()=>{"use strict";Tt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},hC=["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"],Rv=hC.join("|"),va={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},QD=[Tt.PRE_TOOL_USE,Tt.SESSION_START],eL=[Tt.POST_TOOL_USE,Tt.PRE_COMPACT,Tt.USER_PROMPT_SUBMIT]});var $p={};Be($p,{ClaudeCodeAdapter:()=>Tp});import{createHash as Cv}from"node:crypto";import{readFileSync as Vn,writeFileSync as xa,mkdirSync as gC,copyFileSync as _C,accessSync as Iv,readdirSync as yC,chmodSync as vC,constants as zv}from"node:fs";import{resolve as Dt,join as ls}from"node:path";import{homedir as on}from"node:os";var Tp,Pp=we(()=>{"use strict";Ov();Tp=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 Dt(on(),".claude","settings.json")}getSessionDir(){let e=ls(on(),".claude","context-mode","sessions");return gC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Cv("sha256").update(e).digest("hex").slice(0,16);return ls(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Cv("sha256").update(e).digest("hex").slice(0,16);return ls(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=Vn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){xa(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=[ls(e,"hooks","hooks.json"),ls(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Vn(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=>us(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>us(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=Dt(on(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Vn(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=[Dt(on(),".claude"),Dt(on(),".config","claude")];for(let r of e){let n=Dt(r,"plugins","cache","context-mode","context-mode");try{let s=yC(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=[],s=[Tt.PRE_TOOL_USE,Tt.SESSION_START];for(let i of s){let a=Ep(i,e);if(i===Tt.PRE_TOOL_USE){let c={matcher:Rv,hooks:[{type:"command",command:a}]},u=n.PreToolUse;if(u&&Array.isArray(u)){let l=u.findIndex(d=>us(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n.PreToolUse=u}else n.PreToolUse=[c],o.push(`Created ${i} hooks section`)}else{let c={matcher:"",hooks:[{type:"command",command:a}]},u=n[i];if(u&&Array.isArray(u)){let l=u.findIndex(d=>us(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n[i]=u}else n[i]=[c],o.push(`Created ${i} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{Iv(e,zv.R_OK);let r=e+".bak";return _C(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(va)){let o=Dt(e,"hooks",n);try{Iv(o,zv.R_OK),vC(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Dt(on(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Vn(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();xa(n,JSON.stringify(o,null,2)+`
11
- `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"CLAUDE.md",globalPath:Dt(on(),".claude","CLAUDE.md"),projectRelativePath:"CLAUDE.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Dt(e,n.projectRelativePath),s=Dt(r,"configs","claude-code",n.fileName);try{let i=Vn(s,"utf-8");try{let a=Vn(o,"utf-8");return a.includes("context-mode")?null:(xa(o,a.trimEnd()+`
9
+ deps: ${r}}`};var uR={keyword:"dependencies",type:"object",schemaType:"object",error:At.error,code(t){let[e,r]=lR(t);ry(t,e),ny(t,r)}};function lR({schema:t}){let e={},r={};for(let n in t){if(n==="__proto__")continue;let o=Array.isArray(t[n])?e:r;o[n]=t[n]}return[e,r]}function ry(t,e=t.schema){let{gen:r,data:n,it:o}=t;if(Object.keys(e).length===0)return;let s=r.let("missing");for(let i in e){let a=e[i];if(a.length===0)continue;let c=(0,us.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,us.checkReportMissingProp)(t,u)}):(r.if((0,Ud._)`${c} && (${(0,us.checkMissingProp)(t,a,s)})`),(0,us.reportMissingProp)(t,s),r.else())}}At.validatePropertyDeps=ry;function ny(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,cR.alwaysValidSchema)(s,e[a])||(r.if((0,us.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=ny;At.default=uR});var iy=T(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var sy=q(),dR=X(),pR={message:"property name must be valid",params:({params:t})=>(0,sy._)`{propertyName: ${t.propertyName}}`},fR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:pR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,dR.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,sy.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Hd.default=fR});var Fd=T(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var na=dt(),kt=q(),mR=Jt(),oa=X(),hR={message:"must NOT have additional properties",params:({params:t})=>(0,kt._)`{additionalProperty: ${t.additionalProperty}}`},gR={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:hR,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,oa.alwaysValidSchema)(i,r))return;let u=(0,na.allSchemaProperties)(n.properties),l=(0,na.allSchemaProperties)(n.patternProperties);d(),t.ok((0,kt._)`${s} === ${mR.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 y;if(u.length>8){let v=(0,oa.schemaRefOrVal)(i,n.properties,"properties");y=(0,na.isOwnProperty)(e,v,g)}else u.length?y=(0,kt.or)(...u.map(v=>(0,kt._)`${g} === ${v}`)):y=kt.nil;return l.length&&(y=(0,kt.or)(y,...l.map(v=>(0,kt._)`${(0,na.usePattern)(t,v)}.test(${g})`))),(0,kt.not)(y)}function m(g){e.code((0,kt._)`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,oa.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(h(g,y,!1),e.if((0,kt.not)(y),()=>{t.reset(),m(g)})):(h(g,y),a||e.if((0,kt.not)(y),()=>e.break()))}}function h(g,y,v){let S={keyword:"additionalProperties",dataProp:g,dataPropType:oa.Type.Str};v===!1&&Object.assign(S,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(S,y)}}};qd.default=gR});var uy=T(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var _R=Go(),ay=dt(),Bd=X(),cy=Fd(),yR={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&&cy.default.code(new _R.KeywordCxt(s,cy.default,"additionalProperties"));let i=(0,ay.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Bd.mergeEvaluated.props(e,(0,Bd.toHash)(i),s.props));let a=i.filter(d=>!(0,Bd.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,ay.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)}}};Vd.default=yR});var fy=T(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var ly=dt(),sa=q(),dy=X(),py=X(),xR={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,ly.allSchemaProperties)(r),c=a.filter(h=>(0,dy.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 sa.Name)&&(s.props=(0,py.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,dy.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,sa._)`${(0,ly.usePattern)(t,h)}.test(${g})`,()=>{let y=c.includes(h);y||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:py.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,sa._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,sa.not)(l),()=>e.break())})})}}};Kd.default=xR});var my=T(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var vR=X(),SR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,vR.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"}};Jd.default=SR});var hy=T(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var kR=dt(),bR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:kR.validateUnion,error:{message:"must match a schema in anyOf"}};Gd.default=bR});var gy=T(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var ia=q(),wR=X(),ER={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,ia._)`{passingSchemas: ${t.passing}}`},TR={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:ER,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,wR.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,ia._)`${c} && ${i}`).assign(i,!1).assign(a,(0,ia._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,ia.Name)})})}}};Wd.default=TR});var _y=T(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});var $R=X(),PR={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,$R.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Yd.default=PR});var vy=T(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});var aa=q(),xy=X(),RR={message:({params:t})=>(0,aa.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,aa._)`{failingKeyword: ${t.ifClause}}`},OR={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:RR,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,xy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=yy(n,"then"),s=yy(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,aa.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,aa._)`${l}`):t.setParams({ifClause:l})}}}};function yy(t,e){let r=t.schema[e];return r!==void 0&&!(0,xy.alwaysValidSchema)(t,r)}Xd.default=OR});var Sy=T(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});var CR=X(),IR={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,CR.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Qd.default=IR});var ky=T(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});var zR=jd(),NR=X_(),AR=Md(),jR=ey(),MR=ty(),LR=oy(),DR=iy(),ZR=Fd(),UR=uy(),HR=fy(),qR=my(),FR=hy(),BR=gy(),VR=_y(),KR=vy(),JR=Sy();function GR(t=!1){let e=[qR.default,FR.default,BR.default,VR.default,KR.default,JR.default,DR.default,ZR.default,LR.default,UR.default,HR.default];return t?e.push(NR.default,jR.default):e.push(zR.default,AR.default),e.push(MR.default),e}ep.default=GR});var by=T(tp=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});var Se=q(),WR={message:({schemaCode:t})=>(0,Se.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,Se._)`{format: ${t}}`},YR={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:WR,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,Se._)`${p}[${i}]`),g=r.let("fType"),y=r.let("format");r.if((0,Se._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,Se._)`${h}.type || "string"`).assign(y,(0,Se._)`${h}.validate`),()=>r.assign(g,(0,Se._)`"string"`).assign(y,h)),t.fail$data((0,Se.or)(v(),S()));function v(){return c.strictSchema===!1?Se.nil:(0,Se._)`${i} && !${y}`}function S(){let w=l.$async?(0,Se._)`(${h}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,Se._)`${y}(${n})`,R=(0,Se._)`(typeof ${y} == "function" ? ${w} : ${y}.test(${n}))`;return(0,Se._)`${y} && ${y} !== true && ${g} === ${e} && !${R}`}}function m(){let p=d.formats[s];if(!p){v();return}if(p===!0)return;let[h,g,y]=S(p);h===e&&t.pass(w());function v(){if(c.strictSchema===!1){d.logger.warn(R());return}throw new Error(R());function R(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function S(R){let ae=R instanceof RegExp?(0,Se.regexpCode)(R):c.code.formats?(0,Se._)`${c.code.formats}${(0,Se.getProperty)(s)}`:void 0,ce=r.scopeValue("formats",{key:s,ref:R,code:ae});return typeof R=="object"&&!(R instanceof RegExp)?[R.type||"string",R.validate,(0,Se._)`${ce}.validate`]:["string",R,ce]}function w(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,Se._)`await ${y}(${n})`}return typeof g=="function"?(0,Se._)`${y}(${n})`:(0,Se._)`${y}.test(${n})`}}}};tp.default=YR});var wy=T(rp=>{"use strict";Object.defineProperty(rp,"__esModule",{value:!0});var XR=by(),QR=[XR.default];rp.default=QR});var Ey=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 $y=T(np=>{"use strict";Object.defineProperty(np,"__esModule",{value:!0});var eO=N_(),tO=J_(),rO=ky(),nO=wy(),Ty=Ey(),oO=[eO.default,tO.default,(0,rO.default)(),nO.default,Ty.metadataVocabulary,Ty.contentVocabulary];np.default=oO});var Ry=T(ca=>{"use strict";Object.defineProperty(ca,"__esModule",{value:!0});ca.DiscrError=void 0;var Py;(function(t){t.Tag="tag",t.Mapping="mapping"})(Py||(ca.DiscrError=Py={}))});var Cy=T(sp=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});var Fn=q(),op=Ry(),Oy=Fi(),sO=Wo(),iO=X(),aO={message:({params:{discrError:t,tagName:e}})=>t===op.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}}`},cO={keyword:"discriminator",type:"object",schemaType:"object",error:aO,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:op.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:op.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=y(o),g=!0;for(let w=0;w<i.length;w++){let R=i[w];if(R?.$ref&&!(0,iO.schemaHasRulesButRef)(R,s.self.RULES)){let ce=R.$ref;if(R=Oy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,ce),R instanceof Oy.SchemaEnv&&(R=R.schema),R===void 0)throw new sO.default(s.opts.uriResolver,s.baseId,ce)}let ae=(m=R?.properties)===null||m===void 0?void 0:m[a];if(typeof ae!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||y(R)),v(ae,w)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function y({required:w}){return Array.isArray(w)&&w.includes(a)}function v(w,R){if(w.const)S(w.const,R);else if(w.enum)for(let ae of w.enum)S(ae,R);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function S(w,R){if(typeof w!="string"||w in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[w]=R}}}};sp.default=cO});var Iy=T((UM,uO)=>{uO.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 ap=T((fe,ip)=>{"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 lO=P_(),dO=$y(),pO=Cy(),zy=Iy(),fO=["/properties"],ua="http://json-schema.org/draft-07/schema",Bn=class extends lO.default{_addVocabularies(){super._addVocabularies(),dO.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(pO.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(zy,fO):zy;this.addMetaSchema(e,ua,!1),this.refs["http://json-schema.org/schema"]=ua}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ua)?ua:void 0)}};fe.Ajv=Bn;ip.exports=fe=Bn;ip.exports.Ajv=Bn;Object.defineProperty(fe,"__esModule",{value:!0});fe.default=Bn;var mO=Go();Object.defineProperty(fe,"KeywordCxt",{enumerable:!0,get:function(){return mO.KeywordCxt}});var Vn=q();Object.defineProperty(fe,"_",{enumerable:!0,get:function(){return Vn._}});Object.defineProperty(fe,"str",{enumerable:!0,get:function(){return Vn.str}});Object.defineProperty(fe,"stringify",{enumerable:!0,get:function(){return Vn.stringify}});Object.defineProperty(fe,"nil",{enumerable:!0,get:function(){return Vn.nil}});Object.defineProperty(fe,"Name",{enumerable:!0,get:function(){return Vn.Name}});Object.defineProperty(fe,"CodeGen",{enumerable:!0,get:function(){return Vn.CodeGen}});var hO=Hi();Object.defineProperty(fe,"ValidationError",{enumerable:!0,get:function(){return hO.default}});var gO=Wo();Object.defineProperty(fe,"MissingRefError",{enumerable:!0,get:function(){return gO.default}})});var Uy=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(My,dp),time:jt(up(!0),pp),"date-time":jt(Ny(!0),Dy),"iso-time":jt(up(),Ly),"iso-date-time":jt(Ny(),Zy),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:kO,"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:RO,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:bO,int32:{type:"number",validate:TO},int64:{type:"number",validate:$O},float:{type:"number",validate:jy},double:{type:"number",validate:jy},password:!0,binary:!0};Mt.fastFormats={...Mt.fullFormats,date:jt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,dp),time:jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,pp),"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,Dy),"iso-time":jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Ly),"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,Zy),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 _O(t){return t%4===0&&(t%100!==0||t%400===0)}var yO=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,xO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function My(t){let e=yO.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&&_O(r)?29:xO[n])}function dp(t,e){if(t&&e)return t>e?1:t<e?-1:0}var cp=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function up(t){return function(r){let n=cp.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 pp(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 Ly(t,e){if(!(t&&e))return;let r=cp.exec(t),n=cp.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 lp=/t|\s/i;function Ny(t){let e=up(t);return function(n){let o=n.split(lp);return o.length===2&&My(o[0])&&e(o[1])}}function Dy(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Zy(t,e){if(!(t&&e))return;let[r,n]=t.split(lp),[o,s]=e.split(lp),i=dp(r,o);if(i!==void 0)return i||pp(n,s)}var vO=/\/|:/,SO=/^(?:[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 kO(t){return vO.test(t)&&SO.test(t)}var Ay=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function bO(t){return Ay.lastIndex=0,Ay.test(t)}var wO=-(2**31),EO=2**31-1;function TO(t){return Number.isInteger(t)&&t<=EO&&t>=wO}function $O(t){return Number.isInteger(t)}function jy(){return!0}var PO=/[^\\]\\Z/;function RO(t){if(PO.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Hy=T(Kn=>{"use strict";Object.defineProperty(Kn,"__esModule",{value:!0});Kn.formatLimitDefinition=void 0;var OO=ap(),bt=q(),yr=bt.operators,la={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}},CO={message:({keyword:t,schemaCode:e})=>(0,bt.str)`should be ${la[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,bt._)`{comparison: ${la[t].okStr}, limit: ${e}}`};Kn.formatLimitDefinition={keyword:Object.keys(la),type:"string",schemaType:"string",$data:!0,error:CO,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 OO.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}) ${la[o].fail} 0`}},dependencies:["format"]};var IO=t=>(t.addKeyword(Kn.formatLimitDefinition),t);Kn.default=IO});var Vy=T((ls,By)=>{"use strict";Object.defineProperty(ls,"__esModule",{value:!0});var Jn=Uy(),zO=Hy(),fp=q(),qy=new fp.Name("fullFormats"),NO=new fp.Name("fastFormats"),mp=(t,e={keywords:!0})=>{if(Array.isArray(e))return Fy(t,e,Jn.fullFormats,qy),t;let[r,n]=e.mode==="fast"?[Jn.fastFormats,NO]:[Jn.fullFormats,qy],o=e.formats||Jn.formatNames;return Fy(t,o,r,n),e.keywords&&(0,zO.default)(t),t};mp.get=(t,e="full")=>{let n=(e==="fast"?Jn.fastFormats:Jn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Fy(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,fp._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}By.exports=ls=mp;Object.defineProperty(ls,"__esModule",{value:!0});ls.default=mp});var Ox,Cx=we(()=>{"use strict";Ox={"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","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed"}});function hs(t,e){let r=ba[e],n=Pp(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Pp(t,e){if(e){let r=ba[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}var Tt,gC,Ix,ba,eD,tD,zx=we(()=>{"use strict";Tt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},gC=["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"],Ix=gC.join("|"),ba={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},eD=[Tt.PRE_TOOL_USE,Tt.SESSION_START],tD=[Tt.POST_TOOL_USE,Tt.PRE_COMPACT,Tt.USER_PROMPT_SUBMIT]});var Op={};Be(Op,{ClaudeCodeAdapter:()=>Rp});import{createHash as Nx}from"node:crypto";import{readFileSync as Wn,writeFileSync as wa,mkdirSync as _C,copyFileSync as yC,accessSync as Ax,readdirSync as xC,chmodSync as vC,constants as jx}from"node:fs";import{resolve as Lt,join as gs}from"node:path";import{homedir as sn}from"node:os";var Rp,Cp=we(()=>{"use strict";zx();Rp=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 Lt(sn(),".claude","settings.json")}getSessionDir(){let e=gs(sn(),".claude","context-mode","sessions");return _C(e,{recursive:!0}),e}getSessionDBPath(e){let r=Nx("sha256").update(e).digest("hex").slice(0,16);return gs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Nx("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=Wn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){wa(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=Wn(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=Lt(sn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Wn(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=[Lt(sn(),".claude"),Lt(sn(),".config","claude")];for(let r of e){let n=Lt(r,"plugins","cache","context-mode","context-mode");try{let s=xC(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=[],s=[Tt.PRE_TOOL_USE,Tt.SESSION_START];for(let i of s){let a=Pp(i,e);if(i===Tt.PRE_TOOL_USE){let c={matcher:Ix,hooks:[{type:"command",command:a}]},u=n.PreToolUse;if(u&&Array.isArray(u)){let l=u.findIndex(d=>hs(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n.PreToolUse=u}else n.PreToolUse=[c],o.push(`Created ${i} hooks section`)}else{let c={matcher:"",hooks:[{type:"command",command:a}]},u=n[i];if(u&&Array.isArray(u)){let l=u.findIndex(d=>hs(d,i));l>=0?(u[l]=c,o.push(`Updated existing ${i} hook entry`)):(u.push(c),o.push(`Added ${i} hook entry`)),n[i]=u}else n[i]=[c],o.push(`Created ${i} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}backupSettings(){let e=this.getSettingsPath();try{Ax(e,jx.R_OK);let r=e+".bak";return yC(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(ba)){let o=Lt(e,"hooks",n);try{Ax(o,jx.R_OK),vC(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Lt(sn(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Wn(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();wa(n,JSON.stringify(o,null,2)+`
11
+ `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"CLAUDE.md",globalPath:Lt(sn(),".claude","CLAUDE.md"),projectRelativePath:"CLAUDE.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Lt(e,n.projectRelativePath),s=Lt(r,"configs","claude-code",n.fileName);try{let i=Wn(s,"utf-8");try{let a=Wn(o,"utf-8");return a.includes("context-mode")?null:(wa(o,a.trimEnd()+`
12
12
 
13
- `+i,"utf-8"),o)}catch{return xa(o,i,"utf-8"),o}}catch{return null}}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 Kn(t,e){let r=Rp[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var ke,Rp,aL,cL,Nv=we(()=>{"use strict";ke={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Rp={[ke.BEFORE_TOOL]:"beforetool.mjs",[ke.AFTER_TOOL]:"aftertool.mjs",[ke.PRE_COMPRESS]:"precompress.mjs",[ke.SESSION_START]:"sessionstart.mjs"},aL=[ke.BEFORE_TOOL,ke.SESSION_START],cL=[ke.AFTER_TOOL,ke.PRE_COMPRESS]});var Lv={};Be(Lv,{GeminiCLIAdapter:()=>Op});import{createHash as Av}from"node:crypto";import{readFileSync as ds,writeFileSync as Sa,mkdirSync as jv,copyFileSync as xC,accessSync as Mv,chmodSync as SC,constants as Dv}from"node:fs";import{resolve as xr,join as ka}from"node:path";import{homedir as Jn}from"node:os";var Op,Zv=we(()=>{"use strict";Nv();Op=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 xr(Jn(),".gemini","settings.json")}getSessionDir(){let e=ka(Jn(),".gemini","context-mode","sessions");return jv(e,{recursive:!0}),e}getSessionDBPath(e){let r=Av("sha256").update(e).digest("hex").slice(0,16);return ka(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Av("sha256").update(e).digest("hex").slice(0,16);return ka(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ke.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Kn(ke.BEFORE_TOOL,e)}]}],[ke.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Kn(ke.AFTER_TOOL,e)}]}],[ke.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Kn(ke.PRE_COMPRESS,e)}]}],[ke.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Kn(ke.SESSION_START,e)}]}]}}readSettings(){try{let e=ds(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=xr(Jn(),".gemini");jv(r,{recursive:!0}),Sa(this.getSettingsPath(),JSON.stringify(e,null,2)+`
14
- `,"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?.[ke.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?.[ke.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=xr(Jn(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(ds(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:ke.BEFORE_TOOL},{name:ke.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Kn(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(f=>f.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{Mv(e,Dv.R_OK);let r=e+".bak";return xC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=ka(e,"hooks","gemini-cli");for(let o of Object.values(Rp)){let s=xr(n,o);try{Mv(s,Dv.R_OK),SC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=xr(Jn(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(ds(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),Sa(n,JSON.stringify(o,null,2)+`
15
- `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:xr(Jn(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=xr(e,n.projectRelativePath),s=xr(r,"configs","gemini-cli",n.fileName);try{let i=ds(s,"utf-8");try{let a=ds(o,"utf-8");return a.includes("context-mode")?null:(Sa(o,a.trimEnd()+`
13
+ `+i,"utf-8"),o)}catch{return wa(o,i,"utf-8"),o}}catch{return null}}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=Ip[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var ke,Ip,cD,uD,Mx=we(()=>{"use strict";ke={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Ip={[ke.BEFORE_TOOL]:"beforetool.mjs",[ke.AFTER_TOOL]:"aftertool.mjs",[ke.PRE_COMPRESS]:"precompress.mjs",[ke.SESSION_START]:"sessionstart.mjs"},cD=[ke.BEFORE_TOOL,ke.SESSION_START],uD=[ke.AFTER_TOOL,ke.PRE_COMPRESS]});var Hx={};Be(Hx,{GeminiCLIAdapter:()=>zp});import{createHash as Lx}from"node:crypto";import{readFileSync as _s,writeFileSync as Ea,mkdirSync as Dx,copyFileSync as SC,accessSync as Zx,chmodSync as kC,constants as Ux}from"node:fs";import{resolve as vr,join as Ta}from"node:path";import{homedir as Xn}from"node:os";var zp,qx=we(()=>{"use strict";Mx();zp=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 vr(Xn(),".gemini","settings.json")}getSessionDir(){let e=Ta(Xn(),".gemini","context-mode","sessions");return Dx(e,{recursive:!0}),e}getSessionDBPath(e){let r=Lx("sha256").update(e).digest("hex").slice(0,16);return Ta(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Lx("sha256").update(e).digest("hex").slice(0,16);return Ta(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ke.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Yn(ke.BEFORE_TOOL,e)}]}],[ke.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Yn(ke.AFTER_TOOL,e)}]}],[ke.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Yn(ke.PRE_COMPRESS,e)}]}],[ke.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Yn(ke.SESSION_START,e)}]}]}}readSettings(){try{let e=_s(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=vr(Xn(),".gemini");Dx(r,{recursive:!0}),Ea(this.getSettingsPath(),JSON.stringify(e,null,2)+`
14
+ `,"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?.[ke.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?.[ke.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=vr(Xn(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(_s(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:ke.BEFORE_TOOL},{name:ke.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{Zx(e,Ux.R_OK);let r=e+".bak";return SC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=Ta(e,"hooks","gemini-cli");for(let o of Object.values(Ip)){let s=vr(n,o);try{Zx(s,Ux.R_OK),kC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=vr(Xn(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(_s(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),Ea(n,JSON.stringify(o,null,2)+`
15
+ `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:vr(Xn(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=vr(e,n.projectRelativePath),s=vr(r,"configs","gemini-cli",n.fileName);try{let i=_s(s,"utf-8");try{let a=_s(o,"utf-8");return a.includes("context-mode")?null:(Ea(o,a.trimEnd()+`
16
16
 
17
- `+i,"utf-8"),o)}catch{return Sa(o,i,"utf-8"),o}}catch{return null}}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,hL,gL,Uv=we(()=>{"use strict";sn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},hL=[sn.BEFORE,sn.AFTER],gL=[sn.COMPACTING]});var qv={};Be(qv,{OpenCodeAdapter:()=>Ip});import{createHash as Hv}from"node:crypto";import{readFileSync as ba,writeFileSync as Cp,mkdirSync as kC,copyFileSync as bC,accessSync as wC,constants as EC}from"node:fs";import{resolve as Lt,join as ps}from"node:path";import{homedir as fs}from"node:os";var Ip,Fv=we(()=>{"use strict";Uv();Ip=class{name="OpenCode";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_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.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 Lt("opencode.json")}getSessionDir(){let e=ps(fs(),".config","opencode","context-mode","sessions");return kC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Hv("sha256").update(e).digest("hex").slice(0,16);return ps(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Hv("sha256").update(e).digest("hex").slice(0,16);return ps(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(){let e=[Lt("opencode.json"),Lt(".opencode","opencode.json"),ps(fs(),".config","opencode","opencode.json")];for(let r of e)try{let n=ba(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Lt("opencode.json");Cp(r,JSON.stringify(e,null,2)+`
18
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read opencode.json",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 opencode.json"};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=Lt(fs(),".cache","opencode","node_modules","context-mode","package.json"),r=JSON.parse(ba(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=[Lt("opencode.json"),Lt(".opencode","opencode.json"),ps(fs(),".config","opencode","opencode.json")];for(let r of e)try{wC(r,EC.R_OK);let n=r+".bak";return bC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:Lt(fs(),".config","opencode","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Lt(e,n.projectRelativePath),s=Lt(r,"configs","opencode",n.fileName);try{let i=ba(s,"utf-8");try{let a=ba(o,"utf-8");return a.includes("context-mode")?null:(Cp(o,a.trimEnd()+`
17
+ `+i,"utf-8"),o)}catch{return Ea(o,i,"utf-8"),o}}catch{return null}}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 an,gD,_D,Fx=we(()=>{"use strict";an={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},gD=[an.BEFORE,an.AFTER],_D=[an.COMPACTING]});var Vx={};Be(Vx,{OpenCodeAdapter:()=>Ap});import{createHash as Bx}from"node:crypto";import{readFileSync as $a,writeFileSync as Np,mkdirSync as bC,copyFileSync as wC,accessSync as EC,constants as TC}from"node:fs";import{resolve as Dt,join as ys}from"node:path";import{homedir as xs}from"node:os";var Ap,Kx=we(()=>{"use strict";Fx();Ap=class{name="OpenCode";paradigm="ts-plugin";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};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 Dt("opencode.json")}getSessionDir(){let e=ys(xs(),".config","opencode","context-mode","sessions");return bC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Bx("sha256").update(e).digest("hex").slice(0,16);return ys(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Bx("sha256").update(e).digest("hex").slice(0,16);return ys(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[an.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[an.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[an.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Dt("opencode.json"),Dt(".opencode","opencode.json"),ys(xs(),".config","opencode","opencode.json")];for(let r of e)try{let n=$a(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Dt("opencode.json");Np(r,JSON.stringify(e,null,2)+`
18
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read opencode.json",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 opencode.json"};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=Dt(xs(),".cache","opencode","node_modules","context-mode","package.json"),r=JSON.parse($a(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=[Dt("opencode.json"),Dt(".opencode","opencode.json"),ys(xs(),".config","opencode","opencode.json")];for(let r of e)try{EC(r,TC.R_OK);let n=r+".bak";return wC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:Dt(xs(),".config","opencode","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Dt(e,n.projectRelativePath),s=Dt(r,"configs","opencode",n.fileName);try{let i=$a(s,"utf-8");try{let a=$a(o,"utf-8");return a.includes("context-mode")?null:(Np(o,a.trimEnd()+`
19
19
 
20
- `+i,"utf-8"),o)}catch{return Cp(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var an,bL,wL,Bv=we(()=>{"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"},bL=[an.TOOL_CALL_BEFORE,an.TOOL_CALL_AFTER],wL=[an.COMMAND_NEW]});var Kv={};Be(Kv,{OpenClawAdapter:()=>Np});import{createHash as Vv}from"node:crypto";import{readFileSync as Gn,writeFileSync as zp,mkdirSync as TC,copyFileSync as $C,accessSync as PC,constants as RC}from"node:fs";import{resolve as mt,join as ms}from"node:path";import{homedir as hs}from"node:os";var Np,Jv=we(()=>{"use strict";Bv();Np=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.env.OPENCLAW_PROJECT_DIR||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.env.OPENCLAW_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCLAW_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.OPENCLAW_PROJECT_DIR||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 mt("openclaw.json")}getSessionDir(){let e=ms(hs(),".openclaw","context-mode","sessions");return TC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Vv("sha256").update(e).digest("hex").slice(0,16);return ms(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Vv("sha256").update(e).digest("hex").slice(0,16);return ms(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=[mt("openclaw.json"),mt(".openclaw","openclaw.json"),ms(hs(),".openclaw","openclaw.json")];for(let r of e)try{let n=Gn(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=mt("openclaw.json");zp(r,JSON.stringify(e,null,2)+`
21
- `,"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=mt(hs(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Gn(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=mt("node_modules","context-mode","package.json"),r=JSON.parse(Gn(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=[mt("openclaw.json"),mt(".openclaw","openclaw.json"),ms(hs(),".openclaw","openclaw.json")];for(let r of e)try{PC(r,RC.R_OK);let n=r+".bak";return $C(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:mt(hs(),".openclaw","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=mt(e,n.projectRelativePath),s=mt(r,"configs","openclaw",n.fileName);try{let i;try{i=Gn(s,"utf-8")}catch{let a=mt(r,"configs","opencode",n.fileName);i=Gn(a,"utf-8")}try{let a=Gn(o,"utf-8");return a.includes("context-mode")?null:(zp(o,a.trimEnd()+`
20
+ `+i,"utf-8"),o)}catch{return Np(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var cn,wD,ED,Jx=we(()=>{"use strict";cn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},wD=[cn.TOOL_CALL_BEFORE,cn.TOOL_CALL_AFTER],ED=[cn.COMMAND_NEW]});var Wx={};Be(Wx,{OpenClawAdapter:()=>Mp});import{createHash as Gx}from"node:crypto";import{readFileSync as Qn,writeFileSync as jp,mkdirSync as $C,copyFileSync as PC,accessSync as RC,constants as OC}from"node:fs";import{resolve as mt,join as vs}from"node:path";import{homedir as Ss}from"node:os";var Mp,Yx=we(()=>{"use strict";Jx();Mp=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 mt("openclaw.json")}getSessionDir(){let e=vs(Ss(),".openclaw","context-mode","sessions");return $C(e,{recursive:!0}),e}getSessionDBPath(e){let r=Gx("sha256").update(e).digest("hex").slice(0,16);return vs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Gx("sha256").update(e).digest("hex").slice(0,16);return vs(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[cn.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[cn.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[cn.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[mt("openclaw.json"),mt(".openclaw","openclaw.json"),vs(Ss(),".openclaw","openclaw.json")];for(let r of e)try{let n=Qn(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=mt("openclaw.json");jp(r,JSON.stringify(e,null,2)+`
21
+ `,"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=mt(Ss(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Qn(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=mt("node_modules","context-mode","package.json"),r=JSON.parse(Qn(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=[mt("openclaw.json"),mt(".openclaw","openclaw.json"),vs(Ss(),".openclaw","openclaw.json")];for(let r of e)try{RC(r,OC.R_OK);let n=r+".bak";return PC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:mt(Ss(),".openclaw","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=mt(e,n.projectRelativePath),s=mt(r,"configs","openclaw",n.fileName);try{let i;try{i=Qn(s,"utf-8")}catch{let a=mt(r,"configs","opencode",n.fileName);i=Qn(a,"utf-8")}try{let a=Qn(o,"utf-8");return a.includes("context-mode")?null:(jp(o,a.trimEnd()+`
22
22
 
23
- `+i,"utf-8"),o)}catch{return zp(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var Yv={};Be(Yv,{CodexAdapter:()=>Mp});import{createHash as Gv}from"node:crypto";import{readFileSync as gs,writeFileSync as Wv,mkdirSync as OC,copyFileSync as CC,accessSync as IC,constants as zC}from"node:fs";import{resolve as _s,join as Ap,dirname as NC}from"node:path";import{fileURLToPath as AC}from"node:url";import{homedir as jp}from"node:os";var Mp,Xv=we(()=>{"use strict";Mp=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 _s(jp(),".codex","config.toml")}getSessionDir(){let e=Ap(jp(),".codex","context-mode","sessions");return OC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Gv("sha256").update(e).digest("hex").slice(0,16);return Ap(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Gv("sha256").update(e).digest("hex").slice(0,16);return Ap(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{return{_raw_toml:gs(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=gs(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{IC(e,zC.R_OK);let r=e+".bak";return CC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:_s(jp(),".codex","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=_s(e,n.projectRelativePath),s=_s(r,"configs","codex",n.fileName);try{let i=gs(s,"utf-8");try{let a=gs(o,"utf-8");return a.includes("context-mode")?null:(Wv(o,a.trimEnd()+`
23
+ `+i,"utf-8"),o)}catch{return jp(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var ev={};Be(ev,{CodexAdapter:()=>Zp});import{createHash as Xx}from"node:crypto";import{readFileSync as ks,writeFileSync as Qx,mkdirSync as CC,copyFileSync as IC,accessSync as zC,constants as NC}from"node:fs";import{resolve as bs,join as Lp,dirname as AC}from"node:path";import{fileURLToPath as jC}from"node:url";import{homedir as Dp}from"node:os";var Zp,tv=we(()=>{"use strict";Zp=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 bs(Dp(),".codex","config.toml")}getSessionDir(){let e=Lp(Dp(),".codex","context-mode","sessions");return CC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Xx("sha256").update(e).digest("hex").slice(0,16);return Lp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Xx("sha256").update(e).digest("hex").slice(0,16);return Lp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{return{_raw_toml:ks(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=ks(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{zC(e,NC.R_OK);let r=e+".bak";return IC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:bs(Dp(),".codex","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=bs(e,n.projectRelativePath),s=bs(r,"configs","codex",n.fileName);try{let i=ks(s,"utf-8");try{let a=ks(o,"utf-8");return a.includes("context-mode")?null:(Qx(o,a.trimEnd()+`
24
24
 
25
- `+i,"utf-8"),o)}catch{return Wv(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=_s(NC(AC(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return gs(e,"utf-8")}catch{return`# context-mode
25
+ `+i,"utf-8"),o)}catch{return Qx(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=bs(AC(jC(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return ks(e,"utf-8")}catch{return`# context-mode
26
26
 
27
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});function Wn(t,e){let r=wa[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 se,wa,ML,DL,Qv=we(()=>{"use strict";se={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},wa={[se.PRE_TOOL_USE]:"pretooluse.mjs",[se.POST_TOOL_USE]:"posttooluse.mjs",[se.PRE_COMPACT]:"precompact.mjs",[se.SESSION_START]:"sessionstart.mjs"},ML=[se.PRE_TOOL_USE,se.SESSION_START],DL=[se.POST_TOOL_USE,se.PRE_COMPACT]});var tx={};Be(tx,{VSCodeCopilotAdapter:()=>Up});import{createHash as ex}from"node:crypto";import{readFileSync as Yn,writeFileSync as Ea,mkdirSync as Ta,copyFileSync as jC,accessSync as Dp,existsSync as MC,chmodSync as DC,constants as Lp}from"node:fs";import{resolve as et,join as Sr}from"node:path";import{homedir as Zp}from"node:os";var Up,rx=we(()=>{"use strict";Qv();Up=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:se.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:se.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:se.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:se.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return et(".github","hooks","context-mode.json")}getSessionDir(){let e=et(".github","context-mode","sessions"),r=Sr(Zp(),".vscode","context-mode","sessions"),n=MC(et(".github"))?e:r;return Ta(n,{recursive:!0}),n}getSessionDBPath(e){let r=ex("sha256").update(e).digest("hex").slice(0,16);return Sr(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=ex("sha256").update(e).digest("hex").slice(0,16);return Sr(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[se.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Wn(se.PRE_TOOL_USE,e)}]}],[se.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:Wn(se.POST_TOOL_USE,e)}]}],[se.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:Wn(se.PRE_COMPACT,e)}]}],[se.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Wn(se.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),et(".claude","settings.json")];for(let r of e)try{let n=Yn(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=et(".github","hooks");Ta(n,{recursive:!0}),Ea(r,JSON.stringify(e,null,2)+`
28
- `,"utf-8")}validateHooks(e){let r=[],n=et(".github","hooks");try{Dp(n,Lp.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=et(n,"context-mode.json");try{let s=Yn(o,"utf-8"),a=JSON.parse(s).hooks;a?.[se.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?.[se.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=et(".vscode","mcp.json"),r=Yn(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=[Sr(Zp(),".vscode","extensions"),Sr(Zp(),".vscode-insiders","extensions")];for(let r of e)try{let n=Yn(Sr(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=[se.PRE_TOOL_USE,se.POST_TOOL_USE,se.PRE_COMPACT,se.SESSION_START];for(let c of s)wa[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:Wn(c,e)}]}],r.push(`Configured ${c} hook`));let i=et(".github","hooks");Ta(i,{recursive:!0});let a=et(i,"context-mode.json");return Ea(a,JSON.stringify(n,null,2)+`
29
- `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Dp(e,Lp.R_OK);let r=e+".bak";return jC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=Sr(e,"hooks","vscode-copilot");for(let o of Object.values(wa)){let s=et(n,o);try{Dp(s,Lp.R_OK),DC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"copilot-instructions.md",globalPath:"",projectRelativePath:Sr(".github","copilot-instructions.md")}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=et(e,n.projectRelativePath),s=et(r,"configs","vscode-copilot",n.fileName);try{let i=Yn(s,"utf-8");Ta(et(e,".github"),{recursive:!0});try{let a=Yn(o,"utf-8");return a.includes("context-mode")?null:(Ea(o,a.trimEnd()+`
27
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});function eo(t,e){let r=Pa[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 se,Pa,LD,DD,rv=we(()=>{"use strict";se={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Pa={[se.PRE_TOOL_USE]:"pretooluse.mjs",[se.POST_TOOL_USE]:"posttooluse.mjs",[se.PRE_COMPACT]:"precompact.mjs",[se.SESSION_START]:"sessionstart.mjs"},LD=[se.PRE_TOOL_USE,se.SESSION_START],DD=[se.POST_TOOL_USE,se.PRE_COMPACT]});var ov={};Be(ov,{VSCodeCopilotAdapter:()=>Fp});import{createHash as nv}from"node:crypto";import{readFileSync as to,writeFileSync as Ra,mkdirSync as Oa,copyFileSync as MC,accessSync as Up,existsSync as LC,chmodSync as DC,constants as Hp}from"node:fs";import{resolve as et,join as Sr}from"node:path";import{homedir as qp}from"node:os";var Fp,sv=we(()=>{"use strict";rv();Fp=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:se.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:se.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:se.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:se.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return et(".github","hooks","context-mode.json")}getSessionDir(){let e=et(".github","context-mode","sessions"),r=Sr(qp(),".vscode","context-mode","sessions"),n=LC(et(".github"))?e:r;return Oa(n,{recursive:!0}),n}getSessionDBPath(e){let r=nv("sha256").update(e).digest("hex").slice(0,16);return Sr(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=nv("sha256").update(e).digest("hex").slice(0,16);return Sr(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[se.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:eo(se.PRE_TOOL_USE,e)}]}],[se.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:eo(se.POST_TOOL_USE,e)}]}],[se.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:eo(se.PRE_COMPACT,e)}]}],[se.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:eo(se.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),et(".claude","settings.json")];for(let r of e)try{let n=to(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=et(".github","hooks");Oa(n,{recursive:!0}),Ra(r,JSON.stringify(e,null,2)+`
28
+ `,"utf-8")}validateHooks(e){let r=[],n=et(".github","hooks");try{Up(n,Hp.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=et(n,"context-mode.json");try{let s=to(o,"utf-8"),a=JSON.parse(s).hooks;a?.[se.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?.[se.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=et(".vscode","mcp.json"),r=to(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=[Sr(qp(),".vscode","extensions"),Sr(qp(),".vscode-insiders","extensions")];for(let r of e)try{let n=to(Sr(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=[se.PRE_TOOL_USE,se.POST_TOOL_USE,se.PRE_COMPACT,se.SESSION_START];for(let c of s)Pa[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:eo(c,e)}]}],r.push(`Configured ${c} hook`));let i=et(".github","hooks");Oa(i,{recursive:!0});let a=et(i,"context-mode.json");return Ra(a,JSON.stringify(n,null,2)+`
29
+ `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{Up(e,Hp.R_OK);let r=e+".bak";return MC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=Sr(e,"hooks","vscode-copilot");for(let o of Object.values(Pa)){let s=et(n,o);try{Up(s,Hp.R_OK),DC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"copilot-instructions.md",globalPath:"",projectRelativePath:Sr(".github","copilot-instructions.md")}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=et(e,n.projectRelativePath),s=et(r,"configs","vscode-copilot",n.fileName);try{let i=to(s,"utf-8");Oa(et(e,".github"),{recursive:!0});try{let a=to(o,"utf-8");return a.includes("context-mode")?null:(Ra(o,a.trimEnd()+`
30
30
 
31
- `+i,"utf-8"),o)}catch{return Ea(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}}});function $a(t,e){let r=Hp[e],n=kr(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 kr(t){return`context-mode hook cursor ${t.toLowerCase()}`}var $e,Hp,LC,qp,nx,ox,sx=we(()=>{"use strict";$e={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart"},Hp={[$e.PRE_TOOL_USE]:"pretooluse.mjs",[$e.POST_TOOL_USE]:"posttooluse.mjs",[$e.SESSION_START]:"sessionstart.mjs"},LC=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],qp=LC.join("|"),nx=[$e.PRE_TOOL_USE],ox=[$e.POST_TOOL_USE]});var px={};Be(px,{CursorAdapter:()=>Bp});import{createHash as ix}from"node:crypto";import{readFileSync as Fp,writeFileSync as ZC,mkdirSync as ax,copyFileSync as UC,accessSync as cx,chmodSync as HC,constants as ux,existsSync as lx}from"node:fs";import{execSync as qC}from"node:child_process";import{resolve as Xn,join as cn}from"node:path";import{homedir as Pa}from"node:os";var dx,Bp,fx=we(()=>{"use strict";sx();dx="/Library/Application Support/Cursor/hooks.json",Bp=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 Xn(".cursor","hooks.json")}getSessionDir(){let e=cn(Pa(),".cursor","context-mode","sessions");return ax(e,{recursive:!0}),e}getSessionDBPath(e){let r=ix("sha256").update(e).digest("hex").slice(0,16);return cn(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=ix("sha256").update(e).digest("hex").slice(0,16);return cn(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[$e.PRE_TOOL_USE]:[{type:"command",command:kr($e.PRE_TOOL_USE),matcher:qp,loop_limit:null,failClosed:!1}],[$e.POST_TOOL_USE]:[{type:"command",command:kr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[$e.SESSION_START]:[{type:"command",command:kr($e.SESSION_START),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Fp(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();ax(Xn(".cursor"),{recursive:!0}),ZC(r,JSON.stringify(e,null,2)+`
32
- `,"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 nx){let i=o[s],a=Array.isArray(i)&&i.some(c=>$a(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 ox){let i=o[s],a=Array.isArray(i)&&i.some(c=>$a(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 lx(dx)&&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=[Xn(".cursor","mcp.json"),cn(Pa(),".cursor","mcp.json")];for(let r of e)try{let n=Fp(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 qC("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:kr($e.PRE_TOOL_USE),matcher:qp,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.POST_TOOL_USE,{type:"command",command:kr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.SESSION_START,{type:"command",command:kr($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{cx(e,ux.R_OK);let r=e+".bak";return UC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=cn(e,"hooks","cursor");for(let o of Object.values(Hp)){let s=Xn(n,o);try{cx(s,ux.R_OK),HC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:"",projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){return null}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),cn(Pa(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(dx),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=Fp(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[Xn(".claude","settings.json"),Xn(".claude","settings.local.json"),cn(Pa(),".claude","settings.json")].some(r=>lx(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>$a(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 _x={};Be(_x,{AntigravityAdapter:()=>Jp});import{createHash as mx}from"node:crypto";import{readFileSync as Qn,writeFileSync as Vp,mkdirSync as hx,copyFileSync as FC,accessSync as BC,constants as VC}from"node:fs";import{resolve as eo,join as Kp,dirname as gx}from"node:path";import{fileURLToPath as KC}from"node:url";import{homedir as Ra}from"node:os";var Jp,yx=we(()=>{"use strict";Jp=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 eo(Ra(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Kp(Ra(),".gemini","context-mode","sessions");return hx(e,{recursive:!0}),e}getSessionDBPath(e){let r=mx("sha256").update(e).digest("hex").slice(0,16);return Kp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=mx("sha256").update(e).digest("hex").slice(0,16);return Kp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Qn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();hx(gx(r),{recursive:!0}),Vp(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=Qn(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=eo(Ra(),".gemini","extensions","context-mode","package.json");return JSON.parse(Qn(e,"utf-8")).version??"unknown"}catch{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){}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:eo(Ra(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=eo(e,n.projectRelativePath),s=eo(r,"configs","antigravity",n.fileName);try{let i=Qn(s,"utf-8");try{let a=Qn(o,"utf-8");return a.includes("context-mode")?null:(Vp(o,a.trimEnd()+`
31
+ `+i,"utf-8"),o)}catch{return Ra(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}}});function Ca(t,e){let r=Bp[e],n=kr(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 kr(t){return`context-mode hook cursor ${t.toLowerCase()}`}var $e,Bp,ZC,Vp,iv,av,cv=we(()=>{"use strict";$e={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart"},Bp={[$e.PRE_TOOL_USE]:"pretooluse.mjs",[$e.POST_TOOL_USE]:"posttooluse.mjs",[$e.SESSION_START]:"sessionstart.mjs"},ZC=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Vp=ZC.join("|"),iv=[$e.PRE_TOOL_USE],av=[$e.POST_TOOL_USE]});var hv={};Be(hv,{CursorAdapter:()=>Jp});import{createHash as uv}from"node:crypto";import{readFileSync as Kp,writeFileSync as UC,mkdirSync as lv,copyFileSync as HC,accessSync as dv,chmodSync as qC,constants as pv,existsSync as fv}from"node:fs";import{execSync as FC}from"node:child_process";import{resolve as ro,join as un}from"node:path";import{homedir as Ia}from"node:os";var mv,Jp,gv=we(()=>{"use strict";cv();mv="/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 ro(".cursor","hooks.json")}getSessionDir(){let e=un(Ia(),".cursor","context-mode","sessions");return lv(e,{recursive:!0}),e}getSessionDBPath(e){let r=uv("sha256").update(e).digest("hex").slice(0,16);return un(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=uv("sha256").update(e).digest("hex").slice(0,16);return un(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[$e.PRE_TOOL_USE]:[{type:"command",command:kr($e.PRE_TOOL_USE),matcher:Vp,loop_limit:null,failClosed:!1}],[$e.POST_TOOL_USE]:[{type:"command",command:kr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[$e.SESSION_START]:[{type:"command",command:kr($e.SESSION_START),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=Kp(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();lv(ro(".cursor"),{recursive:!0}),UC(r,JSON.stringify(e,null,2)+`
32
+ `,"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 iv){let i=o[s],a=Array.isArray(i)&&i.some(c=>Ca(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 av){let i=o[s],a=Array.isArray(i)&&i.some(c=>Ca(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 fv(mv)&&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=[ro(".cursor","mcp.json"),un(Ia(),".cursor","mcp.json")];for(let r of e)try{let n=Kp(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 FC("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:kr($e.PRE_TOOL_USE),matcher:Vp,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.POST_TOOL_USE,{type:"command",command:kr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.SESSION_START,{type:"command",command:kr($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{dv(e,pv.R_OK);let r=e+".bak";return HC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=un(e,"hooks","cursor");for(let o of Object.values(Bp)){let s=ro(n,o);try{dv(s,pv.R_OK),qC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:"",projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){return null}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),un(Ia(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(mv),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=Kp(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[ro(".claude","settings.json"),ro(".claude","settings.local.json"),un(Ia(),".claude","settings.json")].some(r=>fv(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>Ca(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 vv={};Be(vv,{AntigravityAdapter:()=>Yp});import{createHash as _v}from"node:crypto";import{readFileSync as no,writeFileSync as Gp,mkdirSync as yv,copyFileSync as BC,accessSync as VC,constants as KC}from"node:fs";import{resolve as oo,join as Wp,dirname as xv}from"node:path";import{fileURLToPath as JC}from"node:url";import{homedir as za}from"node:os";var Yp,Sv=we(()=>{"use strict";Yp=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 oo(za(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Wp(za(),".gemini","context-mode","sessions");return yv(e,{recursive:!0}),e}getSessionDBPath(e){let r=_v("sha256").update(e).digest("hex").slice(0,16);return Wp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=_v("sha256").update(e).digest("hex").slice(0,16);return Wp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=no(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();yv(xv(r),{recursive:!0}),Gp(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=no(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=oo(za(),".gemini","extensions","context-mode","package.json");return JSON.parse(no(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{VC(e,KC.R_OK);let r=e+".bak";return BC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:oo(za(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=oo(e,n.projectRelativePath),s=oo(r,"configs","antigravity",n.fileName);try{let i=no(s,"utf-8");try{let a=no(o,"utf-8");return a.includes("context-mode")?null:(Gp(o,a.trimEnd()+`
33
33
 
34
- `+i,"utf-8"),o)}catch{return Vp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=eo(gx(KC(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return Qn(e,"utf-8")}catch{return`# context-mode
34
+ `+i,"utf-8"),o)}catch{return Gp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=oo(xv(JC(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return no(e,"utf-8")}catch{return`# context-mode
35
35
 
36
- 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 ys(t,e){let r=vx[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function vs(t,e){let r=vx[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var be,vx,nZ,oZ,xx=we(()=>{"use strict";be={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},vx={[be.PRE_TOOL_USE]:"pretooluse.mjs",[be.POST_TOOL_USE]:"posttooluse.mjs"},nZ=[be.PRE_TOOL_USE],oZ=[be.POST_TOOL_USE]});var bx={};Be(bx,{KiroAdapter:()=>Yp});import{createHash as Sx}from"node:crypto";import{readFileSync as br,writeFileSync as Oa,mkdirSync as Gp,copyFileSync as JC,accessSync as GC,constants as WC}from"node:fs";import{resolve as Yt,join as Wp,dirname as kx}from"node:path";import{fileURLToPath as YC}from"node:url";import{homedir as to}from"node:os";var Yp,wx=we(()=>{"use strict";xx();Yp=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 Yt(to(),".kiro","settings","mcp_config.json")}getSessionDir(){let e=Wp(to(),".kiro","context-mode","sessions");return Gp(e,{recursive:!0}),e}getSessionDBPath(e){let r=Sx("sha256").update(e).digest("hex").slice(0,16);return Wp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Sx("sha256").update(e).digest("hex").slice(0,16);return Wp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[be.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:vs(be.PRE_TOOL_USE,e)}]}],[be.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:vs(be.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=br(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Gp(kx(r),{recursive:!0}),Oa(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=Yt(to(),".kiro","agents","default.json");try{let s=JSON.parse(br(n,"utf-8")).hooks??{};for(let i of[be.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>ys(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[be.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>ys(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=br(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_config.json"}}catch{return{check:"MCP registration",status:"warn",message:"Could not read ~/.kiro/settings/mcp_config.json"}}}getInstalledVersion(){try{let e=Yt(to(),".kiro","extensions","context-mode","package.json");return JSON.parse(br(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=Yt(to(),".kiro","agents"),o=Yt(n,"default.json");try{Gp(n,{recursive:!0});let s={};try{s=JSON.parse(br(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[be.PRE_TOOL_USE]??[];a.some(u=>ys(u,be.PRE_TOOL_USE))||(a.push({matcher:"*",command:vs(be.PRE_TOOL_USE,e)}),i[be.PRE_TOOL_USE]=a,r.push(`Added ${be.PRE_TOOL_USE} hook to ${o}`));let c=i[be.POST_TOOL_USE]??[];c.some(u=>ys(u,be.POST_TOOL_USE))||(c.push({matcher:"*",command:vs(be.POST_TOOL_USE,e)}),i[be.POST_TOOL_USE]=c,r.push(`Added ${be.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,Oa(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{GC(e,WC.R_OK);let r=e+".bak";return JC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"KIRO.md",globalPath:Yt(to(),".kiro","KIRO.md"),projectRelativePath:"KIRO.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Yt(e,n.projectRelativePath),s=Yt(r,"configs","kiro",n.fileName);try{let i=br(s,"utf-8");try{let a=br(o,"utf-8");return a.includes("context-mode")?null:(Oa(o,a.trimEnd()+`
36
+ 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 ws(t,e){let r=kv[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function Es(t,e){let r=kv[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var be,kv,oZ,sZ,bv=we(()=>{"use strict";be={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},kv={[be.PRE_TOOL_USE]:"pretooluse.mjs",[be.POST_TOOL_USE]:"posttooluse.mjs"},oZ=[be.PRE_TOOL_USE],sZ=[be.POST_TOOL_USE]});var Tv={};Be(Tv,{KiroAdapter:()=>ef});import{createHash as wv}from"node:crypto";import{readFileSync as br,writeFileSync as Na,mkdirSync as Xp,copyFileSync as GC,accessSync as WC,constants as YC}from"node:fs";import{resolve as Yt,join as Qp,dirname as Ev}from"node:path";import{fileURLToPath as XC}from"node:url";import{homedir as so}from"node:os";var ef,$v=we(()=>{"use strict";bv();ef=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 Yt(so(),".kiro","settings","mcp.json")}getSessionDir(){let e=Qp(so(),".kiro","context-mode","sessions");return Xp(e,{recursive:!0}),e}getSessionDBPath(e){let r=wv("sha256").update(e).digest("hex").slice(0,16);return Qp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=wv("sha256").update(e).digest("hex").slice(0,16);return Qp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[be.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:Es(be.PRE_TOOL_USE,e)}]}],[be.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:Es(be.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=br(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Xp(Ev(r),{recursive:!0}),Na(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=Yt(so(),".kiro","agents","default.json");try{let s=JSON.parse(br(n,"utf-8")).hooks??{};for(let i of[be.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>ws(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[be.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>ws(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=br(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=Yt(so(),".kiro","extensions","context-mode","package.json");return JSON.parse(br(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=Yt(so(),".kiro","agents"),o=Yt(n,"default.json");try{Xp(n,{recursive:!0});let s={};try{s=JSON.parse(br(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[be.PRE_TOOL_USE]??[];a.some(u=>ws(u,be.PRE_TOOL_USE))||(a.push({matcher:"*",command:Es(be.PRE_TOOL_USE,e)}),i[be.PRE_TOOL_USE]=a,r.push(`Added ${be.PRE_TOOL_USE} hook to ${o}`));let c=i[be.POST_TOOL_USE]??[];c.some(u=>ws(u,be.POST_TOOL_USE))||(c.push({matcher:"*",command:Es(be.POST_TOOL_USE,e)}),i[be.POST_TOOL_USE]=c,r.push(`Added ${be.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,Na(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{WC(e,YC.R_OK);let r=e+".bak";return GC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"KIRO.md",globalPath:Yt(so(),".kiro","KIRO.md"),projectRelativePath:"KIRO.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Yt(e,n.projectRelativePath),s=Yt(r,"configs","kiro",n.fileName);try{let i=br(s,"utf-8");try{let a=br(o,"utf-8");return a.includes("context-mode")?null:(Na(o,a.trimEnd()+`
37
37
 
38
- `+i,"utf-8"),o)}catch{return Oa(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Yt(kx(YC(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return br(e,"utf-8")}catch{return`# context-mode
38
+ `+i,"utf-8"),o)}catch{return Na(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Yt(Ev(XC(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return br(e,"utf-8")}catch{return`# context-mode
39
39
 
40
- 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 Px={};Be(Px,{ZedAdapter:()=>tf});import{createHash as Ex}from"node:crypto";import{readFileSync as xs,writeFileSync as Xp,mkdirSync as Tx,copyFileSync as XC,accessSync as QC,constants as eI}from"node:fs";import{resolve as Ss,join as Qp,dirname as $x}from"node:path";import{fileURLToPath as tI}from"node:url";import{homedir as ef}from"node:os";var tf,Rx=we(()=>{"use strict";tf=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 Ss(ef(),".config","zed","settings.json")}getSessionDir(){let e=Qp(ef(),".config","zed","context-mode","sessions");return Tx(e,{recursive:!0}),e}getSessionDBPath(e){let r=Ex("sha256").update(e).digest("hex").slice(0,16);return Qp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Ex("sha256").update(e).digest("hex").slice(0,16);return Qp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=xs(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Tx($x(r),{recursive:!0}),Xp(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=xs(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{QC(e,eI.R_OK);let r=e+".bak";return XC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:Ss(ef(),".config","zed","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Ss(e,n.projectRelativePath),s=Ss(r,"configs","zed",n.fileName);try{let i=xs(s,"utf-8");try{let a=xs(o,"utf-8");return a.includes("context-mode")?null:(Xp(o,a.trimEnd()+`
40
+ 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 Cv={};Be(Cv,{ZedAdapter:()=>of});import{createHash as Pv}from"node:crypto";import{readFileSync as Ts,writeFileSync as tf,mkdirSync as Rv,copyFileSync as QC,accessSync as eI,constants as tI}from"node:fs";import{resolve as $s,join as rf,dirname as Ov}from"node:path";import{fileURLToPath as rI}from"node:url";import{homedir as nf}from"node:os";var of,Iv=we(()=>{"use strict";of=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 $s(nf(),".config","zed","settings.json")}getSessionDir(){let e=rf(nf(),".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 rf(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Pv("sha256").update(e).digest("hex").slice(0,16);return rf(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Ts(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Rv(Ov(r),{recursive:!0}),tf(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=Ts(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{eI(e,tI.R_OK);let r=e+".bak";return QC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:$s(nf(),".config","zed","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=$s(e,n.projectRelativePath),s=$s(r,"configs","zed",n.fileName);try{let i=Ts(s,"utf-8");try{let a=Ts(o,"utf-8");return a.includes("context-mode")?null:(tf(o,a.trimEnd()+`
41
41
 
42
- `+i,"utf-8"),o)}catch{return Xp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Ss($x(tI(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return xs(e,"utf-8")}catch{return`# context-mode
42
+ `+i,"utf-8"),o)}catch{return tf(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=$s(Ov(rI(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return Ts(e,"utf-8")}catch{return`# context-mode
43
43
 
44
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var Cx={};Be(Cx,{detectPlatform:()=>Ox,getAdapter:()=>nI});import{existsSync as Xt}from"node:fs";import{resolve as Qt}from"node:path";import{homedir as rI}from"node:os";function Ox(t){if(t?.name){let n=$v[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","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_PROJECT_DIR)return{platform:"openclaw",confidence:"high",reason:"OPENCLAW_HOME or OPENCLAW_PROJECT_DIR 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=rI();return Xt(Qt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Xt(Qt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Xt(Qt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Xt(Qt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Xt(Qt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Xt(Qt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Xt(Qt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Xt(Qt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Xt(Qt(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 nI(t){switch(t??Ox().platform){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Pp(),$p));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Zv(),Lv));return new r}case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Fv(),qv));return new r}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Jv(),Kv));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(Xv(),Yv));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(rx(),tx));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(fx(),px));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(yx(),_x));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(wx(),bx));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(Rx(),Px));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Pp(),$p));return new r}}}var Ix=we(()=>{"use strict";Pv()});var L={};Be(L,{BRAND:()=>vS,DIRTY:()=>Er,EMPTY_PATH:()=>Yx,INVALID:()=>A,NEVER:()=>rk,OK:()=>je,ParseStatus:()=>Pe,Schema:()=>H,ZodAny:()=>nr,ZodArray:()=>Ft,ZodBigInt:()=>$r,ZodBoolean:()=>Pr,ZodBranded:()=>so,ZodCatch:()=>Lr,ZodDate:()=>Rr,ZodDefault:()=>Dr,ZodDiscriminatedUnion:()=>Ts,ZodEffects:()=>it,ZodEnum:()=>jr,ZodError:()=>Ve,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>Ps,ZodIntersection:()=>zr,ZodIssueCode:()=>k,ZodLazy:()=>Nr,ZodLiteral:()=>Ar,ZodMap:()=>_n,ZodNaN:()=>vn,ZodNativeEnum:()=>Mr,ZodNever:()=>ht,ZodNull:()=>Cr,ZodNullable:()=>Ot,ZodNumber:()=>Tr,ZodObject:()=>Je,ZodOptional:()=>Ke,ZodParsedType:()=>$,ZodPipeline:()=>io,ZodPromise:()=>or,ZodReadonly:()=>Zr,ZodRecord:()=>$s,ZodSchema:()=>H,ZodSet:()=>yn,ZodString:()=>rr,ZodSymbol:()=>hn,ZodTransformer:()=>it,ZodTuple:()=>Rt,ZodType:()=>H,ZodUndefined:()=>Or,ZodUnion:()=>Ir,ZodUnknown:()=>qt,ZodVoid:()=>gn,addIssueToContext:()=>E,any:()=>PS,array:()=>IS,bigint:()=>bS,boolean:()=>Sf,coerce:()=>tk,custom:()=>yf,date:()=>wS,datetimeRegex:()=>gf,defaultErrorMap:()=>Ut,discriminatedUnion:()=>AS,effect:()=>KS,enum:()=>FS,function:()=>US,getErrorMap:()=>pn,getParsedType:()=>Pt,instanceof:()=>SS,intersection:()=>jS,isAborted:()=>ws,isAsync:()=>fn,isDirty:()=>Es,isValid:()=>tr,late:()=>xS,lazy:()=>HS,literal:()=>qS,makeIssue:()=>oo,map:()=>LS,nan:()=>kS,nativeEnum:()=>BS,never:()=>OS,null:()=>$S,nullable:()=>GS,number:()=>xf,object:()=>Za,objectUtil:()=>Ma,oboolean:()=>ek,onumber:()=>QS,optional:()=>JS,ostring:()=>XS,pipeline:()=>YS,preprocess:()=>WS,promise:()=>VS,quotelessJson:()=>Jx,record:()=>DS,set:()=>ZS,setErrorMap:()=>Wx,strictObject:()=>zS,string:()=>vf,symbol:()=>ES,transformer:()=>KS,tuple:()=>MS,undefined:()=>TS,union:()=>NS,unknown:()=>RS,util:()=>V,void:()=>CS});var V;(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})(V||(V={}));var Ma;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Ma||(Ma={}));var $=V.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 k=V.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"]),Jx=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Ve=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,V.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()}};Ve.create=t=>new Ve(t);var Gx=(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,V.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:r=`Unrecognized key(s) in object: ${V.joinValues(t.keys,", ")}`;break;case k.invalid_union:r="Invalid input";break;case k.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${V.joinValues(t.options)}`;break;case k.invalid_enum_value:r=`Invalid enum value. Expected ${V.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}"`:V.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,V.assertNever(t)}return{message:r}},Ut=Gx;var df=Ut;function Wx(t){df=t}function pn(){return df}var oo=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}},Yx=[];function E(t,e){let r=pn(),n=oo({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"}),Er=t=>({status:"dirty",value:t}),je=t=>({status:"valid",value:t}),ws=t=>t.status==="aborted",Es=t=>t.status==="dirty",tr=t=>t.status==="valid",fn=t=>typeof Promise<"u"&&t instanceof Promise;var O;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(O||(O={}));var 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}},pf=(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 Ve(t.common.issues);return this._error=r,this._error}}};function Z(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 H=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 pf(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 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:Pt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(fn(o)?o:Promise.resolve(o));return pf(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 Ke.create(this,this._def)}nullable(){return Ot.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ft.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({...Z(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Dr({...Z(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new so({typeName:b.ZodBranded,type:this,...Z(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Lr({...Z(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 io.create(this,e)}readonly(){return Zr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Xx=/^c[^\s-]{8,}$/i,Qx=/^[0-9a-z]+$/,eS=/^[0-9A-HJKMNP-TV-Z]{26}$/i,tS=/^[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,rS=/^[a-z0-9_-]{21}$/i,nS=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,oS=/^[-+]?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)?)??$/,sS=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,iS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Da,aS=/^(?:(?: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])$/,cS=/^(?:(?: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])$/,uS=/^(([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]))$/,lS=/^(([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])$/,dS=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,pS=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,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])))",fS=new RegExp(`^${mf}$`);function hf(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 mS(t){return new RegExp(`^${hf(t)}$`)}function gf(t){let e=`${mf}T${hf(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 hS(t,e){return!!((e==="v4"||!e)&&aS.test(t)||(e==="v6"||!e)&&uS.test(t))}function gS(t,e){if(!nS.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 _S(t,e){return!!((e==="v4"||!e)&&cS.test(t)||(e==="v6"||!e)&&lS.test(t))}var rr=class t extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==$.string){let s=this._getOrReturnCtx(e);return E(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),E(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),E(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?E(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&E(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")sS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"email",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Da||(Da=new RegExp(iS,"u")),Da.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"emoji",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")tS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"uuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")rS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"nanoid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")Xx.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Qx.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid2",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")eS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(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),E(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),E(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),E(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),E(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),E(o,{code:k.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?gf(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?fS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?mS(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?oS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?hS(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"ip",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?gS(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"jwt",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?_S(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cidr",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?dS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?pS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64url",code:k.invalid_string,message:s.message}),n.dirty()):V.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,...O.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...O.errToObj(e)})}url(e){return this._addCheck({kind:"url",...O.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...O.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...O.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...O.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...O.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...O.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...O.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...O.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...O.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...O.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...O.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...O.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...O.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...O.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...O.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...O.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...O.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...O.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...O.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...O.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...O.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...O.errToObj(r)})}nonempty(e){return this.min(1,O.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};rr.create=t=>new rr({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...Z(t)});function yS(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 H{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 E(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"?V.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),E(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),E(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),E(n,{code:k.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?yS(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),E(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),E(n,{code:k.not_finite,message:s.message}),o.dirty()):V.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:O.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:O.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:O.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:O.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&V.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,...Z(t)});var $r=class t extends H{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),E(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),E(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),E(n,{code:k.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):V.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:$.bigint,received:r.parsedType}),A}gte(e,r){return this.setLimit("min",e,!0,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};$r.create=t=>new $r({checks:[],typeName:b.ZodBigInt,coerce:t?.coerce??!1,...Z(t)});var Pr=class extends H{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==$.boolean){let n=this._getOrReturnCtx(e);return E(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,...Z(t)});var Rr=class t extends H{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==$.date){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:$.date,received:s.parsedType}),A}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return E(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),E(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),E(o,{code:k.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):V.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:O.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:O.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};Rr.create=t=>new Rr({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...Z(t)});var hn=class extends H{_parse(e){if(this._getType(e)!==$.symbol){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.symbol,received:n.parsedType}),A}return je(e.data)}};hn.create=t=>new hn({typeName:b.ZodSymbol,...Z(t)});var Or=class extends H{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.undefined,received:n.parsedType}),A}return je(e.data)}};Or.create=t=>new Or({typeName:b.ZodUndefined,...Z(t)});var Cr=class extends H{_parse(e){if(this._getType(e)!==$.null){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.null,received:n.parsedType}),A}return je(e.data)}};Cr.create=t=>new Cr({typeName:b.ZodNull,...Z(t)});var nr=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return je(e.data)}};nr.create=t=>new nr({typeName:b.ZodAny,...Z(t)});var qt=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return je(e.data)}};qt.create=t=>new qt({typeName:b.ZodUnknown,...Z(t)});var ht=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:$.never,received:r.parsedType}),A}};ht.create=t=>new ht({typeName:b.ZodNever,...Z(t)});var gn=class extends H{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.void,received:n.parsedType}),A}return je(e.data)}};gn.create=t=>new gn({typeName:b.ZodVoid,...Z(t)});var Ft=class t extends H{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==$.array)return E(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)&&(E(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&&(E(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&&(E(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:O.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:O.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:O.toString(r)}})}nonempty(e){return this.min(1,e)}};Ft.create=(t,e)=>new Ft({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...Z(e)});function mn(t){if(t instanceof Je){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ke.create(mn(n))}return new Je({...t._def,shape:()=>e})}else return t instanceof Ft?new Ft({...t._def,type:mn(t.element)}):t instanceof Ke?Ke.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 Je=class t extends H{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=V.objectKeys(e);return this._cached={shape:e,keys:r},this._cached}_parse(e){if(this._getType(e)!==$.object){let u=this._getOrReturnCtx(e);return E(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 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&&(E(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,m=await l.value;u.push({key:d,value:m,alwaysSet:l.alwaysSet})}return u}).then(u=>Pe.mergeObjectSync(n,u)):Pe.mergeObjectSync(n,c)}get shape(){return this._def.shape()}strict(e){return O.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:O.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName: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 V.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 V.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 V.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 V.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Ke;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return _f(V.objectKeys(this.shape))}};Je.create=(t,e)=>new Je({shape:()=>t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});Je.strictCreate=(t,e)=>new Je({shape:()=>t,unknownKeys:"strict",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});Je.lazycreate=(t,e)=>new Je({shape:t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});var Ir=class extends H{_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 Ve(a.ctx.common.issues));return E(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 Ve(c));return E(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,...Z(e)});var Ht=t=>t instanceof Nr?Ht(t.schema):t instanceof it?Ht(t.innerType()):t instanceof Ar?[t.value]:t instanceof jr?t.options:t instanceof Mr?V.objectValues(t.enum):t instanceof Dr?Ht(t._def.innerType):t instanceof Or?[void 0]:t instanceof Cr?[null]:t instanceof Ke?[void 0,...Ht(t.unwrap())]:t instanceof Ot?[null,...Ht(t.unwrap())]:t instanceof so||t instanceof Zr?Ht(t.unwrap()):t instanceof Lr?Ht(t._def.innerType):[],Ts=class t extends H{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.object)return E(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}):(E(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=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,...Z(n)})}};function La(t,e){let r=Pt(t),n=Pt(e);if(t===e)return{valid:!0,data:t};if(r===$.object&&n===$.object){let o=V.objectKeys(e),s=V.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=La(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=La(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 H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(ws(s)||ws(i))return A;let a=La(s.value,i.value);return a.valid?((Es(s)||Es(i))&&r.dirty(),{status:r.value,value:a.data}):(E(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,...Z(r)});var Rt=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.array)return E(n,{code:k.invalid_type,expected:$.array,received:n.parsedType}),A;if(n.data.length<this._def.items.length)return E(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&&(E(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})}};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,...Z(e)})};var $s=class t extends H{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 E(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 H?new t({keyType:e,valueType:r,typeName:b.ZodRecord,...Z(n)}):new t({keyType:rr.create(),valueType:e,typeName:b.ZodRecord,...Z(r)})}},_n=class extends H{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 E(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}}}};_n.create=(t,e,r)=>new _n({valueType:e,keyType:t,typeName:b.ZodMap,...Z(r)});var yn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.set)return E(n,{code:k.invalid_type,expected:$.set,received:n.parsedType}),A;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(E(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&&(E(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:O.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:O.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};yn.create=(t,e)=>new yn({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...Z(e)});var Ps=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.function)return E(r,{code:k.invalid_type,expected:$.function,received:r.parsedType}),A;function n(a,c){return oo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,pn(),Ut].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return oo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,pn(),Ut].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 Ve([]),l=await a._def.args.parseAsync(c,s).catch(f=>{throw u.addIssue(n(c,f)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(f=>{throw u.addIssue(o(d,f)),u})})}else{let a=this;return je(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Ve([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Ve([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,...Z(n)})}},Nr=class extends H{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,...Z(e)});var Ar=class extends H{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return E(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,...Z(e)});function _f(t,e){return new jr({values:t,typeName:b.ZodEnum,...Z(e)})}var jr=class t extends H{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{expected:V.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 E(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=_f;var Mr=class extends H{_parse(e){let r=V.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==$.string&&n.parsedType!==$.number){let o=V.objectValues(r);return E(n,{expected:V.joinValues(o),received:n.parsedType,code:k.invalid_type}),A}if(this._cache||(this._cache=new Set(V.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=V.objectValues(r);return E(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,...Z(e)});var or=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.promise&&r.common.async===!1)return E(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,...Z(e)});var it=class extends H{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=>{E(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);V.assertNever(o)}};it.create=(t,e,r)=>new it({schema:t,typeName:b.ZodEffects,effect:e,...Z(r)});it.createWithPreprocess=(t,e,r)=>new it({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...Z(r)});var Ke=class extends H{_parse(e){return this._getType(e)===$.undefined?je(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ke.create=(t,e)=>new Ke({innerType:t,typeName:b.ZodOptional,...Z(e)});var Ot=class extends H{_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,...Z(e)});var Dr=class extends H{_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,...Z(e)});var Lr=class extends H{_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 Ve(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ve(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,...Z(e)});var vn=class extends H{_parse(e){if(this._getType(e)!==$.nan){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};vn.create=t=>new vn({typeName:b.ZodNaN,...Z(t)});var vS=Symbol("zod_brand"),so=class extends H{_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}},io=class t extends H{_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 H{_parse(e){let r=this._def.innerType._parse(e),n=o=>(tr(o)&&(o.value=Object.freeze(o.value)),o);return fn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Zr.create=(t,e)=>new Zr({innerType:t,typeName:b.ZodReadonly,...Z(e)});function ff(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function yf(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=ff(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=ff(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):nr.create()}var xS={object:Je.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 SS=(t,e={message:`Input not instance of ${t.name}`})=>yf(r=>r instanceof t,e),vf=rr.create,xf=Tr.create,kS=vn.create,bS=$r.create,Sf=Pr.create,wS=Rr.create,ES=hn.create,TS=Or.create,$S=Cr.create,PS=nr.create,RS=qt.create,OS=ht.create,CS=gn.create,IS=Ft.create,Za=Je.create,zS=Je.strictCreate,NS=Ir.create,AS=Ts.create,jS=zr.create,MS=Rt.create,DS=$s.create,LS=_n.create,ZS=yn.create,US=Ps.create,HS=Nr.create,qS=Ar.create,FS=jr.create,BS=Mr.create,VS=or.create,KS=it.create,JS=Ke.create,GS=Ot.create,WS=it.createWithPreprocess,YS=io.create,XS=()=>vf().optional(),QS=()=>xf().optional(),ek=()=>Sf().optional(),tk={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 rk=A;var nk=Object.freeze({status:"aborted"});function v(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var 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={};Be(J,{BIGINT_FORMAT_RANGES:()=>bf,Class:()=>Ha,NUMBER_FORMAT_RANGES:()=>Ga,aborted:()=>Hr,allowsEval:()=>Va,assert:()=>ck,assertEqual:()=>ok,assertIs:()=>ik,assertNever:()=>ak,assertNotEqual:()=>sk,assignProp:()=>Ba,cached:()=>uo,captureStackTrace:()=>Cs,cleanEnum:()=>Sk,cleanRegex:()=>po,clone:()=>nt,createTransparentProxy:()=>mk,defineLazy:()=>ue,esc:()=>Ur,escapeRegex:()=>sr,extend:()=>_k,finalizeIssue:()=>gt,floatSafeRemainder:()=>Fa,getElementAtPath:()=>uk,getEnumValues:()=>co,getLengthableOrigin:()=>fo,getParsedType:()=>fk,getSizableOrigin:()=>wf,isObject:()=>xn,isPlainObject:()=>Sn,issue:()=>Wa,joinValues:()=>Os,jsonStringifyReplacer:()=>qa,merge:()=>yk,normalizeParams:()=>j,nullish:()=>lo,numKeys:()=>pk,omit:()=>gk,optionalKeys:()=>Ja,partial:()=>vk,pick:()=>hk,prefixIssues:()=>Ct,primitiveTypes:()=>kf,promiseAllObject:()=>lk,propertyKeyTypes:()=>Ka,randomString:()=>dk,required:()=>xk,stringifyPrimitive:()=>Is,unwrapMessage:()=>ao});function ok(t){return t}function sk(t){return t}function ik(t){}function ak(t){throw new Error}function ck(t){}function co(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 qa(t,e){return typeof e=="bigint"?e.toString():e}function uo(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function lo(t){return t==null}function po(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Fa(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 ue(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 Ba(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function uk(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function lk(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 dk(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 Cs=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function xn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Va=uo(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function Sn(t){if(xn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(xn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function pk(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var fk=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}`)}},Ka=new Set(["string","number","symbol"]),kf=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 mk(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 Ja(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Ga={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]},bf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function hk(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 gk(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 _k(t,e){if(!Sn(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 Ba(this,"shape",n),n},checks:[]};return nt(t,r)}function yk(t,e){return nt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ba(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function vk(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 xk(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 Ct(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function ao(t){return typeof t=="string"?t:t?.message}function gt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=ao(t.inst?._zod.def?.error?.(t))??ao(e?.error?.(t))??ao(r.customError?.(t))??ao(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function wf(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function fo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Wa(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function Sk(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ha=class{constructor(...e){}};var Ef=(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,qa,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},zs=v("$ZodError",Ef),mo=v("$ZodError",Ef,{Parent:Error});function Ya(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 Xa(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 Qa=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},ec=Qa(mo),tc=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},rc=tc(mo),nc=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}},qr=nc(mo),oc=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}},Fr=oc(mo);var Tf=/^[cC][^\s-]{8,}$/,$f=/^[0-9a-z]+$/,Pf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Rf=/^[0-9a-vA-V]{20}$/,Of=/^[A-Za-z0-9]{27}$/,Cf=/^[a-zA-Z0-9_-]{21}$/,If=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var zf=/^([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})$/,sc=t=>t?new RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${t}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000)$/;var Nf=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var bk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Af(){return new RegExp(bk,"u")}var jf=/^(?:(?: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])$/,Mf=/^(([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})$/,Df=/^((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])$/,Lf=/^(([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])$/,Zf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,ic=/^[A-Za-z0-9_-]*$/,Uf=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Hf=/^\+(?:[0-9]){6,14}[0-9]$/,qf="(?:(?:\\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])))",Ff=new RegExp(`^${qf}$`);function Bf(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 Vf(t){return new RegExp(`^${Bf(t)}$`)}function Kf(t){let e=Bf({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(`^${qf}T(?:${n})$`)}var Jf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Gf=/^\d+$/,Wf=/^-?\d+(?:\.\d+)?/i,Yf=/true|false/i,Xf=/null/i;var Qf=/^[^A-Z]*$/,em=/^[^a-z]*$/;var Re=v("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),tm={number:"number",bigint:"bigint",object:"date"},ac=v("$ZodCheckLessThan",(t,e)=>{Re.init(t,e);let r=tm[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})}}),cc=v("$ZodCheckGreaterThan",(t,e)=>{Re.init(t,e);let r=tm[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})}}),rm=v("$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):Fa(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})}}),nm=v("$ZodCheckNumberFormat",(t,e)=>{Re.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Ga[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=Gf)}),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 om=v("$ZodCheckMaxLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!lo(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=fo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),sm=v("$ZodCheckMinLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!lo(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=fo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),im=v("$ZodCheckLengthEquals",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!lo(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=fo(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})}}),ho=v("$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=()=>{})}),am=v("$ZodCheckRegex",(t,e)=>{ho.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})}}),cm=v("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=Qf),ho.init(t,e)}),um=v("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=em),ho.init(t,e)}),lm=v("$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})}}),dm=v("$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})}}),pm=v("$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 fm=v("$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(`
44
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var Nv={};Be(Nv,{detectPlatform:()=>zv,getAdapter:()=>oI});import{existsSync as Xt}from"node:fs";import{resolve as Qt}from"node:path";import{homedir as nI}from"node:os";function zv(t){if(t?.name){let n=Ox[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","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.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=nI();return Xt(Qt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Xt(Qt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Xt(Qt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Xt(Qt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Xt(Qt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Xt(Qt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Xt(Qt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Xt(Qt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Xt(Qt(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 oI(t){switch(t??zv().platform){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Cp(),Op));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(qx(),Hx));return new r}case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Kx(),Vx));return new r}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(Yx(),Wx));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(tv(),ev));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(sv(),ov));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(gv(),hv));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(Sv(),vv));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(()=>(Iv(),Cv));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Cp(),Op));return new r}}}var Av=we(()=>{"use strict";Cx()});var D={};Be(D,{BRAND:()=>vS,DIRTY:()=>Tr,EMPTY_PATH:()=>Xv,INVALID:()=>A,NEVER:()=>nk,OK:()=>je,ParseStatus:()=>Pe,Schema:()=>H,ZodAny:()=>nr,ZodArray:()=>Ft,ZodBigInt:()=>Pr,ZodBoolean:()=>Rr,ZodBranded:()=>co,ZodCatch:()=>Zr,ZodDate:()=>Or,ZodDefault:()=>Dr,ZodDiscriminatedUnion:()=>Is,ZodEffects:()=>it,ZodEnum:()=>Mr,ZodError:()=>Ve,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>Ns,ZodIntersection:()=>Nr,ZodIssueCode:()=>k,ZodLazy:()=>Ar,ZodLiteral:()=>jr,ZodMap:()=>vn,ZodNaN:()=>kn,ZodNativeEnum:()=>Lr,ZodNever:()=>ht,ZodNull:()=>Ir,ZodNullable:()=>Ot,ZodNumber:()=>$r,ZodObject:()=>Je,ZodOptional:()=>Ke,ZodParsedType:()=>$,ZodPipeline:()=>uo,ZodPromise:()=>or,ZodReadonly:()=>Ur,ZodRecord:()=>zs,ZodSchema:()=>H,ZodSet:()=>Sn,ZodString:()=>rr,ZodSymbol:()=>yn,ZodTransformer:()=>it,ZodTuple:()=>Rt,ZodType:()=>H,ZodUndefined:()=>Cr,ZodUnion:()=>zr,ZodUnknown:()=>qt,ZodVoid:()=>xn,addIssueToContext:()=>E,any:()=>RS,array:()=>zS,bigint:()=>wS,boolean:()=>wf,coerce:()=>rk,custom:()=>Sf,date:()=>ES,datetimeRegex:()=>xf,defaultErrorMap:()=>Ut,discriminatedUnion:()=>jS,effect:()=>JS,enum:()=>BS,function:()=>HS,getErrorMap:()=>hn,getParsedType:()=>Pt,instanceof:()=>kS,intersection:()=>MS,isAborted:()=>Os,isAsync:()=>gn,isDirty:()=>Cs,isValid:()=>tr,late:()=>SS,lazy:()=>qS,literal:()=>FS,makeIssue:()=>ao,map:()=>ZS,nan:()=>bS,nativeEnum:()=>VS,never:()=>CS,null:()=>PS,nullable:()=>WS,number:()=>bf,object:()=>Ba,objectUtil:()=>Ha,oboolean:()=>tk,onumber:()=>ek,optional:()=>GS,ostring:()=>QS,pipeline:()=>XS,preprocess:()=>YS,promise:()=>KS,quotelessJson:()=>Gv,record:()=>DS,set:()=>US,setErrorMap:()=>Yv,strictObject:()=>NS,string:()=>kf,symbol:()=>TS,transformer:()=>JS,tuple:()=>LS,undefined:()=>$S,union:()=>AS,unknown:()=>OS,util:()=>K,void:()=>IS});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 Ha;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Ha||(Ha={}));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 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"]),Gv=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Ve=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()}};Ve.create=t=>new Ve(t);var Wv=(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}},Ut=Wv;var mf=Ut;function Yv(t){mf=t}function hn(){return mf}var ao=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}},Xv=[];function E(t,e){let r=hn(),n=ao({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"}),Tr=t=>({status:"dirty",value:t}),je=t=>({status:"valid",value:t}),Os=t=>t.status==="aborted",Cs=t=>t.status==="dirty",tr=t=>t.status==="valid",gn=t=>typeof Promise<"u"&&t instanceof Promise;var O;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(O||(O={}));var 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}},hf=(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 Ve(t.common.issues);return this._error=r,this._error}}};function Z(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 H=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(gn(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 hf(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 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:Pt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(gn(o)?o:Promise.resolve(o));return hf(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 Ke.create(this,this._def)}nullable(){return Ot.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ft.create(this)}promise(){return or.create(this,this._def)}or(e){return zr.create([this,e],this._def)}and(e){return Nr.create(this,e,this._def)}transform(e){return new it({...Z(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Dr({...Z(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new co({typeName:b.ZodBranded,type:this,...Z(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Zr({...Z(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 uo.create(this,e)}readonly(){return Ur.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Qv=/^c[^\s-]{8,}$/i,eS=/^[0-9a-z]+$/,tS=/^[0-9A-HJKMNP-TV-Z]{26}$/i,rS=/^[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,nS=/^[a-z0-9_-]{21}$/i,oS=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,sS=/^[-+]?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)?)??$/,iS=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,aS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",qa,cS=/^(?:(?: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])$/,uS=/^(?:(?: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])$/,lS=/^(([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]))$/,dS=/^(([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])$/,pS=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,fS=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,_f="((\\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])))",mS=new RegExp(`^${_f}$`);function yf(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 hS(t){return new RegExp(`^${yf(t)}$`)}function xf(t){let e=`${_f}T${yf(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 gS(t,e){return!!((e==="v4"||!e)&&cS.test(t)||(e==="v6"||!e)&&lS.test(t))}function _S(t,e){if(!oS.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 yS(t,e){return!!((e==="v4"||!e)&&uS.test(t)||(e==="v6"||!e)&&dS.test(t))}var rr=class t extends H{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==$.string){let s=this._getOrReturnCtx(e);return E(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),E(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),E(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?E(o,{code:k.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&E(o,{code:k.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")iS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"email",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")qa||(qa=new RegExp(aS,"u")),qa.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"emoji",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")rS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"uuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")nS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"nanoid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")Qv.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")eS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid2",code:k.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")tS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(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),E(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),E(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),E(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),E(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),E(o,{code:k.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?xf(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?mS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?hS(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:k.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?sS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"duration",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?gS(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"ip",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?_S(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"jwt",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?yS(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cidr",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?pS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64",code:k.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?fS.test(e.data)||(o=this._getOrReturnCtx(e,o),E(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,...O.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...O.errToObj(e)})}url(e){return this._addCheck({kind:"url",...O.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...O.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...O.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...O.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...O.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...O.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...O.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...O.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...O.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...O.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...O.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...O.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...O.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...O.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...O.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...O.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...O.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...O.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...O.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...O.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...O.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...O.errToObj(r)})}nonempty(e){return this.min(1,O.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};rr.create=t=>new rr({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...Z(t)});function xS(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 $r=class t extends H{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 E(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),E(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),E(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),E(n,{code:k.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?xS(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),E(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),E(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,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:O.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:O.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:O.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:O.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&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)}};$r.create=t=>new $r({checks:[],typeName:b.ZodNumber,coerce:t?.coerce||!1,...Z(t)});var Pr=class t extends H{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),E(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),E(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),E(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 E(r,{code:k.invalid_type,expected:$.bigint,received:r.parsedType}),A}gte(e,r){return this.setLimit("min",e,!0,O.toString(r))}gt(e,r){return this.setLimit("min",e,!1,O.toString(r))}lte(e,r){return this.setLimit("max",e,!0,O.toString(r))}lt(e,r){return this.setLimit("max",e,!1,O.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:O.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:O.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:O.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:O.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:O.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:O.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};Pr.create=t=>new Pr({checks:[],typeName:b.ZodBigInt,coerce:t?.coerce??!1,...Z(t)});var Rr=class extends H{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==$.boolean){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.boolean,received:n.parsedType}),A}return je(e.data)}};Rr.create=t=>new Rr({typeName:b.ZodBoolean,coerce:t?.coerce||!1,...Z(t)});var Or=class t extends H{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==$.date){let s=this._getOrReturnCtx(e);return E(s,{code:k.invalid_type,expected:$.date,received:s.parsedType}),A}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return E(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),E(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),E(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:O.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:O.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};Or.create=t=>new Or({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...Z(t)});var yn=class extends H{_parse(e){if(this._getType(e)!==$.symbol){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.symbol,received:n.parsedType}),A}return je(e.data)}};yn.create=t=>new yn({typeName:b.ZodSymbol,...Z(t)});var Cr=class extends H{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.undefined,received:n.parsedType}),A}return je(e.data)}};Cr.create=t=>new Cr({typeName:b.ZodUndefined,...Z(t)});var Ir=class extends H{_parse(e){if(this._getType(e)!==$.null){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.null,received:n.parsedType}),A}return je(e.data)}};Ir.create=t=>new Ir({typeName:b.ZodNull,...Z(t)});var nr=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return je(e.data)}};nr.create=t=>new nr({typeName:b.ZodAny,...Z(t)});var qt=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return je(e.data)}};qt.create=t=>new qt({typeName:b.ZodUnknown,...Z(t)});var ht=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:$.never,received:r.parsedType}),A}};ht.create=t=>new ht({typeName:b.ZodNever,...Z(t)});var xn=class extends H{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.void,received:n.parsedType}),A}return je(e.data)}};xn.create=t=>new xn({typeName:b.ZodVoid,...Z(t)});var Ft=class t extends H{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==$.array)return E(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)&&(E(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&&(E(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&&(E(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:O.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:O.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:O.toString(r)}})}nonempty(e){return this.min(1,e)}};Ft.create=(t,e)=>new Ft({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...Z(e)});function _n(t){if(t instanceof Je){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ke.create(_n(n))}return new Je({...t._def,shape:()=>e})}else return t instanceof Ft?new Ft({...t._def,type:_n(t.element)}):t instanceof Ke?Ke.create(_n(t.unwrap())):t instanceof Ot?Ot.create(_n(t.unwrap())):t instanceof Rt?Rt.create(t.items.map(e=>_n(e))):t}var Je=class t extends H{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 E(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 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&&(E(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 O.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:O.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName: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 _n(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 Ke;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return vf(K.objectKeys(this.shape))}};Je.create=(t,e)=>new Je({shape:()=>t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});Je.strictCreate=(t,e)=>new Je({shape:()=>t,unknownKeys:"strict",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});Je.lazycreate=(t,e)=>new Je({shape:t,unknownKeys:"strip",catchall:ht.create(),typeName:b.ZodObject,...Z(e)});var zr=class extends H{_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 Ve(a.ctx.common.issues));return E(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 Ve(c));return E(r,{code:k.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};zr.create=(t,e)=>new zr({options:t,typeName:b.ZodUnion,...Z(e)});var Ht=t=>t instanceof Ar?Ht(t.schema):t instanceof it?Ht(t.innerType()):t instanceof jr?[t.value]:t instanceof Mr?t.options:t instanceof Lr?K.objectValues(t.enum):t instanceof Dr?Ht(t._def.innerType):t instanceof Cr?[void 0]:t instanceof Ir?[null]:t instanceof Ke?[void 0,...Ht(t.unwrap())]:t instanceof Ot?[null,...Ht(t.unwrap())]:t instanceof co||t instanceof Ur?Ht(t.unwrap()):t instanceof Zr?Ht(t._def.innerType):[],Is=class t extends H{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.object)return E(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}):(E(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=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,...Z(n)})}};function Fa(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=Fa(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=Fa(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 Nr=class extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Os(s)||Os(i))return A;let a=Fa(s.value,i.value);return a.valid?((Cs(s)||Cs(i))&&r.dirty(),{status:r.value,value:a.data}):(E(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}))}};Nr.create=(t,e,r)=>new Nr({left:t,right:e,typeName:b.ZodIntersection,...Z(r)});var Rt=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.array)return E(n,{code:k.invalid_type,expected:$.array,received:n.parsedType}),A;if(n.data.length<this._def.items.length)return E(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&&(E(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})}};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,...Z(e)})};var zs=class t extends H{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 E(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 H?new t({keyType:e,valueType:r,typeName:b.ZodRecord,...Z(n)}):new t({keyType:rr.create(),valueType:e,typeName:b.ZodRecord,...Z(r)})}},vn=class extends H{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 E(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}}}};vn.create=(t,e,r)=>new vn({valueType:e,keyType:t,typeName:b.ZodMap,...Z(r)});var Sn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.set)return E(n,{code:k.invalid_type,expected:$.set,received:n.parsedType}),A;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(E(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&&(E(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:O.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:O.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};Sn.create=(t,e)=>new Sn({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...Z(e)});var Ns=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.function)return E(r,{code:k.invalid_type,expected:$.function,received:r.parsedType}),A;function n(a,c){return ao({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,hn(),Ut].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return ao({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,hn(),Ut].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 Ve([]),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 Ve([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Ve([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,...Z(n)})}},Ar=class extends H{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})}};Ar.create=(t,e)=>new Ar({getter:t,typeName:b.ZodLazy,...Z(e)});var jr=class extends H{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return E(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}};jr.create=(t,e)=>new jr({value:t,typeName:b.ZodLiteral,...Z(e)});function vf(t,e){return new Mr({values:t,typeName:b.ZodEnum,...Z(e)})}var Mr=class t extends H{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return E(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 E(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})}};Mr.create=vf;var Lr=class extends H{_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 E(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 E(n,{received:n.data,code:k.invalid_enum_value,options:o}),A}return je(e.data)}get enum(){return this._def.values}};Lr.create=(t,e)=>new Lr({values:t,typeName:b.ZodNativeEnum,...Z(e)});var or=class extends H{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.promise&&r.common.async===!1)return E(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,...Z(e)});var it=class extends H{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=>{E(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"?Tr(c.value):r.value==="dirty"?Tr(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"?Tr(a.value):r.value==="dirty"?Tr(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,...Z(r)});it.createWithPreprocess=(t,e,r)=>new it({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...Z(r)});var Ke=class extends H{_parse(e){return this._getType(e)===$.undefined?je(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ke.create=(t,e)=>new Ke({innerType:t,typeName:b.ZodOptional,...Z(e)});var Ot=class extends H{_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,...Z(e)});var Dr=class extends H{_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,...Z(e)});var Zr=class extends H{_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 gn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Ve(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ve(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Zr.create=(t,e)=>new Zr({innerType:t,typeName:b.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...Z(e)});var kn=class extends H{_parse(e){if(this._getType(e)!==$.nan){let n=this._getOrReturnCtx(e);return E(n,{code:k.invalid_type,expected:$.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};kn.create=t=>new kn({typeName:b.ZodNaN,...Z(t)});var vS=Symbol("zod_brand"),co=class extends H{_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}},uo=class t extends H{_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(),Tr(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})}},Ur=class extends H{_parse(e){let r=this._def.innerType._parse(e),n=o=>(tr(o)&&(o.value=Object.freeze(o.value)),o);return gn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Ur.create=(t,e)=>new Ur({innerType:t,typeName:b.ZodReadonly,...Z(e)});function gf(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Sf(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=gf(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=gf(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):nr.create()}var SS={object:Je.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 kS=(t,e={message:`Input not instance of ${t.name}`})=>Sf(r=>r instanceof t,e),kf=rr.create,bf=$r.create,bS=kn.create,wS=Pr.create,wf=Rr.create,ES=Or.create,TS=yn.create,$S=Cr.create,PS=Ir.create,RS=nr.create,OS=qt.create,CS=ht.create,IS=xn.create,zS=Ft.create,Ba=Je.create,NS=Je.strictCreate,AS=zr.create,jS=Is.create,MS=Nr.create,LS=Rt.create,DS=zs.create,ZS=vn.create,US=Sn.create,HS=Ns.create,qS=Ar.create,FS=jr.create,BS=Mr.create,VS=Lr.create,KS=or.create,JS=it.create,GS=Ke.create,WS=Ot.create,YS=it.createWithPreprocess,XS=uo.create,QS=()=>kf().optional(),ek=()=>bf().optional(),tk=()=>wf().optional(),rk={string:(t=>rr.create({...t,coerce:!0})),number:(t=>$r.create({...t,coerce:!0})),boolean:(t=>Rr.create({...t,coerce:!0})),bigint:(t=>Pr.create({...t,coerce:!0})),date:(t=>Or.create({...t,coerce:!0}))};var nk=A;var ok=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.")}},As={};function rt(t){return t&&Object.assign(As,t),As}var J={};Be(J,{BIGINT_FORMAT_RANGES:()=>Tf,Class:()=>Ka,NUMBER_FORMAT_RANGES:()=>ec,aborted:()=>qr,allowsEval:()=>Ya,assert:()=>uk,assertEqual:()=>sk,assertIs:()=>ak,assertNever:()=>ck,assertNotEqual:()=>ik,assignProp:()=>Wa,cached:()=>fo,captureStackTrace:()=>Ms,cleanEnum:()=>kk,cleanRegex:()=>ho,clone:()=>nt,createTransparentProxy:()=>hk,defineLazy:()=>ue,esc:()=>Hr,escapeRegex:()=>sr,extend:()=>yk,finalizeIssue:()=>gt,floatSafeRemainder:()=>Ga,getElementAtPath:()=>lk,getEnumValues:()=>po,getLengthableOrigin:()=>go,getParsedType:()=>mk,getSizableOrigin:()=>$f,isObject:()=>bn,isPlainObject:()=>wn,issue:()=>tc,joinValues:()=>js,jsonStringifyReplacer:()=>Ja,merge:()=>xk,normalizeParams:()=>j,nullish:()=>mo,numKeys:()=>fk,omit:()=>_k,optionalKeys:()=>Qa,partial:()=>vk,pick:()=>gk,prefixIssues:()=>Ct,primitiveTypes:()=>Ef,promiseAllObject:()=>dk,propertyKeyTypes:()=>Xa,randomString:()=>pk,required:()=>Sk,stringifyPrimitive:()=>Ls,unwrapMessage:()=>lo});function sk(t){return t}function ik(t){return t}function ak(t){}function ck(t){throw new Error}function uk(t){}function po(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 js(t,e="|"){return t.map(r=>Ls(r)).join(e)}function Ja(t,e){return typeof e=="bigint"?e.toString():e}function fo(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function mo(t){return t==null}function ho(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Ga(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 ue(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 Wa(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function lk(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function dk(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 pk(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Hr(t){return JSON.stringify(t)}var Ms=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function bn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ya=fo(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function wn(t){if(bn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(bn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function fk(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var mk=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}`)}},Xa=new Set(["string","number","symbol"]),Ef=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 hk(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 Ls(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Qa(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var ec={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]},Tf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function gk(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 _k(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 yk(t,e){if(!wn(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 Wa(this,"shape",n),n},checks:[]};return nt(t,r)}function xk(t,e){return nt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Wa(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function vk(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 Sk(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 qr(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 lo(t){return typeof t=="string"?t:t?.message}function gt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=lo(t.inst?._zod.def?.error?.(t))??lo(e?.error?.(t))??lo(r.customError?.(t))??lo(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function $f(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function go(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function tc(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function kk(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ka=class{constructor(...e){}};var Pf=(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,Ja,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Ds=x("$ZodError",Pf),_o=x("$ZodError",Pf,{Parent:Error});function rc(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 nc(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 oc=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 Ms(a,o?.callee),a}return i.value},sc=oc(_o),ic=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 Ms(a,o?.callee),a}return i.value},ac=ic(_o),cc=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??Ds)(s.issues.map(i=>gt(i,o,rt())))}:{success:!0,data:s.value}},Fr=cc(_o),uc=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}},Br=uc(_o);var Rf=/^[cC][^\s-]{8,}$/,Of=/^[0-9a-z]+$/,Cf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,If=/^[0-9a-vA-V]{20}$/,zf=/^[A-Za-z0-9]{27}$/,Nf=/^[a-zA-Z0-9_-]{21}$/,Af=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var jf=/^([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})$/,lc=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 Mf=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var wk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Lf(){return new RegExp(wk,"u")}var Df=/^(?:(?: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])$/,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})$/,Uf=/^((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])$/,Hf=/^(([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])$/,qf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,dc=/^[A-Za-z0-9_-]*$/,Ff=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Bf=/^\+(?:[0-9]){6,14}[0-9]$/,Vf="(?:(?:\\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])))",Kf=new RegExp(`^${Vf}$`);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 Gf(t){return new RegExp(`^${Jf(t)}$`)}function Wf(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(`^${Vf}T(?:${n})$`)}var Yf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var Xf=/^\d+$/,Qf=/^-?\d+(?:\.\d+)?/i,em=/true|false/i,tm=/null/i;var rm=/^[^A-Z]*$/,nm=/^[^a-z]*$/;var Re=x("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),om={number:"number",bigint:"bigint",object:"date"},pc=x("$ZodCheckLessThan",(t,e)=>{Re.init(t,e);let r=om[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})}}),fc=x("$ZodCheckGreaterThan",(t,e)=>{Re.init(t,e);let r=om[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})}}),sm=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):Ga(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})}}),im=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]=ec[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=Xf)}),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 am=x("$ZodCheckMaxLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!mo(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=go(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),cm=x("$ZodCheckMinLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!mo(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=go(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),um=x("$ZodCheckLengthEquals",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!mo(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=go(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})}}),yo=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=()=>{})}),lm=x("$ZodCheckRegex",(t,e)=>{yo.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})}}),dm=x("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=rm),yo.init(t,e)}),pm=x("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=nm),yo.init(t,e)}),fm=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})}}),mm=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})}}),hm=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 gm=x("$ZodCheckOverwrite",(t,e)=>{Re.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Us=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(`
45
45
  `).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(`
46
- `))}};var hm={major:4,minor:0,patch:0};var re=v("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=hm;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,m=l._zod.check(s);if(m instanceof Promise&&a?.async===!1)throw new Bt;if(u||m instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await m,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 Bt;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}}),go=v("$ZodString",(t,e)=>{re.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Jf(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}}),le=v("$ZodStringFormat",(t,e)=>{ho.init(t,e),go.init(t,e)}),lc=v("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=zf),le.init(t,e)}),dc=v("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=sc(n))}else e.pattern??(e.pattern=sc());le.init(t,e)}),pc=v("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Nf),le.init(t,e)}),fc=v("$ZodURL",(t,e)=>{le.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:Uf.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})}}}),mc=v("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Af()),le.init(t,e)}),hc=v("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Cf),le.init(t,e)}),gc=v("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Tf),le.init(t,e)}),_c=v("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=$f),le.init(t,e)}),yc=v("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Pf),le.init(t,e)}),vc=v("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Rf),le.init(t,e)}),xc=v("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Of),le.init(t,e)}),Em=v("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Kf(e)),le.init(t,e)}),Tm=v("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Ff),le.init(t,e)}),$m=v("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Vf(e)),le.init(t,e)}),Pm=v("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=If),le.init(t,e)}),Sc=v("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=jf),le.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),kc=v("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Mf),le.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})}}}),bc=v("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Df),le.init(t,e)}),wc=v("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Lf),le.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 Rm(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Ec=v("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Zf),le.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Rm(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function wk(t){if(!ic.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Rm(r)}var Tc=v("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=ic),le.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{wk(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),$c=v("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Hf),le.init(t,e)});function Ek(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 Pc=v("$ZodJWT",(t,e)=>{le.init(t,e),t._zod.check=r=>{Ek(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Ms=v("$ZodNumber",(t,e)=>{re.init(t,e),t._zod.pattern=t._zod.bag.pattern??Wf,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}}),Rc=v("$ZodNumber",(t,e)=>{nm.init(t,e),Ms.init(t,e)}),Oc=v("$ZodBoolean",(t,e)=>{re.init(t,e),t._zod.pattern=Yf,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 Cc=v("$ZodNull",(t,e)=>{re.init(t,e),t._zod.pattern=Xf,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 Ic=v("$ZodUnknown",(t,e)=>{re.init(t,e),t._zod.parse=r=>r}),zc=v("$ZodNever",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function gm(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}var Nc=v("$ZodArray",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>gm(u,r,i))):gm(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 _m(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=v("$ZodObject",(t,e)=>{re.init(t,e);let r=uo(()=>{let d=Object.keys(e.shape);for(let f of d)if(!(e.shape[f]instanceof re))throw new Error(`Invalid element at key "${f}": expected a Zod schema`);let m=Ja(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(m)}});ue(t._zod,"propValues",()=>{let d=e.shape,m={};for(let f in d){let p=d[f]._zod;if(p.values){m[f]??(m[f]=new Set);for(let h of p.values)m[f].add(h)}}return m});let n=d=>{let m=new As(["shape","payload","ctx"]),f=r.value,p=x=>{let S=Ur(x);return`shape[${S}]._zod.run({ value: input[${S}], issues: [] }, ctx)`};m.write("const input = payload.value;");let h=Object.create(null),g=0;for(let x of f.keys)h[x]=`key_${g++}`;m.write("const newResult = {}");for(let x of f.keys)if(f.optionalKeys.has(x)){let S=h[x];m.write(`const ${S} = ${p(x)};`);let w=Ur(x);m.write(`
46
+ `))}};var ym={major:4,minor:0,patch:0};var re=x("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=ym;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=qr(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=qr(s,d)))});else{if(s.issues.length===d)continue;c||(c=qr(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=Fr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Br(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),xo=x("$ZodString",(t,e)=>{re.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Yf(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}}),le=x("$ZodStringFormat",(t,e)=>{yo.init(t,e),xo.init(t,e)}),hc=x("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=jf),le.init(t,e)}),gc=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=lc(n))}else e.pattern??(e.pattern=lc());le.init(t,e)}),_c=x("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Mf),le.init(t,e)}),yc=x("$ZodURL",(t,e)=>{le.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:Ff.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})}}}),xc=x("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Lf()),le.init(t,e)}),vc=x("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Nf),le.init(t,e)}),Sc=x("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Rf),le.init(t,e)}),kc=x("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Of),le.init(t,e)}),bc=x("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Cf),le.init(t,e)}),wc=x("$ZodXID",(t,e)=>{e.pattern??(e.pattern=If),le.init(t,e)}),Ec=x("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=zf),le.init(t,e)}),Pm=x("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Wf(e)),le.init(t,e)}),Rm=x("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Kf),le.init(t,e)}),Om=x("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Gf(e)),le.init(t,e)}),Cm=x("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Af),le.init(t,e)}),Tc=x("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Df),le.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),$c=x("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Zf),le.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})}}}),Pc=x("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Uf),le.init(t,e)}),Rc=x("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Hf),le.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 Im(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Oc=x("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=qf),le.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Im(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function Ek(t){if(!dc.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Im(r)}var Cc=x("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=dc),le.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{Ek(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Ic=x("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Bf),le.init(t,e)});function Tk(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 zc=x("$ZodJWT",(t,e)=>{le.init(t,e),t._zod.check=r=>{Tk(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var qs=x("$ZodNumber",(t,e)=>{re.init(t,e),t._zod.pattern=t._zod.bag.pattern??Qf,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}}),Nc=x("$ZodNumber",(t,e)=>{im.init(t,e),qs.init(t,e)}),Ac=x("$ZodBoolean",(t,e)=>{re.init(t,e),t._zod.pattern=em,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 jc=x("$ZodNull",(t,e)=>{re.init(t,e),t._zod.pattern=tm,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 Mc=x("$ZodUnknown",(t,e)=>{re.init(t,e),t._zod.parse=r=>r}),Lc=x("$ZodNever",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function xm(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}var Dc=x("$ZodArray",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Array.isArray(o))return r.issues.push({expected:"array",code:"invalid_type",input:o,inst:t}),r;r.value=Array(o.length);let s=[];for(let i=0;i<o.length;i++){let a=o[i],c=e.element._zod.run({value:a,issues:[]},n);c instanceof Promise?s.push(c.then(u=>xm(u,r,i))):xm(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Hs(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}function vm(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 Fs=x("$ZodObject",(t,e)=>{re.init(t,e);let r=fo(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof re))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=Qa(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});ue(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 Us(["shape","payload","ctx"]),m=r.value,p=v=>{let S=Hr(v);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 v of m.keys)h[v]=`key_${g++}`;f.write("const newResult = {}");for(let v of m.keys)if(m.optionalKeys.has(v)){let S=h[v];f.write(`const ${S} = ${p(v)};`);let w=Hr(v);f.write(`
47
47
  if (${S}.issues.length) {
48
48
  if (input[${w}] === undefined) {
49
49
  if (${w} in input) {
@@ -62,27 +62,27 @@ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_inde
62
62
  } else {
63
63
  newResult[${w}] = ${S}.value;
64
64
  }
65
- `)}else{let S=h[x];m.write(`const ${S} = ${p(x)};`),m.write(`
65
+ `)}else{let S=h[v];f.write(`const ${S} = ${p(v)};`),f.write(`
66
66
  if (${S}.issues.length) payload.issues = payload.issues.concat(${S}.issues.map(iss => ({
67
67
  ...iss,
68
- path: iss.path ? [${Ur(x)}, ...iss.path] : [${Ur(x)}]
69
- })));`),m.write(`newResult[${Ur(x)}] = ${S}.value`)}m.write("payload.value = newResult;"),m.write("return payload;");let y=m.compile();return(x,S)=>y(d,x,S)},o,s=xn,i=!Rs.jitless,c=i&&Va.value,u=e.catchall,l;t._zod.parse=(d,m)=>{l??(l=r.value);let f=d.value;if(!s(f))return d.issues.push({expected:"object",code:"invalid_type",input:f,inst:t}),d;let p=[];if(i&&c&&m?.async===!1&&m.jitless!==!0)o||(o=n(e.shape)),d=o(d,m);else{d.value={};let S=l.shape;for(let w of l.keys){let R=S[w],ae=R._zod.run({value:f[w],issues:[]},m),ce=R._zod.optin==="optional"&&R._zod.optout==="optional";ae instanceof Promise?p.push(ae.then(tt=>ce?_m(tt,d,w,f):js(tt,d,w))):ce?_m(ae,d,w,f):js(ae,d,w)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,y=u._zod,x=y.def.type;for(let S of Object.keys(f)){if(g.has(S))continue;if(x==="never"){h.push(S);continue}let w=y.run({value:f[S],issues:[]},m);w instanceof Promise?p.push(w.then(R=>js(R,d,S))):js(w,d,S)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function ym(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=v("$ZodUnion",(t,e)=>{re.init(t,e),ue(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ue(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ue(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ue(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=>po(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=>ym(i,r,t,n)):ym(s,r,t,n)}}),Ac=v("$ZodDiscriminatedUnion",(t,e)=>{Ls.init(t,e);let r=t._zod.parse;ue(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=uo(()=>{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(!xn(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)}}),jc=v("$ZodIntersection",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>vm(r,c,u)):vm(r,s,i)}});function uc(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(Sn(t)&&Sn(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=uc(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=uc(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 vm(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=uc(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 Mc=v("$ZodRecord",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!Sn(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 Dc=v("$ZodEnum",(t,e)=>{re.init(t,e);let r=co(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ka.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}}),Lc=v("$ZodLiteral",(t,e)=>{re.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?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 Zc=v("$ZodTransform",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new Bt;return r.value=o,r}}),Uc=v("$ZodOptional",(t,e)=>{re.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ue(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ue(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${po(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)}),Hc=v("$ZodNullable",(t,e)=>{re.init(t,e),ue(t._zod,"optin",()=>e.innerType._zod.optin),ue(t._zod,"optout",()=>e.innerType._zod.optout),ue(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${po(r.source)}|null)$`):void 0}),ue(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)}),qc=v("$ZodDefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ue(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=>xm(s,e)):xm(o,e)}});function xm(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Fc=v("$ZodPrefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ue(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))}),Bc=v("$ZodNonOptional",(t,e)=>{re.init(t,e),ue(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=>Sm(s,t)):Sm(o,t)}});function Sm(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 Vc=v("$ZodCatch",(t,e)=>{re.init(t,e),t._zod.optin="optional",ue(t._zod,"optout",()=>e.innerType._zod.optout),ue(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 Kc=v("$ZodPipe",(t,e)=>{re.init(t,e),ue(t._zod,"values",()=>e.in._zod.values),ue(t._zod,"optin",()=>e.in._zod.optin),ue(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=>km(s,e,n)):km(o,e,n)}});function km(t,e,r){return Hr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Jc=v("$ZodReadonly",(t,e)=>{re.init(t,e),ue(t._zod,"propValues",()=>e.innerType._zod.propValues),ue(t._zod,"values",()=>e.innerType._zod.values),ue(t._zod,"optin",()=>e.innerType._zod.optin),ue(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(bm):bm(o)}});function bm(t){return t.value=Object.freeze(t.value),t}var Gc=v("$ZodCustom",(t,e)=>{Re.init(t,e),re.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>wm(s,r,n,t));wm(o,r,n,t)}});function wm(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(Wa(o))}}var Tk=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},$k=()=>{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 ${Tk(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 Om(){return{localeError:$k()}}var _o=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 Cm(){return new _o}var ir=Cm();function Wc(t,e){return new t({type:"string",...j(e)})}function Yc(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 Xc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function Qc(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function eu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function tu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function ru(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function nu(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function ou(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function su(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function iu(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function uu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function lu(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function du(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function pu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function fu(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function mu(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function hu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function gu(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function _u(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function Im(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function zm(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function Nm(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function Am(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function yu(t,e){return new t({type:"number",checks:[],...j(e)})}function vu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function xu(t,e){return new t({type:"boolean",...j(e)})}function Su(t,e){return new t({type:"null",...j(e)})}function ku(t){return new t({type:"unknown"})}function bu(t,e){return new t({type:"never",...j(e)})}function Us(t,e){return new ac({check:"less_than",...j(e),value:t,inclusive:!1})}function yo(t,e){return new ac({check:"less_than",...j(e),value:t,inclusive:!0})}function Hs(t,e){return new cc({check:"greater_than",...j(e),value:t,inclusive:!1})}function vo(t,e){return new cc({check:"greater_than",...j(e),value:t,inclusive:!0})}function qs(t,e){return new rm({check:"multiple_of",...j(e),value:t})}function Fs(t,e){return new om({check:"max_length",...j(e),maximum:t})}function kn(t,e){return new sm({check:"min_length",...j(e),minimum:t})}function Bs(t,e){return new im({check:"length_equals",...j(e),length:t})}function wu(t,e){return new am({check:"string_format",format:"regex",...j(e),pattern:t})}function Eu(t){return new cm({check:"string_format",format:"lowercase",...j(t)})}function Tu(t){return new um({check:"string_format",format:"uppercase",...j(t)})}function $u(t,e){return new lm({check:"string_format",format:"includes",...j(e),includes:t})}function Pu(t,e){return new dm({check:"string_format",format:"starts_with",...j(e),prefix:t})}function Ru(t,e){return new pm({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Br(t){return new fm({check:"overwrite",tx:t})}function Ou(t){return Br(e=>e.normalize(t))}function Cu(){return Br(t=>t.trim())}function Iu(){return Br(t=>t.toLowerCase())}function zu(){return Br(t=>t.toUpperCase())}function jm(t,e,r){return new t({type:"array",element:e,...j(r)})}function Nu(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Au(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??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},m=e._zod.parent;if(m)a.ref=m,this.process(m,d),this.seen.get(m).isParent=!0;else{let f=a.schema;switch(o.type){case"string":{let p=f;p.type="string";let{minimum:h,maximum:g,format:y,patterns:x,contentEncoding:S}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),y&&(p.format=s[y]??y,p.format===""&&delete p.format),S&&(p.contentEncoding=S),x&&x.size>0){let w=[...x];w.length===1?p.pattern=w[0].source:w.length>1&&(a.schema.allOf=[...w.map(R=>({...this.target==="draft-7"?{type:"string"}:{},pattern:R.source}))])}break}case"number":{let p=f,{minimum:h,maximum:g,format:y,multipleOf:x,exclusiveMaximum:S,exclusiveMinimum:w}=e._zod.bag;typeof y=="string"&&y.includes("int")?p.type="integer":p.type="number",typeof w=="number"&&(p.exclusiveMinimum=w),typeof h=="number"&&(p.minimum=h,typeof w=="number"&&(w>=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 x=="number"&&(p.multipleOf=x);break}case"boolean":{let p=f;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":{f.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{f.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=f,{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=f;p.type="object",p.properties={};let h=o.shape;for(let x in h)p.properties[x]=this.process(h[x],{...d,path:[...d.path,"properties",x]});let g=new Set(Object.keys(h)),y=new Set([...g].filter(x=>{let S=o.shape[x]._zod;return this.io==="input"?S.optin===void 0:S.optout===void 0}));y.size>0&&(p.required=Array.from(y)),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=f;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=f,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),y=S=>"allOf"in S&&Object.keys(S).length===1,x=[...y(h)?h.allOf:[h],...y(g)?g.allOf:[g]];p.allOf=x;break}case"tuple":{let p=f;p.type="array";let h=o.items.map((x,S)=>this.process(x,{...d,path:[...d.path,"prefixItems",S]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let x=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=x:p.additionalItems=x}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:y}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof y=="number"&&(p.maxItems=y);break}case"record":{let p=f;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=f,h=co(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=f,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];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=f,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:y,mime:x}=e._zod.bag;g!==void 0&&(h.minLength=g),y!==void 0&&(h.maxLength=y),x?x.length===1?(h.contentMediaType=x[0],Object.assign(p,h)):p.anyOf=x.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);f.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=f;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,f.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(f._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}f.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=f,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,f.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let 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"&&Ee(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(x=>x);if(h)return{ref:g(h)};let y=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=y,{defId:y,ref:`${g("__shared")}#/${d}/${y}`}}if(l[1]===o)return{ref:"#"};let f=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:f+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:m,defId:f}=s(l);d.def={...d.schema},f&&(d.defId=f);let p=d.schema;for(let h in p)delete p[h];p.$ref=m};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>
68
+ path: iss.path ? [${Hr(v)}, ...iss.path] : [${Hr(v)}]
69
+ })));`),f.write(`newResult[${Hr(v)}] = ${S}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let y=f.compile();return(v,S)=>y(d,v,S)},o,s=bn,i=!As.jitless,c=i&&Ya.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 w of l.keys){let R=S[w],ae=R._zod.run({value:m[w],issues:[]},f),ce=R._zod.optin==="optional"&&R._zod.optout==="optional";ae instanceof Promise?p.push(ae.then(tt=>ce?vm(tt,d,w,m):Hs(tt,d,w))):ce?vm(ae,d,w,m):Hs(ae,d,w)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,y=u._zod,v=y.def.type;for(let S of Object.keys(m)){if(g.has(S))continue;if(v==="never"){h.push(S);continue}let w=y.run({value:m[S],issues:[]},f);w instanceof Promise?p.push(w.then(R=>Hs(R,d,S))):Hs(w,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 Sm(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 Bs=x("$ZodUnion",(t,e)=>{re.init(t,e),ue(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ue(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ue(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ue(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=>ho(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=>Sm(i,r,t,n)):Sm(s,r,t,n)}}),Zc=x("$ZodDiscriminatedUnion",(t,e)=>{Bs.init(t,e);let r=t._zod.parse;ue(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=fo(()=>{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(!bn(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)}}),Uc=x("$ZodIntersection",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>km(r,c,u)):km(r,s,i)}});function mc(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(wn(t)&&wn(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=mc(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=mc(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 km(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),qr(t))return t;let n=mc(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 Hc=x("$ZodRecord",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!wn(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 qc=x("$ZodEnum",(t,e)=>{re.init(t,e);let r=po(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Xa.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}}),Fc=x("$ZodLiteral",(t,e)=>{re.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?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 Bc=x("$ZodTransform",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=e.transform(r.value,r);if(n.async)return(o instanceof Promise?o:Promise.resolve(o)).then(i=>(r.value=i,r));if(o instanceof Promise)throw new Bt;return r.value=o,r}}),Vc=x("$ZodOptional",(t,e)=>{re.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ue(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ue(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${ho(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)}),Kc=x("$ZodNullable",(t,e)=>{re.init(t,e),ue(t._zod,"optin",()=>e.innerType._zod.optin),ue(t._zod,"optout",()=>e.innerType._zod.optout),ue(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${ho(r.source)}|null)$`):void 0}),ue(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)}),Jc=x("$ZodDefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ue(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=>bm(s,e)):bm(o,e)}});function bm(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Gc=x("$ZodPrefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ue(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))}),Wc=x("$ZodNonOptional",(t,e)=>{re.init(t,e),ue(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=>wm(s,t)):wm(o,t)}});function wm(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 Yc=x("$ZodCatch",(t,e)=>{re.init(t,e),t._zod.optin="optional",ue(t._zod,"optout",()=>e.innerType._zod.optout),ue(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 Xc=x("$ZodPipe",(t,e)=>{re.init(t,e),ue(t._zod,"values",()=>e.in._zod.values),ue(t._zod,"optin",()=>e.in._zod.optin),ue(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=>Em(s,e,n)):Em(o,e,n)}});function Em(t,e,r){return qr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Qc=x("$ZodReadonly",(t,e)=>{re.init(t,e),ue(t._zod,"propValues",()=>e.innerType._zod.propValues),ue(t._zod,"values",()=>e.innerType._zod.values),ue(t._zod,"optin",()=>e.innerType._zod.optin),ue(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(Tm):Tm(o)}});function Tm(t){return t.value=Object.freeze(t.value),t}var eu=x("$ZodCustom",(t,e)=>{Re.init(t,e),re.init(t,e),t._zod.parse=(r,n)=>r,t._zod.check=r=>{let n=r.value,o=e.fn(n);if(o instanceof Promise)return o.then(s=>$m(s,r,n,t));$m(o,r,n,t)}});function $m(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(tc(o))}}var $k=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},Pk=()=>{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 ${$k(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Ls(n.values[0])}`:`Invalid option: expected one of ${js(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":""}: ${js(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 zm(){return{localeError:Pk()}}var vo=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 Nm(){return new vo}var ir=Nm();function tu(t,e){return new t({type:"string",...j(e)})}function ru(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Vs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function nu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function ou(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function su(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function iu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function au(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function uu(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function lu(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function du(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function pu(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function fu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function mu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function hu(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function gu(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function _u(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function yu(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function xu(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function vu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function Su(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function ku(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function Am(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function jm(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function Mm(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function Lm(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function bu(t,e){return new t({type:"number",checks:[],...j(e)})}function wu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function Eu(t,e){return new t({type:"boolean",...j(e)})}function Tu(t,e){return new t({type:"null",...j(e)})}function $u(t){return new t({type:"unknown"})}function Pu(t,e){return new t({type:"never",...j(e)})}function Ks(t,e){return new pc({check:"less_than",...j(e),value:t,inclusive:!1})}function So(t,e){return new pc({check:"less_than",...j(e),value:t,inclusive:!0})}function Js(t,e){return new fc({check:"greater_than",...j(e),value:t,inclusive:!1})}function ko(t,e){return new fc({check:"greater_than",...j(e),value:t,inclusive:!0})}function Gs(t,e){return new sm({check:"multiple_of",...j(e),value:t})}function Ws(t,e){return new am({check:"max_length",...j(e),maximum:t})}function En(t,e){return new cm({check:"min_length",...j(e),minimum:t})}function Ys(t,e){return new um({check:"length_equals",...j(e),length:t})}function Ru(t,e){return new lm({check:"string_format",format:"regex",...j(e),pattern:t})}function Ou(t){return new dm({check:"string_format",format:"lowercase",...j(t)})}function Cu(t){return new pm({check:"string_format",format:"uppercase",...j(t)})}function Iu(t,e){return new fm({check:"string_format",format:"includes",...j(e),includes:t})}function zu(t,e){return new mm({check:"string_format",format:"starts_with",...j(e),prefix:t})}function Nu(t,e){return new hm({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Vr(t){return new gm({check:"overwrite",tx:t})}function Au(t){return Vr(e=>e.normalize(t))}function ju(){return Vr(t=>t.trim())}function Mu(){return Vr(t=>t.toLowerCase())}function Lu(){return Vr(t=>t.toUpperCase())}function Dm(t,e,r){return new t({type:"array",element:e,...j(r)})}function Du(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Zu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var Xs=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:y,patterns:v,contentEncoding:S}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),y&&(p.format=s[y]??y,p.format===""&&delete p.format),S&&(p.contentEncoding=S),v&&v.size>0){let w=[...v];w.length===1?p.pattern=w[0].source:w.length>1&&(a.schema.allOf=[...w.map(R=>({...this.target==="draft-7"?{type:"string"}:{},pattern:R.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:y,multipleOf:v,exclusiveMaximum:S,exclusiveMinimum:w}=e._zod.bag;typeof y=="string"&&y.includes("int")?p.type="integer":p.type="number",typeof w=="number"&&(p.exclusiveMinimum=w),typeof h=="number"&&(p.minimum=h,typeof w=="number"&&(w>=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 v=="number"&&(p.multipleOf=v);break}case"boolean":{let p=m;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{m.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{m.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=m,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=m;p.type="object",p.properties={};let h=o.shape;for(let v in h)p.properties[v]=this.process(h[v],{...d,path:[...d.path,"properties",v]});let g=new Set(Object.keys(h)),y=new Set([...g].filter(v=>{let S=o.shape[v]._zod;return this.io==="input"?S.optin===void 0:S.optout===void 0}));y.size>0&&(p.required=Array.from(y)),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]}),y=S=>"allOf"in S&&Object.keys(S).length===1,v=[...y(h)?h.allOf:[h],...y(g)?g.allOf:[g]];p.allOf=v;break}case"tuple":{let p=m;p.type="array";let h=o.items.map((v,S)=>this.process(v,{...d,path:[...d.path,"prefixItems",S]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let v=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=v:p.additionalItems=v}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:y}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof y=="number"&&(p.maxItems=y);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=po(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:y,mime:v}=e._zod.bag;g!==void 0&&(h.minLength=g),y!==void 0&&(h.maxLength=y),v?v.length===1?(h.contentMediaType=v[0],Object.assign(p,h)):p.anyOf=v.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"&&Ee(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(v=>v);if(h)return{ref:g(h)};let y=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=y,{defId:y,ref:`${g("__shared")}#/${d}/${y}`}}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>
70
70
 
71
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let f=n.external.registry.get(l[0])?.id;if(e!==l[0]&&f){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let m=this.seen.get(l),f=m.def??m.schema,p={...f};if(m.ref===null)return;let h=m.ref;if(m.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(f.allOf=f.allOf??[],f.allOf.push(g)):(Object.assign(f,g),Object.assign(f,p))}m.isParent||this.override({zodSchema:l,jsonSchema:f,path:m.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 ju(t,e){if(t instanceof _o){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 Ee(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 Ee(o.element,r);case"object":{for(let s in o.shape)if(Ee(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Ee(s,r))return!0;return!1}case"intersection":return Ee(o.left,r)||Ee(o.right,r);case"tuple":{for(let s of o.items)if(Ee(s,r))return!0;return!!(o.rest&&Ee(o.rest,r))}case"record":return Ee(o.keyType,r)||Ee(o.valueType,r);case"map":return Ee(o.keyType,r)||Ee(o.valueType,r);case"set":return Ee(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Ee(o.innerType,r);case"lazy":return Ee(o.getter(),r);case"default":return Ee(o.innerType,r);case"prefault":return Ee(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Ee(o.in,r)||Ee(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var cb=v("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");re.init(t,e),t.def=e,t.parse=(r,n)=>ec(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>qr(t,r,n),t.parseAsync=async(r,n)=>rc(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 ub=v("ZodMiniObject",(t,e)=>{Ds.init(t,e),cb.init(t,e),J.defineLazy(t,"shape",()=>e.shape)});function Mu(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new ub(r)}function at(t){return!!t._zod}function Kr(t){let e=Object.values(t);if(e.length===0)return Mu({});let r=e.every(at),n=e.every(o=>!at(o));if(r)return Mu(t);if(n)return Za(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 Ks(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 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 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 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 Dm(t){return t.description}function Lm(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 xo={};Be(xo,{ZodISODate:()=>Um,ZodISODateTime:()=>Zm,ZodISODuration:()=>qm,ZodISOTime:()=>Hm,date:()=>Lu,datetime:()=>Du,duration:()=>Uu,time:()=>Zu});var Zm=v("ZodISODateTime",(t,e)=>{Em.init(t,e),he.init(t,e)});function Du(t){return Im(Zm,t)}var Um=v("ZodISODate",(t,e)=>{Tm.init(t,e),he.init(t,e)});function Lu(t){return zm(Um,t)}var Hm=v("ZodISOTime",(t,e)=>{$m.init(t,e),he.init(t,e)});function Zu(t){return Nm(Hm,t)}var qm=v("ZodISODuration",(t,e)=>{Pm.init(t,e),he.init(t,e)});function Uu(t){return Am(qm,t)}var Fm=(t,e)=>{zs.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>Xa(t,r)},flatten:{value:r=>Ya(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},nN=v("ZodError",Fm),So=v("ZodError",Fm,{Parent:Error});var Bm=Qa(So),Vm=tc(So),Km=nc(So),Jm=oc(So);var xe=v("ZodType",(t,e)=>(re.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>nt(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>Bm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Km(t,r,n),t.parseAsync=async(r,n)=>Vm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Jm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(iw(r,n)),t.superRefine=r=>t.check(aw(r)),t.overwrite=r=>t.check(Br(r)),t.optional=()=>ve(t),t.nullable=()=>Ym(t),t.nullish=()=>ve(Ym(t)),t.nonoptional=r=>Qb(t,r),t.array=()=>G(t),t.or=r=>de([t,r]),t.and=r=>Ys(t,r),t.transform=r=>qu(t,rh(r)),t.default=r=>Wb(t,r),t.prefault=r=>Xb(t,r),t.catch=r=>tw(t,r),t.pipe=r=>qu(t,r),t.readonly=()=>ow(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)),Xm=v("_ZodString",(t,e)=>{go.init(t,e),xe.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(wu(...n)),t.includes=(...n)=>t.check($u(...n)),t.startsWith=(...n)=>t.check(Pu(...n)),t.endsWith=(...n)=>t.check(Ru(...n)),t.min=(...n)=>t.check(kn(...n)),t.max=(...n)=>t.check(Fs(...n)),t.length=(...n)=>t.check(Bs(...n)),t.nonempty=(...n)=>t.check(kn(1,...n)),t.lowercase=n=>t.check(Eu(n)),t.uppercase=n=>t.check(Tu(n)),t.trim=()=>t.check(Cu()),t.normalize=(...n)=>t.check(Ou(...n)),t.toLowerCase=()=>t.check(Iu()),t.toUpperCase=()=>t.check(zu())}),yb=v("ZodString",(t,e)=>{go.init(t,e),Xm.init(t,e),t.email=r=>t.check(Yc(vb,r)),t.url=r=>t.check(ru(xb,r)),t.jwt=r=>t.check(_u(Ab,r)),t.emoji=r=>t.check(nu(Sb,r)),t.guid=r=>t.check(Zs(Gm,r)),t.uuid=r=>t.check(Xc(Ws,r)),t.uuidv4=r=>t.check(Qc(Ws,r)),t.uuidv6=r=>t.check(eu(Ws,r)),t.uuidv7=r=>t.check(tu(Ws,r)),t.nanoid=r=>t.check(ou(kb,r)),t.guid=r=>t.check(Zs(Gm,r)),t.cuid=r=>t.check(su(bb,r)),t.cuid2=r=>t.check(iu(wb,r)),t.ulid=r=>t.check(au(Eb,r)),t.base64=r=>t.check(mu(Ib,r)),t.base64url=r=>t.check(hu(zb,r)),t.xid=r=>t.check(cu(Tb,r)),t.ksuid=r=>t.check(uu($b,r)),t.ipv4=r=>t.check(lu(Pb,r)),t.ipv6=r=>t.check(du(Rb,r)),t.cidrv4=r=>t.check(pu(Ob,r)),t.cidrv6=r=>t.check(fu(Cb,r)),t.e164=r=>t.check(gu(Nb,r)),t.datetime=r=>t.check(Du(r)),t.date=r=>t.check(Lu(r)),t.time=r=>t.check(Zu(r)),t.duration=r=>t.check(Uu(r))});function _(t){return Wc(yb,t)}var he=v("ZodStringFormat",(t,e)=>{le.init(t,e),Xm.init(t,e)}),vb=v("ZodEmail",(t,e)=>{pc.init(t,e),he.init(t,e)});var Gm=v("ZodGUID",(t,e)=>{lc.init(t,e),he.init(t,e)});var Ws=v("ZodUUID",(t,e)=>{dc.init(t,e),he.init(t,e)});var xb=v("ZodURL",(t,e)=>{fc.init(t,e),he.init(t,e)});var Sb=v("ZodEmoji",(t,e)=>{mc.init(t,e),he.init(t,e)});var kb=v("ZodNanoID",(t,e)=>{hc.init(t,e),he.init(t,e)});var bb=v("ZodCUID",(t,e)=>{gc.init(t,e),he.init(t,e)});var wb=v("ZodCUID2",(t,e)=>{_c.init(t,e),he.init(t,e)});var Eb=v("ZodULID",(t,e)=>{yc.init(t,e),he.init(t,e)});var Tb=v("ZodXID",(t,e)=>{vc.init(t,e),he.init(t,e)});var $b=v("ZodKSUID",(t,e)=>{xc.init(t,e),he.init(t,e)});var Pb=v("ZodIPv4",(t,e)=>{Sc.init(t,e),he.init(t,e)});var Rb=v("ZodIPv6",(t,e)=>{kc.init(t,e),he.init(t,e)});var Ob=v("ZodCIDRv4",(t,e)=>{bc.init(t,e),he.init(t,e)});var Cb=v("ZodCIDRv6",(t,e)=>{wc.init(t,e),he.init(t,e)});var Ib=v("ZodBase64",(t,e)=>{Ec.init(t,e),he.init(t,e)});var zb=v("ZodBase64URL",(t,e)=>{Tc.init(t,e),he.init(t,e)});var Nb=v("ZodE164",(t,e)=>{$c.init(t,e),he.init(t,e)});var Ab=v("ZodJWT",(t,e)=>{Pc.init(t,e),he.init(t,e)});var Qm=v("ZodNumber",(t,e)=>{Ms.init(t,e),xe.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(yo(n,o)),t.max=(n,o)=>t.check(yo(n,o)),t.int=n=>t.check(Wm(n)),t.safe=n=>t.check(Wm(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(yo(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 te(t){return yu(Qm,t)}var jb=v("ZodNumberFormat",(t,e)=>{Rc.init(t,e),Qm.init(t,e)});function Wm(t){return vu(jb,t)}var Mb=v("ZodBoolean",(t,e)=>{Oc.init(t,e),xe.init(t,e)});function Te(t){return xu(Mb,t)}var Db=v("ZodNull",(t,e)=>{Cc.init(t,e),xe.init(t,e)});function Fu(t){return Su(Db,t)}var Lb=v("ZodUnknown",(t,e)=>{Ic.init(t,e),xe.init(t,e)});function ge(){return ku(Lb)}var Zb=v("ZodNever",(t,e)=>{zc.init(t,e),xe.init(t,e)});function Ub(t){return bu(Zb,t)}var Hb=v("ZodArray",(t,e)=>{Nc.init(t,e),xe.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(kn(r,n)),t.nonempty=r=>t.check(kn(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 G(t,e){return jm(Hb,t,e)}var eh=v("ZodObject",(t,e)=>{Ds.init(t,e),xe.init(t,e),J.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ge(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:ge()}),t.loose=()=>t.clone({...t._zod.def,catchall:ge()}),t.strict=()=>t.clone({...t._zod.def,catchall:Ub()}),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(nh,t,r[0]),t.required=(...r)=>J.required(oh,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 eh(r)}function Ue(t,e){return new eh({type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},catchall:ge(),...J.normalizeParams(e)})}var th=v("ZodUnion",(t,e)=>{Ls.init(t,e),xe.init(t,e),t.options=e.options});function de(t,e){return new th({type:"union",options:t,...J.normalizeParams(e)})}var qb=v("ZodDiscriminatedUnion",(t,e)=>{th.init(t,e),Ac.init(t,e)});function Bu(t,e,r){return new qb({type:"union",options:e,discriminator:t,...J.normalizeParams(r)})}var Fb=v("ZodIntersection",(t,e)=>{jc.init(t,e),xe.init(t,e)});function Ys(t,e){return new Fb({type:"intersection",left:t,right:e})}var Bb=v("ZodRecord",(t,e)=>{Mc.init(t,e),xe.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function _e(t,e,r){return new Bb({type:"record",keyType:t,valueType:e,...J.normalizeParams(r)})}var Hu=v("ZodEnum",(t,e)=>{Dc.init(t,e),xe.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 Hu({...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 Hu({...e,checks:[],...J.normalizeParams(o),entries:s})}});function Ge(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Hu({type:"enum",entries:r,...J.normalizeParams(e)})}var Vb=v("ZodLiteral",(t,e)=>{Lc.init(t,e),xe.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 Vb({type:"literal",values:Array.isArray(t)?t:[t],...J.normalizeParams(e)})}var Kb=v("ZodTransform",(t,e)=>{Zc.init(t,e),xe.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 rh(t){return new Kb({type:"transform",transform:t})}var nh=v("ZodOptional",(t,e)=>{Uc.init(t,e),xe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ve(t){return new nh({type:"optional",innerType:t})}var Jb=v("ZodNullable",(t,e)=>{Hc.init(t,e),xe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Ym(t){return new Jb({type:"nullable",innerType:t})}var Gb=v("ZodDefault",(t,e)=>{qc.init(t,e),xe.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Wb(t,e){return new Gb({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Yb=v("ZodPrefault",(t,e)=>{Fc.init(t,e),xe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Xb(t,e){return new Yb({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var oh=v("ZodNonOptional",(t,e)=>{Bc.init(t,e),xe.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Qb(t,e){return new oh({type:"nonoptional",innerType:t,...J.normalizeParams(e)})}var ew=v("ZodCatch",(t,e)=>{Vc.init(t,e),xe.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function tw(t,e){return new ew({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var rw=v("ZodPipe",(t,e)=>{Kc.init(t,e),xe.init(t,e),t.in=e.in,t.out=e.out});function qu(t,e){return new rw({type:"pipe",in:t,out:e})}var nw=v("ZodReadonly",(t,e)=>{Jc.init(t,e),xe.init(t,e)});function ow(t){return new nw({type:"readonly",innerType:t})}var sh=v("ZodCustom",(t,e)=>{Gc.init(t,e),xe.init(t,e)});function sw(t){let e=new Re({check:"custom"});return e._zod.check=t,e}function ih(t,e){return Nu(sh,t??(()=>!0),e)}function iw(t,e={}){return Au(sh,t,e)}function aw(t){let e=sw(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 Vu(t,e){return qu(rh(t),e)}rt(Om());var Ju="2025-11-25";var ah=[Ju,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],ur="io.modelcontextprotocol/related-task",Qs="2.0",Oe=ih(t=>t!==null&&(typeof t=="object"||typeof t=="function")),ch=de([_(),te().int()]),uh=_(),_N=Ue({ttl:de([te(),Fu()]).optional(),pollInterval:te().optional()}),cw=P({ttl:te().optional()}),uw=P({taskId:_()}),Gu=Ue({progressToken:ch.optional(),[ur]:uw.optional()}),ot=P({_meta:Gu.optional()}),ko=ot.extend({task:cw.optional()}),lh=t=>ko.safeParse(t).success,Ce=P({method:_(),params:ot.loose().optional()}),ct=P({_meta:Gu.optional()}),ut=P({method:_(),params:ct.loose().optional()}),Ie=Ue({_meta:Gu.optional()}),ei=de([_(),te().int()]),dh=P({jsonrpc:I(Qs),id:ei,...Ce.shape}).strict(),Wu=t=>dh.safeParse(t).success,ph=P({jsonrpc:I(Qs),...ut.shape}).strict(),fh=t=>ph.safeParse(t).success,Yu=P({jsonrpc:I(Qs),id:ei,result:Ie}).strict(),bo=t=>Yu.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 Xu=P({jsonrpc:I(Qs),id:ei.optional(),error:P({code:te().int(),message:_(),data:ge().optional()})}).strict();var mh=t=>Xu.safeParse(t).success;var hh=de([dh,ph,Yu,Xu]),yN=de([Yu,Xu]),ti=Ie.strict(),lw=ct.extend({requestId:ei.optional(),reason:_().optional()}),ri=ut.extend({method:I("notifications/cancelled"),params:lw}),dw=P({src:_(),mimeType:_().optional(),sizes:G(_()).optional(),theme:Ge(["light","dark"]).optional()}),wo=P({icons:G(dw).optional()}),wn=P({name:_(),title:_().optional()}),gh=wn.extend({...wn.shape,...wo.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),pw=Ys(P({applyDefaults:Te().optional()}),_e(_(),ge())),fw=Vu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,Ys(P({form:pw.optional(),url:Oe.optional()}),_e(_(),ge()).optional())),mw=Ue({list:Oe.optional(),cancel:Oe.optional(),requests:Ue({sampling:Ue({createMessage:Oe.optional()}).optional(),elicitation:Ue({create:Oe.optional()}).optional()}).optional()}),hw=Ue({list:Oe.optional(),cancel:Oe.optional(),requests:Ue({tools:Ue({call:Oe.optional()}).optional()}).optional()}),gw=P({experimental:_e(_(),Oe).optional(),sampling:P({context:Oe.optional(),tools:Oe.optional()}).optional(),elicitation:fw.optional(),roots:P({listChanged:Te().optional()}).optional(),tasks:mw.optional()}),_w=ot.extend({protocolVersion:_(),capabilities:gw,clientInfo:gh}),Qu=Ce.extend({method:I("initialize"),params:_w});var yw=P({experimental:_e(_(),Oe).optional(),logging:Oe.optional(),completions:Oe.optional(),prompts:P({listChanged:Te().optional()}).optional(),resources:P({subscribe:Te().optional(),listChanged:Te().optional()}).optional(),tools:P({listChanged:Te().optional()}).optional(),tasks:hw.optional()}),vw=Ie.extend({protocolVersion:_(),capabilities:yw,serverInfo:gh,instructions:_().optional()}),el=ut.extend({method:I("notifications/initialized"),params:ct.optional()});var ni=Ce.extend({method:I("ping"),params:ot.optional()}),xw=P({progress:te(),total:ve(te()),message:ve(_())}),Sw=P({...ct.shape,...xw.shape,progressToken:ch}),oi=ut.extend({method:I("notifications/progress"),params:Sw}),kw=ot.extend({cursor:uh.optional()}),Eo=Ce.extend({params:kw.optional()}),To=Ie.extend({nextCursor:uh.optional()}),bw=Ge(["working","input_required","completed","failed","cancelled"]),$o=P({taskId:_(),status:bw,ttl:de([te(),Fu()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:ve(te()),statusMessage:ve(_())}),En=Ie.extend({task:$o}),ww=ct.merge($o),Po=ut.extend({method:I("notifications/tasks/status"),params:ww}),si=Ce.extend({method:I("tasks/get"),params:ot.extend({taskId:_()})}),ii=Ie.merge($o),ai=Ce.extend({method:I("tasks/result"),params:ot.extend({taskId:_()})}),vN=Ie.loose(),ci=Eo.extend({method:I("tasks/list")}),ui=To.extend({tasks:G($o)}),li=Ce.extend({method:I("tasks/cancel"),params:ot.extend({taskId:_()})}),_h=Ie.merge($o),yh=P({uri:_(),mimeType:ve(_()),_meta:_e(_(),ge()).optional()}),vh=yh.extend({text:_()}),tl=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),xh=yh.extend({blob:tl}),Ro=Ge(["user","assistant"]),Tn=P({audience:G(Ro).optional(),priority:te().min(0).max(1).optional(),lastModified:xo.datetime({offset:!0}).optional()}),Sh=P({...wn.shape,...wo.shape,uri:_(),description:ve(_()),mimeType:ve(_()),annotations:Tn.optional(),_meta:ve(Ue({}))}),Ew=P({...wn.shape,...wo.shape,uriTemplate:_(),description:ve(_()),mimeType:ve(_()),annotations:Tn.optional(),_meta:ve(Ue({}))}),di=Eo.extend({method:I("resources/list")}),Tw=To.extend({resources:G(Sh)}),pi=Eo.extend({method:I("resources/templates/list")}),$w=To.extend({resourceTemplates:G(Ew)}),rl=ot.extend({uri:_()}),Pw=rl,fi=Ce.extend({method:I("resources/read"),params:Pw}),Rw=Ie.extend({contents:G(de([vh,xh]))}),Ow=ut.extend({method:I("notifications/resources/list_changed"),params:ct.optional()}),Cw=rl,Iw=Ce.extend({method:I("resources/subscribe"),params:Cw}),zw=rl,Nw=Ce.extend({method:I("resources/unsubscribe"),params:zw}),Aw=ct.extend({uri:_()}),jw=ut.extend({method:I("notifications/resources/updated"),params:Aw}),Mw=P({name:_(),description:ve(_()),required:ve(Te())}),Dw=P({...wn.shape,...wo.shape,description:ve(_()),arguments:ve(G(Mw)),_meta:ve(Ue({}))}),mi=Eo.extend({method:I("prompts/list")}),Lw=To.extend({prompts:G(Dw)}),Zw=ot.extend({name:_(),arguments:_e(_(),_()).optional()}),hi=Ce.extend({method:I("prompts/get"),params:Zw}),nl=P({type:I("text"),text:_(),annotations:Tn.optional(),_meta:_e(_(),ge()).optional()}),ol=P({type:I("image"),data:tl,mimeType:_(),annotations:Tn.optional(),_meta:_e(_(),ge()).optional()}),sl=P({type:I("audio"),data:tl,mimeType:_(),annotations:Tn.optional(),_meta:_e(_(),ge()).optional()}),Uw=P({type:I("tool_use"),name:_(),id:_(),input:_e(_(),ge()),_meta:_e(_(),ge()).optional()}),Hw=P({type:I("resource"),resource:de([vh,xh]),annotations:Tn.optional(),_meta:_e(_(),ge()).optional()}),qw=Sh.extend({type:I("resource_link")}),il=de([nl,ol,sl,qw,Hw]),Fw=P({role:Ro,content:il}),Bw=Ie.extend({description:_().optional(),messages:G(Fw)}),Vw=ut.extend({method:I("notifications/prompts/list_changed"),params:ct.optional()}),Kw=P({title:_().optional(),readOnlyHint:Te().optional(),destructiveHint:Te().optional(),idempotentHint:Te().optional(),openWorldHint:Te().optional()}),Jw=P({taskSupport:Ge(["required","optional","forbidden"]).optional()}),kh=P({...wn.shape,...wo.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:_e(_(),Oe).optional(),required:G(_()).optional()}).catchall(ge()),outputSchema:P({type:I("object"),properties:_e(_(),Oe).optional(),required:G(_()).optional()}).catchall(ge()).optional(),annotations:Kw.optional(),execution:Jw.optional(),_meta:_e(_(),ge()).optional()}),gi=Eo.extend({method:I("tools/list")}),Gw=To.extend({tools:G(kh)}),_i=Ie.extend({content:G(il).default([]),structuredContent:_e(_(),ge()).optional(),isError:Te().optional()}),xN=_i.or(Ie.extend({toolResult:ge()})),Ww=ko.extend({name:_(),arguments:_e(_(),ge()).optional()}),$n=Ce.extend({method:I("tools/call"),params:Ww}),Yw=ut.extend({method:I("notifications/tools/list_changed"),params:ct.optional()}),SN=P({autoRefresh:Te().default(!0),debounceMs:te().int().nonnegative().default(300)}),Oo=Ge(["debug","info","notice","warning","error","critical","alert","emergency"]),Xw=ot.extend({level:Oo}),al=Ce.extend({method:I("logging/setLevel"),params:Xw}),Qw=ct.extend({level:Oo,logger:_().optional(),data:ge()}),eE=ut.extend({method:I("notifications/message"),params:Qw}),tE=P({name:_().optional()}),rE=P({hints:G(tE).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),nE=P({mode:Ge(["auto","required","none"]).optional()}),oE=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:G(il).default([]),structuredContent:P({}).loose().optional(),isError:Te().optional(),_meta:_e(_(),ge()).optional()}),sE=Bu("type",[nl,ol,sl]),Xs=Bu("type",[nl,ol,sl,Uw,oE]),iE=P({role:Ro,content:de([Xs,G(Xs)]),_meta:_e(_(),ge()).optional()}),aE=ko.extend({messages:G(iE),modelPreferences:rE.optional(),systemPrompt:_().optional(),includeContext:Ge(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:G(_()).optional(),metadata:Oe.optional(),tools:G(kh).optional(),toolChoice:nE.optional()}),cE=Ce.extend({method:I("sampling/createMessage"),params:aE}),cl=Ie.extend({model:_(),stopReason:ve(Ge(["endTurn","stopSequence","maxTokens"]).or(_())),role:Ro,content:sE}),ul=Ie.extend({model:_(),stopReason:ve(Ge(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Ro,content:de([Xs,G(Xs)])}),uE=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:Te().optional()}),lE=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:te().optional(),maxLength:te().optional(),format:Ge(["email","uri","date","date-time"]).optional(),default:_().optional()}),dE=P({type:Ge(["number","integer"]),title:_().optional(),description:_().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),pE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),default:_().optional()}),fE=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:G(P({const:_(),title:_()})),default:_().optional()}),mE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),enumNames:G(_()).optional(),default:_().optional()}),hE=de([pE,fE]),gE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({type:I("string"),enum:G(_())}),default:G(_()).optional()}),_E=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({anyOf:G(P({const:_(),title:_()}))}),default:G(_()).optional()}),yE=de([gE,_E]),vE=de([mE,hE,yE]),xE=de([vE,uE,lE,dE]),SE=ko.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:_e(_(),xE),required:G(_()).optional()})}),kE=ko.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),bE=de([SE,kE]),wE=Ce.extend({method:I("elicitation/create"),params:bE}),EE=ct.extend({elicitationId:_()}),TE=ut.extend({method:I("notifications/elicitation/complete"),params:EE}),yi=Ie.extend({action:Ge(["accept","decline","cancel"]),content:Vu(t=>t===null?void 0:t,_e(_(),de([_(),te(),Te(),G(_())])).optional())}),$E=P({type:I("ref/resource"),uri:_()});var PE=P({type:I("ref/prompt"),name:_()}),RE=ot.extend({ref:de([PE,$E]),argument:P({name:_(),value:_()}),context:P({arguments:_e(_(),_()).optional()}).optional()}),vi=Ce.extend({method:I("completion/complete"),params:RE});function bh(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function wh(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var OE=Ie.extend({completion:Ue({values:G(_()).max(100),total:ve(te().int()),hasMore:ve(Te())})}),CE=P({uri:_().startsWith("file://"),name:_().optional(),_meta:_e(_(),ge()).optional()}),IE=Ce.extend({method:I("roots/list"),params:ot.optional()}),ll=Ie.extend({roots:G(CE)}),zE=ut.extend({method:I("notifications/roots/list_changed"),params:ct.optional()}),kN=de([ni,Qu,vi,al,hi,mi,di,pi,fi,Iw,Nw,$n,gi,si,ai,ci,li]),bN=de([ri,oi,el,zE,Po]),wN=de([ti,cl,ul,yi,ll,ii,ui,En]),EN=de([ni,cE,wE,IE,si,ai,ci,li]),TN=de([ri,oi,eE,jw,Ow,Yw,Vw,Po,TE]),$N=de([ti,vw,OE,Bw,Lw,Tw,$w,Rw,_i,Gw,ii,ui,En]),C=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 Ku(o.elicitations,r)}return new t(e,r,n)}},Ku=class extends C{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 Th=Symbol("Let zodToJsonSchema decide on which parser to use");var Eh={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"},$h=t=>typeof t=="string"?{...Eh,name:t}:{...Eh,...t};var Ph=t=>{let e=$h(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 dl(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function W(t,e,r,n,o){t[e]=r,dl(t,e,n,o)}var xi=(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 ye(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?xi(e,t.currentPath):e.join("/")}}function Rh(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&&W(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&W(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(W(r,"minItems",t.exactLength.value,t.exactLength.message,e),W(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Oh(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?W(r,"minimum",n.value,n.message,e):W(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),W(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?W(r,"maximum",n.value,n.message,e):W(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),W(r,"maximum",n.value,n.message,e));break;case"multipleOf":W(r,"multipleOf",n.value,n.message,e);break}return r}function Ch(){return{type:"boolean"}}function Si(t,e){return M(t.type._def,e)}var Ih=(t,e)=>M(t.innerType._def,e);function pl(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>pl(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 NE(t,e)}}var NE=(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":W(r,"minimum",n.value,n.message,e);break;case"max":W(r,"maximum",n.value,n.message,e);break}return r};function zh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function Nh(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):ye(e)}function Ah(t){return{type:"string",enum:Array.from(t.values)}}var AE=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function jh(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(AE(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 Mh(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 fl,_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:()=>(fl===void 0&&(fl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),fl),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 ki(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":W(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":He(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":He(r,n.regex,n.message,e);break;case"cuid":He(r,_t.cuid,n.message,e);break;case"cuid2":He(r,_t.cuid2,n.message,e);break;case"startsWith":He(r,RegExp(`^${ml(n.value,e)}`),n.message,e);break;case"endsWith":He(r,RegExp(`${ml(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":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),W(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{He(r,RegExp(ml(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":He(r,_t.base64url,n.message,e);break;case"jwt":He(r,_t.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&He(r,_t.ipv4Cidr,n.message,e),n.version!=="v4"&&He(r,_t.ipv6Cidr,n.message,e);break}case"emoji":He(r,_t.emoji(),n.message,e);break;case"ulid":{He(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":{W(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{He(r,_t.base64,n.message,e);break}}break}case"nanoid":He(r,_t.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function ml(t,e){return e.patternStrategy==="escape"?ME(t):t}var jE=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function ME(t){let e="";for(let r=0;r<t.length;r++)jE.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}}})):W(t,"format",e,r,n)}function He(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:Dh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):W(t,"pattern",Dh(e,n),r,n)}function Dh(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
71
+ 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 Uu(t,e){if(t instanceof vo){let n=new Xs(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 Xs(e);return r.process(t),r.emit(t,e)}function Ee(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 Ee(o.element,r);case"object":{for(let s in o.shape)if(Ee(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Ee(s,r))return!0;return!1}case"intersection":return Ee(o.left,r)||Ee(o.right,r);case"tuple":{for(let s of o.items)if(Ee(s,r))return!0;return!!(o.rest&&Ee(o.rest,r))}case"record":return Ee(o.keyType,r)||Ee(o.valueType,r);case"map":return Ee(o.keyType,r)||Ee(o.valueType,r);case"set":return Ee(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Ee(o.innerType,r);case"lazy":return Ee(o.getter(),r);case"default":return Ee(o.innerType,r);case"prefault":return Ee(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Ee(o.in,r)||Ee(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var ub=x("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");re.init(t,e),t.def=e,t.parse=(r,n)=>sc(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Fr(t,r,n),t.parseAsync=async(r,n)=>ac(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Br(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 lb=x("ZodMiniObject",(t,e)=>{Fs.init(t,e),ub.init(t,e),J.defineLazy(t,"shape",()=>e.shape)});function Hu(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new lb(r)}function at(t){return!!t._zod}function Jr(t){let e=Object.values(t);if(e.length===0)return Hu({});let r=e.every(at),n=e.every(o=>!at(o));if(r)return Hu(t);if(n)return Ba(t);throw new Error("Mixed Zod versions detected in object shape.")}function ar(t,e){return at(t)?Fr(t,e):t.safeParse(e)}async function Qs(t,e){return at(t)?await Br(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 Tn(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return Jr(t)}}if(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 ei(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 Um(t){return t.description}function Hm(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 ti(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 bo={};Be(bo,{ZodISODate:()=>Fm,ZodISODateTime:()=>qm,ZodISODuration:()=>Vm,ZodISOTime:()=>Bm,date:()=>Fu,datetime:()=>qu,duration:()=>Vu,time:()=>Bu});var qm=x("ZodISODateTime",(t,e)=>{Pm.init(t,e),he.init(t,e)});function qu(t){return Am(qm,t)}var Fm=x("ZodISODate",(t,e)=>{Rm.init(t,e),he.init(t,e)});function Fu(t){return jm(Fm,t)}var Bm=x("ZodISOTime",(t,e)=>{Om.init(t,e),he.init(t,e)});function Bu(t){return Mm(Bm,t)}var Vm=x("ZodISODuration",(t,e)=>{Cm.init(t,e),he.init(t,e)});function Vu(t){return Lm(Vm,t)}var Km=(t,e)=>{Ds.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>nc(t,r)},flatten:{value:r=>rc(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},nN=x("ZodError",Km),wo=x("ZodError",Km,{Parent:Error});var Jm=oc(wo),Gm=ic(wo),Wm=cc(wo),Ym=uc(wo);var ve=x("ZodType",(t,e)=>(re.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>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)=>Wm(t,r,n),t.parseAsync=async(r,n)=>Gm(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Ym(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(aw(r,n)),t.superRefine=r=>t.check(cw(r)),t.overwrite=r=>t.check(Vr(r)),t.optional=()=>xe(t),t.nullable=()=>eh(t),t.nullish=()=>xe(eh(t)),t.nonoptional=r=>ew(t,r),t.array=()=>G(t),t.or=r=>de([t,r]),t.and=r=>ni(t,r),t.transform=r=>Ju(t,sh(r)),t.default=r=>Yb(t,r),t.prefault=r=>Qb(t,r),t.catch=r=>rw(t,r),t.pipe=r=>Ju(t,r),t.readonly=()=>sw(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)),th=x("_ZodString",(t,e)=>{xo.init(t,e),ve.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(Ru(...n)),t.includes=(...n)=>t.check(Iu(...n)),t.startsWith=(...n)=>t.check(zu(...n)),t.endsWith=(...n)=>t.check(Nu(...n)),t.min=(...n)=>t.check(En(...n)),t.max=(...n)=>t.check(Ws(...n)),t.length=(...n)=>t.check(Ys(...n)),t.nonempty=(...n)=>t.check(En(1,...n)),t.lowercase=n=>t.check(Ou(n)),t.uppercase=n=>t.check(Cu(n)),t.trim=()=>t.check(ju()),t.normalize=(...n)=>t.check(Au(...n)),t.toLowerCase=()=>t.check(Mu()),t.toUpperCase=()=>t.check(Lu())}),xb=x("ZodString",(t,e)=>{xo.init(t,e),th.init(t,e),t.email=r=>t.check(ru(vb,r)),t.url=r=>t.check(au(Sb,r)),t.jwt=r=>t.check(ku(jb,r)),t.emoji=r=>t.check(cu(kb,r)),t.guid=r=>t.check(Vs(Xm,r)),t.uuid=r=>t.check(nu(ri,r)),t.uuidv4=r=>t.check(ou(ri,r)),t.uuidv6=r=>t.check(su(ri,r)),t.uuidv7=r=>t.check(iu(ri,r)),t.nanoid=r=>t.check(uu(bb,r)),t.guid=r=>t.check(Vs(Xm,r)),t.cuid=r=>t.check(lu(wb,r)),t.cuid2=r=>t.check(du(Eb,r)),t.ulid=r=>t.check(pu(Tb,r)),t.base64=r=>t.check(xu(zb,r)),t.base64url=r=>t.check(vu(Nb,r)),t.xid=r=>t.check(fu($b,r)),t.ksuid=r=>t.check(mu(Pb,r)),t.ipv4=r=>t.check(hu(Rb,r)),t.ipv6=r=>t.check(gu(Ob,r)),t.cidrv4=r=>t.check(_u(Cb,r)),t.cidrv6=r=>t.check(yu(Ib,r)),t.e164=r=>t.check(Su(Ab,r)),t.datetime=r=>t.check(qu(r)),t.date=r=>t.check(Fu(r)),t.time=r=>t.check(Bu(r)),t.duration=r=>t.check(Vu(r))});function _(t){return tu(xb,t)}var he=x("ZodStringFormat",(t,e)=>{le.init(t,e),th.init(t,e)}),vb=x("ZodEmail",(t,e)=>{_c.init(t,e),he.init(t,e)});var Xm=x("ZodGUID",(t,e)=>{hc.init(t,e),he.init(t,e)});var ri=x("ZodUUID",(t,e)=>{gc.init(t,e),he.init(t,e)});var Sb=x("ZodURL",(t,e)=>{yc.init(t,e),he.init(t,e)});var kb=x("ZodEmoji",(t,e)=>{xc.init(t,e),he.init(t,e)});var bb=x("ZodNanoID",(t,e)=>{vc.init(t,e),he.init(t,e)});var wb=x("ZodCUID",(t,e)=>{Sc.init(t,e),he.init(t,e)});var Eb=x("ZodCUID2",(t,e)=>{kc.init(t,e),he.init(t,e)});var Tb=x("ZodULID",(t,e)=>{bc.init(t,e),he.init(t,e)});var $b=x("ZodXID",(t,e)=>{wc.init(t,e),he.init(t,e)});var Pb=x("ZodKSUID",(t,e)=>{Ec.init(t,e),he.init(t,e)});var Rb=x("ZodIPv4",(t,e)=>{Tc.init(t,e),he.init(t,e)});var Ob=x("ZodIPv6",(t,e)=>{$c.init(t,e),he.init(t,e)});var Cb=x("ZodCIDRv4",(t,e)=>{Pc.init(t,e),he.init(t,e)});var Ib=x("ZodCIDRv6",(t,e)=>{Rc.init(t,e),he.init(t,e)});var zb=x("ZodBase64",(t,e)=>{Oc.init(t,e),he.init(t,e)});var Nb=x("ZodBase64URL",(t,e)=>{Cc.init(t,e),he.init(t,e)});var Ab=x("ZodE164",(t,e)=>{Ic.init(t,e),he.init(t,e)});var jb=x("ZodJWT",(t,e)=>{zc.init(t,e),he.init(t,e)});var rh=x("ZodNumber",(t,e)=>{qs.init(t,e),ve.init(t,e),t.gt=(n,o)=>t.check(Js(n,o)),t.gte=(n,o)=>t.check(ko(n,o)),t.min=(n,o)=>t.check(ko(n,o)),t.lt=(n,o)=>t.check(Ks(n,o)),t.lte=(n,o)=>t.check(So(n,o)),t.max=(n,o)=>t.check(So(n,o)),t.int=n=>t.check(Qm(n)),t.safe=n=>t.check(Qm(n)),t.positive=n=>t.check(Js(0,n)),t.nonnegative=n=>t.check(ko(0,n)),t.negative=n=>t.check(Ks(0,n)),t.nonpositive=n=>t.check(So(0,n)),t.multipleOf=(n,o)=>t.check(Gs(n,o)),t.step=(n,o)=>t.check(Gs(n,o)),t.finite=()=>t;let r=t._zod.bag;t.minValue=Math.max(r.minimum??Number.NEGATIVE_INFINITY,r.exclusiveMinimum??Number.NEGATIVE_INFINITY)??null,t.maxValue=Math.min(r.maximum??Number.POSITIVE_INFINITY,r.exclusiveMaximum??Number.POSITIVE_INFINITY)??null,t.isInt=(r.format??"").includes("int")||Number.isSafeInteger(r.multipleOf??.5),t.isFinite=!0,t.format=r.format??null});function te(t){return bu(rh,t)}var Mb=x("ZodNumberFormat",(t,e)=>{Nc.init(t,e),rh.init(t,e)});function Qm(t){return wu(Mb,t)}var Lb=x("ZodBoolean",(t,e)=>{Ac.init(t,e),ve.init(t,e)});function Te(t){return Eu(Lb,t)}var Db=x("ZodNull",(t,e)=>{jc.init(t,e),ve.init(t,e)});function Gu(t){return Tu(Db,t)}var Zb=x("ZodUnknown",(t,e)=>{Mc.init(t,e),ve.init(t,e)});function ge(){return $u(Zb)}var Ub=x("ZodNever",(t,e)=>{Lc.init(t,e),ve.init(t,e)});function Hb(t){return Pu(Ub,t)}var qb=x("ZodArray",(t,e)=>{Dc.init(t,e),ve.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(En(r,n)),t.nonempty=r=>t.check(En(1,r)),t.max=(r,n)=>t.check(Ws(r,n)),t.length=(r,n)=>t.check(Ys(r,n)),t.unwrap=()=>t.element});function G(t,e){return Dm(qb,t,e)}var nh=x("ZodObject",(t,e)=>{Fs.init(t,e),ve.init(t,e),J.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Ge(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:ge()}),t.loose=()=>t.clone({...t._zod.def,catchall:ge()}),t.strict=()=>t.clone({...t._zod.def,catchall:Hb()}),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(ih,t,r[0]),t.required=(...r)=>J.required(ah,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 nh(r)}function Ue(t,e){return new nh({type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},catchall:ge(),...J.normalizeParams(e)})}var oh=x("ZodUnion",(t,e)=>{Bs.init(t,e),ve.init(t,e),t.options=e.options});function de(t,e){return new oh({type:"union",options:t,...J.normalizeParams(e)})}var Fb=x("ZodDiscriminatedUnion",(t,e)=>{oh.init(t,e),Zc.init(t,e)});function Wu(t,e,r){return new Fb({type:"union",options:e,discriminator:t,...J.normalizeParams(r)})}var Bb=x("ZodIntersection",(t,e)=>{Uc.init(t,e),ve.init(t,e)});function ni(t,e){return new Bb({type:"intersection",left:t,right:e})}var Vb=x("ZodRecord",(t,e)=>{Hc.init(t,e),ve.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function _e(t,e,r){return new Vb({type:"record",keyType:t,valueType:e,...J.normalizeParams(r)})}var Ku=x("ZodEnum",(t,e)=>{qc.init(t,e),ve.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 Ku({...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 Ku({...e,checks:[],...J.normalizeParams(o),entries:s})}});function Ge(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Ku({type:"enum",entries:r,...J.normalizeParams(e)})}var Kb=x("ZodLiteral",(t,e)=>{Fc.init(t,e),ve.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 Kb({type:"literal",values:Array.isArray(t)?t:[t],...J.normalizeParams(e)})}var Jb=x("ZodTransform",(t,e)=>{Bc.init(t,e),ve.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 sh(t){return new Jb({type:"transform",transform:t})}var ih=x("ZodOptional",(t,e)=>{Vc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function xe(t){return new ih({type:"optional",innerType:t})}var Gb=x("ZodNullable",(t,e)=>{Kc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function eh(t){return new Gb({type:"nullable",innerType:t})}var Wb=x("ZodDefault",(t,e)=>{Jc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Yb(t,e){return new Wb({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var Xb=x("ZodPrefault",(t,e)=>{Gc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Qb(t,e){return new Xb({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var ah=x("ZodNonOptional",(t,e)=>{Wc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ew(t,e){return new ah({type:"nonoptional",innerType:t,...J.normalizeParams(e)})}var tw=x("ZodCatch",(t,e)=>{Yc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function rw(t,e){return new tw({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var nw=x("ZodPipe",(t,e)=>{Xc.init(t,e),ve.init(t,e),t.in=e.in,t.out=e.out});function Ju(t,e){return new nw({type:"pipe",in:t,out:e})}var ow=x("ZodReadonly",(t,e)=>{Qc.init(t,e),ve.init(t,e)});function sw(t){return new ow({type:"readonly",innerType:t})}var ch=x("ZodCustom",(t,e)=>{eu.init(t,e),ve.init(t,e)});function iw(t){let e=new Re({check:"custom"});return e._zod.check=t,e}function uh(t,e){return Du(ch,t??(()=>!0),e)}function aw(t,e={}){return Zu(ch,t,e)}function cw(t){let e=iw(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 Yu(t,e){return Ju(sh(t),e)}rt(zm());var Qu="2025-11-25";var lh=[Qu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],ur="io.modelcontextprotocol/related-task",si="2.0",Oe=uh(t=>t!==null&&(typeof t=="object"||typeof t=="function")),dh=de([_(),te().int()]),ph=_(),_N=Ue({ttl:de([te(),Gu()]).optional(),pollInterval:te().optional()}),uw=P({ttl:te().optional()}),lw=P({taskId:_()}),el=Ue({progressToken:dh.optional(),[ur]:lw.optional()}),ot=P({_meta:el.optional()}),Eo=ot.extend({task:uw.optional()}),fh=t=>Eo.safeParse(t).success,Ce=P({method:_(),params:ot.loose().optional()}),ct=P({_meta:el.optional()}),ut=P({method:_(),params:ct.loose().optional()}),Ie=Ue({_meta:el.optional()}),ii=de([_(),te().int()]),mh=P({jsonrpc:I(si),id:ii,...Ce.shape}).strict(),tl=t=>mh.safeParse(t).success,hh=P({jsonrpc:I(si),...ut.shape}).strict(),gh=t=>hh.safeParse(t).success,rl=P({jsonrpc:I(si),id:ii,result:Ie}).strict(),To=t=>rl.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 nl=P({jsonrpc:I(si),id:ii.optional(),error:P({code:te().int(),message:_(),data:ge().optional()})}).strict();var _h=t=>nl.safeParse(t).success;var yh=de([mh,hh,rl,nl]),yN=de([rl,nl]),ai=Ie.strict(),dw=ct.extend({requestId:ii.optional(),reason:_().optional()}),ci=ut.extend({method:I("notifications/cancelled"),params:dw}),pw=P({src:_(),mimeType:_().optional(),sizes:G(_()).optional(),theme:Ge(["light","dark"]).optional()}),$o=P({icons:G(pw).optional()}),$n=P({name:_(),title:_().optional()}),xh=$n.extend({...$n.shape,...$o.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),fw=ni(P({applyDefaults:Te().optional()}),_e(_(),ge())),mw=Yu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ni(P({form:fw.optional(),url:Oe.optional()}),_e(_(),ge()).optional())),hw=Ue({list:Oe.optional(),cancel:Oe.optional(),requests:Ue({sampling:Ue({createMessage:Oe.optional()}).optional(),elicitation:Ue({create:Oe.optional()}).optional()}).optional()}),gw=Ue({list:Oe.optional(),cancel:Oe.optional(),requests:Ue({tools:Ue({call:Oe.optional()}).optional()}).optional()}),_w=P({experimental:_e(_(),Oe).optional(),sampling:P({context:Oe.optional(),tools:Oe.optional()}).optional(),elicitation:mw.optional(),roots:P({listChanged:Te().optional()}).optional(),tasks:hw.optional()}),yw=ot.extend({protocolVersion:_(),capabilities:_w,clientInfo:xh}),ol=Ce.extend({method:I("initialize"),params:yw});var xw=P({experimental:_e(_(),Oe).optional(),logging:Oe.optional(),completions:Oe.optional(),prompts:P({listChanged:Te().optional()}).optional(),resources:P({subscribe:Te().optional(),listChanged:Te().optional()}).optional(),tools:P({listChanged:Te().optional()}).optional(),tasks:gw.optional()}),vw=Ie.extend({protocolVersion:_(),capabilities:xw,serverInfo:xh,instructions:_().optional()}),sl=ut.extend({method:I("notifications/initialized"),params:ct.optional()});var ui=Ce.extend({method:I("ping"),params:ot.optional()}),Sw=P({progress:te(),total:xe(te()),message:xe(_())}),kw=P({...ct.shape,...Sw.shape,progressToken:dh}),li=ut.extend({method:I("notifications/progress"),params:kw}),bw=ot.extend({cursor:ph.optional()}),Po=Ce.extend({params:bw.optional()}),Ro=Ie.extend({nextCursor:ph.optional()}),ww=Ge(["working","input_required","completed","failed","cancelled"]),Oo=P({taskId:_(),status:ww,ttl:de([te(),Gu()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:xe(te()),statusMessage:xe(_())}),Pn=Ie.extend({task:Oo}),Ew=ct.merge(Oo),Co=ut.extend({method:I("notifications/tasks/status"),params:Ew}),di=Ce.extend({method:I("tasks/get"),params:ot.extend({taskId:_()})}),pi=Ie.merge(Oo),fi=Ce.extend({method:I("tasks/result"),params:ot.extend({taskId:_()})}),xN=Ie.loose(),mi=Po.extend({method:I("tasks/list")}),hi=Ro.extend({tasks:G(Oo)}),gi=Ce.extend({method:I("tasks/cancel"),params:ot.extend({taskId:_()})}),vh=Ie.merge(Oo),Sh=P({uri:_(),mimeType:xe(_()),_meta:_e(_(),ge()).optional()}),kh=Sh.extend({text:_()}),il=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),bh=Sh.extend({blob:il}),Io=Ge(["user","assistant"]),Rn=P({audience:G(Io).optional(),priority:te().min(0).max(1).optional(),lastModified:bo.datetime({offset:!0}).optional()}),wh=P({...$n.shape,...$o.shape,uri:_(),description:xe(_()),mimeType:xe(_()),annotations:Rn.optional(),_meta:xe(Ue({}))}),Tw=P({...$n.shape,...$o.shape,uriTemplate:_(),description:xe(_()),mimeType:xe(_()),annotations:Rn.optional(),_meta:xe(Ue({}))}),_i=Po.extend({method:I("resources/list")}),$w=Ro.extend({resources:G(wh)}),yi=Po.extend({method:I("resources/templates/list")}),Pw=Ro.extend({resourceTemplates:G(Tw)}),al=ot.extend({uri:_()}),Rw=al,xi=Ce.extend({method:I("resources/read"),params:Rw}),Ow=Ie.extend({contents:G(de([kh,bh]))}),Cw=ut.extend({method:I("notifications/resources/list_changed"),params:ct.optional()}),Iw=al,zw=Ce.extend({method:I("resources/subscribe"),params:Iw}),Nw=al,Aw=Ce.extend({method:I("resources/unsubscribe"),params:Nw}),jw=ct.extend({uri:_()}),Mw=ut.extend({method:I("notifications/resources/updated"),params:jw}),Lw=P({name:_(),description:xe(_()),required:xe(Te())}),Dw=P({...$n.shape,...$o.shape,description:xe(_()),arguments:xe(G(Lw)),_meta:xe(Ue({}))}),vi=Po.extend({method:I("prompts/list")}),Zw=Ro.extend({prompts:G(Dw)}),Uw=ot.extend({name:_(),arguments:_e(_(),_()).optional()}),Si=Ce.extend({method:I("prompts/get"),params:Uw}),cl=P({type:I("text"),text:_(),annotations:Rn.optional(),_meta:_e(_(),ge()).optional()}),ul=P({type:I("image"),data:il,mimeType:_(),annotations:Rn.optional(),_meta:_e(_(),ge()).optional()}),ll=P({type:I("audio"),data:il,mimeType:_(),annotations:Rn.optional(),_meta:_e(_(),ge()).optional()}),Hw=P({type:I("tool_use"),name:_(),id:_(),input:_e(_(),ge()),_meta:_e(_(),ge()).optional()}),qw=P({type:I("resource"),resource:de([kh,bh]),annotations:Rn.optional(),_meta:_e(_(),ge()).optional()}),Fw=wh.extend({type:I("resource_link")}),dl=de([cl,ul,ll,Fw,qw]),Bw=P({role:Io,content:dl}),Vw=Ie.extend({description:_().optional(),messages:G(Bw)}),Kw=ut.extend({method:I("notifications/prompts/list_changed"),params:ct.optional()}),Jw=P({title:_().optional(),readOnlyHint:Te().optional(),destructiveHint:Te().optional(),idempotentHint:Te().optional(),openWorldHint:Te().optional()}),Gw=P({taskSupport:Ge(["required","optional","forbidden"]).optional()}),Eh=P({...$n.shape,...$o.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:_e(_(),Oe).optional(),required:G(_()).optional()}).catchall(ge()),outputSchema:P({type:I("object"),properties:_e(_(),Oe).optional(),required:G(_()).optional()}).catchall(ge()).optional(),annotations:Jw.optional(),execution:Gw.optional(),_meta:_e(_(),ge()).optional()}),ki=Po.extend({method:I("tools/list")}),Ww=Ro.extend({tools:G(Eh)}),bi=Ie.extend({content:G(dl).default([]),structuredContent:_e(_(),ge()).optional(),isError:Te().optional()}),vN=bi.or(Ie.extend({toolResult:ge()})),Yw=Eo.extend({name:_(),arguments:_e(_(),ge()).optional()}),On=Ce.extend({method:I("tools/call"),params:Yw}),Xw=ut.extend({method:I("notifications/tools/list_changed"),params:ct.optional()}),SN=P({autoRefresh:Te().default(!0),debounceMs:te().int().nonnegative().default(300)}),zo=Ge(["debug","info","notice","warning","error","critical","alert","emergency"]),Qw=ot.extend({level:zo}),pl=Ce.extend({method:I("logging/setLevel"),params:Qw}),eE=ct.extend({level:zo,logger:_().optional(),data:ge()}),tE=ut.extend({method:I("notifications/message"),params:eE}),rE=P({name:_().optional()}),nE=P({hints:G(rE).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),oE=P({mode:Ge(["auto","required","none"]).optional()}),sE=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:G(dl).default([]),structuredContent:P({}).loose().optional(),isError:Te().optional(),_meta:_e(_(),ge()).optional()}),iE=Wu("type",[cl,ul,ll]),oi=Wu("type",[cl,ul,ll,Hw,sE]),aE=P({role:Io,content:de([oi,G(oi)]),_meta:_e(_(),ge()).optional()}),cE=Eo.extend({messages:G(aE),modelPreferences:nE.optional(),systemPrompt:_().optional(),includeContext:Ge(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:G(_()).optional(),metadata:Oe.optional(),tools:G(Eh).optional(),toolChoice:oE.optional()}),uE=Ce.extend({method:I("sampling/createMessage"),params:cE}),No=Ie.extend({model:_(),stopReason:xe(Ge(["endTurn","stopSequence","maxTokens"]).or(_())),role:Io,content:iE}),fl=Ie.extend({model:_(),stopReason:xe(Ge(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Io,content:de([oi,G(oi)])}),lE=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:Te().optional()}),dE=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:te().optional(),maxLength:te().optional(),format:Ge(["email","uri","date","date-time"]).optional(),default:_().optional()}),pE=P({type:Ge(["number","integer"]),title:_().optional(),description:_().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),fE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),default:_().optional()}),mE=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:G(P({const:_(),title:_()})),default:_().optional()}),hE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),enumNames:G(_()).optional(),default:_().optional()}),gE=de([fE,mE]),_E=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({type:I("string"),enum:G(_())}),default:G(_()).optional()}),yE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({anyOf:G(P({const:_(),title:_()}))}),default:G(_()).optional()}),xE=de([_E,yE]),vE=de([hE,gE,xE]),SE=de([vE,lE,dE,pE]),kE=Eo.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:_e(_(),SE),required:G(_()).optional()})}),bE=Eo.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),wE=de([kE,bE]),EE=Ce.extend({method:I("elicitation/create"),params:wE}),TE=ct.extend({elicitationId:_()}),$E=ut.extend({method:I("notifications/elicitation/complete"),params:TE}),Cn=Ie.extend({action:Ge(["accept","decline","cancel"]),content:Yu(t=>t===null?void 0:t,_e(_(),de([_(),te(),Te(),G(_())])).optional())}),PE=P({type:I("ref/resource"),uri:_()});var RE=P({type:I("ref/prompt"),name:_()}),OE=ot.extend({ref:de([RE,PE]),argument:P({name:_(),value:_()}),context:P({arguments:_e(_(),_()).optional()}).optional()}),wi=Ce.extend({method:I("completion/complete"),params:OE});function Th(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function $h(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var CE=Ie.extend({completion:Ue({values:G(_()).max(100),total:xe(te().int()),hasMore:xe(Te())})}),IE=P({uri:_().startsWith("file://"),name:_().optional(),_meta:_e(_(),ge()).optional()}),zE=Ce.extend({method:I("roots/list"),params:ot.optional()}),ml=Ie.extend({roots:G(IE)}),NE=ut.extend({method:I("notifications/roots/list_changed"),params:ct.optional()}),kN=de([ui,ol,wi,pl,Si,vi,_i,yi,xi,zw,Aw,On,ki,di,fi,mi,gi]),bN=de([ci,li,sl,NE,Co]),wN=de([ai,No,fl,Cn,ml,pi,hi,Pn]),EN=de([ui,uE,EE,zE,di,fi,mi,gi]),TN=de([ci,li,tE,Mw,Cw,Xw,Kw,Co,$E]),$N=de([ai,vw,CE,Vw,Zw,$w,Pw,Ow,bi,Ww,pi,hi,Pn]),C=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 Xu(o.elicitations,r)}return new t(e,r,n)}},Xu=class extends C{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 Rh=Symbol("Let zodToJsonSchema decide on which parser to use");var Ph={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"},Oh=t=>typeof t=="string"?{...Ph,name:t}:{...Ph,...t};var Ch=t=>{let e=Oh(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 hl(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function W(t,e,r,n,o){t[e]=r,hl(t,e,n,o)}var Ei=(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 ye(t){if(t.target!=="openAi")return{};let e=[...t.basePath,t.definitionPath,t.openAiAnyTypeName];return t.flags.hasReferencedOpenAiAnyType=!0,{$ref:t.$refStrategy==="relative"?Ei(e,t.currentPath):e.join("/")}}function Ih(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&&W(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&W(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(W(r,"minItems",t.exactLength.value,t.exactLength.message,e),W(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function zh(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?W(r,"minimum",n.value,n.message,e):W(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),W(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?W(r,"maximum",n.value,n.message,e):W(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),W(r,"maximum",n.value,n.message,e));break;case"multipleOf":W(r,"multipleOf",n.value,n.message,e);break}return r}function Nh(){return{type:"boolean"}}function Ti(t,e){return M(t.type._def,e)}var Ah=(t,e)=>M(t.innerType._def,e);function gl(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>gl(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 AE(t,e)}}var AE=(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":W(r,"minimum",n.value,n.message,e);break;case"max":W(r,"maximum",n.value,n.message,e);break}return r};function jh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function Mh(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):ye(e)}function Lh(t){return{type:"string",enum:Array.from(t.values)}}var jE=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Dh(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(jE(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 Zh(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 _l,_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:()=>(_l===void 0&&(_l=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),_l),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 $i(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":W(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":He(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":He(r,n.regex,n.message,e);break;case"cuid":He(r,_t.cuid,n.message,e);break;case"cuid2":He(r,_t.cuid2,n.message,e);break;case"startsWith":He(r,RegExp(`^${yl(n.value,e)}`),n.message,e);break;case"endsWith":He(r,RegExp(`${yl(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":W(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),W(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{He(r,RegExp(yl(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":He(r,_t.base64url,n.message,e);break;case"jwt":He(r,_t.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&He(r,_t.ipv4Cidr,n.message,e),n.version!=="v4"&&He(r,_t.ipv6Cidr,n.message,e);break}case"emoji":He(r,_t.emoji(),n.message,e);break;case"ulid":{He(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":{W(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{He(r,_t.base64,n.message,e);break}}break}case"nanoid":He(r,_t.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function yl(t,e){return e.patternStrategy==="escape"?LE(t):t}var ME=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function LE(t){let e="";for(let r=0;r<t.length;r++)ME.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}}})):W(t,"format",e,r,n)}function He(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:Uh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):W(t,"pattern",Uh(e,n),r,n)}function Uh(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
72
72
  ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
73
73
  ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
74
74
  `:`[${n[c]}\r
75
- ]`;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 bi(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]})??ye(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}=ki(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}=Si(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Lh(t,e){if(e.mapStrategy==="record")return bi(t,e);let r=M(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||ye(e),n=M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||ye(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Zh(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 Uh(t){return t.target==="openAi"?void 0:{not:ye({...t,currentPath:[...t.currentPath,"not"]})}}function Hh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Co={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Fh(t,e){if(e.target==="openApi3")return qh(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Co&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Co[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 qh(t,e)}var qh=(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 Bh(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:Co[t.innerType._def.typeName],nullable:!0}:{type:[Co[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 Vh(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",dl(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?W(r,"minimum",n.value,n.message,e):W(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),W(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?W(r,"maximum",n.value,n.message,e):W(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),W(r,"maximum",n.value,n.message,e));break;case"multipleOf":W(r,"multipleOf",n.value,n.message,e);break}return r}function Kh(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=LE(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=DE(t,e);return i!==void 0&&(n.additionalProperties=i),n}function DE(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 LE(t){try{return t.isOptional()}catch{return!0}}var Jh=(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:ye(e)},r]}:ye(e)};var Gh=(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 Wh(t,e){return M(t.type._def,e)}function Yh(t,e){let n={type:"array",uniqueItems:!0,items:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&W(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&W(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function Xh(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 Qh(t){return{not:ye(t)}}function eg(t){return ye(t)}var tg=(t,e)=>M(t.innerType._def,e);var rg=(t,e,r)=>{switch(e){case b.ZodString:return ki(t,r);case b.ZodNumber:return Vh(t,r);case b.ZodObject:return Kh(t,r);case b.ZodBigInt:return Oh(t,r);case b.ZodBoolean:return Ch();case b.ZodDate:return pl(t,r);case b.ZodUndefined:return Qh(r);case b.ZodNull:return Hh(r);case b.ZodArray:return Rh(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return Fh(t,r);case b.ZodIntersection:return jh(t,r);case b.ZodTuple:return Xh(t,r);case b.ZodRecord:return bi(t,r);case b.ZodLiteral:return Mh(t,r);case b.ZodEnum:return Ah(t);case b.ZodNativeEnum:return Zh(t);case b.ZodNullable:return Bh(t,r);case b.ZodOptional:return Jh(t,r);case b.ZodMap:return Lh(t,r);case b.ZodSet:return Yh(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return Wh(t,r);case b.ZodNaN:case b.ZodNever:return Uh(r);case b.ZodEffects:return Nh(t,r);case b.ZodAny:return ye(r);case b.ZodUnknown:return eg(r);case b.ZodDefault:return zh(t,r);case b.ZodBranded:return Si(t,r);case b.ZodReadonly:return tg(t,r);case b.ZodCatch:return Ih(t,r);case b.ZodPipeline:return Gh(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!==Th)return a}if(n&&!r){let a=ZE(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=rg(t,t.typeName,e),i=typeof s=="function"?M(s(),e):s;if(i&&UE(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var ZE=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:xi(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`),ye(e)):e.$refStrategy==="seen"?ye(e):void 0}},UE=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var hl=(t,e)=>{let r=Ph(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)??ye(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)??ye(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 HE(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function gl(t,e){return at(t)?ju(t,{target:HE(e?.target),io:e?.pipeStrategy??"input"}):hl(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function _l(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 yl(t,e){let r=ar(t,e);if(!r.success)throw r.error;return r.data}var qE=6e4,wi=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 C(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,m=new C(d.error.code,d.error.message,d.error.data);l(m)}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 C(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(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 C(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 C(N.InvalidParams,`Task not found: ${r.params.taskId}`);if(lr(o.status))throw new C(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 C(N.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof C?o:new C(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),C.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),bo(s)||mh(s)?this._onresponse(s):Wu(s)?this._onrequest(s,i):fh(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=C.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=lh(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,m)=>{if(i.signal.aborted)throw new C(N.ConnectionClosed,"Request was cancelled");let f={...m,relatedRequestId:e.id};s&&!f.relatedTask&&(f.relatedTask={taskId:s});let p=f.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,f)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code: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.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),bo(e))n(e);else{let i=new C(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(bo(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),bo(e))o(e);else{let i=C.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 C?i:new C(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 C(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 C(N.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new C(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 C?i:new C(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=x=>{l(x)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(x){d(x);return}n?.signal?.throwIfAborted();let m=this._requestMessageId++,f={...e,jsonrpc:"2.0",id:m};n?.onprogress&&(this._progressHandlers.set(m,n.onprogress),f.params={...e.params,_meta:{...e.params?._meta||{},progressToken:m}}),a&&(f.params={...f.params,task:a}),c&&(f.params={...f.params,_meta:{...f.params?._meta||{},[ur]:c}});let p=x=>{this._responseHandlers.delete(m),this._progressHandlers.delete(m),this._cleanupTimeout(m),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:m,reason:String(x)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(w=>this._onerror(new Error(`Failed to send cancellation: ${w}`)));let S=x instanceof C?x:new C(N.RequestTimeout,String(x));l(S)};this._responseHandlers.set(m,x=>{if(!n?.signal?.aborted){if(x instanceof Error)return l(x);try{let S=ar(r,x.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??qE,g=()=>p(C.fromError(N.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(m,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let x=S=>{let w=this._responseHandlers.get(m);w?w(S):this._onerror(new Error(`Response handler missing for side-channeled request ${m}`))};this._requestResolvers.set(m,x),this._enqueueTaskMessage(y,{type:"request",message:f,timestamp:Date.now()}).catch(S=>{this._cleanupTimeout(m),l(S)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(x=>{this._cleanupTimeout(m),l(x)})})}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},_h,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=_l(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=yl(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=_l(e);this._notificationHandlers.set(n,o=>{let s=yl(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"&&Wu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new C(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 C(N.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new C(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 C(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=Po.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 C(N.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(lr(a.status))throw new C(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=Po.parse({method:"notifications/tasks/status",params:c});await this.notification(u),lr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function ng(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function og(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];ng(i)&&ng(s)?r[o]={...i,...s}:r[o]=s}return r}var Fy=lf(np(),1),By=lf(qy(),1);function NO(){let t=new Fy.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,By.default)(t),t}var ia=class{constructor(e){this._ajv=e??NO()}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 aa=class{constructor(e){this._server=e}requestStream(e,r,n){return this._server.requestStream(e,r,n)}async getTask(e,r){return this._server.getTask({taskId:e},r)}async getTaskResult(e,r,n){return this._server.getTaskResult({taskId:e},r,n)}async listTasks(e,r){return this._server.listTasks(e?{cursor:e}:void 0,r)}async cancelTask(e,r){return this._server.cancelTask({taskId:e},r)}};function Vy(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 Ky(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 ca=class extends wi{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Oo.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new ia,this.setRequestHandler(Qu,n=>this._oninitialize(n)),this.setNotificationHandler(el,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(al,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Oo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new aa(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=og(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($n,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new C(N.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,m=await Promise.resolve(r(c,u));if(d.task){let p=ar(En,m);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new C(N.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let f=ar(_i,m);if(!f.success){let p=f.error instanceof Error?f.error.message:String(f.error);throw new C(N.InvalidParams,`Invalid tools/call result: ${p}`)}return f.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){Ky(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Vy(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:ah.includes(r)?r:Ju,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},ul,r):this.request({method:"sampling/createMessage",params:e},cl,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},yi,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},yi,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new C(N.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof C?i:new C(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},ll,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 Gy=Symbol.for("mcp.completable");function dp(t){return!!t&&typeof t=="object"&&Gy in t}function Wy(t){return t[Gy]?.complete}var Jy;(function(t){t.Completable="McpCompletable"})(Jy||(Jy={}));var AO=/^[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"),!AO.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 MO(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 pp(t){let e=jO(t);return MO(t,e.warnings),e.isValid}var ua=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 la=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 ca(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new ua(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(vr(gi)),this.server.assertCanSetRequestHandler(vr($n)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(gi,()=>({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?gl(o,{strictUnions:!0,pipeStrategy:"input"}):DO})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=bn(r.outputSchema);o&&(n.outputSchema=gl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler($n,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new C(N.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new C(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 C(N.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new C(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 C&&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 C(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 C(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 C(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(m=>setTimeout(m,l));let d=await n.taskStore.getTask(c);if(!d)throw new C(N.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(vr(vi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(vi,async e=>{switch(e.params.ref.type){case"ref/prompt":return bh(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return wh(e),this.handleResourceCompletion(e,e.params.ref);default:throw new C(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 C(N.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return as;let s=cr(n.argsSchema)?.[e.params.argument.name];if(!dp(s))return as;let i=Wy(s);if(!i)return as;let a=await i(e.params.argument.value,e.params.context);return Xy(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 as;throw new C(N.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return as;let s=await o(e.params.argument.value,e.params.context);return Xy(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(vr(di)),this.server.assertCanSetRequestHandler(vr(pi)),this.server.assertCanSetRequestHandler(vr(fi)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(di,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(pi,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(fi,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new C(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 C(N.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(vr(mi)),this.server.assertCanSetRequestHandler(vr(hi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(mi,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?ZO(r.argsSchema):void 0}))})),this.server.setRequestHandler(hi,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new C(N.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new C(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 C(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 Ke?c._def?.innerType:c;return dp(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){pp(e);let l={title:r,description:n,inputSchema:Yy(o),outputSchema:Yy(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"&&pp(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];fp(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!fp(r[0])&&(i=r.shift())):typeof c=="object"&&c!==null&&(i=r.shift())}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var DO={type:"object",properties:{}};function Qy(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function LO(t){return"_def"in t||"_zod"in t||Qy(t)}function fp(t){return typeof t!="object"||t===null||LO(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(Qy)}function Yy(t){if(t)return fp(t)?Kr(t):t}function ZO(t){let e=cr(t);return e?Object.entries(e).map(([r,n])=>{let o=Dm(n),s=Lm(n);return{name:r,description:o,required:!s}}):[]}function vr(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 Xy(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var as={completion:{values:[],hasMore:!1}};import tv from"node:process";var da=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
76
- `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),UO(r)}clear(){this._buffer=void 0}};function UO(t){return hh.parse(JSON.parse(t))}function ev(t){return JSON.stringify(t)+`
77
- `}var pa=class{constructor(e=tv.stdin,r=tv.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new da,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=ev(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as Ax}from"node:module";import{createHash as jx}from"node:crypto";import{existsSync as sf,unlinkSync as oI,readdirSync as sI,readFileSync as Mx,rmSync as iI,mkdirSync as aI}from"node:fs";import{join as dn,dirname as ro,resolve as Dx}from"node:path";import{fileURLToPath as za}from"node:url";import{homedir as Na,tmpdir as cI}from"node:os";import{spawn as FO,execSync as uv}from"node:child_process";import{mkdtempSync as BO,writeFileSync as iv,rmSync as av,existsSync as cv}from"node:fs";import{join as ma,resolve as VO}from"node:path";import{tmpdir as KO}from"node:os";import{execSync as mp}from"node:child_process";import{existsSync as HO}from"node:fs";var rv=process.platform==="win32";function Ae(t){try{let e=rv?`where ${t}`:`command -v ${t}`;return mp(e,{stdio:"pipe"}),!0}catch{return!1}}function qO(){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(HO(e))return e;try{let r=mp("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 mp(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function fa(){let t=Ae("bun");return{javascript:t?"bun":"node",typescript:t?"bun":Ae("tsx")?"tsx":Ae("ts-node")?"ts-node":null,python:Ae("python3")?"python3":Ae("python")?"python":null,shell:rv?qO()??(Ae("sh")?"sh":Ae("powershell")?"powershell":"cmd.exe"):Ae("bash")?"bash":"sh",ruby:Ae("ruby")?"ruby":null,go:Ae("go")?"go":null,rust:Ae("rustc")?"rustc":null,php:Ae("php")?"php":null,perl:Ae("perl")?"perl":null,r:Ae("Rscript")?"Rscript":Ae("r")?"r":null,elixir:Ae("elixir")?"elixir":null}}function hp(){return Ae("bun")}function nv(t){let e=[],r=t.javascript==="bun";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(`
78
- `)}function ov(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 sv(t,e,r){switch(e){case"javascript":return t.javascript==="bun"?["bun","run",r]:["node",r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript==="bun"?["bun","run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}function cs(t,e){if(Buffer.byteLength(t)<=e)return t;let r=t.split(`
79
- `),n=Math.floor(e*.6),o=e-n,s=[],i=0;for(let m of r){let f=Buffer.byteLength(m)+1;if(i+f>n)break;s.push(m),i+=f}let a=[],c=0;for(let m=r.length-1;m>=s.length;m--){let f=Buffer.byteLength(r[m])+1;if(c+f>o)break;a.unshift(r[m]),c+=f}let u=r.length-s.length-a.length,l=Buffer.byteLength(t)-i-c,d=`
75
+ ]`;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 Pi(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]})??ye(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}=$i(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}=Ti(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Hh(t,e){if(e.mapStrategy==="record")return Pi(t,e);let r=M(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||ye(e),n=M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||ye(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function qh(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 Fh(t){return t.target==="openAi"?void 0:{not:ye({...t,currentPath:[...t.currentPath,"not"]})}}function Bh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Ao={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Kh(t,e){if(e.target==="openApi3")return Vh(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Ao&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Ao[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 Vh(t,e)}var Vh=(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 Jh(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:Ao[t.innerType._def.typeName],nullable:!0}:{type:[Ao[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 Gh(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",hl(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?W(r,"minimum",n.value,n.message,e):W(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),W(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?W(r,"maximum",n.value,n.message,e):W(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),W(r,"maximum",n.value,n.message,e));break;case"multipleOf":W(r,"multipleOf",n.value,n.message,e);break}return r}function Wh(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=ZE(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=DE(t,e);return i!==void 0&&(n.additionalProperties=i),n}function DE(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 ZE(t){try{return t.isOptional()}catch{return!0}}var Yh=(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:ye(e)},r]}:ye(e)};var Xh=(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 Qh(t,e){return M(t.type._def,e)}function eg(t,e){let n={type:"array",uniqueItems:!0,items:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&W(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&W(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function tg(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 rg(t){return{not:ye(t)}}function ng(t){return ye(t)}var og=(t,e)=>M(t.innerType._def,e);var sg=(t,e,r)=>{switch(e){case b.ZodString:return $i(t,r);case b.ZodNumber:return Gh(t,r);case b.ZodObject:return Wh(t,r);case b.ZodBigInt:return zh(t,r);case b.ZodBoolean:return Nh();case b.ZodDate:return gl(t,r);case b.ZodUndefined:return rg(r);case b.ZodNull:return Bh(r);case b.ZodArray:return Ih(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return Kh(t,r);case b.ZodIntersection:return Dh(t,r);case b.ZodTuple:return tg(t,r);case b.ZodRecord:return Pi(t,r);case b.ZodLiteral:return Zh(t,r);case b.ZodEnum:return Lh(t);case b.ZodNativeEnum:return qh(t);case b.ZodNullable:return Jh(t,r);case b.ZodOptional:return Yh(t,r);case b.ZodMap:return Hh(t,r);case b.ZodSet:return eg(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return Qh(t,r);case b.ZodNaN:case b.ZodNever:return Fh(r);case b.ZodEffects:return Mh(t,r);case b.ZodAny:return ye(r);case b.ZodUnknown:return ng(r);case b.ZodDefault:return jh(t,r);case b.ZodBranded:return Ti(t,r);case b.ZodReadonly:return og(t,r);case b.ZodCatch:return Ah(t,r);case b.ZodPipeline:return Xh(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!==Rh)return a}if(n&&!r){let a=UE(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=sg(t,t.typeName,e),i=typeof s=="function"?M(s(),e):s;if(i&&HE(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var UE=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:Ei(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`),ye(e)):e.$refStrategy==="seen"?ye(e):void 0}},HE=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var xl=(t,e)=>{let r=Ch(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)??ye(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)??ye(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 qE(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function vl(t,e){return at(t)?Uu(t,{target:qE(e?.target),io:e?.pipeStrategy??"input"}):xl(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Sl(t){let r=cr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ti(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function kl(t,e){let r=ar(t,e);if(!r.success)throw r.error;return r.data}var FE=6e4,Ri=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(ci,r=>{this._oncancel(r)}),this.setNotificationHandler(li,r=>{this._onprogress(r)}),this.setRequestHandler(ui,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(di,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(N.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(fi,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 C(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 C(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(mi,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 C(N.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(gi,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(N.InvalidParams,`Task not found: ${r.params.taskId}`);if(lr(o.status))throw new C(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 C(N.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof C?o:new C(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),C.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),To(s)||_h(s)?this._onresponse(s):tl(s)?this._onrequest(s,i):gh(s)?this._onnotification(s):this._onerror(new Error(`Unknown message type: ${JSON.stringify(s)}`))},await this._transport.start()}_onclose(){let e=this._responseHandlers;this._responseHandlers=new Map,this._progressHandlers.clear(),this._taskProgressTokens.clear(),this._pendingDebouncedNotifications.clear();for(let n of this._requestHandlerAbortControllers.values())n.abort();this._requestHandlerAbortControllers.clear();let r=C.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=fh(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 C(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.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),To(e))n(e);else{let i=new C(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(To(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),To(e))o(e);else{let i=C.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 C?i:new C(N.InternalError,String(i))}}return}let s;try{let i=await this.request(e,Pn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new C(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 C(N.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new C(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 C?i:new C(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=v=>{l(v)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(v){d(v);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[ur]:c}});let p=v=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String(v)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(w=>this._onerror(new Error(`Failed to send cancellation: ${w}`)));let S=v instanceof C?v:new C(N.RequestTimeout,String(v));l(S)};this._responseHandlers.set(f,v=>{if(!n?.signal?.aborted){if(v instanceof Error)return l(v);try{let S=ar(r,v.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??FE,g=()=>p(C.fromError(N.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let v=S=>{let w=this._responseHandlers.get(f);w?w(S):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,v),this._enqueueTaskMessage(y,{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(v=>{this._cleanupTimeout(f),l(v)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},pi,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},hi,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},vh,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=Sl(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=kl(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=Sl(e);this._notificationHandlers.set(n,o=>{let s=kl(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"&&tl(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new C(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 C(N.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new C(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 C(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=Co.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 C(N.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(lr(a.status))throw new C(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=Co.parse({method:"notifications/tasks/status",params:c});await this.notification(u),lr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function ig(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function ag(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];ig(i)&&ig(s)?r[o]={...i,...s}:r[o]=s}return r}var Ky=ff(ap(),1),Jy=ff(Vy(),1);function AO(){let t=new Ky.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Jy.default)(t),t}var da=class{constructor(e){this._ajv=e??AO()}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 pa=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},No,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 Gy(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 Wy(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 fa=class extends Ri{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(zo.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 da,this.setRequestHandler(ol,n=>this._oninitialize(n)),this.setNotificationHandler(sl,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(pl,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=zo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new pa(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=ag(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(On,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new C(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(Pn,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new C(N.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=ar(bi,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new C(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){Wy(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Gy(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:lh.includes(r)?r:Qu,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"},ai)}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},fl,r):this.request({method:"sampling/createMessage",params:e},No,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 C(N.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof C?i:new C(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},ml,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 Xy=Symbol.for("mcp.completable");function hp(t){return!!t&&typeof t=="object"&&Xy in t}function Qy(t){return t[Xy]?.complete}var Yy;(function(t){t.Completable="McpCompletable"})(Yy||(Yy={}));var jO=/^[A-Za-z0-9._-]{1,128}$/;function MO(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"),!jO.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 LO(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 gp(t){let e=MO(t);return LO(t,e.warnings),e.isValid}var ma=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 ha=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 fa(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new ma(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(ki)),this.server.assertCanSetRequestHandler(xr(On)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(ki,()=>({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=Tn(r.inputSchema);return o?vl(o,{strictUnions:!0,pipeStrategy:"input"}):DO})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=Tn(r.outputSchema);o&&(n.outputSchema=vl(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 C(N.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new C(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 C(N.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new C(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 C&&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=Tn(e.inputSchema)??e.inputSchema,i=await Qs(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=ei(a);throw new C(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 C(N.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=Tn(e.outputSchema),s=await Qs(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=ei(i);throw new C(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 C(N.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(xr(wi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(wi,async e=>{switch(e.params.ref.type){case"ref/prompt":return Th(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return $h(e),this.handleResourceCompletion(e,e.params.ref);default:throw new C(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 C(N.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return ds;let s=cr(n.argsSchema)?.[e.params.argument.name];if(!hp(s))return ds;let i=Qy(s);if(!i)return ds;let a=await i(e.params.argument.value,e.params.context);return tx(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 ds;throw new C(N.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return ds;let s=await o(e.params.argument.value,e.params.context);return tx(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(xr(_i)),this.server.assertCanSetRequestHandler(xr(yi)),this.server.assertCanSetRequestHandler(xr(xi)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(_i,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(yi,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(xi,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new C(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 C(N.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(xr(vi)),this.server.assertCanSetRequestHandler(xr(Si)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(vi,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?UO(r.argsSchema):void 0}))})),this.server.setRequestHandler(Si,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new C(N.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new C(N.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=Tn(n.argsSchema),s=await Qs(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=ei(c);throw new C(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:Jr(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=Jr(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Ke?c._def?.innerType:c;return hp(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){gp(e);let l={title:r,description:n,inputSchema:ex(o),outputSchema:ex(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"&&gp(d.name),delete this._registeredTools[e],d.name&&(this._registeredTools[d.name]=l)),typeof d.title<"u"&&(l.title=d.title),typeof d.description<"u"&&(l.description=d.description),typeof d.paramsSchema<"u"&&(l.inputSchema=Jr(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=Jr(d.outputSchema)),typeof d.callback<"u"&&(l.handler=d.callback),typeof d.annotations<"u"&&(l.annotations=d.annotations),typeof d._meta<"u"&&(l._meta=d._meta),typeof d.enabled<"u"&&(l.enabled=d.enabled),this.sendToolListChanged()}};return this._registeredTools[e]=l,this.setToolRequestHandlers(),this.sendToolListChanged(),l}tool(e,...r){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let n,o,s,i;if(typeof r[0]=="string"&&(n=r.shift()),r.length>1){let c=r[0];_p(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!_p(r[0])&&(i=r.shift())):typeof c=="object"&&c!==null&&(i=r.shift())}let a=r[0];return this._createRegisteredTool(e,void 0,n,o,s,i,{taskSupport:"forbidden"},void 0,a)}registerTool(e,r,n){if(this._registeredTools[e])throw new Error(`Tool ${e} is already registered`);let{title:o,description:s,inputSchema:i,outputSchema:a,annotations:c,_meta:u}=r;return this._createRegisteredTool(e,o,s,i,a,c,{taskSupport:"forbidden"},u,n)}prompt(e,...r){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let n;typeof r[0]=="string"&&(n=r.shift());let o;r.length>1&&(o=r.shift());let s=r[0],i=this._createRegisteredPrompt(e,void 0,n,o,s);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),i}registerPrompt(e,r,n){if(this._registeredPrompts[e])throw new Error(`Prompt ${e} is already registered`);let{title:o,description:s,argsSchema:i}=r,a=this._createRegisteredPrompt(e,o,s,i,n);return this.setPromptRequestHandlers(),this.sendPromptListChanged(),a}isConnected(){return this.server.transport!==void 0}async sendLoggingMessage(e,r){return this.server.sendLoggingMessage(e,r)}sendResourceListChanged(){this.isConnected()&&this.server.sendResourceListChanged()}sendToolListChanged(){this.isConnected()&&this.server.sendToolListChanged()}sendPromptListChanged(){this.isConnected()&&this.server.sendPromptListChanged()}};var DO={type:"object",properties:{}};function rx(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function ZO(t){return"_def"in t||"_zod"in t||rx(t)}function _p(t){return typeof t!="object"||t===null||ZO(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(rx)}function ex(t){if(t)return _p(t)?Jr(t):t}function UO(t){let e=cr(t);return e?Object.entries(e).map(([r,n])=>{let o=Um(n),s=Hm(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=ti(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function tx(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var ds={completion:{values:[],hasMore:!1}};import ox from"node:process";var ga=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
76
+ `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),HO(r)}clear(){this._buffer=void 0}};function HO(t){return yh.parse(JSON.parse(t))}function nx(t){return JSON.stringify(t)+`
77
+ `}var _a=class{constructor(e=ox.stdin,r=ox.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ga,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=nx(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as Lv}from"node:module";import{createHash as Dv}from"node:crypto";import{existsSync as wr,unlinkSync as sI,readdirSync as iI,readFileSync as Zv,rmSync as aI,mkdirSync as cI}from"node:fs";import{join as mn,dirname as uf,resolve as pn}from"node:path";import{fileURLToPath as uI}from"node:url";import{homedir as La,tmpdir as lI}from"node:os";import{spawn as BO,execSync as px}from"node:child_process";import{mkdtempSync as VO,writeFileSync as ux,rmSync as lx,existsSync as dx}from"node:fs";import{join as va,resolve as KO}from"node:path";import{tmpdir as JO}from"node:os";import{execSync as yp}from"node:child_process";import{existsSync as qO}from"node:fs";var sx=process.platform==="win32";function Ae(t){try{let e=sx?`where ${t}`:`command -v ${t}`;return yp(e,{stdio:"pipe"}),!0}catch{return!1}}function FO(){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(qO(e))return e;try{let r=yp("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 yp(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function ya(){let t=Ae("bun");return{javascript:t?"bun":"node",typescript:t?"bun":Ae("tsx")?"tsx":Ae("ts-node")?"ts-node":null,python:Ae("python3")?"python3":Ae("python")?"python":null,shell:sx?FO()??(Ae("sh")?"sh":Ae("powershell")?"powershell":"cmd.exe"):Ae("bash")?"bash":"sh",ruby:Ae("ruby")?"ruby":null,go:Ae("go")?"go":null,rust:Ae("rustc")?"rustc":null,php:Ae("php")?"php":null,perl:Ae("perl")?"perl":null,r:Ae("Rscript")?"Rscript":Ae("r")?"r":null,elixir:Ae("elixir")?"elixir":null}}function xa(){return Ae("bun")}function ix(t){let e=[],r=t.javascript==="bun";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(`
78
+ `)}function ax(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 cx(t,e,r){switch(e){case"javascript":return t.javascript==="bun"?["bun","run",r]:["node",r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript==="bun"?["bun","run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}function ps(t,e){if(Buffer.byteLength(t)<=e)return t;let r=t.split(`
79
+ `),n=Math.floor(e*.6),o=e-n,s=[],i=0;for(let f of r){let m=Buffer.byteLength(f)+1;if(i+m>n)break;s.push(f),i+=m}let a=[],c=0;for(let f=r.length-1;f>=s.length;f--){let m=Buffer.byteLength(r[f])+1;if(c+m>o)break;a.unshift(r[f]),c+=m}let u=r.length-s.length-a.length,l=Buffer.byteLength(t)-i-c,d=`
80
80
 
81
81
  ... [${u} lines / ${(l/1024).toFixed(1)}KB truncated \u2014 showing first ${s.length} + last ${a.length} lines] ...
82
82
 
83
83
  `;return s.join(`
84
84
  `)+d+a.join(`
85
- `)}var Et=process.platform==="win32";function gp(t){if(Et&&t.pid)try{uv(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var ha=class{#e;#t;#r;#n;#o=new Set;constructor(e){this.#e=e?.maxOutputBytes??102400,this.#t=e?.hardCapBytes??100*1024*1024,this.#r=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??fa()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(Et?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=BO(ma(KO(),"ctx-mode-"));try{let a=this.#i(i,n,r),c=sv(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#r:i,l=await this.#s(c,u,o,s);if(!l.backgrounded)try{av(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{av(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=VO(this.#r,r),a=this.#u(i,n,o);return this.execute({language:n,code:a,timeout:s})}#i(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
85
+ `)}var Et=process.platform==="win32";function xp(t){if(Et&&t.pid)try{px(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var fs=class{#e;#t;#r;#n;#o=new Set;constructor(e){this.#e=e?.maxOutputBytes??102400,this.#t=e?.hardCapBytes??100*1024*1024,this.#r=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??ya()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(Et?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=VO(va(JO(),"ctx-mode-"));try{let a=this.#i(i,n,r),c=cx(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#r:i,l=await this.#s(c,u,o,s);if(!l.backgrounded)try{lx(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{lx(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=KO(this.#r,r),a=this.#u(i,n,o);return this.execute({language:n,code:a,timeout:s})}#i(e,r,n){let o={javascript:"js",typescript:"ts",python:"py",shell:"sh",ruby:"rb",go:"go",rust:"rs",php:"php",perl:"pl",r:"R",elixir:"exs"};n==="go"&&!r.includes("package ")&&(r=`package main
86
86
 
87
87
  import "fmt"
88
88
 
@@ -90,12 +90,12 @@ func main() {
90
90
  ${r}
91
91
  }
92
92
  `),n==="php"&&!r.trimStart().startsWith("<?")&&(r=`<?php
93
- ${r}`),n==="elixir"&&cv(ma(this.#r,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(ma(this.#r,"_build/dev/lib"))}, "*/ebin"))
93
+ ${r}`),n==="elixir"&&dx(va(this.#r,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(va(this.#r,"_build/dev/lib"))}, "*/ebin"))
94
94
  |> Enum.each(&Code.prepend_path/1)
95
95
 
96
- ${r}`);let s=ma(e,`script.${o[n]}`);return n==="shell"?iv(s,r,{encoding:"utf-8",mode:448}):iv(s,r,"utf-8"),s}async#a(e,r,n){let o=Et?".exe":"",s=e.replace(/\.rs$/,"")+o;try{uv(`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:
97
- ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,n)}async#s(e,r,n,o=!1){return new Promise(s=>{let i=Et&&["tsx","ts-node","elixir"].includes(e[0]),a=e[0],c;Et&&e.length===2&&e[1]?c=[e[1].replace(/\\/g,"/")]:c=Et?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let u=FO(a,c,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(r),shell:i,detached:!Et}),l=!1,d=!1,m=setTimeout(()=>{if(l=!0,o){d=!0,u.pid&&this.#o.add(u.pid),u.unref(),u.stdout.destroy(),u.stderr.destroy();let y=Buffer.concat(f).toString("utf-8"),x=Buffer.concat(p).toString("utf-8"),S=this.#e;s({stdout:cs(y,S),stderr:cs(x,S),exitCode:0,timedOut:!0,backgrounded:!0})}else gp(u)},n),f=[],p=[],h=0,g=!1;u.stdout.on("data",y=>{h+=y.length,h<=this.#t?f.push(y):g||(g=!0,gp(u))}),u.stderr.on("data",y=>{h+=y.length,h<=this.#t?p.push(y):g||(g=!0,gp(u))}),u.on("close",y=>{if(clearTimeout(m),d)return;let x=Buffer.concat(f).toString("utf-8"),S=Buffer.concat(p).toString("utf-8");g&&(S+=`
98
- [output capped at ${(this.#t/1024/1024).toFixed(0)}MB \u2014 process killed]`);let w=this.#e,R=cs(x,w),ae=cs(S,w);s({stdout:R,stderr:ae,exitCode:l?1:y??1,timedOut:l})}),u.on("error",y=>{clearTimeout(m),!d&&s({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#c(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",Et&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Et?"":"/usr/local/bin:/usr/bin:/bin"),Et){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=Et?[]:["/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(cv(i)){o.SSL_CERT_FILE=i;break}}return o}#u(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
96
+ ${r}`);let s=va(e,`script.${o[n]}`);return n==="shell"?ux(s,r,{encoding:"utf-8",mode:448}):ux(s,r,"utf-8"),s}async#a(e,r,n){let o=Et?".exe":"",s=e.replace(/\.rs$/,"")+o;try{px(`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:
97
+ ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,n)}async#s(e,r,n,o=!1){return new Promise(s=>{let i=Et&&["tsx","ts-node","elixir"].includes(e[0]),a=e[0],c;Et&&e.length===2&&e[1]?c=[e[1].replace(/\\/g,"/")]:c=Et?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let u=BO(a,c,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(r),shell:i,detached:!Et}),l=!1,d=!1,f=setTimeout(()=>{if(l=!0,o){d=!0,u.pid&&this.#o.add(u.pid),u.unref(),u.stdout.destroy(),u.stderr.destroy();let y=Buffer.concat(m).toString("utf-8"),v=Buffer.concat(p).toString("utf-8"),S=this.#e;s({stdout:ps(y,S),stderr:ps(v,S),exitCode:0,timedOut:!0,backgrounded:!0})}else xp(u)},n),m=[],p=[],h=0,g=!1;u.stdout.on("data",y=>{h+=y.length,h<=this.#t?m.push(y):g||(g=!0,xp(u))}),u.stderr.on("data",y=>{h+=y.length,h<=this.#t?p.push(y):g||(g=!0,xp(u))}),u.on("close",y=>{if(clearTimeout(f),d)return;let v=Buffer.concat(m).toString("utf-8"),S=Buffer.concat(p).toString("utf-8");g&&(S+=`
98
+ [output capped at ${(this.#t/1024/1024).toFixed(0)}MB \u2014 process killed]`);let w=this.#e,R=ps(v,w),ae=ps(S,w);s({stdout:R,stderr:ae,exitCode:l?1:y??1,timedOut:l})}),u.on("error",y=>{clearTimeout(f),!d&&s({stdout:"",stderr:y.message,exitCode:1,timedOut:!1})})})}#c(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",Et&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Et?"":"/usr/local/bin:/usr/bin:/bin"),Et){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=Et?[]:["/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(dx(i)){o.SSL_CERT_FILE=i;break}}return o}#u(e,r,n){let o=JSON.stringify(e);switch(r){case"javascript":case"typescript":return`const FILE_CONTENT_PATH = ${o};
99
99
  const file_path = FILE_CONTENT_PATH;
100
100
  const FILE_CONTENT = require("fs").readFileSync(FILE_CONTENT_PATH, "utf-8");
101
101
  ${n}`;case"python":return`FILE_CONTENT_PATH = ${o}
@@ -150,7 +150,7 @@ FILE_CONTENT <- paste(FILE_CONTENT, collapse="\\n")
150
150
  ${n}`;case"elixir":return`file_content_path = ${o}
151
151
  file_path = file_content_path
152
152
  file_content = File.read!(file_content_path)
153
- ${n}`}}};import{createRequire as JO}from"node:module";var _p=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()}},ga=null;function _a(){if(!ga){let t=JO(import.meta.url);try{ga=t("better-sqlite3")}catch{if(!globalThis.Bun)throw new Error("better-sqlite3 failed to load and Bun runtime not detected");let e=["bun","sqlite"].join(":"),r=t(e).Database;ga=function(o,s){let i=new r(o,{readonly:s?.readonly,create:!0});return new _p(i)}}}return ga}function lv(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}function dv(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}import{readFileSync as GO,readdirSync as mv,unlinkSync as yp,existsSync as WO,statSync as hv}from"node:fs";import{tmpdir as gv}from"node:os";import{join as vp}from"node:path";var pv=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 YO(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 XO(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 QO(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 eC(t){return t<=4?1:t<=12?2:3}var fv=4096;function xp(){let t=gv(),e=0;try{let r=mv(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=vp(t,n);for(let a of["","-wal","-shm"])try{yp(i+a)}catch{}e++}}}catch{}return e}function _v(t,e){let r=0;try{if(!WO(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=mv(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=vp(t,s);if(hv(i).mtimeMs<n){for(let c of["","-wal","-shm"])try{yp(i+c)}catch{}r++}}catch{}}catch{}return r}function tC(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function rC(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 ya=class{#e;#t;#r;#n;#o;#i;#a;#s;#c;#u;#d;#p;#f;#m;#h;#g;#_;#y;#v;#x;#S;#k;#b;#w;#E;constructor(e){let r=_a();this.#t=e??vp(gv(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),lv(this.#e),this.#R(),this.#O()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{yp(this.#t+e)}catch{}}#R(){this.#e.exec(`
153
+ ${n}`}}};import{createRequire as GO}from"node:module";var vp=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()}},Sa=null;function ms(){if(!Sa){let t=GO(import.meta.url);try{let e=t("better-sqlite3");if(!e||typeof e!="function")throw new Error("better-sqlite3 loaded but not usable (Bun compatibility issue)");Sa=e}catch{if(!globalThis.Bun)throw new Error("better-sqlite3 failed to load and Bun runtime not detected");let e=["bun","sqlite"].join(":"),r=t(e).Database;Sa=function(o,s){let i=new r(o,{readonly:s?.readonly,create:!0});return new vp(i)}}}return Sa}function fx(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}function mx(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}import{readFileSync as WO,readdirSync as _x,unlinkSync as Sp,existsSync as YO,statSync as yx}from"node:fs";import{tmpdir as xx}from"node:os";import{join as kp}from"node:path";var hx=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 XO(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 QO(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 eC(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 tC(t){return t<=4?1:t<=12?2:3}var gx=4096;function bp(){let t=xx(),e=0;try{let r=_x(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=kp(t,n);for(let a of["","-wal","-shm"])try{Sp(i+a)}catch{}e++}}}catch{}return e}function vx(t,e){let r=0;try{if(!YO(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=_x(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=kp(t,s);if(yx(i).mtimeMs<n){for(let c of["","-wal","-shm"])try{Sp(i+c)}catch{}r++}}catch{}}catch{}return r}function rC(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function nC(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 ka=class{#e;#t;#r;#n;#o;#i;#a;#s;#c;#u;#d;#p;#f;#m;#h;#g;#_;#y;#x;#v;#S;#k;#b;#w;#E;constructor(e){let r=ms();this.#t=e??kp(xx(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),fx(this.#e),this.#R(),this.#O()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{Sp(this.#t+e)}catch{}}#R(){this.#e.exec(`
154
154
  CREATE TABLE IF NOT EXISTS sources (
155
155
  id INTEGER PRIMARY KEY AUTOINCREMENT,
156
156
  label TEXT NOT NULL,
@@ -269,7 +269,7 @@ ${n}`}}};import{createRequire as JO}from"node:module";var _p=class{#e;constructo
269
269
  WHERE chunks_trigram MATCH ? AND chunks_trigram.content_type = ?
270
270
  ORDER BY rank
271
271
  LIMIT ?
272
- `),this.#v=this.#e.prepare(`
272
+ `),this.#x=this.#e.prepare(`
273
273
  SELECT
274
274
  chunks_trigram.title,
275
275
  chunks_trigram.content,
@@ -282,7 +282,7 @@ ${n}`}}};import{createRequire as JO}from"node:module";var _p=class{#e;constructo
282
282
  WHERE chunks_trigram MATCH ? AND sources.label LIKE ? AND chunks_trigram.content_type = ?
283
283
  ORDER BY rank
284
284
  LIMIT ?
285
- `),this.#h=this.#e.prepare("SELECT word FROM vocabulary WHERE length(word) BETWEEN ? AND ?"),this.#x=this.#e.prepare("SELECT label, chunk_count as chunkCount FROM sources ORDER BY id DESC"),this.#S=this.#e.prepare(`SELECT c.title, c.content, c.content_type, s.label
285
+ `),this.#h=this.#e.prepare("SELECT word FROM vocabulary WHERE length(word) BETWEEN ? AND ?"),this.#v=this.#e.prepare("SELECT label, chunk_count as chunkCount FROM sources ORDER BY id DESC"),this.#S=this.#e.prepare(`SELECT c.title, c.content, c.content_type, s.label
286
286
  FROM chunks c
287
287
  JOIN sources s ON s.id = c.source_id
288
288
  WHERE c.source_id = ?
@@ -291,31 +291,31 @@ ${n}`}}};import{createRequire as JO}from"node:module";var _p=class{#e;constructo
291
291
  (SELECT COUNT(*) FROM sources) AS sources,
292
292
  (SELECT COUNT(*) FROM chunks) AS chunks,
293
293
  (SELECT COUNT(*) FROM chunks WHERE content_type = 'code') AS codeChunks
294
- `)}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??GO(n,"utf-8"),i=o??n??"untitled",a=this.#I(s);return this.#l(a,i,s)}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#z(e,n);return this.#l(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=fv){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.#P(o,[],s,n),s.length===0?this.indexPlainText(e,r):this.#l(s,r,e)}#l(e,r,n){let o=e.filter(a=>a.hasCode).length,i=this.#e.transaction(()=>{if(this.#s.run(r),this.#c.run(r),this.#u.run(r),e.length===0){let u=this.#r.run(r);return Number(u.lastInsertRowid)}let a=this.#n.run(r,e.length,o),c=Number(a.lastInsertRowid);for(let u of e){let l=u.hasCode?"code":"prose";this.#o.run(u.title,u.content,c,l),this.#i.run(u.title,u.content,c,l)}return c})();return n&&this.#C(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}search(e,r=3,n,o="AND",s){let i=YO(e,o),a,c;return n&&s?(a=this.#_,c=[i,`%${n}%`,s,r]):n?(a=this.#p,c=[i,`%${n}%`,r]):s?(a=this.#g,c=[i,s,r]):(a=this.#d,c=[i,r]),a.all(...c).map(l=>({title:l.title,content:l.content,source:l.label,rank:l.rank,contentType:l.content_type,highlighted:l.highlighted}))}searchTrigram(e,r=3,n,o="AND",s){let i=XO(e,o);if(!i)return[];let a,c;return n&&s?(a=this.#v,c=[i,`%${n}%`,s,r]):n?(a=this.#m,c=[i,`%${n}%`,r]):s?(a=this.#y,c=[i,s,r]):(a=this.#f,c=[i,r]),a.all(...c).map(l=>({title:l.title,content:l.content,source:l.label,rank:l.rank,contentType:l.content_type,highlighted:l.highlighted}))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=eC(r.length),o=this.#h.all(r.length-n,r.length+n),s=null,i=n+1;for(let{word:a}of o){if(a===r)return null;let c=QO(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}#T(e,r,n,o){let i=Math.max(r*2,10),a=this.search(e,i,n,"OR",o),c=this.searchTrigram(e,i,n,"OR",o),u=new Map,l=d=>`${d.source}::${d.title}`;for(let[d,m]of a.entries()){let f=l(m),p=u.get(f);p?p.score+=1/(60+d+1):u.set(f,{result:m,score:1/(60+d+1)})}for(let[d,m]of c.entries()){let f=l(m),p=u.get(f);p?p.score+=1/(60+d+1):u.set(f,{result:m,score:1/(60+d+1)})}return Array.from(u.values()).sort((d,m)=>m.score-d.score).slice(0,r).map(({result:d,score:m})=>({...d,rank:-m}))}#$(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=>tC(s,u));if(i.some(u=>u.length===0))return{result:o,boost:0};let c=1/(1+rC(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){let s=this.#T(e,r,n,o);if(s.length>0)return this.#$(s,e).map(d=>({...d,matchLayer:"rrf"}));let i=e.toLowerCase().trim().split(/\s+/).filter(l=>l.length>=3),a=i.join(" "),u=i.map(l=>this.fuzzyCorrect(l)??l).join(" ");if(u!==a){let l=this.#T(u,r,n,o);if(l.length>0)return this.#$(l,u).map(m=>({...m,matchLayer:"rrf-fuzzy"}))}return[]}getSourceMeta(e){let r=this.#E.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at}:null}listSources(){return this.#x.all()}getChunksBySource(e){return this.#S.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.#k.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.#b.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(m=>m.length>=3&&!pv.has(m)));for(let m of d)a.set(m,(a.get(m)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let m=Math.log(o/d),f=Math.min(l.length/20,.5),p=/[_]/.test(l),h=l.length>=12,g=p?1.5:h?.8:0;return{word:l,score:m+f+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#w.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 hv(this.#t).size}catch{return 0}}close(){dv(this.#e)}#C(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!pv.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#a.run(o)})()}#I(e,r=fv){let n=[],o=e.split(`
294
+ `)}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??WO(n,"utf-8"),i=o??n??"untitled",a=this.#I(s);return this.#l(a,i,s)}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#z(e,n);return this.#l(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=gx){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.#P(o,[],s,n),s.length===0?this.indexPlainText(e,r):this.#l(s,r,e)}#l(e,r,n){let o=e.filter(a=>a.hasCode).length,i=this.#e.transaction(()=>{if(this.#s.run(r),this.#c.run(r),this.#u.run(r),e.length===0){let u=this.#r.run(r);return Number(u.lastInsertRowid)}let a=this.#n.run(r,e.length,o),c=Number(a.lastInsertRowid);for(let u of e){let l=u.hasCode?"code":"prose";this.#o.run(u.title,u.content,c,l),this.#i.run(u.title,u.content,c,l)}return c})();return n&&this.#C(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}search(e,r=3,n,o="AND",s){let i=XO(e,o),a,c;return n&&s?(a=this.#_,c=[i,`%${n}%`,s,r]):n?(a=this.#p,c=[i,`%${n}%`,r]):s?(a=this.#g,c=[i,s,r]):(a=this.#d,c=[i,r]),a.all(...c).map(l=>({title:l.title,content:l.content,source:l.label,rank:l.rank,contentType:l.content_type,highlighted:l.highlighted}))}searchTrigram(e,r=3,n,o="AND",s){let i=QO(e,o);if(!i)return[];let a,c;return n&&s?(a=this.#x,c=[i,`%${n}%`,s,r]):n?(a=this.#m,c=[i,`%${n}%`,r]):s?(a=this.#y,c=[i,s,r]):(a=this.#f,c=[i,r]),a.all(...c).map(l=>({title:l.title,content:l.content,source:l.label,rank:l.rank,contentType:l.content_type,highlighted:l.highlighted}))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=tC(r.length),o=this.#h.all(r.length-n,r.length+n),s=null,i=n+1;for(let{word:a}of o){if(a===r)return null;let c=eC(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}#T(e,r,n,o){let i=Math.max(r*2,10),a=this.search(e,i,n,"OR",o),c=this.searchTrigram(e,i,n,"OR",o),u=new Map,l=d=>`${d.source}::${d.title}`;for(let[d,f]of a.entries()){let m=l(f),p=u.get(m);p?p.score+=1/(60+d+1):u.set(m,{result:f,score:1/(60+d+1)})}for(let[d,f]of c.entries()){let m=l(f),p=u.get(m);p?p.score+=1/(60+d+1):u.set(m,{result:f,score:1/(60+d+1)})}return Array.from(u.values()).sort((d,f)=>f.score-d.score).slice(0,r).map(({result:d,score:f})=>({...d,rank:-f}))}#$(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=>rC(s,u));if(i.some(u=>u.length===0))return{result:o,boost:0};let c=1/(1+nC(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){let s=this.#T(e,r,n,o);if(s.length>0)return this.#$(s,e).map(d=>({...d,matchLayer:"rrf"}));let i=e.toLowerCase().trim().split(/\s+/).filter(l=>l.length>=3),a=i.join(" "),u=i.map(l=>this.fuzzyCorrect(l)??l).join(" ");if(u!==a){let l=this.#T(u,r,n,o);if(l.length>0)return this.#$(l,u).map(f=>({...f,matchLayer:"rrf-fuzzy"}))}return[]}getSourceMeta(e){let r=this.#E.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at}:null}listSources(){return this.#v.all()}getChunksBySource(e){return this.#S.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.#k.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.#b.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!hx.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.#w.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 yx(this.#t).size}catch{return 0}}close(){mx(this.#e)}#C(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!hx.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#a.run(o)})()}#I(e,r=gx){let n=[],o=e.split(`
295
295
  `),s=[],i=[],a="",c=()=>{let l=i.join(`
296
- `).trim();if(l.length===0)return;let d=this.#M(s,a),m=i.some(y=>/^`{3,}/.test(y));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:m}),i=[];return}let f=l.split(/\n\n+/),p=[],h=1,g=()=>{if(p.length===0)return;let y=p.join(`
296
+ `).trim();if(l.length===0)return;let d=this.#M(s,a),f=i.some(y=>/^`{3,}/.test(y));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 y=p.join(`
297
297
 
298
- `).trim();if(y.length===0)return;let x=f.length>1?`${d} (${h})`:d;h++,n.push({title:x,content:y,hasCode:y.includes("```")}),p=[]};for(let y of f){p.push(y);let x=p.join(`
298
+ `).trim();if(y.length===0)return;let v=m.length>1?`${d} (${h})`:d;h++,n.push({title:v,content:y,hasCode:y.includes("```")}),p=[]};for(let y of m){p.push(y);let v=p.join(`
299
299
 
300
- `);Buffer.byteLength(x)>r&&p.length>1&&(p.pop(),g(),p=[y])}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 f=d[1].length,p=d[2].trim();for(;s.length>0&&s[s.length-1].level>=f;)s.pop();s.push({level:f,text:p}),a=p,i.push(l),u++;continue}let m=l.match(/^(`{3,})(.*)?$/);if(m){let f=m[1],p=[l];for(u++;u<o.length;){if(p.push(o[u]),o[u].startsWith(f)&&o[u].trim()===f){u++;break}u++}i.push(...p);continue}i.push(l),u++}return c(),n}#z(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(`
300
+ `);Buffer.byteLength(v)>r&&p.length>1&&(p.pop(),g(),p=[y])}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}#z(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(`
301
301
  `)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
302
- `);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),m=u[0]?.trim().slice(0,80);s.push({title:m||`Lines ${l}-${d}`,content:u.join(`
303
- `)})}return s}#P(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.#P(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#j(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#N(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}#A(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])}`}#j(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#N(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#A(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)}#M(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as vv}from"node:fs";import{resolve as Bn}from"node:path";import{homedir as xv}from"node:os";function Sv(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function nC(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function oC(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function yv(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function sC(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=oC(o),a=yv(s);r=`^${i}(\\s${a})?$`}else r=`^${yv(t)}$`;return new RegExp(r,e?"i":"")}function iC(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 aC(t,e,r=!1){for(let n of e){let o=Sv(n);if(o&&sC(o,r).test(t))return n}return null}function cC(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 Sp(t){let e;try{e=vv(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"&&Sv(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function kp(t,e){let r=[];if(t){let s=Bn(t,".claude","settings.local.json"),i=Sp(s);i&&r.push(i);let a=Bn(t,".claude","settings.json"),c=Sp(a);c&&r.push(c)}let n=e??Bn(xv(),".claude","settings.json"),o=Sp(n);return o&&r.push(o),r}function kv(t,e,r){let n=[],o=a=>{let c;try{c=vv(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 m of l){if(typeof m!="string")continue;let f=nC(m);f&&f.tool===t&&d.push(f.glob)}return d};if(e){let a=o(Bn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Bn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Bn(xv(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function bp(t,e,r=process.platform==="win32"){let n=cC(t);for(let o of n)for(let s of e){let i=aC(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function bv(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(iC(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var uC={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 lC(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 wv(t,e){let r=uC[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(...lC(t)),n}function wp(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}
302
+ `);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(`
303
+ `)})}return s}#P(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.#P(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#j(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#N(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}#A(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])}`}#j(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#N(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#A(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)}#M(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as kx}from"node:fs";import{resolve as Gn}from"node:path";import{homedir as bx}from"node:os";function wx(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function oC(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function sC(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function Sx(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function iC(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=sC(o),a=Sx(s);r=`^${i}(\\s${a})?$`}else r=`^${Sx(t)}$`;return new RegExp(r,e?"i":"")}function aC(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 cC(t,e,r=!1){for(let n of e){let o=wx(n);if(o&&iC(o,r).test(t))return n}return null}function uC(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 wp(t){let e;try{e=kx(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"&&wx(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function Ep(t,e){let r=[];if(t){let s=Gn(t,".claude","settings.local.json"),i=wp(s);i&&r.push(i);let a=Gn(t,".claude","settings.json"),c=wp(a);c&&r.push(c)}let n=e??Gn(bx(),".claude","settings.json"),o=wp(n);return o&&r.push(o),r}function Ex(t,e,r){let n=[],o=a=>{let c;try{c=kx(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=oC(f);m&&m.tool===t&&d.push(m.glob)}return d};if(e){let a=o(Gn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Gn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Gn(bx(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function Tp(t,e,r=process.platform==="win32"){let n=uC(t);for(let o of n)for(let s of e){let i=cC(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function Tx(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(aC(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var lC={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 dC(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 $x(t,e){let r=lC[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(...dC(t)),n}function $p(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}
304
304
 
305
305
  stdout:
306
306
  ${n}
307
307
 
308
308
  stderr:
309
- ${o}`}}var dC=process.ppid;function pC(){let t=process.ppid;return!(t!==dC||t===0||t===1)}function Ev(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??pC,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 fC}from"node:crypto";import{execFileSync as mC}from"node:child_process";function Tv(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=mC("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`__${fC("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var uI=ro(za(import.meta.url)),Lx=(()=>{for(let t of["../package.json","./package.json"]){let e=Dx(uI,t);if(sf(e))try{return JSON.parse(Mx(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
309
+ ${o}`}}var pC=process.ppid;function fC(){let t=process.ppid;return!(t!==pC||t===0||t===1)}function Px(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??fC,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 mC}from"node:crypto";import{execFileSync as hC}from"node:child_process";function Rx(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=hC("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`__${mC("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var fn=uf(uI(import.meta.url)),lf=(()=>{for(let t of["../package.json","./package.json"]){let e=pn(fn,t);if(wr(e))try{return JSON.parse(Zv(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
310
310
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
311
- `)});var af=fa(),lI=ov(af),$t=new la({name:"context-mode",version:Lx}),ks=new ha({runtimes:af,projectRoot:process.env.CLAUDE_PROJECT_DIR}),ln=null;function dI(t){try{let e=dn(Na(),".claude","context-mode","sessions");if(!sf(e))return;let r=sI(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=dn(e,n);try{t.index({path:o,source:"session-events"}),oI(o)}catch{}}}catch{}}function pI(){let e=(process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.OPENCLAW_PROJECT_DIR||process.cwd()).replace(/\\/g,"/"),r=jx("sha256").update(e).digest("hex").slice(0,16),n=dn(Na(),".context-mode","content");return aI(n,{recursive:!0}),dn(n,`${r}.db`)}function no(){if(!ln){let t=pI();ln=new ya(t);try{let e=dn(Na(),".context-mode","content");_v(e,14),ln.cleanupStaleSources(14)}catch{}xp()}return dI(ln),ln}var ie={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()};function K(t,e){let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return ie.calls[t]=(ie.calls[t]||0)+1,ie.bytesReturned[t]=(ie.bytesReturned[t]||0)+r,e}function wr(t){ie.bytesIndexed+=t}function cf(t,e){try{let r=kp(process.env.CLAUDE_PROJECT_DIR),n=bp(t,r);if(n.decision==="deny")return K(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Zx(t,e,r){try{let n=wv(t,e);if(n.length===0)return null;let o=kp(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=bp(s,o);if(i.decision==="deny")return K(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 fI(t,e){try{let r=kv("Read",process.env.CLAUDE_PROJECT_DIR),n=bv(t,r);if(n.denied)return K(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}var mI=lI.join(", "),hI=hp()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",gI="",_I="";function yI(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===gI){for(e.push(r),n++;n<t.length&&t[n]!==_I;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Ux(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of yI(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 m=l.indexOf(d);for(;m!==-1;)o.push(m),m=l.indexOf(d,m+1)}}if(o.length===0)return t.slice(0,r)+`
311
+ `)});var Da=ya(),Aa=ax(Da),$t=new ha({name:"context-mode",version:lf}),Ps=new fs({runtimes:Da,projectRoot:process.env.CLAUDE_PROJECT_DIR}),dn=null;function dI(t){try{let e=mn(La(),".claude","context-mode","sessions");if(!wr(e))return;let r=iI(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=mn(e,n);try{t.index({path:o,source:"session-events"}),sI(o)}catch{}}}catch{}}function pI(){let e=(process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.OPENCLAW_HOME||process.cwd()).replace(/\\/g,"/"),r=Dv("sha256").update(e).digest("hex").slice(0,16),n=mn(La(),".context-mode","content");return cI(n,{recursive:!0}),mn(n,`${r}.db`)}function io(){if(!dn){let t=pI();dn=new ka(t);try{let e=mn(La(),".context-mode","content");vx(e,14),dn.cleanupStaleSources(14)}catch{}bp()}return dI(dn),dn}var ie={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()};function V(t,e){let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return ie.calls[t]=(ie.calls[t]||0)+1,ie.bytesReturned[t]=(ie.bytesReturned[t]||0)+r,e}function Er(t){ie.bytesIndexed+=t}function df(t,e){try{let r=Ep(process.env.CLAUDE_PROJECT_DIR),n=Tp(t,r);if(n.decision==="deny")return V(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function Uv(t,e,r){try{let n=$x(t,e);if(n.length===0)return null;let o=Ep(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=Tp(s,o);if(i.decision==="deny")return V(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 fI(t,e){try{let r=Ex("Read",process.env.CLAUDE_PROJECT_DIR),n=Tx(t,r);if(n.denied)return V(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}var mI=Aa.join(", "),hI=xa()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",gI="",_I="";function yI(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===gI){for(e.push(r),n++;n<t.length&&t[n]!==_I;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Hv(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of yI(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)+`
312
312
  \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(`
313
313
 
314
314
  `)}$t.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.${hI} Available: ${mI}.
315
315
 
316
- 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'.
316
+ 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:D.object({language:D.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:D.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:D.number().optional().default(3e4).describe("Max execution time in ms"),background:D.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:D.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'.
317
317
 
318
- 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=cf(e,"execute");if(s)return s}else{let s=Zx(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
318
+ 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=df(e,"execute");if(s)return s}else{let s=Uv(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
319
319
  let __cm_net=0;
320
320
  // Report network bytes on process exit \u2014 works with both promise and callback patterns.
321
321
  // process.on('exit') fires after all I/O completes, unlike .finally() which fires
@@ -361,20 +361,20 @@ ${e}
361
361
  }
362
362
  __cm_main().catch(e=>{console.error(e);process.exitCode=1});${n?`
363
363
  setInterval(()=>{},2147483647);`:""}
364
- })(typeof require!=='undefined'?require:null);`);let i=await ks.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);if(a&&(ie.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?K("ctx_execute",{content:[{type:"text",text:`${u}
364
+ })(typeof require!=='undefined'?require:null);`);let i=await Ps.execute({language:t,code:s,timeout:r,background:n}),a=i.stderr?.match(/__CM_NET__:(\d+)/);if(a&&(ie.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?V("ctx_execute",{content:[{type:"text",text:`${u}
365
365
 
366
- _(process backgrounded after ${r}ms \u2014 still running)_`}]}):u?K("ctx_execute",{content:[{type:"text",text:`${u}
366
+ _(process backgrounded after ${r}ms \u2014 still running)_`}]}):u?V("ctx_execute",{content:[{type:"text",text:`${u}
367
367
 
368
- _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):K("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
368
+ _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):V("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
369
369
 
370
370
  stderr:
371
- ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:u,output:l}=wp({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(l)>Ca?(wr(Buffer.byteLength(l)),K("ctx_execute",{content:[{type:"text",text:Ia(l,o,u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):K("ctx_execute",{content:[{type:"text",text:l}],isError:u})}let c=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(c)>Ca?(wr(Buffer.byteLength(c)),K("ctx_execute",{content:[{type:"text",text:Ia(c,o,`execute:${t}`)}]})):K("ctx_execute",{content:[{type:"text",text:c}]})}catch(s){let i=s instanceof Error?s.message:String(s);return K("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});var Ca=5e3;function Ia(t,e,r,n=5){let o=t.split(`
372
- `).length,s=Buffer.byteLength(t),i=no(),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(`
373
- `)}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 m=d.content.split(`
374
- `)[0].slice(0,120);l.push(` - ${d.title}: ${m}`)}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(`
371
+ ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:u,output:l}=$p({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(l)>ja?(Er(Buffer.byteLength(l)),V("ctx_execute",{content:[{type:"text",text:Ma(l,o,u?`execute:${t}:error`:`execute:${t}`)}],isError:u})):V("ctx_execute",{content:[{type:"text",text:l}],isError:u})}let c=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(c)>ja?(Er(Buffer.byteLength(c)),V("ctx_execute",{content:[{type:"text",text:Ma(c,o,`execute:${t}`)}]})):V("ctx_execute",{content:[{type:"text",text:c}]})}catch(s){let i=s instanceof Error?s.message:String(s);return V("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});var ja=5e3;function Ma(t,e,r,n=5){let o=t.split(`
372
+ `).length,s=Buffer.byteLength(t),i=io(),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(`
373
+ `)}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(`
374
+ `)[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(`
375
375
  `)}$t.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.
376
376
 
377
- 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=fI(t,"execute_file");if(s)return s;if(e==="shell"){let i=cf(r,"execute_file");if(i)return i}else{let i=Zx(r,e,"execute_file");if(i)return i}try{let i=await ks.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return K("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}=wp({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>Ca?(wr(Buffer.byteLength(u)),K("ctx_execute_file",{content:[{type:"text",text:Ia(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):K("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)>Ca?(wr(Buffer.byteLength(a)),K("ctx_execute_file",{content:[{type:"text",text:Ia(a,o,`file:${t}`)}]})):K("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return K("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});$t.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.
377
+ 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:D.object({path:D.string().describe("Absolute file path or relative to project root"),language:D.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:D.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:D.number().optional().default(3e4).describe("Max execution time in ms"),intent:D.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=fI(t,"execute_file");if(s)return s;if(e==="shell"){let i=df(r,"execute_file");if(i)return i}else{let i=Uv(r,e,"execute_file");if(i)return i}try{let i=await Ps.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return V("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}=$p({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>ja?(Er(Buffer.byteLength(u)),V("ctx_execute_file",{content:[{type:"text",text:Ma(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):V("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)>ja?(Er(Buffer.byteLength(a)),V("ctx_execute_file",{content:[{type:"text",text:Ma(a,o,`file:${t}`)}]})):V("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return V("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});$t.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.
378
378
 
379
379
  WHEN TO USE:
380
380
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -385,27 +385,34 @@ WHEN TO USE:
385
385
  - Any content with code examples you may need to reference precisely
386
386
 
387
387
  After indexing, use 'search' to retrieve specific sections on-demand.
388
- 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 K("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)wr(Buffer.byteLength(t));else if(e)try{let s=await import("fs");wr(s.readFileSync(e).byteLength)}catch{}let o=no().index({content:t,path:e,source:r});return K("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
389
- 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 K("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});var un=0,rf=Date.now(),vI=6e4,zx=3,Nx=8;function uf(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function xI(t){let e=uf(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}$t.registerTool("ctx_search",{title:"Search Indexed Content",description:`Search indexed content. Pass ALL search questions as queries array in ONE call.
388
+ Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:D.object({content:D.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:D.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:D.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 V("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)Er(Buffer.byteLength(t));else if(e)try{let s=await import("fs");Er(s.readFileSync(e).byteLength)}catch{}let o=io().index({content:t,path:e,source:r});return V("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
389
+ 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 V("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});var ln=0,sf=Date.now(),xI=6e4,jv=3,Mv=8;function pf(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function vI(t){let e=pf(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}$t.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.
390
390
 
391
- TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:L.object({queries:L.preprocess(uf,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=no(),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 K("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-rf>vI&&(un=0,rf=a),un++,un>Nx)return K("ctx_search",{content:[{type:"text",text:`BLOCKED: ${un} search calls in ${Math.round((a-rf)/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=un>zx?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let f of n){if(l>u){d.push(`## ${f}
391
+ TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:D.object({queries:D.preprocess(pf,D.array(D.string()).optional().describe("Array of search queries. Batch ALL questions in one call.")),limit:D.number().optional().default(3).describe("Results per query (default: 3)"),source:D.string().optional().describe("Filter to a specific indexed source (partial match)."),contentType:D.enum(["code","prose"]).optional().describe("Filter results by content type: 'code' or 'prose'.")})},async t=>{try{let e=io();if(e.getStats().chunks===0)return V("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
392
+
393
+ ctx_search is a follow-up tool that queries previously indexed content. To gather and index content first, use:
394
+ \u2022 ctx_batch_execute(commands, queries) \u2014 run commands, auto-index output, and search in one call
395
+ \u2022 ctx_fetch_and_index(url) \u2014 fetch a URL, index it, then search with ctx_search
396
+ \u2022 ctx_index(content, source) \u2014 manually index text content
397
+
398
+ 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 V("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-sf>xI&&(ln=0,sf=a),ln++,ln>Mv)return V("ctx_search",{content:[{type:"text",text:`BLOCKED: ${ln} search calls in ${Math.round((a-sf)/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>jv?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let m of n){if(l>u){d.push(`## ${m}
392
399
  (output cap reached)
393
- `);continue}let p=e.searchWithFallback(f,c,s,i);if(p.length===0){d.push(`## ${f}
394
- No results found.`);continue}let h=p.map((g,y)=>{let x=`--- [${g.source}] ---`,S=`### ${g.title}`,w=Ux(g.content,f,1500,g.highlighted);return`${x}
400
+ `);continue}let p=e.searchWithFallback(m,c,s,i);if(p.length===0){d.push(`## ${m}
401
+ No results found.`);continue}let h=p.map((g,y)=>{let v=`--- [${g.source}] ---`,S=`### ${g.title}`,w=Hv(g.content,m,1500,g.highlighted);return`${v}
395
402
  ${S}
396
403
 
397
404
  ${w}`}).join(`
398
405
 
399
- `);d.push(`## ${f}
406
+ `);d.push(`## ${m}
400
407
 
401
- ${h}`),l+=h.length}let m=d.join(`
408
+ ${h}`),l+=h.length}let f=d.join(`
402
409
 
403
410
  ---
404
411
 
405
- `);if(un>=zx&&(m+=`
412
+ `);if(ln>=jv&&(f+=`
406
413
 
407
- \u26A0 search call #${un}/${Nx} in this window. Results limited to ${c}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),m.trim().length===0){let f=e.listSources(),p=f.length>0?`
408
- Indexed sources: ${f.map(h=>`"${h.label}" (${h.chunkCount} sections)`).join(", ")}`:"";return K("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return K("ctx_search",{content:[{type:"text",text:m}]})}catch(e){let r=e instanceof Error?e.message:String(e);return K("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});var nf=null,of=null;function SI(){return nf||(nf=Ax(import.meta.url).resolve("turndown")),nf}function kI(){return of||(of=Ax(import.meta.url).resolve("turndown-plugin-gfm")),of}function bI(t,e){let r=JSON.stringify(SI()),n=JSON.stringify(kI()),o=JSON.stringify(e);return`
414
+ \u26A0 search call #${ln}/${Mv} 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?`
415
+ Indexed sources: ${m.map(h=>`"${h.label}" (${h.chunkCount} sections)`).join(", ")}`:"";return V("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return V("ctx_search",{content:[{type:"text",text:f}]})}catch(e){let r=e instanceof Error?e.message:String(e);return V("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});var af=null,cf=null;function SI(){return af||(af=Lv(import.meta.url).resolve("turndown")),af}function kI(){return cf||(cf=Lv(import.meta.url).resolve("turndown-plugin-gfm")),cf}function bI(t,e){let r=JSON.stringify(SI()),n=JSON.stringify(kI()),o=JSON.stringify(e);return`
409
416
  const TurndownService = require(${r});
410
417
  const { gfm } = require(${n});
411
418
  const fs = require('fs');
@@ -455,22 +462,22 @@ main();
455
462
 
456
463
  Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
457
464
 
458
- 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=no(),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)),m=l>0?`${l}h ago`:d>0?`${d}m ago`:"just now",f=i.chunkCount*1600;return ie.cacheHits++,ie.cacheBytesSaved+=f,K("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${m} (fresh, TTL: 24h).
465
+ Content-type aware: HTML is converted to markdown, JSON is chunked by key paths, plain text is indexed directly.`,inputSchema:D.object({url:D.string().describe("The URL to fetch and index"),source:D.string().optional().describe("Label for the indexed content (e.g., 'React useEffect docs', 'Supabase Auth API')"),force:D.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=io(),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 ie.cacheHits++,ie.cacheBytesSaved+=m,V("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${f} (fresh, TTL: 24h).
459
466
  To refresh: call ctx_fetch_and_index again with \`force: true\`.
460
467
 
461
468
  You MUST call search() to answer questions about this content \u2014 this cached response contains no content.
462
- Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=dn(cI(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=bI(t,n),s=await ks.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return K("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=no(),a=(s.stdout||"").trim(),c;try{c=Mx(n,"utf-8").trim()}catch{return K("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return K("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});wr(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)+`
469
+ Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=mn(lI(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=bI(t,n),s=await Ps.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return V("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=io(),a=(s.stdout||"").trim(),c;try{c=Zv(n,"utf-8").trim()}catch{return V("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return V("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});Er(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)+`
463
470
 
464
- \u2026[truncated \u2014 use search() for full content]`:c,m=(Buffer.byteLength(c)/1024).toFixed(1),f=[`Fetched and indexed **${u.totalChunks} sections** (${m}KB) from: ${u.label}`,`Full content indexed in sandbox \u2014 use search(queries: [...], source: "${u.label}") for specific lookups.`,"","---","",d].join(`
465
- `);return K("ctx_fetch_and_index",{content:[{type:"text",text:f}]})}catch(o){let s=o instanceof Error?o.message:String(o);return K("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{iI(n)}catch{}}});$t.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.
471
+ \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(`
472
+ `);return V("ctx_fetch_and_index",{content:[{type:"text",text:m}]})}catch(o){let s=o instanceof Error?o.message:String(o);return V("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{aI(n)}catch{}}});$t.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.
466
473
 
467
474
  THIS IS THE PRIMARY TOOL. Use this instead of multiple execute() calls.
468
475
 
469
476
  One batch_execute call replaces 30+ execute calls + 10+ search calls.
470
- Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:L.object({commands:L.preprocess(xI,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(uf,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=cf(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1;for(let w of t){let R=Date.now()-o,ae=r-R;if(ae<=0){n.push(`# ${w.label}
477
+ Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:D.object({commands:D.preprocess(vI,D.array(D.object({label:D.string().describe("Section header for this command's output (e.g., 'README', 'Package.json', 'Source Tree')"),command:D.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:D.preprocess(pf,D.array(D.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:D.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=df(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1;for(let w of t){let R=Date.now()-o,ae=r-R;if(ae<=0){n.push(`# ${w.label}
471
478
 
472
479
  (skipped \u2014 batch timeout exceeded)
473
- `),s=!0;continue}let ce=await ks.execute({language:"shell",code:`${w.command} 2>&1`,timeout:ae}),tt=ce.stdout||"(no output)";if(n.push(`# ${w.label}
480
+ `),s=!0;continue}let ce=await Ps.execute({language:"shell",code:`${w.command} 2>&1`,timeout:ae}),tt=ce.stdout||"(no output)";if(n.push(`# ${w.label}
474
481
 
475
482
  ${tt}
476
483
  `),ce.timedOut){s=!0;let Zt=t.indexOf(w);for(let me=Zt+1;me<t.length;me++)n.push(`# ${t[me].label}
@@ -478,13 +485,14 @@ ${tt}
478
485
  (skipped \u2014 batch timeout exceeded)
479
486
  `);break}}let i=n.join(`
480
487
  `),a=Buffer.byteLength(i),c=i.split(`
481
- `).length;if(s&&n.length===0)return K("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});wr(a);let u=no(),l=`batch:${t.map(w=>w.label).join(",").slice(0,80)}`,d=u.index({content:i,source:l}),m=u.getChunksBySource(d.sourceId),f=["## Indexed Sections",""],p=[];for(let w of m){let R=Buffer.byteLength(w.content);f.push(`- ${w.title} (${(R/1024).toFixed(1)}KB)`),p.push(w.title)}let h=80*1024,g=[],y=0;for(let w of e){if(y>h){g.push(`## ${w}
488
+ `).length;if(s&&n.length===0)return V("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});Er(a);let u=io(),l=`batch:${t.map(w=>w.label).join(",").slice(0,80)}`,d=u.index({content:i,source:l}),f=u.getChunksBySource(d.sourceId),m=["## Indexed Sections",""],p=[];for(let w of f){let R=Buffer.byteLength(w.content);m.push(`- ${w.title} (${(R/1024).toFixed(1)}KB)`),p.push(w.title)}let h=80*1024,g=[],y=0;for(let w of e){if(y>h){g.push(`## ${w}
482
489
  (output cap reached \u2014 use search(queries: ["${w}"]) for details)
483
- `);continue}let R=u.searchWithFallback(w,3,l),ae=!1;if(R.length===0&&(R=u.searchWithFallback(w,3),ae=R.length>0),g.push(`## ${w}`),ae&&g.push("> **Note:** No results in current batch output. Showing results from previously indexed content."),g.push(""),R.length>0)for(let ce of R){let tt=Ux(ce.content,w,3e3,ce.highlighted),Zt=ae?` _(source: ${ce.source})_`:"";g.push(`### ${ce.title}${Zt}`),g.push(tt),g.push(""),y+=tt.length+ce.title.length}else g.push("No matching sections found."),g.push("")}let x=u.getDistinctiveTerms?u.getDistinctiveTerms(d.sourceId):[],S=[`Executed ${t.length} commands (${c} lines, ${(a/1024).toFixed(1)}KB). Indexed ${d.totalChunks} sections. Searched ${e.length} queries.`,"",...f,"",...g,x.length>0?`
484
- Searchable terms for follow-up: ${x.join(", ")}`:""].join(`
485
- `);return K("ctx_batch_execute",{content:[{type:"text",text:S}]})}catch(n){let o=n instanceof Error?n.message:String(n);return K("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});$t.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({})},async()=>{let t=Object.values(ie.bytesReturned).reduce((d,m)=>d+m,0),e=Object.values(ie.calls).reduce((d,m)=>d+m,0),n=((Date.now()-ie.sessionStart)/6e4).toFixed(1),o=ie.bytesIndexed+ie.bytesSandboxed,s=o+t,i=s/Math.max(t,1),a=s>0?((1-t/s)*100).toFixed(0):"0",c=d=>d>=1024*1024?`${(d/1024/1024).toFixed(1)}MB`:`${(d/1024).toFixed(1)}KB`,u=[`## context-mode \u2014 Session Report (${n} min)`];if(u.push("","### Context Window Protection",""),e===0)u.push("No context-mode tool calls yet. Use `batch_execute`, `execute`, or `fetch_and_index` to keep raw output out of your context window.");else{u.push("| Metric | Value |","|--------|------:|",`| Total data processed | **${c(s)}** |`,`| Kept in sandbox (never entered context) | **${c(o)}** |`,`| Entered context | ${c(t)} |`,`| Estimated tokens saved | ~${Math.round(o/4).toLocaleString()} |`,`| **Context savings** | **${i.toFixed(1)}x (${a}% reduction)** |`);let d=new Set([...Object.keys(ie.calls),...Object.keys(ie.bytesReturned)]);if(d.size>0){u.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let m of Array.from(d).sort()){let f=ie.calls[m]||0,p=ie.bytesReturned[m]||0,h=Math.round(p/4);u.push(`| ${m} | ${f} | ${c(p)} | ~${h.toLocaleString()} |`)}u.push(`| **Total** | **${e}** | **${c(t)}** | **~${Math.round(t/4).toLocaleString()}** |`)}if(o>0&&u.push("",`Without context-mode, **${c(s)}** of raw output would flood your context window. Instead, **${a}%** stayed in sandbox.`),ie.cacheHits>0||ie.cacheBytesSaved>0){let m=s+ie.cacheBytesSaved,f=m/Math.max(t,1),p=Math.max(0,24-Math.floor((Date.now()-ie.sessionStart)/(3600*1e3)));u.push("","### TTL Cache","","| Metric | Value |","|--------|------:|",`| Cache hits | **${ie.cacheHits}** |`,`| Data avoided by cache | **${c(ie.cacheBytesSaved)}** |`,`| Network requests saved | **${ie.cacheHits}** |`,`| TTL remaining | **~${p}h** |`,"",`Content was already indexed in the knowledge base \u2014 ${ie.cacheHits} fetch${ie.cacheHits>1?"es":""} skipped entirely. **${c(ie.cacheBytesSaved)}** of network I/O avoided. Search results served directly from local FTS5 index.`),f>i&&u.push("",`**Total context savings (sandbox + cache): ${f.toFixed(1)}x** \u2014 ${c(m)} processed, only ${c(t)} entered context.`)}}try{let d=process.env.CLAUDE_PROJECT_DIR||process.cwd(),m=jx("sha256").update(d).digest("hex").slice(0,16),f=Tv(),p=dn(Na(),".claude","context-mode","sessions",`${m}${f}.db`);if(sf(p)){let h=_a(),g=new h(p,{readonly:!0}),y=g.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),x=g.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),S=g.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),w=g.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(y.cnt>0){let R=S?.compact_count??0,ae=g.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),ce=new Map;for(let me of ae){ce.has(me.category)||ce.set(me.category,new Set);let er=ce.get(me.category);if(er.size<5){let Ze=me.data;me.category==="file"?Ze=me.data.split("/").pop()||me.data:me.category==="prompt"&&(Ze=Ze.length>50?Ze.slice(0,47)+"...":Ze),Ze.length>40&&(Ze=Ze.slice(0,37)+"..."),er.add(Ze)}}let tt={file:"Files tracked",rule:"Project rules (CLAUDE.md)",prompt:"Your requests saved",mcp:"Plugin tools used",git:"Git operations",env:"Environment setup",error:"Errors caught",task:"Tasks in progress",decision:"Your decisions",cwd:"Working directory",skill:"Skills used",subagent:"Delegated work",intent:"Session mode",data:"Data references",role:"Behavioral directives"},Zt={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won't ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"};u.push("","### Session Continuity","","| What's preserved | Count | I remember... | Why it matters |","|------------------|------:|---------------|----------------|");for(let me of x){let er=tt[me.category]||me.category,Ze=ce.get(me.category),bs=Ze?Array.from(Ze).join(", "):"",Aa=Zt[me.category]||"Survives context resets";u.push(`| ${er} | ${me.cnt} | ${bs} | ${Aa} |`)}u.push(`| **Total** | **${y.cnt}** | | **Zero knowledge lost on compact** |`),u.push(""),R>0?u.push(`Context has been compacted **${R} time(s)** \u2014 session knowledge was preserved each time.`):u.push("When your context compacts, all of this will restore Claude's awareness \u2014 no starting from scratch."),w&&!w.consumed&&u.push(`Resume snapshot ready (${w.event_count} events) for the next compaction.`),u.push(""),u.push("> **Note:** Previous session data is loaded when you start a new session. Without `--continue`, old session history is cleaned up to keep the database lean.")}g.close()}}catch{}u.push("","---","_Display this entire report as-is in your response. Do NOT summarize, collapse, or paraphrase any section._");let l=u.join(`
486
- `);return K("ctx_stats",{content:[{type:"text",text:l}]})});$t.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a markdown checklist.",inputSchema:L.object({})},async()=>{let r=["## ctx-doctor","","Run this command using your shell execution tool:","","```",`node "${ro(ro(za(import.meta.url)))}/build/cli.js" doctor`,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for PASS, `[ ]` for FAIL, `[-]` for WARN","- Example format:"," ```"," ## context-mode doctor"," - [x] Runtimes: 6/10 (javascript, typescript, python, shell, ruby, perl)"," - [x] Performance: FAST (Bun)"," - [x] Server test: PASS"," - [x] Hooks: PASS"," - [x] FTS5: PASS"," - [x] npm: v0.9.23"," ```"].join(`
487
- `);return K("ctx_doctor",{content:[{type:"text",text:r}]})});$t.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 r=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",`node "${ro(ro(za(import.meta.url)))}/build/cli.js" upgrade`,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for success, `[ ]` for failure","- Example format:"," ```"," ## context-mode upgrade"," - [x] Pulled latest from GitHub"," - [x] Built and installed v0.9.24"," - [x] npm global updated"," - [x] Hooks configured"," - [x] Doctor: all checks PASS"," ```","- Tell the user to restart their session to pick up the new version."].join(`
488
- `);return K("ctx_upgrade",{content:[{type:"text",text:r}]})});async function wI(){let t=xp();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{ks.cleanupBackgrounded(),ln&&ln.close()},r=async()=>{e(),process.exit(0)};process.on("exit",e),process.on("SIGINT",()=>{r()}),process.on("SIGTERM",()=>{r()}),Ev({onShutdown:()=>r()});let n=new pa;await $t.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>(Ix(),Cx)),i=$t.server.getClientVersion(),a=o(i??void 0),c=await s(a.platform);if(i&&console.error(`MCP client: ${i.name} v${i.version} \u2192 ${a.platform}`),!c.capabilities.sessionStart){let u=Dx(ro(za(import.meta.url)),".."),l=process.env.CLAUDE_PROJECT_DIR??process.env.CODEX_HOME??process.cwd(),d=c.writeRoutingInstructions(l,u);d&&console.error(`Wrote routing instructions: ${d}`)}}catch{}console.error(`Context Mode MCP server v${Lx} running on stdio`),console.error(`Detected runtimes:
489
- ${nv(af)}`),hp()||(console.error(`
490
- Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}wI().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{Ux as extractSnippet,yI as positionsFromHighlight};
490
+ `);continue}let R=u.searchWithFallback(w,3,l),ae=!1;if(R.length===0&&(R=u.searchWithFallback(w,3),ae=R.length>0),g.push(`## ${w}`),ae&&g.push("> **Note:** No results in current batch output. Showing results from previously indexed content."),g.push(""),R.length>0)for(let ce of R){let tt=Hv(ce.content,w,3e3,ce.highlighted),Zt=ae?` _(source: ${ce.source})_`:"";g.push(`### ${ce.title}${Zt}`),g.push(tt),g.push(""),y+=tt.length+ce.title.length}else g.push("No matching sections found."),g.push("")}let v=u.getDistinctiveTerms?u.getDistinctiveTerms(d.sourceId):[],S=[`Executed ${t.length} commands (${c} lines, ${(a/1024).toFixed(1)}KB). Indexed ${d.totalChunks} sections. Searched ${e.length} queries.`,"",...m,"",...g,v.length>0?`
491
+ Searchable terms for follow-up: ${v.join(", ")}`:""].join(`
492
+ `);return V("ctx_batch_execute",{content:[{type:"text",text:S}]})}catch(n){let o=n instanceof Error?n.message:String(n);return V("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});$t.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:D.object({})},async()=>{let t=Object.values(ie.bytesReturned).reduce((d,f)=>d+f,0),e=Object.values(ie.calls).reduce((d,f)=>d+f,0),n=((Date.now()-ie.sessionStart)/6e4).toFixed(1),o=ie.bytesIndexed+ie.bytesSandboxed,s=o+t,i=s/Math.max(t,1),a=s>0?((1-t/s)*100).toFixed(0):"0",c=d=>d>=1024*1024?`${(d/1024/1024).toFixed(1)}MB`:`${(d/1024).toFixed(1)}KB`,u=[`## context-mode \u2014 Session Report (${n} min)`];if(u.push("","### Context Window Protection",""),e===0)u.push("No context-mode tool calls yet. Use `batch_execute`, `execute`, or `fetch_and_index` to keep raw output out of your context window.");else{u.push("| Metric | Value |","|--------|------:|",`| Total data processed | **${c(s)}** |`,`| Kept in sandbox (never entered context) | **${c(o)}** |`,`| Entered context | ${c(t)} |`,`| Estimated tokens saved | ~${Math.round(o/4).toLocaleString()} |`,`| **Context savings** | **${i.toFixed(1)}x (${a}% reduction)** |`);let d=new Set([...Object.keys(ie.calls),...Object.keys(ie.bytesReturned)]);if(d.size>0){u.push("","| Tool | Calls | Context | Tokens |","|------|------:|--------:|-------:|");for(let f of Array.from(d).sort()){let m=ie.calls[f]||0,p=ie.bytesReturned[f]||0,h=Math.round(p/4);u.push(`| ${f} | ${m} | ${c(p)} | ~${h.toLocaleString()} |`)}u.push(`| **Total** | **${e}** | **${c(t)}** | **~${Math.round(t/4).toLocaleString()}** |`)}if(o>0&&u.push("",`Without context-mode, **${c(s)}** of raw output would flood your context window. Instead, **${a}%** stayed in sandbox.`),ie.cacheHits>0||ie.cacheBytesSaved>0){let f=s+ie.cacheBytesSaved,m=f/Math.max(t,1),p=Math.max(0,24-Math.floor((Date.now()-ie.sessionStart)/(3600*1e3)));u.push("","### TTL Cache","","| Metric | Value |","|--------|------:|",`| Cache hits | **${ie.cacheHits}** |`,`| Data avoided by cache | **${c(ie.cacheBytesSaved)}** |`,`| Network requests saved | **${ie.cacheHits}** |`,`| TTL remaining | **~${p}h** |`,"",`Content was already indexed in the knowledge base \u2014 ${ie.cacheHits} fetch${ie.cacheHits>1?"es":""} skipped entirely. **${c(ie.cacheBytesSaved)}** of network I/O avoided. Search results served directly from local FTS5 index.`),m>i&&u.push("",`**Total context savings (sandbox + cache): ${m.toFixed(1)}x** \u2014 ${c(f)} processed, only ${c(t)} entered context.`)}}try{let d=process.env.CLAUDE_PROJECT_DIR||process.cwd(),f=Dv("sha256").update(d).digest("hex").slice(0,16),m=Rx(),p=mn(La(),".claude","context-mode","sessions",`${f}${m}.db`);if(wr(p)){let h=ms(),g=new h(p,{readonly:!0}),y=g.prepare("SELECT COUNT(*) as cnt FROM session_events").get(),v=g.prepare("SELECT category, COUNT(*) as cnt FROM session_events GROUP BY category ORDER BY cnt DESC").all(),S=g.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),w=g.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(y.cnt>0){let R=S?.compact_count??0,ae=g.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),ce=new Map;for(let me of ae){ce.has(me.category)||ce.set(me.category,new Set);let er=ce.get(me.category);if(er.size<5){let Ze=me.data;me.category==="file"?Ze=me.data.split("/").pop()||me.data:me.category==="prompt"&&(Ze=Ze.length>50?Ze.slice(0,47)+"...":Ze),Ze.length>40&&(Ze=Ze.slice(0,37)+"..."),er.add(Ze)}}let tt={file:"Files tracked",rule:"Project rules (CLAUDE.md)",prompt:"Your requests saved",mcp:"Plugin tools used",git:"Git operations",env:"Environment setup",error:"Errors caught",task:"Tasks in progress",decision:"Your decisions",cwd:"Working directory",skill:"Skills used",subagent:"Delegated work",intent:"Session mode",data:"Data references",role:"Behavioral directives"},Zt={file:"Restored after compact \u2014 no need to re-read",rule:"Your project instructions survive context resets",prompt:"Continues exactly where you left off",decision:"Applied automatically \u2014 won't ask again",task:"Picks up from where it stopped",error:"Tracked and monitored across compacts",git:"Branch, commit, and repo state preserved",env:"Runtime config carried forward",mcp:"Tool usage patterns remembered",subagent:"Delegation history preserved",skill:"Skill invocations tracked"};u.push("","### Session Continuity","","| What's preserved | Count | I remember... | Why it matters |","|------------------|------:|---------------|----------------|");for(let me of v){let er=tt[me.category]||me.category,Ze=ce.get(me.category),Rs=Ze?Array.from(Ze).join(", "):"",Za=Zt[me.category]||"Survives context resets";u.push(`| ${er} | ${me.cnt} | ${Rs} | ${Za} |`)}u.push(`| **Total** | **${y.cnt}** | | **Zero knowledge lost on compact** |`),u.push(""),R>0?u.push(`Context has been compacted **${R} time(s)** \u2014 session knowledge was preserved each time.`):u.push("When your context compacts, all of this will restore Claude's awareness \u2014 no starting from scratch."),w&&!w.consumed&&u.push(`Resume snapshot ready (${w.event_count} events) for the next compaction.`),u.push(""),u.push("> **Note:** Previous session data is loaded when you start a new session. Without `--continue`, old session history is cleaned up to keep the database lean.")}g.close()}}catch{}u.push("","---","_Display this entire report as-is in your response. Do NOT summarize, collapse, or paraphrase any section._");let l=u.join(`
493
+ `);return V("ctx_stats",{content:[{type:"text",text:l}]})});$t.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:D.object({})},async()=>{let t=["## context-mode doctor",""],e=wr(pn(fn,"package.json"))?fn:uf(fn),r=11,n=(Aa.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${Aa.length}/${r} (${n}%) \u2014 ${Aa.join(", ")}`),xa()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");try{let i=await new fs({runtimes:Da}).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=ms(),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=pn(e,"hooks","pretooluse.mjs");return wr(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${lf}`),V("ctx_doctor",{content:[{type:"text",text:t.join(`
494
+ `)}]})});$t.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:D.object({})},async()=>{let t=wr(pn(fn,"package.json"))?fn:uf(fn),e=pn(t,"cli.bundle.mjs"),r=pn(t,"build","cli.js"),n;if(wr(e))n=`node "${e}" upgrade`;else if(wr(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{execSync}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)");',`execSync("git clone --depth 1 ${s} \\""+T+"\\"",{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execSync("npm install",{cwd:T,stdio:"inherit"});','execSync("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");','execSync("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(`
495
+ `),u=pn(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(`
496
+ `);return V("ctx_upgrade",{content:[{type:"text",text:o}]})});async function wI(){let t=bp();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{Ps.cleanupBackgrounded(),dn&&dn.close()},r=async()=>{e(),process.exit(0)};process.on("exit",e),process.on("SIGINT",()=>{r()}),process.on("SIGTERM",()=>{r()}),Px({onShutdown:()=>r()});let n=new _a;await $t.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>(Av(),Nv)),i=$t.server.getClientVersion(),a=o(i??void 0),c=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${lf} running on stdio`),console.error(`Detected runtimes:
497
+ ${ix(Da)}`),xa()||(console.error(`
498
+ Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}wI().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{Hv as extractSnippet,yI as positionsFromHighlight};