context-mode 1.0.53 → 1.0.54

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,88 +1,88 @@
1
1
  #!/usr/bin/env node
2
- var qv=Object.create;var Za=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),Ve=(t,e)=>{for(var r in e)Za(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&&Za(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?Za(r,"default",{value:t,enumerable:!0}):r,t));var Do=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 Mo=class{};ee._CodeOrName=Mo;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Jr=class extends Mo{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 dt=class extends Mo{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=dt;ee.nil=new dt("");function cg(t,...e){let r=[t[0]],n=0;for(;n<e.length;)wl(r,e[n]),r.push(t[++n]);return new dt(r)}ee._=cg;var bl=new dt("+");function ug(t,...e){let r=[Lo(t[0])],n=0;for(;n<e.length;)r.push(bl),wl(r,e[n]),r.push(bl,Lo(t[++n]));return BE(r),new dt(r)}ee.str=ug;function wl(t,e){e instanceof dt?t.push(...e._items):e instanceof Jr?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 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 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:Lo(Array.isArray(t)?t.join(","):t)}function GE(t){return new dt(Lo(t))}ee.stringify=GE;function Lo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=Lo;function WE(t){return typeof t=="string"&&ee.IDENTIFIER.test(t)?new dt(`.${t}`):cg`[${t}]`}ee.getProperty=WE;function YE(t){if(typeof t=="string"&&ee.IDENTIFIER.test(t))return new dt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ee.getEsmExportName=YE;function XE(t){return new dt(t.toString())}ee.regexpCode=XE});var $l=T(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.ValueScope=Xe.ValueScopeName=Xe.Scope=Xe.varKinds=Xe.UsedValueState=void 0;var Ye=Do(),El=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},$i;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})($i||(Xe.UsedValueState=$i={}));Xe.varKinds={const:new Ye.Name("const"),let:new Ye.Name("let"),var:new Ye.Name("var")};var Pi=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ye.Name?e:this.name(e)}name(e){return new Ye.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Xe.Scope=Pi;var Ri=class extends Ye.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ye._)`.${new Ye.Name(r)}[${n}]`}};Xe.ValueScopeName=Ri;var QE=(0,Ye._)`\n`,Tl=class extends Pi{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?QE:Ye.nil}}get(){return this._scope}name(e){return new Ri(e,this._newName(e))}value(e,r){var n;if(r.ref===void 0)throw new Error("CodeGen: ref must be passed in value");let o=this.toName(e),{prefix:s}=o,i=(n=r.key)!==null&&n!==void 0?n:r.ref,a=this._values[s];if(a){let l=a.get(i);if(l)return l}else a=this._values[s]=new Map;a.set(i,o);let c=this._scope[s]||(this._scope[s]=[]),u=c.length;return c[u]=r.ref,o.setValue(r,{property:s,itemIndex:u}),o}getValue(e,r){let n=this._values[e];if(n)return n.get(r)}scopeRefs(e,r=this._values){return this._reduceValues(r,n=>{if(n.scopePath===void 0)throw new Error(`CodeGen: name "${n}" has no value`);return(0,Ye._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=Ye.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,$i.Started);let l=r(u);if(l){let d=this.opts.es5?Xe.varKinds.var:Xe.varKinds.const;s=(0,Ye._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ye._)`${s}${l}${this.opts._n}`;else throw new El(u);c.set(u,$i.Completed)})}return s}};Xe.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=Do(),vt=$l(),lr=Do();Object.defineProperty(F,"_",{enumerable:!0,get:function(){return lr._}});Object.defineProperty(F,"str",{enumerable:!0,get:function(){return lr.str}});Object.defineProperty(F,"strConcat",{enumerable:!0,get:function(){return lr.strConcat}});Object.defineProperty(F,"nil",{enumerable:!0,get:function(){return lr.nil}});Object.defineProperty(F,"getProperty",{enumerable:!0,get:function(){return lr.getProperty}});Object.defineProperty(F,"stringify",{enumerable:!0,get:function(){return lr.stringify}});Object.defineProperty(F,"regexpCode",{enumerable:!0,get:function(){return lr.regexpCode}});Object.defineProperty(F,"Name",{enumerable:!0,get:function(){return lr.Name}});var zi=$l();Object.defineProperty(F,"Scope",{enumerable:!0,get:function(){return zi.Scope}});Object.defineProperty(F,"ValueScope",{enumerable:!0,get:function(){return zi.ValueScope}});Object.defineProperty(F,"ValueScopeName",{enumerable:!0,get:function(){return zi.ValueScopeName}});Object.defineProperty(F,"varKinds",{enumerable:!0,get:function(){return zi.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 Bt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Pl=class extends Bt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?vt.varKinds.var:this.varKind,o=this.rhs===void 0?"":` = ${this.rhs}`;return`${n} ${this.name}${o};`+r}optimizeNames(e,r){if(e[this.name.str])return this.rhs&&(this.rhs=An(this.rhs,e,r)),this}get names(){return this.rhs instanceof Y._CodeOrName?this.rhs.names:{}}},Oi=class extends Bt{constructor(e,r,n){super(),this.lhs=e,this.rhs=r,this.sideEffects=n}render({_n:e}){return`${this.lhs} = ${this.rhs};`+e}optimizeNames(e,r){if(!(this.lhs instanceof Y.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=An(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Y.Name?{}:{...this.lhs.names};return Ii(e,this.rhs)}},Rl=class extends Oi{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 Bt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Cl=class extends Bt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Il=class extends Bt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},zl=class extends Bt{constructor(e){super(),this.code=e}render({_n:e}){return`${this.code};`+e}optimizeNodes(){return`${this.code}`?this:void 0}optimizeNames(e,r){return this.code=An(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},Zo=class extends Bt{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)=>Yr(e,r.names),{})}},Vt=class extends Zo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Nl=class extends Zo{},Nn=class extends Vt{};Nn.kind="else";var Gr=class t extends Vt{constructor(e,r){super(r),this.condition=e}render(e){let r=`if(${this.condition})`+super.render(e);return this.else&&(r+="else "+this.else.render(e)),r}optimizeNodes(){super.optimizeNodes();let e=this.condition;if(e===!0)return this.nodes;let r=this.else;if(r){let n=r.optimizeNodes();r=this.else=Array.isArray(n)?new Nn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(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=An(this.condition,e,r),this}get names(){let e=super.names;return Ii(e,this.condition),this.else&&Yr(e,this.else.names),e}};Gr.kind="if";var Wr=class extends Vt{};Wr.kind="for";var Al=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=An(this.iteration,e,r),this}get names(){return Yr(super.names,this.iteration.names)}},jl=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=Ii(super.names,this.from);return Ii(e,this.to)}},Ci=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=An(this.iterable,e,r),this}get names(){return Yr(super.names,this.iterable.names)}},Uo=class extends Vt{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)}};Uo.kind="func";var Ho=class extends Zo{render(e){return"return "+super.render(e)}};Ho.kind="return";var Ml=class extends Vt{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}},qo=class extends Vt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};qo.kind="catch";var Fo=class extends Vt{render(e){return"finally"+super.render(e)}};Fo.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 vt.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(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 Oi(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 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 Nn)}endIf(){return this._endBlockNode(Gr,Nn)}_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?vt.varKinds.var:vt.varKinds.let){let i=this._scope.toName(e);return this._for(new jl(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 Ci("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 Ci("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Wr)}label(e){return this._leafNode(new Ol(e))}break(e){return this._leafNode(new Cl(e))}return(e){let r=new Ho;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Ho)}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 qo(s),r(s)}return n&&(this._currNode=o.finally=new Fo,this.code(n)),this._endBlockNode(qo,Fo)}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 Uo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Uo)}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=Ll;function Yr(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ii(t,e){return e instanceof Y._CodeOrName?Yr(t,e.names):t}function An(t,e,r){if(t instanceof Y.Name)return n(t);if(!o(t))return t;return new Y._Code(t._items.reduce((s,i)=>(i instanceof Y.Name&&(i=n(i)),i instanceof Y._Code?s.push(...i._items):s.push(i),s),[]));function n(s){let i=r[s.str];return i===void 0||e[s.str]!==1?s:(delete e[s.str],i)}function o(s){return s instanceof Y._Code&&s._items.some(i=>i instanceof Y.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function 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=Do();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 Kt=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 Bo=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(),Ni=X(),qe=Kt();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 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 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,Ni.getErrorPath)(e,Ni.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,Ni.getErrorPath)(r,Ni.Type.Str)}`),[Xr.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([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 bg=T(jn=>{"use strict";Object.defineProperty(jn,"__esModule",{value:!0});jn.boolOrEmptySchema=jn.topBoolOrEmptySchema=void 0;var wT=Bo(),ET=q(),TT=Kt(),$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))}jn.topBoolOrEmptySchema=PT;function RT(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),kg(t)):r.var(e,!0)}jn.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(Mn=>{"use strict";Object.defineProperty(Mn,"__esModule",{value:!0});Mn.getRules=Mn.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)}Mn.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:{}}}Mn.getRules=zT});var Bl=T(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.shouldUseRule=dr.shouldUseGroup=dr.schemaHasRulesForType=void 0;function NT({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&wg(t,n)}dr.schemaHasRulesForType=NT;function wg(t,e){return e.rules.some(r=>Eg(t,r))}dr.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))}dr.shouldUseRule=Eg});var Vo=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=Bo(),U=q(),Tg=X(),Ln;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Ln||(De.DataType=Ln={}));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,Ln.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
2
+ var Vv=Object.create;var Za=Object.defineProperty;var Kv=Object.getOwnPropertyDescriptor;var Jv=Object.getOwnPropertyNames;var Gv=Object.getPrototypeOf,Wv=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),Ve=(t,e)=>{for(var r in e)Za(t,r,{get:e[r],enumerable:!0})},Yv=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Jv(e))!Wv.call(t,o)&&o!==r&&Za(t,o,{get:()=>e[o],enumerable:!(n=Kv(e,o))||n.enumerable});return t};var hf=(t,e,r)=>(r=t!=null?Vv(Gv(t)):{},Yv(e||!t||!t.__esModule?Za(r,"default",{value:t,enumerable:!0}):r,t));var Do=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 Mo=class{};ee._CodeOrName=Mo;ee.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var Jr=class extends Mo{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 dt=class extends Mo{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=dt;ee.nil=new dt("");function lg(t,...e){let r=[t[0]],n=0;for(;n<e.length;)wl(r,e[n]),r.push(t[++n]);return new dt(r)}ee._=lg;var bl=new dt("+");function dg(t,...e){let r=[Lo(t[0])],n=0;for(;n<e.length;)r.push(bl),wl(r,e[n]),r.push(bl,Lo(t[++n]));return JE(r),new dt(r)}ee.str=dg;function wl(t,e){e instanceof dt?t.push(...e._items):e instanceof Jr?t.push(e):t.push(YE(e))}ee.addCodeArg=wl;function JE(t){let e=1;for(;e<t.length-1;){if(t[e]===bl){let r=GE(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function GE(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 WE(t,e){return e.emptyStr()?t:t.emptyStr()?e:dg`${t}${e}`}ee.strConcat=WE;function YE(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Lo(Array.isArray(t)?t.join(","):t)}function XE(t){return new dt(Lo(t))}ee.stringify=XE;function Lo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}ee.safeStringify=Lo;function QE(t){return typeof t=="string"&&ee.IDENTIFIER.test(t)?new dt(`.${t}`):lg`[${t}]`}ee.getProperty=QE;function eT(t){if(typeof t=="string"&&ee.IDENTIFIER.test(t))return new dt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}ee.getEsmExportName=eT;function tT(t){return new dt(t.toString())}ee.regexpCode=tT});var $l=T(Xe=>{"use strict";Object.defineProperty(Xe,"__esModule",{value:!0});Xe.ValueScope=Xe.ValueScopeName=Xe.Scope=Xe.varKinds=Xe.UsedValueState=void 0;var Ye=Do(),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||(Xe.UsedValueState=Oi={}));Xe.varKinds={const:new Ye.Name("const"),let:new Ye.Name("let"),var:new Ye.Name("var")};var Ci=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof Ye.Name?e:this.name(e)}name(e){return new Ye.Name(this._newName(e))}_newName(e){let r=this._names[e]||this._nameGroup(e);return`${e}${r.index++}`}_nameGroup(e){var r,n;if(!((n=(r=this._parent)===null||r===void 0?void 0:r._prefixes)===null||n===void 0)&&n.has(e)||this._prefixes&&!this._prefixes.has(e))throw new Error(`CodeGen: prefix "${e}" is not allowed in this scope`);return this._names[e]={prefix:e,index:0}}};Xe.Scope=Ci;var Ii=class extends Ye.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,Ye._)`.${new Ye.Name(r)}[${n}]`}};Xe.ValueScopeName=Ii;var rT=(0,Ye._)`\n`,Tl=class extends Ci{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?rT:Ye.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,Ye._)`${e}${n.scopePath}`})}scopeCode(e=this._values,r,n){return this._reduceValues(e,o=>{if(o.value===void 0)throw new Error(`CodeGen: name "${o}" has no value`);return o.value.code},r,n)}_reduceValues(e,r,n={},o){let s=Ye.nil;for(let i in e){let a=e[i];if(!a)continue;let c=n[i]=n[i]||new Map;a.forEach(u=>{if(c.has(u))return;c.set(u,Oi.Started);let l=r(u);if(l){let d=this.opts.es5?Xe.varKinds.var:Xe.varKinds.const;s=(0,Ye._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,Ye._)`${s}${l}${this.opts._n}`;else throw new El(u);c.set(u,Oi.Completed)})}return s}};Xe.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=Do(),vt=$l(),lr=Do();Object.defineProperty(F,"_",{enumerable:!0,get:function(){return lr._}});Object.defineProperty(F,"str",{enumerable:!0,get:function(){return lr.str}});Object.defineProperty(F,"strConcat",{enumerable:!0,get:function(){return lr.strConcat}});Object.defineProperty(F,"nil",{enumerable:!0,get:function(){return lr.nil}});Object.defineProperty(F,"getProperty",{enumerable:!0,get:function(){return lr.getProperty}});Object.defineProperty(F,"stringify",{enumerable:!0,get:function(){return lr.stringify}});Object.defineProperty(F,"regexpCode",{enumerable:!0,get:function(){return lr.regexpCode}});Object.defineProperty(F,"Name",{enumerable:!0,get:function(){return lr.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?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=Nn(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=Nn(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=Nn(this.code,e,r),this}get names(){return this.code instanceof Y._CodeOrName?this.code.names:{}}},Zo=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)||(nT(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 Zo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Nl=class extends Zo{},zn=class extends Kt{};zn.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 zn(n):n}if(r)return e===!1?r instanceof t?r:r.nodes:this.nodes.length?this:new t(pg(e),r instanceof t?[r]:r.nodes);if(!(e===!1||!this.nodes.length))return this}optimizeNames(e,r){var n;if(this.else=(n=this.else)===null||n===void 0?void 0:n.optimizeNames(e,r),!!(super.optimizeNames(e,r)||this.else))return this.condition=Nn(this.condition,e,r),this}get names(){let e=super.names;return Ai(e,this.condition),this.else&&Yr(e,this.else.names),e}};Gr.kind="if";var Wr=class extends Kt{};Wr.kind="for";var Al=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=Nn(this.iteration,e,r),this}get names(){return Yr(super.names,this.iteration.names)}},jl=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=Ai(super.names,this.from);return Ai(e,this.to)}},Ni=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=Nn(this.iterable,e,r),this}get names(){return Yr(super.names,this.iterable.names)}},Uo=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)}};Uo.kind="func";var Ho=class extends Zo{render(e){return"return "+super.render(e)}};Ho.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&&Yr(e,this.catch.names),this.finally&&Yr(e,this.finally.names),e}},qo=class extends Kt{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};qo.kind="catch";var Fo=class extends Kt{render(e){return"finally"+super.render(e)}};Fo.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 vt.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(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 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 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 zn)}endIf(){return this._endBlockNode(Gr,zn)}_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?vt.varKinds.var:vt.varKinds.let){let i=this._scope.toName(e);return this._for(new jl(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 Ni("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 Ni("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(Wr)}label(e){return this._leafNode(new Ol(e))}break(e){return this._leafNode(new Cl(e))}return(e){let r=new Ho;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Ho)}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 qo(s),r(s)}return n&&(this._currNode=o.finally=new Fo,this.code(n)),this._endBlockNode(qo,Fo)}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 Uo(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Uo)}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=Ll;function Yr(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?Yr(t,e.names):t}function Nn(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 nT(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function pg(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Y._)`!${Dl(t)}`}F.not=pg;var oT=fg(F.operators.AND);function sT(...t){return t.reduce(oT)}F.and=sT;var iT=fg(F.operators.OR);function aT(...t){return t.reduce(iT)}F.or=aT;function fg(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(),cT=Do();function uT(t){let e={};for(let r of t)e[r]=!0;return e}B.toHash=uT;function lT(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(gg(t,e),!_g(e,t.self.RULES.all))}B.alwaysValidSchema=lT;function gg(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]||vg(t,`unknown keyword: "${s}"`)}B.checkUnknownRules=gg;function _g(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}B.schemaHasRules=_g;function dT(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=dT;function pT({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=pT;function fT(t){return yg(decodeURIComponent(t))}B.unescapeFragment=fT;function mT(t){return encodeURIComponent(Ul(t))}B.escapeFragment=mT;function Ul(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}B.escapeJsonPointer=Ul;function yg(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}B.unescapeJsonPointer=yg;function hT(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}B.eachItem=hT;function mg({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:mg({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:xg}),items:mg({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 xg(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=xg;function Hl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,oe._)`${e}${(0,oe.getProperty)(n)}`,!0))}B.setEvaluated=Hl;var hg={};function gT(t,e){return t.scopeValue("func",{ref:e,code:hg[e.code]||(hg[e.code]=new cT._Code(e.code))})}B.useFunc=gT;var Zl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Zl||(B.Type=Zl={}));function _T(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=_T;function vg(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=vg});var Jt=T(ql=>{"use strict";Object.defineProperty(ql,"__esModule",{value:!0});var Me=q(),yT={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=yT});var Bo=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 xT(t,e=Le.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=bg(t,e,r);n??(i||a)?kg(s,c):Sg(o,(0,Q._)`[${c}]`)}Le.reportError=xT;function vT(t,e=Le.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=bg(t,e,r);kg(o,a),s||i||Sg(n,qe.default.vErrors)}Le.reportExtraError=vT;function kT(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=kT;function ST({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=ST;function kg(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 Sg(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 bg(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,Q._)`{}`:bT(t,e,r)}function bT(t,e,r={}){let{gen:n,it:o}=t,s=[wT(o,r),ET(t,r)];return TT(t,e,s),n.object(...s)}function wT({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 ET({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)}`),[Xr.schemaPath,o]}function TT(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 Eg=T(An=>{"use strict";Object.defineProperty(An,"__esModule",{value:!0});An.boolOrEmptySchema=An.topBoolOrEmptySchema=void 0;var $T=Bo(),PT=q(),RT=Jt(),OT={message:"boolean schema is false"};function CT(t){let{gen:e,schema:r,validateName:n}=t;r===!1?wg(t,!1):typeof r=="object"&&r.$async===!0?e.return(RT.default.data):(e.assign((0,PT._)`${n}.errors`,null),e.return(!0))}An.topBoolOrEmptySchema=CT;function IT(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),wg(t)):r.var(e,!0)}An.boolOrEmptySchema=IT;function wg(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,$T.reportError)(o,OT,void 0,e)}});var Fl=T(jn=>{"use strict";Object.defineProperty(jn,"__esModule",{value:!0});jn.getRules=jn.isJSONType=void 0;var zT=["string","number","integer","boolean","null","object","array"],NT=new Set(zT);function AT(t){return typeof t=="string"&&NT.has(t)}jn.isJSONType=AT;function jT(){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:{}}}jn.getRules=jT});var Bl=T(dr=>{"use strict";Object.defineProperty(dr,"__esModule",{value:!0});dr.shouldUseRule=dr.shouldUseGroup=dr.schemaHasRulesForType=void 0;function MT({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Tg(t,n)}dr.schemaHasRulesForType=MT;function Tg(t,e){return e.rules.some(r=>$g(t,r))}dr.shouldUseGroup=Tg;function $g(t,e){var r;return t[e.keyword]!==void 0||((r=e.definition.implements)===null||r===void 0?void 0:r.some(n=>t[n]!==void 0))}dr.shouldUseRule=$g});var Vo=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 LT=Fl(),DT=Bl(),ZT=Bo(),U=q(),Pg=X(),Mn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Mn||(De.DataType=Mn={}));function UT(t){let e=Rg(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=UT;function Rg(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(LT.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}De.getJSONTypes=Rg;function HT(t,e){let{gen:r,data:n,opts:o}=t,s=qT(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,DT.schemaHasRulesForType)(t,e[0]));if(i){let a=Kl(e,n,o.strictNumbers,Mn.Wrong);r.if(a,()=>{s.length?FT(t,e,s):Jl(t)})}return i}De.coerceAndCheckDataType=HT;var Og=new Set(["string","number","integer","boolean","null"]);function qT(t,e){return e?t.filter(r=>Og.has(r)||e==="array"&&r==="array"):[]}function FT(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)(Og.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),BT(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 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=Ln.Correct){let o=n===Ln.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===Ln.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(Ai=>{"use strict";Object.defineProperty(Ai,"__esModule",{value:!0});Ai.assignDefaults=void 0;var Dn=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))}Ai.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,Dn._)`${s}${(0,Dn.getProperty)(e)}`;if(o){(0,BT.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Dn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Dn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Dn._)`${a} = ${(0,Dn.stringify)(r)}`)}});var pt=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(),pr=Kt(),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=[[pr.default.instancePath,(0,pe.strConcat)(pr.default.instancePath,s)],[pr.default.parentData,i.parentData],[pr.default.parentDataProperty,i.parentDataProperty],[pr.default.rootData,pr.default.rootData]];i.opts.dynamicRef&&d.push([pr.default.dynamicAnchors,pr.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=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(),Qr=Kt(),o$=pt(),s$=Bo();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,m),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function m(){if(e.errors===!1)h(),e.modifying&&zg(t),g(()=>t.error());else{let y=e.async?f():p();e.modifying&&zg(t),g(()=>c$(t,y))}}function f(){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?Qr.default.this:Qr.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(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,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(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.extendSubschemaMode=fr.extendSubschemaData=fr.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')}fr.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,m=a.let("data",(0,zt._)`${e.data}${(0,zt.getProperty)(r)}`,!0);c(m),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]}}fr.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}fr.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 mr=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(){};ji(e,n,o,t,"",t)};mr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};mr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};mr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};mr.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 ji(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 mr.arrayKeywords)for(var m=0;m<d.length;m++)ji(t,e,r,d[m],o+"/"+l+"/"+m,s,o,l,n,m)}else if(l in mr.propsKeywords){if(d&&typeof d=="object")for(var f in d)ji(t,e,r,d[f],o+"/"+l+"/"+h$(f),s,o,l,n,f)}else(l in mr.keywords||t.allKeys&&!(l in mr.skipKeywords))&&ji(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 Ko=T(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.getSchemaRefs=Qe.resolveUrl=Qe.normalizeId=Qe._getFullPath=Qe.getFullPath=Qe.inlineRef=void 0;var 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}Qe.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=Zn(e));let n=t.parse(e);return qg(t,n)}Qe.getFullPath=Hg;function qg(t,e){return t.serialize(e).split("#")[0]+"#"}Qe._getFullPath=qg;var k$=/#\/?$/;function Zn(t){return t?t.replace(k$,""):""}Qe.normalizeId=Zn;function b$(t,e,r){return r=Zn(r),t.resolve(e,r)}Qe.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=Zn(t[r]||e),s={"":o},i=Hg(n,o,!1),a={},c=new Set;return y$(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])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[m]=g;function y(S){let w=this.opts.uriResolver.resolve;if(S=Zn(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!==Zn(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,m,f){if(m!==void 0&&!_$(d,m))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Qe.getSchemaRefs=E$});var Wo=T(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.getData=hr.KeywordCxt=hr.validateFunctionCode=void 0;var Jg=bg(),Fg=Vo(),td=Bl(),Mi=Vo(),T$=Og(),Go=Ag(),ed=Mg(),z=q(),L=Kt(),$$=Ko(),Jt=X(),Jo=Bo();function P$(t){if(Yg(t)&&(Xg(t),Wg(t))){C$(t);return}Gg(t,()=>(0,Jg.topBoolOrEmptySchema)(t))}hr.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,Jt.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,Jt.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,Jt.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,Jt.schemaHasRulesButRef)(s,l))){o.block(()=>r_(t,"$ref",l.all.$ref.definition));return}c.jtd||U$(t,e),o.block(()=>{for(let m of l.rules)d(m);d(l.post)});function d(m){(0,td.shouldUseGroup)(s,m)&&(m.type?(o.if((0,Mi.checkDataType)(m.type,i,c.strictNumbers)),Kg(t,m),e.length===1&&e[0]===m.type&&r&&(o.else(),(0,Mi.reportTypeError)(t)),o.endIf()):Kg(t,m),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,Jt.checkStrictMode)(t,e,t.opts.strictTypes)}var Li=class{constructor(e,r,n){if((0,Go.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,Jt.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,Go.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?Jo.reportExtraError:Jo.reportError)(this,this.def.error,r)}$dataError(){(0,Jo.reportError)(this,this.def.$dataError||Jo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Jo.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,Mi.checkDataTypes)(c,r,s.opts.strictNumbers,Mi.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=Jt.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=Jt.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}};hr.KeywordCxt=Li;function r_(t,e,r,n){let o=new Li(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Go.funcKeywordCode)(o,r):"macro"in r?(0,Go.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Go.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,Jt.unescapeJsonPointer)(u))}`,i=(0,z._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}hr.getData=n_});var Di=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 Yo=T(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var sd=Ko(),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 Ui=T(ft=>{"use strict";Object.defineProperty(ft,"__esModule",{value:!0});ft.resolveSchema=ft.getCompilingSchema=ft.resolveRef=ft.compileSchema=ft.SchemaEnv=void 0;var St=q(),G$=Di(),en=Kt(),kt=Ko(),o_=X(),W$=Wo(),Un=class{constructor(e){var r;this.refs={},this.dynamicAnchors={};let n;typeof e.schema=="object"&&(n=e.schema),this.schema=e.schema,this.schemaId=e.schemaId,this.root=e.root||this,this.baseId=(r=e.baseId)!==null&&r!==void 0?r:(0,kt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};ft.SchemaEnv=Un;function ud(t){let e=s_.call(this,t);if(e)return e;let r=(0,kt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new St.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:G$.default,code:(0,St._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:en.default.data,parentData:en.default.parentData,parentDataProperty:en.default.parentDataProperty,dataNames:[en.default.data],dataPathArr:[St.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,St.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:St.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,St._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,W$.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 St.Name?void 0:p,items:h instanceof St.Name?void 0:h,dynamicProps:p instanceof St.Name,dynamicItems:h instanceof St.Name},f.source&&(f.source.evaluated=(0,St.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)}}ft.compileSchema=ud;function Y$(t,e,r){var n;r=(0,kt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=eP.call(this,t,r);if(s===void 0){let i=(n=t.localRefs)===null||n===void 0?void 0:n[r],{schemaId:a}=this.opts;i&&(s=new Un({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=X$.call(this,s)}ft.resolveRef=Y$;function X$(t){return(0,kt.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}ft.getCompilingSchema=s_;function Q$(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function eP(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Zi.call(this,t,e)}function Zi(t,e){let r=this.opts.uriResolver.parse(e),n=(0,kt._getFullPath)(this.opts.uriResolver,r),o=(0,kt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return cd.call(this,r,t);let s=(0,kt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Zi.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,kt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,kt.resolveUrl)(this.opts.uriResolver,o,u)),new Un({schema:a,schemaId:c,root:t,baseId:o})}return cd.call(this,r,i)}}ft.resolveSchema=Zi;var tP=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];!tP.has(a)&&u&&(e=(0,kt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,o_.schemaHasRulesButRef)(r,this.RULES)){let a=(0,kt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Zi.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Un({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var i_=T((W1,rP)=>{rP.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 nP=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 oP=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function a_(t){return t.length=0,!0}function sP(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 iP(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=sP;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(aP(t,":")<2)return{host:t,isIPV6:!1};let e=iP(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 aP(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function cP(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 uP(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 lP(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:oP,recomposeAuthority:lP,normalizeComponentEncoding:uP,removeDotSegments:cP,isIPv4:c_,isUUID:nP,normalizeIPv6:u_,stringArrayToHexStripped:ld}});var h_=T((X1,m_)=>{"use strict";var{isUUID:dP}=dd(),pP=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,fP=["http","https","ws","wss","urn","urn:uuid"];function mP(t){return fP.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 hP(t){return t.secure=pd(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function gP(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 _P(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(pP);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 yP(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 xP(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!dP(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 f_={scheme:"http",domainHost:!0,parse:d_,serialize:p_},SP={scheme:"https",domainHost:f_.domainHost,parse:d_,serialize:p_},Hi={scheme:"ws",domainHost:!0,parse:hP,serialize:gP},kP={scheme:"wss",domainHost:Hi.domainHost,parse:Hi.parse,serialize:Hi.serialize},bP={scheme:"urn",parse:_P,serialize:yP,skipNormalize:!0},wP={scheme:"urn:uuid",parse:xP,serialize:vP,skipNormalize:!0},qi={http:f_,https:SP,ws:Hi,wss:kP,urn:bP,"urn:uuid":wP};Object.setPrototypeOf(qi,null);function fd(t){return t&&(qi[t]||qi[t.toLowerCase()])||void 0}m_.exports={wsIsSecure:pd,SCHEMES:qi,isValidSchemeName:mP,getSchemeHandler:fd}});var y_=T((Q1,Bi)=>{"use strict";var{normalizeIPv6:EP,removeDotSegments:Xo,recomposeAuthority:TP,normalizeComponentEncoding:Fi,isIPv4:$P,nonSimpleDomain:PP}=dd(),{SCHEMES:RP,getSchemeHandler:g_}=h_();function OP(t,e){return typeof t=="string"?t=Nt(Gt(t,e),e):typeof t=="object"&&(t=Gt(Nt(t,e),e)),t}function CP(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=__(Gt(t,n),Gt(e,n),n,!0);return n.skipEscape=!0,Nt(o,n)}function __(t,e,r,n){let o={};return n||(t=Gt(Nt(t,r),r),e=Gt(Nt(e,r),r)),r=r||{},!r.tolerant&&e.scheme?(o.scheme=e.scheme,o.userinfo=e.userinfo,o.host=e.host,o.port=e.port,o.path=Xo(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=Xo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Xo(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=Xo(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 IP(t,e,r){return typeof t=="string"?(t=unescape(t),t=Nt(Fi(Gt(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Nt(Fi(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Nt(Fi(Gt(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Nt(Fi(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=TP(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=Xo(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 zP=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function Gt(t,e){let r=Object.assign({},e),n={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},o=!1;r.reference==="suffix"&&(r.scheme?t=r.scheme+":"+t:t="//"+t);let s=t.match(zP);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($P(n.host)===!1){let c=EP(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&&PP(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:RP,normalize:OP,resolve:CP,resolveComponent:__,equal:IP,serialize:Nt,parse:Gt};Bi.exports=md;Bi.exports.default=md;Bi.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 NP=Wo();Object.defineProperty(ze,"KeywordCxt",{enumerable:!0,get:function(){return NP.KeywordCxt}});var Hn=q();Object.defineProperty(ze,"_",{enumerable:!0,get:function(){return Hn._}});Object.defineProperty(ze,"str",{enumerable:!0,get:function(){return Hn.str}});Object.defineProperty(ze,"stringify",{enumerable:!0,get:function(){return Hn.stringify}});Object.defineProperty(ze,"nil",{enumerable:!0,get:function(){return Hn.nil}});Object.defineProperty(ze,"Name",{enumerable:!0,get:function(){return Hn.Name}});Object.defineProperty(ze,"CodeGen",{enumerable:!0,get:function(){return Hn.CodeGen}});var AP=Di(),E_=Yo(),jP=Fl(),Qo=Ui(),MP=q(),es=Ko(),Vi=Vo(),_d=X(),S_=i_(),LP=v_(),T_=(t,e)=>new RegExp(t,e);T_.code="new RegExp";var DP=["removeAdditional","useDefaults","coerceTypes"],ZP=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),UP={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."},HP={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},k_=200;function qP(t){var e,r,n,o,s,i,a,c,u,l,d,m,f,p,h,g,y,v,S,w,R,ae,ce,rt,Dt;let me=t.strict,Qt=(e=t.code)===null||e===void 0?void 0:e.optimize,Ze=Qt===!0||Qt===void 0?1:Qt||0,Ps=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:T_,Da=(o=t.uriResolver)!==null&&o!==void 0?o:LP.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:Ps}:{optimize:Ze,regExp:Ps},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:(rt=t.unicodeRegExp)!==null&&rt!==void 0?rt:!0,int32range:(Dt=t.int32range)!==null&&Dt!==void 0?Dt:!0,uriResolver:Da}}var ts=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...qP(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new MP.ValueScope({scope:{},prefixes:ZP,es5:r,lines:n}),this.logger=GP(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,jP.getRules)(),b_.call(this,UP,e,"NOT SUPPORTED"),b_.call(this,HP,e,"DEPRECATED","warn"),this._metaOpts=KP.call(this),e.formats&&BP.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&VP.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),FP.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 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 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,es.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 Qo.SchemaEnv({schema:{},schemaId:n});if(r=Qo.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,es.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(YP.call(this,n,r),!r)return(0,_d.eachItem)(n,s=>gd.call(this,s)),this;QP.call(this,r);let o={...r,type:(0,Vi.getJSONTypes)(r.type),schemaType:(0,Vi.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,es.normalizeId)(i||n);let u=es.getSchemaRefs.call(this,e,n);return c=new Qo.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):Qo.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{Qo.compileSchema.call(this,e)}finally{this.opts=r}}};ts.ValidationError=AP.default;ts.MissingRefError=E_.default;ze.default=ts;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,es.normalizeId)(t),this.schemas[t]||this.refs[t]}function FP(){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 BP(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function VP(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 KP(){let t={...this.opts};for(let e of DP)delete t[e];return t}var JP={log(){},warn(){},error(){}};function GP(t){if(t===!1)return JP;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 WP=/^[a-z_$][a-z0-9_$:-]*$/i;function YP(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(!WP.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,Vi.getJSONTypes)(e.type),schemaType:(0,Vi.getJSONTypes)(e.schemaType)}};e.before?XP.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 XP(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 QP(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=$_(e)),t.validateSchema=this.compile(e,!0))}var e0={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function $_(t){return{anyOf:[t,e0]}}});var R_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var t0={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};yd.default=t0});var z_=T(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.callRef=tn.getValidate=void 0;var r0=Yo(),O_=pt(),et=q(),qn=Kt(),C_=Ui(),Ki=X(),n0={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 r0.default(n.opts.uriResolver,o,r);if(l instanceof C_.SchemaEnv)return m(l);return f(l);function d(){if(s===u)return Ji(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Ji(t,(0,et._)`${p}.validate`,u,u.$async)}function m(p){let h=I_(t,p);Ji(t,h,p,p.$async)}function f(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,et.stringify)(p)}:{ref:p}),g=e.name("valid"),y=t.subschema({schema:p,dataTypes:[],schemaPath:et.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,et._)`${r.scopeValue("wrapper",{ref:e})}.validate`}tn.getValidate=I_;function Ji(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?qn.default.this:et.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,et._)`await ${(0,O_.callValidateCode)(t,e,u)}`),f(e),i||o.assign(p,!0)},h=>{o.if((0,et._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),m(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,O_.callValidateCode)(t,e,u),()=>f(e),()=>m(e))}function m(p){let h=(0,et._)`${p}.errors`;o.assign(qn.default.vErrors,(0,et._)`${qn.default.vErrors} === null ? ${h} : ${qn.default.vErrors}.concat(${h})`),o.assign(qn.default.errors,(0,et._)`${qn.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=Ki.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,et._)`${p}.evaluated.props`);s.props=Ki.mergeEvaluated.props(o,y,s.props,et.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Ki.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,et._)`${p}.evaluated.items`);s.items=Ki.mergeEvaluated.items(o,y,s.items,et.Name)}}}tn.callRef=Ji;tn.default=n0});var N_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var o0=R_(),s0=z_(),i0=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",o0.default,s0.default];xd.default=i0});var A_=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var Gi=q(),gr=Gi.operators,Wi={maximum:{okStr:"<=",ok:gr.LTE,fail:gr.GT},minimum:{okStr:">=",ok:gr.GTE,fail:gr.LT},exclusiveMaximum:{okStr:"<",ok:gr.LT,fail:gr.GTE},exclusiveMinimum:{okStr:">",ok:gr.GT,fail:gr.LTE}},a0={message:({keyword:t,schemaCode:e})=>(0,Gi.str)`must be ${Wi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Gi._)`{comparison: ${Wi[t].okStr}, limit: ${e}}`},c0={keyword:Object.keys(Wi),type:"number",schemaType:"number",$data:!0,error:a0,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Gi._)`${r} ${Wi[e].fail} ${n} || isNaN(${r})`)}};vd.default=c0});var j_=T(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var rs=q(),u0={message:({schemaCode:t})=>(0,rs.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,rs._)`{multipleOf: ${t}}`},l0={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:u0,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,rs._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,rs._)`${i} !== parseInt(${i})`;t.fail$data((0,rs._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};Sd.default=l0});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 rn=q(),d0=X(),p0=L_(),f0={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}}`},m0={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:f0,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,d0.useFunc)(t.gen,p0.default)}(${r})`;t.fail$data((0,rn._)`${i} ${s} ${n}`)}};bd.default=m0});var Z_=T(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var h0=pt(),g0=X(),Fn=q(),_0={message:({schemaCode:t})=>(0,Fn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Fn._)`{pattern: ${t}}`},y0={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:_0,code(t){let{gen:e,data:r,$data:n,schema:o,schemaCode:s,it:i}=t,a=i.opts.unicodeRegExp?"u":"";if(n){let{regExp:c}=i.opts.code,u=c.code==="new RegExp"?(0,Fn._)`new RegExp`:(0,g0.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Fn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Fn._)`!${l}`)}else{let c=(0,h0.usePattern)(t,o);t.fail$data((0,Fn._)`!${c}.test(${r})`)}}};wd.default=y0});var U_=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var ns=q(),x0={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,ns.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,ns._)`{limit: ${t}}`},v0={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:x0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?ns.operators.GT:ns.operators.LT;t.fail$data((0,ns._)`Object.keys(${r}).length ${o} ${n}`)}};Ed.default=v0});var H_=T(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var os=pt(),ss=q(),S0=X(),k0={message:({params:{missingProperty:t}})=>(0,ss.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,ss._)`{missingProperty: ${t}}`},b0={keyword:"required",type:"object",schemaType:"array",$data:!0,error:k0,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,S0.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(ss.nil,d);else for(let f of r)(0,os.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,os.checkMissingProp)(t,r,f)),(0,os.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,os.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function m(f,p){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(p,(0,os.propertyInData)(e,o,f,a.ownProperties)),e.if((0,ss.not)(p),()=>{t.error(),e.break()})},ss.nil)}}};Td.default=b0});var q_=T($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var is=q(),w0={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,is.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,is._)`{limit: ${t}}`},E0={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:w0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?is.operators.GT:is.operators.LT;t.fail$data((0,is._)`${r}.length ${o} ${n}`)}};$d.default=E0});var Yi=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=Vo(),Ne=q(),T0=X(),$0=Yi(),P0={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}}`},R0={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:P0,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()?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,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 f(p,h){let g=(0,T0.useFunc)(e,$0.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=R0});var V_=T(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var Cd=q(),O0=X(),C0=Yi(),I0={message:"must be equal to constant",params:({schemaCode:t})=>(0,Cd._)`{allowedValue: ${t}}`},z0={keyword:"const",$data:!0,error:I0,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,O0.useFunc)(e,C0.default)}(${r}, ${o})`):t.fail((0,Cd._)`${s} !== ${r}`)}};Id.default=z0});var K_=T(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var as=q(),N0=X(),A0=Yi(),j0={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,as._)`{allowedValues: ${t}}`},M0={keyword:"enum",schemaType:"array",$data:!0,error:j0,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,N0.useFunc)(e,A0.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,as.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,as._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function m(f,p){let h=o[p];return typeof h=="object"&&h!==null?(0,as._)`${u()}(${r}, ${f}[${p}])`:(0,as._)`${r} === ${h}`}}};zd.default=M0});var J_=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var L0=A_(),D0=j_(),Z0=D_(),U0=Z_(),H0=U_(),q0=H_(),F0=q_(),B0=B_(),V0=V_(),K0=K_(),J0=[L0.default,D0.default,Z0.default,U0.default,H0.default,q0.default,F0.default,B0.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},V0.default,K0.default];Nd.default=J0});var jd=T(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.validateAdditionalItems=void 0;var nn=q(),Ad=X(),G0={message:({params:{len:t}})=>(0,nn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,nn._)`{limit: ${t}}`},W0={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:G0,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,nn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,nn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Ad.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:Ad.Type.Num},u),i.allErrors||r.if((0,nn.not)(u),()=>r.break())})}}cs.validateAdditionalItems=G_;cs.default=W0});var Md=T(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});us.validateTuple=void 0;var W_=q(),Xi=X(),Y0=pt(),X0={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,Xi.alwaysValidSchema)(r,e)&&t.ok((0,Y0.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=Xi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,W_._)`${s}.length`);r.forEach((d,m)=>{(0,Xi.alwaysValidSchema)(a,d)||(n.if((0,W_._)`${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,Xi.checkStrictMode)(a,g,m.strictTuples)}}}us.validateTuple=Y_;us.default=X0});var X_=T(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var Q0=Md(),eR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,Q0.validateTuple)(t,"items")};Ld.default=eR});var ey=T(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var Q_=q(),tR=X(),rR=pt(),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 mt=q(),Qi=X(),iR={message:({params:{min:t,max:e}})=>e===void 0?(0,mt.str)`must contain at least ${t} valid item(s)`:(0,mt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,mt._)`{minContains: ${t}}`:(0,mt._)`{minContains: ${t}, maxContains: ${e}}`},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,mt._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,Qi.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,Qi.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,Qi.alwaysValidSchema)(s,r)){let h=(0,mt._)`${l} >= ${i}`;a!==void 0&&(h=(0,mt._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?f(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,mt._)`${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:Qi.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,mt._)`${h}++`),a===void 0?e.if((0,mt._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,mt._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,mt._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};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(),ls=pt();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},
6
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,U._)`[${o}]`)}}}function BT({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=Mn.Correct){let o=n===Mn.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===Mn.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,Pg.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 VT={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=KT(t);(0,ZT.reportError)(e,VT)}De.reportTypeError=Jl;function KT(t){let{gen:e,data:r,schema:n}=t,o=(0,Pg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Ig=T(Li=>{"use strict";Object.defineProperty(Li,"__esModule",{value:!0});Li.assignDefaults=void 0;var Ln=q(),JT=X();function GT(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Cg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Cg(t,s,o.default))}Li.assignDefaults=GT;function Cg(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Ln._)`${s}${(0,Ln.getProperty)(e)}`;if(o){(0,JT.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Ln._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Ln._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Ln._)`${a} = ${(0,Ln.stringify)(r)}`)}});var pt=T(ne=>{"use strict";Object.defineProperty(ne,"__esModule",{value:!0});ne.validateUnion=ne.validateArray=ne.usePattern=ne.callValidateCode=ne.schemaProperties=ne.allSchemaProperties=ne.noPropertyInData=ne.propertyInData=ne.isOwnProperty=ne.hasPropFunc=ne.reportMissingProp=ne.checkMissingProp=ne.checkReportMissingProp=void 0;var le=q(),Gl=X(),pr=Jt(),WT=X();function YT(t,e){let{gen:r,data:n,it:o}=t;r.if(Yl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,le._)`${e}`},!0),t.error()})}ne.checkReportMissingProp=YT;function XT({gen:t,data:e,it:{opts:r}},n,o){return(0,le.or)(...n.map(s=>(0,le.and)(Yl(t,e,s,r.ownProperties),(0,le._)`${o} = ${s}`)))}ne.checkMissingProp=XT;function QT(t,e){t.setParams({missingProperty:e},!0),t.error()}ne.reportMissingProp=QT;function zg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,le._)`Object.prototype.hasOwnProperty`})}ne.hasPropFunc=zg;function Wl(t,e,r){return(0,le._)`${zg(t)}.call(${e}, ${r})`}ne.isOwnProperty=Wl;function e$(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} !== undefined`;return n?(0,le._)`${o} && ${Wl(t,e,r)}`:o}ne.propertyInData=e$;function Yl(t,e,r,n){let o=(0,le._)`${e}${(0,le.getProperty)(r)} === undefined`;return n?(0,le.or)(o,(0,le.not)(Wl(t,e,r))):o}ne.noPropertyInData=Yl;function Ng(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}ne.allSchemaProperties=Ng;function t$(t,e){return Ng(e).filter(r=>!(0,Gl.alwaysValidSchema)(t,e[r]))}ne.schemaProperties=t$;function r$({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,le._)`${t}, ${e}, ${n}${o}`:e,d=[[pr.default.instancePath,(0,le.strConcat)(pr.default.instancePath,s)],[pr.default.parentData,i.parentData],[pr.default.parentDataProperty,i.parentDataProperty],[pr.default.rootData,pr.default.rootData]];i.opts.dynamicRef&&d.push([pr.default.dynamicAnchors,pr.default.dynamicAnchors]);let m=(0,le._)`${l}, ${r.object(...d)}`;return c!==le.nil?(0,le._)`${a}.call(${c}, ${m})`:(0,le._)`${a}(${m})`}ne.callValidateCode=r$;var n$=(0,le._)`new RegExp`;function o$({gen:t,it:{opts:e}},r){let n=e.unicodeRegExp?"u":"",{regExp:o}=e.code,s=o(r,n);return t.scopeValue("pattern",{key:s.toString(),ref:s,code:(0,le._)`${o.code==="new RegExp"?n$:(0,WT.useFunc)(t,o)}(${r}, ${n})`})}ne.usePattern=o$;function s$(t){let{gen:e,data:r,keyword:n,it:o}=t,s=e.name("valid");if(o.allErrors){let a=e.let("valid",!0);return i(()=>e.assign(a,!1)),a}return e.var(s,!0),i(()=>e.break()),s;function i(a){let c=e.const("len",(0,le._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Gl.Type.Num},s),e.if((0,le.not)(s),a)})}}ne.validateArray=s$;function i$(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,le._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,le.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}ne.validateUnion=i$});var Mg=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(),a$=pt(),c$=Bo();function u$(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=jg(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=u$;function l$(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;p$(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=jg(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&&Ag(t),g(()=>t.error());else{let x=e.async?f():p();e.modifying&&Ag(t),g(()=>d$(t,x))}}function f(){let x=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(x,(0,Fe._)`${v}.errors`),()=>n.throw(v))),x}function p(){let x=(0,Fe._)`${l}.errors`;return n.assign(x,null),h(Fe.nil),x}function h(x=e.async?(0,Fe._)`await `:Fe.nil){let v=c.opts.passContext?Qr.default.this:Qr.default.self,k=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Fe._)`${x}${(0,a$.callValidateCode)(t,l,v,k)}`,e.modifying)}function g(x){var v;n.if((0,Fe.not)((v=e.valid)!==null&&v!==void 0?v:d),x)}}It.funcKeywordCode=l$;function Ag(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Fe._)`${n.parentData}[${n.parentDataProperty}]`))}function d$(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,c$.extendErrors)(t)},()=>t.error())}function p$({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function jg(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 f$(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=f$;function m$({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=m$});var Dg=T(fr=>{"use strict";Object.defineProperty(fr,"__esModule",{value:!0});fr.extendSubschemaMode=fr.extendSubschemaData=fr.getSubschema=void 0;var zt=q(),Lg=X();function h$(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,Lg.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')}fr.getSubschema=h$;function g$(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,Lg.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]}}fr.extendSubschemaData=g$;function _$(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}fr.extendSubschemaMode=_$});var Xl=T((W1,Zg)=>{"use strict";Zg.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 Hg=T((Y1,Ug)=>{"use strict";var mr=Ug.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)};mr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};mr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};mr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};mr.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 mr.arrayKeywords)for(var m=0;m<d.length;m++)Di(t,e,r,d[m],o+"/"+l+"/"+m,s,o,l,n,m)}else if(l in mr.propsKeywords){if(d&&typeof d=="object")for(var f in d)Di(t,e,r,d[f],o+"/"+l+"/"+y$(f),s,o,l,n,f)}else(l in mr.keywords||t.allKeys&&!(l in mr.skipKeywords))&&Di(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function y$(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Ko=T(Qe=>{"use strict";Object.defineProperty(Qe,"__esModule",{value:!0});Qe.getSchemaRefs=Qe.resolveUrl=Qe.normalizeId=Qe._getFullPath=Qe.getFullPath=Qe.inlineRef=void 0;var x$=X(),v$=Xl(),k$=Hg(),S$=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function b$(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Ql(t):e?qg(t)<=e:!1}Qe.inlineRef=b$;var w$=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Ql(t){for(let e in t){if(w$.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 qg(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!S$.has(r)&&(typeof t[r]=="object"&&(0,x$.eachItem)(t[r],n=>e+=qg(n)),e===1/0))return 1/0}return e}function Fg(t,e="",r){r!==!1&&(e=Dn(e));let n=t.parse(e);return Bg(t,n)}Qe.getFullPath=Fg;function Bg(t,e){return t.serialize(e).split("#")[0]+"#"}Qe._getFullPath=Bg;var E$=/#\/?$/;function Dn(t){return t?t.replace(E$,""):""}Qe.normalizeId=Dn;function T$(t,e,r){return r=Dn(r),t.resolve(e,r)}Qe.resolveUrl=T$;var $$=/^[a-z_][-a-z0-9._]*$/i;function P$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Dn(t[r]||e),s={"":o},i=Fg(n,o,!1),a={},c=new Set;return k$(t,{allKeys:!0},(d,m,f,p)=>{if(p===void 0)return;let h=i+m,g=s[p];typeof d[r]=="string"&&(g=x.call(this,d[r])),v.call(this,d.$anchor),v.call(this,d.$dynamicAnchor),s[m]=g;function x(k){let E=this.opts.uriResolver.resolve;if(k=Dn(g?E(g,k):k),c.has(k))throw l(k);c.add(k);let C=this.refs[k];return typeof C=="string"&&(C=this.refs[C]),typeof C=="object"?u(d,C.schema,k):k!==Dn(h)&&(k[0]==="#"?(u(d,a[k],k),a[k]=d):this.refs[k]=h),k}function v(k){if(typeof k=="string"){if(!$$.test(k))throw new Error(`invalid anchor "${k}"`);x.call(this,`#${k}`)}}}),a;function u(d,m,f){if(m!==void 0&&!v$(d,m))throw l(f)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}Qe.getSchemaRefs=P$});var Wo=T(hr=>{"use strict";Object.defineProperty(hr,"__esModule",{value:!0});hr.getData=hr.KeywordCxt=hr.validateFunctionCode=void 0;var Wg=Eg(),Vg=Vo(),td=Bl(),Zi=Vo(),R$=Ig(),Go=Mg(),ed=Dg(),z=q(),L=Jt(),O$=Ko(),Gt=X(),Jo=Bo();function C$(t){if(Qg(t)&&(e_(t),Xg(t))){N$(t);return}Yg(t,()=>(0,Wg.topBoolOrEmptySchema)(t))}hr.validateFunctionCode=C$;function Yg({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"; ${Kg(r,o)}`),z$(t,o),t.code(s)}):t.func(e,(0,z._)`${L.default.data}, ${I$(o)}`,n.$async,()=>t.code(Kg(r,o)).code(s))}function I$(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 z$(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 N$(t){let{schema:e,opts:r,gen:n}=t;Yg(t,()=>{r.$comment&&e.$comment&&r_(t),D$(t),n.let(L.default.vErrors,null),n.let(L.default.errors,0),r.unevaluated&&A$(t),t_(t),H$(t)})}function A$(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 Kg(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 j$(t,e){if(Qg(t)&&(e_(t),Xg(t))){M$(t,e);return}(0,Wg.boolOrEmptySchema)(t,e)}function Xg({schema:t,self:e}){if(typeof t=="boolean")return!t;for(let r in t)if(e.RULES.all[r])return!0;return!1}function Qg(t){return typeof t.schema!="boolean"}function M$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&r_(t),Z$(t),U$(t);let s=n.const("_errs",L.default.errors);t_(t,s),n.var(e,(0,z._)`${s} === ${L.default.errors}`)}function e_(t){(0,Gt.checkUnknownRules)(t),L$(t)}function t_(t,e){if(t.opts.jtd)return Jg(t,[],!1,e);let r=(0,Vg.getSchemaTypes)(t.schema),n=(0,Vg.coerceAndCheckDataType)(t,r);Jg(t,r,!n,e)}function L$(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 D$(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 Z$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,O$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function U$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function r_({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 H$(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&&q$(t),e.return((0,z._)`${L.default.errors} === 0`))}function q$({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 Jg(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(()=>o_(t,"$ref",l.all.$ref.definition));return}c.jtd||F$(t,e),o.block(()=>{for(let m of l.rules)d(m);d(l.post)});function d(m){(0,td.shouldUseGroup)(s,m)&&(m.type?(o.if((0,Zi.checkDataType)(m.type,i,c.strictNumbers)),Gg(t,m),e.length===1&&e[0]===m.type&&r&&(o.else(),(0,Zi.reportTypeError)(t)),o.endIf()):Gg(t,m),a||o.if((0,z._)`${L.default.errors} === ${n||0}`))}}function Gg(t,e){let{gen:r,schema:n,opts:{useDefaults:o}}=t;o&&(0,R$.assignDefaults)(t,e.type),r.block(()=>{for(let s of e.rules)(0,td.shouldUseRule)(n,s)&&o_(t,s.keyword,s.definition,e.type)})}function F$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(B$(t,e),t.opts.allowUnionTypes||V$(t,e),K$(t,t.dataTypes))}function B$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{n_(t.dataTypes,r)||rd(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),G$(t,e)}}function V$(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&rd(t,"use allowUnionTypes to allow union type keyword")}function K$(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=>J$(e,i))&&rd(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function J$(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function n_(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function G$(t,e){let r=[];for(let n of t.dataTypes)n_(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,Go.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",s_(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,Go.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?Jo.reportExtraError:Jo.reportError)(this,this.def.error,r)}$dataError(){(0,Jo.reportError)(this,this.def.$dataError||Jo.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,Jo.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 j$(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}};hr.KeywordCxt=Ui;function o_(t,e,r,n){let o=new Ui(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,Go.funcKeywordCode)(o,r):"macro"in r?(0,Go.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,Go.funcKeywordCode)(o,r)}var W$=/^\/(?:[^~]|~0|~1)*$/,Y$=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function s_(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return L.default.rootData;if(t[0]==="/"){if(!W$.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=L.default.rootData}else{let u=Y$.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}`}}hr.getData=s_});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 Yo=T(ad=>{"use strict";Object.defineProperty(ad,"__esModule",{value:!0});var sd=Ko(),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(ft=>{"use strict";Object.defineProperty(ft,"__esModule",{value:!0});ft.resolveSchema=ft.getCompilingSchema=ft.resolveRef=ft.compileSchema=ft.SchemaEnv=void 0;var kt=q(),X$=Hi(),en=Jt(),St=Ko(),i_=X(),Q$=Wo(),Zn=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={}}};ft.SchemaEnv=Zn;function ud(t){let e=a_.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 kt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:X$.default,code:(0,kt._)`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:[kt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,kt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:kt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,kt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,Q$.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 kt.Name?void 0:p,items:h instanceof kt.Name?void 0:h,dynamicProps:p instanceof kt.Name,dynamicItems:h instanceof kt.Name},f.source&&(f.source.evaluated=(0,kt.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)}}ft.compileSchema=ud;function eP(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=nP.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 Zn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=tP.call(this,s)}ft.resolveRef=eP;function tP(t){return(0,St.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:ud.call(this,t)}function a_(t){for(let e of this._compilations)if(rP(e,t))return e}ft.getCompilingSchema=a_;function rP(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function nP(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 Zn({schema:a,schemaId:c,root:t,baseId:o})}return cd.call(this,r,i)}}ft.resolveSchema=qi;var oP=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,i_.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!oP.has(a)&&u&&(e=(0,St.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,i_.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 Zn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var c_=T((nM,sP)=>{sP.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((oM,p_)=>{"use strict";var iP=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),l_=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 aP=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function u_(t){return t.length=0,!0}function cP(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 uP(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=cP;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=u_}else{o.push(u);continue}}return o.length&&(a===u_?r.zone=o.join(""):i?n.push(o.join("")):n.push(ld(o))),r.address=n.join(""),r}function d_(t){if(lP(t,":")<2)return{host:t,isIPV6:!1};let e=uP(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 lP(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function dP(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 pP(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 fP(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!l_(r)){let n=d_(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}p_.exports={nonSimpleDomain:aP,recomposeAuthority:fP,normalizeComponentEncoding:pP,removeDotSegments:dP,isIPv4:l_,isUUID:iP,normalizeIPv6:d_,stringArrayToHexStripped:ld}});var __=T((sM,g_)=>{"use strict";var{isUUID:mP}=dd(),hP=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,gP=["http","https","ws","wss","urn","urn:uuid"];function _P(t){return gP.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 f_(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function m_(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 yP(t){return t.secure=pd(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function xP(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 vP(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(hP);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 kP(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 SP(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!mP(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function bP(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var h_={scheme:"http",domainHost:!0,parse:f_,serialize:m_},wP={scheme:"https",domainHost:h_.domainHost,parse:f_,serialize:m_},Bi={scheme:"ws",domainHost:!0,parse:yP,serialize:xP},EP={scheme:"wss",domainHost:Bi.domainHost,parse:Bi.parse,serialize:Bi.serialize},TP={scheme:"urn",parse:vP,serialize:kP,skipNormalize:!0},$P={scheme:"urn:uuid",parse:SP,serialize:bP,skipNormalize:!0},Vi={http:h_,https:wP,ws:Bi,wss:EP,urn:TP,"urn:uuid":$P};Object.setPrototypeOf(Vi,null);function fd(t){return t&&(Vi[t]||Vi[t.toLowerCase()])||void 0}g_.exports={wsIsSecure:pd,SCHEMES:Vi,isValidSchemeName:_P,getSchemeHandler:fd}});var v_=T((iM,Ji)=>{"use strict";var{normalizeIPv6:PP,removeDotSegments:Xo,recomposeAuthority:RP,normalizeComponentEncoding:Ki,isIPv4:OP,nonSimpleDomain:CP}=dd(),{SCHEMES:IP,getSchemeHandler:y_}=__();function zP(t,e){return typeof t=="string"?t=Nt(Wt(t,e),e):typeof t=="object"&&(t=Wt(Nt(t,e),e)),t}function NP(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=x_(Wt(t,n),Wt(e,n),n,!0);return n.skipEscape=!0,Nt(o,n)}function x_(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=Xo(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=Xo(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=Xo(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=Xo(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 AP(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=y_(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=RP(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=Xo(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 jP=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\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(jP);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(OP(n.host)===!1){let c=PP(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=y_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&CP(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:IP,normalize:zP,resolve:NP,resolveComponent:x_,equal:AP,serialize:Nt,parse:Wt};Ji.exports=md;Ji.exports.default=md;Ji.exports.fastUri=md});var S_=T(hd=>{"use strict";Object.defineProperty(hd,"__esModule",{value:!0});var k_=v_();k_.code='require("ajv/dist/runtime/uri").default';hd.default=k_});var O_=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 MP=Wo();Object.defineProperty(ze,"KeywordCxt",{enumerable:!0,get:function(){return MP.KeywordCxt}});var Un=q();Object.defineProperty(ze,"_",{enumerable:!0,get:function(){return Un._}});Object.defineProperty(ze,"str",{enumerable:!0,get:function(){return Un.str}});Object.defineProperty(ze,"stringify",{enumerable:!0,get:function(){return Un.stringify}});Object.defineProperty(ze,"nil",{enumerable:!0,get:function(){return Un.nil}});Object.defineProperty(ze,"Name",{enumerable:!0,get:function(){return Un.Name}});Object.defineProperty(ze,"CodeGen",{enumerable:!0,get:function(){return Un.CodeGen}});var LP=Hi(),$_=Yo(),DP=Fl(),Qo=Fi(),ZP=q(),es=Ko(),Gi=Vo(),_d=X(),b_=c_(),UP=S_(),P_=(t,e)=>new RegExp(t,e);P_.code="new RegExp";var HP=["removeAdditional","useDefaults","coerceTypes"],qP=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),FP={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."},BP={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},w_=200;function VP(t){var e,r,n,o,s,i,a,c,u,l,d,m,f,p,h,g,x,v,k,E,C,ye,be,st,co;let Se=t.strict,Qt=(e=t.code)===null||e===void 0?void 0:e.optimize,Ze=Qt===!0||Qt===void 0?1:Qt||0,Cs=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:P_,Da=(o=t.uriResolver)!==null&&o!==void 0?o:UP.default;return{strictSchema:(i=(s=t.strictSchema)!==null&&s!==void 0?s:Se)!==null&&i!==void 0?i:!0,strictNumbers:(c=(a=t.strictNumbers)!==null&&a!==void 0?a:Se)!==null&&c!==void 0?c:!0,strictTypes:(l=(u=t.strictTypes)!==null&&u!==void 0?u:Se)!==null&&l!==void 0?l:"log",strictTuples:(m=(d=t.strictTuples)!==null&&d!==void 0?d:Se)!==null&&m!==void 0?m:"log",strictRequired:(p=(f=t.strictRequired)!==null&&f!==void 0?f:Se)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Ze,regExp:Cs}:{optimize:Ze,regExp:Cs},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:w_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:w_,meta:(x=t.meta)!==null&&x!==void 0?x:!0,messages:(v=t.messages)!==null&&v!==void 0?v:!0,inlineRefs:(k=t.inlineRefs)!==null&&k!==void 0?k:!0,schemaId:(E=t.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(C=t.addUsedSchema)!==null&&C!==void 0?C:!0,validateSchema:(ye=t.validateSchema)!==null&&ye!==void 0?ye:!0,validateFormats:(be=t.validateFormats)!==null&&be!==void 0?be:!0,unicodeRegExp:(st=t.unicodeRegExp)!==null&&st!==void 0?st:!0,int32range:(co=t.int32range)!==null&&co!==void 0?co:!0,uriResolver:Da}}var ts=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...VP(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new ZP.ValueScope({scope:{},prefixes:qP,es5:r,lines:n}),this.logger=XP(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,DP.getRules)(),E_.call(this,FP,e,"NOT SUPPORTED"),E_.call(this,BP,e,"DEPRECATED","warn"),this._metaOpts=WP.call(this),e.formats&&JP.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&GP.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),KP.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=b_;n==="id"&&(o={...b_},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 $_.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,es.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=T_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new Qo.SchemaEnv({schema:{},schemaId:n});if(r=Qo.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=T_.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,es.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(e0.call(this,n,r),!r)return(0,_d.eachItem)(n,s=>gd.call(this,s)),this;r0.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]=R_(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,es.normalizeId)(i||n);let u=es.getSchemaRefs.call(this,e,n);return c=new Qo.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):Qo.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{Qo.compileSchema.call(this,e)}finally{this.opts=r}}};ts.ValidationError=LP.default;ts.MissingRefError=$_.default;ze.default=ts;function E_(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 T_(t){return t=(0,es.normalizeId)(t),this.schemas[t]||this.refs[t]}function KP(){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 JP(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function GP(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 WP(){let t={...this.opts};for(let e of HP)delete t[e];return t}var YP={log(){},warn(){},error(){}};function XP(t){if(t===!1)return YP;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 QP=/^[a-z_$][a-z0-9_$:-]*$/i;function e0(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(!QP.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?t0.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 t0(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 r0(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=R_(e)),t.validateSchema=this.compile(e,!0))}var n0={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function R_(t){return{anyOf:[t,n0]}}});var C_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var o0={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};yd.default=o0});var A_=T(tn=>{"use strict";Object.defineProperty(tn,"__esModule",{value:!0});tn.callRef=tn.getValidate=void 0;var s0=Yo(),I_=pt(),et=q(),Hn=Jt(),z_=Fi(),Wi=X(),i0={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=z_.resolveRef.call(c,u,o,r);if(l===void 0)throw new s0.default(n.opts.uriResolver,o,r);if(l instanceof z_.SchemaEnv)return m(l);return f(l);function d(){if(s===u)return Yi(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Yi(t,(0,et._)`${p}.validate`,u,u.$async)}function m(p){let h=N_(t,p);Yi(t,h,p,p.$async)}function f(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,et.stringify)(p)}:{ref:p}),g=e.name("valid"),x=t.subschema({schema:p,dataTypes:[],schemaPath:et.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(x),t.ok(g)}}};function N_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,et._)`${r.scopeValue("wrapper",{ref:e})}.validate`}tn.getValidate=N_;function Yi(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Hn.default.this:et.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,et._)`await ${(0,I_.callValidateCode)(t,e,u)}`),f(e),i||o.assign(p,!0)},h=>{o.if((0,et._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),m(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,I_.callValidateCode)(t,e,u),()=>f(e),()=>m(e))}function m(p){let h=(0,et._)`${p}.errors`;o.assign(Hn.default.vErrors,(0,et._)`${Hn.default.vErrors} === null ? ${h} : ${Hn.default.vErrors}.concat(${h})`),o.assign(Hn.default.errors,(0,et._)`${Hn.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=Wi.mergeEvaluated.props(o,g.props,s.props));else{let x=o.var("props",(0,et._)`${p}.evaluated.props`);s.props=Wi.mergeEvaluated.props(o,x,s.props,et.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 x=o.var("items",(0,et._)`${p}.evaluated.items`);s.items=Wi.mergeEvaluated.items(o,x,s.items,et.Name)}}}tn.callRef=Yi;tn.default=i0});var j_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var a0=C_(),c0=A_(),u0=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",a0.default,c0.default];xd.default=u0});var M_=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var Xi=q(),gr=Xi.operators,Qi={maximum:{okStr:"<=",ok:gr.LTE,fail:gr.GT},minimum:{okStr:">=",ok:gr.GTE,fail:gr.LT},exclusiveMaximum:{okStr:"<",ok:gr.LT,fail:gr.GTE},exclusiveMinimum:{okStr:">",ok:gr.GT,fail:gr.LTE}},l0={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}}`},d0={keyword:Object.keys(Qi),type:"number",schemaType:"number",$data:!0,error:l0,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Xi._)`${r} ${Qi[e].fail} ${n} || isNaN(${r})`)}};vd.default=d0});var L_=T(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var rs=q(),p0={message:({schemaCode:t})=>(0,rs.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,rs._)`{multipleOf: ${t}}`},f0={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:p0,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,rs._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,rs._)`${i} !== parseInt(${i})`;t.fail$data((0,rs._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};kd.default=f0});var Z_=T(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});function D_(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}Sd.default=D_;D_.code='require("ajv/dist/runtime/ucs2length").default'});var U_=T(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var rn=q(),m0=X(),h0=Z_(),g0={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}}`},_0={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:g0,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,m0.useFunc)(t.gen,h0.default)}(${r})`;t.fail$data((0,rn._)`${i} ${s} ${n}`)}};bd.default=_0});var H_=T(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var y0=pt(),x0=X(),qn=q(),v0={message:({schemaCode:t})=>(0,qn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,qn._)`{pattern: ${t}}`},k0={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:v0,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,qn._)`new RegExp`:(0,x0.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,qn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,qn._)`!${l}`)}else{let c=(0,y0.usePattern)(t,o);t.fail$data((0,qn._)`!${c}.test(${r})`)}}};wd.default=k0});var q_=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var ns=q(),S0={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,ns.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,ns._)`{limit: ${t}}`},b0={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:S0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?ns.operators.GT:ns.operators.LT;t.fail$data((0,ns._)`Object.keys(${r}).length ${o} ${n}`)}};Ed.default=b0});var F_=T(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var os=pt(),ss=q(),w0=X(),E0={message:({params:{missingProperty:t}})=>(0,ss.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,ss._)`{missingProperty: ${t}}`},T0={keyword:"required",type:"object",schemaType:"array",$data:!0,error:E0,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,x=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,w0.checkStrictMode)(i,x,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(ss.nil,d);else for(let f of r)(0,os.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,os.checkMissingProp)(t,r,f)),(0,os.reportMissingProp)(t,f),e.else()}function d(){e.forOf("prop",n,f=>{t.setParams({missingProperty:f}),e.if((0,os.noPropertyInData)(e,o,f,a.ownProperties),()=>t.error())})}function m(f,p){t.setParams({missingProperty:f}),e.forOf(f,n,()=>{e.assign(p,(0,os.propertyInData)(e,o,f,a.ownProperties)),e.if((0,ss.not)(p),()=>{t.error(),e.break()})},ss.nil)}}};Td.default=T0});var B_=T($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var is=q(),$0={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,is.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,is._)`{limit: ${t}}`},P0={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:$0,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?is.operators.GT:is.operators.LT;t.fail$data((0,is._)`${r}.length ${o} ${n}`)}};$d.default=P0});var ea=T(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var V_=Xl();V_.code='require("ajv/dist/runtime/equal").default';Pd.default=V_});var K_=T(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var Rd=Vo(),Ne=q(),R0=X(),O0=ea(),C0={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}}`},I0={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:C0,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()?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"),x=(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(x,(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 f(p,h){let g=(0,R0.useFunc)(e,O0.default),x=e.name("outer");e.label(x).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(x)})))}}};Od.default=I0});var J_=T(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var Cd=q(),z0=X(),N0=ea(),A0={message:"must be equal to constant",params:({schemaCode:t})=>(0,Cd._)`{allowedValue: ${t}}`},j0={keyword:"const",$data:!0,error:A0,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,z0.useFunc)(e,N0.default)}(${r}, ${o})`):t.fail((0,Cd._)`${s} !== ${r}`)}};Id.default=j0});var G_=T(zd=>{"use strict";Object.defineProperty(zd,"__esModule",{value:!0});var as=q(),M0=X(),L0=ea(),D0={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,as._)`{allowedValues: ${t}}`},Z0={keyword:"enum",schemaType:"array",$data:!0,error:D0,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,M0.useFunc)(e,L0.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,as.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,as._)`${u()}(${r}, ${f})`,()=>e.assign(l,!0).break()))}function m(f,p){let h=o[p];return typeof h=="object"&&h!==null?(0,as._)`${u()}(${r}, ${f}[${p}])`:(0,as._)`${r} === ${h}`}}};zd.default=Z0});var W_=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var U0=M_(),H0=L_(),q0=U_(),F0=H_(),B0=q_(),V0=F_(),K0=B_(),J0=K_(),G0=J_(),W0=G_(),Y0=[U0.default,H0.default,q0.default,F0.default,B0.default,V0.default,K0.default,J0.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},G0.default,W0.default];Nd.default=Y0});var jd=T(cs=>{"use strict";Object.defineProperty(cs,"__esModule",{value:!0});cs.validateAdditionalItems=void 0;var nn=q(),Ad=X(),X0={message:({params:{len:t}})=>(0,nn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,nn._)`{limit: ${t}}`},Q0={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:X0,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}Y_(t,n)}};function Y_(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,Ad.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:Ad.Type.Num},u),i.allErrors||r.if((0,nn.not)(u),()=>r.break())})}}cs.validateAdditionalItems=Y_;cs.default=Q0});var Md=T(us=>{"use strict";Object.defineProperty(us,"__esModule",{value:!0});us.validateTuple=void 0;var X_=q(),ta=X(),eR=pt(),tR={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return Q_(t,"additionalItems",e);r.items=!0,!(0,ta.alwaysValidSchema)(r,e)&&t.ok((0,eR.validateArray)(t))}};function Q_(t,e,r=t.schema){let{gen:n,parentSchema:o,data:s,keyword:i,it:a}=t;l(o),a.opts.unevaluated&&r.length&&a.items!==!0&&(a.items=ta.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,X_._)`${s}.length`);r.forEach((d,m)=>{(0,ta.alwaysValidSchema)(a,d)||(n.if((0,X_._)`${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,ta.checkStrictMode)(a,g,m.strictTuples)}}}us.validateTuple=Q_;us.default=tR});var ey=T(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var rR=Md(),nR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,rR.validateTuple)(t,"items")};Ld.default=nR});var ry=T(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var ty=q(),oR=X(),sR=pt(),iR=jd(),aR={message:({params:{len:t}})=>(0,ty.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,ty._)`{limit: ${t}}`},cR={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:aR,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,oR.alwaysValidSchema)(n,e)&&(o?(0,iR.validateAdditionalItems)(t,o):t.ok((0,sR.validateArray)(t)))}};Dd.default=cR});var ny=T(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var mt=q(),ra=X(),uR={message:({params:{min:t,max:e}})=>e===void 0?(0,mt.str)`must contain at least ${t} valid item(s)`:(0,mt.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,mt._)`{minContains: ${t}}`:(0,mt._)`{minContains: ${t}, maxContains: ${e}}`},lR={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:uR,code(t){let{gen:e,schema:r,parentSchema:n,data:o,it:s}=t,i,a,{minContains:c,maxContains:u}=n;s.opts.next?(i=c===void 0?1:c,a=u):i=1;let l=e.const("len",(0,mt._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,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,mt._)`${l} >= ${i}`;a!==void 0&&(h=(0,mt._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?f(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,mt._)`${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,x=>{t.subschema({keyword:"contains",dataProp:x,dataPropType:ra.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,mt._)`${h}++`),a===void 0?e.if((0,mt._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,mt._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,mt._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Zd.default=lR});var iy=T(At=>{"use strict";Object.defineProperty(At,"__esModule",{value:!0});At.validateSchemaDeps=At.validatePropertyDeps=At.error=void 0;var Ud=q(),dR=X(),ls=pt();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 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,ls.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,ls.checkReportMissingProp)(t,u)}):(r.if((0,Ud._)`${c} && (${(0,ls.checkMissingProp)(t,a,s)})`),(0,ls.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,ls.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 ea=pt(),bt=q(),mR=Kt(),ta=X(),hR={message:"must NOT have additional properties",params:({params:t})=>(0,bt._)`{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,ta.alwaysValidSchema)(i,r))return;let u=(0,ea.allSchemaProperties)(n.properties),l=(0,ea.allSchemaProperties)(n.patternProperties);d(),t.ok((0,bt._)`${s} === ${mR.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 v=(0,ta.schemaRefOrVal)(i,n.properties,"properties");y=(0,ea.isOwnProperty)(e,v,g)}else u.length?y=(0,bt.or)(...u.map(v=>(0,bt._)`${g} === ${v}`)):y=bt.nil;return l.length&&(y=(0,bt.or)(y,...l.map(v=>(0,bt._)`${(0,ea.usePattern)(t,v)}.test(${g})`))),(0,bt.not)(y)}function f(g){e.code((0,bt._)`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,ta.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(h(g,y,!1),e.if((0,bt.not)(y),()=>{t.reset(),f(g)})):(h(g,y),a||e.if((0,bt.not)(y),()=>e.break()))}}function h(g,y,v){let S={keyword:"additionalProperties",dataProp:g,dataPropType:ta.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=Wo(),ay=pt(),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=pt(),ra=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 ra.Name)&&(s.props=(0,py.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,dy.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,ra._)`${(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,ra._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,ra.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=pt(),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 na=q(),wR=X(),ER={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,na._)`{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 m;(0,wR.alwaysValidSchema)(o,l)?e.var(c,!0):m=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,na._)`${c} && ${i}`).assign(i,!1).assign(a,(0,na._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),m&&t.mergeEvaluated(m,na.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 oa=q(),xy=X(),RR={message:({params:t})=>(0,oa.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,oa._)`{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,oa.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,oa._)`${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?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)(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 f(){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(Bn=>{"use strict";Object.defineProperty(Bn,"__esModule",{value:!0});Bn.contentVocabulary=Bn.metadataVocabulary=void 0;Bn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Bn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var $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(sa=>{"use strict";Object.defineProperty(sa,"__esModule",{value:!0});sa.DiscrError=void 0;var Py;(function(t){t.Tag="tag",t.Mapping="mapping"})(Py||(sa.DiscrError=Py={}))});var Cy=T(sp=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});var Vn=q(),op=Ry(),Oy=Ui(),sO=Yo(),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,Vn._)`{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,Vn._)`${r}${(0,Vn.getProperty)(a)}`);e.if((0,Vn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:op.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,Vn._)`${u} === ${p}`),e.assign(c,d(f[p]));e.else(),t.error(!1,{discrError:op.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,Vn.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,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=(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)),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"],ia="http://json-schema.org/draft-07/schema",Kn=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,ia,!1),this.refs["http://json-schema.org/schema"]=ia}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(ia)?ia:void 0)}};fe.Ajv=Kn;ip.exports=fe=Kn;ip.exports.Ajv=Kn;Object.defineProperty(fe,"__esModule",{value:!0});fe.default=Kn;var mO=Wo();Object.defineProperty(fe,"KeywordCxt",{enumerable:!0,get:function(){return mO.KeywordCxt}});var Jn=q();Object.defineProperty(fe,"_",{enumerable:!0,get:function(){return Jn._}});Object.defineProperty(fe,"str",{enumerable:!0,get:function(){return Jn.str}});Object.defineProperty(fe,"stringify",{enumerable:!0,get:function(){return Jn.stringify}});Object.defineProperty(fe,"nil",{enumerable:!0,get:function(){return Jn.nil}});Object.defineProperty(fe,"Name",{enumerable:!0,get:function(){return Jn.Name}});Object.defineProperty(fe,"CodeGen",{enumerable:!0,get:function(){return Jn.CodeGen}});var hO=Di();Object.defineProperty(fe,"ValidationError",{enumerable:!0,get:function(){return hO.default}});var gO=Yo();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,m=o-u*c-(d<0?1:0);return(m===23||m===-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(Gn=>{"use strict";Object.defineProperty(Gn,"__esModule",{value:!0});Gn.formatLimitDefinition=void 0;var OO=ap(),wt=q(),_r=wt.operators,aa={formatMaximum:{okStr:"<=",ok:_r.LTE,fail:_r.GT},formatMinimum:{okStr:">=",ok:_r.GTE,fail:_r.LT},formatExclusiveMaximum:{okStr:"<",ok:_r.LT,fail:_r.GTE},formatExclusiveMinimum:{okStr:">",ok:_r.GT,fail:_r.LTE}},CO={message:({keyword:t,schemaCode:e})=>(0,wt.str)`should be ${aa[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,wt._)`{comparison: ${aa[t].okStr}, limit: ${e}}`};Gn.formatLimitDefinition={keyword:Object.keys(aa),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 m=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),f=e.const("fmt",(0,wt._)`${m}[${c.schemaCode}]`);t.fail$data((0,wt.or)((0,wt._)`typeof ${f} != "object"`,(0,wt._)`${f} instanceof RegExp`,(0,wt._)`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,wt._)`${i.code.formats}${(0,wt.getProperty)(m)}`:void 0});t.fail$data(d(p))}function d(m){return(0,wt._)`${m}.compare(${r}, ${n}) ${aa[o].fail} 0`}},dependencies:["format"]};var IO=t=>(t.addKeyword(Gn.formatLimitDefinition),t);Gn.default=IO});var Vy=T((ds,By)=>{"use strict";Object.defineProperty(ds,"__esModule",{value:!0});var Wn=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,Wn.fullFormats,qy),t;let[r,n]=e.mode==="fast"?[Wn.fastFormats,NO]:[Wn.fullFormats,qy],o=e.formats||Wn.formatNames;return Fy(t,o,r,n),e.keywords&&(0,zO.default)(t),t};mp.get=(t,e="full")=>{let n=(e==="fast"?Wn.fastFormats:Wn.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=ds=mp;Object.defineProperty(ds,"__esModule",{value:!0});ds.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 gs(t,e){let r=va[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=va[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}var $t,gC,Ix,va,QL,eD,zx=we(()=>{"use strict";$t={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("|"),va={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},QL=[$t.PRE_TOOL_USE,$t.SESSION_START],eD=[$t.POST_TOOL_USE,$t.PRE_COMPACT,$t.USER_PROMPT_SUBMIT]});var Op={};Ve(Op,{ClaudeCodeAdapter:()=>Rp});import{createHash as Nx}from"node:crypto";import{readFileSync as Xn,writeFileSync as Sa,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 _s}from"node:path";import{homedir as on}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(on(),".claude","settings.json")}getSessionDir(){let e=_s(on(),".claude","context-mode","sessions");return _C(e,{recursive:!0}),e}getSessionDBPath(e){let r=Nx("sha256").update(e).digest("hex").slice(0,16);return _s(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Nx("sha256").update(e).digest("hex").slice(0,16);return _s(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=Xn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){Sa(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,$t.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,$t.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=[_s(e,"hooks","hooks.json"),_s(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Xn(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=>gs(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>gs(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(on(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Xn(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(on(),".claude"),Lt(on(),".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=[$t.PRE_TOOL_USE,$t.SESSION_START];for(let i of s){let a=Pp(i,e);if(i===$t.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=>gs(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=>gs(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(va)){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(on(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Xn(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();Sa(n,JSON.stringify(o,null,2)+`
11
- `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"CLAUDE.md",globalPath:Lt(on(),".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=Xn(s,"utf-8");try{let a=Xn(o,"utf-8");return a.includes("context-mode")?null:(Sa(o,a.trimEnd()+`
9
+ deps: ${r}}`};var pR={keyword:"dependencies",type:"object",schemaType:"object",error:At.error,code(t){let[e,r]=fR(t);oy(t,e),sy(t,r)}};function fR({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 oy(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,ls.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,ls.checkReportMissingProp)(t,u)}):(r.if((0,Ud._)`${c} && (${(0,ls.checkMissingProp)(t,a,s)})`),(0,ls.reportMissingProp)(t,s),r.else())}}At.validatePropertyDeps=oy;function sy(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,dR.alwaysValidSchema)(s,e[a])||(r.if((0,ls.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=sy;At.default=pR});var cy=T(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var ay=q(),mR=X(),hR={message:"property name must be valid",params:({params:t})=>(0,ay._)`{propertyName: ${t.propertyName}}`},gR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:hR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,mR.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,ay.not)(s),()=>{t.error(!0),o.allErrors||e.break()})}),t.ok(s)}};Hd.default=gR});var Fd=T(qd=>{"use strict";Object.defineProperty(qd,"__esModule",{value:!0});var na=pt(),bt=q(),_R=Jt(),oa=X(),yR={message:"must NOT have additional properties",params:({params:t})=>(0,bt._)`{additionalProperty: ${t.additionalProperty}}`},xR={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:yR,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,bt._)`${s} === ${_R.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 x;if(u.length>8){let v=(0,oa.schemaRefOrVal)(i,n.properties,"properties");x=(0,na.isOwnProperty)(e,v,g)}else u.length?x=(0,bt.or)(...u.map(v=>(0,bt._)`${g} === ${v}`)):x=bt.nil;return l.length&&(x=(0,bt.or)(x,...l.map(v=>(0,bt._)`${(0,na.usePattern)(t,v)}.test(${g})`))),(0,bt.not)(x)}function f(g){e.code((0,bt._)`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,oa.alwaysValidSchema)(i,r)){let x=e.name("valid");c.removeAdditional==="failing"?(h(g,x,!1),e.if((0,bt.not)(x),()=>{t.reset(),f(g)})):(h(g,x),a||e.if((0,bt.not)(x),()=>e.break()))}}function h(g,x,v){let k={keyword:"additionalProperties",dataProp:g,dataPropType:oa.Type.Str};v===!1&&Object.assign(k,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(k,x)}}};qd.default=xR});var dy=T(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var vR=Wo(),uy=pt(),Bd=X(),ly=Fd(),kR={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&&ly.default.code(new vR.KeywordCxt(s,ly.default,"additionalProperties"));let i=(0,uy.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,uy.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=kR});var hy=T(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var py=pt(),sa=q(),fy=X(),my=X(),SR={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,py.allSchemaProperties)(r),c=a.filter(h=>(0,fy.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,my.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,fy.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,sa._)`${(0,py.usePattern)(t,h)}.test(${g})`,()=>{let x=c.includes(h);x||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:my.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,sa._)`${d}[${g}]`,!0):!x&&!s.allErrors&&e.if((0,sa.not)(l),()=>e.break())})})}}};Kd.default=SR});var gy=T(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var bR=X(),wR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,bR.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=wR});var _y=T(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var ER=pt(),TR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:ER.validateUnion,error:{message:"must match a schema in anyOf"}};Gd.default=TR});var yy=T(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var ia=q(),$R=X(),PR={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,ia._)`{passingSchemas: ${t.passing}}`},RR={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:PR,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,$R.alwaysValidSchema)(o,l)?e.var(c,!0):m=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),m&&t.mergeEvaluated(m,ia.Name)})})}}};Wd.default=RR});var xy=T(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});var OR=X(),CR={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,OR.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Yd.default=CR});var Sy=T(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});var aa=q(),ky=X(),IR={message:({params:t})=>(0,aa.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,aa._)`{failingKeyword: ${t.ifClause}}`},zR={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:IR,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,ky.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=vy(n,"then"),s=vy(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 m=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(m,i),d?e.assign(d,(0,aa._)`${l}`):t.setParams({ifClause:l})}}}};function vy(t,e){let r=t.schema[e];return r!==void 0&&!(0,ky.alwaysValidSchema)(t,r)}Xd.default=zR});var by=T(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});var NR=X(),AR={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,NR.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Qd.default=AR});var wy=T(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});var jR=jd(),MR=ey(),LR=Md(),DR=ry(),ZR=ny(),UR=iy(),HR=cy(),qR=Fd(),FR=dy(),BR=hy(),VR=gy(),KR=_y(),JR=yy(),GR=xy(),WR=Sy(),YR=by();function XR(t=!1){let e=[VR.default,KR.default,JR.default,GR.default,WR.default,YR.default,HR.default,qR.default,UR.default,FR.default,BR.default];return t?e.push(MR.default,DR.default):e.push(jR.default,LR.default),e.push(ZR.default),e}ep.default=XR});var Ey=T(tp=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});var xe=q(),QR={message:({schemaCode:t})=>(0,xe.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,xe._)`{format: ${t}}`},eO={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:QR,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,xe._)`${p}[${i}]`),g=r.let("fType"),x=r.let("format");r.if((0,xe._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,xe._)`${h}.type || "string"`).assign(x,(0,xe._)`${h}.validate`),()=>r.assign(g,(0,xe._)`"string"`).assign(x,h)),t.fail$data((0,xe.or)(v(),k()));function v(){return c.strictSchema===!1?xe.nil:(0,xe._)`${i} && !${x}`}function k(){let E=l.$async?(0,xe._)`(${h}.async ? await ${x}(${n}) : ${x}(${n}))`:(0,xe._)`${x}(${n})`,C=(0,xe._)`(typeof ${x} == "function" ? ${E} : ${x}.test(${n}))`;return(0,xe._)`${x} && ${x} !== true && ${g} === ${e} && !${C}`}}function f(){let p=d.formats[s];if(!p){v();return}if(p===!0)return;let[h,g,x]=k(p);h===e&&t.pass(E());function v(){if(c.strictSchema===!1){d.logger.warn(C());return}throw new Error(C());function C(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function k(C){let ye=C instanceof RegExp?(0,xe.regexpCode)(C):c.code.formats?(0,xe._)`${c.code.formats}${(0,xe.getProperty)(s)}`:void 0,be=r.scopeValue("formats",{key:s,ref:C,code:ye});return typeof C=="object"&&!(C instanceof RegExp)?[C.type||"string",C.validate,(0,xe._)`${be}.validate`]:["string",C,be]}function E(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,xe._)`await ${x}(${n})`}return typeof g=="function"?(0,xe._)`${x}(${n})`:(0,xe._)`${x}.test(${n})`}}}};tp.default=eO});var Ty=T(rp=>{"use strict";Object.defineProperty(rp,"__esModule",{value:!0});var tO=Ey(),rO=[tO.default];rp.default=rO});var $y=T(Fn=>{"use strict";Object.defineProperty(Fn,"__esModule",{value:!0});Fn.contentVocabulary=Fn.metadataVocabulary=void 0;Fn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Fn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Ry=T(np=>{"use strict";Object.defineProperty(np,"__esModule",{value:!0});var nO=j_(),oO=W_(),sO=wy(),iO=Ty(),Py=$y(),aO=[nO.default,oO.default,(0,sO.default)(),iO.default,Py.metadataVocabulary,Py.contentVocabulary];np.default=aO});var Cy=T(ca=>{"use strict";Object.defineProperty(ca,"__esModule",{value:!0});ca.DiscrError=void 0;var Oy;(function(t){t.Tag="tag",t.Mapping="mapping"})(Oy||(ca.DiscrError=Oy={}))});var zy=T(sp=>{"use strict";Object.defineProperty(sp,"__esModule",{value:!0});var Bn=q(),op=Cy(),Iy=Fi(),cO=Yo(),uO=X(),lO={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,Bn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},dO={keyword:"discriminator",type:"object",schemaType:"object",error:lO,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,Bn._)`${r}${(0,Bn.getProperty)(a)}`);e.if((0,Bn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:op.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,Bn._)`${u} === ${p}`),e.assign(c,d(f[p]));e.else(),t.error(!1,{discrError:op.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,Bn.Name),p}function m(){var f;let p={},h=x(o),g=!0;for(let E=0;E<i.length;E++){let C=i[E];if(C?.$ref&&!(0,uO.schemaHasRulesButRef)(C,s.self.RULES)){let be=C.$ref;if(C=Iy.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,be),C instanceof Iy.SchemaEnv&&(C=C.schema),C===void 0)throw new cO.default(s.opts.uriResolver,s.baseId,be)}let ye=(f=C?.properties)===null||f===void 0?void 0:f[a];if(typeof ye!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||x(C)),v(ye,E)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function x({required:E}){return Array.isArray(E)&&E.includes(a)}function v(E,C){if(E.const)k(E.const,C);else if(E.enum)for(let ye of E.enum)k(ye,C);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function k(E,C){if(typeof E!="string"||E in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[E]=C}}}};sp.default=dO});var Ny=T((JM,pO)=>{pO.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((de,ip)=>{"use strict";Object.defineProperty(de,"__esModule",{value:!0});de.MissingRefError=de.ValidationError=de.CodeGen=de.Name=de.nil=de.stringify=de.str=de._=de.KeywordCxt=de.Ajv=void 0;var fO=O_(),mO=Ry(),hO=zy(),Ay=Ny(),gO=["/properties"],ua="http://json-schema.org/draft-07/schema",Vn=class extends fO.default{_addVocabularies(){super._addVocabularies(),mO.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(hO.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Ay,gO):Ay;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)}};de.Ajv=Vn;ip.exports=de=Vn;ip.exports.Ajv=Vn;Object.defineProperty(de,"__esModule",{value:!0});de.default=Vn;var _O=Wo();Object.defineProperty(de,"KeywordCxt",{enumerable:!0,get:function(){return _O.KeywordCxt}});var Kn=q();Object.defineProperty(de,"_",{enumerable:!0,get:function(){return Kn._}});Object.defineProperty(de,"str",{enumerable:!0,get:function(){return Kn.str}});Object.defineProperty(de,"stringify",{enumerable:!0,get:function(){return Kn.stringify}});Object.defineProperty(de,"nil",{enumerable:!0,get:function(){return Kn.nil}});Object.defineProperty(de,"Name",{enumerable:!0,get:function(){return Kn.Name}});Object.defineProperty(de,"CodeGen",{enumerable:!0,get:function(){return Kn.CodeGen}});var yO=Hi();Object.defineProperty(de,"ValidationError",{enumerable:!0,get:function(){return yO.default}});var xO=Yo();Object.defineProperty(de,"MissingRefError",{enumerable:!0,get:function(){return xO.default}})});var qy=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(Dy,dp),time:jt(up(!0),pp),"date-time":jt(jy(!0),Uy),"iso-time":jt(up(),Zy),"iso-date-time":jt(jy(),Hy),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:EO,"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:IO,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:TO,int32:{type:"number",validate:RO},int64:{type:"number",validate:OO},float:{type:"number",validate:Ly},double:{type:"number",validate:Ly},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,Uy),"iso-time":jt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Zy),"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,Hy),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 vO(t){return t%4===0&&(t%100!==0||t%400===0)}var kO=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,SO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Dy(t){let e=kO.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&&vO(r)?29:SO[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,m=o-u*c-(d<0?1:0);return(m===23||m===-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 Zy(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 jy(t){let e=up(t);return function(n){let o=n.split(lp);return o.length===2&&Dy(o[0])&&e(o[1])}}function Uy(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function Hy(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 bO=/\/|:/,wO=/^(?:[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 EO(t){return bO.test(t)&&wO.test(t)}var My=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function TO(t){return My.lastIndex=0,My.test(t)}var $O=-(2**31),PO=2**31-1;function RO(t){return Number.isInteger(t)&&t<=PO&&t>=$O}function OO(t){return Number.isInteger(t)}function Ly(){return!0}var CO=/[^\\]\\Z/;function IO(t){if(CO.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var Fy=T(Jn=>{"use strict";Object.defineProperty(Jn,"__esModule",{value:!0});Jn.formatLimitDefinition=void 0;var zO=ap(),wt=q(),_r=wt.operators,la={formatMaximum:{okStr:"<=",ok:_r.LTE,fail:_r.GT},formatMinimum:{okStr:">=",ok:_r.GTE,fail:_r.LT},formatExclusiveMaximum:{okStr:"<",ok:_r.LT,fail:_r.GTE},formatExclusiveMinimum:{okStr:">",ok:_r.GT,fail:_r.LTE}},NO={message:({keyword:t,schemaCode:e})=>(0,wt.str)`should be ${la[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,wt._)`{comparison: ${la[t].okStr}, limit: ${e}}`};Jn.formatLimitDefinition={keyword:Object.keys(la),type:"string",schemaType:"string",$data:!0,error:NO,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 zO.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,wt._)`${m}[${c.schemaCode}]`);t.fail$data((0,wt.or)((0,wt._)`typeof ${f} != "object"`,(0,wt._)`${f} instanceof RegExp`,(0,wt._)`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,wt._)`${i.code.formats}${(0,wt.getProperty)(m)}`:void 0});t.fail$data(d(p))}function d(m){return(0,wt._)`${m}.compare(${r}, ${n}) ${la[o].fail} 0`}},dependencies:["format"]};var AO=t=>(t.addKeyword(Jn.formatLimitDefinition),t);Jn.default=AO});var Jy=T((ds,Ky)=>{"use strict";Object.defineProperty(ds,"__esModule",{value:!0});var Gn=qy(),jO=Fy(),fp=q(),By=new fp.Name("fullFormats"),MO=new fp.Name("fastFormats"),mp=(t,e={keywords:!0})=>{if(Array.isArray(e))return Vy(t,e,Gn.fullFormats,By),t;let[r,n]=e.mode==="fast"?[Gn.fastFormats,MO]:[Gn.fullFormats,By],o=e.formats||Gn.formatNames;return Vy(t,o,r,n),e.keywords&&(0,jO.default)(t),t};mp.get=(t,e="full")=>{let n=(e==="fast"?Gn.fastFormats:Gn.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function Vy(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])}Ky.exports=ds=mp;Object.defineProperty(ds,"__esModule",{value:!0});ds.default=mp});var Ix,zx=we(()=>{"use strict";Ix={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed"}});function _s(t,e){let r=gs[e],n=Rp(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Rp(t,e){if(e){let r=gs[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}function Op(t){return t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function Ax(t){let e=Object.values(gs);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var $t,kC,Nx,gs,iD,aD,jx=we(()=>{"use strict";$t={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},kC=["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"],Nx=kC.join("|"),gs={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},iD=[$t.PRE_TOOL_USE,$t.SESSION_START],aD=[$t.POST_TOOL_USE,$t.PRE_COMPACT,$t.USER_PROMPT_SUBMIT]});var Ip={};Ve(Ip,{ClaudeCodeAdapter:()=>Cp});import{createHash as Mx}from"node:crypto";import{readFileSync as Yn,writeFileSync as ba,mkdirSync as SC,copyFileSync as bC,accessSync as Lx,existsSync as wC,readdirSync as EC,chmodSync as TC,constants as Dx}from"node:fs";import{resolve as Lt,join as ys}from"node:path";import{homedir as on}from"node:os";var Cp,zp=we(()=>{"use strict";jx();Cp=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(on(),".claude","settings.json")}getSessionDir(){let e=ys(on(),".claude","context-mode","sessions");return SC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Mx("sha256").update(e).digest("hex").slice(0,16);return ys(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Mx("sha256").update(e).digest("hex").slice(0,16);return ys(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=Yn(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){ba(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,$t.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,$t.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=[ys(e,"hooks","hooks.json"),ys(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=Yn(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=>_s(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>_s(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(on(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Yn(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(on(),".claude"),Lt(on(),".config","claude")];for(let r of e){let n=Lt(r,"plugins","cache","context-mode","context-mode");try{let s=EC(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let i of Object.keys(n)){let a=n[i];if(!Array.isArray(a))continue;let c=a.filter(l=>{let d=l;if(!Ax(d))return!0;let m=d.hooks??[];return m.every(p=>!p.command||!Op(p.command))?!0:m.every(p=>{let h=p.command?Op(p.command):null;return h?wC(h):!0})}),u=a.length-c.length;u>0&&(n[i]=c,o.push(`Removed ${u} stale ${i} hook(s)`))}let s=[$t.PRE_TOOL_USE,$t.SESSION_START];for(let i of s){let a=Rp(i,e);if(i===$t.PRE_TOOL_USE){let c={matcher:Nx,hooks:[{type:"command",command:a}]},u=n.PreToolUse;if(u&&Array.isArray(u)){let l=u.findIndex(d=>_s(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=>_s(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{Lx(e,Dx.R_OK);let r=e+".bak";return bC(e,r),r}catch{return null}}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(gs)){let o=Lt(e,"hooks",n);try{Lx(o,Dx.R_OK),TC(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Lt(on(),".claude","plugins","installed_plugins.json"),o=JSON.parse(Yn(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();ba(n,JSON.stringify(o,null,2)+`
11
+ `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"CLAUDE.md",globalPath:Lt(on(),".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=Yn(s,"utf-8");try{let a=Yn(o,"utf-8");return a.includes("context-mode")?null:(ba(o,a.trimEnd()+`
12
12
 
13
- `+i,"utf-8"),o)}catch{return Sa(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 Qn(t,e){let r=Ip[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var ke,Ip,aD,cD,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"},aD=[ke.BEFORE_TOOL,ke.SESSION_START],cD=[ke.AFTER_TOOL,ke.PRE_COMPRESS]});var Hx={};Ve(Hx,{GeminiCLIAdapter:()=>zp});import{createHash as Lx}from"node:crypto";import{readFileSync as ys,writeFileSync as ka,mkdirSync as Dx,copyFileSync as SC,accessSync as Zx,chmodSync as kC,constants as Ux}from"node:fs";import{resolve as xr,join as ba}from"node:path";import{homedir as eo}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 xr(eo(),".gemini","settings.json")}getSessionDir(){let e=ba(eo(),".gemini","context-mode","sessions");return Dx(e,{recursive:!0}),e}getSessionDBPath(e){let r=Lx("sha256").update(e).digest("hex").slice(0,16);return ba(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Lx("sha256").update(e).digest("hex").slice(0,16);return ba(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ke.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Qn(ke.BEFORE_TOOL,e)}]}],[ke.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Qn(ke.AFTER_TOOL,e)}]}],[ke.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Qn(ke.PRE_COMPRESS,e)}]}],[ke.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Qn(ke.SESSION_START,e)}]}]}}readSettings(){try{let e=ys(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=xr(eo(),".gemini");Dx(r,{recursive:!0}),ka(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(eo(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(ys(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:Qn(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{Zx(e,Ux.R_OK);let r=e+".bak";return SC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=ba(e,"hooks","gemini-cli");for(let o of Object.values(Ip)){let s=xr(n,o);try{Zx(s,Ux.R_OK),kC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=xr(eo(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(ys(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),ka(n,JSON.stringify(o,null,2)+`
15
- `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:xr(eo(),".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=ys(s,"utf-8");try{let a=ys(o,"utf-8");return a.includes("context-mode")?null:(ka(o,a.trimEnd()+`
13
+ `+i,"utf-8"),o)}catch{return ba(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 Xn(t,e){let r=Np[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var ve,Np,mD,hD,Zx=we(()=>{"use strict";ve={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Np={[ve.BEFORE_TOOL]:"beforetool.mjs",[ve.AFTER_TOOL]:"aftertool.mjs",[ve.PRE_COMPRESS]:"precompress.mjs",[ve.SESSION_START]:"sessionstart.mjs"},mD=[ve.BEFORE_TOOL,ve.SESSION_START],hD=[ve.AFTER_TOOL,ve.PRE_COMPRESS]});var Bx={};Ve(Bx,{GeminiCLIAdapter:()=>Ap});import{createHash as Ux}from"node:crypto";import{readFileSync as xs,writeFileSync as wa,mkdirSync as Hx,copyFileSync as $C,accessSync as qx,chmodSync as PC,constants as Fx}from"node:fs";import{resolve as xr,join as Ea}from"node:path";import{homedir as Qn}from"node:os";var Ap,Vx=we(()=>{"use strict";Zx();Ap=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(Qn(),".gemini","settings.json")}getSessionDir(){let e=Ea(Qn(),".gemini","context-mode","sessions");return Hx(e,{recursive:!0}),e}getSessionDBPath(e){let r=Ux("sha256").update(e).digest("hex").slice(0,16);return Ea(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Ux("sha256").update(e).digest("hex").slice(0,16);return Ea(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ve.BEFORE_TOOL]:[{matcher:"",hooks:[{type:"command",command:Xn(ve.BEFORE_TOOL,e)}]}],[ve.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:Xn(ve.AFTER_TOOL,e)}]}],[ve.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:Xn(ve.PRE_COMPRESS,e)}]}],[ve.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:Xn(ve.SESSION_START,e)}]}]}}readSettings(){try{let e=xs(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=xr(Qn(),".gemini");Hx(r,{recursive:!0}),wa(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?.[ve.BEFORE_TOOL];if(s&&s.length>0){let a=s.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"BeforeTool hook",status:a?"pass":"fail",message:a?"BeforeTool hook configured":"BeforeTool exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"BeforeTool hook",status:"fail",message:"No BeforeTool hooks found",fix:"context-mode upgrade"});let i=o?.[ve.SESSION_START];if(i&&i.length>0){let a=i.some(c=>c.hooks?.some(u=>u.command?.includes("context-mode")));r.push({check:"SessionStart hook",status:a?"pass":"fail",message:a?"SessionStart hook configured":"SessionStart exists but does not point to context-mode",fix:a?void 0:"context-mode upgrade"})}else r.push({check:"SessionStart hook",status:"fail",message:"No SessionStart hooks found",fix:"context-mode upgrade"});return r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read ~/.gemini/settings.json"};let r=e.extensions;return r&&(Array.isArray(r)?r.some(o=>typeof o=="string"&&o.includes("context-mode")):Object.keys(r).some(o=>o.includes("context-mode")))?{check:"Plugin registration",status:"pass",message:"context-mode found in extensions"}:{check:"Plugin registration",status:"warn",message:"context-mode not found in extensions (might be using standalone MCP mode)"}}getInstalledVersion(){try{let e=xr(Qn(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(xs(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[],s=[{name:ve.BEFORE_TOOL},{name:ve.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:Xn(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{qx(e,Fx.R_OK);let r=e+".bak";return $C(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=Ea(e,"hooks","gemini-cli");for(let o of Object.values(Np)){let s=xr(n,o);try{qx(s,Fx.R_OK),PC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=xr(Qn(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(xs(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),wa(n,JSON.stringify(o,null,2)+`
15
+ `,"utf-8")}catch{}}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:xr(Qn(),".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=xs(s,"utf-8");try{let a=xs(o,"utf-8");return a.includes("context-mode")?null:(wa(o,a.trimEnd()+`
16
16
 
17
- `+i,"utf-8"),o)}catch{return ka(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,hD,gD,Fx=we(()=>{"use strict";sn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},hD=[sn.BEFORE,sn.AFTER],gD=[sn.COMPACTING]});var Vx={};Ve(Vx,{OpenCodeAdapter:()=>Ap});import{createHash as Bx}from"node:crypto";import{readFileSync as wa,writeFileSync as Np,mkdirSync as bC,copyFileSync as wC,accessSync as EC,constants as TC}from"node:fs";import{resolve as an,join as Ea}from"node:path";import{homedir as Ta}from"node:os";var Ap,Kx=we(()=>{"use strict";Fx();Ap=class{name="OpenCode";paradigm="ts-plugin";settingsPath;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 this.settingsPath??an("opencode.json")}paths(){return[an("opencode.json"),an(".opencode","opencode.json"),Ea(Ta(),".config","opencode","opencode.json")]}getSessionDir(){let e=Ea(Ta(),".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 Ea(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Bx("sha256").update(e).digest("hex").slice(0,16);return Ea(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[sn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;for(let e of this.paths())try{let r=wa(e,"utf-8");return this.settingsPath=e,JSON.parse(r)}catch{continue}return null}writeSettings(e){Np(this.getSettingsPath(),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=an(Ta(),".cache","opencode","node_modules","context-mode","package.json"),r=JSON.parse(wa(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){this.settingsPath=void 0;for(let e of this.paths())try{EC(e,TC.R_OK),this.settingsPath=e;let r=e+".bak";return wC(e,r),r}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:an(Ta(),".config","opencode","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=an(e,n.projectRelativePath),s=an(r,"configs","opencode",n.fileName);try{let i=wa(s,"utf-8");try{let a=wa(o,"utf-8");return a.includes("context-mode")?null:(Np(o,a.trimEnd()+`
17
+ `+i,"utf-8"),o)}catch{return wa(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,SD,bD,Kx=we(()=>{"use strict";sn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},SD=[sn.BEFORE,sn.AFTER],bD=[sn.COMPACTING]});var Gx={};Ve(Gx,{OpenCodeAdapter:()=>Mp});import{createHash as Jx}from"node:crypto";import{readFileSync as Ta,writeFileSync as jp,mkdirSync as RC,copyFileSync as OC,accessSync as CC,constants as IC}from"node:fs";import{resolve as Yt,join as vs}from"node:path";import{homedir as ks}from"node:os";var Mp,Wx=we(()=>{"use strict";Kx();Mp=class{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};platform;constructor(e="opencode"){this.platform=e}parsePreToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool??"",toolInput:r.args??{},toolOutput:r.output,isError:void 0,sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:process.env.OPENCODE_PROJECT_DIR||process.cwd(),raw:e}}formatPreToolUseResponse(e){if(e.decision==="deny")throw new Error(e.reason??"Blocked by context-mode hook");if(e.decision==="modify"&&e.updatedInput)return{args:e.updatedInput};if(e.decision==="ask")throw new Error(e.reason??"Action requires user confirmation (security policy)")}formatPostToolUseResponse(e){let r={};return e.updatedOutput&&(r.output=e.updatedOutput),e.additionalContext&&(r.additionalContext=e.additionalContext),Object.keys(r).length>0?r:void 0}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return this.settingsPath??Yt(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[Yt("kilo.json"),Yt(".kilocode","kilo.json"),vs(ks(),".config","kilo","kilo.json")]:[Yt("opencode.json"),Yt(".opencode","opencode.json"),vs(ks(),".config","opencode","opencode.json")]}getSessionDir(){let e=vs(ks(),".config",this.platform,"context-mode","sessions");return RC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Jx("sha256").update(e).digest("hex").slice(0,16);return vs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Jx("sha256").update(e).digest("hex").slice(0,16);return vs(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[sn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[sn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;for(let e of this.paths())try{let r=Ta(e,"utf-8");return this.settingsPath=e,JSON.parse(r)}catch{continue}return null}writeSettings(e){jp(this.getSettingsPath(),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=Yt(ks(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(Ta(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){this.settingsPath=void 0;for(let e of this.paths())try{CC(e,IC.R_OK),this.settingsPath=e;let r=e+".bak";return OC(e,r),r}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:Yt(ks(),".config",this.platform,"AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Yt(e,n.projectRelativePath),s=Yt(r,"configs",this.platform,n.fileName);try{let i=Ta(s,"utf-8");try{let a=Ta(o,"utf-8");return a.includes("context-mode")?null:(jp(o,a.trimEnd()+`
19
19
 
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,bD,wD,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"},bD=[cn.TOOL_CALL_BEFORE,cn.TOOL_CALL_AFTER],wD=[cn.COMMAND_NEW]});var Wx={};Ve(Wx,{OpenClawAdapter:()=>Mp});import{createHash as Gx}from"node:crypto";import{readFileSync as to,writeFileSync as jp,mkdirSync as $C,copyFileSync as PC,accessSync as RC,constants as OC}from"node:fs";import{resolve as ht,join as xs}from"node:path";import{homedir as vs}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 ht("openclaw.json")}getSessionDir(){let e=xs(vs(),".openclaw","context-mode","sessions");return $C(e,{recursive:!0}),e}getSessionDBPath(e){let r=Gx("sha256").update(e).digest("hex").slice(0,16);return xs(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Gx("sha256").update(e).digest("hex").slice(0,16);return xs(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=[ht("openclaw.json"),ht(".openclaw","openclaw.json"),xs(vs(),".openclaw","openclaw.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=ht("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=ht(vs(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(to(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=ht("node_modules","context-mode","package.json"),r=JSON.parse(to(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=[ht("openclaw.json"),ht(".openclaw","openclaw.json"),xs(vs(),".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:ht(vs(),".openclaw","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=ht(e,n.projectRelativePath),s=ht(r,"configs","openclaw",n.fileName);try{let i;try{i=to(s,"utf-8")}catch{let a=ht(r,"configs","opencode",n.fileName);i=to(a,"utf-8")}try{let a=to(o,"utf-8");return a.includes("context-mode")?null:(jp(o,a.trimEnd()+`
20
+ `+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 an,OD,CD,Yx=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"},OD=[an.TOOL_CALL_BEFORE,an.TOOL_CALL_AFTER],CD=[an.COMMAND_NEW]});var Qx={};Ve(Qx,{OpenClawAdapter:()=>Dp});import{createHash as Xx}from"node:crypto";import{readFileSync as eo,writeFileSync as Lp,mkdirSync as zC,copyFileSync as NC,accessSync as AC,constants as jC}from"node:fs";import{resolve as ht,join as Ss}from"node:path";import{homedir as bs}from"node:os";var Dp,ev=we(()=>{"use strict";Yx();Dp=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 ht("openclaw.json")}getSessionDir(){let e=Ss(bs(),".openclaw","context-mode","sessions");return zC(e,{recursive:!0}),e}getSessionDBPath(e){let r=Xx("sha256").update(e).digest("hex").slice(0,16);return Ss(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Xx("sha256").update(e).digest("hex").slice(0,16);return Ss(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=[ht("openclaw.json"),ht(".openclaw","openclaw.json"),Ss(bs(),".openclaw","openclaw.json")];for(let r of e)try{let n=eo(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=ht("openclaw.json");Lp(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=ht(bs(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(eo(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=ht("node_modules","context-mode","package.json"),r=JSON.parse(eo(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=[ht("openclaw.json"),ht(".openclaw","openclaw.json"),Ss(bs(),".openclaw","openclaw.json")];for(let r of e)try{AC(r,jC.R_OK);let n=r+".bak";return NC(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:ht(bs(),".openclaw","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=ht(e,n.projectRelativePath),s=ht(r,"configs","openclaw",n.fileName);try{let i;try{i=eo(s,"utf-8")}catch{let a=ht(r,"configs","opencode",n.fileName);i=eo(a,"utf-8")}try{let a=eo(o,"utf-8");return a.includes("context-mode")?null:(Lp(o,a.trimEnd()+`
22
22
 
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={};Ve(ev,{CodexAdapter:()=>Zp});import{createHash as Xx}from"node:crypto";import{readFileSync as Ss,writeFileSync as Qx,mkdirSync as CC,copyFileSync as IC,accessSync as zC,constants as NC}from"node:fs";import{resolve as ks,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 ks(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:Ss(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=Ss(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:ks(Dp(),".codex","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=ks(e,n.projectRelativePath),s=ks(r,"configs","codex",n.fileName);try{let i=Ss(s,"utf-8");try{let a=Ss(o,"utf-8");return a.includes("context-mode")?null:(Qx(o,a.trimEnd()+`
23
+ `+i,"utf-8"),o)}catch{return Lp(o,i,"utf-8"),o}}catch{return null}}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var nv={};Ve(nv,{CodexAdapter:()=>Hp});import{createHash as tv}from"node:crypto";import{readFileSync as ws,writeFileSync as rv,mkdirSync as MC,copyFileSync as LC,accessSync as DC,constants as ZC}from"node:fs";import{resolve as Es,join as Zp,dirname as UC}from"node:path";import{fileURLToPath as HC}from"node:url";import{homedir as Up}from"node:os";var Hp,ov=we(()=>{"use strict";Hp=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 Es(Up(),".codex","config.toml")}getSessionDir(){let e=Zp(Up(),".codex","context-mode","sessions");return MC(e,{recursive:!0}),e}getSessionDBPath(e){let r=tv("sha256").update(e).digest("hex").slice(0,16);return Zp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=tv("sha256").update(e).digest("hex").slice(0,16);return Zp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{return{_raw_toml:ws(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=ws(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{DC(e,ZC.R_OK);let r=e+".bak";return LC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:Es(Up(),".codex","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Es(e,n.projectRelativePath),s=Es(r,"configs","codex",n.fileName);try{let i=ws(s,"utf-8");try{let a=ws(o,"utf-8");return a.includes("context-mode")?null:(rv(o,a.trimEnd()+`
24
24
 
25
- `+i,"utf-8"),o)}catch{return Qx(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=ks(AC(jC(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Ss(e,"utf-8")}catch{return`# context-mode
25
+ `+i,"utf-8"),o)}catch{return rv(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Es(UC(HC(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return ws(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 ro(t,e){let r=$a[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var se,$a,MD,LD,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"},$a={[se.PRE_TOOL_USE]:"pretooluse.mjs",[se.POST_TOOL_USE]:"posttooluse.mjs",[se.PRE_COMPACT]:"precompact.mjs",[se.SESSION_START]:"sessionstart.mjs"},MD=[se.PRE_TOOL_USE,se.SESSION_START],LD=[se.POST_TOOL_USE,se.PRE_COMPACT]});var ov={};Ve(ov,{VSCodeCopilotAdapter:()=>Fp});import{createHash as nv}from"node:crypto";import{readFileSync as no,writeFileSync as Pa,mkdirSync as Ra,copyFileSync as MC,accessSync as Up,existsSync as LC,chmodSync as DC,constants as Hp}from"node:fs";import{resolve as tt,join as vr}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 tt(".github","hooks","context-mode.json")}getSessionDir(){let e=tt(".github","context-mode","sessions"),r=vr(qp(),".vscode","context-mode","sessions"),n=LC(tt(".github"))?e:r;return Ra(n,{recursive:!0}),n}getSessionDBPath(e){let r=nv("sha256").update(e).digest("hex").slice(0,16);return vr(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=nv("sha256").update(e).digest("hex").slice(0,16);return vr(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[se.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:ro(se.PRE_TOOL_USE,e)}]}],[se.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:ro(se.POST_TOOL_USE,e)}]}],[se.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:ro(se.PRE_COMPACT,e)}]}],[se.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:ro(se.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),tt(".claude","settings.json")];for(let r of e)try{let n=no(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=tt(".github","hooks");Ra(n,{recursive:!0}),Pa(r,JSON.stringify(e,null,2)+`
28
- `,"utf-8")}validateHooks(e){let r=[],n=tt(".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=tt(n,"context-mode.json");try{let s=no(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=tt(".vscode","mcp.json"),r=no(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=[vr(qp(),".vscode","extensions"),vr(qp(),".vscode-insiders","extensions")];for(let r of e)try{let n=no(vr(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)$a[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:ro(c,e)}]}],r.push(`Configured ${c} hook`));let i=tt(".github","hooks");Ra(i,{recursive:!0});let a=tt(i,"context-mode.json");return Pa(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=vr(e,"hooks","vscode-copilot");for(let o of Object.values($a)){let s=tt(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:vr(".github","copilot-instructions.md")}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=tt(e,n.projectRelativePath),s=tt(r,"configs","vscode-copilot",n.fileName);try{let i=no(s,"utf-8");Ra(tt(e,".github"),{recursive:!0});try{let a=no(o,"utf-8");return a.includes("context-mode")?null:(Pa(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 to(t,e){let r=$a[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/${r}"`:`context-mode hook vscode-copilot ${t.toLowerCase()}`}var se,$a,FD,BD,sv=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"},$a={[se.PRE_TOOL_USE]:"pretooluse.mjs",[se.POST_TOOL_USE]:"posttooluse.mjs",[se.PRE_COMPACT]:"precompact.mjs",[se.SESSION_START]:"sessionstart.mjs"},FD=[se.PRE_TOOL_USE,se.SESSION_START],BD=[se.POST_TOOL_USE,se.PRE_COMPACT]});var av={};Ve(av,{VSCodeCopilotAdapter:()=>Vp});import{createHash as iv}from"node:crypto";import{readFileSync as ro,writeFileSync as Pa,mkdirSync as Ra,copyFileSync as qC,accessSync as qp,existsSync as FC,chmodSync as BC,constants as Fp}from"node:fs";import{resolve as tt,join as vr}from"node:path";import{homedir as Bp}from"node:os";var Vp,cv=we(()=>{"use strict";sv();Vp=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 tt(".github","hooks","context-mode.json")}getSessionDir(){let e=tt(".github","context-mode","sessions"),r=vr(Bp(),".vscode","context-mode","sessions"),n=FC(tt(".github"))?e:r;return Ra(n,{recursive:!0}),n}getSessionDBPath(e){let r=iv("sha256").update(e).digest("hex").slice(0,16);return vr(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=iv("sha256").update(e).digest("hex").slice(0,16);return vr(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[se.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:to(se.PRE_TOOL_USE,e)}]}],[se.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:to(se.POST_TOOL_USE,e)}]}],[se.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:to(se.PRE_COMPACT,e)}]}],[se.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:to(se.SESSION_START,e)}]}]}}readSettings(){let e=[this.getSettingsPath(),tt(".claude","settings.json")];for(let r of e)try{let n=ro(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath(),n=tt(".github","hooks");Ra(n,{recursive:!0}),Pa(r,JSON.stringify(e,null,2)+`
28
+ `,"utf-8")}validateHooks(e){let r=[],n=tt(".github","hooks");try{qp(n,Fp.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=tt(n,"context-mode.json");try{let s=ro(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=tt(".vscode","mcp.json"),r=ro(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=[vr(Bp(),".vscode","extensions"),vr(Bp(),".vscode-insiders","extensions")];for(let r of e)try{let n=ro(vr(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)$a[c]&&(o[c]=[{matcher:"",hooks:[{type:"command",command:to(c,e)}]}],r.push(`Configured ${c} hook`));let i=tt(".github","hooks");Ra(i,{recursive:!0});let a=tt(i,"context-mode.json");return Pa(a,JSON.stringify(n,null,2)+`
29
+ `,"utf-8"),r.push(`Wrote hook config to ${a}`),r}backupSettings(){let e=this.getSettingsPath();try{qp(e,Fp.R_OK);let r=e+".bak";return qC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=vr(e,"hooks","vscode-copilot");for(let o of Object.values($a)){let s=tt(n,o);try{qp(s,Fp.R_OK),BC(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"copilot-instructions.md",globalPath:"",projectRelativePath:vr(".github","copilot-instructions.md")}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=tt(e,n.projectRelativePath),s=tt(r,"configs","vscode-copilot",n.fileName);try{let i=ro(s,"utf-8");Ra(tt(e,".github"),{recursive:!0});try{let a=ro(o,"utf-8");return a.includes("context-mode")?null:(Pa(o,a.trimEnd()+`
30
30
 
31
- `+i,"utf-8"),o)}catch{return Pa(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 Oa(t,e){let r=Bp[e],n=Sr(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 Sr(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={};Ve(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 oo,join as un}from"node:path";import{homedir as Ca}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 oo(".cursor","hooks.json")}getSessionDir(){let e=un(Ca(),".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:Sr($e.PRE_TOOL_USE),matcher:Vp,loop_limit:null,failClosed:!1}],[$e.POST_TOOL_USE]:[{type:"command",command:Sr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[$e.SESSION_START]:[{type:"command",command:Sr($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(oo(".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=>Oa(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=>Oa(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=[oo(".cursor","mcp.json"),un(Ca(),".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:Sr($e.PRE_TOOL_USE),matcher:Vp,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.POST_TOOL_USE,{type:"command",command:Sr($e.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,$e.SESSION_START,{type:"command",command:Sr($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=oo(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(Ca(),".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[oo(".claude","settings.json"),oo(".claude","settings.local.json"),un(Ca(),".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=>Oa(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={};Ve(vv,{AntigravityAdapter:()=>Yp});import{createHash as _v}from"node:crypto";import{readFileSync as so,writeFileSync as Gp,mkdirSync as yv,copyFileSync as BC,accessSync as VC,constants as KC}from"node:fs";import{resolve as io,join as Wp,dirname as xv}from"node:path";import{fileURLToPath as JC}from"node:url";import{homedir as Ia}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 io(Ia(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Wp(Ia(),".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=so(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=so(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=io(Ia(),".gemini","extensions","context-mode","package.json");return JSON.parse(so(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:io(Ia(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=io(e,n.projectRelativePath),s=io(r,"configs","antigravity",n.fileName);try{let i=so(s,"utf-8");try{let a=so(o,"utf-8");return a.includes("context-mode")?null:(Gp(o,a.trimEnd()+`
31
+ `+i,"utf-8"),o)}catch{return Pa(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 Oa(t,e){let r=Kp[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,Kp,VC,Jp,uv,lv,dv=we(()=>{"use strict";$e={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart"},Kp={[$e.PRE_TOOL_USE]:"pretooluse.mjs",[$e.POST_TOOL_USE]:"posttooluse.mjs",[$e.SESSION_START]:"sessionstart.mjs"},VC=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],Jp=VC.join("|"),uv=[$e.PRE_TOOL_USE],lv=[$e.POST_TOOL_USE]});var yv={};Ve(yv,{CursorAdapter:()=>Wp});import{createHash as pv}from"node:crypto";import{readFileSync as Gp,writeFileSync as KC,mkdirSync as fv,copyFileSync as JC,accessSync as mv,chmodSync as GC,constants as hv,existsSync as gv}from"node:fs";import{execSync as WC}from"node:child_process";import{resolve as no,join as cn}from"node:path";import{homedir as Ca}from"node:os";var _v,Wp,xv=we(()=>{"use strict";dv();_v="/Library/Application Support/Cursor/hooks.json",Wp=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 no(".cursor","hooks.json")}getSessionDir(){let e=cn(Ca(),".cursor","context-mode","sessions");return fv(e,{recursive:!0}),e}getSessionDBPath(e){let r=pv("sha256").update(e).digest("hex").slice(0,16);return cn(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=pv("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:Jp,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=Gp(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();fv(no(".cursor"),{recursive:!0}),KC(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 uv){let i=o[s],a=Array.isArray(i)&&i.some(c=>Oa(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 lv){let i=o[s],a=Array.isArray(i)&&i.some(c=>Oa(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 gv(_v)&&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=[no(".cursor","mcp.json"),cn(Ca(),".cursor","mcp.json")];for(let r of e)try{let n=Gp(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 WC("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:Jp,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{mv(e,hv.R_OK);let r=e+".bak";return JC(e,r),r}catch{return null}}setHookPermissions(e){let r=[],n=cn(e,"hooks","cursor");for(let o of Object.values(Kp)){let s=no(n,o);try{mv(s,hv.R_OK),GC(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(Ca(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(_v),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=Gp(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[no(".claude","settings.json"),no(".claude","settings.local.json"),cn(Ca(),".claude","settings.json")].some(r=>gv(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>Oa(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 bv={};Ve(bv,{AntigravityAdapter:()=>Qp});import{createHash as vv}from"node:crypto";import{readFileSync as oo,writeFileSync as Yp,mkdirSync as kv,copyFileSync as YC,accessSync as XC,constants as QC}from"node:fs";import{resolve as so,join as Xp,dirname as Sv}from"node:path";import{fileURLToPath as eI}from"node:url";import{homedir as Ia}from"node:os";var Qp,wv=we(()=>{"use strict";Qp=class{name="Antigravity";paradigm="mcp-only";capabilities={preToolUse:!1,postToolUse:!1,preCompact:!1,sessionStart:!1,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!1};parsePreToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePostToolUseInput(e){throw new Error("Antigravity does not support hooks")}parsePreCompactInput(e){throw new Error("Antigravity does not support hooks")}parseSessionStartInput(e){throw new Error("Antigravity does not support hooks")}formatPreToolUseResponse(e){}formatPostToolUseResponse(e){}formatPreCompactResponse(e){}formatSessionStartResponse(e){}getSettingsPath(){return so(Ia(),".gemini","antigravity","mcp_config.json")}getSessionDir(){let e=Xp(Ia(),".gemini","context-mode","sessions");return kv(e,{recursive:!0}),e}getSessionDBPath(e){let r=vv("sha256").update(e).digest("hex").slice(0,16);return Xp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=vv("sha256").update(e).digest("hex").slice(0,16);return Xp(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=oo(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();kv(Sv(r),{recursive:!0}),Yp(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=oo(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=so(Ia(),".gemini","extensions","context-mode","package.json");return JSON.parse(oo(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}backupSettings(){let e=this.getSettingsPath();try{XC(e,QC.R_OK);let r=e+".bak";return YC(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"GEMINI.md",globalPath:so(Ia(),".gemini","GEMINI.md"),projectRelativePath:"GEMINI.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=so(e,n.projectRelativePath),s=so(r,"configs","antigravity",n.fileName);try{let i=oo(s,"utf-8");try{let a=oo(o,"utf-8");return a.includes("context-mode")?null:(Yp(o,a.trimEnd()+`
33
33
 
34
- `+i,"utf-8"),o)}catch{return Gp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=io(xv(JC(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return so(e,"utf-8")}catch{return`# context-mode
34
+ `+i,"utf-8"),o)}catch{return Yp(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=so(Sv(eI(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return oo(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 bs(t,e){let r=kv[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function ws(t,e){let r=kv[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var be,kv,nZ,oZ,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"},nZ=[be.PRE_TOOL_USE],oZ=[be.POST_TOOL_USE]});var Tv={};Ve(Tv,{KiroAdapter:()=>ef});import{createHash as wv}from"node:crypto";import{readFileSync as kr,writeFileSync as za,mkdirSync as Xp,copyFileSync as GC,accessSync as WC,constants as YC}from"node:fs";import{resolve as Wt,join as Qp,dirname as Ev}from"node:path";import{fileURLToPath as XC}from"node:url";import{homedir as ao}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 Wt(ao(),".kiro","settings","mcp.json")}getSessionDir(){let e=Qp(ao(),".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:ws(be.PRE_TOOL_USE,e)}]}],[be.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:ws(be.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=kr(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Xp(Ev(r),{recursive:!0}),za(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=Wt(ao(),".kiro","agents","default.json");try{let s=JSON.parse(kr(n,"utf-8")).hooks??{};for(let i of[be.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>bs(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=>bs(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=kr(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=Wt(ao(),".kiro","extensions","context-mode","package.json");return JSON.parse(kr(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=Wt(ao(),".kiro","agents"),o=Wt(n,"default.json");try{Xp(n,{recursive:!0});let s={};try{s=JSON.parse(kr(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[be.PRE_TOOL_USE]??[];a.some(u=>bs(u,be.PRE_TOOL_USE))||(a.push({matcher:"*",command:ws(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=>bs(u,be.POST_TOOL_USE))||(c.push({matcher:"*",command:ws(be.POST_TOOL_USE,e)}),i[be.POST_TOOL_USE]=c,r.push(`Added ${be.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,za(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:Wt(ao(),".kiro","KIRO.md"),projectRelativePath:"KIRO.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Wt(e,n.projectRelativePath),s=Wt(r,"configs","kiro",n.fileName);try{let i=kr(s,"utf-8");try{let a=kr(o,"utf-8");return a.includes("context-mode")?null:(za(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 Ts(t,e){let r=Ev[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function $s(t,e){let r=Ev[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var ke,Ev,lZ,dZ,Tv=we(()=>{"use strict";ke={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},Ev={[ke.PRE_TOOL_USE]:"pretooluse.mjs",[ke.POST_TOOL_USE]:"posttooluse.mjs"},lZ=[ke.PRE_TOOL_USE],dZ=[ke.POST_TOOL_USE]});var Rv={};Ve(Rv,{KiroAdapter:()=>rf});import{createHash as $v}from"node:crypto";import{readFileSync as Sr,writeFileSync as za,mkdirSync as ef,copyFileSync as tI,accessSync as rI,constants as nI}from"node:fs";import{resolve as Xt,join as tf,dirname as Pv}from"node:path";import{fileURLToPath as oI}from"node:url";import{homedir as io}from"node:os";var rf,Ov=we(()=>{"use strict";Tv();rf=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 Xt(io(),".kiro","settings","mcp.json")}getSessionDir(){let e=tf(io(),".kiro","context-mode","sessions");return ef(e,{recursive:!0}),e}getSessionDBPath(e){let r=$v("sha256").update(e).digest("hex").slice(0,16);return tf(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=$v("sha256").update(e).digest("hex").slice(0,16);return tf(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{[ke.PRE_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:$s(ke.PRE_TOOL_USE,e)}]}],[ke.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:$s(ke.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=Sr(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();ef(Pv(r),{recursive:!0}),za(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=Xt(io(),".kiro","agents","default.json");try{let s=JSON.parse(Sr(n,"utf-8")).hooks??{};for(let i of[ke.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>Ts(u,i));r.push({check:`Hook: ${i}`,status:c?"pass":"fail",message:c?`context-mode ${i} hook found`:`context-mode ${i} hook not configured`,...c?{}:{fix:"Run: context-mode upgrade"}})}for(let i of[ke.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>Ts(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=Sr(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=Xt(io(),".kiro","extensions","context-mode","package.json");return JSON.parse(Sr(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=Xt(io(),".kiro","agents"),o=Xt(n,"default.json");try{ef(n,{recursive:!0});let s={};try{s=JSON.parse(Sr(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[ke.PRE_TOOL_USE]??[];a.some(u=>Ts(u,ke.PRE_TOOL_USE))||(a.push({matcher:"*",command:$s(ke.PRE_TOOL_USE,e)}),i[ke.PRE_TOOL_USE]=a,r.push(`Added ${ke.PRE_TOOL_USE} hook to ${o}`));let c=i[ke.POST_TOOL_USE]??[];c.some(u=>Ts(u,ke.POST_TOOL_USE))||(c.push({matcher:"*",command:$s(ke.POST_TOOL_USE,e)}),i[ke.POST_TOOL_USE]=c,r.push(`Added ${ke.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,za(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{rI(e,nI.R_OK);let r=e+".bak";return tI(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"KIRO.md",globalPath:Xt(io(),".kiro","KIRO.md"),projectRelativePath:"KIRO.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Xt(e,n.projectRelativePath),s=Xt(r,"configs","kiro",n.fileName);try{let i=Sr(s,"utf-8");try{let a=Sr(o,"utf-8");return a.includes("context-mode")?null:(za(o,a.trimEnd()+`
37
37
 
38
- `+i,"utf-8"),o)}catch{return za(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Wt(Ev(XC(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return kr(e,"utf-8")}catch{return`# context-mode
38
+ `+i,"utf-8"),o)}catch{return za(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Xt(Pv(oI(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return Sr(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 Cv={};Ve(Cv,{ZedAdapter:()=>of});import{createHash as Pv}from"node:crypto";import{readFileSync as Es,writeFileSync as tf,mkdirSync as Rv,copyFileSync as QC,accessSync as eI,constants as tI}from"node:fs";import{resolve as Ts,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 Ts(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=Es(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=Es(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:Ts(nf(),".config","zed","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Ts(e,n.projectRelativePath),s=Ts(r,"configs","zed",n.fileName);try{let i=Es(s,"utf-8");try{let a=Es(o,"utf-8");return a.includes("context-mode")?null:(tf(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 Nv={};Ve(Nv,{ZedAdapter:()=>af});import{createHash as Cv}from"node:crypto";import{readFileSync as Ps,writeFileSync as nf,mkdirSync as Iv,copyFileSync as sI,accessSync as iI,constants as aI}from"node:fs";import{resolve as Rs,join as of,dirname as zv}from"node:path";import{fileURLToPath as cI}from"node:url";import{homedir as sf}from"node:os";var af,Av=we(()=>{"use strict";af=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 Rs(sf(),".config","zed","settings.json")}getSessionDir(){let e=of(sf(),".config","zed","context-mode","sessions");return Iv(e,{recursive:!0}),e}getSessionDBPath(e){let r=Cv("sha256").update(e).digest("hex").slice(0,16);return of(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Cv("sha256").update(e).digest("hex").slice(0,16);return of(this.getSessionDir(),`${r}-events.md`)}generateHookConfig(e){return{}}readSettings(){try{let e=Ps(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();Iv(zv(r),{recursive:!0}),nf(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=Ps(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{iI(e,aI.R_OK);let r=e+".bak";return sI(e,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{fileName:"AGENTS.md",globalPath:Rs(sf(),".config","zed","AGENTS.md"),projectRelativePath:"AGENTS.md"}}writeRoutingInstructions(e,r){let n=this.getRoutingInstructionsConfig(),o=Rs(e,n.projectRelativePath),s=Rs(r,"configs","zed",n.fileName);try{let i=Ps(s,"utf-8");try{let a=Ps(o,"utf-8");return a.includes("context-mode")?null:(nf(o,a.trimEnd()+`
41
41
 
42
- `+i,"utf-8"),o)}catch{return tf(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Ts(Ov(rI(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return Es(e,"utf-8")}catch{return`# context-mode
42
+ `+i,"utf-8"),o)}catch{return nf(o,i,"utf-8"),o}}catch{return null}}getRoutingInstructions(){let e=Rs(zv(cI(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return Ps(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 Nv={};Ve(Nv,{detectPlatform:()=>zv,getAdapter:()=>oI});import{existsSync as Yt}from"node:fs";import{resolve as Xt}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 Yt(Xt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Yt(Xt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Yt(Xt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Yt(Xt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Yt(Xt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Yt(Xt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Yt(Xt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Yt(Xt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Yt(Xt(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={};Ve(D,{BRAND:()=>vS,DIRTY:()=>Er,EMPTY_PATH:()=>Xv,INVALID:()=>A,NEVER:()=>nk,OK:()=>je,ParseStatus:()=>Pe,Schema:()=>H,ZodAny:()=>rr,ZodArray:()=>qt,ZodBigInt:()=>$r,ZodBoolean:()=>Pr,ZodBranded:()=>lo,ZodCatch:()=>Dr,ZodDate:()=>Rr,ZodDefault:()=>Lr,ZodDiscriminatedUnion:()=>Cs,ZodEffects:()=>at,ZodEnum:()=>jr,ZodError:()=>Ke,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>zs,ZodIntersection:()=>zr,ZodIssueCode:()=>k,ZodLazy:()=>Nr,ZodLiteral:()=>Ar,ZodMap:()=>vn,ZodNaN:()=>kn,ZodNativeEnum:()=>Mr,ZodNever:()=>gt,ZodNull:()=>Cr,ZodNullable:()=>Ot,ZodNumber:()=>Tr,ZodObject:()=>Ge,ZodOptional:()=>Je,ZodParsedType:()=>$,ZodPipeline:()=>po,ZodPromise:()=>nr,ZodReadonly:()=>Zr,ZodRecord:()=>Is,ZodSchema:()=>H,ZodSet:()=>Sn,ZodString:()=>tr,ZodSymbol:()=>yn,ZodTransformer:()=>at,ZodTuple:()=>Rt,ZodType:()=>H,ZodUndefined:()=>Or,ZodUnion:()=>Ir,ZodUnknown:()=>Ht,ZodVoid:()=>xn,addIssueToContext:()=>E,any:()=>RS,array:()=>zS,bigint:()=>wS,boolean:()=>wf,coerce:()=>rk,custom:()=>Sf,date:()=>ES,datetimeRegex:()=>xf,defaultErrorMap:()=>Zt,discriminatedUnion:()=>jS,effect:()=>JS,enum:()=>BS,function:()=>HS,getErrorMap:()=>hn,getParsedType:()=>Pt,instanceof:()=>kS,intersection:()=>MS,isAborted:()=>Rs,isAsync:()=>gn,isDirty:()=>Os,isValid:()=>er,late:()=>SS,lazy:()=>qS,literal:()=>FS,makeIssue:()=>uo,map:()=>ZS,nan:()=>bS,nativeEnum:()=>VS,never:()=>CS,null:()=>PS,nullable:()=>WS,number:()=>bf,object:()=>Fa,objectUtil:()=>Ua,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 Ua;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Ua||(Ua={}));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:"),Ke=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()}};Ke.create=t=>new Ke(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}},Zt=Wv;var mf=Zt;function Yv(t){mf=t}function hn(){return mf}var uo=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=uo({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Zt?void 0:Zt].filter(o=>!!o)});t.common.issues.push(n)}var 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}),Rs=t=>t.status==="aborted",Os=t=>t.status==="dirty",er=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 it=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(er(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 Ke(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 er(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=>er(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 at({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 Je.create(this,this._def)}nullable(){return Ot.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return qt.create(this)}promise(){return nr.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 at({...Z(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Lr({...Z(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new lo({typeName:b.ZodBranded,type:this,...Z(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Dr({...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 po.create(this,e)}readonly(){return Zr.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})+$",Ha,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 tr=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")Ha||(Ha=new RegExp(aS,"u")),Ha.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}};tr.create=t=>new tr({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 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"?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)}};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()):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}};$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()):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}};Rr.create=t=>new Rr({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 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 rr=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return je(e.data)}};rr.create=t=>new rr({typeName:b.ZodAny,...Z(t)});var Ht=class extends H{constructor(){super(...arguments),this._unknown=!0}_parse(e){return je(e.data)}};Ht.create=t=>new Ht({typeName:b.ZodUnknown,...Z(t)});var gt=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return E(r,{code:k.invalid_type,expected:$.never,received:r.parsedType}),A}};gt.create=t=>new gt({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 qt=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 it(r,i,r.path,a)))).then(i=>Pe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new it(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)}};qt.create=(t,e)=>new qt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...Z(e)});function _n(t){if(t instanceof Ge){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Je.create(_n(n))}return new Ge({...t._def,shape:()=>e})}else return t instanceof qt?new qt({...t._def,type:_n(t.element)}):t instanceof Je?Je.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 Ge=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 gt&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new it(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof gt){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(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 it(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 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 Je;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return vf(K.objectKeys(this.shape))}};Ge.create=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strip",catchall:gt.create(),typeName:b.ZodObject,...Z(e)});Ge.strictCreate=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strict",catchall:gt.create(),typeName:b.ZodObject,...Z(e)});Ge.lazycreate=(t,e)=>new Ge({shape:t,unknownKeys:"strip",catchall:gt.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 Ke(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 Ke(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 Ut=t=>t instanceof Nr?Ut(t.schema):t instanceof at?Ut(t.innerType()):t instanceof Ar?[t.value]:t instanceof jr?t.options:t instanceof Mr?K.objectValues(t.enum):t instanceof Lr?Ut(t._def.innerType):t instanceof Or?[void 0]:t instanceof Cr?[null]:t instanceof Je?[void 0,...Ut(t.unwrap())]:t instanceof Ot?[null,...Ut(t.unwrap())]:t instanceof lo||t instanceof Zr?Ut(t.unwrap()):t instanceof Dr?Ut(t._def.innerType):[],Cs=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=Ut(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 qa(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=qa(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=qa(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(Rs(s)||Rs(i))return A;let a=qa(s.value,i.value);return a.valid?((Os(s)||Os(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 it(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 Is=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 it(n,a,n.path,a)),value:i._parse(new it(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:tr.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 it(n,a,n.path,[u,"key"])),value:s._parse(new it(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 it(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 zs=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 uo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,hn(),Zt].filter(u=>!!u),issueData:{code:k.invalid_arguments,argumentsError:c}})}function o(a,c){return uo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,hn(),Zt].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 nr){let a=this;return je(async function(...c){let u=new Ke([]),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 Ke([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Ke([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(Ht.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(Ht.create()),returns:r||Ht.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 vf(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: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})}};jr.create=vf;var Mr=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}};Mr.create=(t,e)=>new Mr({values:t,typeName:b.ZodNativeEnum,...Z(e)});var nr=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})))}};nr.create=(t,e)=>new nr({type:t,typeName:b.ZodPromise,...Z(e)});var at=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(!er(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=>er(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);K.assertNever(o)}};at.create=(t,e,r)=>new at({schema:t,typeName:b.ZodEffects,effect:e,...Z(r)});at.createWithPreprocess=(t,e,r)=>new at({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...Z(r)});var Je=class extends H{_parse(e){return this._getType(e)===$.undefined?je(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Je.create=(t,e)=>new Je({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 Lr=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}};Lr.create=(t,e)=>new Lr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Z(e)});var Dr=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 Ke(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ke(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Dr.create=(t,e)=>new Dr({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"),lo=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}},po=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=>(er(o)&&(o.value=Object.freeze(o.value)),o);return gn(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 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?rr.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})}}):rr.create()}var SS={object:Ge.lazycreate},b;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(b||(b={}));var kS=(t,e={message:`Input not instance of ${t.name}`})=>Sf(r=>r instanceof t,e),kf=tr.create,bf=Tr.create,bS=kn.create,wS=$r.create,wf=Pr.create,ES=Rr.create,TS=yn.create,$S=Or.create,PS=Cr.create,RS=rr.create,OS=Ht.create,CS=gt.create,IS=xn.create,zS=qt.create,Fa=Ge.create,NS=Ge.strictCreate,AS=Ir.create,jS=Cs.create,MS=zr.create,LS=Rt.create,DS=Is.create,ZS=vn.create,US=Sn.create,HS=zs.create,qS=Nr.create,FS=Ar.create,BS=jr.create,VS=Mr.create,KS=nr.create,JS=at.create,GS=Je.create,WS=Ot.create,YS=at.createWithPreprocess,XS=po.create,QS=()=>kf().optional(),ek=()=>bf().optional(),tk=()=>wf().optional(),rk={string:(t=>tr.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 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 Ft=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},Ns={};function nt(t){return t&&Object.assign(Ns,t),Ns}var J={};Ve(J,{BIGINT_FORMAT_RANGES:()=>Tf,Class:()=>Va,NUMBER_FORMAT_RANGES:()=>Qa,aborted:()=>Hr,allowsEval:()=>Wa,assert:()=>uk,assertEqual:()=>sk,assertIs:()=>ak,assertNever:()=>ck,assertNotEqual:()=>ik,assignProp:()=>Ga,cached:()=>ho,captureStackTrace:()=>js,cleanEnum:()=>kk,cleanRegex:()=>_o,clone:()=>ot,createTransparentProxy:()=>hk,defineLazy:()=>ue,esc:()=>Ur,escapeRegex:()=>or,extend:()=>yk,finalizeIssue:()=>_t,floatSafeRemainder:()=>Ja,getElementAtPath:()=>lk,getEnumValues:()=>mo,getLengthableOrigin:()=>yo,getParsedType:()=>mk,getSizableOrigin:()=>$f,isObject:()=>bn,isPlainObject:()=>wn,issue:()=>ec,joinValues:()=>As,jsonStringifyReplacer:()=>Ka,merge:()=>xk,normalizeParams:()=>j,nullish:()=>go,numKeys:()=>fk,omit:()=>_k,optionalKeys:()=>Xa,partial:()=>vk,pick:()=>gk,prefixIssues:()=>Ct,primitiveTypes:()=>Ef,promiseAllObject:()=>dk,propertyKeyTypes:()=>Ya,randomString:()=>pk,required:()=>Sk,stringifyPrimitive:()=>Ms,unwrapMessage:()=>fo});function sk(t){return t}function ik(t){return t}function ak(t){}function ck(t){throw new Error}function uk(t){}function mo(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 As(t,e="|"){return t.map(r=>Ms(r)).join(e)}function Ka(t,e){return typeof e=="bigint"?e.toString():e}function ho(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function go(t){return t==null}function _o(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Ja(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function 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 Ga(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 Ur(t){return JSON.stringify(t)}var js=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function bn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Wa=ho(()=>{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}`)}},Ya=new Set(["string","number","symbol"]),Ef=new Set(["string","number","bigint","boolean","symbol","undefined"]);function or(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ot(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 Ms(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Xa(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Qa={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 ot(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 ot(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 Ga(this,"shape",n),n},checks:[]};return ot(t,r)}function xk(t,e){return ot(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ga(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 ot(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 ot(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 fo(t){return typeof t=="string"?t:t?.message}function _t(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=fo(t.inst?._zod.def?.error?.(t))??fo(e?.error?.(t))??fo(r.customError?.(t))??fo(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 yo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function ec(...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 Va=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,Ka,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Ls=x("$ZodError",Pf),xo=x("$ZodError",Pf,{Parent:Error});function tc(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 rc(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 nc=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 Ft;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,nt())));throw js(a,o?.callee),a}return i.value},oc=nc(xo),sc=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,nt())));throw js(a,o?.callee),a}return i.value},ic=sc(xo),ac=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 Ft;return s.issues.length?{success:!1,error:new(t??Ls)(s.issues.map(i=>_t(i,o,nt())))}:{success:!0,data:s.value}},qr=ac(xo),cc=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>_t(i,o,nt())))}:{success:!0,data:s.value}},Fr=cc(xo);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})$/,uc=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}=))?$/,lc=/^[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"},dc=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})}}),pc=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):Ja(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),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]=Qa[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!go(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=yo(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!go(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=yo(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!go(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=yo(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})}}),vo=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)=>{vo.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),vo.init(t,e)}),pm=x("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=nm),vo.init(t,e)}),fm=x("$ZodCheckIncludes",(t,e)=>{Re.init(t,e);let r=or(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(`^${or(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(`.*${or(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 Zs=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 Mv={};Ve(Mv,{detectPlatform:()=>jv,getAdapter:()=>lI});import{existsSync as Dt}from"node:fs";import{resolve as Zt}from"node:path";import{homedir as uI}from"node:os";function jv(t){if(t?.name){let n=Ix[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","cursor","antigravity","kiro","pi","zed"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};if(process.env.CLAUDE_PROJECT_DIR||process.env.CLAUDE_SESSION_ID)return{platform:"claude-code",confidence:"high",reason:"CLAUDE_PROJECT_DIR or CLAUDE_SESSION_ID env var set"};if(process.env.GEMINI_PROJECT_DIR||process.env.GEMINI_CLI)return{platform:"gemini-cli",confidence:"high",reason:"GEMINI_PROJECT_DIR or GEMINI_CLI env var set"};if(process.env.OPENCLAW_HOME||process.env.OPENCLAW_CLI)return{platform:"openclaw",confidence:"high",reason:"OPENCLAW_HOME or OPENCLAW_CLI env var set"};if(process.env.KILO||process.env.KILO_PID)return{platform:"kilo",confidence:"high",reason:"KILO or KILO_PID env var set"};if(process.env.OPENCODE||process.env.OPENCODE_PID)return{platform:"opencode",confidence:"high",reason:"OPENCODE or OPENCODE_PID env var set"};if(process.env.CODEX_CI||process.env.CODEX_THREAD_ID)return{platform:"codex",confidence:"high",reason:"CODEX_CI or CODEX_THREAD_ID env var set"};if(process.env.CURSOR_TRACE_ID||process.env.CURSOR_CLI)return{platform:"cursor",confidence:"high",reason:"CURSOR_TRACE_ID or CURSOR_CLI env var set"};if(process.env.VSCODE_PID||process.env.VSCODE_CWD)return{platform:"vscode-copilot",confidence:"high",reason:"VSCODE_PID or VSCODE_CWD env var set"};let r=uI();return Dt(Zt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:Dt(Zt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:Dt(Zt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:Dt(Zt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:Dt(Zt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:Dt(Zt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:Dt(Zt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:Dt(Zt(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:Dt(Zt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:Dt(Zt(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 lI(t){let e=t??jv().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(zp(),Ip));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(Vx(),Bx));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(Wx(),Gx));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(ev(),Qx));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(ov(),nv));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(cv(),av));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(xv(),yv));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(wv(),bv));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(Ov(),Rv));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(Av(),Nv));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(zp(),Ip));return new r}}}var Lv=we(()=>{"use strict";zx()});var D={};Ve(D,{BRAND:()=>bk,DIRTY:()=>Er,EMPTY_PATH:()=>tk,INVALID:()=>A,NEVER:()=>iS,OK:()=>je,ParseStatus:()=>Pe,Schema:()=>H,ZodAny:()=>rr,ZodArray:()=>Ft,ZodBigInt:()=>$r,ZodBoolean:()=>Pr,ZodBranded:()=>lo,ZodCatch:()=>Dr,ZodDate:()=>Rr,ZodDefault:()=>Lr,ZodDiscriminatedUnion:()=>Ns,ZodEffects:()=>at,ZodEnum:()=>jr,ZodError:()=>Ke,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>js,ZodIntersection:()=>zr,ZodIssueCode:()=>S,ZodLazy:()=>Nr,ZodLiteral:()=>Ar,ZodMap:()=>xn,ZodNaN:()=>kn,ZodNativeEnum:()=>Mr,ZodNever:()=>gt,ZodNull:()=>Cr,ZodNullable:()=>Ot,ZodNumber:()=>Tr,ZodObject:()=>Ge,ZodOptional:()=>Je,ZodParsedType:()=>$,ZodPipeline:()=>po,ZodPromise:()=>nr,ZodReadonly:()=>Zr,ZodRecord:()=>As,ZodSchema:()=>H,ZodSet:()=>vn,ZodString:()=>tr,ZodSymbol:()=>_n,ZodTransformer:()=>at,ZodTuple:()=>Rt,ZodType:()=>H,ZodUndefined:()=>Or,ZodUnion:()=>Ir,ZodUnknown:()=>qt,ZodVoid:()=>yn,addIssueToContext:()=>w,any:()=>Ik,array:()=>jk,bigint:()=>$k,boolean:()=>Tf,coerce:()=>sS,custom:()=>bf,date:()=>Pk,datetimeRegex:()=>kf,defaultErrorMap:()=>Ut,discriminatedUnion:()=>Dk,effect:()=>Yk,enum:()=>Jk,function:()=>Bk,getErrorMap:()=>mn,getParsedType:()=>Pt,instanceof:()=>Ek,intersection:()=>Zk,isAborted:()=>Is,isAsync:()=>hn,isDirty:()=>zs,isValid:()=>er,late:()=>wk,lazy:()=>Vk,literal:()=>Kk,makeIssue:()=>uo,map:()=>qk,nan:()=>Tk,nativeEnum:()=>Gk,never:()=>Nk,null:()=>Ck,nullable:()=>Qk,number:()=>Ef,object:()=>Fa,objectUtil:()=>Ua,oboolean:()=>oS,onumber:()=>nS,optional:()=>Xk,ostring:()=>rS,pipeline:()=>tS,preprocess:()=>eS,promise:()=>Wk,quotelessJson:()=>Xv,record:()=>Hk,set:()=>Fk,setErrorMap:()=>ek,strictObject:()=>Mk,string:()=>wf,symbol:()=>Rk,transformer:()=>Yk,tuple:()=>Uk,undefined:()=>Ok,union:()=>Lk,unknown:()=>zk,util:()=>K,void:()=>Ak});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 Ua;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Ua||(Ua={}));var $=K.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),Pt=t=>{switch(typeof t){case"undefined":return $.undefined;case"string":return $.string;case"number":return Number.isNaN(t)?$.nan:$.number;case"boolean":return $.boolean;case"function":return $.function;case"bigint":return $.bigint;case"symbol":return $.symbol;case"object":return Array.isArray(t)?$.array:t===null?$.null:t.then&&typeof t.then=="function"&&t.catch&&typeof t.catch=="function"?$.promise:typeof Map<"u"&&t instanceof Map?$.map:typeof Set<"u"&&t instanceof Set?$.set:typeof Date<"u"&&t instanceof Date?$.date:$.object;default:return $.unknown}};var S=K.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]),Xv=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Ke=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()}};Ke.create=t=>new Ke(t);var Qv=(t,e)=>{let r;switch(t.code){case S.invalid_type:t.received===$.undefined?r="Required":r=`Expected ${t.expected}, received ${t.received}`;break;case S.invalid_literal:r=`Invalid literal value, expected ${JSON.stringify(t.expected,K.jsonStringifyReplacer)}`;break;case S.unrecognized_keys:r=`Unrecognized key(s) in object: ${K.joinValues(t.keys,", ")}`;break;case S.invalid_union:r="Invalid input";break;case S.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${K.joinValues(t.options)}`;break;case S.invalid_enum_value:r=`Invalid enum value. Expected ${K.joinValues(t.options)}, received '${t.received}'`;break;case S.invalid_arguments:r="Invalid function arguments";break;case S.invalid_return_type:r="Invalid function return type";break;case S.invalid_date:r="Invalid date";break;case S.invalid_string:typeof t.validation=="object"?"includes"in t.validation?(r=`Invalid input: must include "${t.validation.includes}"`,typeof t.validation.position=="number"&&(r=`${r} at one or more positions greater than or equal to ${t.validation.position}`)):"startsWith"in t.validation?r=`Invalid input: must start with "${t.validation.startsWith}"`:"endsWith"in t.validation?r=`Invalid input: must end with "${t.validation.endsWith}"`:K.assertNever(t.validation):t.validation!=="regex"?r=`Invalid ${t.validation}`:r="Invalid";break;case S.too_small:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at least":"more than"} ${t.minimum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at least":"over"} ${t.minimum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="bigint"?r=`Number must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${t.minimum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly equal to ":t.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(t.minimum))}`:r="Invalid input";break;case S.too_big:t.type==="array"?r=`Array must contain ${t.exact?"exactly":t.inclusive?"at most":"less than"} ${t.maximum} element(s)`:t.type==="string"?r=`String must contain ${t.exact?"exactly":t.inclusive?"at most":"under"} ${t.maximum} character(s)`:t.type==="number"?r=`Number must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="bigint"?r=`BigInt must be ${t.exact?"exactly":t.inclusive?"less than or equal to":"less than"} ${t.maximum}`:t.type==="date"?r=`Date must be ${t.exact?"exactly":t.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(t.maximum))}`:r="Invalid input";break;case S.custom:r="Invalid input";break;case S.invalid_intersection_types:r="Intersection results could not be merged";break;case S.not_multiple_of:r=`Number must be a multiple of ${t.multipleOf}`;break;case S.not_finite:r="Number must be finite";break;default:r=e.defaultError,K.assertNever(t)}return{message:r}},Ut=Qv;var gf=Ut;function ek(t){gf=t}function mn(){return gf}var uo=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}},tk=[];function w(t,e){let r=mn(),n=uo({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}),Is=t=>t.status==="aborted",zs=t=>t.status==="dirty",er=t=>t.status==="valid",hn=t=>typeof Promise<"u"&&t instanceof Promise;var R;(function(t){t.errToObj=e=>typeof e=="string"?{message:e}:e||{},t.toString=e=>typeof e=="string"?e:e?.message})(R||(R={}));var it=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}},_f=(t,e)=>{if(er(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 Ke(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(hn(r))throw new Error("Synchronous parse encountered promise.");return r}_parseAsync(e){let r=this._parse(e);return Promise.resolve(r)}parse(e,r){let n=this.safeParse(e,r);if(n.success)return n.data;throw n.error}safeParse(e,r){let n={common:{issues:[],async:r?.async??!1,contextualErrorMap:r?.errorMap},path:r?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:Pt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return _f(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 er(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=>er(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(hn(o)?o:Promise.resolve(o));return _f(n,s)}refine(e,r){let n=o=>typeof r=="string"||typeof r>"u"?{message:r}:typeof r=="function"?r(o):r;return this._refinement((o,s)=>{let i=e(o),a=()=>s.addIssue({code:S.custom,...n(o)});return typeof Promise<"u"&&i instanceof Promise?i.then(c=>c?!0:(a(),!1)):i?!0:(a(),!1)})}refinement(e,r){return this._refinement((n,o)=>e(n)?!0:(o.addIssue(typeof r=="function"?r(n,o):r),!1))}_refinement(e){return new at({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 Je.create(this,this._def)}nullable(){return Ot.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Ft.create(this)}promise(){return nr.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 at({...Z(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Lr({...Z(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new lo({typeName:b.ZodBranded,type:this,...Z(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Dr({...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 po.create(this,e)}readonly(){return Zr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},rk=/^c[^\s-]{8,}$/i,nk=/^[0-9a-z]+$/,ok=/^[0-9A-HJKMNP-TV-Z]{26}$/i,sk=/^[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,ik=/^[a-z0-9_-]{21}$/i,ak=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,ck=/^[-+]?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)?)??$/,uk=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,lk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Ha,dk=/^(?:(?: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])$/,pk=/^(?:(?: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])$/,fk=/^(([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]))$/,mk=/^(([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])$/,hk=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,gk=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,xf="((\\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])))",_k=new RegExp(`^${xf}$`);function vf(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 yk(t){return new RegExp(`^${vf(t)}$`)}function kf(t){let e=`${xf}T${vf(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 xk(t,e){return!!((e==="v4"||!e)&&dk.test(t)||(e==="v6"||!e)&&fk.test(t))}function vk(t,e){if(!ak.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 kk(t,e){return!!((e==="v4"||!e)&&pk.test(t)||(e==="v6"||!e)&&mk.test(t))}var tr=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 w(s,{code:S.invalid_type,expected:$.string,received:s.parsedType}),A}let n=new Pe,o;for(let s of this._def.checks)if(s.kind==="min")e.data.length<s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:S.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="max")e.data.length>s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:S.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!1,message:s.message}),n.dirty());else if(s.kind==="length"){let i=e.data.length>s.value,a=e.data.length<s.value;(i||a)&&(o=this._getOrReturnCtx(e,o),i?w(o,{code:S.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&w(o,{code:S.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")uk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"email",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Ha||(Ha=new RegExp(lk,"u")),Ha.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"emoji",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")sk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"uuid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="nanoid")ik.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"nanoid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")rk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cuid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")nk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cuid2",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="ulid")ok.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"ulid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="url")try{new URL(e.data)}catch{o=this._getOrReturnCtx(e,o),w(o,{validation:"url",code:S.invalid_string,message:s.message}),n.dirty()}else s.kind==="regex"?(s.regex.lastIndex=0,s.regex.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"regex",code:S.invalid_string,message:s.message}),n.dirty())):s.kind==="trim"?e.data=e.data.trim():s.kind==="includes"?e.data.includes(s.value,s.position)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:{includes:s.value,position:s.position},message:s.message}),n.dirty()):s.kind==="toLowerCase"?e.data=e.data.toLowerCase():s.kind==="toUpperCase"?e.data=e.data.toUpperCase():s.kind==="startsWith"?e.data.startsWith(s.value)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:{startsWith:s.value},message:s.message}),n.dirty()):s.kind==="endsWith"?e.data.endsWith(s.value)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?kf(s).test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?_k.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?yk(s).test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{code:S.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?ck.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"duration",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?xk(e.data,s.version)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"ip",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="jwt"?vk(e.data,s.alg)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"jwt",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="cidr"?kk(e.data,s.version)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"cidr",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?hk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"base64",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?gk.test(e.data)||(o=this._getOrReturnCtx(e,o),w(o,{validation:"base64url",code:S.invalid_string,message:s.message}),n.dirty()):K.assertNever(s);return{status:n.value,value:e.data}}_regex(e,r,n){return this.refinement(o=>e.test(o),{validation:r,code:S.invalid_string,...R.errToObj(n)})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}email(e){return this._addCheck({kind:"email",...R.errToObj(e)})}url(e){return this._addCheck({kind:"url",...R.errToObj(e)})}emoji(e){return this._addCheck({kind:"emoji",...R.errToObj(e)})}uuid(e){return this._addCheck({kind:"uuid",...R.errToObj(e)})}nanoid(e){return this._addCheck({kind:"nanoid",...R.errToObj(e)})}cuid(e){return this._addCheck({kind:"cuid",...R.errToObj(e)})}cuid2(e){return this._addCheck({kind:"cuid2",...R.errToObj(e)})}ulid(e){return this._addCheck({kind:"ulid",...R.errToObj(e)})}base64(e){return this._addCheck({kind:"base64",...R.errToObj(e)})}base64url(e){return this._addCheck({kind:"base64url",...R.errToObj(e)})}jwt(e){return this._addCheck({kind:"jwt",...R.errToObj(e)})}ip(e){return this._addCheck({kind:"ip",...R.errToObj(e)})}cidr(e){return this._addCheck({kind:"cidr",...R.errToObj(e)})}datetime(e){return typeof e=="string"?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:e}):this._addCheck({kind:"datetime",precision:typeof e?.precision>"u"?null:e?.precision,offset:e?.offset??!1,local:e?.local??!1,...R.errToObj(e?.message)})}date(e){return this._addCheck({kind:"date",message:e})}time(e){return typeof e=="string"?this._addCheck({kind:"time",precision:null,message:e}):this._addCheck({kind:"time",precision:typeof e?.precision>"u"?null:e?.precision,...R.errToObj(e?.message)})}duration(e){return this._addCheck({kind:"duration",...R.errToObj(e)})}regex(e,r){return this._addCheck({kind:"regex",regex:e,...R.errToObj(r)})}includes(e,r){return this._addCheck({kind:"includes",value:e,position:r?.position,...R.errToObj(r?.message)})}startsWith(e,r){return this._addCheck({kind:"startsWith",value:e,...R.errToObj(r)})}endsWith(e,r){return this._addCheck({kind:"endsWith",value:e,...R.errToObj(r)})}min(e,r){return this._addCheck({kind:"min",value:e,...R.errToObj(r)})}max(e,r){return this._addCheck({kind:"max",value:e,...R.errToObj(r)})}length(e,r){return this._addCheck({kind:"length",value:e,...R.errToObj(r)})}nonempty(e){return this.min(1,R.errToObj(e))}trim(){return new t({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new t({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(e=>e.kind==="datetime")}get isDate(){return!!this._def.checks.find(e=>e.kind==="date")}get isTime(){return!!this._def.checks.find(e=>e.kind==="time")}get isDuration(){return!!this._def.checks.find(e=>e.kind==="duration")}get isEmail(){return!!this._def.checks.find(e=>e.kind==="email")}get isURL(){return!!this._def.checks.find(e=>e.kind==="url")}get isEmoji(){return!!this._def.checks.find(e=>e.kind==="emoji")}get isUUID(){return!!this._def.checks.find(e=>e.kind==="uuid")}get isNANOID(){return!!this._def.checks.find(e=>e.kind==="nanoid")}get isCUID(){return!!this._def.checks.find(e=>e.kind==="cuid")}get isCUID2(){return!!this._def.checks.find(e=>e.kind==="cuid2")}get isULID(){return!!this._def.checks.find(e=>e.kind==="ulid")}get isIP(){return!!this._def.checks.find(e=>e.kind==="ip")}get isCIDR(){return!!this._def.checks.find(e=>e.kind==="cidr")}get isBase64(){return!!this._def.checks.find(e=>e.kind==="base64")}get isBase64url(){return!!this._def.checks.find(e=>e.kind==="base64url")}get minLength(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxLength(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};tr.create=t=>new tr({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...Z(t)});function Sk(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 w(s,{code:S.invalid_type,expected:$.number,received:s.parsedType}),A}let n,o=new Pe;for(let s of this._def.checks)s.kind==="int"?K.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),w(n,{code:S.invalid_type,expected:"integer",received:"float",message:s.message}),o.dirty()):s.kind==="min"?(s.inclusive?e.data<s.value:e.data<=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.too_small,minimum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?Sk(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):s.kind==="finite"?Number.isFinite(e.data)||(n=this._getOrReturnCtx(e,n),w(n,{code:S.not_finite,message:s.message}),o.dirty()):K.assertNever(s);return{status:o.value,value:e.data}}gte(e,r){return this.setLimit("min",e,!0,R.toString(r))}gt(e,r){return this.setLimit("min",e,!1,R.toString(r))}lte(e,r){return this.setLimit("max",e,!0,R.toString(r))}lt(e,r){return this.setLimit("max",e,!1,R.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:R.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}int(e){return this._addCheck({kind:"int",message:R.toString(e)})}positive(e){return this._addCheck({kind:"min",value:0,inclusive:!1,message:R.toString(e)})}negative(e){return this._addCheck({kind:"max",value:0,inclusive:!1,message:R.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:0,inclusive:!0,message:R.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:0,inclusive:!0,message:R.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:R.toString(r)})}finite(e){return this._addCheck({kind:"finite",message:R.toString(e)})}safe(e){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:R.toString(e)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:R.toString(e)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}get isInt(){return!!this._def.checks.find(e=>e.kind==="int"||e.kind==="multipleOf"&&K.isInteger(e.value))}get isFinite(){let e=null,r=null;for(let n of this._def.checks){if(n.kind==="finite"||n.kind==="int"||n.kind==="multipleOf")return!0;n.kind==="min"?(r===null||n.value>r)&&(r=n.value):n.kind==="max"&&(e===null||n.value<e)&&(e=n.value)}return Number.isFinite(r)&&Number.isFinite(e)}};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),w(n,{code:S.too_small,type:"bigint",minimum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="max"?(s.inclusive?e.data>s.value:e.data>=s.value)&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.too_big,type:"bigint",maximum:s.value,inclusive:s.inclusive,message:s.message}),o.dirty()):s.kind==="multipleOf"?e.data%s.value!==BigInt(0)&&(n=this._getOrReturnCtx(e,n),w(n,{code:S.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):K.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return w(r,{code:S.invalid_type,expected:$.bigint,received:r.parsedType}),A}gte(e,r){return this.setLimit("min",e,!0,R.toString(r))}gt(e,r){return this.setLimit("min",e,!1,R.toString(r))}lte(e,r){return this.setLimit("max",e,!0,R.toString(r))}lt(e,r){return this.setLimit("max",e,!1,R.toString(r))}setLimit(e,r,n,o){return new t({...this._def,checks:[...this._def.checks,{kind:e,value:r,inclusive:n,message:R.toString(o)}]})}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}positive(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:R.toString(e)})}negative(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:R.toString(e)})}nonpositive(e){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:R.toString(e)})}nonnegative(e){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:R.toString(e)})}multipleOf(e,r){return this._addCheck({kind:"multipleOf",value:e,message:R.toString(r)})}get minValue(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e}get maxValue(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e}};$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 w(n,{code:S.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 w(s,{code:S.invalid_type,expected:$.date,received:s.parsedType}),A}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return w(s,{code:S.invalid_date}),A}let n=new Pe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:S.too_small,message:s.message,inclusive:!0,exact:!1,minimum:s.value,type:"date"}),n.dirty()):s.kind==="max"?e.data.getTime()>s.value&&(o=this._getOrReturnCtx(e,o),w(o,{code:S.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):K.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:R.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:R.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};Rr.create=t=>new Rr({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...Z(t)});var _n=class extends H{_parse(e){if(this._getType(e)!==$.symbol){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.symbol,received:n.parsedType}),A}return je(e.data)}};_n.create=t=>new _n({typeName:b.ZodSymbol,...Z(t)});var Or=class extends H{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.undefined,received:n.parsedType}),A}return je(e.data)}};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 w(n,{code:S.invalid_type,expected:$.null,received:n.parsedType}),A}return je(e.data)}};Cr.create=t=>new Cr({typeName:b.ZodNull,...Z(t)});var rr=class extends H{constructor(){super(...arguments),this._any=!0}_parse(e){return je(e.data)}};rr.create=t=>new rr({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 gt=class extends H{_parse(e){let r=this._getOrReturnCtx(e);return w(r,{code:S.invalid_type,expected:$.never,received:r.parsedType}),A}};gt.create=t=>new gt({typeName:b.ZodNever,...Z(t)});var yn=class extends H{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return w(n,{code:S.invalid_type,expected:$.void,received:n.parsedType}),A}return je(e.data)}};yn.create=t=>new yn({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 w(r,{code:S.invalid_type,expected:$.array,received:r.parsedType}),A;if(o.exactLength!==null){let i=r.data.length>o.exactLength.value,a=r.data.length<o.exactLength.value;(i||a)&&(w(r,{code:i?S.too_big:S.too_small,minimum:a?o.exactLength.value:void 0,maximum:i?o.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:o.exactLength.message}),n.dirty())}if(o.minLength!==null&&r.data.length<o.minLength.value&&(w(r,{code:S.too_small,minimum:o.minLength.value,type:"array",inclusive:!0,exact:!1,message:o.minLength.message}),n.dirty()),o.maxLength!==null&&r.data.length>o.maxLength.value&&(w(r,{code:S.too_big,maximum:o.maxLength.value,type:"array",inclusive:!0,exact:!1,message:o.maxLength.message}),n.dirty()),r.common.async)return Promise.all([...r.data].map((i,a)=>o.type._parseAsync(new it(r,i,r.path,a)))).then(i=>Pe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new it(r,i,r.path,a)));return Pe.mergeArray(n,s)}get element(){return this._def.type}min(e,r){return new t({...this._def,minLength:{value:e,message:R.toString(r)}})}max(e,r){return new t({...this._def,maxLength:{value:e,message:R.toString(r)}})}length(e,r){return new t({...this._def,exactLength:{value:e,message:R.toString(r)}})}nonempty(e){return this.min(1,e)}};Ft.create=(t,e)=>new Ft({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...Z(e)});function gn(t){if(t instanceof Ge){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Je.create(gn(n))}return new Ge({...t._def,shape:()=>e})}else return t instanceof Ft?new Ft({...t._def,type:gn(t.element)}):t instanceof Je?Je.create(gn(t.unwrap())):t instanceof Ot?Ot.create(gn(t.unwrap())):t instanceof Rt?Rt.create(t.items.map(e=>gn(e))):t}var Ge=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 w(u,{code:S.invalid_type,expected:$.object,received:u.parsedType}),A}let{status:n,ctx:o}=this._processInputParams(e),{shape:s,keys:i}=this._getCached(),a=[];if(!(this._def.catchall instanceof gt&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new it(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof gt){let u=this._def.unknownKeys;if(u==="passthrough")for(let l of a)c.push({key:{status:"valid",value:l},value:{status:"valid",value:o.data[l]}});else if(u==="strict")a.length>0&&(w(o,{code:S.unrecognized_keys,keys:a}),n.dirty());else if(u!=="strip")throw new Error("Internal ZodObject error: invalid unknownKeys value.")}else{let u=this._def.catchall;for(let l of a){let d=o.data[l];c.push({key:{status:"valid",value:l},value:u._parse(new it(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 R.errToObj,new t({...this._def,unknownKeys:"strict",...e!==void 0?{errorMap:(r,n)=>{let o=this._def.errorMap?.(r,n).message??n.defaultError;return r.code==="unrecognized_keys"?{message:R.errToObj(e).message??o}:{message:o}}}:{}})}strip(){return new t({...this._def,unknownKeys:"strip"})}passthrough(){return new t({...this._def,unknownKeys:"passthrough"})}extend(e){return new t({...this._def,shape:()=>({...this._def.shape(),...e})})}merge(e){return new t({unknownKeys:e._def.unknownKeys,catchall:e._def.catchall,shape:()=>({...this._def.shape(),...e._def.shape()}),typeName:b.ZodObject})}setKey(e,r){return this.augment({[e]:r})}catchall(e){return new t({...this._def,catchall:e})}pick(e){let r={};for(let n of K.objectKeys(e))e[n]&&this.shape[n]&&(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}omit(e){let r={};for(let n of K.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return gn(this)}partial(e){let r={};for(let n of K.objectKeys(this.shape)){let o=this.shape[n];e&&!e[n]?r[n]=o:r[n]=o.optional()}return new t({...this._def,shape:()=>r})}required(e){let r={};for(let n of K.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Je;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Sf(K.objectKeys(this.shape))}};Ge.create=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strip",catchall:gt.create(),typeName:b.ZodObject,...Z(e)});Ge.strictCreate=(t,e)=>new Ge({shape:()=>t,unknownKeys:"strict",catchall:gt.create(),typeName:b.ZodObject,...Z(e)});Ge.lazycreate=(t,e)=>new Ge({shape:t,unknownKeys:"strip",catchall:gt.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 Ke(a.ctx.common.issues));return w(r,{code:S.invalid_union,unionErrors:i}),A}if(r.common.async)return Promise.all(n.map(async s=>{let i={...r,common:{...r.common,issues:[]},parent:null};return{result:await s._parseAsync({data:r.data,path:r.path,parent:i}),ctx:i}})).then(o);{let s,i=[];for(let c of n){let u={...r,common:{...r.common,issues:[]},parent:null},l=c._parseSync({data:r.data,path:r.path,parent:u});if(l.status==="valid")return l;l.status==="dirty"&&!s&&(s={result:l,ctx:u}),u.common.issues.length&&i.push(u.common.issues)}if(s)return r.common.issues.push(...s.ctx.common.issues),s.result;let a=i.map(c=>new Ke(c));return w(r,{code:S.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 at?Ht(t.innerType()):t instanceof Ar?[t.value]:t instanceof jr?t.options:t instanceof Mr?K.objectValues(t.enum):t instanceof Lr?Ht(t._def.innerType):t instanceof Or?[void 0]:t instanceof Cr?[null]:t instanceof Je?[void 0,...Ht(t.unwrap())]:t instanceof Ot?[null,...Ht(t.unwrap())]:t instanceof lo||t instanceof Zr?Ht(t.unwrap()):t instanceof Dr?Ht(t._def.innerType):[],Ns=class t extends H{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.object)return w(r,{code:S.invalid_type,expected:$.object,received:r.parsedType}),A;let n=this.discriminator,o=r.data[n],s=this.optionsMap.get(o);return s?r.common.async?s._parseAsync({data:r.data,path:r.path,parent:r}):s._parseSync({data:r.data,path:r.path,parent:r}):(w(r,{code:S.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[n]}),A)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(e,r,n){let o=new Map;for(let s of r){let i=Ht(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:b.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...Z(n)})}};function qa(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=qa(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=qa(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(Is(s)||Is(i))return A;let a=qa(s.value,i.value);return a.valid?((zs(s)||zs(i))&&r.dirty(),{status:r.value,value:a.data}):(w(n,{code:S.invalid_intersection_types}),A)};return n.common.async?Promise.all([this._def.left._parseAsync({data:n.data,path:n.path,parent:n}),this._def.right._parseAsync({data:n.data,path:n.path,parent:n})]).then(([s,i])=>o(s,i)):o(this._def.left._parseSync({data:n.data,path:n.path,parent:n}),this._def.right._parseSync({data:n.data,path:n.path,parent:n}))}};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 w(n,{code:S.invalid_type,expected:$.array,received:n.parsedType}),A;if(n.data.length<this._def.items.length)return w(n,{code:S.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),A;!this._def.rest&&n.data.length>this._def.items.length&&(w(n,{code:S.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),r.dirty());let s=[...n.data].map((i,a)=>{let c=this._def.items[a]||this._def.rest;return c?c._parse(new it(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 As=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 w(n,{code:S.invalid_type,expected:$.object,received:n.parsedType}),A;let o=[],s=this._def.keyType,i=this._def.valueType;for(let a in n.data)o.push({key:s._parse(new it(n,a,n.path,a)),value:i._parse(new it(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:tr.create(),valueType:e,typeName:b.ZodRecord,...Z(r)})}},xn=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 w(n,{code:S.invalid_type,expected:$.map,received:n.parsedType}),A;let o=this._def.keyType,s=this._def.valueType,i=[...n.data.entries()].map(([a,c],u)=>({key:o._parse(new it(n,a,n.path,[u,"key"])),value:s._parse(new it(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return A;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}})}else{let a=new Map;for(let c of i){let u=c.key,l=c.value;if(u.status==="aborted"||l.status==="aborted")return A;(u.status==="dirty"||l.status==="dirty")&&r.dirty(),a.set(u.value,l.value)}return{status:r.value,value:a}}}};xn.create=(t,e,r)=>new xn({valueType:e,keyType:t,typeName:b.ZodMap,...Z(r)});var vn=class t extends H{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.set)return w(n,{code:S.invalid_type,expected:$.set,received:n.parsedType}),A;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(w(n,{code:S.too_small,minimum:o.minSize.value,type:"set",inclusive:!0,exact:!1,message:o.minSize.message}),r.dirty()),o.maxSize!==null&&n.data.size>o.maxSize.value&&(w(n,{code:S.too_big,maximum:o.maxSize.value,type:"set",inclusive:!0,exact:!1,message:o.maxSize.message}),r.dirty());let s=this._def.valueType;function i(c){let u=new Set;for(let l of c){if(l.status==="aborted")return A;l.status==="dirty"&&r.dirty(),u.add(l.value)}return{status:r.value,value:u}}let a=[...n.data.values()].map((c,u)=>s._parse(new it(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message:R.toString(r)}})}max(e,r){return new t({...this._def,maxSize:{value:e,message:R.toString(r)}})}size(e,r){return this.min(e,r).max(e,r)}nonempty(e){return this.min(1,e)}};vn.create=(t,e)=>new vn({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...Z(e)});var js=class t extends H{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.function)return w(r,{code:S.invalid_type,expected:$.function,received:r.parsedType}),A;function n(a,c){return uo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,mn(),Ut].filter(u=>!!u),issueData:{code:S.invalid_arguments,argumentsError:c}})}function o(a,c){return uo({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,mn(),Ut].filter(u=>!!u),issueData:{code:S.invalid_return_type,returnTypeError:c}})}let s={errorMap:r.common.contextualErrorMap},i=r.data;if(this._def.returns instanceof nr){let a=this;return je(async function(...c){let u=new Ke([]),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 Ke([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Ke([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 w(r,{received:r.data,code:S.invalid_literal,expected:this._def.value}),A}return{status:"valid",value:e.data}}get value(){return this._def.value}};Ar.create=(t,e)=>new Ar({value:t,typeName:b.ZodLiteral,...Z(e)});function Sf(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 w(r,{expected:K.joinValues(n),received:r.parsedType,code:S.invalid_type}),A}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(e.data)){let r=this._getOrReturnCtx(e),n=this._def.values;return w(r,{received:r.data,code:S.invalid_enum_value,options:n}),A}return je(e.data)}get options(){return this._def.values}get enum(){let e={};for(let r of this._def.values)e[r]=r;return e}get Values(){let e={};for(let r of this._def.values)e[r]=r;return e}get Enum(){let e={};for(let r of this._def.values)e[r]=r;return e}extract(e,r=this._def){return t.create(e,{...this._def,...r})}exclude(e,r=this._def){return t.create(this.options.filter(n=>!e.includes(n)),{...this._def,...r})}};jr.create=Sf;var Mr=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 w(n,{expected:K.joinValues(o),received:n.parsedType,code:S.invalid_type}),A}if(this._cache||(this._cache=new Set(K.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=K.objectValues(r);return w(n,{received:n.data,code:S.invalid_enum_value,options:o}),A}return je(e.data)}get enum(){return this._def.values}};Mr.create=(t,e)=>new Mr({values:t,typeName:b.ZodNativeEnum,...Z(e)});var nr=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 w(r,{code:S.invalid_type,expected:$.promise,received:r.parsedType}),A;let n=r.parsedType===$.promise?r.data:Promise.resolve(r.data);return je(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};nr.create=(t,e)=>new nr({type:t,typeName:b.ZodPromise,...Z(e)});var at=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=>{w(n,i),i.fatal?r.abort():r.dirty()},get path(){return n.path}};if(s.addIssue=s.addIssue.bind(s),o.type==="preprocess"){let i=o.transform(n.data,s);if(n.common.async)return Promise.resolve(i).then(async a=>{if(r.value==="aborted")return A;let c=await this._def.schema._parseAsync({data:a,path:n.path,parent:n});return c.status==="aborted"?A:c.status==="dirty"?Er(c.value):r.value==="dirty"?Er(c.value):c});{if(r.value==="aborted")return A;let a=this._def.schema._parseSync({data:i,path:n.path,parent:n});return a.status==="aborted"?A:a.status==="dirty"?Er(a.value):r.value==="dirty"?Er(a.value):a}}if(o.type==="refinement"){let i=a=>{let c=o.refinement(a,s);if(n.common.async)return Promise.resolve(c);if(c instanceof Promise)throw new Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(n.common.async===!1){let a=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});return a.status==="aborted"?A:(a.status==="dirty"&&r.dirty(),i(a.value),{status:r.value,value:a.value})}else return this._def.schema._parseAsync({data:n.data,path:n.path,parent:n}).then(a=>a.status==="aborted"?A:(a.status==="dirty"&&r.dirty(),i(a.value).then(()=>({status:r.value,value:a.value}))))}if(o.type==="transform")if(n.common.async===!1){let i=this._def.schema._parseSync({data:n.data,path:n.path,parent:n});if(!er(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=>er(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);K.assertNever(o)}};at.create=(t,e,r)=>new at({schema:t,typeName:b.ZodEffects,effect:e,...Z(r)});at.createWithPreprocess=(t,e,r)=>new at({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...Z(r)});var Je=class extends H{_parse(e){return this._getType(e)===$.undefined?je(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Je.create=(t,e)=>new Je({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 Lr=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}};Lr.create=(t,e)=>new Lr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...Z(e)});var Dr=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 hn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Ke(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ke(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Dr.create=(t,e)=>new Dr({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 w(n,{code:S.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 bk=Symbol("zod_brand"),lo=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}},po=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=>(er(o)&&(o.value=Object.freeze(o.value)),o);return hn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Zr.create=(t,e)=>new Zr({innerType:t,typeName:b.ZodReadonly,...Z(e)});function yf(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function bf(t,e={},r){return t?rr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=yf(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=yf(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):rr.create()}var wk={object:Ge.lazycreate},b;(function(t){t.ZodString="ZodString",t.ZodNumber="ZodNumber",t.ZodNaN="ZodNaN",t.ZodBigInt="ZodBigInt",t.ZodBoolean="ZodBoolean",t.ZodDate="ZodDate",t.ZodSymbol="ZodSymbol",t.ZodUndefined="ZodUndefined",t.ZodNull="ZodNull",t.ZodAny="ZodAny",t.ZodUnknown="ZodUnknown",t.ZodNever="ZodNever",t.ZodVoid="ZodVoid",t.ZodArray="ZodArray",t.ZodObject="ZodObject",t.ZodUnion="ZodUnion",t.ZodDiscriminatedUnion="ZodDiscriminatedUnion",t.ZodIntersection="ZodIntersection",t.ZodTuple="ZodTuple",t.ZodRecord="ZodRecord",t.ZodMap="ZodMap",t.ZodSet="ZodSet",t.ZodFunction="ZodFunction",t.ZodLazy="ZodLazy",t.ZodLiteral="ZodLiteral",t.ZodEnum="ZodEnum",t.ZodEffects="ZodEffects",t.ZodNativeEnum="ZodNativeEnum",t.ZodOptional="ZodOptional",t.ZodNullable="ZodNullable",t.ZodDefault="ZodDefault",t.ZodCatch="ZodCatch",t.ZodPromise="ZodPromise",t.ZodBranded="ZodBranded",t.ZodPipeline="ZodPipeline",t.ZodReadonly="ZodReadonly"})(b||(b={}));var Ek=(t,e={message:`Input not instance of ${t.name}`})=>bf(r=>r instanceof t,e),wf=tr.create,Ef=Tr.create,Tk=kn.create,$k=$r.create,Tf=Pr.create,Pk=Rr.create,Rk=_n.create,Ok=Or.create,Ck=Cr.create,Ik=rr.create,zk=qt.create,Nk=gt.create,Ak=yn.create,jk=Ft.create,Fa=Ge.create,Mk=Ge.strictCreate,Lk=Ir.create,Dk=Ns.create,Zk=zr.create,Uk=Rt.create,Hk=As.create,qk=xn.create,Fk=vn.create,Bk=js.create,Vk=Nr.create,Kk=Ar.create,Jk=jr.create,Gk=Mr.create,Wk=nr.create,Yk=at.create,Xk=Je.create,Qk=Ot.create,eS=at.createWithPreprocess,tS=po.create,rS=()=>wf().optional(),nS=()=>Ef().optional(),oS=()=>Tf().optional(),sS={string:(t=>tr.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 iS=A;var aS=Object.freeze({status:"aborted"});function y(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.")}},Ms={};function rt(t){return t&&Object.assign(Ms,t),Ms}var J={};Ve(J,{BIGINT_FORMAT_RANGES:()=>Pf,Class:()=>Va,NUMBER_FORMAT_RANGES:()=>Qa,aborted:()=>Hr,allowsEval:()=>Wa,assert:()=>pS,assertEqual:()=>cS,assertIs:()=>lS,assertNever:()=>dS,assertNotEqual:()=>uS,assignProp:()=>Ga,cached:()=>ho,captureStackTrace:()=>Ds,cleanEnum:()=>ES,cleanRegex:()=>_o,clone:()=>nt,createTransparentProxy:()=>yS,defineLazy:()=>ae,esc:()=>Ur,escapeRegex:()=>or,extend:()=>kS,finalizeIssue:()=>_t,floatSafeRemainder:()=>Ja,getElementAtPath:()=>fS,getEnumValues:()=>mo,getLengthableOrigin:()=>yo,getParsedType:()=>_S,getSizableOrigin:()=>Rf,isObject:()=>Sn,isPlainObject:()=>bn,issue:()=>ec,joinValues:()=>Ls,jsonStringifyReplacer:()=>Ka,merge:()=>SS,normalizeParams:()=>j,nullish:()=>go,numKeys:()=>gS,omit:()=>vS,optionalKeys:()=>Xa,partial:()=>bS,pick:()=>xS,prefixIssues:()=>Ct,primitiveTypes:()=>$f,promiseAllObject:()=>mS,propertyKeyTypes:()=>Ya,randomString:()=>hS,required:()=>wS,stringifyPrimitive:()=>Zs,unwrapMessage:()=>fo});function cS(t){return t}function uS(t){return t}function lS(t){}function dS(t){throw new Error}function pS(t){}function mo(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 Ls(t,e="|"){return t.map(r=>Zs(r)).join(e)}function Ka(t,e){return typeof e=="bigint"?e.toString():e}function ho(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function go(t){return t==null}function _o(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Ja(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function ae(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Ga(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function fS(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function mS(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 hS(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 Ds=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function Sn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Wa=ho(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function bn(t){if(Sn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(Sn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function gS(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var _S=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}`)}},Ya=new Set(["string","number","symbol"]),$f=new Set(["string","number","bigint","boolean","symbol","undefined"]);function or(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 yS(t){let e;return new Proxy({},{get(r,n,o){return e??(e=t()),Reflect.get(e,n,o)},set(r,n,o,s){return e??(e=t()),Reflect.set(e,n,o,s)},has(r,n){return e??(e=t()),Reflect.has(e,n)},deleteProperty(r,n){return e??(e=t()),Reflect.deleteProperty(e,n)},ownKeys(r){return e??(e=t()),Reflect.ownKeys(e)},getOwnPropertyDescriptor(r,n){return e??(e=t()),Reflect.getOwnPropertyDescriptor(e,n)},defineProperty(r,n,o){return e??(e=t()),Reflect.defineProperty(e,n,o)}})}function Zs(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Xa(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Qa={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]},Pf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function xS(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 vS(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 kS(t,e){if(!bn(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return Ga(this,"shape",n),n},checks:[]};return nt(t,r)}function SS(t,e){return nt(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ga(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function bS(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 wS(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 fo(t){return typeof t=="string"?t:t?.message}function _t(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=fo(t.inst?._zod.def?.error?.(t))??fo(e?.error?.(t))??fo(r.customError?.(t))??fo(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Rf(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function yo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function ec(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function ES(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Va=class{constructor(...e){}};var Of=(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,Ka,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Us=y("$ZodError",Of),xo=y("$ZodError",Of,{Parent:Error});function tc(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 rc(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 nc=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=>_t(c,s,rt())));throw Ds(a,o?.callee),a}return i.value},oc=nc(xo),sc=t=>async(e,r,n,o)=>{let s=n?Object.assign(n,{async:!0}):{async:!0},i=e._zod.run({value:r,issues:[]},s);if(i instanceof Promise&&(i=await i),i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>_t(c,s,rt())));throw Ds(a,o?.callee),a}return i.value},ic=sc(xo),ac=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??Us)(s.issues.map(i=>_t(i,o,rt())))}:{success:!0,data:s.value}},qr=ac(xo),cc=t=>async(e,r,n)=>{let o=n?Object.assign(n,{async:!0}):{async:!0},s=e._zod.run({value:r,issues:[]},o);return s instanceof Promise&&(s=await s),s.issues.length?{success:!1,error:new t(s.issues.map(i=>_t(i,o,rt())))}:{success:!0,data:s.value}},Fr=cc(xo);var Cf=/^[cC][^\s-]{8,}$/,If=/^[0-9a-z]+$/,zf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Nf=/^[0-9a-vA-V]{20}$/,Af=/^[A-Za-z0-9]{27}$/,jf=/^[a-zA-Z0-9_-]{21}$/,Mf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Lf=/^([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})$/,uc=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 Df=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var $S="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function Zf(){return new RegExp($S,"u")}var 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])$/,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})$/,qf=/^((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])$/,Ff=/^(([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])$/,Bf=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,lc=/^[A-Za-z0-9_-]*$/,Vf=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var Kf=/^\+(?:[0-9]){6,14}[0-9]$/,Jf="(?:(?:\\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])))",Gf=new RegExp(`^${Jf}$`);function Wf(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 Yf(t){return new RegExp(`^${Wf(t)}$`)}function Xf(t){let e=Wf({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(`^${Jf}T(?:${n})$`)}var Qf=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var em=/^\d+$/,tm=/^-?\d+(?:\.\d+)?/i,rm=/true|false/i,nm=/null/i;var om=/^[^A-Z]*$/,sm=/^[^a-z]*$/;var Re=y("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),im={number:"number",bigint:"bigint",object:"date"},dc=y("$ZodCheckLessThan",(t,e)=>{Re.init(t,e);let r=im[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})}}),pc=y("$ZodCheckGreaterThan",(t,e)=>{Re.init(t,e);let r=im[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})}}),am=y("$ZodCheckMultipleOf",(t,e)=>{Re.init(t,e),t._zod.onattach.push(r=>{var n;(n=r._zod.bag).multipleOf??(n.multipleOf=e.value)}),t._zod.check=r=>{if(typeof r.value!=typeof e.value)throw new Error("Cannot mix number and bigint in multiple_of check.");(typeof r.value=="bigint"?r.value%e.value===BigInt(0):Ja(r.value,e.value)===0)||r.issues.push({origin:typeof r.value,code:"not_multiple_of",divisor:e.value,input:r.value,inst:t,continue:!e.abort})}}),cm=y("$ZodCheckNumberFormat",(t,e)=>{Re.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Qa[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=em)}),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 um=y("$ZodCheckMaxLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!go(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=yo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),lm=y("$ZodCheckMinLength",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!go(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=yo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),dm=y("$ZodCheckLengthEquals",(t,e)=>{var r;Re.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!go(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=yo(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})}}),vo=y("$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=()=>{})}),pm=y("$ZodCheckRegex",(t,e)=>{vo.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})}}),fm=y("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=om),vo.init(t,e)}),mm=y("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=sm),vo.init(t,e)}),hm=y("$ZodCheckIncludes",(t,e)=>{Re.init(t,e);let r=or(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})}}),gm=y("$ZodCheckStartsWith",(t,e)=>{Re.init(t,e);let r=new RegExp(`^${or(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})}}),_m=y("$ZodCheckEndsWith",(t,e)=>{Re.init(t,e);let r=new RegExp(`.*${or(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 ym=y("$ZodCheckOverwrite",(t,e)=>{Re.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var qs=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 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=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 Ft;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 Ft;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}}),So=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)=>{vo.init(t,e),So.init(t,e)}),mc=x("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=jf),le.init(t,e)}),hc=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=uc(n))}else e.pattern??(e.pattern=uc());le.init(t,e)}),gc=x("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Mf),le.init(t,e)}),_c=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})}}}),yc=x("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Lf()),le.init(t,e)}),xc=x("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Nf),le.init(t,e)}),vc=x("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Rf),le.init(t,e)}),Sc=x("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Of),le.init(t,e)}),kc=x("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Cf),le.init(t,e)}),bc=x("$ZodXID",(t,e)=>{e.pattern??(e.pattern=If),le.init(t,e)}),wc=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)}),Ec=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"})}),Tc=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})}}}),$c=x("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=Uf),le.init(t,e)}),Pc=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 Rc=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(!lc.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Im(r)}var Oc=x("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=lc),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})}}),Cc=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 Ic=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 Hs=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}}),zc=x("$ZodNumber",(t,e)=>{im.init(t,e),Hs.init(t,e)}),Nc=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 Ac=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 jc=x("$ZodUnknown",(t,e)=>{re.init(t,e),t._zod.parse=r=>r}),Mc=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 Lc=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 Us(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 qs=x("$ZodObject",(t,e)=>{re.init(t,e);let r=ho(()=>{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=Xa(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 Zs(["shape","payload","ctx"]),f=r.value,p=v=>{let S=Ur(v);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 v of f.keys)h[v]=`key_${g++}`;m.write("const newResult = {}");for(let v of f.keys)if(f.optionalKeys.has(v)){let S=h[v];m.write(`const ${S} = ${p(v)};`);let w=Ur(v);m.write(`
47
- if (${S}.issues.length) {
48
- if (input[${w}] === undefined) {
49
- if (${w} in input) {
50
- newResult[${w}] = undefined;
46
+ `))}};var vm={major:4,minor:0,patch:0};var re=y("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=vm;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}}),ko=y("$ZodString",(t,e)=>{re.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??Qf(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),ce=y("$ZodStringFormat",(t,e)=>{vo.init(t,e),ko.init(t,e)}),mc=y("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Lf),ce.init(t,e)}),hc=y("$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=uc(n))}else e.pattern??(e.pattern=uc());ce.init(t,e)}),gc=y("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=Df),ce.init(t,e)}),_c=y("$ZodURL",(t,e)=>{ce.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:Vf.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})}}}),yc=y("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=Zf()),ce.init(t,e)}),xc=y("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=jf),ce.init(t,e)}),vc=y("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Cf),ce.init(t,e)}),kc=y("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=If),ce.init(t,e)}),Sc=y("$ZodULID",(t,e)=>{e.pattern??(e.pattern=zf),ce.init(t,e)}),bc=y("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Nf),ce.init(t,e)}),wc=y("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Af),ce.init(t,e)}),Om=y("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=Xf(e)),ce.init(t,e)}),Cm=y("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=Gf),ce.init(t,e)}),Im=y("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=Yf(e)),ce.init(t,e)}),zm=y("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Mf),ce.init(t,e)}),Ec=y("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=Uf),ce.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),Tc=y("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=Hf),ce.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),$c=y("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=qf),ce.init(t,e)}),Pc=y("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=Ff),ce.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Nm(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Rc=y("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=Bf),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Nm(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function PS(t){if(!lc.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Nm(r)}var Oc=y("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=lc),ce.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{PS(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Cc=y("$ZodE164",(t,e)=>{e.pattern??(e.pattern=Kf),ce.init(t,e)});function RS(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 Ic=y("$ZodJWT",(t,e)=>{ce.init(t,e),t._zod.check=r=>{RS(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var Bs=y("$ZodNumber",(t,e)=>{re.init(t,e),t._zod.pattern=t._zod.bag.pattern??tm,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}}),zc=y("$ZodNumber",(t,e)=>{cm.init(t,e),Bs.init(t,e)}),Nc=y("$ZodBoolean",(t,e)=>{re.init(t,e),t._zod.pattern=rm,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 Ac=y("$ZodNull",(t,e)=>{re.init(t,e),t._zod.pattern=nm,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 jc=y("$ZodUnknown",(t,e)=>{re.init(t,e),t._zod.parse=r=>r}),Mc=y("$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 km(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}var Lc=y("$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=>km(u,r,i))):km(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Fs(t,e,r){t.issues.length&&e.issues.push(...Ct(r,t.issues)),e.value[r]=t.value}function Sm(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 Vs=y("$ZodObject",(t,e)=>{re.init(t,e);let r=ho(()=>{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=Xa(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(m)}});ae(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 qs(["shape","payload","ctx"]),f=r.value,p=v=>{let k=Ur(v);return`shape[${k}]._zod.run({ value: input[${k}], issues: [] }, ctx)`};m.write("const input = payload.value;");let h=Object.create(null),g=0;for(let v of f.keys)h[v]=`key_${g++}`;m.write("const newResult = {}");for(let v of f.keys)if(f.optionalKeys.has(v)){let k=h[v];m.write(`const ${k} = ${p(v)};`);let E=Ur(v);m.write(`
47
+ if (${k}.issues.length) {
48
+ if (input[${E}] === undefined) {
49
+ if (${E} in input) {
50
+ newResult[${E}] = undefined;
51
51
  }
52
52
  } else {
53
53
  payload.issues = payload.issues.concat(
54
- ${S}.issues.map((iss) => ({
54
+ ${k}.issues.map((iss) => ({
55
55
  ...iss,
56
- path: iss.path ? [${w}, ...iss.path] : [${w}],
56
+ path: iss.path ? [${E}, ...iss.path] : [${E}],
57
57
  }))
58
58
  );
59
59
  }
60
- } else if (${S}.value === undefined) {
61
- if (${w} in input) newResult[${w}] = undefined;
60
+ } else if (${k}.value === undefined) {
61
+ if (${E} in input) newResult[${E}] = undefined;
62
62
  } else {
63
- newResult[${w}] = ${S}.value;
63
+ newResult[${E}] = ${k}.value;
64
64
  }
65
- `)}else{let S=h[v];m.write(`const ${S} = ${p(v)};`),m.write(`
66
- if (${S}.issues.length) payload.issues = payload.issues.concat(${S}.issues.map(iss => ({
65
+ `)}else{let k=h[v];m.write(`const ${k} = ${p(v)};`),m.write(`
66
+ if (${k}.issues.length) payload.issues = payload.issues.concat(${k}.issues.map(iss => ({
67
67
  ...iss,
68
68
  path: iss.path ? [${Ur(v)}, ...iss.path] : [${Ur(v)}]
69
- })));`),m.write(`newResult[${Ur(v)}] = ${S}.value`)}m.write("payload.value = newResult;"),m.write("return payload;");let y=m.compile();return(v,S)=>y(d,v,S)},o,s=bn,i=!Ns.jitless,c=i&&Wa.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(rt=>ce?vm(rt,d,w,f):Us(rt,d,w))):ce?vm(ae,d,w,f):Us(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(f)){if(g.has(S))continue;if(v==="never"){h.push(S);continue}let w=y.run({value:f[S],issues:[]},m);w instanceof Promise?p.push(w.then(R=>Us(R,d,S))):Us(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 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=>_t(s,n,nt())))}),e}var Fs=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=>_o(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)}}),Dc=x("$ZodDiscriminatedUnion",(t,e)=>{Fs.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=ho(()=>{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)}}),Zc=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 fc(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=fc(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=fc(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),Hr(t))return t;let n=fc(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 Uc=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=>_t(u,n,nt())),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 Hc=x("$ZodEnum",(t,e)=>{re.init(t,e);let r=mo(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ya.has(typeof n)).map(n=>typeof n=="string"?or(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}}),qc=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"?or(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 Fc=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 Ft;return r.value=o,r}}),Bc=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(`^(${_o(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)}),Vc=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(`^(${_o(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)}),Kc=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 Jc=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))}),Gc=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 Wc=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=>_t(i,n,nt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>_t(s,n,nt()))},input:r.value}),r.issues=[]),r)}});var Yc=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 Hr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Xc=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 Qc=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(ec(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 ${Ms(n.values[0])}`:`Invalid option: expected one of ${As(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":""}: ${As(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 ko=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 ko}var sr=Nm();function eu(t,e){return new t({type:"string",...j(e)})}function tu(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Bs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function ru(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function nu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function ou(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function su(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function iu(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function uu(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function lu(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function du(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function pu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function fu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function mu(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function hu(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function gu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function _u(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function yu(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function xu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function vu(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function Su(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 ku(t,e){return new t({type:"number",checks:[],...j(e)})}function bu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function wu(t,e){return new t({type:"boolean",...j(e)})}function Eu(t,e){return new t({type:"null",...j(e)})}function Tu(t){return new t({type:"unknown"})}function $u(t,e){return new t({type:"never",...j(e)})}function Vs(t,e){return new dc({check:"less_than",...j(e),value:t,inclusive:!1})}function bo(t,e){return new dc({check:"less_than",...j(e),value:t,inclusive:!0})}function Ks(t,e){return new pc({check:"greater_than",...j(e),value:t,inclusive:!1})}function wo(t,e){return new pc({check:"greater_than",...j(e),value:t,inclusive:!0})}function Js(t,e){return new sm({check:"multiple_of",...j(e),value:t})}function Gs(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 Ws(t,e){return new um({check:"length_equals",...j(e),length:t})}function Pu(t,e){return new lm({check:"string_format",format:"regex",...j(e),pattern:t})}function Ru(t){return new dm({check:"string_format",format:"lowercase",...j(t)})}function Ou(t){return new pm({check:"string_format",format:"uppercase",...j(t)})}function Cu(t,e){return new fm({check:"string_format",format:"includes",...j(e),includes:t})}function Iu(t,e){return new mm({check:"string_format",format:"starts_with",...j(e),prefix:t})}function zu(t,e){return new hm({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Br(t){return new gm({check:"overwrite",tx:t})}function Nu(t){return Br(e=>e.normalize(t))}function Au(){return Br(t=>t.trim())}function ju(){return Br(t=>t.toLowerCase())}function Mu(){return Br(t=>t.toUpperCase())}function Dm(t,e,r){return new t({type:"array",element:e,...j(r)})}function Lu(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Du(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var Ys=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??sr,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: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=f,{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=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 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=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,v=[...y(h)?h.allOf:[h],...y(g)?g.allOf:[g]];p.allOf=v;break}case"tuple":{let p=f;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=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=mo(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: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);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??(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 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>
69
+ })));`),m.write(`newResult[${Ur(v)}] = ${k}.value`)}m.write("payload.value = newResult;"),m.write("return payload;");let x=m.compile();return(v,k)=>x(d,v,k)},o,s=Sn,i=!Ms.jitless,c=i&&Wa.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 k=l.shape;for(let E of l.keys){let C=k[E],ye=C._zod.run({value:f[E],issues:[]},m),be=C._zod.optin==="optional"&&C._zod.optout==="optional";ye instanceof Promise?p.push(ye.then(st=>be?Sm(st,d,E,f):Fs(st,d,E))):be?Sm(ye,d,E,f):Fs(ye,d,E)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,x=u._zod,v=x.def.type;for(let k of Object.keys(f)){if(g.has(k))continue;if(v==="never"){h.push(k);continue}let E=x.run({value:f[k],issues:[]},m);E instanceof Promise?p.push(E.then(C=>Fs(C,d,k))):Fs(E,d,k)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:f,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function bm(t,e,r,n){for(let o of t)if(o.issues.length===0)return e.value=o.value,e;return e.issues.push({code:"invalid_union",input:e.value,inst:r,errors:t.map(o=>o.issues.map(s=>_t(s,n,rt())))}),e}var Ks=y("$ZodUnion",(t,e)=>{re.init(t,e),ae(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ae(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ae(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ae(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>_o(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=>bm(i,r,t,n)):bm(s,r,t,n)}}),Dc=y("$ZodDiscriminatedUnion",(t,e)=>{Ks.init(t,e);let r=t._zod.parse;ae(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=ho(()=>{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(!Sn(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)}}),Zc=y("$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])=>wm(r,c,u)):wm(r,s,i)}});function fc(t,e){if(t===e)return{valid:!0,data:t};if(t instanceof Date&&e instanceof Date&&+t==+e)return{valid:!0,data:t};if(bn(t)&&bn(e)){let r=Object.keys(e),n=Object.keys(t).filter(s=>r.indexOf(s)!==-1),o={...t,...e};for(let s of n){let i=fc(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=fc(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 wm(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=fc(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 Uc=y("$ZodRecord",(t,e)=>{re.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!bn(o))return r.issues.push({expected:"record",code:"invalid_type",input:o,inst:t}),r;let s=[];if(e.keyType._zod.values){let i=e.keyType._zod.values;r.value={};for(let c of i)if(typeof c=="string"||typeof c=="number"||typeof c=="symbol"){let u=e.valueType._zod.run({value:o[c],issues:[]},n);u instanceof Promise?s.push(u.then(l=>{l.issues.length&&r.issues.push(...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=>_t(u,n,rt())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...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 Hc=y("$ZodEnum",(t,e)=>{re.init(t,e);let r=mo(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ya.has(typeof n)).map(n=>typeof n=="string"?or(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}}),qc=y("$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"?or(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 Fc=y("$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}}),Bc=y("$ZodOptional",(t,e)=>{re.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${_o(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)}),Vc=y("$ZodNullable",(t,e)=>{re.init(t,e),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${_o(r.source)}|null)$`):void 0}),ae(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),Kc=y("$ZodDefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Em(s,e)):Em(o,e)}});function Em(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Jc=y("$ZodPrefault",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Gc=y("$ZodNonOptional",(t,e)=>{re.init(t,e),ae(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Tm(s,t)):Tm(o,t)}});function Tm(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 Wc=y("$ZodCatch",(t,e)=>{re.init(t,e),t._zod.optin="optional",ae(t._zod,"optout",()=>e.innerType._zod.optout),ae(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>_t(i,n,rt()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>_t(s,n,rt()))},input:r.value}),r.issues=[]),r)}});var Yc=y("$ZodPipe",(t,e)=>{re.init(t,e),ae(t._zod,"values",()=>e.in._zod.values),ae(t._zod,"optin",()=>e.in._zod.optin),ae(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>$m(s,e,n)):$m(o,e,n)}});function $m(t,e,r){return Hr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Xc=y("$ZodReadonly",(t,e)=>{re.init(t,e),ae(t._zod,"propValues",()=>e.innerType._zod.propValues),ae(t._zod,"values",()=>e.innerType._zod.values),ae(t._zod,"optin",()=>e.innerType._zod.optin),ae(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(Pm):Pm(o)}});function Pm(t){return t.value=Object.freeze(t.value),t}var Qc=y("$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=>Rm(s,r,n,t));Rm(o,r,n,t)}});function Rm(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(ec(o))}}var OS=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},CS=()=>{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 ${OS(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Zs(n.values[0])}`:`Invalid option: expected one of ${Ls(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":""}: ${Ls(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 Am(){return{localeError:CS()}}var So=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 jm(){return new So}var sr=jm();function eu(t,e){return new t({type:"string",...j(e)})}function tu(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Js(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function ru(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function nu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function ou(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function su(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function iu(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function uu(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function lu(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function du(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function pu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function fu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function mu(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function hu(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function gu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function _u(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function yu(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function xu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function vu(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 Mm(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function Lm(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function Dm(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function Zm(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function Su(t,e){return new t({type:"number",checks:[],...j(e)})}function bu(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function wu(t,e){return new t({type:"boolean",...j(e)})}function Eu(t,e){return new t({type:"null",...j(e)})}function Tu(t){return new t({type:"unknown"})}function $u(t,e){return new t({type:"never",...j(e)})}function Gs(t,e){return new dc({check:"less_than",...j(e),value:t,inclusive:!1})}function bo(t,e){return new dc({check:"less_than",...j(e),value:t,inclusive:!0})}function Ws(t,e){return new pc({check:"greater_than",...j(e),value:t,inclusive:!1})}function wo(t,e){return new pc({check:"greater_than",...j(e),value:t,inclusive:!0})}function Ys(t,e){return new am({check:"multiple_of",...j(e),value:t})}function Xs(t,e){return new um({check:"max_length",...j(e),maximum:t})}function wn(t,e){return new lm({check:"min_length",...j(e),minimum:t})}function Qs(t,e){return new dm({check:"length_equals",...j(e),length:t})}function Pu(t,e){return new pm({check:"string_format",format:"regex",...j(e),pattern:t})}function Ru(t){return new fm({check:"string_format",format:"lowercase",...j(t)})}function Ou(t){return new mm({check:"string_format",format:"uppercase",...j(t)})}function Cu(t,e){return new hm({check:"string_format",format:"includes",...j(e),includes:t})}function Iu(t,e){return new gm({check:"string_format",format:"starts_with",...j(e),prefix:t})}function zu(t,e){return new _m({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Br(t){return new ym({check:"overwrite",tx:t})}function Nu(t){return Br(e=>e.normalize(t))}function Au(){return Br(t=>t.trim())}function ju(){return Br(t=>t.toLowerCase())}function Mu(){return Br(t=>t.toUpperCase())}function Um(t,e,r){return new t({type:"array",element:e,...j(r)})}function Lu(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Du(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var ei=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??sr,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:x,patterns:v,contentEncoding:k}=e._zod.bag;if(typeof h=="number"&&(p.minLength=h),typeof g=="number"&&(p.maxLength=g),x&&(p.format=s[x]??x,p.format===""&&delete p.format),k&&(p.contentEncoding=k),v&&v.size>0){let E=[...v];E.length===1?p.pattern=E[0].source:E.length>1&&(a.schema.allOf=[...E.map(C=>({...this.target==="draft-7"?{type:"string"}:{},pattern:C.source}))])}break}case"number":{let p=f,{minimum:h,maximum:g,format:x,multipleOf:v,exclusiveMaximum:k,exclusiveMinimum:E}=e._zod.bag;typeof x=="string"&&x.includes("int")?p.type="integer":p.type="number",typeof E=="number"&&(p.exclusiveMinimum=E),typeof h=="number"&&(p.minimum=h,typeof E=="number"&&(E>=h?delete p.minimum:delete p.exclusiveMinimum)),typeof k=="number"&&(p.exclusiveMaximum=k),typeof g=="number"&&(p.maximum=g,typeof k=="number"&&(k<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof v=="number"&&(p.multipleOf=v);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 v in h)p.properties[v]=this.process(h[v],{...d,path:[...d.path,"properties",v]});let g=new Set(Object.keys(h)),x=new Set([...g].filter(v=>{let k=o.shape[v]._zod;return this.io==="input"?k.optin===void 0:k.optout===void 0}));x.size>0&&(p.required=Array.from(x)),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]}),x=k=>"allOf"in k&&Object.keys(k).length===1,v=[...x(h)?h.allOf:[h],...x(g)?g.allOf:[g]];p.allOf=v;break}case"tuple":{let p=f;p.type="array";let h=o.items.map((v,k)=>this.process(v,{...d,path:[...d.path,"prefixItems",k]}));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:x}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof x=="number"&&(p.maxItems=x);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=mo(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:x,mime:v}=e._zod.bag;g!==void 0&&(h.minLength=g),x!==void 0&&(h.maxLength=x),v?v.length===1?(h.contentMediaType=v[0],Object.assign(p,h)):p.anyOf=v.map(k=>({...h,contentMediaType:k})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);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??(v=>v);if(h)return{ref:g(h)};let x=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=x,{defId:x,ref:`${g("__shared")}#/${d}/${x}`}}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>
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 Zu(t,e){if(t instanceof ko){let n=new Ys(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 Ys(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)=>oc(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>qr(t,r,n),t.parseAsync=async(r,n)=>ic(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)=>ot(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var lb=x("ZodMiniObject",(t,e)=>{qs.init(t,e),ub.init(t,e),J.defineLazy(t,"shape",()=>e.shape)});function Uu(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new lb(r)}function ct(t){return!!t._zod}function Kr(t){let e=Object.values(t);if(e.length===0)return Uu({});let r=e.every(ct),n=e.every(o=>!ct(o));if(r)return Uu(t);if(n)return Fa(t);throw new Error("Mixed Zod versions detected in object shape.")}function ir(t,e){return ct(t)?qr(t,e):t.safeParse(e)}async function Xs(t,e){return ct(t)?await Fr(t,e):await t.safeParseAsync(e)}function ar(t){if(!t)return;let e;if(ct(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 Kr(t)}}if(ct(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 Qs(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(ct(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function ei(t){if(ct(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 Eo={};Ve(Eo,{ZodISODate:()=>Fm,ZodISODateTime:()=>qm,ZodISODuration:()=>Vm,ZodISOTime:()=>Bm,date:()=>qu,datetime:()=>Hu,duration:()=>Bu,time:()=>Fu});var qm=x("ZodISODateTime",(t,e)=>{Pm.init(t,e),he.init(t,e)});function Hu(t){return Am(qm,t)}var Fm=x("ZodISODate",(t,e)=>{Rm.init(t,e),he.init(t,e)});function qu(t){return jm(Fm,t)}var Bm=x("ZodISOTime",(t,e)=>{Om.init(t,e),he.init(t,e)});function Fu(t){return Mm(Bm,t)}var Vm=x("ZodISODuration",(t,e)=>{Cm.init(t,e),he.init(t,e)});function Bu(t){return Lm(Vm,t)}var Km=(t,e)=>{Ls.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>rc(t,r)},flatten:{value:r=>tc(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),To=x("ZodError",Km,{Parent:Error});var Jm=nc(To),Gm=sc(To),Wm=ac(To),Ym=cc(To);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)=>ot(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(Br(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=>ri(t,r),t.transform=r=>Ku(t,sh(r)),t.default=r=>Yb(t,r),t.prefault=r=>Qb(t,r),t.catch=r=>rw(t,r),t.pipe=r=>Ku(t,r),t.readonly=()=>sw(t),t.describe=r=>{let n=t.clone();return sr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return sr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return sr.get(t);let n=t.clone();return sr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),th=x("_ZodString",(t,e)=>{So.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(Pu(...n)),t.includes=(...n)=>t.check(Cu(...n)),t.startsWith=(...n)=>t.check(Iu(...n)),t.endsWith=(...n)=>t.check(zu(...n)),t.min=(...n)=>t.check(En(...n)),t.max=(...n)=>t.check(Gs(...n)),t.length=(...n)=>t.check(Ws(...n)),t.nonempty=(...n)=>t.check(En(1,...n)),t.lowercase=n=>t.check(Ru(n)),t.uppercase=n=>t.check(Ou(n)),t.trim=()=>t.check(Au()),t.normalize=(...n)=>t.check(Nu(...n)),t.toLowerCase=()=>t.check(ju()),t.toUpperCase=()=>t.check(Mu())}),xb=x("ZodString",(t,e)=>{So.init(t,e),th.init(t,e),t.email=r=>t.check(tu(vb,r)),t.url=r=>t.check(iu(Sb,r)),t.jwt=r=>t.check(Su(jb,r)),t.emoji=r=>t.check(au(kb,r)),t.guid=r=>t.check(Bs(Xm,r)),t.uuid=r=>t.check(ru(ti,r)),t.uuidv4=r=>t.check(nu(ti,r)),t.uuidv6=r=>t.check(ou(ti,r)),t.uuidv7=r=>t.check(su(ti,r)),t.nanoid=r=>t.check(cu(bb,r)),t.guid=r=>t.check(Bs(Xm,r)),t.cuid=r=>t.check(uu(wb,r)),t.cuid2=r=>t.check(lu(Eb,r)),t.ulid=r=>t.check(du(Tb,r)),t.base64=r=>t.check(yu(zb,r)),t.base64url=r=>t.check(xu(Nb,r)),t.xid=r=>t.check(pu($b,r)),t.ksuid=r=>t.check(fu(Pb,r)),t.ipv4=r=>t.check(mu(Rb,r)),t.ipv6=r=>t.check(hu(Ob,r)),t.cidrv4=r=>t.check(gu(Cb,r)),t.cidrv6=r=>t.check(_u(Ib,r)),t.e164=r=>t.check(vu(Ab,r)),t.datetime=r=>t.check(Hu(r)),t.date=r=>t.check(qu(r)),t.time=r=>t.check(Fu(r)),t.duration=r=>t.check(Bu(r))});function _(t){return eu(xb,t)}var he=x("ZodStringFormat",(t,e)=>{le.init(t,e),th.init(t,e)}),vb=x("ZodEmail",(t,e)=>{gc.init(t,e),he.init(t,e)});var Xm=x("ZodGUID",(t,e)=>{mc.init(t,e),he.init(t,e)});var ti=x("ZodUUID",(t,e)=>{hc.init(t,e),he.init(t,e)});var Sb=x("ZodURL",(t,e)=>{_c.init(t,e),he.init(t,e)});var kb=x("ZodEmoji",(t,e)=>{yc.init(t,e),he.init(t,e)});var bb=x("ZodNanoID",(t,e)=>{xc.init(t,e),he.init(t,e)});var wb=x("ZodCUID",(t,e)=>{vc.init(t,e),he.init(t,e)});var Eb=x("ZodCUID2",(t,e)=>{Sc.init(t,e),he.init(t,e)});var Tb=x("ZodULID",(t,e)=>{kc.init(t,e),he.init(t,e)});var $b=x("ZodXID",(t,e)=>{bc.init(t,e),he.init(t,e)});var Pb=x("ZodKSUID",(t,e)=>{wc.init(t,e),he.init(t,e)});var Rb=x("ZodIPv4",(t,e)=>{Ec.init(t,e),he.init(t,e)});var Ob=x("ZodIPv6",(t,e)=>{Tc.init(t,e),he.init(t,e)});var Cb=x("ZodCIDRv4",(t,e)=>{$c.init(t,e),he.init(t,e)});var Ib=x("ZodCIDRv6",(t,e)=>{Pc.init(t,e),he.init(t,e)});var zb=x("ZodBase64",(t,e)=>{Rc.init(t,e),he.init(t,e)});var Nb=x("ZodBase64URL",(t,e)=>{Oc.init(t,e),he.init(t,e)});var Ab=x("ZodE164",(t,e)=>{Cc.init(t,e),he.init(t,e)});var jb=x("ZodJWT",(t,e)=>{Ic.init(t,e),he.init(t,e)});var rh=x("ZodNumber",(t,e)=>{Hs.init(t,e),ve.init(t,e),t.gt=(n,o)=>t.check(Ks(n,o)),t.gte=(n,o)=>t.check(wo(n,o)),t.min=(n,o)=>t.check(wo(n,o)),t.lt=(n,o)=>t.check(Vs(n,o)),t.lte=(n,o)=>t.check(bo(n,o)),t.max=(n,o)=>t.check(bo(n,o)),t.int=n=>t.check(Qm(n)),t.safe=n=>t.check(Qm(n)),t.positive=n=>t.check(Ks(0,n)),t.nonnegative=n=>t.check(wo(0,n)),t.negative=n=>t.check(Vs(0,n)),t.nonpositive=n=>t.check(bo(0,n)),t.multipleOf=(n,o)=>t.check(Js(n,o)),t.step=(n,o)=>t.check(Js(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 ku(rh,t)}var Mb=x("ZodNumberFormat",(t,e)=>{zc.init(t,e),rh.init(t,e)});function Qm(t){return bu(Mb,t)}var Lb=x("ZodBoolean",(t,e)=>{Nc.init(t,e),ve.init(t,e)});function Te(t){return wu(Lb,t)}var Db=x("ZodNull",(t,e)=>{Ac.init(t,e),ve.init(t,e)});function Ju(t){return Eu(Db,t)}var Zb=x("ZodUnknown",(t,e)=>{jc.init(t,e),ve.init(t,e)});function ge(){return Tu(Zb)}var Ub=x("ZodNever",(t,e)=>{Mc.init(t,e),ve.init(t,e)});function Hb(t){return $u(Ub,t)}var qb=x("ZodArray",(t,e)=>{Lc.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(Gs(r,n)),t.length=(r,n)=>t.check(Ws(r,n)),t.unwrap=()=>t.element});function G(t,e){return Dm(qb,t,e)}var nh=x("ZodObject",(t,e)=>{qs.init(t,e),ve.init(t,e),J.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>We(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall: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)=>{Fs.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),Dc.init(t,e)});function Gu(t,e,r){return new Fb({type:"union",options:e,discriminator:t,...J.normalizeParams(r)})}var Bb=x("ZodIntersection",(t,e)=>{Zc.init(t,e),ve.init(t,e)});function ri(t,e){return new Bb({type:"intersection",left:t,right:e})}var Vb=x("ZodRecord",(t,e)=>{Uc.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 Vu=x("ZodEnum",(t,e)=>{Hc.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 Vu({...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 Vu({...e,checks:[],...J.normalizeParams(o),entries:s})}});function We(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Vu({type:"enum",entries:r,...J.normalizeParams(e)})}var Kb=x("ZodLiteral",(t,e)=>{qc.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)=>{Fc.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)=>{Bc.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)=>{Vc.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)=>{Kc.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)=>{Jc.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)=>{Gc.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)=>{Wc.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)=>{Yc.init(t,e),ve.init(t,e),t.in=e.in,t.out=e.out});function Ku(t,e){return new nw({type:"pipe",in:t,out:e})}var ow=x("ZodReadonly",(t,e)=>{Xc.init(t,e),ve.init(t,e)});function sw(t){return new ow({type:"readonly",innerType:t})}var ch=x("ZodCustom",(t,e)=>{Qc.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 Lu(ch,t??(()=>!0),e)}function aw(t,e={}){return Du(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 Wu(t,e){return Ku(sh(t),e)}nt(zm());var Xu="2025-11-25";var lh=[Xu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],cr="io.modelcontextprotocol/related-task",oi="2.0",Oe=uh(t=>t!==null&&(typeof t=="object"||typeof t=="function")),dh=de([_(),te().int()]),ph=_(),_N=Ue({ttl:de([te(),Ju()]).optional(),pollInterval:te().optional()}),uw=P({ttl:te().optional()}),lw=P({taskId:_()}),Qu=Ue({progressToken:dh.optional(),[cr]:lw.optional()}),st=P({_meta:Qu.optional()}),$o=st.extend({task:uw.optional()}),fh=t=>$o.safeParse(t).success,Ce=P({method:_(),params:st.loose().optional()}),ut=P({_meta:Qu.optional()}),lt=P({method:_(),params:ut.loose().optional()}),Ie=Ue({_meta:Qu.optional()}),si=de([_(),te().int()]),mh=P({jsonrpc:I(oi),id:si,...Ce.shape}).strict(),el=t=>mh.safeParse(t).success,hh=P({jsonrpc:I(oi),...lt.shape}).strict(),gh=t=>hh.safeParse(t).success,tl=P({jsonrpc:I(oi),id:si,result:Ie}).strict(),Po=t=>tl.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 rl=P({jsonrpc:I(oi),id:si.optional(),error:P({code:te().int(),message:_(),data:ge().optional()})}).strict();var _h=t=>rl.safeParse(t).success;var yh=de([mh,hh,tl,rl]),yN=de([tl,rl]),ii=Ie.strict(),dw=ut.extend({requestId:si.optional(),reason:_().optional()}),ai=lt.extend({method:I("notifications/cancelled"),params:dw}),pw=P({src:_(),mimeType:_().optional(),sizes:G(_()).optional(),theme:We(["light","dark"]).optional()}),Ro=P({icons:G(pw).optional()}),$n=P({name:_(),title:_().optional()}),xh=$n.extend({...$n.shape,...Ro.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),fw=ri(P({applyDefaults:Te().optional()}),_e(_(),ge())),mw=Wu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ri(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=st.extend({protocolVersion:_(),capabilities:_w,clientInfo:xh}),nl=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()}),ol=lt.extend({method:I("notifications/initialized"),params:ut.optional()});var ci=Ce.extend({method:I("ping"),params:st.optional()}),Sw=P({progress:te(),total:xe(te()),message:xe(_())}),kw=P({...ut.shape,...Sw.shape,progressToken:dh}),ui=lt.extend({method:I("notifications/progress"),params:kw}),bw=st.extend({cursor:ph.optional()}),Oo=Ce.extend({params:bw.optional()}),Co=Ie.extend({nextCursor:ph.optional()}),ww=We(["working","input_required","completed","failed","cancelled"]),Io=P({taskId:_(),status:ww,ttl:de([te(),Ju()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:xe(te()),statusMessage:xe(_())}),Pn=Ie.extend({task:Io}),Ew=ut.merge(Io),zo=lt.extend({method:I("notifications/tasks/status"),params:Ew}),li=Ce.extend({method:I("tasks/get"),params:st.extend({taskId:_()})}),di=Ie.merge(Io),pi=Ce.extend({method:I("tasks/result"),params:st.extend({taskId:_()})}),xN=Ie.loose(),fi=Oo.extend({method:I("tasks/list")}),mi=Co.extend({tasks:G(Io)}),hi=Ce.extend({method:I("tasks/cancel"),params:st.extend({taskId:_()})}),vh=Ie.merge(Io),Sh=P({uri:_(),mimeType:xe(_()),_meta:_e(_(),ge()).optional()}),kh=Sh.extend({text:_()}),sl=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),bh=Sh.extend({blob:sl}),No=We(["user","assistant"]),Rn=P({audience:G(No).optional(),priority:te().min(0).max(1).optional(),lastModified:Eo.datetime({offset:!0}).optional()}),wh=P({...$n.shape,...Ro.shape,uri:_(),description:xe(_()),mimeType:xe(_()),annotations:Rn.optional(),_meta:xe(Ue({}))}),Tw=P({...$n.shape,...Ro.shape,uriTemplate:_(),description:xe(_()),mimeType:xe(_()),annotations:Rn.optional(),_meta:xe(Ue({}))}),On=Oo.extend({method:I("resources/list")}),$w=Co.extend({resources:G(wh)}),Cn=Oo.extend({method:I("resources/templates/list")}),Pw=Co.extend({resourceTemplates:G(Tw)}),il=st.extend({uri:_()}),Rw=il,gi=Ce.extend({method:I("resources/read"),params:Rw}),Ow=Ie.extend({contents:G(de([kh,bh]))}),Cw=lt.extend({method:I("notifications/resources/list_changed"),params:ut.optional()}),Iw=il,zw=Ce.extend({method:I("resources/subscribe"),params:Iw}),Nw=il,Aw=Ce.extend({method:I("resources/unsubscribe"),params:Nw}),jw=ut.extend({uri:_()}),Mw=lt.extend({method:I("notifications/resources/updated"),params:jw}),Lw=P({name:_(),description:xe(_()),required:xe(Te())}),Dw=P({...$n.shape,...Ro.shape,description:xe(_()),arguments:xe(G(Lw)),_meta:xe(Ue({}))}),In=Oo.extend({method:I("prompts/list")}),Zw=Co.extend({prompts:G(Dw)}),Uw=st.extend({name:_(),arguments:_e(_(),_()).optional()}),_i=Ce.extend({method:I("prompts/get"),params:Uw}),al=P({type:I("text"),text:_(),annotations:Rn.optional(),_meta:_e(_(),ge()).optional()}),cl=P({type:I("image"),data:sl,mimeType:_(),annotations:Rn.optional(),_meta:_e(_(),ge()).optional()}),ul=P({type:I("audio"),data:sl,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")}),ll=de([al,cl,ul,Fw,qw]),Bw=P({role:No,content:ll}),Vw=Ie.extend({description:_().optional(),messages:G(Bw)}),Kw=lt.extend({method:I("notifications/prompts/list_changed"),params:ut.optional()}),Jw=P({title:_().optional(),readOnlyHint:Te().optional(),destructiveHint:Te().optional(),idempotentHint:Te().optional(),openWorldHint:Te().optional()}),Gw=P({taskSupport:We(["required","optional","forbidden"]).optional()}),Eh=P({...$n.shape,...Ro.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()}),yi=Oo.extend({method:I("tools/list")}),Ww=Co.extend({tools:G(Eh)}),xi=Ie.extend({content:G(ll).default([]),structuredContent:_e(_(),ge()).optional(),isError:Te().optional()}),vN=xi.or(Ie.extend({toolResult:ge()})),Yw=$o.extend({name:_(),arguments:_e(_(),ge()).optional()}),zn=Ce.extend({method:I("tools/call"),params:Yw}),Xw=lt.extend({method:I("notifications/tools/list_changed"),params:ut.optional()}),SN=P({autoRefresh:Te().default(!0),debounceMs:te().int().nonnegative().default(300)}),Ao=We(["debug","info","notice","warning","error","critical","alert","emergency"]),Qw=st.extend({level:Ao}),dl=Ce.extend({method:I("logging/setLevel"),params:Qw}),eE=ut.extend({level:Ao,logger:_().optional(),data:ge()}),tE=lt.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:We(["auto","required","none"]).optional()}),sE=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:G(ll).default([]),structuredContent:P({}).loose().optional(),isError:Te().optional(),_meta:_e(_(),ge()).optional()}),iE=Gu("type",[al,cl,ul]),ni=Gu("type",[al,cl,ul,Hw,sE]),aE=P({role:No,content:de([ni,G(ni)]),_meta:_e(_(),ge()).optional()}),cE=$o.extend({messages:G(aE),modelPreferences:nE.optional(),systemPrompt:_().optional(),includeContext:We(["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}),pl=Ie.extend({model:_(),stopReason:xe(We(["endTurn","stopSequence","maxTokens"]).or(_())),role:No,content:iE}),fl=Ie.extend({model:_(),stopReason:xe(We(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:No,content:de([ni,G(ni)])}),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:We(["email","uri","date","date-time"]).optional(),default:_().optional()}),pE=P({type:We(["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=$o.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:_e(_(),SE),required:G(_()).optional()})}),bE=$o.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),wE=de([kE,bE]),EE=Ce.extend({method:I("elicitation/create"),params:wE}),TE=ut.extend({elicitationId:_()}),$E=lt.extend({method:I("notifications/elicitation/complete"),params:TE}),vi=Ie.extend({action:We(["accept","decline","cancel"]),content:Wu(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=st.extend({ref:de([RE,PE]),argument:P({name:_(),value:_()}),context:P({arguments:_e(_(),_()).optional()}).optional()}),Si=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:st.optional()}),ml=Ie.extend({roots:G(IE)}),NE=lt.extend({method:I("notifications/roots/list_changed"),params:ut.optional()}),kN=de([ci,nl,Si,dl,_i,In,On,Cn,gi,zw,Aw,zn,yi,li,pi,fi,hi]),bN=de([ai,ui,ol,NE,zo]),wN=de([ii,pl,fl,vi,ml,di,mi,Pn]),EN=de([ci,uE,EE,zE,li,pi,fi,hi]),TN=de([ai,ui,tE,Mw,Cw,Xw,Kw,zo,$E]),$N=de([ii,vw,CE,Vw,Zw,$w,Pw,Ow,xi,Ww,di,mi,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 Yu(o.elicitations,r)}return new t(e,r,n)}},Yu=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 ur(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 ki=(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"?ki(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 bi(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,yt={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(_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 wi(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":xt(r,"email",n.message,e);break;case"format:idn-email":xt(r,"idn-email",n.message,e);break;case"pattern:zod":He(r,yt.email,n.message,e);break}break;case"url":xt(r,"uri",n.message,e);break;case"uuid":xt(r,"uuid",n.message,e);break;case"regex":He(r,n.regex,n.message,e);break;case"cuid":He(r,yt.cuid,n.message,e);break;case"cuid2":He(r,yt.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":xt(r,"date-time",n.message,e);break;case"date":xt(r,"date",n.message,e);break;case"time":xt(r,"time",n.message,e);break;case"duration":xt(r,"duration",n.message,e);break;case"length":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"&&xt(r,"ipv4",n.message,e),n.version!=="v4"&&xt(r,"ipv6",n.message,e);break}case"base64url":He(r,yt.base64url,n.message,e);break;case"jwt":He(r,yt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&He(r,yt.ipv4Cidr,n.message,e),n.version!=="v4"&&He(r,yt.ipv6Cidr,n.message,e);break}case"emoji":He(r,yt.emoji(),n.message,e);break;case"ulid":{He(r,yt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{xt(r,"binary",n.message,e);break}case"contentEncoding:base64":{W(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{He(r,yt.base64,n.message,e);break}}break}case"nanoid":He(r,yt.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 xt(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):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
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 Zu(t,e){if(t instanceof So){let n=new ei(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 ei(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 pb=y("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");re.init(t,e),t.def=e,t.parse=(r,n)=>oc(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>qr(t,r,n),t.parseAsync=async(r,n)=>ic(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 fb=y("ZodMiniObject",(t,e)=>{Vs.init(t,e),pb.init(t,e),J.defineLazy(t,"shape",()=>e.shape)});function Uu(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new fb(r)}function ct(t){return!!t._zod}function Kr(t){let e=Object.values(t);if(e.length===0)return Uu({});let r=e.every(ct),n=e.every(o=>!ct(o));if(r)return Uu(t);if(n)return Fa(t);throw new Error("Mixed Zod versions detected in object shape.")}function ir(t,e){return ct(t)?qr(t,e):t.safeParse(e)}async function ti(t,e){return ct(t)?await Fr(t,e):await t.safeParseAsync(e)}function ar(t){if(!t)return;let e;if(ct(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function En(t){if(t){if(typeof t=="object"){let e=t,r=t;if(!e._def&&!r._zod){let n=Object.values(t);if(n.length>0&&n.every(o=>typeof o=="object"&&o!==null&&(o._def!==void 0||o._zod!==void 0||typeof o.parse=="function")))return Kr(t)}}if(ct(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 ri(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 qm(t){return t.description}function Fm(t){if(ct(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function ni(t){if(ct(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 Eo={};Ve(Eo,{ZodISODate:()=>Vm,ZodISODateTime:()=>Bm,ZodISODuration:()=>Jm,ZodISOTime:()=>Km,date:()=>qu,datetime:()=>Hu,duration:()=>Bu,time:()=>Fu});var Bm=y("ZodISODateTime",(t,e)=>{Om.init(t,e),pe.init(t,e)});function Hu(t){return Mm(Bm,t)}var Vm=y("ZodISODate",(t,e)=>{Cm.init(t,e),pe.init(t,e)});function qu(t){return Lm(Vm,t)}var Km=y("ZodISOTime",(t,e)=>{Im.init(t,e),pe.init(t,e)});function Fu(t){return Dm(Km,t)}var Jm=y("ZodISODuration",(t,e)=>{zm.init(t,e),pe.init(t,e)});function Bu(t){return Zm(Jm,t)}var Gm=(t,e)=>{Us.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>rc(t,r)},flatten:{value:r=>tc(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},lN=y("ZodError",Gm),To=y("ZodError",Gm,{Parent:Error});var Wm=nc(To),Ym=sc(To),Xm=ac(To),Qm=cc(To);var _e=y("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)=>Wm(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Xm(t,r,n),t.parseAsync=async(r,n)=>Ym(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Qm(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(lw(r,n)),t.superRefine=r=>t.check(dw(r)),t.overwrite=r=>t.check(Br(r)),t.optional=()=>ge(t),t.nullable=()=>rh(t),t.nullish=()=>ge(rh(t)),t.nonoptional=r=>nw(t,r),t.array=()=>G(t),t.or=r=>ue([t,r]),t.and=r=>si(t,r),t.transform=r=>Ku(t,ah(r)),t.default=r=>ew(t,r),t.prefault=r=>rw(t,r),t.catch=r=>sw(t,r),t.pipe=r=>Ku(t,r),t.readonly=()=>cw(t),t.describe=r=>{let n=t.clone();return sr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return sr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return sr.get(t);let n=t.clone();return sr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),nh=y("_ZodString",(t,e)=>{ko.init(t,e),_e.init(t,e);let r=t._zod.bag;t.format=r.format??null,t.minLength=r.minimum??null,t.maxLength=r.maximum??null,t.regex=(...n)=>t.check(Pu(...n)),t.includes=(...n)=>t.check(Cu(...n)),t.startsWith=(...n)=>t.check(Iu(...n)),t.endsWith=(...n)=>t.check(zu(...n)),t.min=(...n)=>t.check(wn(...n)),t.max=(...n)=>t.check(Xs(...n)),t.length=(...n)=>t.check(Qs(...n)),t.nonempty=(...n)=>t.check(wn(1,...n)),t.lowercase=n=>t.check(Ru(n)),t.uppercase=n=>t.check(Ou(n)),t.trim=()=>t.check(Au()),t.normalize=(...n)=>t.check(Nu(...n)),t.toLowerCase=()=>t.check(ju()),t.toUpperCase=()=>t.check(Mu())}),Sb=y("ZodString",(t,e)=>{ko.init(t,e),nh.init(t,e),t.email=r=>t.check(tu(bb,r)),t.url=r=>t.check(iu(wb,r)),t.jwt=r=>t.check(ku(Db,r)),t.emoji=r=>t.check(au(Eb,r)),t.guid=r=>t.check(Js(eh,r)),t.uuid=r=>t.check(ru(oi,r)),t.uuidv4=r=>t.check(nu(oi,r)),t.uuidv6=r=>t.check(ou(oi,r)),t.uuidv7=r=>t.check(su(oi,r)),t.nanoid=r=>t.check(cu(Tb,r)),t.guid=r=>t.check(Js(eh,r)),t.cuid=r=>t.check(uu($b,r)),t.cuid2=r=>t.check(lu(Pb,r)),t.ulid=r=>t.check(du(Rb,r)),t.base64=r=>t.check(yu(jb,r)),t.base64url=r=>t.check(xu(Mb,r)),t.xid=r=>t.check(pu(Ob,r)),t.ksuid=r=>t.check(fu(Cb,r)),t.ipv4=r=>t.check(mu(Ib,r)),t.ipv6=r=>t.check(hu(zb,r)),t.cidrv4=r=>t.check(gu(Nb,r)),t.cidrv6=r=>t.check(_u(Ab,r)),t.e164=r=>t.check(vu(Lb,r)),t.datetime=r=>t.check(Hu(r)),t.date=r=>t.check(qu(r)),t.time=r=>t.check(Fu(r)),t.duration=r=>t.check(Bu(r))});function _(t){return eu(Sb,t)}var pe=y("ZodStringFormat",(t,e)=>{ce.init(t,e),nh.init(t,e)}),bb=y("ZodEmail",(t,e)=>{gc.init(t,e),pe.init(t,e)});var eh=y("ZodGUID",(t,e)=>{mc.init(t,e),pe.init(t,e)});var oi=y("ZodUUID",(t,e)=>{hc.init(t,e),pe.init(t,e)});var wb=y("ZodURL",(t,e)=>{_c.init(t,e),pe.init(t,e)});var Eb=y("ZodEmoji",(t,e)=>{yc.init(t,e),pe.init(t,e)});var Tb=y("ZodNanoID",(t,e)=>{xc.init(t,e),pe.init(t,e)});var $b=y("ZodCUID",(t,e)=>{vc.init(t,e),pe.init(t,e)});var Pb=y("ZodCUID2",(t,e)=>{kc.init(t,e),pe.init(t,e)});var Rb=y("ZodULID",(t,e)=>{Sc.init(t,e),pe.init(t,e)});var Ob=y("ZodXID",(t,e)=>{bc.init(t,e),pe.init(t,e)});var Cb=y("ZodKSUID",(t,e)=>{wc.init(t,e),pe.init(t,e)});var Ib=y("ZodIPv4",(t,e)=>{Ec.init(t,e),pe.init(t,e)});var zb=y("ZodIPv6",(t,e)=>{Tc.init(t,e),pe.init(t,e)});var Nb=y("ZodCIDRv4",(t,e)=>{$c.init(t,e),pe.init(t,e)});var Ab=y("ZodCIDRv6",(t,e)=>{Pc.init(t,e),pe.init(t,e)});var jb=y("ZodBase64",(t,e)=>{Rc.init(t,e),pe.init(t,e)});var Mb=y("ZodBase64URL",(t,e)=>{Oc.init(t,e),pe.init(t,e)});var Lb=y("ZodE164",(t,e)=>{Cc.init(t,e),pe.init(t,e)});var Db=y("ZodJWT",(t,e)=>{Ic.init(t,e),pe.init(t,e)});var oh=y("ZodNumber",(t,e)=>{Bs.init(t,e),_e.init(t,e),t.gt=(n,o)=>t.check(Ws(n,o)),t.gte=(n,o)=>t.check(wo(n,o)),t.min=(n,o)=>t.check(wo(n,o)),t.lt=(n,o)=>t.check(Gs(n,o)),t.lte=(n,o)=>t.check(bo(n,o)),t.max=(n,o)=>t.check(bo(n,o)),t.int=n=>t.check(th(n)),t.safe=n=>t.check(th(n)),t.positive=n=>t.check(Ws(0,n)),t.nonnegative=n=>t.check(wo(0,n)),t.negative=n=>t.check(Gs(0,n)),t.nonpositive=n=>t.check(bo(0,n)),t.multipleOf=(n,o)=>t.check(Ys(n,o)),t.step=(n,o)=>t.check(Ys(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 Su(oh,t)}var Zb=y("ZodNumberFormat",(t,e)=>{zc.init(t,e),oh.init(t,e)});function th(t){return bu(Zb,t)}var Ub=y("ZodBoolean",(t,e)=>{Nc.init(t,e),_e.init(t,e)});function Te(t){return wu(Ub,t)}var Hb=y("ZodNull",(t,e)=>{Ac.init(t,e),_e.init(t,e)});function Ju(t){return Eu(Hb,t)}var qb=y("ZodUnknown",(t,e)=>{jc.init(t,e),_e.init(t,e)});function fe(){return Tu(qb)}var Fb=y("ZodNever",(t,e)=>{Mc.init(t,e),_e.init(t,e)});function Bb(t){return $u(Fb,t)}var Vb=y("ZodArray",(t,e)=>{Lc.init(t,e),_e.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(wn(r,n)),t.nonempty=r=>t.check(wn(1,r)),t.max=(r,n)=>t.check(Xs(r,n)),t.length=(r,n)=>t.check(Qs(r,n)),t.unwrap=()=>t.element});function G(t,e){return Um(Vb,t,e)}var sh=y("ZodObject",(t,e)=>{Vs.init(t,e),_e.init(t,e),J.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>We(Object.keys(t._zod.def.shape)),t.catchall=r=>t.clone({...t._zod.def,catchall:r}),t.passthrough=()=>t.clone({...t._zod.def,catchall:fe()}),t.loose=()=>t.clone({...t._zod.def,catchall:fe()}),t.strict=()=>t.clone({...t._zod.def,catchall:Bb()}),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(ch,t,r[0]),t.required=(...r)=>J.required(uh,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 sh(r)}function Ue(t,e){return new sh({type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},catchall:fe(),...J.normalizeParams(e)})}var ih=y("ZodUnion",(t,e)=>{Ks.init(t,e),_e.init(t,e),t.options=e.options});function ue(t,e){return new ih({type:"union",options:t,...J.normalizeParams(e)})}var Kb=y("ZodDiscriminatedUnion",(t,e)=>{ih.init(t,e),Dc.init(t,e)});function Gu(t,e,r){return new Kb({type:"union",options:e,discriminator:t,...J.normalizeParams(r)})}var Jb=y("ZodIntersection",(t,e)=>{Zc.init(t,e),_e.init(t,e)});function si(t,e){return new Jb({type:"intersection",left:t,right:e})}var Gb=y("ZodRecord",(t,e)=>{Uc.init(t,e),_e.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function me(t,e,r){return new Gb({type:"record",keyType:t,valueType:e,...J.normalizeParams(r)})}var Vu=y("ZodEnum",(t,e)=>{Hc.init(t,e),_e.init(t,e),t.enum=e.entries,t.options=Object.values(e.entries);let r=new Set(Object.keys(e.entries));t.extract=(n,o)=>{let s={};for(let i of n)if(r.has(i))s[i]=e.entries[i];else throw new Error(`Key ${i} not found in enum`);return new Vu({...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 Vu({...e,checks:[],...J.normalizeParams(o),entries:s})}});function We(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Vu({type:"enum",entries:r,...J.normalizeParams(e)})}var Wb=y("ZodLiteral",(t,e)=>{qc.init(t,e),_e.init(t,e),t.values=new Set(e.values),Object.defineProperty(t,"value",{get(){if(e.values.length>1)throw new Error("This schema contains multiple valid literal values. Use `.values` instead.");return e.values[0]}})});function I(t,e){return new Wb({type:"literal",values:Array.isArray(t)?t:[t],...J.normalizeParams(e)})}var Yb=y("ZodTransform",(t,e)=>{Fc.init(t,e),_e.init(t,e),t._zod.parse=(r,n)=>{r.addIssue=s=>{if(typeof s=="string")r.issues.push(J.issue(s,r.value,e));else{let i=s;i.fatal&&(i.continue=!1),i.code??(i.code="custom"),i.input??(i.input=r.value),i.inst??(i.inst=t),i.continue??(i.continue=!0),r.issues.push(J.issue(i))}};let o=e.transform(r.value,r);return o instanceof Promise?o.then(s=>(r.value=s,r)):(r.value=o,r)}});function ah(t){return new Yb({type:"transform",transform:t})}var ch=y("ZodOptional",(t,e)=>{Bc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function ge(t){return new ch({type:"optional",innerType:t})}var Xb=y("ZodNullable",(t,e)=>{Vc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function rh(t){return new Xb({type:"nullable",innerType:t})}var Qb=y("ZodDefault",(t,e)=>{Kc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function ew(t,e){return new Qb({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var tw=y("ZodPrefault",(t,e)=>{Jc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function rw(t,e){return new tw({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var uh=y("ZodNonOptional",(t,e)=>{Gc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType});function nw(t,e){return new uh({type:"nonoptional",innerType:t,...J.normalizeParams(e)})}var ow=y("ZodCatch",(t,e)=>{Wc.init(t,e),_e.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function sw(t,e){return new ow({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var iw=y("ZodPipe",(t,e)=>{Yc.init(t,e),_e.init(t,e),t.in=e.in,t.out=e.out});function Ku(t,e){return new iw({type:"pipe",in:t,out:e})}var aw=y("ZodReadonly",(t,e)=>{Xc.init(t,e),_e.init(t,e)});function cw(t){return new aw({type:"readonly",innerType:t})}var lh=y("ZodCustom",(t,e)=>{Qc.init(t,e),_e.init(t,e)});function uw(t){let e=new Re({check:"custom"});return e._zod.check=t,e}function dh(t,e){return Lu(lh,t??(()=>!0),e)}function lw(t,e={}){return Du(lh,t,e)}function dw(t){let e=uw(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 Wu(t,e){return Ku(ah(t),e)}rt(Am());var Xu="2025-11-25";var ph=[Xu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],cr="io.modelcontextprotocol/related-task",ai="2.0",Oe=dh(t=>t!==null&&(typeof t=="object"||typeof t=="function")),fh=ue([_(),te().int()]),mh=_(),wN=Ue({ttl:ue([te(),Ju()]).optional(),pollInterval:te().optional()}),pw=P({ttl:te().optional()}),fw=P({taskId:_()}),Qu=Ue({progressToken:fh.optional(),[cr]:fw.optional()}),ot=P({_meta:Qu.optional()}),$o=ot.extend({task:pw.optional()}),hh=t=>$o.safeParse(t).success,Ce=P({method:_(),params:ot.loose().optional()}),ut=P({_meta:Qu.optional()}),lt=P({method:_(),params:ut.loose().optional()}),Ie=Ue({_meta:Qu.optional()}),ci=ue([_(),te().int()]),gh=P({jsonrpc:I(ai),id:ci,...Ce.shape}).strict(),el=t=>gh.safeParse(t).success,_h=P({jsonrpc:I(ai),...lt.shape}).strict(),yh=t=>_h.safeParse(t).success,tl=P({jsonrpc:I(ai),id:ci,result:Ie}).strict(),Po=t=>tl.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 rl=P({jsonrpc:I(ai),id:ci.optional(),error:P({code:te().int(),message:_(),data:fe().optional()})}).strict();var xh=t=>rl.safeParse(t).success;var vh=ue([gh,_h,tl,rl]),EN=ue([tl,rl]),ui=Ie.strict(),mw=ut.extend({requestId:ci.optional(),reason:_().optional()}),li=lt.extend({method:I("notifications/cancelled"),params:mw}),hw=P({src:_(),mimeType:_().optional(),sizes:G(_()).optional(),theme:We(["light","dark"]).optional()}),Ro=P({icons:G(hw).optional()}),Tn=P({name:_(),title:_().optional()}),kh=Tn.extend({...Tn.shape,...Ro.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),gw=si(P({applyDefaults:Te().optional()}),me(_(),fe())),_w=Wu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,si(P({form:gw.optional(),url:Oe.optional()}),me(_(),fe()).optional())),yw=Ue({list:Oe.optional(),cancel:Oe.optional(),requests:Ue({sampling:Ue({createMessage:Oe.optional()}).optional(),elicitation:Ue({create:Oe.optional()}).optional()}).optional()}),xw=Ue({list:Oe.optional(),cancel:Oe.optional(),requests:Ue({tools:Ue({call:Oe.optional()}).optional()}).optional()}),vw=P({experimental:me(_(),Oe).optional(),sampling:P({context:Oe.optional(),tools:Oe.optional()}).optional(),elicitation:_w.optional(),roots:P({listChanged:Te().optional()}).optional(),tasks:yw.optional()}),kw=ot.extend({protocolVersion:_(),capabilities:vw,clientInfo:kh}),nl=Ce.extend({method:I("initialize"),params:kw});var Sw=P({experimental:me(_(),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:xw.optional()}),bw=Ie.extend({protocolVersion:_(),capabilities:Sw,serverInfo:kh,instructions:_().optional()}),ol=lt.extend({method:I("notifications/initialized"),params:ut.optional()});var di=Ce.extend({method:I("ping"),params:ot.optional()}),ww=P({progress:te(),total:ge(te()),message:ge(_())}),Ew=P({...ut.shape,...ww.shape,progressToken:fh}),pi=lt.extend({method:I("notifications/progress"),params:Ew}),Tw=ot.extend({cursor:mh.optional()}),Oo=Ce.extend({params:Tw.optional()}),Co=Ie.extend({nextCursor:mh.optional()}),$w=We(["working","input_required","completed","failed","cancelled"]),Io=P({taskId:_(),status:$w,ttl:ue([te(),Ju()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:ge(te()),statusMessage:ge(_())}),$n=Ie.extend({task:Io}),Pw=ut.merge(Io),zo=lt.extend({method:I("notifications/tasks/status"),params:Pw}),fi=Ce.extend({method:I("tasks/get"),params:ot.extend({taskId:_()})}),mi=Ie.merge(Io),hi=Ce.extend({method:I("tasks/result"),params:ot.extend({taskId:_()})}),TN=Ie.loose(),gi=Oo.extend({method:I("tasks/list")}),_i=Co.extend({tasks:G(Io)}),yi=Ce.extend({method:I("tasks/cancel"),params:ot.extend({taskId:_()})}),Sh=Ie.merge(Io),bh=P({uri:_(),mimeType:ge(_()),_meta:me(_(),fe()).optional()}),wh=bh.extend({text:_()}),sl=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Eh=bh.extend({blob:sl}),No=We(["user","assistant"]),Pn=P({audience:G(No).optional(),priority:te().min(0).max(1).optional(),lastModified:Eo.datetime({offset:!0}).optional()}),Th=P({...Tn.shape,...Ro.shape,uri:_(),description:ge(_()),mimeType:ge(_()),annotations:Pn.optional(),_meta:ge(Ue({}))}),Rw=P({...Tn.shape,...Ro.shape,uriTemplate:_(),description:ge(_()),mimeType:ge(_()),annotations:Pn.optional(),_meta:ge(Ue({}))}),Rn=Oo.extend({method:I("resources/list")}),Ow=Co.extend({resources:G(Th)}),On=Oo.extend({method:I("resources/templates/list")}),Cw=Co.extend({resourceTemplates:G(Rw)}),il=ot.extend({uri:_()}),Iw=il,xi=Ce.extend({method:I("resources/read"),params:Iw}),zw=Ie.extend({contents:G(ue([wh,Eh]))}),Nw=lt.extend({method:I("notifications/resources/list_changed"),params:ut.optional()}),Aw=il,jw=Ce.extend({method:I("resources/subscribe"),params:Aw}),Mw=il,Lw=Ce.extend({method:I("resources/unsubscribe"),params:Mw}),Dw=ut.extend({uri:_()}),Zw=lt.extend({method:I("notifications/resources/updated"),params:Dw}),Uw=P({name:_(),description:ge(_()),required:ge(Te())}),Hw=P({...Tn.shape,...Ro.shape,description:ge(_()),arguments:ge(G(Uw)),_meta:ge(Ue({}))}),Cn=Oo.extend({method:I("prompts/list")}),qw=Co.extend({prompts:G(Hw)}),Fw=ot.extend({name:_(),arguments:me(_(),_()).optional()}),vi=Ce.extend({method:I("prompts/get"),params:Fw}),al=P({type:I("text"),text:_(),annotations:Pn.optional(),_meta:me(_(),fe()).optional()}),cl=P({type:I("image"),data:sl,mimeType:_(),annotations:Pn.optional(),_meta:me(_(),fe()).optional()}),ul=P({type:I("audio"),data:sl,mimeType:_(),annotations:Pn.optional(),_meta:me(_(),fe()).optional()}),Bw=P({type:I("tool_use"),name:_(),id:_(),input:me(_(),fe()),_meta:me(_(),fe()).optional()}),Vw=P({type:I("resource"),resource:ue([wh,Eh]),annotations:Pn.optional(),_meta:me(_(),fe()).optional()}),Kw=Th.extend({type:I("resource_link")}),ll=ue([al,cl,ul,Kw,Vw]),Jw=P({role:No,content:ll}),Gw=Ie.extend({description:_().optional(),messages:G(Jw)}),Ww=lt.extend({method:I("notifications/prompts/list_changed"),params:ut.optional()}),Yw=P({title:_().optional(),readOnlyHint:Te().optional(),destructiveHint:Te().optional(),idempotentHint:Te().optional(),openWorldHint:Te().optional()}),Xw=P({taskSupport:We(["required","optional","forbidden"]).optional()}),$h=P({...Tn.shape,...Ro.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:me(_(),Oe).optional(),required:G(_()).optional()}).catchall(fe()),outputSchema:P({type:I("object"),properties:me(_(),Oe).optional(),required:G(_()).optional()}).catchall(fe()).optional(),annotations:Yw.optional(),execution:Xw.optional(),_meta:me(_(),fe()).optional()}),ki=Oo.extend({method:I("tools/list")}),Qw=Co.extend({tools:G($h)}),Si=Ie.extend({content:G(ll).default([]),structuredContent:me(_(),fe()).optional(),isError:Te().optional()}),$N=Si.or(Ie.extend({toolResult:fe()})),eE=$o.extend({name:_(),arguments:me(_(),fe()).optional()}),In=Ce.extend({method:I("tools/call"),params:eE}),tE=lt.extend({method:I("notifications/tools/list_changed"),params:ut.optional()}),PN=P({autoRefresh:Te().default(!0),debounceMs:te().int().nonnegative().default(300)}),Ao=We(["debug","info","notice","warning","error","critical","alert","emergency"]),rE=ot.extend({level:Ao}),dl=Ce.extend({method:I("logging/setLevel"),params:rE}),nE=ut.extend({level:Ao,logger:_().optional(),data:fe()}),oE=lt.extend({method:I("notifications/message"),params:nE}),sE=P({name:_().optional()}),iE=P({hints:G(sE).optional(),costPriority:te().min(0).max(1).optional(),speedPriority:te().min(0).max(1).optional(),intelligencePriority:te().min(0).max(1).optional()}),aE=P({mode:We(["auto","required","none"]).optional()}),cE=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:G(ll).default([]),structuredContent:P({}).loose().optional(),isError:Te().optional(),_meta:me(_(),fe()).optional()}),uE=Gu("type",[al,cl,ul]),ii=Gu("type",[al,cl,ul,Bw,cE]),lE=P({role:No,content:ue([ii,G(ii)]),_meta:me(_(),fe()).optional()}),dE=$o.extend({messages:G(lE),modelPreferences:iE.optional(),systemPrompt:_().optional(),includeContext:We(["none","thisServer","allServers"]).optional(),temperature:te().optional(),maxTokens:te().int(),stopSequences:G(_()).optional(),metadata:Oe.optional(),tools:G($h).optional(),toolChoice:aE.optional()}),pE=Ce.extend({method:I("sampling/createMessage"),params:dE}),pl=Ie.extend({model:_(),stopReason:ge(We(["endTurn","stopSequence","maxTokens"]).or(_())),role:No,content:uE}),fl=Ie.extend({model:_(),stopReason:ge(We(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:No,content:ue([ii,G(ii)])}),fE=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:Te().optional()}),mE=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:te().optional(),maxLength:te().optional(),format:We(["email","uri","date","date-time"]).optional(),default:_().optional()}),hE=P({type:We(["number","integer"]),title:_().optional(),description:_().optional(),minimum:te().optional(),maximum:te().optional(),default:te().optional()}),gE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),default:_().optional()}),_E=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:G(P({const:_(),title:_()})),default:_().optional()}),yE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:G(_()),enumNames:G(_()).optional(),default:_().optional()}),xE=ue([gE,_E]),vE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({type:I("string"),enum:G(_())}),default:G(_()).optional()}),kE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:te().optional(),maxItems:te().optional(),items:P({anyOf:G(P({const:_(),title:_()}))}),default:G(_()).optional()}),SE=ue([vE,kE]),bE=ue([yE,xE,SE]),wE=ue([bE,fE,mE,hE]),EE=$o.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:me(_(),wE),required:G(_()).optional()})}),TE=$o.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),$E=ue([EE,TE]),PE=Ce.extend({method:I("elicitation/create"),params:$E}),RE=ut.extend({elicitationId:_()}),OE=lt.extend({method:I("notifications/elicitation/complete"),params:RE}),bi=Ie.extend({action:We(["accept","decline","cancel"]),content:Wu(t=>t===null?void 0:t,me(_(),ue([_(),te(),Te(),G(_())])).optional())}),CE=P({type:I("ref/resource"),uri:_()});var IE=P({type:I("ref/prompt"),name:_()}),zE=ot.extend({ref:ue([IE,CE]),argument:P({name:_(),value:_()}),context:P({arguments:me(_(),_()).optional()}).optional()}),wi=Ce.extend({method:I("completion/complete"),params:zE});function Ph(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Rh(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var NE=Ie.extend({completion:Ue({values:G(_()).max(100),total:ge(te().int()),hasMore:ge(Te())})}),AE=P({uri:_().startsWith("file://"),name:_().optional(),_meta:me(_(),fe()).optional()}),jE=Ce.extend({method:I("roots/list"),params:ot.optional()}),ml=Ie.extend({roots:G(AE)}),ME=lt.extend({method:I("notifications/roots/list_changed"),params:ut.optional()}),RN=ue([di,nl,wi,dl,vi,Cn,Rn,On,xi,jw,Lw,In,ki,fi,hi,gi,yi]),ON=ue([li,pi,ol,ME,zo]),CN=ue([ui,pl,fl,bi,ml,mi,_i,$n]),IN=ue([di,pE,PE,jE,fi,hi,gi,yi]),zN=ue([li,pi,oE,Zw,Nw,tE,Ww,zo,OE]),NN=ue([ui,bw,NE,Gw,qw,Ow,Cw,zw,Si,Qw,mi,_i,$n]),O=class t extends Error{constructor(e,r,n){super(`MCP error ${e}: ${r}`),this.code=e,this.data=n,this.name="McpError"}static fromError(e,r,n){if(e===N.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Yu(o.elicitations,r)}return new t(e,r,n)}},Yu=class extends O{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(N.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function ur(t){return t==="completed"||t==="failed"||t==="cancelled"}var Ch=Symbol("Let zodToJsonSchema decide on which parser to use");var Oh={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"},Ih=t=>typeof t=="string"?{...Oh,name:t}:{...Oh,...t};var zh=t=>{let e=Ih(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 he(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 Nh(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 Ah(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 jh(){return{type:"boolean"}}function Ti(t,e){return M(t.type._def,e)}var Mh=(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 LE(t,e)}}var LE=(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 Lh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function Dh(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):he(e)}function Zh(t){return{type:"string",enum:Array.from(t.values)}}var DE=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function Uh(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(DE(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 Hh(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,yt={cuid:/^[cC][^\s-]{8,}$/,cuid2:/^[0-9a-z]+$/,ulid:/^[0-9A-HJKMNP-TV-Z]{26}$/,email:/^(?!\.)(?!.*\.\.)([a-zA-Z0-9_'+\-\.]*)[a-zA-Z0-9_+-]@([a-zA-Z0-9][a-zA-Z0-9\-]*\.)+[a-zA-Z]{2,}$/,emoji:()=>(_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":xt(r,"email",n.message,e);break;case"format:idn-email":xt(r,"idn-email",n.message,e);break;case"pattern:zod":He(r,yt.email,n.message,e);break}break;case"url":xt(r,"uri",n.message,e);break;case"uuid":xt(r,"uuid",n.message,e);break;case"regex":He(r,n.regex,n.message,e);break;case"cuid":He(r,yt.cuid,n.message,e);break;case"cuid2":He(r,yt.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":xt(r,"date-time",n.message,e);break;case"date":xt(r,"date",n.message,e);break;case"time":xt(r,"time",n.message,e);break;case"duration":xt(r,"duration",n.message,e);break;case"length":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"&&xt(r,"ipv4",n.message,e),n.version!=="v4"&&xt(r,"ipv6",n.message,e);break}case"base64url":He(r,yt.base64url,n.message,e);break;case"jwt":He(r,yt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&He(r,yt.ipv4Cidr,n.message,e),n.version!=="v4"&&He(r,yt.ipv6Cidr,n.message,e);break}case"emoji":He(r,yt.emoji(),n.message,e);break;case"ulid":{He(r,yt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{xt(r,"binary",n.message,e);break}case"contentEncoding:base64":{W(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{He(r,yt.base64,n.message,e);break}}break}case"nanoid":He(r,yt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function yl(t,e){return e.patternStrategy==="escape"?UE(t):t}var ZE=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function UE(t){let e="";for(let r=0;r<t.length;r++)ZE.has(t[r])||(e+="\\"),e+=t[r];return e}function xt(t,e,r,n){t.format||t.anyOf?.some(o=>o.format)?(t.anyOf||(t.anyOf=[]),t.format&&(t.anyOf.push({format:t.format,...t.errorMessage&&n.errorMessages&&{errorMessage:{format:t.errorMessage.format}}}),delete t.format,t.errorMessage&&(delete t.errorMessage.format,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.anyOf.push({format:e,...r&&n.errorMessages&&{errorMessage:{format:r}}})):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:qh(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):W(t,"pattern",qh(e,n),r,n)}function qh(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 Ei(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}=wi(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}=bi(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function Hh(t,e){if(e.mapStrategy==="record")return Ei(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 jo={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 jo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=jo[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:jo[t.innerType._def.typeName],nullable:!0}:{type:[jo[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 wi(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 Ei(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 bi(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:ki(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 ct(t)?Zu(t,{target:qE(e?.target),io:e?.pipeStrategy??"input"}):xl(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function Sl(t){let r=ar(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ei(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function kl(t,e){let r=ir(t,e);if(!r.success)throw r.error;return r.data}var FE=6e4,Ti=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(ai,r=>{this._oncancel(r)}),this.setNotificationHandler(ui,r=>{this._onprogress(r)}),this.setRequestHandler(ci,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(li,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(pi,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(!ur(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(ur(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[cr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(fi,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(hi,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(ur(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),Po(s)||_h(s)?this._onresponse(s):el(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?.[cr]?.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,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),Po(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(Po(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),Po(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},ur(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 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||{},[cr]:c}});let p=v=>{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(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(m,v=>{if(!n?.signal?.aborted){if(v instanceof Error)return l(v);try{let S=ir(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(m,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let v=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,v),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(v=>{this._cleanupTimeout(m),l(v)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},di,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},mi,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||{},[cr]: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||{},[cr]: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||{},[cr]: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"&&el(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=zo.parse({method:"notifications/tasks/status",params:a});await this.notification(c),ur(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(ur(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=zo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),ur(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 ca=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 ua=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 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 la=class extends Ti{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Ao.options.map((n,o)=>[n,o])),this.isMessageIgnored=(n,o)=>{let s=this._loggingLevels.get(o);return s?this.LOG_LEVEL_SEVERITY.get(n)<this.LOG_LEVEL_SEVERITY.get(s):!1},this._capabilities=r?.capabilities??{},this._instructions=r?.instructions,this._jsonSchemaValidator=r?.jsonSchemaValidator??new ca,this.setRequestHandler(nl,n=>this._oninitialize(n)),this.setNotificationHandler(ol,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(dl,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Ao.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new ua(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=ag(this._capabilities,e)}setRequestHandler(e,r){let o=ar(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(ct(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=ir(zn,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=ir(Pn,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=ir(xi,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){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:Xu,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"},ii)}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},pl,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},vi,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},vi,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 da=class{constructor(e){this._mcpServer=e}registerToolTask(e,r,n){let o={taskSupport:"required",...r.execution};if(o.taskSupport==="forbidden")throw new Error(`Cannot register task-based tool '${e}' with taskSupport 'forbidden'. Use registerTool() instead.`);return this._mcpServer._createRegisteredTool(e,r.title,r.description,r.inputSchema,r.outputSchema,r.annotations,o,r._meta,n)}};var pa=class{constructor(e,r){this._registeredResources={},this._registeredResourceTemplates={},this._registeredTools={},this._registeredPrompts={},this._toolHandlersInitialized=!1,this._completionHandlerInitialized=!1,this._resourceHandlersInitialized=!1,this._promptHandlersInitialized=!1,this.server=new la(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new da(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(yr(yi)),this.server.assertCanSetRequestHandler(yr(zn)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(yi,()=>({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(zn,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 Xs(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=Qs(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 Xs(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=Qs(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(yr(Si)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Si,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 ps;let s=ar(n.argsSchema)?.[e.params.argument.name];if(!hp(s))return ps;let i=Qy(s);if(!i)return ps;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 ps;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 ps;let s=await o(e.params.argument.value,e.params.context);return tx(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(yr(On)),this.server.assertCanSetRequestHandler(yr(Cn)),this.server.assertCanSetRequestHandler(yr(gi)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(On,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(Cn,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(gi,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(yr(In)),this.server.assertCanSetRequestHandler(yr(_i)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(In,()=>({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(_i,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 Xs(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=Qs(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 Je?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=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];_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)?Kr(t):t}function UO(t){let e=ar(t);return e?Object.entries(e).map(([r,n])=>{let o=Um(n),s=Hm(n);return{name:r,description:o,required:!s}}):[]}function yr(t){let r=ar(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ei(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 ps={completion:{values:[],hasMore:!1}};import ox from"node:process";var fa=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 ma=class{constructor(e=ox.stdin,r=ox.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new fa,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 br,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 Ma,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 _a,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 Et(t){try{return yp(`${t} --version`,{encoding:"utf-8",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function ha(){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 ga(){return Ae("bun")}function ix(t){let e=[],r=t.javascript==="bun";return e.push(` JavaScript: ${t.javascript} (${Et(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Et(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Et(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Et(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Et(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Et(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${Et(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Et(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Et(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Et(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Et(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
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 fs(t,e){if(Buffer.byteLength(t)<=e)return t;let r=t.split(`
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]})??he(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 Fh(t,e){if(e.mapStrategy==="record")return Pi(t,e);let r=M(t.keyType._def,{...e,currentPath:[...e.currentPath,"items","items","0"]})||he(e),n=M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items","items","1"]})||he(e);return{type:"array",maxItems:125,items:{type:"array",items:[r,n],minItems:2,maxItems:2}}}function Bh(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 Vh(t){return t.target==="openAi"?void 0:{not:he({...t,currentPath:[...t.currentPath,"not"]})}}function Kh(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var jo={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function Gh(t,e){if(e.target==="openApi3")return Jh(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in jo&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=jo[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 Jh(t,e)}var Jh=(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 Wh(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:jo[t.innerType._def.typeName],nullable:!0}:{type:[jo[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 Yh(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 Xh(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=qE(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=HE(t,e);return i!==void 0&&(n.additionalProperties=i),n}function HE(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 qE(t){try{return t.isOptional()}catch{return!0}}var Qh=(t,e)=>{if(e.currentPath.toString()===e.propertyPath?.toString())return M(t.innerType._def,e);let r=M(t.innerType._def,{...e,currentPath:[...e.currentPath,"anyOf","1"]});return r?{anyOf:[{not:he(e)},r]}:he(e)};var eg=(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 tg(t,e){return M(t.type._def,e)}function rg(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 ng(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 og(t){return{not:he(t)}}function sg(t){return he(t)}var ig=(t,e)=>M(t.innerType._def,e);var ag=(t,e,r)=>{switch(e){case b.ZodString:return $i(t,r);case b.ZodNumber:return Yh(t,r);case b.ZodObject:return Xh(t,r);case b.ZodBigInt:return Ah(t,r);case b.ZodBoolean:return jh();case b.ZodDate:return gl(t,r);case b.ZodUndefined:return og(r);case b.ZodNull:return Kh(r);case b.ZodArray:return Nh(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return Gh(t,r);case b.ZodIntersection:return Uh(t,r);case b.ZodTuple:return ng(t,r);case b.ZodRecord:return Pi(t,r);case b.ZodLiteral:return Hh(t,r);case b.ZodEnum:return Zh(t);case b.ZodNativeEnum:return Bh(t);case b.ZodNullable:return Wh(t,r);case b.ZodOptional:return Qh(t,r);case b.ZodMap:return Fh(t,r);case b.ZodSet:return rg(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return tg(t,r);case b.ZodNaN:case b.ZodNever:return Vh(r);case b.ZodEffects:return Dh(t,r);case b.ZodAny:return he(r);case b.ZodUnknown:return sg(r);case b.ZodDefault:return Lh(t,r);case b.ZodBranded:return Ti(t,r);case b.ZodReadonly:return ig(t,r);case b.ZodCatch:return Mh(t,r);case b.ZodPipeline:return eg(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!==Ch)return a}if(n&&!r){let a=FE(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=ag(t,t.typeName,e),i=typeof s=="function"?M(s(),e):s;if(i&&BE(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var FE=(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`),he(e)):e.$refStrategy==="seen"?he(e):void 0}},BE=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var xl=(t,e)=>{let r=zh(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)??he(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)??he(r),i=typeof e=="object"&&e.name!==void 0&&e.nameStrategy==="title"?e.name:void 0;i!==void 0&&(s.title=i),r.flags.hasReferencedOpenAiAnyType&&(n||(n={}),n[r.openAiAnyTypeName]||(n[r.openAiAnyTypeName]={type:["string","number","integer","boolean","array","null"],items:{$ref:r.$refStrategy==="relative"?"1":[...r.basePath,r.definitionPath,r.openAiAnyTypeName].join("/")}}));let a=o===void 0?n?{...s,[r.definitionPath]:n}:s:{$ref:[...r.$refStrategy==="relative"?[]:r.basePath,r.definitionPath,o].join("/"),[r.definitionPath]:{...n,[o]:s}};return r.target==="jsonSchema7"?a.$schema="http://json-schema.org/draft-07/schema#":(r.target==="jsonSchema2019-09"||r.target==="openAi")&&(a.$schema="https://json-schema.org/draft/2019-09/schema#"),r.target==="openAi"&&("anyOf"in a||"oneOf"in a||"allOf"in a||"type"in a&&Array.isArray(a.type))&&console.warn("Warning: OpenAI may not support schemas with unions as roots! Try wrapping it in an object property."),a};function VE(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 ct(t)?Zu(t,{target:VE(e?.target),io:e?.pipeStrategy??"input"}):xl(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function kl(t){let r=ar(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ni(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function Sl(t,e){let r=ir(t,e);if(!r.success)throw r.error;return r.data}var KE=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(li,r=>{this._oncancel(r)}),this.setNotificationHandler(pi,r=>{this._onprogress(r)}),this.setRequestHandler(di,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(fi,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(N.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(hi,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 O(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 O(N.InvalidParams,`Task not found: ${s}`);if(!ur(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(ur(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[cr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(gi,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new O(N.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(yi,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new O(N.InvalidParams,`Task not found: ${r.params.taskId}`);if(ur(o.status))throw new O(N.InvalidParams,`Cannot cancel task in terminal status: ${o.status}`);await this._taskStore.updateTaskStatus(r.params.taskId,"cancelled","Client cancelled task execution.",n.sessionId),this._clearTaskQueue(r.params.taskId);let s=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!s)throw new O(N.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof O?o:new O(N.InvalidRequest,`Failed to cancel task: ${o instanceof Error?o.message:String(o)}`)}}))}async _oncancel(e){if(!e.params.requestId)return;this._requestHandlerAbortControllers.get(e.params.requestId)?.abort(e.params.reason)}_setupTimeout(e,r,n,o,s=!1){this._timeoutInfo.set(e,{timeoutId:setTimeout(o,r),startTime:Date.now(),timeout:r,maxTotalTimeout:n,resetTimeoutOnProgress:s,onTimeout:o})}_resetTimeout(e){let r=this._timeoutInfo.get(e);if(!r)return!1;let n=Date.now()-r.startTime;if(r.maxTotalTimeout&&n>=r.maxTotalTimeout)throw this._timeoutInfo.delete(e),O.fromError(N.RequestTimeout,"Maximum total timeout exceeded",{maxTotalTimeout:r.maxTotalTimeout,totalElapsed:n});return clearTimeout(r.timeoutId),r.timeoutId=setTimeout(r.onTimeout,r.timeout),!0}_cleanupTimeout(e){let r=this._timeoutInfo.get(e);r&&(clearTimeout(r.timeoutId),this._timeoutInfo.delete(e))}async connect(e){if(this._transport)throw new Error("Already connected to a transport. Call close() before connecting to a new transport, or use a separate Protocol instance per connection.");this._transport=e;let r=this.transport?.onclose;this._transport.onclose=()=>{r?.(),this._onclose()};let n=this.transport?.onerror;this._transport.onerror=s=>{n?.(s),this._onerror(s)};let o=this._transport?.onmessage;this._transport.onmessage=(s,i)=>{o?.(s,i),Po(s)||xh(s)?this._onresponse(s):el(s)?this._onrequest(s,i):yh(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=O.fromError(N.ConnectionClosed,"Connection closed");this._transport=void 0,this.onclose?.();for(let n of e.values())n(r)}_onerror(e){this.onerror?.(e)}_onnotification(e){let r=this._notificationHandlers.get(e.method)??this.fallbackNotificationHandler;r!==void 0&&Promise.resolve().then(()=>r(e)).catch(n=>this._onerror(new Error(`Uncaught error in notification handler: ${n}`)))}_onrequest(e,r){let n=this._requestHandlers.get(e.method)??this.fallbackRequestHandler,o=this._transport,s=e.params?._meta?.[cr]?.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=hh(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 O(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),Po(e))n(e);else{let i=new O(e.error.code,e.error.message,e.error.data);n(i)}return}let o=this._responseHandlers.get(r);if(o===void 0){this._onerror(new Error(`Received a response for an unknown message ID: ${JSON.stringify(e)}`));return}this._responseHandlers.delete(r),this._cleanupTimeout(r);let s=!1;if(Po(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),Po(e))o(e);else{let i=O.fromError(e.error.code,e.error.message,e.error.data);o(i)}}get transport(){return this._transport}async close(){await this._transport?.close()}async*requestStream(e,r,n){let{task:o}=n??{};if(!o){try{yield{type:"result",result:await this.request(e,r,n)}}catch(i){yield{type:"error",error:i instanceof O?i:new O(N.InternalError,String(i))}}return}let s;try{let i=await this.request(e,$n,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new O(N.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},ur(a.status)){a.status==="completed"?yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)}:a.status==="failed"?yield{type:"error",error:new O(N.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new O(N.InternalError,`Task ${s} was cancelled`)});return}if(a.status==="input_required"){yield{type:"result",result:await this.getTaskResult({taskId:s},r,n)};return}let c=a.pollInterval??this._options?.defaultTaskPollInterval??1e3;await new Promise(u=>setTimeout(u,c)),n?.signal?.throwIfAborted()}}catch(i){yield{type:"error",error:i instanceof O?i:new O(N.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=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 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||{},[cr]:c}});let p=v=>{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(v)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(E=>this._onerror(new Error(`Failed to send cancellation: ${E}`)));let k=v instanceof O?v:new O(N.RequestTimeout,String(v));l(k)};this._responseHandlers.set(m,v=>{if(!n?.signal?.aborted){if(v instanceof Error)return l(v);try{let k=ir(r,v.result);k.success?u(k.data):l(k.error)}catch(k){l(k)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??KE,g=()=>p(O.fromError(N.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(m,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let x=c?.taskId;if(x){let v=k=>{let E=this._responseHandlers.get(m);E?E(k):this._onerror(new Error(`Response handler missing for side-channeled request ${m}`))};this._requestResolvers.set(m,v),this._enqueueTaskMessage(x,{type:"request",message:f,timestamp:Date.now()}).catch(k=>{this._cleanupTimeout(m),l(k)})}else this._transport.send(f,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(v=>{this._cleanupTimeout(m),l(v)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},mi,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},_i,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Sh,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||{},[cr]: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||{},[cr]: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||{},[cr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=kl(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=Sl(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=kl(e);this._notificationHandlers.set(n,o=>{let s=Sl(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"&&el(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new O(N.InternalError,"Task cancelled or completed")),this._requestResolvers.delete(s)):this._onerror(new Error(`Resolver missing for request ${s} during task ${e} cleanup`))}}}async _waitForTaskUpdate(e,r){let n=this._options?.defaultTaskPollInterval??1e3;try{let o=await this._taskStore?.getTask(e);o?.pollInterval&&(n=o.pollInterval)}catch{}return new Promise((o,s)=>{if(r.aborted){s(new O(N.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new O(N.InvalidRequest,"Request cancelled"))},{once:!0})})}requestTaskStore(e,r){let n=this._taskStore;if(!n)throw new Error("No task store configured");return{createTask:async o=>{if(!e)throw new Error("No request provided");return await n.createTask(o,e.id,{method:e.method,params:e.params},r)},getTask:async o=>{let s=await n.getTask(o,r);if(!s)throw new O(N.InvalidParams,"Failed to retrieve task: Task not found");return s},storeTaskResult:async(o,s,i)=>{await n.storeTaskResult(o,s,i,r);let a=await n.getTask(o,r);if(a){let c=zo.parse({method:"notifications/tasks/status",params:a});await this.notification(c),ur(a.status)&&this._cleanupTaskProgressHandler(o)}},getTaskResult:o=>n.getTaskResult(o,r),updateTaskStatus:async(o,s,i)=>{let a=await n.getTask(o,r);if(!a)throw new O(N.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(ur(a.status))throw new O(N.InvalidParams,`Cannot update task "${o}" from terminal status "${a.status}" to "${s}". Terminal states (completed, failed, cancelled) cannot transition to other states.`);await n.updateTaskStatus(o,s,i,r);let c=await n.getTask(o,r);if(c){let u=zo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),ur(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function cg(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function ug(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];cg(i)&&cg(s)?r[o]={...i,...s}:r[o]=s}return r}var Gy=hf(ap(),1),Wy=hf(Jy(),1);function LO(){let t=new Gy.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,Wy.default)(t),t}var da=class{constructor(e){this._ajv=e??LO()}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)}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 Yy(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 Xy(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(Ao.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(nl,n=>this._oninitialize(n)),this.setNotificationHandler(ol,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(dl,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Ao.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=ug(this._capabilities,e)}setRequestHandler(e,r){let o=ar(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(ct(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=ir(In,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new O(N.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,m=await Promise.resolve(r(c,u));if(d.task){let p=ir($n,m);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new O(N.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let f=ir(Si,m);if(!f.success){let p=f.error instanceof Error?f.error.message:String(f.error);throw new O(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){Xy(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&Yy(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:ph.includes(r)?r:Xu,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"},ui)}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},pl,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},bi,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},bi,r);if(s.action==="accept"&&s.content&&o.requestedSchema)try{let a=this._jsonSchemaValidator.getValidator(o.requestedSchema)(s.content);if(!a.valid)throw new O(N.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof O?i:new O(N.InternalError,`Error validating elicitation response: ${i instanceof Error?i.message:String(i)}`)}return s}}}createElicitationCompletionNotifier(e,r){if(!this._clientCapabilities?.elicitation?.url)throw new Error("Client does not support URL elicitation (required for notifications/elicitation/complete)");return()=>this.notification({method:"notifications/elicitation/complete",params:{elicitationId:e}},r)}async listRoots(e,r){return this.request({method:"roots/list",params:e},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 ex=Symbol.for("mcp.completable");function hp(t){return!!t&&typeof t=="object"&&ex in t}function tx(t){return t[ex]?.complete}var Qy;(function(t){t.Completable="McpCompletable"})(Qy||(Qy={}));var DO=/^[A-Za-z0-9._-]{1,128}$/;function ZO(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"),!DO.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 UO(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=ZO(t);return UO(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(yr(ki)),this.server.assertCanSetRequestHandler(yr(In)),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=En(r.inputSchema);return o?vl(o,{strictUnions:!0,pipeStrategy:"input"}):HO})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=En(r.outputSchema);o&&(n.outputSchema=vl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(In,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new O(N.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Tool ${e.params.name} disabled`);let o=!!e.params.task,s=n.execution?.taskSupport,i="createTask"in n.handler;if((s==="required"||s==="optional")&&!i)throw new O(N.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new O(N.MethodNotFound,`Tool ${e.params.name} requires task augmentation (taskSupport: 'required')`);if(s==="optional"&&!o&&i)return await this.handleAutomaticTaskPolling(n,e,r);let a=await this.validateToolInput(n,e.params.arguments,e.params.name),c=await this.executeToolHandler(n,a,r);return o||await this.validateToolOutput(n,c,e.params.name),c}catch(n){if(n instanceof O&&n.code===N.UrlElicitationRequired)throw n;return this.createToolError(n instanceof Error?n.message:String(n))}}),this._toolHandlersInitialized=!0)}createToolError(e){return{content:[{type:"text",text:e}],isError:!0}}async validateToolInput(e,r,n){if(!e.inputSchema)return;let s=En(e.inputSchema)??e.inputSchema,i=await ti(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=ri(a);throw new O(N.InvalidParams,`Input validation error: Invalid arguments for tool ${n}: ${c}`)}return i.data}async validateToolOutput(e,r,n){if(!e.outputSchema||!("content"in r)||r.isError)return;if(!r.structuredContent)throw new O(N.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=En(e.outputSchema),s=await ti(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=ri(i);throw new O(N.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(m=>setTimeout(m,l));let d=await n.taskStore.getTask(c);if(!d)throw new O(N.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(yr(wi)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(wi,async e=>{switch(e.params.ref.type){case"ref/prompt":return Ph(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Rh(e),this.handleResourceCompletion(e,e.params.ref);default:throw new O(N.InvalidParams,`Invalid completion reference: ${e.params.ref}`)}}),this._completionHandlerInitialized=!0)}async handlePromptCompletion(e,r){let n=this._registeredPrompts[r.name];if(!n)throw new O(N.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return ps;let s=ar(n.argsSchema)?.[e.params.argument.name];if(!hp(s))return ps;let i=tx(s);if(!i)return ps;let a=await i(e.params.argument.value,e.params.context);return nx(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 ps;throw new O(N.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return ps;let s=await o(e.params.argument.value,e.params.context);return nx(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(yr(Rn)),this.server.assertCanSetRequestHandler(yr(On)),this.server.assertCanSetRequestHandler(yr(xi)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(Rn,async(e,r)=>{let n=Object.entries(this._registeredResources).filter(([s,i])=>i.enabled).map(([s,i])=>({uri:s,name:i.name,...i.metadata})),o=[];for(let s of Object.values(this._registeredResourceTemplates)){if(!s.resourceTemplate.listCallback)continue;let i=await s.resourceTemplate.listCallback(r);for(let a of i.resources)o.push({...s.metadata,...a})}return{resources:[...n,...o]}}),this.server.setRequestHandler(On,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(xi,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new O(N.InvalidParams,`Resource ${n} disabled`);return o.readCallback(n,r)}for(let s of Object.values(this._registeredResourceTemplates)){let i=s.resourceTemplate.uriTemplate.match(n.toString());if(i)return s.readCallback(n,i,r)}throw new O(N.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(yr(Cn)),this.server.assertCanSetRequestHandler(yr(vi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Cn,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?FO(r.argsSchema):void 0}))})),this.server.setRequestHandler(vi,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new O(N.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new O(N.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=En(n.argsSchema),s=await ti(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=ri(c);throw new O(N.InvalidParams,`Invalid arguments for prompt ${e.params.name}: ${u}`)}let i=s.data,a=n.callback;return await Promise.resolve(a(i,r))}else{let o=n.callback;return await Promise.resolve(o(r))}}),this._promptHandlersInitialized=!0)}resource(e,r,...n){let o;typeof n[0]=="object"&&(o=n.shift());let s=n[0];if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let i=this._createRegisteredResource(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let i=this._createRegisteredResourceTemplate(e,void 0,r,o,s);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),i}}registerResource(e,r,n,o){if(typeof r=="string"){if(this._registeredResources[r])throw new Error(`Resource ${r} is already registered`);let s=this._createRegisteredResource(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}else{if(this._registeredResourceTemplates[e])throw new Error(`Resource template ${e} is already registered`);let s=this._createRegisteredResourceTemplate(e,n.title,r,n,o);return this.setResourceRequestHandlers(),this.sendResourceListChanged(),s}}_createRegisteredResource(e,r,n,o,s){let i={name:e,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({uri:null}),update:a=>{typeof a.uri<"u"&&a.uri!==n&&(delete this._registeredResources[n],a.uri&&(this._registeredResources[a.uri]=i)),typeof a.name<"u"&&(i.name=a.name),typeof a.title<"u"&&(i.title=a.title),typeof a.metadata<"u"&&(i.metadata=a.metadata),typeof a.callback<"u"&&(i.readCallback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendResourceListChanged()}};return this._registeredResources[n]=i,i}_createRegisteredResourceTemplate(e,r,n,o,s){let i={resourceTemplate:n,title:r,metadata:o,readCallback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:u=>{typeof u.name<"u"&&u.name!==e&&(delete this._registeredResourceTemplates[e],u.name&&(this._registeredResourceTemplates[u.name]=i)),typeof u.title<"u"&&(i.title=u.title),typeof u.template<"u"&&(i.resourceTemplate=u.template),typeof u.metadata<"u"&&(i.metadata=u.metadata),typeof u.callback<"u"&&(i.readCallback=u.callback),typeof u.enabled<"u"&&(i.enabled=u.enabled),this.sendResourceListChanged()}};this._registeredResourceTemplates[e]=i;let a=n.uriTemplate.variableNames;return Array.isArray(a)&&a.some(u=>!!n.completeCallback(u))&&this.setCompletionRequestHandler(),i}_createRegisteredPrompt(e,r,n,o,s){let i={title:r,description:n,argsSchema:o===void 0?void 0:Kr(o),callback:s,enabled:!0,disable:()=>i.update({enabled:!1}),enable:()=>i.update({enabled:!0}),remove:()=>i.update({name:null}),update:a=>{typeof a.name<"u"&&a.name!==e&&(delete this._registeredPrompts[e],a.name&&(this._registeredPrompts[a.name]=i)),typeof a.title<"u"&&(i.title=a.title),typeof a.description<"u"&&(i.description=a.description),typeof a.argsSchema<"u"&&(i.argsSchema=Kr(a.argsSchema)),typeof a.callback<"u"&&(i.callback=a.callback),typeof a.enabled<"u"&&(i.enabled=a.enabled),this.sendPromptListChanged()}};return this._registeredPrompts[e]=i,o&&Object.values(o).some(c=>{let u=c instanceof Je?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:rx(o),outputSchema:rx(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=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];_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 HO={type:"object",properties:{}};function ox(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function qO(t){return"_def"in t||"_zod"in t||ox(t)}function _p(t){return typeof t!="object"||t===null||qO(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(ox)}function rx(t){if(t)return _p(t)?Kr(t):t}function FO(t){let e=ar(t);return e?Object.entries(e).map(([r,n])=>{let o=qm(n),s=Fm(n);return{name:r,description:o,required:!s}}):[]}function yr(t){let r=ar(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ni(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function nx(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var ps={completion:{values:[],hasMore:!1}};import ix 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),BO(r)}clear(){this._buffer=void 0}};function BO(t){return vh.parse(JSON.parse(t))}function sx(t){return JSON.stringify(t)+`
77
+ `}var _a=class{constructor(e=ix.stdin,r=ix.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=sx(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as Uv}from"node:module";import{createHash as Hv}from"node:crypto";import{existsSync as br,unlinkSync as dI,readdirSync as pI,readFileSync as qv,rmSync as fI,mkdirSync as mI}from"node:fs";import{join as fn,dirname as df,resolve as dn}from"node:path";import{fileURLToPath as hI}from"node:url";import{homedir as Ma,tmpdir as gI}from"node:os";import{spawn as JO,execSync as GO,execFileSync as WO}from"node:child_process";import{mkdtempSync as YO,writeFileSync as px,rmSync as fx,existsSync as mx}from"node:fs";import{join as va,resolve as XO}from"node:path";import{tmpdir as QO}from"node:os";import{execSync as yp}from"node:child_process";import{existsSync as ax}from"node:fs";var xp=process.platform==="win32";function Ae(t){try{let e=xp?`where ${t}`:`command -v ${t}`;return yp(e,{stdio:"pipe"}),!0}catch{return!1}}function cx(){if(Ae("bun"))return!0;if(!xp){let t=process.env.HOME??process.env.USERPROFILE??"";if(t&&ax(`${t}/.bun/bin/bun`))return!0}return!1}function VO(){return Ae("bun")?"bun":`${process.env.HOME??process.env.USERPROFILE??""}/.bun/bin/bun`}function KO(){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(ax(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 Et(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 e=cx()?VO():null;return{javascript:e??process.execPath,typescript:e||(Ae("tsx")?"tsx":Ae("ts-node")?"ts-node":null),python:Ae("python3")?"python3":Ae("python")?"python":null,shell:xp?KO()??(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 cx()}function ux(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${Et(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Et(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Et(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Et(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Et(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Et(t.go)})`),t.rust&&e.push(` Rust: ${t.rust} (${Et(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Et(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Et(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Et(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Et(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
78
+ `)}function lx(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 dx(t,e,r){switch(e){case"javascript":return t.javascript.endsWith("bun")?[t.javascript,"run",r]:[t.javascript,r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript?.endsWith("bun")?[t.typescript,"run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}function fs(t,e){if(Buffer.byteLength(t)<=e)return t;let r=t.split(`
79
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=`
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 Tt=process.platform==="win32";function xp(t){if(Tt&&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 ms=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??ha()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(Tt?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=VO(_a(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
85
+ `)}var Tt=process.platform==="win32";function vp(t){if(Tt&&t.pid)try{GO(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var ms=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(Tt?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=YO(va(QO(),".ctx-mode-"));try{let a=this.#i(i,n,r),c=dx(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{fx(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{fx(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=XO(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"&&dx(_a(this.#r,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JSON.stringify(_a(this.#r,"_build/dev/lib"))}, "*/ebin"))
93
+ ${r}`),n==="elixir"&&mx(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=_a(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=Tt?".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=Tt&&["tsx","ts-node","elixir"].includes(e[0]),a=e[0],c;Tt&&e.length===2&&e[1]?c=[e[1].replace(/\\/g,"/")]:c=Tt?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:!Tt}),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"),v=Buffer.concat(p).toString("utf-8"),S=this.#e;s({stdout:fs(y,S),stderr:fs(v,S),exitCode:0,timedOut:!0,backgrounded:!0})}else xp(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,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(m),d)return;let v=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=fs(v,w),ae=fs(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",Tt&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Tt?"":"/usr/local/bin:/usr/bin:/bin"),Tt){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=Tt?[]:["/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};
96
+ ${r}`);let s=va(e,`script.${o[n]}`);return n==="shell"?px(s,r,{encoding:"utf-8",mode:448}):px(s,r,"utf-8"),s}async#a(e,r,n){let o=Tt?".exe":"",s=e.replace(/\.rs$/,"")+o;try{WO("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=Tt&&["tsx","ts-node","elixir"].includes(e[0]),a=e[0],c;Tt&&e.length===2&&e[1]?c=[e[1].replace(/\\/g,"/")]:c=Tt?e.slice(1).map(x=>x.replace(/\\/g,"/")):e.slice(1);let u=JO(a,c,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(r),shell:i,detached:!Tt}),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 x=Buffer.concat(f).toString("utf-8"),v=Buffer.concat(p).toString("utf-8"),k=this.#e;s({stdout:fs(x,k),stderr:fs(v,k),exitCode:0,timedOut:!0,backgrounded:!0})}else vp(u)},n),f=[],p=[],h=0,g=!1;u.stdout.on("data",x=>{h+=x.length,h<=this.#t?f.push(x):g||(g=!0,vp(u))}),u.stderr.on("data",x=>{h+=x.length,h<=this.#t?p.push(x):g||(g=!0,vp(u))}),u.on("close",x=>{if(clearTimeout(m),d)return;let v=Buffer.concat(f).toString("utf-8"),k=Buffer.concat(p).toString("utf-8");g&&(k+=`
98
+ [output capped at ${(this.#t/1024/1024).toFixed(0)}MB \u2014 process killed]`);let E=this.#e,C=fs(v,E),ye=fs(k,E);s({stdout:C,stderr:ye,exitCode:l?1:x??1,timedOut:l})}),u.on("error",x=>{clearTimeout(m),!d&&s({stdout:"",stderr:x.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",Tt&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=Tt?"":"/usr/local/bin:/usr/bin:/bin"),Tt){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=Tt?[]:["/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(mx(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 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()}},ya=null;function hs(){if(!ya){let t=GO(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;ya=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0});return new vp(s)}}else ya=t("better-sqlite3")}return ya}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 xa=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=hs();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(`
153
+ ${n}`}}};import{createRequire as eC}from"node:module";var kp=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()}},ka=null;function hs(){if(!ka){let t=eC(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;ka=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0});return new kp(s)}}else ka=t("better-sqlite3")}return ka}function hx(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL")}function gx(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}import{readFileSync as tC,readdirSync as xx,unlinkSync as Sp,existsSync as rC,statSync as vx}from"node:fs";import{tmpdir as kx}from"node:os";import{join as bp}from"node:path";var _x=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 nC(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 oC(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 sC(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 iC(t){return t<=4?1:t<=12?2:3}var yx=4096;function wp(){let t=kx(),e=0;try{let r=xx(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=bp(t,n);for(let a of["","-wal","-shm"])try{Sp(i+a)}catch{}e++}}}catch{}return e}function Sx(t,e){let r=0;try{if(!rC(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=xx(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=bp(t,s);if(vx(i).mtimeMs<n){for(let c of["","-wal","-shm"])try{Sp(i+c)}catch{}r++}}catch{}}catch{}return r}function aC(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function cC(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 Sa=class{#e;#t;#r;#n;#o;#i;#a;#s;#c;#u;#p;#f;#m;#h;#g;#_;#y;#x;#v;#k;#S;#b;#w;#E;#T;#$;#P;#R;#O;constructor(e){let r=hs();this.#t=e??bp(kx(),`context-mode-${process.pid}.db`),this.#e=new r(this.#t,{timeout:5e3}),hx(this.#e),this.#A(),this.#j()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{Sp(this.#t+e)}catch{}}#A(){this.#e.exec(`
154
154
  CREATE TABLE IF NOT EXISTS sources (
155
155
  id INTEGER PRIMARY KEY AUTOINCREMENT,
156
156
  label TEXT NOT NULL,
@@ -178,7 +178,9 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
178
178
  CREATE TABLE IF NOT EXISTS vocabulary (
179
179
  word TEXT PRIMARY KEY
180
180
  );
181
- `)}#O(){this.#r=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, 0, 0)"),this.#n=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, ?, ?)"),this.#o=this.#e.prepare("INSERT INTO chunks (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#i=this.#e.prepare("INSERT INTO chunks_trigram (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#a=this.#e.prepare("INSERT OR IGNORE INTO vocabulary (word) VALUES (?)"),this.#s=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#c=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#u=this.#e.prepare("DELETE FROM sources WHERE label = ?"),this.#d=this.#e.prepare(`
181
+
182
+ CREATE INDEX IF NOT EXISTS idx_sources_label ON sources(label);
183
+ `)}#j(){this.#r=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, 0, 0)"),this.#n=this.#e.prepare("INSERT INTO sources (label, chunk_count, code_chunk_count) VALUES (?, ?, ?)"),this.#o=this.#e.prepare("INSERT INTO chunks (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#i=this.#e.prepare("INSERT INTO chunks_trigram (title, content, source_id, content_type) VALUES (?, ?, ?, ?)"),this.#a=this.#e.prepare("INSERT OR IGNORE INTO vocabulary (word) VALUES (?)"),this.#s=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#c=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE label = ?)"),this.#u=this.#e.prepare("DELETE FROM sources WHERE label = ?"),this.#p=this.#e.prepare(`
182
184
  SELECT
183
185
  chunks.title,
184
186
  chunks.content,
@@ -191,7 +193,7 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
191
193
  WHERE chunks MATCH ?
192
194
  ORDER BY rank
193
195
  LIMIT ?
194
- `),this.#p=this.#e.prepare(`
196
+ `),this.#f=this.#e.prepare(`
195
197
  SELECT
196
198
  chunks.title,
197
199
  chunks.content,
@@ -204,7 +206,20 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
204
206
  WHERE chunks MATCH ? AND sources.label LIKE ?
205
207
  ORDER BY rank
206
208
  LIMIT ?
207
- `),this.#f=this.#e.prepare(`
209
+ `),this.#m=this.#e.prepare(`
210
+ SELECT
211
+ chunks.title,
212
+ chunks.content,
213
+ chunks.content_type,
214
+ sources.label,
215
+ bm25(chunks, 5.0, 1.0) AS rank,
216
+ highlight(chunks, 1, char(2), char(3)) AS highlighted
217
+ FROM chunks
218
+ JOIN sources ON sources.id = chunks.source_id
219
+ WHERE chunks MATCH ? AND sources.label = ?
220
+ ORDER BY rank
221
+ LIMIT ?
222
+ `),this.#h=this.#e.prepare(`
208
223
  SELECT
209
224
  chunks_trigram.title,
210
225
  chunks_trigram.content,
@@ -217,7 +232,7 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
217
232
  WHERE chunks_trigram MATCH ?
218
233
  ORDER BY rank
219
234
  LIMIT ?
220
- `),this.#m=this.#e.prepare(`
235
+ `),this.#g=this.#e.prepare(`
221
236
  SELECT
222
237
  chunks_trigram.title,
223
238
  chunks_trigram.content,
@@ -230,7 +245,20 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
230
245
  WHERE chunks_trigram MATCH ? AND sources.label LIKE ?
231
246
  ORDER BY rank
232
247
  LIMIT ?
233
- `),this.#g=this.#e.prepare(`
248
+ `),this.#_=this.#e.prepare(`
249
+ SELECT
250
+ chunks_trigram.title,
251
+ chunks_trigram.content,
252
+ chunks_trigram.content_type,
253
+ sources.label,
254
+ bm25(chunks_trigram, 5.0, 1.0) AS rank,
255
+ highlight(chunks_trigram, 1, char(2), char(3)) AS highlighted
256
+ FROM chunks_trigram
257
+ JOIN sources ON sources.id = chunks_trigram.source_id
258
+ WHERE chunks_trigram MATCH ? AND sources.label = ?
259
+ ORDER BY rank
260
+ LIMIT ?
261
+ `),this.#x=this.#e.prepare(`
234
262
  SELECT
235
263
  chunks.title,
236
264
  chunks.content,
@@ -243,7 +271,7 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
243
271
  WHERE chunks MATCH ? AND chunks.content_type = ?
244
272
  ORDER BY rank
245
273
  LIMIT ?
246
- `),this.#_=this.#e.prepare(`
274
+ `),this.#v=this.#e.prepare(`
247
275
  SELECT
248
276
  chunks.title,
249
277
  chunks.content,
@@ -256,7 +284,20 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
256
284
  WHERE chunks MATCH ? AND sources.label LIKE ? AND chunks.content_type = ?
257
285
  ORDER BY rank
258
286
  LIMIT ?
259
- `),this.#y=this.#e.prepare(`
287
+ `),this.#k=this.#e.prepare(`
288
+ SELECT
289
+ chunks.title,
290
+ chunks.content,
291
+ chunks.content_type,
292
+ sources.label,
293
+ bm25(chunks, 5.0, 1.0) AS rank,
294
+ highlight(chunks, 1, char(2), char(3)) AS highlighted
295
+ FROM chunks
296
+ JOIN sources ON sources.id = chunks.source_id
297
+ WHERE chunks MATCH ? AND sources.label = ? AND chunks.content_type = ?
298
+ ORDER BY rank
299
+ LIMIT ?
300
+ `),this.#S=this.#e.prepare(`
260
301
  SELECT
261
302
  chunks_trigram.title,
262
303
  chunks_trigram.content,
@@ -269,7 +310,7 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
269
310
  WHERE chunks_trigram MATCH ? AND chunks_trigram.content_type = ?
270
311
  ORDER BY rank
271
312
  LIMIT ?
272
- `),this.#x=this.#e.prepare(`
313
+ `),this.#b=this.#e.prepare(`
273
314
  SELECT
274
315
  chunks_trigram.title,
275
316
  chunks_trigram.content,
@@ -282,40 +323,55 @@ ${n}`}}};import{createRequire as GO}from"node:module";var vp=class{#e;constructo
282
323
  WHERE chunks_trigram MATCH ? AND sources.label LIKE ? AND chunks_trigram.content_type = ?
283
324
  ORDER BY rank
284
325
  LIMIT ?
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
326
+ `),this.#w=this.#e.prepare(`
327
+ SELECT
328
+ chunks_trigram.title,
329
+ chunks_trigram.content,
330
+ chunks_trigram.content_type,
331
+ sources.label,
332
+ bm25(chunks_trigram, 5.0, 1.0) AS rank,
333
+ highlight(chunks_trigram, 1, char(2), char(3)) AS highlighted
334
+ FROM chunks_trigram
335
+ JOIN sources ON sources.id = chunks_trigram.source_id
336
+ WHERE chunks_trigram MATCH ? AND sources.label = ? AND chunks_trigram.content_type = ?
337
+ ORDER BY rank
338
+ LIMIT ?
339
+ `),this.#y=this.#e.prepare("SELECT word FROM vocabulary WHERE length(word) BETWEEN ? AND ?"),this.#E=this.#e.prepare("SELECT label, chunk_count as chunkCount FROM sources ORDER BY id DESC"),this.#T=this.#e.prepare(`SELECT c.title, c.content, c.content_type, s.label
286
340
  FROM chunks c
287
341
  JOIN sources s ON s.id = c.source_id
288
342
  WHERE c.source_id = ?
289
- ORDER BY c.rowid`),this.#k=this.#e.prepare("SELECT chunk_count FROM sources WHERE id = ?"),this.#b=this.#e.prepare("SELECT content FROM chunks WHERE source_id = ?"),this.#E=this.#e.prepare("SELECT label, chunk_count, code_chunk_count, indexed_at FROM sources WHERE label = ?"),this.#w=this.#e.prepare(`
343
+ ORDER BY c.rowid`),this.#$=this.#e.prepare("SELECT chunk_count FROM sources WHERE id = ?"),this.#P=this.#e.prepare("SELECT content FROM chunks WHERE source_id = ?"),this.#O=this.#e.prepare("SELECT label, chunk_count, code_chunk_count, indexed_at FROM sources WHERE label = ?"),this.#R=this.#e.prepare(`
290
344
  SELECT
291
345
  (SELECT COUNT(*) FROM sources) AS sources,
292
346
  (SELECT COUNT(*) FROM chunks) AS chunks,
293
347
  (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??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,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=>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(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.#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(m=>m.length>=3&&!hx.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 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(`
348
+ `)}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??tC(n,"utf-8"),i=o??n??"untitled",a=this.#L(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.#D(e,n);return this.#l(o.map(s=>({...s,hasCode:!1})),r,e)}indexJSON(e,r,n=yx){if(!e||e.trim().length===0)return this.indexPlainText("",r);let o;try{o=JSON.parse(e)}catch{return this.indexPlainText(e,r)}let s=[];return this.#N(o,[],s,n),s.length===0?this.indexPlainText(e,r):this.#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.#M(n),{sourceId:i,label:r,totalChunks:e.length,codeChunks:o}}#C(e){return e.map(r=>({title:r.title,content:r.content,source:r.label,rank:r.rank,contentType:r.content_type,highlighted:r.highlighted}))}#d(e,r){return r==="exact"?e:`%${e}%`}search(e,r=3,n,o="AND",s,i="like"){let a=nC(e,o),c,u;return n&&s?(c=i==="exact"?this.#k:this.#v,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#m:this.#f,u=[a,this.#d(n,i),r]):s?(c=this.#x,u=[a,s,r]):(c=this.#p,u=[a,r]),this.#C(c.all(...u))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=oC(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#w:this.#b,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#_:this.#g,u=[a,this.#d(n,i),r]):s?(c=this.#S,u=[a,s,r]):(c=this.#h,u=[a,r]),this.#C(c.all(...u))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;let n=iC(r.length),o=this.#y.all(r.length-n,r.length+n),s=null,i=n+1;for(let{word:a}of o){if(a===r)return null;let c=sC(r,a);c<i&&(i=c,s=a)}return i<=n?s:null}#I(e,r,n,o,s="like"){let a=Math.max(r*2,10),c=this.search(e,a,n,"OR",o,s),u=this.searchTrigram(e,a,n,"OR",o,s),l=new Map,d=m=>`${m.source}::${m.title}`;for(let[m,f]of c.entries()){let p=d(f),h=l.get(p);h?h.score+=1/(60+m+1):l.set(p,{result:f,score:1/(60+m+1)})}for(let[m,f]of u.entries()){let p=d(f),h=l.get(p);h?h.score+=1/(60+m+1):l.set(p,{result:f,score:1/(60+m+1)})}return Array.from(l.values()).sort((m,f)=>f.score-m.score).slice(0,r).map(({result:m,score:f})=>({...m,rank:-f}))}#z(e,r){let n=r.toLowerCase().split(/\s+/).filter(o=>o.length>=2);return n.length<2?e:e.map(o=>{let s=o.content.toLowerCase(),i=n.map(u=>aC(s,u));if(i.some(u=>u.length===0))return{result:o,boost:0};let c=1/(1+cC(i)/Math.max(s.length,1));return{result:o,boost:c}}).sort((o,s)=>s.boost-o.boost||o.result.rank-s.result.rank).map(({result:o})=>o)}searchWithFallback(e,r=3,n,o,s="like"){let i=this.#I(e,r,n,o,s);if(i.length>0)return this.#z(i,e).map(m=>({...m,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#I(l,r,n,o,s);if(d.length>0)return this.#z(d,l).map(f=>({...f,matchLayer:"rrf-fuzzy"}))}return[]}getSourceMeta(e){let r=this.#O.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at}:null}listSources(){return this.#E.all()}getChunksBySource(e){return this.#T.all(e).map(n=>({title:n.title,content:n.content,source:n.label,rank:0,contentType:n.content_type}))}getDistinctiveTerms(e,r=40){let n=this.#$.get(e);if(!n||n.chunk_count<3)return[];let o=n.chunk_count,s=2,i=Math.max(3,Math.ceil(o*.4)),a=new Map;for(let l of this.#P.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(m=>m.length>=3&&!_x.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.#R.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){let r=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),n=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),o=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')");return this.#e.transaction(a=>(r.run(a),n.run(a),o.run(a)))(e).changes}getDBSizeBytes(){try{return vx(this.#t).size}catch{return 0}}close(){gx(this.#e)}#M(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(o=>o.length>=3&&!_x.has(o)),n=[...new Set(r)];this.#e.transaction(()=>{for(let o of n)this.#a.run(o)})()}#L(e,r=yx){let n=[],o=e.split(`
295
349
  `),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(`
350
+ `).trim();if(l.length===0)return;let d=this.#q(s,a),m=i.some(x=>/^`{3,}/.test(x));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 x=p.join(`
297
351
 
298
- `).trim();if(y.length===0)return;let v=f.length>1?`${d} (${h})`:d;h++,n.push({title:v,content:y,hasCode:y.includes("```")}),p=[]};for(let y of f){p.push(y);let v=p.join(`
352
+ `).trim();if(x.length===0)return;let v=f.length>1?`${d} (${h})`:d;h++,n.push({title:v,content:x,hasCode:x.includes("```")}),p=[]};for(let x of f){p.push(x);let v=p.join(`
299
353
 
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 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(`
354
+ `);Buffer.byteLength(v)>r&&p.length>1&&(p.pop(),g(),p=[x])}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}#D(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
355
  `)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
302
356
  `);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 kx}from"node:fs";import{resolve as Yn}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=Yn(t,".claude","settings.local.json"),i=wp(s);i&&r.push(i);let a=Yn(t,".claude","settings.json"),c=wp(a);c&&r.push(c)}let n=e??Yn(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 m of l){if(typeof m!="string")continue;let f=oC(m);f&&f.tool===t&&d.push(f.glob)}return d};if(e){let a=o(Yn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Yn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Yn(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}
357
+ `)})}return s}#N(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=JSON.stringify(e,null,2);if(Buffer.byteLength(i)<=o&&!(typeof e=="object"&&e!==null&&!Array.isArray(e)&&Object.values(e).some(c=>typeof c=="object"&&c!==null))){n.push({title:s,content:i,hasCode:!0});return}if(typeof e=="object"&&e!==null&&!Array.isArray(e)){let a=Object.entries(e);if(a.length>0){for(let[c,u]of a)this.#N(u,[...r,c],n,o);return}n.push({title:s,content:i,hasCode:!0});return}if(Array.isArray(e)){this.#H(e,r,n,o);return}n.push({title:s,content:i,hasCode:!1})}#Z(e){if(e.length===0)return null;let r=e[0];if(typeof r!="object"||r===null||Array.isArray(r))return null;let n=["id","name","title","path","slug","key","label"],o=r;for(let s of n)if(s in o&&(typeof o[s]=="string"||typeof o[s]=="number"))return s;return null}#U(e,r,n,o,s){let i=e?`${e} > `:"";if(!s)return r===n?`${i}[${r}]`:`${i}[${r}-${n}]`;let a=c=>String(c[s]);return o.length===1?`${i}${a(o[0])}`:o.length<=3?i+o.map(a).join(", "):`${i}${a(o[0])}\u2026${a(o[o.length-1])}`}#H(e,r,n,o){let s=r.length>0?r.join(" > "):"(root)",i=this.#Z(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#U(s,c,l,a,i);n.push({title:d,content:JSON.stringify(a,null,2),hasCode:!0})};for(let l=0;l<e.length;l++){a.push(e[l]);let d=JSON.stringify(a,null,2);Buffer.byteLength(d)>o&&a.length>1&&(a.pop(),u(l-1),a=[e[l]],c=l)}u(c+a.length-1)}#q(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as wx}from"node:fs";import{resolve as Wn}from"node:path";import{homedir as Ex}from"node:os";function Tx(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function uC(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function lC(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function bx(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function dC(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=lC(o),a=bx(s);r=`^${i}(\\s${a})?$`}else r=`^${bx(t)}$`;return new RegExp(r,e?"i":"")}function pC(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 fC(t,e,r=!1){for(let n of e){let o=Tx(n);if(o&&dC(o,r).test(t))return n}return null}function mC(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 Ep(t){let e;try{e=wx(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"&&Tx(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function Tp(t,e){let r=[];if(t){let s=Wn(t,".claude","settings.local.json"),i=Ep(s);i&&r.push(i);let a=Wn(t,".claude","settings.json"),c=Ep(a);c&&r.push(c)}let n=e??Wn(Ex(),".claude","settings.json"),o=Ep(n);return o&&r.push(o),r}function $x(t,e,r){let n=[],o=a=>{let c;try{c=wx(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=uC(m);f&&f.tool===t&&d.push(f.glob)}return d};if(e){let a=o(Wn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(Wn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??Wn(Ex(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function $p(t,e,r=process.platform==="win32"){let n=mC(t);for(let o of n)for(let s of e){let i=fC(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function Px(t,e,r=process.platform==="win32"){let n=t.replace(/\\/g,"/");for(let o of e)for(let s of o)if(pC(s,r).test(n))return{denied:!0,matchedPattern:s};return{denied:!1}}var hC={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 gC(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 Rx(t,e){let r=hC[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(...gC(t)),n}function Pp(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
358
 
305
359
  stdout:
306
360
  ${n}
307
361
 
308
362
  stderr:
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(br(e))try{return JSON.parse(Zv(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
363
+ ${o}`}}var _C=process.ppid;function yC(){let t=process.ppid;return!(t!==_C||t===0||t===1)}function Ox(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??yC,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 xC}from"node:crypto";import{execFileSync as vC}from"node:child_process";function Cx(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=vC("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`__${xC("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}var pn=df(hI(import.meta.url)),pf=(()=>{for(let t of["../package.json","./package.json"]){let e=dn(pn,t);if(br(e))try{return JSON.parse(qv(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
310
364
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
311
- `)});var La=ha(),Na=ax(La),Be=new pa({name:"context-mode",version:lf});Be.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Be.server.setRequestHandler(In,async()=>({prompts:[]}));Be.server.setRequestHandler(On,async()=>({resources:[]}));Be.server.setRequestHandler(Cn,async()=>({resourceTemplates:[]}));var $s=new ms({runtimes:La,projectRoot:process.env.CLAUDE_PROJECT_DIR}),dn=null;function dI(t){try{let e=mn(Ma(),".claude","context-mode","sessions");if(!br(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(Ma(),".context-mode","content");return cI(n,{recursive:!0}),mn(n,`${r}.db`)}function co(){if(!dn){let t=pI();dn=new xa(t);try{let e=mn(Ma(),".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 wr(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=Na.join(", "),hI=ga()?" (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 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)+`
365
+ `)});var La=ya(),Na=lx(La),Be=new ha({name:"context-mode",version:pf});Be.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});Be.server.setRequestHandler(Cn,async()=>({prompts:[]}));Be.server.setRequestHandler(Rn,async()=>({resources:[]}));Be.server.setRequestHandler(On,async()=>({resourceTemplates:[]}));var Os=new ms({runtimes:La,projectRoot:process.env.CLAUDE_PROJECT_DIR}),ln=null;function _I(t){try{let e=fn(Ma(),".claude","context-mode","sessions");if(!br(e))return;let r=pI(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=fn(e,n);try{t.index({path:o,source:"session-events"}),dI(o)}catch{}}}catch{}}function yI(){let e=(process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.OPENCLAW_HOME||process.cwd()).replace(/\\/g,"/"),r=Hv("sha256").update(e).digest("hex").slice(0,16),n=fn(Ma(),".context-mode","content");return mI(n,{recursive:!0}),fn(n,`${r}.db`)}function ao(){if(!ln){let t=yI();ln=new Sa(t);try{let e=fn(Ma(),".context-mode","content");Sx(e,14),ln.cleanupStaleSources(14)}catch{}wp()}return _I(ln),ln}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 wr(t){ie.bytesIndexed+=t}function ff(t,e){try{let r=Tp(process.env.CLAUDE_PROJECT_DIR),n=$p(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 Fv(t,e,r){try{let n=Rx(t,e);if(n.length===0)return null;let o=Tp(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=$p(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 xI(t,e){try{let r=$x("Read",process.env.CLAUDE_PROJECT_DIR),n=Px(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 vI=Na.join(", "),kI=xa()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",SI="",bI="";function wI(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===SI){for(e.push(r),n++;n<t.length&&t[n]!==bI;)r++,n++;n<t.length&&n++}else r++,n++;return e}function Bv(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of wI(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)+`
312
366
  \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
367
 
314
- `)}Be.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}.
368
+ `)}function EI(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
369
+ (output cap reached \u2014 use search(queries: ["${i}"]) for details)
370
+ `);continue}let a=t.searchWithFallback(i,3,r,void 0,"exact");if(o.push(`## ${i}`),o.push(""),a.length>0){for(let c of a){let u=Bv(c.content,i,3e3,c.highlighted);o.push(`### ${c.title}`),o.push(u),o.push(""),s+=u.length+c.title.length}continue}o.push("No matching sections found."),o.push("")}return o.push("\n> **Tip:** Results are scoped to this batch only. To search across all indexed sources, use `ctx_search(queries: [...])`."),o}Be.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.${kI} Available: ${vI}.
315
371
 
316
372
  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
373
 
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=`
374
+ 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=ff(e,"execute");if(s)return s}else{let s=Fv(e,t,"execute");if(s)return s}try{let s=e;(t==="javascript"||t==="typescript")&&(s=`
319
375
  let __cm_net=0;
320
376
  // Report network bytes on process exit \u2014 works with both promise and callback patterns.
321
377
  // process.on('exit') fires after all I/O completes, unlike .finally() which fires
@@ -361,20 +417,20 @@ ${e}
361
417
  }
362
418
  __cm_main().catch(e=>{console.error(e);process.exitCode=1});${n?`
363
419
  setInterval(()=>{},2147483647);`:""}
364
- })(typeof require!=='undefined'?require:null);`);let i=await $s.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}
420
+ })(typeof require!=='undefined'?require:null);`);let i=await Os.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
421
 
366
422
  _(process backgrounded after ${r}ms \u2014 still running)_`}]}):u?V("ctx_execute",{content:[{type:"text",text:`${u}
367
423
 
368
424
  _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):V("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
369
425
 
370
426
  stderr:
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)>Aa?(wr(Buffer.byteLength(l)),V("ctx_execute",{content:[{type:"text",text:ja(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)>Aa?(wr(Buffer.byteLength(c)),V("ctx_execute",{content:[{type:"text",text:ja(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 Aa=5e3;function ja(t,e,r,n=5){let o=t.split(`
372
- `).length,s=Buffer.byteLength(t),i=co(),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(`
427
+ ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:u,output:l}=Pp({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(l)>Aa?(wr(Buffer.byteLength(l)),V("ctx_execute",{content:[{type:"text",text:ja(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)>Aa?(wr(Buffer.byteLength(c)),V("ctx_execute",{content:[{type:"text",text:ja(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 Aa=5e3;function ja(t,e,r,n=5){let o=t.split(`
428
+ `).length,s=Buffer.byteLength(t),i=ao(),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
429
  `)}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
430
  `)[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(`
375
431
  `)}Be.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
432
 
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 $s.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)>Aa?(wr(Buffer.byteLength(u)),V("ctx_execute_file",{content:[{type:"text",text:ja(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)>Aa?(wr(Buffer.byteLength(a)),V("ctx_execute_file",{content:[{type:"text",text:ja(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})}});Be.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.
433
+ 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=xI(t,"execute_file");if(s)return s;if(e==="shell"){let i=ff(r,"execute_file");if(i)return i}else{let i=Fv(r,e,"execute_file");if(i)return i}try{let i=await Os.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}=Pp({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>Aa?(wr(Buffer.byteLength(u)),V("ctx_execute_file",{content:[{type:"text",text:ja(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)>Aa?(wr(Buffer.byteLength(a)),V("ctx_execute_file",{content:[{type:"text",text:ja(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})}});Be.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
434
 
379
435
  WHEN TO USE:
380
436
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -385,23 +441,23 @@ WHEN TO USE:
385
441
  - Any content with code examples you may need to reference precisely
386
442
 
387
443
  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: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)wr(Buffer.byteLength(t));else if(e)try{let s=await import("fs");wr(s.readFileSync(e).byteLength)}catch{}let o=co().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}Be.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.
444
+ 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)wr(Buffer.byteLength(t));else if(e)try{let s=await import("fs");wr(s.readFileSync(e).byteLength)}catch{}let o=ao().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}
445
+ 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 un=0,cf=Date.now(),TI=6e4,Dv=3,Zv=8;function mf(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function $I(t){let e=mf(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}Be.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
446
 
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=co();if(e.getStats().chunks===0)return V("ctx_search",{content:[{type:"text",text:`Knowledge base is empty \u2014 no content has been indexed yet.
447
+ TIPS: 2-4 specific terms per query. Use 'source' to scope results.`,inputSchema:D.object({queries:D.preprocess(mf,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=ao();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
448
 
393
449
  ctx_search is a follow-up tool that queries previously indexed content. To gather and index content first, use:
394
450
  \u2022 ctx_batch_execute(commands, queries) \u2014 run commands, auto-index output, and search in one call
395
451
  \u2022 ctx_fetch_and_index(url) \u2014 fetch a URL, index it, then search with ctx_search
396
452
  \u2022 ctx_index(content, source) \u2014 manually index text content
397
453
 
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 f of n){if(l>u){d.push(`## ${f}
454
+ 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-cf>TI&&(un=0,cf=a),un++,un>Zv)return V("ctx_search",{content:[{type:"text",text:`BLOCKED: ${un} search calls in ${Math.round((a-cf)/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>Dv?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let f of n){if(l>u){d.push(`## ${f}
399
455
  (output cap reached)
400
456
  `);continue}let p=e.searchWithFallback(f,c,s,i);if(p.length===0){d.push(`## ${f}
401
- No results found.`);continue}let h=p.map((g,y)=>{let v=`--- [${g.source}] ---`,S=`### ${g.title}`,w=Hv(g.content,f,1500,g.highlighted);return`${v}
402
- ${S}
457
+ No results found.`);continue}let h=p.map((g,x)=>{let v=`--- [${g.source}] ---`,k=`### ${g.title}`,E=Bv(g.content,f,1500,g.highlighted);return`${v}
458
+ ${k}
403
459
 
404
- ${w}`}).join(`
460
+ ${E}`}).join(`
405
461
 
406
462
  `);d.push(`## ${f}
407
463
 
@@ -409,10 +465,10 @@ ${h}`),l+=h.length}let m=d.join(`
409
465
 
410
466
  ---
411
467
 
412
- `);if(ln>=jv&&(m+=`
468
+ `);if(un>=Dv&&(m+=`
413
469
 
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.`),m.trim().length===0){let f=e.listSources(),p=f.length>0?`
415
- Indexed sources: ${f.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:m}]})}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`
470
+ \u26A0 search call #${un}/${Zv} 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?`
471
+ Indexed sources: ${f.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:m}]})}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 uf=null,lf=null;function PI(){return uf||(uf=Uv(import.meta.url).resolve("turndown")),uf}function RI(){return lf||(lf=Uv(import.meta.url).resolve("turndown-plugin-gfm")),lf}function OI(t,e){let r=JSON.stringify(PI()),n=JSON.stringify(RI()),o=JSON.stringify(e);return`
416
472
  const TurndownService = require(${r});
417
473
  const { gfm } = require(${n});
418
474
  const fs = require('fs');
@@ -462,37 +518,35 @@ main();
462
518
 
463
519
  Better than WebFetch: preview is immediate, full content is searchable, raw HTML never enters context.
464
520
 
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=co(),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,V("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${m} (fresh, TTL: 24h).
521
+ 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=ao(),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,V("ctx_fetch_and_index",{content:[{type:"text",text:`Cached: **${i.label}** \u2014 ${i.chunkCount} sections, indexed ${m} (fresh, TTL: 24h).
466
522
  To refresh: call ctx_fetch_and_index again with \`force: true\`.
467
523
 
468
524
  You MUST call search() to answer questions about this content \u2014 this cached response contains no content.
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 $s.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=co(),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});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)+`
525
+ Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=fn(gI(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=OI(t,n),s=await Os.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=ao(),a=(s.stdout||"").trim(),c;try{c=qv(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});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)+`
470
526
 
471
527
  \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(`
472
- `);return V("ctx_fetch_and_index",{content:[{type:"text",text:f}]})}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{}}});Be.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.
528
+ `);return V("ctx_fetch_and_index",{content:[{type:"text",text:f}]})}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{fI(n)}catch{}}});Be.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.
473
529
 
474
530
  THIS IS THE PRIMARY TOOL. Use this instead of multiple execute() calls.
475
531
 
476
532
  One batch_execute call replaces 30+ execute calls + 10+ search calls.
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}
533
+ Provide all commands to run and all queries to search \u2014 everything happens in one round trip.`,inputSchema:D.object({commands:D.preprocess($I,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(mf,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=ff(n.command,"batch_execute");if(o)return o}try{let n=[],o=Date.now(),s=!1;for(let v of t){let k=Date.now()-o,E=r-k;if(E<=0){n.push(`# ${v.label}
478
534
 
479
535
  (skipped \u2014 batch timeout exceeded)
480
- `),s=!0;continue}let ce=await $s.execute({language:"shell",code:`${w.command} 2>&1`,timeout:ae}),rt=ce.stdout||"(no output)";if(n.push(`# ${w.label}
536
+ `),s=!0;continue}let C=await Os.execute({language:"shell",code:`${v.command} 2>&1`,timeout:E}),ye=C.stdout||"(no output)";if(n.push(`# ${v.label}
481
537
 
482
- ${rt}
483
- `),ce.timedOut){s=!0;let Dt=t.indexOf(w);for(let me=Dt+1;me<t.length;me++)n.push(`# ${t[me].label}
538
+ ${ye}
539
+ `),C.timedOut){s=!0;let be=t.indexOf(v);for(let st=be+1;st<t.length;st++)n.push(`# ${t[st].label}
484
540
 
485
541
  (skipped \u2014 batch timeout exceeded)
486
542
  `);break}}let i=n.join(`
487
543
  `),a=Buffer.byteLength(i),c=i.split(`
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});wr(a);let u=co(),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}
489
- (output cap reached \u2014 use search(queries: ["${w}"]) for details)
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 rt=Hv(ce.content,w,3e3,ce.highlighted),Dt=ae?` _(source: ${ce.source})_`:"";g.push(`### ${ce.title}${Dt}`),g.push(rt),g.push(""),y+=rt.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.`,"",...f,"",...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})}});Be.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,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=Dv("sha256").update(d).digest("hex").slice(0,16),f=Rx(),p=mn(Ma(),".claude","context-mode","sessions",`${m}${f}.db`);if(br(p)){let h=hs(),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 Qt=ce.get(me.category);if(Qt.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)+"..."),Qt.add(Ze)}}let rt={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"},Dt={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 Qt=rt[me.category]||me.category,Ze=ce.get(me.category),Ps=Ze?Array.from(Ze).join(", "):"",Da=Dt[me.category]||"Survives context resets";u.push(`| ${Qt} | ${me.cnt} | ${Ps} | ${Da} |`)}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}]})});Be.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=br(pn(fn,"package.json"))?fn:uf(fn),r=11,n=(Na.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${Na.length}/${r} (${n}%) \u2014 ${Na.join(", ")}`),ga()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");try{let i=await new ms({runtimes:La}).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=hs(),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 br(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
- `)}]})});Be.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=br(pn(fn,"package.json"))?fn:uf(fn),e=pn(t,"cli.bundle.mjs"),r=pn(t,"build","cli.js"),n;if(br(e))n=`node "${e}" upgrade`;else if(br(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=()=>{$s.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 ma;await Be.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>(Av(),Nv)),i=Be.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(La)}`),ga()||(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};
544
+ `).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});wr(a);let u=ao(),l=`batch:${t.map(v=>v.label).join(",").slice(0,80)}`,d=u.index({content:i,source:l}),m=u.getChunksBySource(d.sourceId),f=["## Indexed Sections",""],p=[];for(let v of m){let k=Buffer.byteLength(v.content);f.push(`- ${v.title} (${(k/1024).toFixed(1)}KB)`),p.push(v.title)}let h=EI(u,e,l),g=u.getDistinctiveTerms?u.getDistinctiveTerms(d.sourceId):[],x=[`Executed ${t.length} commands (${c} lines, ${(a/1024).toFixed(1)}KB). Indexed ${d.totalChunks} sections. Searched ${e.length} queries.`,"",...f,"",...h,g.length>0?`
545
+ Searchable terms for follow-up: ${g.join(", ")}`:""].join(`
546
+ `);return V("ctx_batch_execute",{content:[{type:"text",text:x}]})}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})}});Be.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,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=Hv("sha256").update(d).digest("hex").slice(0,16),f=Cx(),p=fn(Ma(),".claude","context-mode","sessions",`${m}${f}.db`);if(br(p)){let h=hs(),g=new h(p,{readonly:!0}),x=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(),k=g.prepare("SELECT compact_count FROM session_meta ORDER BY started_at DESC LIMIT 1").get(),E=g.prepare("SELECT event_count, consumed FROM session_resume ORDER BY created_at DESC LIMIT 1").get();if(x.cnt>0){let C=k?.compact_count??0,ye=g.prepare("SELECT category, type, data FROM session_events ORDER BY id DESC").all(),be=new Map;for(let Se of ye){be.has(Se.category)||be.set(Se.category,new Set);let Qt=be.get(Se.category);if(Qt.size<5){let Ze=Se.data;Se.category==="file"?Ze=Se.data.split("/").pop()||Se.data:Se.category==="prompt"&&(Ze=Ze.length>50?Ze.slice(0,47)+"...":Ze),Ze.length>40&&(Ze=Ze.slice(0,37)+"..."),Qt.add(Ze)}}let st={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"},co={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 Se of v){let Qt=st[Se.category]||Se.category,Ze=be.get(Se.category),Cs=Ze?Array.from(Ze).join(", "):"",Da=co[Se.category]||"Survives context resets";u.push(`| ${Qt} | ${Se.cnt} | ${Cs} | ${Da} |`)}u.push(`| **Total** | **${x.cnt}** | | **Zero knowledge lost on compact** |`),u.push(""),C>0?u.push(`Context has been compacted **${C} 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."),E&&!E.consumed&&u.push(`Resume snapshot ready (${E.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(`
547
+ `);return V("ctx_stats",{content:[{type:"text",text:l}]})});Be.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=br(dn(pn,"package.json"))?pn:df(pn),r=11,n=(Na.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${Na.length}/${r} (${n}%) \u2014 ${Na.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 ms({runtimes:La}).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=hs(),i=new s(":memory:");i.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),i.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=i.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();i.close(),a&&a.content==="hello world"?t.push("- [x] FTS5 / SQLite: PASS \u2014 native module works"):t.push("- [ ] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(s){t.push(`- [ ] FTS5 / SQLite: FAIL \u2014 ${s instanceof Error?s.message:s}`)}let o=dn(e,"hooks","pretooluse.mjs");return br(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${pf}`),V("ctx_doctor",{content:[{type:"text",text:t.join(`
548
+ `)}]})});Be.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=br(dn(pn,"package.json"))?pn:df(pn),e=dn(t,"cli.bundle.mjs"),r=dn(t,"build","cli.js"),n;if(br(e))n=`node "${e}" upgrade`;else if(br(r))n=`node "${r}" upgrade`;else{let s="https://github.com/mksglu/context-mode.git",i=["build","hooks","skills","scripts",".claude-plugin"],a=["start.mjs","server.bundle.mjs","cli.bundle.mjs","package.json"],c=['import{execFileSync}from"node:child_process";','import{cpSync,rmSync,existsSync,mkdtempSync}from"node:fs";','import{join}from"node:path";','import{tmpdir}from"node:os";',`const P=${JSON.stringify(t)};`,'const T=mkdtempSync(join(tmpdir(),"ctx-upgrade-"));',"try{",'console.log("- [x] Starting inline upgrade (no CLI found)");',`execFileSync("git",["clone","--depth","1","${s}",T],{stdio:"inherit"});`,'console.log("- [x] Cloned latest source");','execFileSync("npm",["install"],{cwd:T,stdio:"inherit"});','execFileSync("npm",["run","build"],{cwd:T,stdio:"inherit"});','console.log("- [x] Built from source");',...i.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{recursive:true,force:true});`),...a.map(d=>`if(existsSync(join(T,${JSON.stringify(d)})))cpSync(join(T,${JSON.stringify(d)}),join(P,${JSON.stringify(d)}),{force:true});`),'console.log("- [x] Copied build artifacts");','execFileSync("npm",["install","--production"],{cwd:P,stdio:"inherit"});','console.log("- [x] Installed production dependencies");','console.log("## context-mode upgrade complete");',"}catch(e){",'console.error("- [ ] Upgrade failed:",e.message);',"process.exit(1);","}finally{","try{rmSync(T,{recursive:true,force:true})}catch{}","}"].join(`
549
+ `),u=dn(t,".ctx-upgrade-inline.mjs"),{writeFileSync:l}=await import("node:fs");l(u,c),n=`node "${u}"`}let o=["## ctx-upgrade","","Run this command using your shell execution tool:","","```",n,"```","","After the command completes, display results as a markdown checklist:","- `[x]` for success, `[ ]` for failure","- Example format:"," ```"," ## context-mode upgrade"," - [x] Pulled latest from GitHub"," - [x] Built and installed v0.9.24"," - [x] npm global updated"," - [x] Hooks configured"," - [x] Doctor: all checks PASS"," ```","- Tell the user to restart their session to pick up the new version."].join(`
550
+ `);return V("ctx_upgrade",{content:[{type:"text",text:o}]})});async function CI(){let t=wp();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=()=>{Os.cleanupBackgrounded(),ln&&ln.close()},r=async()=>{e(),process.exit(0)};process.on("exit",e),process.on("SIGINT",()=>{r()}),process.on("SIGTERM",()=>{r()}),Ox({onShutdown:()=>r()});let n=new _a;await Be.connect(n);try{let{detectPlatform:o,getAdapter:s}=await Promise.resolve().then(()=>(Lv(),Mv)),i=Be.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${pf} running on stdio`),console.error(`Detected runtimes:
551
+ ${ux(La)}`),xa()||(console.error(`
552
+ Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}CI().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{Bv as extractSnippet,EI as formatBatchQueryResults,wI as positionsFromHighlight};