context-mode 1.0.93 → 1.0.94

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,30 +1,30 @@
1
1
  #!/usr/bin/env node
2
- var _k=Object.create;var Da=Object.defineProperty;var yk=Object.getOwnPropertyDescriptor;var xk=Object.getOwnPropertyNames;var vk=Object.getPrototypeOf,kk=Object.prototype.hasOwnProperty;var Sk=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var de=(t,e)=>()=>(t&&(e=t(t=0)),e);var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ze=(t,e)=>{for(var r in e)Da(t,r,{get:e[r],enumerable:!0})},bk=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of xk(e))!kk.call(t,o)&&o!==r&&Da(t,o,{get:()=>e[o],enumerable:!(n=yk(e,o))||n.enumerable});return t};var Of=(t,e,r)=>(r=t!=null?_k(vk(t)):{},bk(e||!t||!t.__esModule?Da(r,"default",{value:t,enumerable:!0}):r,t));var Bo=T(re=>{"use strict";Object.defineProperty(re,"__esModule",{value:!0});re.regexpCode=re.getEsmExportName=re.getProperty=re.safeStringify=re.stringify=re.strConcat=re.addCodeArg=re.str=re._=re.nil=re._Code=re.Name=re.IDENTIFIER=re._CodeOrName=void 0;var qo=class{};re._CodeOrName=qo;re.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var rn=class extends qo{constructor(e){if(super(),!re.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}}};re.Name=rn;var pt=class extends qo{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 rn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};re._Code=pt;re.nil=new pt("");function Eg(t,...e){let r=[t[0]],n=0;for(;n<e.length;)Sl(r,e[n]),r.push(t[++n]);return new pt(r)}re._=Eg;var kl=new pt("+");function Tg(t,...e){let r=[Fo(t[0])],n=0;for(;n<e.length;)r.push(kl),Sl(r,e[n]),r.push(kl,Fo(t[++n]));return vT(r),new pt(r)}re.str=Tg;function Sl(t,e){e instanceof pt?t.push(...e._items):e instanceof rn?t.push(e):t.push(bT(e))}re.addCodeArg=Sl;function vT(t){let e=1;for(;e<t.length-1;){if(t[e]===kl){let r=kT(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function kT(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof rn||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 rn))return`"${t}${e.slice(1)}`}function ST(t,e){return e.emptyStr()?t:t.emptyStr()?e:Tg`${t}${e}`}re.strConcat=ST;function bT(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Fo(Array.isArray(t)?t.join(","):t)}function wT(t){return new pt(Fo(t))}re.stringify=wT;function Fo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}re.safeStringify=Fo;function ET(t){return typeof t=="string"&&re.IDENTIFIER.test(t)?new pt(`.${t}`):Eg`[${t}]`}re.getProperty=ET;function TT(t){if(typeof t=="string"&&re.IDENTIFIER.test(t))return new pt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}re.getEsmExportName=TT;function $T(t){return new pt(t.toString())}re.regexpCode=$T});var El=T(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.ValueScope=tt.ValueScopeName=tt.Scope=tt.varKinds=tt.UsedValueState=void 0;var et=Bo(),bl=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Pi;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Pi||(tt.UsedValueState=Pi={}));tt.varKinds={const:new et.Name("const"),let:new et.Name("let"),var:new et.Name("var")};var Ri=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof et.Name?e:this.name(e)}name(e){return new et.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}}};tt.Scope=Ri;var Oi=class extends et.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,et._)`.${new et.Name(r)}[${n}]`}};tt.ValueScopeName=Oi;var PT=(0,et._)`\n`,wl=class extends Ri{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?PT:et.nil}}get(){return this._scope}name(e){return new Oi(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,et._)`${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=et.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,Pi.Started);let l=r(u);if(l){let d=this.opts.es5?tt.varKinds.var:tt.varKinds.const;s=(0,et._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,et._)`${s}${l}${this.opts._n}`;else throw new bl(u);c.set(u,Pi.Completed)})}return s}};tt.ValueScope=wl});var F=T(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.or=B.and=B.not=B.CodeGen=B.operators=B.varKinds=B.ValueScopeName=B.ValueScope=B.Scope=B.Name=B.regexpCode=B.stringify=B.getProperty=B.nil=B.strConcat=B.str=B._=void 0;var Q=Bo(),Tt=El(),gr=Bo();Object.defineProperty(B,"_",{enumerable:!0,get:function(){return gr._}});Object.defineProperty(B,"str",{enumerable:!0,get:function(){return gr.str}});Object.defineProperty(B,"strConcat",{enumerable:!0,get:function(){return gr.strConcat}});Object.defineProperty(B,"nil",{enumerable:!0,get:function(){return gr.nil}});Object.defineProperty(B,"getProperty",{enumerable:!0,get:function(){return gr.getProperty}});Object.defineProperty(B,"stringify",{enumerable:!0,get:function(){return gr.stringify}});Object.defineProperty(B,"regexpCode",{enumerable:!0,get:function(){return gr.regexpCode}});Object.defineProperty(B,"Name",{enumerable:!0,get:function(){return gr.Name}});var zi=El();Object.defineProperty(B,"Scope",{enumerable:!0,get:function(){return zi.Scope}});Object.defineProperty(B,"ValueScope",{enumerable:!0,get:function(){return zi.ValueScope}});Object.defineProperty(B,"ValueScopeName",{enumerable:!0,get:function(){return zi.ValueScopeName}});Object.defineProperty(B,"varKinds",{enumerable:!0,get:function(){return zi.varKinds}});B.operators={GT:new Q._Code(">"),GTE:new Q._Code(">="),LT:new Q._Code("<"),LTE:new Q._Code("<="),EQ:new Q._Code("==="),NEQ:new Q._Code("!=="),NOT:new Q._Code("!"),OR:new Q._Code("||"),AND:new Q._Code("&&"),ADD:new Q._Code("+")};var Qt=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},Tl=class extends Qt{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?Tt.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=Un(this.rhs,e,r)),this}get names(){return this.rhs instanceof Q._CodeOrName?this.rhs.names:{}}},Ci=class extends Qt{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 Q.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Un(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Q.Name?{}:{...this.lhs.names};return Ni(e,this.rhs)}},$l=class extends Ci{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Pl=class extends Qt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Rl=class extends Qt{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Ol=class extends Qt{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Cl=class extends Qt{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=Un(this.code,e,r),this}get names(){return this.code instanceof Q._CodeOrName?this.code.names:{}}},Vo=class extends Qt{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)||(RT(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>sn(e,r.names),{})}},er=class extends Vo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Il=class extends Vo{},Zn=class extends er{};Zn.kind="else";var nn=class t extends er{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($g(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=Un(this.condition,e,r),this}get names(){let e=super.names;return Ni(e,this.condition),this.else&&sn(e,this.else.names),e}};nn.kind="if";var on=class extends er{};on.kind="for";var Nl=class extends on{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=Un(this.iteration,e,r),this}get names(){return sn(super.names,this.iteration.names)}},zl=class extends on{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?Tt.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=Ni(super.names,this.from);return Ni(e,this.to)}},Ii=class extends on{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=Un(this.iterable,e,r),this}get names(){return sn(super.names,this.iterable.names)}},Ko=class extends er{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)}};Ko.kind="func";var Wo=class extends Vo{render(e){return"return "+super.render(e)}};Wo.kind="return";var Al=class extends er{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&&sn(e,this.catch.names),this.finally&&sn(e,this.finally.names),e}},Jo=class extends er{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Jo.kind="catch";var Go=class extends er{render(e){return"finally"+super.render(e)}};Go.kind="finally";var jl=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
- `:""},this._extScope=e,this._scope=new Tt.Scope({parent:e}),this._nodes=[new Il]}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 Tl(e,s,n)),s}const(e,r,n){return this._def(Tt.varKinds.const,e,r,n)}let(e,r,n){return this._def(Tt.varKinds.let,e,r,n)}var(e,r,n){return this._def(Tt.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Ci(e,r,n))}add(e,r){return this._leafNode(new $l(e,B.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Q.nil&&this._leafNode(new Cl(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,Q.addCodeArg)(r,o));return r.push("}"),new Q._Code(r)}if(e,r,n){if(this._blockNode(new nn(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 nn(e))}else(){return this._elseNode(new Zn)}endIf(){return this._endBlockNode(nn,Zn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new Nl(e),r)}forRange(e,r,n,o,s=this.opts.es5?Tt.varKinds.var:Tt.varKinds.let){let i=this._scope.toName(e);return this._for(new zl(s,i,r,n),()=>o(i))}forOf(e,r,n,o=Tt.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof Q.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Q._)`${i}.length`,a=>{this.var(s,(0,Q._)`${i}[${a}]`),n(s)})}return this._for(new Ii("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?Tt.varKinds.var:Tt.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Q._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Ii("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(on)}label(e){return this._leafNode(new Pl(e))}break(e){return this._leafNode(new Rl(e))}return(e){let r=new Wo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Wo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new Al;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Jo(s),r(s)}return n&&(this._currNode=o.finally=new Go,this.code(n)),this._endBlockNode(Jo,Go)}throw(e){return this._leafNode(new Ol(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=Q.nil,n,o){return this._blockNode(new Ko(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Ko)}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 nn))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};B.CodeGen=jl;function sn(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ni(t,e){return e instanceof Q._CodeOrName?sn(t,e.names):t}function Un(t,e,r){if(t instanceof Q.Name)return n(t);if(!o(t))return t;return new Q._Code(t._items.reduce((s,i)=>(i instanceof Q.Name&&(i=n(i)),i instanceof Q._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 Q._Code&&s._items.some(i=>i instanceof Q.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function RT(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function $g(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Q._)`!${Ml(t)}`}B.not=$g;var OT=Pg(B.operators.AND);function CT(...t){return t.reduce(OT)}B.and=CT;var IT=Pg(B.operators.OR);function NT(...t){return t.reduce(IT)}B.or=NT;function Pg(t){return(e,r)=>e===Q.nil?r:r===Q.nil?e:(0,Q._)`${Ml(e)} ${t} ${Ml(r)}`}function Ml(t){return t instanceof Q.Name?t:(0,Q._)`(${t})`}});var ee=T(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.checkStrictMode=V.getErrorPath=V.Type=V.useFunc=V.setEvaluated=V.evaluatedPropsToName=V.mergeEvaluated=V.eachItem=V.unescapeJsonPointer=V.escapeJsonPointer=V.escapeFragment=V.unescapeFragment=V.schemaRefOrVal=V.schemaHasRulesButRef=V.schemaHasRules=V.checkUnknownRules=V.alwaysValidSchema=V.toHash=void 0;var ie=F(),zT=Bo();function AT(t){let e={};for(let r of t)e[r]=!0;return e}V.toHash=AT;function jT(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Cg(t,e),!Ig(e,t.self.RULES.all))}V.alwaysValidSchema=jT;function Cg(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let o=n.RULES.keywords;for(let s in e)o[s]||Ag(t,`unknown keyword: "${s}"`)}V.checkUnknownRules=Cg;function Ig(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}V.schemaHasRules=Ig;function MT(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}V.schemaHasRulesButRef=MT;function DT({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ie._)`${r}`}return(0,ie._)`${t}${e}${(0,ie.getProperty)(n)}`}V.schemaRefOrVal=DT;function LT(t){return Ng(decodeURIComponent(t))}V.unescapeFragment=LT;function ZT(t){return encodeURIComponent(Ll(t))}V.escapeFragment=ZT;function Ll(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}V.escapeJsonPointer=Ll;function Ng(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}V.unescapeJsonPointer=Ng;function UT(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}V.eachItem=UT;function Rg({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof ie.Name?(s instanceof ie.Name?t(o,s,i):e(o,s,i),i):s instanceof ie.Name?(e(o,i,s),s):r(s,i);return a===ie.Name&&!(c instanceof ie.Name)?n(o,c):c}}V.mergeEvaluated={props:Rg({mergeNames:(t,e,r)=>t.if((0,ie._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ie._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ie._)`${r} || {}`).code((0,ie._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ie._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ie._)`${r} || {}`),Zl(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:zg}),items:Rg({mergeNames:(t,e,r)=>t.if((0,ie._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ie._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ie._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ie._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function zg(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ie._)`{}`);return e!==void 0&&Zl(t,r,e),r}V.evaluatedPropsToName=zg;function Zl(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ie._)`${e}${(0,ie.getProperty)(n)}`,!0))}V.setEvaluated=Zl;var Og={};function HT(t,e){return t.scopeValue("func",{ref:e,code:Og[e.code]||(Og[e.code]=new zT._Code(e.code))})}V.useFunc=HT;var Dl;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Dl||(V.Type=Dl={}));function qT(t,e,r){if(t instanceof ie.Name){let n=e===Dl.Num;return r?n?(0,ie._)`"[" + ${t} + "]"`:(0,ie._)`"['" + ${t} + "']"`:n?(0,ie._)`"/" + ${t}`:(0,ie._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ie.getProperty)(t).toString():"/"+Ll(t)}V.getErrorPath=qT;function Ag(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}V.checkStrictMode=Ag});var tr=T(Ul=>{"use strict";Object.defineProperty(Ul,"__esModule",{value:!0});var He=F(),FT={data:new He.Name("data"),valCxt:new He.Name("valCxt"),instancePath:new He.Name("instancePath"),parentData:new He.Name("parentData"),parentDataProperty:new He.Name("parentDataProperty"),rootData:new He.Name("rootData"),dynamicAnchors:new He.Name("dynamicAnchors"),vErrors:new He.Name("vErrors"),errors:new He.Name("errors"),this:new He.Name("this"),self:new He.Name("self"),scope:new He.Name("scope"),json:new He.Name("json"),jsonPos:new He.Name("jsonPos"),jsonLen:new He.Name("jsonLen"),jsonPart:new He.Name("jsonPart")};Ul.default=FT});var Yo=T(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.extendErrors=qe.resetErrorsCount=qe.reportExtraError=qe.reportError=qe.keyword$DataError=qe.keywordError=void 0;var te=F(),Ai=ee(),Ke=tr();qe.keywordError={message:({keyword:t})=>(0,te.str)`must pass "${t}" keyword validation`};qe.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,te.str)`"${t}" keyword must be ${e} ($data)`:(0,te.str)`"${t}" keyword is invalid ($data)`};function BT(t,e=qe.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Dg(t,e,r);n??(i||a)?jg(s,c):Mg(o,(0,te._)`[${c}]`)}qe.reportError=BT;function VT(t,e=qe.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Dg(t,e,r);jg(o,a),s||i||Mg(n,Ke.default.vErrors)}qe.reportExtraError=VT;function KT(t,e){t.assign(Ke.default.errors,e),t.if((0,te._)`${Ke.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,te._)`${Ke.default.vErrors}.length`,e),()=>t.assign(Ke.default.vErrors,null)))}qe.resetErrorsCount=KT;function WT({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,Ke.default.errors,a=>{t.const(i,(0,te._)`${Ke.default.vErrors}[${a}]`),t.if((0,te._)`${i}.instancePath === undefined`,()=>t.assign((0,te._)`${i}.instancePath`,(0,te.strConcat)(Ke.default.instancePath,s.errorPath))),t.assign((0,te._)`${i}.schemaPath`,(0,te.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,te._)`${i}.schema`,r),t.assign((0,te._)`${i}.data`,n))})}qe.extendErrors=WT;function jg(t,e){let r=t.const("err",e);t.if((0,te._)`${Ke.default.vErrors} === null`,()=>t.assign(Ke.default.vErrors,(0,te._)`[${r}]`),(0,te._)`${Ke.default.vErrors}.push(${r})`),t.code((0,te._)`${Ke.default.errors}++`)}function Mg(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,te._)`new ${t.ValidationError}(${e})`):(r.assign((0,te._)`${n}.errors`,e),r.return(!1))}var an={keyword:new te.Name("keyword"),schemaPath:new te.Name("schemaPath"),params:new te.Name("params"),propertyName:new te.Name("propertyName"),message:new te.Name("message"),schema:new te.Name("schema"),parentSchema:new te.Name("parentSchema")};function Dg(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,te._)`{}`:JT(t,e,r)}function JT(t,e,r={}){let{gen:n,it:o}=t,s=[GT(o,r),YT(t,r)];return XT(t,e,s),n.object(...s)}function GT({errorPath:t},{instancePath:e}){let r=e?(0,te.str)`${t}${(0,Ai.getErrorPath)(e,Ai.Type.Str)}`:t;return[Ke.default.instancePath,(0,te.strConcat)(Ke.default.instancePath,r)]}function YT({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,te.str)`${e}/${t}`;return r&&(o=(0,te.str)`${o}${(0,Ai.getErrorPath)(r,Ai.Type.Str)}`),[an.schemaPath,o]}function XT(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([an.keyword,o],[an.params,typeof e=="function"?e(t):e||(0,te._)`{}`]),c.messages&&n.push([an.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([an.schema,i],[an.parentSchema,(0,te._)`${l}${d}`],[Ke.default.data,s]),u&&n.push([an.propertyName,u])}});var Zg=T(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.boolOrEmptySchema=Hn.topBoolOrEmptySchema=void 0;var QT=Yo(),e0=F(),t0=tr(),r0={message:"boolean schema is false"};function n0(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Lg(t,!1):typeof r=="object"&&r.$async===!0?e.return(t0.default.data):(e.assign((0,e0._)`${n}.errors`,null),e.return(!0))}Hn.topBoolOrEmptySchema=n0;function o0(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Lg(t)):r.var(e,!0)}Hn.boolOrEmptySchema=o0;function Lg(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,QT.reportError)(o,r0,void 0,e)}});var Hl=T(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.getRules=qn.isJSONType=void 0;var s0=["string","number","integer","boolean","null","object","array"],i0=new Set(s0);function a0(t){return typeof t=="string"&&i0.has(t)}qn.isJSONType=a0;function c0(){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:{}}}qn.getRules=c0});var ql=T(_r=>{"use strict";Object.defineProperty(_r,"__esModule",{value:!0});_r.shouldUseRule=_r.shouldUseGroup=_r.schemaHasRulesForType=void 0;function u0({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Ug(t,n)}_r.schemaHasRulesForType=u0;function Ug(t,e){return e.rules.some(r=>Hg(t,r))}_r.shouldUseGroup=Ug;function Hg(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))}_r.shouldUseRule=Hg});var Xo=T(Fe=>{"use strict";Object.defineProperty(Fe,"__esModule",{value:!0});Fe.reportTypeError=Fe.checkDataTypes=Fe.checkDataType=Fe.coerceAndCheckDataType=Fe.getJSONTypes=Fe.getSchemaTypes=Fe.DataType=void 0;var l0=Hl(),d0=ql(),p0=Yo(),H=F(),qg=ee(),Fn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Fn||(Fe.DataType=Fn={}));function f0(t){let e=Fg(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}Fe.getSchemaTypes=f0;function Fg(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(l0.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Fe.getJSONTypes=Fg;function m0(t,e){let{gen:r,data:n,opts:o}=t,s=h0(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,d0.schemaHasRulesForType)(t,e[0]));if(i){let a=Bl(e,n,o.strictNumbers,Fn.Wrong);r.if(a,()=>{s.length?g0(t,e,s):Vl(t)})}return i}Fe.coerceAndCheckDataType=m0;var Bg=new Set(["string","number","integer","boolean","null"]);function h0(t,e){return e?t.filter(r=>Bg.has(r)||e==="array"&&r==="array"):[]}function g0(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,H._)`typeof ${o}`),a=n.let("coerced",(0,H._)`undefined`);s.coerceTypes==="array"&&n.if((0,H._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,H._)`${o}[0]`).assign(i,(0,H._)`typeof ${o}`).if(Bl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,H._)`${a} !== undefined`);for(let u of r)(Bg.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Vl(t),n.endIf(),n.if((0,H._)`${a} !== undefined`,()=>{n.assign(o,a),_0(t,a)});function c(u){switch(u){case"string":n.elseIf((0,H._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,H._)`"" + ${o}`).elseIf((0,H._)`${o} === null`).assign(a,(0,H._)`""`);return;case"number":n.elseIf((0,H._)`${i} == "boolean" || ${o} === null
2
+ var _k=Object.create;var La=Object.defineProperty;var yk=Object.getOwnPropertyDescriptor;var xk=Object.getOwnPropertyNames;var vk=Object.getPrototypeOf,kk=Object.prototype.hasOwnProperty;var Sk=(t=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(t,{get:(e,r)=>(typeof require<"u"?require:e)[r]}):t)(function(t){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+t+'" is not supported')});var pe=(t,e)=>()=>(t&&(e=t(t=0)),e);var T=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Ze=(t,e)=>{for(var r in e)La(t,r,{get:e[r],enumerable:!0})},bk=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of xk(e))!kk.call(t,o)&&o!==r&&La(t,o,{get:()=>e[o],enumerable:!(n=yk(e,o))||n.enumerable});return t};var Of=(t,e,r)=>(r=t!=null?_k(vk(t)):{},bk(e||!t||!t.__esModule?La(r,"default",{value:t,enumerable:!0}):r,t));var Bo=T(re=>{"use strict";Object.defineProperty(re,"__esModule",{value:!0});re.regexpCode=re.getEsmExportName=re.getProperty=re.safeStringify=re.stringify=re.strConcat=re.addCodeArg=re.str=re._=re.nil=re._Code=re.Name=re.IDENTIFIER=re._CodeOrName=void 0;var qo=class{};re._CodeOrName=qo;re.IDENTIFIER=/^[a-z$_][a-z$_0-9]*$/i;var nn=class extends qo{constructor(e){if(super(),!re.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}}};re.Name=nn;var pt=class extends qo{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 nn&&(r[n.str]=(r[n.str]||0)+1),r),{})}};re._Code=pt;re.nil=new pt("");function Eg(t,...e){let r=[t[0]],n=0;for(;n<e.length;)bl(r,e[n]),r.push(t[++n]);return new pt(r)}re._=Eg;var Sl=new pt("+");function Tg(t,...e){let r=[Fo(t[0])],n=0;for(;n<e.length;)r.push(Sl),bl(r,e[n]),r.push(Sl,Fo(t[++n]));return vT(r),new pt(r)}re.str=Tg;function bl(t,e){e instanceof pt?t.push(...e._items):e instanceof nn?t.push(e):t.push(bT(e))}re.addCodeArg=bl;function vT(t){let e=1;for(;e<t.length-1;){if(t[e]===Sl){let r=kT(t[e-1],t[e+1]);if(r!==void 0){t.splice(e-1,3,r);continue}t[e++]="+"}e++}}function kT(t,e){if(e==='""')return t;if(t==='""')return e;if(typeof t=="string")return e instanceof nn||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 nn))return`"${t}${e.slice(1)}`}function ST(t,e){return e.emptyStr()?t:t.emptyStr()?e:Tg`${t}${e}`}re.strConcat=ST;function bT(t){return typeof t=="number"||typeof t=="boolean"||t===null?t:Fo(Array.isArray(t)?t.join(","):t)}function wT(t){return new pt(Fo(t))}re.stringify=wT;function Fo(t){return JSON.stringify(t).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}re.safeStringify=Fo;function ET(t){return typeof t=="string"&&re.IDENTIFIER.test(t)?new pt(`.${t}`):Eg`[${t}]`}re.getProperty=ET;function TT(t){if(typeof t=="string"&&re.IDENTIFIER.test(t))return new pt(`${t}`);throw new Error(`CodeGen: invalid export name: ${t}, use explicit $id name mapping`)}re.getEsmExportName=TT;function $T(t){return new pt(t.toString())}re.regexpCode=$T});var Tl=T(tt=>{"use strict";Object.defineProperty(tt,"__esModule",{value:!0});tt.ValueScope=tt.ValueScopeName=tt.Scope=tt.varKinds=tt.UsedValueState=void 0;var et=Bo(),wl=class extends Error{constructor(e){super(`CodeGen: "code" for ${e} not defined`),this.value=e.value}},Pi;(function(t){t[t.Started=0]="Started",t[t.Completed=1]="Completed"})(Pi||(tt.UsedValueState=Pi={}));tt.varKinds={const:new et.Name("const"),let:new et.Name("let"),var:new et.Name("var")};var Ri=class{constructor({prefixes:e,parent:r}={}){this._names={},this._prefixes=e,this._parent=r}toName(e){return e instanceof et.Name?e:this.name(e)}name(e){return new et.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}}};tt.Scope=Ri;var Oi=class extends et.Name{constructor(e,r){super(r),this.prefix=e}setValue(e,{property:r,itemIndex:n}){this.value=e,this.scopePath=(0,et._)`.${new et.Name(r)}[${n}]`}};tt.ValueScopeName=Oi;var PT=(0,et._)`\n`,El=class extends Ri{constructor(e){super(e),this._values={},this._scope=e.scope,this.opts={...e,_n:e.lines?PT:et.nil}}get(){return this._scope}name(e){return new Oi(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,et._)`${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=et.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,Pi.Started);let l=r(u);if(l){let d=this.opts.es5?tt.varKinds.var:tt.varKinds.const;s=(0,et._)`${s}${d} ${u} = ${l};${this.opts._n}`}else if(l=o?.(u))s=(0,et._)`${s}${l}${this.opts._n}`;else throw new wl(u);c.set(u,Pi.Completed)})}return s}};tt.ValueScope=El});var F=T(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.or=B.and=B.not=B.CodeGen=B.operators=B.varKinds=B.ValueScopeName=B.ValueScope=B.Scope=B.Name=B.regexpCode=B.stringify=B.getProperty=B.nil=B.strConcat=B.str=B._=void 0;var Q=Bo(),$t=Tl(),yr=Bo();Object.defineProperty(B,"_",{enumerable:!0,get:function(){return yr._}});Object.defineProperty(B,"str",{enumerable:!0,get:function(){return yr.str}});Object.defineProperty(B,"strConcat",{enumerable:!0,get:function(){return yr.strConcat}});Object.defineProperty(B,"nil",{enumerable:!0,get:function(){return yr.nil}});Object.defineProperty(B,"getProperty",{enumerable:!0,get:function(){return yr.getProperty}});Object.defineProperty(B,"stringify",{enumerable:!0,get:function(){return yr.stringify}});Object.defineProperty(B,"regexpCode",{enumerable:!0,get:function(){return yr.regexpCode}});Object.defineProperty(B,"Name",{enumerable:!0,get:function(){return yr.Name}});var zi=Tl();Object.defineProperty(B,"Scope",{enumerable:!0,get:function(){return zi.Scope}});Object.defineProperty(B,"ValueScope",{enumerable:!0,get:function(){return zi.ValueScope}});Object.defineProperty(B,"ValueScopeName",{enumerable:!0,get:function(){return zi.ValueScopeName}});Object.defineProperty(B,"varKinds",{enumerable:!0,get:function(){return zi.varKinds}});B.operators={GT:new Q._Code(">"),GTE:new Q._Code(">="),LT:new Q._Code("<"),LTE:new Q._Code("<="),EQ:new Q._Code("==="),NEQ:new Q._Code("!=="),NOT:new Q._Code("!"),OR:new Q._Code("||"),AND:new Q._Code("&&"),ADD:new Q._Code("+")};var er=class{optimizeNodes(){return this}optimizeNames(e,r){return this}},$l=class extends er{constructor(e,r,n){super(),this.varKind=e,this.name=r,this.rhs=n}render({es5:e,_n:r}){let n=e?$t.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=Un(this.rhs,e,r)),this}get names(){return this.rhs instanceof Q._CodeOrName?this.rhs.names:{}}},Ci=class extends er{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 Q.Name&&!e[this.lhs.str]&&!this.sideEffects))return this.rhs=Un(this.rhs,e,r),this}get names(){let e=this.lhs instanceof Q.Name?{}:{...this.lhs.names};return Ni(e,this.rhs)}},Pl=class extends Ci{constructor(e,r,n,o){super(e,n,o),this.op=r}render({_n:e}){return`${this.lhs} ${this.op}= ${this.rhs};`+e}},Rl=class extends er{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`${this.label}:`+e}},Ol=class extends er{constructor(e){super(),this.label=e,this.names={}}render({_n:e}){return`break${this.label?` ${this.label}`:""};`+e}},Cl=class extends er{constructor(e){super(),this.error=e}render({_n:e}){return`throw ${this.error};`+e}get names(){return this.error.names}},Il=class extends er{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=Un(this.code,e,r),this}get names(){return this.code instanceof Q._CodeOrName?this.code.names:{}}},Vo=class extends er{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)||(RT(e,s.names),n.splice(o,1))}return n.length>0?this:void 0}get names(){return this.nodes.reduce((e,r)=>an(e,r.names),{})}},tr=class extends Vo{render(e){return"{"+e._n+super.render(e)+"}"+e._n}},Nl=class extends Vo{},Zn=class extends tr{};Zn.kind="else";var on=class t extends tr{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($g(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=Un(this.condition,e,r),this}get names(){let e=super.names;return Ni(e,this.condition),this.else&&an(e,this.else.names),e}};on.kind="if";var sn=class extends tr{};sn.kind="for";var zl=class extends sn{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=Un(this.iteration,e,r),this}get names(){return an(super.names,this.iteration.names)}},Al=class extends sn{constructor(e,r,n,o){super(),this.varKind=e,this.name=r,this.from=n,this.to=o}render(e){let r=e.es5?$t.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=Ni(super.names,this.from);return Ni(e,this.to)}},Ii=class extends sn{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=Un(this.iterable,e,r),this}get names(){return an(super.names,this.iterable.names)}},Ko=class extends tr{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)}};Ko.kind="func";var Wo=class extends Vo{render(e){return"return "+super.render(e)}};Wo.kind="return";var jl=class extends tr{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&&an(e,this.catch.names),this.finally&&an(e,this.finally.names),e}},Jo=class extends tr{constructor(e){super(),this.error=e}render(e){return`catch(${this.error})`+super.render(e)}};Jo.kind="catch";var Go=class extends tr{render(e){return"finally"+super.render(e)}};Go.kind="finally";var Ml=class{constructor(e,r={}){this._values={},this._blockStarts=[],this._constants={},this.opts={...r,_n:r.lines?`
3
+ `:""},this._extScope=e,this._scope=new $t.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 $l(e,s,n)),s}const(e,r,n){return this._def($t.varKinds.const,e,r,n)}let(e,r,n){return this._def($t.varKinds.let,e,r,n)}var(e,r,n){return this._def($t.varKinds.var,e,r,n)}assign(e,r,n){return this._leafNode(new Ci(e,r,n))}add(e,r){return this._leafNode(new Pl(e,B.operators.ADD,r))}code(e){return typeof e=="function"?e():e!==Q.nil&&this._leafNode(new Il(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,Q.addCodeArg)(r,o));return r.push("}"),new Q._Code(r)}if(e,r,n){if(this._blockNode(new on(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 on(e))}else(){return this._elseNode(new Zn)}endIf(){return this._endBlockNode(on,Zn)}_for(e,r){return this._blockNode(e),r&&this.code(r).endFor(),this}for(e,r){return this._for(new zl(e),r)}forRange(e,r,n,o,s=this.opts.es5?$t.varKinds.var:$t.varKinds.let){let i=this._scope.toName(e);return this._for(new Al(s,i,r,n),()=>o(i))}forOf(e,r,n,o=$t.varKinds.const){let s=this._scope.toName(e);if(this.opts.es5){let i=r instanceof Q.Name?r:this.var("_arr",r);return this.forRange("_i",0,(0,Q._)`${i}.length`,a=>{this.var(s,(0,Q._)`${i}[${a}]`),n(s)})}return this._for(new Ii("of",o,s,r),()=>n(s))}forIn(e,r,n,o=this.opts.es5?$t.varKinds.var:$t.varKinds.const){if(this.opts.ownProperties)return this.forOf(e,(0,Q._)`Object.keys(${r})`,n);let s=this._scope.toName(e);return this._for(new Ii("in",o,s,r),()=>n(s))}endFor(){return this._endBlockNode(sn)}label(e){return this._leafNode(new Rl(e))}break(e){return this._leafNode(new Ol(e))}return(e){let r=new Wo;if(this._blockNode(r),this.code(e),r.nodes.length!==1)throw new Error('CodeGen: "return" should have one node');return this._endBlockNode(Wo)}try(e,r,n){if(!r&&!n)throw new Error('CodeGen: "try" without "catch" and "finally"');let o=new jl;if(this._blockNode(o),this.code(e),r){let s=this.name("e");this._currNode=o.catch=new Jo(s),r(s)}return n&&(this._currNode=o.finally=new Go,this.code(n)),this._endBlockNode(Jo,Go)}throw(e){return this._leafNode(new Cl(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=Q.nil,n,o){return this._blockNode(new Ko(e,r,n)),o&&this.code(o).endFunc(),this}endFunc(){return this._endBlockNode(Ko)}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 on))throw new Error('CodeGen: "else" without "if"');return this._currNode=r.else=e,this}get _root(){return this._nodes[0]}get _currNode(){let e=this._nodes;return e[e.length-1]}set _currNode(e){let r=this._nodes;r[r.length-1]=e}};B.CodeGen=Ml;function an(t,e){for(let r in e)t[r]=(t[r]||0)+(e[r]||0);return t}function Ni(t,e){return e instanceof Q._CodeOrName?an(t,e.names):t}function Un(t,e,r){if(t instanceof Q.Name)return n(t);if(!o(t))return t;return new Q._Code(t._items.reduce((s,i)=>(i instanceof Q.Name&&(i=n(i)),i instanceof Q._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 Q._Code&&s._items.some(i=>i instanceof Q.Name&&e[i.str]===1&&r[i.str]!==void 0)}}function RT(t,e){for(let r in e)t[r]=(t[r]||0)-(e[r]||0)}function $g(t){return typeof t=="boolean"||typeof t=="number"||t===null?!t:(0,Q._)`!${Dl(t)}`}B.not=$g;var OT=Pg(B.operators.AND);function CT(...t){return t.reduce(OT)}B.and=CT;var IT=Pg(B.operators.OR);function NT(...t){return t.reduce(IT)}B.or=NT;function Pg(t){return(e,r)=>e===Q.nil?r:r===Q.nil?e:(0,Q._)`${Dl(e)} ${t} ${Dl(r)}`}function Dl(t){return t instanceof Q.Name?t:(0,Q._)`(${t})`}});var ee=T(V=>{"use strict";Object.defineProperty(V,"__esModule",{value:!0});V.checkStrictMode=V.getErrorPath=V.Type=V.useFunc=V.setEvaluated=V.evaluatedPropsToName=V.mergeEvaluated=V.eachItem=V.unescapeJsonPointer=V.escapeJsonPointer=V.escapeFragment=V.unescapeFragment=V.schemaRefOrVal=V.schemaHasRulesButRef=V.schemaHasRules=V.checkUnknownRules=V.alwaysValidSchema=V.toHash=void 0;var ie=F(),zT=Bo();function AT(t){let e={};for(let r of t)e[r]=!0;return e}V.toHash=AT;function jT(t,e){return typeof e=="boolean"?e:Object.keys(e).length===0?!0:(Cg(t,e),!Ig(e,t.self.RULES.all))}V.alwaysValidSchema=jT;function Cg(t,e=t.schema){let{opts:r,self:n}=t;if(!r.strictSchema||typeof e=="boolean")return;let o=n.RULES.keywords;for(let s in e)o[s]||Ag(t,`unknown keyword: "${s}"`)}V.checkUnknownRules=Cg;function Ig(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(e[r])return!0;return!1}V.schemaHasRules=Ig;function MT(t,e){if(typeof t=="boolean")return!t;for(let r in t)if(r!=="$ref"&&e.all[r])return!0;return!1}V.schemaHasRulesButRef=MT;function DT({topSchemaRef:t,schemaPath:e},r,n,o){if(!o){if(typeof r=="number"||typeof r=="boolean")return r;if(typeof r=="string")return(0,ie._)`${r}`}return(0,ie._)`${t}${e}${(0,ie.getProperty)(n)}`}V.schemaRefOrVal=DT;function LT(t){return Ng(decodeURIComponent(t))}V.unescapeFragment=LT;function ZT(t){return encodeURIComponent(Zl(t))}V.escapeFragment=ZT;function Zl(t){return typeof t=="number"?`${t}`:t.replace(/~/g,"~0").replace(/\//g,"~1")}V.escapeJsonPointer=Zl;function Ng(t){return t.replace(/~1/g,"/").replace(/~0/g,"~")}V.unescapeJsonPointer=Ng;function UT(t,e){if(Array.isArray(t))for(let r of t)e(r);else e(t)}V.eachItem=UT;function Rg({mergeNames:t,mergeToName:e,mergeValues:r,resultToName:n}){return(o,s,i,a)=>{let c=i===void 0?s:i instanceof ie.Name?(s instanceof ie.Name?t(o,s,i):e(o,s,i),i):s instanceof ie.Name?(e(o,i,s),s):r(s,i);return a===ie.Name&&!(c instanceof ie.Name)?n(o,c):c}}V.mergeEvaluated={props:Rg({mergeNames:(t,e,r)=>t.if((0,ie._)`${r} !== true && ${e} !== undefined`,()=>{t.if((0,ie._)`${e} === true`,()=>t.assign(r,!0),()=>t.assign(r,(0,ie._)`${r} || {}`).code((0,ie._)`Object.assign(${r}, ${e})`))}),mergeToName:(t,e,r)=>t.if((0,ie._)`${r} !== true`,()=>{e===!0?t.assign(r,!0):(t.assign(r,(0,ie._)`${r} || {}`),Ul(t,r,e))}),mergeValues:(t,e)=>t===!0?!0:{...t,...e},resultToName:zg}),items:Rg({mergeNames:(t,e,r)=>t.if((0,ie._)`${r} !== true && ${e} !== undefined`,()=>t.assign(r,(0,ie._)`${e} === true ? true : ${r} > ${e} ? ${r} : ${e}`)),mergeToName:(t,e,r)=>t.if((0,ie._)`${r} !== true`,()=>t.assign(r,e===!0?!0:(0,ie._)`${r} > ${e} ? ${r} : ${e}`)),mergeValues:(t,e)=>t===!0?!0:Math.max(t,e),resultToName:(t,e)=>t.var("items",e)})};function zg(t,e){if(e===!0)return t.var("props",!0);let r=t.var("props",(0,ie._)`{}`);return e!==void 0&&Ul(t,r,e),r}V.evaluatedPropsToName=zg;function Ul(t,e,r){Object.keys(r).forEach(n=>t.assign((0,ie._)`${e}${(0,ie.getProperty)(n)}`,!0))}V.setEvaluated=Ul;var Og={};function HT(t,e){return t.scopeValue("func",{ref:e,code:Og[e.code]||(Og[e.code]=new zT._Code(e.code))})}V.useFunc=HT;var Ll;(function(t){t[t.Num=0]="Num",t[t.Str=1]="Str"})(Ll||(V.Type=Ll={}));function qT(t,e,r){if(t instanceof ie.Name){let n=e===Ll.Num;return r?n?(0,ie._)`"[" + ${t} + "]"`:(0,ie._)`"['" + ${t} + "']"`:n?(0,ie._)`"/" + ${t}`:(0,ie._)`"/" + ${t}.replace(/~/g, "~0").replace(/\\//g, "~1")`}return r?(0,ie.getProperty)(t).toString():"/"+Zl(t)}V.getErrorPath=qT;function Ag(t,e,r=t.opts.strictSchema){if(r){if(e=`strict mode: ${e}`,r===!0)throw new Error(e);t.self.logger.warn(e)}}V.checkStrictMode=Ag});var rr=T(Hl=>{"use strict";Object.defineProperty(Hl,"__esModule",{value:!0});var He=F(),FT={data:new He.Name("data"),valCxt:new He.Name("valCxt"),instancePath:new He.Name("instancePath"),parentData:new He.Name("parentData"),parentDataProperty:new He.Name("parentDataProperty"),rootData:new He.Name("rootData"),dynamicAnchors:new He.Name("dynamicAnchors"),vErrors:new He.Name("vErrors"),errors:new He.Name("errors"),this:new He.Name("this"),self:new He.Name("self"),scope:new He.Name("scope"),json:new He.Name("json"),jsonPos:new He.Name("jsonPos"),jsonLen:new He.Name("jsonLen"),jsonPart:new He.Name("jsonPart")};Hl.default=FT});var Yo=T(qe=>{"use strict";Object.defineProperty(qe,"__esModule",{value:!0});qe.extendErrors=qe.resetErrorsCount=qe.reportExtraError=qe.reportError=qe.keyword$DataError=qe.keywordError=void 0;var te=F(),Ai=ee(),We=rr();qe.keywordError={message:({keyword:t})=>(0,te.str)`must pass "${t}" keyword validation`};qe.keyword$DataError={message:({keyword:t,schemaType:e})=>e?(0,te.str)`"${t}" keyword must be ${e} ($data)`:(0,te.str)`"${t}" keyword is invalid ($data)`};function BT(t,e=qe.keywordError,r,n){let{it:o}=t,{gen:s,compositeRule:i,allErrors:a}=o,c=Dg(t,e,r);n??(i||a)?jg(s,c):Mg(o,(0,te._)`[${c}]`)}qe.reportError=BT;function VT(t,e=qe.keywordError,r){let{it:n}=t,{gen:o,compositeRule:s,allErrors:i}=n,a=Dg(t,e,r);jg(o,a),s||i||Mg(n,We.default.vErrors)}qe.reportExtraError=VT;function KT(t,e){t.assign(We.default.errors,e),t.if((0,te._)`${We.default.vErrors} !== null`,()=>t.if(e,()=>t.assign((0,te._)`${We.default.vErrors}.length`,e),()=>t.assign(We.default.vErrors,null)))}qe.resetErrorsCount=KT;function WT({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,We.default.errors,a=>{t.const(i,(0,te._)`${We.default.vErrors}[${a}]`),t.if((0,te._)`${i}.instancePath === undefined`,()=>t.assign((0,te._)`${i}.instancePath`,(0,te.strConcat)(We.default.instancePath,s.errorPath))),t.assign((0,te._)`${i}.schemaPath`,(0,te.str)`${s.errSchemaPath}/${e}`),s.opts.verbose&&(t.assign((0,te._)`${i}.schema`,r),t.assign((0,te._)`${i}.data`,n))})}qe.extendErrors=WT;function jg(t,e){let r=t.const("err",e);t.if((0,te._)`${We.default.vErrors} === null`,()=>t.assign(We.default.vErrors,(0,te._)`[${r}]`),(0,te._)`${We.default.vErrors}.push(${r})`),t.code((0,te._)`${We.default.errors}++`)}function Mg(t,e){let{gen:r,validateName:n,schemaEnv:o}=t;o.$async?r.throw((0,te._)`new ${t.ValidationError}(${e})`):(r.assign((0,te._)`${n}.errors`,e),r.return(!1))}var cn={keyword:new te.Name("keyword"),schemaPath:new te.Name("schemaPath"),params:new te.Name("params"),propertyName:new te.Name("propertyName"),message:new te.Name("message"),schema:new te.Name("schema"),parentSchema:new te.Name("parentSchema")};function Dg(t,e,r){let{createErrors:n}=t.it;return n===!1?(0,te._)`{}`:JT(t,e,r)}function JT(t,e,r={}){let{gen:n,it:o}=t,s=[GT(o,r),YT(t,r)];return XT(t,e,s),n.object(...s)}function GT({errorPath:t},{instancePath:e}){let r=e?(0,te.str)`${t}${(0,Ai.getErrorPath)(e,Ai.Type.Str)}`:t;return[We.default.instancePath,(0,te.strConcat)(We.default.instancePath,r)]}function YT({keyword:t,it:{errSchemaPath:e}},{schemaPath:r,parentSchema:n}){let o=n?e:(0,te.str)`${e}/${t}`;return r&&(o=(0,te.str)`${o}${(0,Ai.getErrorPath)(r,Ai.Type.Str)}`),[cn.schemaPath,o]}function XT(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([cn.keyword,o],[cn.params,typeof e=="function"?e(t):e||(0,te._)`{}`]),c.messages&&n.push([cn.message,typeof r=="function"?r(t):r]),c.verbose&&n.push([cn.schema,i],[cn.parentSchema,(0,te._)`${l}${d}`],[We.default.data,s]),u&&n.push([cn.propertyName,u])}});var Zg=T(Hn=>{"use strict";Object.defineProperty(Hn,"__esModule",{value:!0});Hn.boolOrEmptySchema=Hn.topBoolOrEmptySchema=void 0;var QT=Yo(),e0=F(),t0=rr(),r0={message:"boolean schema is false"};function n0(t){let{gen:e,schema:r,validateName:n}=t;r===!1?Lg(t,!1):typeof r=="object"&&r.$async===!0?e.return(t0.default.data):(e.assign((0,e0._)`${n}.errors`,null),e.return(!0))}Hn.topBoolOrEmptySchema=n0;function o0(t,e){let{gen:r,schema:n}=t;n===!1?(r.var(e,!1),Lg(t)):r.var(e,!0)}Hn.boolOrEmptySchema=o0;function Lg(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,QT.reportError)(o,r0,void 0,e)}});var ql=T(qn=>{"use strict";Object.defineProperty(qn,"__esModule",{value:!0});qn.getRules=qn.isJSONType=void 0;var s0=["string","number","integer","boolean","null","object","array"],i0=new Set(s0);function a0(t){return typeof t=="string"&&i0.has(t)}qn.isJSONType=a0;function c0(){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:{}}}qn.getRules=c0});var Fl=T(xr=>{"use strict";Object.defineProperty(xr,"__esModule",{value:!0});xr.shouldUseRule=xr.shouldUseGroup=xr.schemaHasRulesForType=void 0;function u0({schema:t,self:e},r){let n=e.RULES.types[r];return n&&n!==!0&&Ug(t,n)}xr.schemaHasRulesForType=u0;function Ug(t,e){return e.rules.some(r=>Hg(t,r))}xr.shouldUseGroup=Ug;function Hg(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))}xr.shouldUseRule=Hg});var Xo=T(Fe=>{"use strict";Object.defineProperty(Fe,"__esModule",{value:!0});Fe.reportTypeError=Fe.checkDataTypes=Fe.checkDataType=Fe.coerceAndCheckDataType=Fe.getJSONTypes=Fe.getSchemaTypes=Fe.DataType=void 0;var l0=ql(),d0=Fl(),p0=Yo(),H=F(),qg=ee(),Fn;(function(t){t[t.Correct=0]="Correct",t[t.Wrong=1]="Wrong"})(Fn||(Fe.DataType=Fn={}));function f0(t){let e=Fg(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}Fe.getSchemaTypes=f0;function Fg(t){let e=Array.isArray(t)?t:t?[t]:[];if(e.every(l0.isJSONType))return e;throw new Error("type must be JSONType or JSONType[]: "+e.join(","))}Fe.getJSONTypes=Fg;function m0(t,e){let{gen:r,data:n,opts:o}=t,s=h0(e,o.coerceTypes),i=e.length>0&&!(s.length===0&&e.length===1&&(0,d0.schemaHasRulesForType)(t,e[0]));if(i){let a=Vl(e,n,o.strictNumbers,Fn.Wrong);r.if(a,()=>{s.length?g0(t,e,s):Kl(t)})}return i}Fe.coerceAndCheckDataType=m0;var Bg=new Set(["string","number","integer","boolean","null"]);function h0(t,e){return e?t.filter(r=>Bg.has(r)||e==="array"&&r==="array"):[]}function g0(t,e,r){let{gen:n,data:o,opts:s}=t,i=n.let("dataType",(0,H._)`typeof ${o}`),a=n.let("coerced",(0,H._)`undefined`);s.coerceTypes==="array"&&n.if((0,H._)`${i} == 'object' && Array.isArray(${o}) && ${o}.length == 1`,()=>n.assign(o,(0,H._)`${o}[0]`).assign(i,(0,H._)`typeof ${o}`).if(Vl(e,o,s.strictNumbers),()=>n.assign(a,o))),n.if((0,H._)`${a} !== undefined`);for(let u of r)(Bg.has(u)||u==="array"&&s.coerceTypes==="array")&&c(u);n.else(),Kl(t),n.endIf(),n.if((0,H._)`${a} !== undefined`,()=>{n.assign(o,a),_0(t,a)});function c(u){switch(u){case"string":n.elseIf((0,H._)`${i} == "number" || ${i} == "boolean"`).assign(a,(0,H._)`"" + ${o}`).elseIf((0,H._)`${o} === null`).assign(a,(0,H._)`""`);return;case"number":n.elseIf((0,H._)`${i} == "boolean" || ${o} === null
4
4
  || (${i} == "string" && ${o} && ${o} == +${o})`).assign(a,(0,H._)`+${o}`);return;case"integer":n.elseIf((0,H._)`${i} === "boolean" || ${o} === null
5
5
  || (${i} === "string" && ${o} && ${o} == +${o} && !(${o} % 1))`).assign(a,(0,H._)`+${o}`);return;case"boolean":n.elseIf((0,H._)`${o} === "false" || ${o} === 0 || ${o} === null`).assign(a,!1).elseIf((0,H._)`${o} === "true" || ${o} === 1`).assign(a,!0);return;case"null":n.elseIf((0,H._)`${o} === "" || ${o} === 0 || ${o} === false`),n.assign(a,null);return;case"array":n.elseIf((0,H._)`${i} === "string" || ${i} === "number"
6
- || ${i} === "boolean" || ${o} === null`).assign(a,(0,H._)`[${o}]`)}}}function _0({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,H._)`${e} !== undefined`,()=>t.assign((0,H._)`${e}[${r}]`,n))}function Fl(t,e,r,n=Fn.Correct){let o=n===Fn.Correct?H.operators.EQ:H.operators.NEQ,s;switch(t){case"null":return(0,H._)`${e} ${o} null`;case"array":s=(0,H._)`Array.isArray(${e})`;break;case"object":s=(0,H._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,H._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,H._)`typeof ${e} ${o} ${t}`}return n===Fn.Correct?s:(0,H.not)(s);function i(a=H.nil){return(0,H.and)((0,H._)`typeof ${e} == "number"`,a,r?(0,H._)`isFinite(${e})`:H.nil)}}Fe.checkDataType=Fl;function Bl(t,e,r,n){if(t.length===1)return Fl(t[0],e,r,n);let o,s=(0,qg.toHash)(t);if(s.array&&s.object){let i=(0,H._)`typeof ${e} != "object"`;o=s.null?i:(0,H._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=H.nil;s.number&&delete s.integer;for(let i in s)o=(0,H.and)(o,Fl(i,e,r,n));return o}Fe.checkDataTypes=Bl;var y0={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,H._)`{type: ${t}}`:(0,H._)`{type: ${e}}`};function Vl(t){let e=x0(t);(0,p0.reportError)(e,y0)}Fe.reportTypeError=Vl;function x0(t){let{gen:e,data:r,schema:n}=t,o=(0,qg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Kg=T(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});ji.assignDefaults=void 0;var Bn=F(),v0=ee();function k0(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Vg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Vg(t,s,o.default))}ji.assignDefaults=k0;function Vg(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Bn._)`${s}${(0,Bn.getProperty)(e)}`;if(o){(0,v0.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Bn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Bn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Bn._)`${a} = ${(0,Bn.stringify)(r)}`)}});var ft=T(se=>{"use strict";Object.defineProperty(se,"__esModule",{value:!0});se.validateUnion=se.validateArray=se.usePattern=se.callValidateCode=se.schemaProperties=se.allSchemaProperties=se.noPropertyInData=se.propertyInData=se.isOwnProperty=se.hasPropFunc=se.reportMissingProp=se.checkMissingProp=se.checkReportMissingProp=void 0;var pe=F(),Kl=ee(),yr=tr(),S0=ee();function b0(t,e){let{gen:r,data:n,it:o}=t;r.if(Jl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,pe._)`${e}`},!0),t.error()})}se.checkReportMissingProp=b0;function w0({gen:t,data:e,it:{opts:r}},n,o){return(0,pe.or)(...n.map(s=>(0,pe.and)(Jl(t,e,s,r.ownProperties),(0,pe._)`${o} = ${s}`)))}se.checkMissingProp=w0;function E0(t,e){t.setParams({missingProperty:e},!0),t.error()}se.reportMissingProp=E0;function Wg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,pe._)`Object.prototype.hasOwnProperty`})}se.hasPropFunc=Wg;function Wl(t,e,r){return(0,pe._)`${Wg(t)}.call(${e}, ${r})`}se.isOwnProperty=Wl;function T0(t,e,r,n){let o=(0,pe._)`${e}${(0,pe.getProperty)(r)} !== undefined`;return n?(0,pe._)`${o} && ${Wl(t,e,r)}`:o}se.propertyInData=T0;function Jl(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}se.noPropertyInData=Jl;function Jg(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}se.allSchemaProperties=Jg;function $0(t,e){return Jg(e).filter(r=>!(0,Kl.alwaysValidSchema)(t,e[r]))}se.schemaProperties=$0;function P0({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=[[yr.default.instancePath,(0,pe.strConcat)(yr.default.instancePath,s)],[yr.default.parentData,i.parentData],[yr.default.parentDataProperty,i.parentDataProperty],[yr.default.rootData,yr.default.rootData]];i.opts.dynamicRef&&d.push([yr.default.dynamicAnchors,yr.default.dynamicAnchors]);let f=(0,pe._)`${l}, ${r.object(...d)}`;return c!==pe.nil?(0,pe._)`${a}.call(${c}, ${f})`:(0,pe._)`${a}(${f})`}se.callValidateCode=P0;var R0=(0,pe._)`new RegExp`;function O0({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"?R0:(0,S0.useFunc)(t,o)}(${r}, ${n})`})}se.usePattern=O0;function C0(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:Kl.Type.Num},s),e.if((0,pe.not)(s),a)})}}se.validateArray=C0;function I0(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,Kl.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))}se.validateUnion=I0});var Xg=T(Lt=>{"use strict";Object.defineProperty(Lt,"__esModule",{value:!0});Lt.validateKeywordUsage=Lt.validSchemaType=Lt.funcKeywordCode=Lt.macroKeywordCode=void 0;var We=F(),cn=tr(),N0=ft(),z0=Yo();function A0(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Yg(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:We.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Lt.macroKeywordCode=A0;function j0(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;D0(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Yg(n,o,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&Gg(t),g(()=>t.error());else{let y=e.async?m():p();e.modifying&&Gg(t),g(()=>M0(t,y))}}function m(){let y=n.let("ruleErrs",null);return n.try(()=>h((0,We._)`await `),x=>n.assign(d,!1).if((0,We._)`${x} instanceof ${c.ValidationError}`,()=>n.assign(y,(0,We._)`${x}.errors`),()=>n.throw(x))),y}function p(){let y=(0,We._)`${l}.errors`;return n.assign(y,null),h(We.nil),y}function h(y=e.async?(0,We._)`await `:We.nil){let x=c.opts.passContext?cn.default.this:cn.default.self,k=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,We._)`${y}${(0,N0.callValidateCode)(t,l,x,k)}`,e.modifying)}function g(y){var x;n.if((0,We.not)((x=e.valid)!==null&&x!==void 0?x:d),y)}}Lt.funcKeywordCode=j0;function Gg(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,We._)`${n.parentData}[${n.parentDataProperty}]`))}function M0(t,e){let{gen:r}=t;r.if((0,We._)`Array.isArray(${e})`,()=>{r.assign(cn.default.vErrors,(0,We._)`${cn.default.vErrors} === null ? ${e} : ${cn.default.vErrors}.concat(${e})`).assign(cn.default.errors,(0,We._)`${cn.default.vErrors}.length`),(0,z0.extendErrors)(t)},()=>t.error())}function D0({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Yg(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,We.stringify)(r)})}function L0(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")}Lt.validSchemaType=L0;function Z0({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)}}Lt.validateKeywordUsage=Z0});var e_=T(xr=>{"use strict";Object.defineProperty(xr,"__esModule",{value:!0});xr.extendSubschemaMode=xr.extendSubschemaData=xr.getSubschema=void 0;var Zt=F(),Qg=ee();function U0(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,Qg.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')}xr.getSubschema=U0;function H0(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=a.let("data",(0,Zt._)`${e.data}${(0,Zt.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Zt.str)`${u}${(0,Qg.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]}}xr.extendSubschemaData=H0;function q0(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}xr.extendSubschemaMode=q0});var Gl=T((Y1,t_)=>{"use strict";t_.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 n_=T((X1,r_)=>{"use strict";var vr=r_.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(){};Mi(e,n,o,t,"",t)};vr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};vr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};vr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};vr.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 Mi(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 vr.arrayKeywords)for(var f=0;f<d.length;f++)Mi(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in vr.propsKeywords){if(d&&typeof d=="object")for(var m in d)Mi(t,e,r,d[m],o+"/"+l+"/"+F0(m),s,o,l,n,m)}else(l in vr.keywords||t.allKeys&&!(l in vr.skipKeywords))&&Mi(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function F0(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Qo=T(rt=>{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.getSchemaRefs=rt.resolveUrl=rt.normalizeId=rt._getFullPath=rt.getFullPath=rt.inlineRef=void 0;var B0=ee(),V0=Gl(),K0=n_(),W0=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function J0(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Yl(t):e?o_(t)<=e:!1}rt.inlineRef=J0;var G0=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Yl(t){for(let e in t){if(G0.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Yl)||typeof r=="object"&&Yl(r))return!0}return!1}function o_(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!W0.has(r)&&(typeof t[r]=="object"&&(0,B0.eachItem)(t[r],n=>e+=o_(n)),e===1/0))return 1/0}return e}function s_(t,e="",r){r!==!1&&(e=Vn(e));let n=t.parse(e);return i_(t,n)}rt.getFullPath=s_;function i_(t,e){return t.serialize(e).split("#")[0]+"#"}rt._getFullPath=i_;var Y0=/#\/?$/;function Vn(t){return t?t.replace(Y0,""):""}rt.normalizeId=Vn;function X0(t,e,r){return r=Vn(r),t.resolve(e,r)}rt.resolveUrl=X0;var Q0=/^[a-z_][-a-z0-9._]*$/i;function e$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Vn(t[r]||e),s={"":o},i=s_(n,o,!1),a={},c=new Set;return K0(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof d[r]=="string"&&(g=y.call(this,d[r])),x.call(this,d.$anchor),x.call(this,d.$dynamicAnchor),s[f]=g;function y(k){let w=this.opts.uriResolver.resolve;if(k=Vn(g?w(g,k):k),c.has(k))throw l(k);c.add(k);let O=this.refs[k];return typeof O=="string"&&(O=this.refs[O]),typeof O=="object"?u(d,O.schema,k):k!==Vn(h)&&(k[0]==="#"?(u(d,a[k],k),a[k]=d):this.refs[k]=h),k}function x(k){if(typeof k=="string"){if(!Q0.test(k))throw new Error(`invalid anchor "${k}"`);y.call(this,`#${k}`)}}}),a;function u(d,f,m){if(f!==void 0&&!V0(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}rt.getSchemaRefs=e$});var rs=T(kr=>{"use strict";Object.defineProperty(kr,"__esModule",{value:!0});kr.getData=kr.KeywordCxt=kr.validateFunctionCode=void 0;var d_=Zg(),a_=Xo(),Ql=ql(),Di=Xo(),t$=Kg(),ts=Xg(),Xl=e_(),N=F(),Z=tr(),r$=Qo(),rr=ee(),es=Yo();function n$(t){if(m_(t)&&(h_(t),f_(t))){i$(t);return}p_(t,()=>(0,d_.topBoolOrEmptySchema)(t))}kr.validateFunctionCode=n$;function p_({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,N._)`${Z.default.data}, ${Z.default.valCxt}`,n.$async,()=>{t.code((0,N._)`"use strict"; ${c_(r,o)}`),s$(t,o),t.code(s)}):t.func(e,(0,N._)`${Z.default.data}, ${o$(o)}`,n.$async,()=>t.code(c_(r,o)).code(s))}function o$(t){return(0,N._)`{${Z.default.instancePath}="", ${Z.default.parentData}, ${Z.default.parentDataProperty}, ${Z.default.rootData}=${Z.default.data}${t.dynamicRef?(0,N._)`, ${Z.default.dynamicAnchors}={}`:N.nil}}={}`}function s$(t,e){t.if(Z.default.valCxt,()=>{t.var(Z.default.instancePath,(0,N._)`${Z.default.valCxt}.${Z.default.instancePath}`),t.var(Z.default.parentData,(0,N._)`${Z.default.valCxt}.${Z.default.parentData}`),t.var(Z.default.parentDataProperty,(0,N._)`${Z.default.valCxt}.${Z.default.parentDataProperty}`),t.var(Z.default.rootData,(0,N._)`${Z.default.valCxt}.${Z.default.rootData}`),e.dynamicRef&&t.var(Z.default.dynamicAnchors,(0,N._)`${Z.default.valCxt}.${Z.default.dynamicAnchors}`)},()=>{t.var(Z.default.instancePath,(0,N._)`""`),t.var(Z.default.parentData,(0,N._)`undefined`),t.var(Z.default.parentDataProperty,(0,N._)`undefined`),t.var(Z.default.rootData,Z.default.data),e.dynamicRef&&t.var(Z.default.dynamicAnchors,(0,N._)`{}`)})}function i$(t){let{schema:e,opts:r,gen:n}=t;p_(t,()=>{r.$comment&&e.$comment&&__(t),d$(t),n.let(Z.default.vErrors,null),n.let(Z.default.errors,0),r.unevaluated&&a$(t),g_(t),m$(t)})}function a$(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,N._)`${r}.evaluated`),e.if((0,N._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,N._)`${t.evaluated}.props`,(0,N._)`undefined`)),e.if((0,N._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,N._)`${t.evaluated}.items`,(0,N._)`undefined`))}function c_(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,N._)`/*# sourceURL=${r} */`:N.nil}function c$(t,e){if(m_(t)&&(h_(t),f_(t))){u$(t,e);return}(0,d_.boolOrEmptySchema)(t,e)}function f_({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 m_(t){return typeof t.schema!="boolean"}function u$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&__(t),p$(t),f$(t);let s=n.const("_errs",Z.default.errors);g_(t,s),n.var(e,(0,N._)`${s} === ${Z.default.errors}`)}function h_(t){(0,rr.checkUnknownRules)(t),l$(t)}function g_(t,e){if(t.opts.jtd)return u_(t,[],!1,e);let r=(0,a_.getSchemaTypes)(t.schema),n=(0,a_.coerceAndCheckDataType)(t,r);u_(t,r,!n,e)}function l$(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,rr.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,rr.checkStrictMode)(t,"default is ignored in the schema root")}function p$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,r$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function f$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function __({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,N._)`${Z.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,N.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,N._)`${Z.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function m$(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,N._)`${Z.default.errors} === 0`,()=>e.return(Z.default.data),()=>e.throw((0,N._)`new ${o}(${Z.default.vErrors})`)):(e.assign((0,N._)`${n}.errors`,Z.default.vErrors),s.unevaluated&&h$(t),e.return((0,N._)`${Z.default.errors} === 0`))}function h$({gen:t,evaluated:e,props:r,items:n}){r instanceof N.Name&&t.assign((0,N._)`${e}.props`,r),n instanceof N.Name&&t.assign((0,N._)`${e}.items`,n)}function u_(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,rr.schemaHasRulesButRef)(s,l))){o.block(()=>x_(t,"$ref",l.all.$ref.definition));return}c.jtd||g$(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,Ql.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Di.checkDataType)(f.type,i,c.strictNumbers)),l_(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Di.reportTypeError)(t)),o.endIf()):l_(t,f),a||o.if((0,N._)`${Z.default.errors} === ${n||0}`))}}function l_(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,Ql.shouldUseRule)(n,s)&&x_(t,s.keyword,s.definition,e.type)})}function g$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(_$(t,e),t.opts.allowUnionTypes||y$(t,e),x$(t,t.dataTypes))}function _$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{y_(t.dataTypes,r)||ed(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),k$(t,e)}}function y$(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&ed(t,"use allowUnionTypes to allow union type keyword")}function x$(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,Ql.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>v$(e,i))&&ed(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function v$(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function y_(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function k$(t,e){let r=[];for(let n of t.dataTypes)y_(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function ed(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,rr.checkStrictMode)(t,e,t.opts.strictTypes)}var Li=class{constructor(e,r,n){if((0,ts.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,rr.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",v_(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,ts.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",Z.default.errors))}result(e,r,n){this.failResult((0,N.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,N.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,N._)`${r} !== undefined && (${(0,N.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?es.reportExtraError:es.reportError)(this,this.def.error,r)}$dataError(){(0,es.reportError)(this,this.def.$dataError||es.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,es.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=N.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=N.nil,r=N.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,N.or)((0,N._)`${o} === undefined`,r)),e!==N.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==N.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,N.or)(i(),a());function i(){if(n.length){if(!(r instanceof N.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,N._)`${(0,Di.checkDataTypes)(c,r,s.opts.strictNumbers,Di.DataType.Wrong)}`}return N.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,N._)`!${c}(${r})`}return N.nil}}subschema(e,r){let n=(0,Xl.getSubschema)(this.it,e);(0,Xl.extendSubschemaData)(n,this.it,e),(0,Xl.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return c$(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=rr.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=rr.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,N.Name)),!0}};kr.KeywordCxt=Li;function x_(t,e,r,n){let o=new Li(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,ts.funcKeywordCode)(o,r):"macro"in r?(0,ts.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,ts.funcKeywordCode)(o,r)}var S$=/^\/(?:[^~]|~0|~1)*$/,b$=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function v_(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return Z.default.rootData;if(t[0]==="/"){if(!S$.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=Z.default.rootData}else{let u=b$.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,N._)`${s}${(0,N.getProperty)((0,rr.unescapeJsonPointer)(u))}`,i=(0,N._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}kr.getData=v_});var Zi=T(rd=>{"use strict";Object.defineProperty(rd,"__esModule",{value:!0});var td=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};rd.default=td});var ns=T(sd=>{"use strict";Object.defineProperty(sd,"__esModule",{value:!0});var nd=Qo(),od=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,nd.resolveUrl)(e,r,n),this.missingSchema=(0,nd.normalizeId)((0,nd.getFullPath)(e,this.missingRef))}};sd.default=od});var Hi=T(mt=>{"use strict";Object.defineProperty(mt,"__esModule",{value:!0});mt.resolveSchema=mt.getCompilingSchema=mt.resolveRef=mt.compileSchema=mt.SchemaEnv=void 0;var $t=F(),w$=Zi(),un=tr(),Pt=Qo(),k_=ee(),E$=rs(),Kn=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,Pt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};mt.SchemaEnv=Kn;function ad(t){let e=S_.call(this,t);if(e)return e;let r=(0,Pt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new $t.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:w$.default,code:(0,$t._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:un.default.data,parentData:un.default.parentData,parentDataProperty:un.default.parentDataProperty,dataNames:[un.default.data],dataPathArr:[$t.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,$t.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:$t.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,$t._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,E$.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(un.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${un.default.self}`,`${un.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof $t.Name?void 0:p,items:h instanceof $t.Name?void 0:h,dynamicProps:p instanceof $t.Name,dynamicItems:h instanceof $t.Name},m.source&&(m.source.evaluated=(0,$t.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}mt.compileSchema=ad;function T$(t,e,r){var n;r=(0,Pt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=R$.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 Kn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=$$.call(this,s)}mt.resolveRef=T$;function $$(t){return(0,Pt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:ad.call(this,t)}function S_(t){for(let e of this._compilations)if(P$(e,t))return e}mt.getCompilingSchema=S_;function P$(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function R$(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Ui.call(this,t,e)}function Ui(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Pt._getFullPath)(this.opts.uriResolver,r),o=(0,Pt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return id.call(this,r,t);let s=(0,Pt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Ui.call(this,t,i);return typeof a?.schema!="object"?void 0:id.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||ad.call(this,i),s===(0,Pt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,Pt.resolveUrl)(this.opts.uriResolver,o,u)),new Kn({schema:a,schemaId:c,root:t,baseId:o})}return id.call(this,r,i)}}mt.resolveSchema=Ui;var O$=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function id(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,k_.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!O$.has(a)&&u&&(e=(0,Pt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,k_.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Pt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Ui.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Kn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var b_=T((oD,C$)=>{C$.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 ud=T((sD,$_)=>{"use strict";var I$=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),E_=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function cd(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 N$=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function w_(t){return t.length=0,!0}function z$(t,e,r){if(t.length){let n=cd(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function A$(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=z$;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=w_}else{o.push(u);continue}}return o.length&&(a===w_?r.zone=o.join(""):i?n.push(o.join("")):n.push(cd(o))),r.address=n.join(""),r}function T_(t){if(j$(t,":")<2)return{host:t,isIPV6:!1};let e=A$(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 j$(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function M$(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 D$(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 L$(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!E_(r)){let n=T_(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}$_.exports={nonSimpleDomain:N$,recomposeAuthority:L$,normalizeComponentEncoding:D$,removeDotSegments:M$,isIPv4:E_,isUUID:I$,normalizeIPv6:T_,stringArrayToHexStripped:cd}});var I_=T((iD,C_)=>{"use strict";var{isUUID:Z$}=ud(),U$=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,H$=["http","https","ws","wss","urn","urn:uuid"];function q$(t){return H$.indexOf(t)!==-1}function ld(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 P_(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function R_(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 F$(t){return t.secure=ld(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function B$(t){if((t.port===(ld(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 V$(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(U$);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=dd(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function K$(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=dd(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 W$(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!Z$(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function J$(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var O_={scheme:"http",domainHost:!0,parse:P_,serialize:R_},G$={scheme:"https",domainHost:O_.domainHost,parse:P_,serialize:R_},qi={scheme:"ws",domainHost:!0,parse:F$,serialize:B$},Y$={scheme:"wss",domainHost:qi.domainHost,parse:qi.parse,serialize:qi.serialize},X$={scheme:"urn",parse:V$,serialize:K$,skipNormalize:!0},Q$={scheme:"urn:uuid",parse:W$,serialize:J$,skipNormalize:!0},Fi={http:O_,https:G$,ws:qi,wss:Y$,urn:X$,"urn:uuid":Q$};Object.setPrototypeOf(Fi,null);function dd(t){return t&&(Fi[t]||Fi[t.toLowerCase()])||void 0}C_.exports={wsIsSecure:ld,SCHEMES:Fi,isValidSchemeName:q$,getSchemeHandler:dd}});var A_=T((aD,Vi)=>{"use strict";var{normalizeIPv6:eP,removeDotSegments:os,recomposeAuthority:tP,normalizeComponentEncoding:Bi,isIPv4:rP,nonSimpleDomain:nP}=ud(),{SCHEMES:oP,getSchemeHandler:N_}=I_();function sP(t,e){return typeof t=="string"?t=Ut(nr(t,e),e):typeof t=="object"&&(t=nr(Ut(t,e),e)),t}function iP(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=z_(nr(t,n),nr(e,n),n,!0);return n.skipEscape=!0,Ut(o,n)}function z_(t,e,r,n){let o={};return n||(t=nr(Ut(t,r),r),e=nr(Ut(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=os(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=os(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=os(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=os(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=Ut(Bi(nr(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Ut(Bi(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Ut(Bi(nr(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Ut(Bi(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Ut(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=N_(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=os(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 cP=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function nr(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(cP);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(rP(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=N_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&nP(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 pd={SCHEMES:oP,normalize:sP,resolve:iP,resolveComponent:z_,equal:aP,serialize:Ut,parse:nr};Vi.exports=pd;Vi.exports.default=pd;Vi.exports.fastUri=pd});var M_=T(fd=>{"use strict";Object.defineProperty(fd,"__esModule",{value:!0});var j_=A_();j_.code='require("ajv/dist/runtime/uri").default';fd.default=j_});var B_=T(Ae=>{"use strict";Object.defineProperty(Ae,"__esModule",{value:!0});Ae.CodeGen=Ae.Name=Ae.nil=Ae.stringify=Ae.str=Ae._=Ae.KeywordCxt=void 0;var uP=rs();Object.defineProperty(Ae,"KeywordCxt",{enumerable:!0,get:function(){return uP.KeywordCxt}});var Wn=F();Object.defineProperty(Ae,"_",{enumerable:!0,get:function(){return Wn._}});Object.defineProperty(Ae,"str",{enumerable:!0,get:function(){return Wn.str}});Object.defineProperty(Ae,"stringify",{enumerable:!0,get:function(){return Wn.stringify}});Object.defineProperty(Ae,"nil",{enumerable:!0,get:function(){return Wn.nil}});Object.defineProperty(Ae,"Name",{enumerable:!0,get:function(){return Wn.Name}});Object.defineProperty(Ae,"CodeGen",{enumerable:!0,get:function(){return Wn.CodeGen}});var lP=Zi(),H_=ns(),dP=Hl(),ss=Hi(),pP=F(),is=Qo(),Ki=Xo(),hd=ee(),D_=b_(),fP=M_(),q_=(t,e)=>new RegExp(t,e);q_.code="new RegExp";var mP=["removeAdditional","useDefaults","coerceTypes"],hP=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),gP={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."},_P={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},L_=200;function yP(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,y,x,k,w,O,G,$e,K,Le;let Se=t.strict,Ir=(e=t.code)===null||e===void 0?void 0:e.optimize,Pf=Ir===!0||Ir===void 0?1:Ir||0,Rf=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:q_,gk=(o=t.uriResolver)!==null&&o!==void 0?o:fP.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:(f=(d=t.strictTuples)!==null&&d!==void 0?d:Se)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:Se)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Pf,regExp:Rf}:{optimize:Pf,regExp:Rf},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:L_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:L_,meta:(y=t.meta)!==null&&y!==void 0?y:!0,messages:(x=t.messages)!==null&&x!==void 0?x:!0,inlineRefs:(k=t.inlineRefs)!==null&&k!==void 0?k:!0,schemaId:(w=t.schemaId)!==null&&w!==void 0?w:"$id",addUsedSchema:(O=t.addUsedSchema)!==null&&O!==void 0?O:!0,validateSchema:(G=t.validateSchema)!==null&&G!==void 0?G:!0,validateFormats:($e=t.validateFormats)!==null&&$e!==void 0?$e:!0,unicodeRegExp:(K=t.unicodeRegExp)!==null&&K!==void 0?K:!0,int32range:(Le=t.int32range)!==null&&Le!==void 0?Le:!0,uriResolver:gk}}var as=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...yP(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new pP.ValueScope({scope:{},prefixes:hP,es5:r,lines:n}),this.logger=wP(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,dP.getRules)(),Z_.call(this,gP,e,"NOT SUPPORTED"),Z_.call(this,_P,e,"DEPRECATED","warn"),this._metaOpts=SP.call(this),e.formats&&vP.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&kP.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),xP.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=D_;n==="id"&&(o={...D_},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||i.call(this,f)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof H_.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,is.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=U_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new ss.SchemaEnv({schema:{},schemaId:n});if(r=ss.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=U_.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,is.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(TP.call(this,n,r),!r)return(0,hd.eachItem)(n,s=>md.call(this,s)),this;PP.call(this,r);let o={...r,type:(0,Ki.getJSONTypes)(r.type),schemaType:(0,Ki.getJSONTypes)(r.schemaType)};return(0,hd.eachItem)(n,o.type.length===0?s=>md.call(this,s,o):s=>o.type.forEach(i=>md.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]=F_(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,is.normalizeId)(i||n);let u=is.getSchemaRefs.call(this,e,n);return c=new ss.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):ss.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{ss.compileSchema.call(this,e)}finally{this.opts=r}}};as.ValidationError=lP.default;as.MissingRefError=H_.default;Ae.default=as;function Z_(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 U_(t){return t=(0,is.normalizeId)(t),this.schemas[t]||this.refs[t]}function xP(){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 vP(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function kP(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 SP(){let t={...this.opts};for(let e of mP)delete t[e];return t}var bP={log(){},warn(){},error(){}};function wP(t){if(t===!1)return bP;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 EP=/^[a-z_$][a-z0-9_$:-]*$/i;function TP(t,e){let{RULES:r}=this;if((0,hd.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!EP.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 md(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,Ki.getJSONTypes)(e.type),schemaType:(0,Ki.getJSONTypes)(e.schemaType)}};e.before?$P.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 $P(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 PP(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=F_(e)),t.validateSchema=this.compile(e,!0))}var RP={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function F_(t){return{anyOf:[t,RP]}}});var V_=T(gd=>{"use strict";Object.defineProperty(gd,"__esModule",{value:!0});var OP={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};gd.default=OP});var G_=T(ln=>{"use strict";Object.defineProperty(ln,"__esModule",{value:!0});ln.callRef=ln.getValidate=void 0;var CP=ns(),K_=ft(),nt=F(),Jn=tr(),W_=Hi(),Wi=ee(),IP={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=W_.resolveRef.call(c,u,o,r);if(l===void 0)throw new CP.default(n.opts.uriResolver,o,r);if(l instanceof W_.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Ji(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Ji(t,(0,nt._)`${p}.validate`,u,u.$async)}function f(p){let h=J_(t,p);Ji(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,nt.stringify)(p)}:{ref:p}),g=e.name("valid"),y=t.subschema({schema:p,dataTypes:[],schemaPath:nt.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(y),t.ok(g)}}};function J_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,nt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}ln.getValidate=J_;function Ji(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Jn.default.this:nt.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,nt._)`await ${(0,K_.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,nt._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,K_.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,nt._)`${p}.errors`;o.assign(Jn.default.vErrors,(0,nt._)`${Jn.default.vErrors} === null ? ${h} : ${Jn.default.vErrors}.concat(${h})`),o.assign(Jn.default.errors,(0,nt._)`${Jn.default.vErrors}.length`)}function m(p){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=Wi.mergeEvaluated.props(o,g.props,s.props));else{let y=o.var("props",(0,nt._)`${p}.evaluated.props`);s.props=Wi.mergeEvaluated.props(o,y,s.props,nt.Name)}if(s.items!==!0)if(g&&!g.dynamicItems)g.items!==void 0&&(s.items=Wi.mergeEvaluated.items(o,g.items,s.items));else{let y=o.var("items",(0,nt._)`${p}.evaluated.items`);s.items=Wi.mergeEvaluated.items(o,y,s.items,nt.Name)}}}ln.callRef=Ji;ln.default=IP});var Y_=T(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var NP=V_(),zP=G_(),AP=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",NP.default,zP.default];_d.default=AP});var X_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var Gi=F(),Sr=Gi.operators,Yi={maximum:{okStr:"<=",ok:Sr.LTE,fail:Sr.GT},minimum:{okStr:">=",ok:Sr.GTE,fail:Sr.LT},exclusiveMaximum:{okStr:"<",ok:Sr.LT,fail:Sr.GTE},exclusiveMinimum:{okStr:">",ok:Sr.GT,fail:Sr.LTE}},jP={message:({keyword:t,schemaCode:e})=>(0,Gi.str)`must be ${Yi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Gi._)`{comparison: ${Yi[t].okStr}, limit: ${e}}`},MP={keyword:Object.keys(Yi),type:"number",schemaType:"number",$data:!0,error:jP,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Gi._)`${r} ${Yi[e].fail} ${n} || isNaN(${r})`)}};yd.default=MP});var Q_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var cs=F(),DP={message:({schemaCode:t})=>(0,cs.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,cs._)`{multipleOf: ${t}}`},LP={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:DP,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,cs._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,cs._)`${i} !== parseInt(${i})`;t.fail$data((0,cs._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};xd.default=LP});var ty=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});function ey(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}vd.default=ey;ey.code='require("ajv/dist/runtime/ucs2length").default'});var ry=T(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});var dn=F(),ZP=ee(),UP=ty(),HP={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,dn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,dn._)`{limit: ${t}}`},qP={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:HP,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?dn.operators.GT:dn.operators.LT,i=o.opts.unicode===!1?(0,dn._)`${r}.length`:(0,dn._)`${(0,ZP.useFunc)(t.gen,UP.default)}(${r})`;t.fail$data((0,dn._)`${i} ${s} ${n}`)}};kd.default=qP});var ny=T(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var FP=ft(),BP=ee(),Gn=F(),VP={message:({schemaCode:t})=>(0,Gn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Gn._)`{pattern: ${t}}`},KP={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:VP,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,Gn._)`new RegExp`:(0,BP.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Gn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Gn._)`!${l}`)}else{let c=(0,FP.usePattern)(t,o);t.fail$data((0,Gn._)`!${c}.test(${r})`)}}};Sd.default=KP});var oy=T(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var us=F(),WP={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,us.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,us._)`{limit: ${t}}`},JP={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:WP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?us.operators.GT:us.operators.LT;t.fail$data((0,us._)`Object.keys(${r}).length ${o} ${n}`)}};bd.default=JP});var sy=T(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var ls=ft(),ds=F(),GP=ee(),YP={message:({params:{missingProperty:t}})=>(0,ds.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,ds._)`{missingProperty: ${t}}`},XP={keyword:"required",type:"object",schemaType:"array",$data:!0,error:YP,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let m=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(m?.[h]===void 0&&!p.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,y=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,GP.checkStrictMode)(i,y,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(ds.nil,d);else for(let m of r)(0,ls.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>f(m,p)),t.ok(p)}else e.if((0,ls.checkMissingProp)(t,r,m)),(0,ls.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,ls.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,ls.propertyInData)(e,o,m,a.ownProperties)),e.if((0,ds.not)(p),()=>{t.error(),e.break()})},ds.nil)}}};wd.default=XP});var iy=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var ps=F(),QP={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ps.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ps._)`{limit: ${t}}`},eR={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:QP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?ps.operators.GT:ps.operators.LT;t.fail$data((0,ps._)`${r}.length ${o} ${n}`)}};Ed.default=eR});var Xi=T(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var ay=Gl();ay.code='require("ajv/dist/runtime/equal").default';Td.default=ay});var cy=T(Pd=>{"use strict";Object.defineProperty(Pd,"__esModule",{value:!0});var $d=Xo(),je=F(),tR=ee(),rR=Xi(),nR={message:({params:{i:t,j:e}})=>(0,je.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,je._)`{i: ${t}, j: ${e}}`},oR={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:nR,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,$d.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,je._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,je._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,je._)`${p} > 1`,()=>(d()?f:m)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let g=e.name("item"),y=(0,$d.checkDataTypes)(u,g,a.opts.strictNumbers,$d.DataType.Wrong),x=e.const("indices",(0,je._)`{}`);e.for((0,je._)`;${p}--;`,()=>{e.let(g,(0,je._)`${r}[${p}]`),e.if(y,(0,je._)`continue`),u.length>1&&e.if((0,je._)`typeof ${g} == "string"`,(0,je._)`${g} += "_"`),e.if((0,je._)`typeof ${x}[${g}] == "number"`,()=>{e.assign(h,(0,je._)`${x}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,je._)`${x}[${g}] = ${p}`)})}function m(p,h){let g=(0,tR.useFunc)(e,rR.default),y=e.name("outer");e.label(y).for((0,je._)`;${p}--;`,()=>e.for((0,je._)`${h} = ${p}; ${h}--;`,()=>e.if((0,je._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(y)})))}}};Pd.default=oR});var uy=T(Od=>{"use strict";Object.defineProperty(Od,"__esModule",{value:!0});var Rd=F(),sR=ee(),iR=Xi(),aR={message:"must be equal to constant",params:({schemaCode:t})=>(0,Rd._)`{allowedValue: ${t}}`},cR={keyword:"const",$data:!0,error:aR,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,Rd._)`!${(0,sR.useFunc)(e,iR.default)}(${r}, ${o})`):t.fail((0,Rd._)`${s} !== ${r}`)}};Od.default=cR});var ly=T(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var fs=F(),uR=ee(),lR=Xi(),dR={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,fs._)`{allowedValues: ${t}}`},pR={keyword:"enum",schemaType:"array",$data:!0,error:dR,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,uR.useFunc)(e,lR.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let m=e.const("vSchema",s);l=(0,fs.or)(...o.map((p,h)=>f(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,m=>e.if((0,fs._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,fs._)`${u()}(${r}, ${m}[${p}])`:(0,fs._)`${r} === ${h}`}}};Cd.default=pR});var dy=T(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var fR=X_(),mR=Q_(),hR=ry(),gR=ny(),_R=oy(),yR=sy(),xR=iy(),vR=cy(),kR=uy(),SR=ly(),bR=[fR.default,mR.default,hR.default,gR.default,_R.default,yR.default,xR.default,vR.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},kR.default,SR.default];Id.default=bR});var zd=T(ms=>{"use strict";Object.defineProperty(ms,"__esModule",{value:!0});ms.validateAdditionalItems=void 0;var pn=F(),Nd=ee(),wR={message:({params:{len:t}})=>(0,pn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,pn._)`{limit: ${t}}`},ER={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:wR,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,Nd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}py(t,n)}};function py(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,pn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,pn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,Nd.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,pn._)`${a} <= ${e.length}`);r.if((0,pn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:Nd.Type.Num},u),i.allErrors||r.if((0,pn.not)(u),()=>r.break())})}}ms.validateAdditionalItems=py;ms.default=ER});var Ad=T(hs=>{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});hs.validateTuple=void 0;var fy=F(),Qi=ee(),TR=ft(),$R={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return my(t,"additionalItems",e);r.items=!0,!(0,Qi.alwaysValidSchema)(r,e)&&t.ok((0,TR.validateArray)(t))}};function my(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=Qi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,fy._)`${s}.length`);r.forEach((d,f)=>{(0,Qi.alwaysValidSchema)(a,d)||(n.if((0,fy._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:m}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,Qi.checkStrictMode)(a,g,f.strictTuples)}}}hs.validateTuple=my;hs.default=$R});var hy=T(jd=>{"use strict";Object.defineProperty(jd,"__esModule",{value:!0});var PR=Ad(),RR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,PR.validateTuple)(t,"items")};jd.default=RR});var _y=T(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var gy=F(),OR=ee(),CR=ft(),IR=zd(),NR={message:({params:{len:t}})=>(0,gy.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,gy._)`{limit: ${t}}`},zR={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:NR,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,OR.alwaysValidSchema)(n,e)&&(o?(0,IR.validateAdditionalItems)(t,o):t.ok((0,CR.validateArray)(t)))}};Md.default=zR});var yy=T(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var ht=F(),ea=ee(),AR={message:({params:{min:t,max:e}})=>e===void 0?(0,ht.str)`must contain at least ${t} valid item(s)`:(0,ht.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ht._)`{minContains: ${t}}`:(0,ht._)`{minContains: ${t}, maxContains: ${e}}`},jR={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:AR,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,ht._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,ea.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,ea.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,ea.alwaysValidSchema)(s,r)){let h=(0,ht._)`${l} >= ${i}`;a!==void 0&&(h=(0,ht._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ht._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>p(g)))}function m(h,g){e.forRange("i",0,l,y=>{t.subschema({keyword:"contains",dataProp:y,dataPropType:ea.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,ht._)`${h}++`),a===void 0?e.if((0,ht._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ht._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ht._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Dd.default=jR});var ky=T(Ht=>{"use strict";Object.defineProperty(Ht,"__esModule",{value:!0});Ht.validateSchemaDeps=Ht.validatePropertyDeps=Ht.error=void 0;var Ld=F(),MR=ee(),gs=ft();Ht.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Ld.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Ld._)`{property: ${t},
6
+ || ${i} === "boolean" || ${o} === null`).assign(a,(0,H._)`[${o}]`)}}}function _0({gen:t,parentData:e,parentDataProperty:r},n){t.if((0,H._)`${e} !== undefined`,()=>t.assign((0,H._)`${e}[${r}]`,n))}function Bl(t,e,r,n=Fn.Correct){let o=n===Fn.Correct?H.operators.EQ:H.operators.NEQ,s;switch(t){case"null":return(0,H._)`${e} ${o} null`;case"array":s=(0,H._)`Array.isArray(${e})`;break;case"object":s=(0,H._)`${e} && typeof ${e} == "object" && !Array.isArray(${e})`;break;case"integer":s=i((0,H._)`!(${e} % 1) && !isNaN(${e})`);break;case"number":s=i();break;default:return(0,H._)`typeof ${e} ${o} ${t}`}return n===Fn.Correct?s:(0,H.not)(s);function i(a=H.nil){return(0,H.and)((0,H._)`typeof ${e} == "number"`,a,r?(0,H._)`isFinite(${e})`:H.nil)}}Fe.checkDataType=Bl;function Vl(t,e,r,n){if(t.length===1)return Bl(t[0],e,r,n);let o,s=(0,qg.toHash)(t);if(s.array&&s.object){let i=(0,H._)`typeof ${e} != "object"`;o=s.null?i:(0,H._)`!${e} || ${i}`,delete s.null,delete s.array,delete s.object}else o=H.nil;s.number&&delete s.integer;for(let i in s)o=(0,H.and)(o,Bl(i,e,r,n));return o}Fe.checkDataTypes=Vl;var y0={message:({schema:t})=>`must be ${t}`,params:({schema:t,schemaValue:e})=>typeof t=="string"?(0,H._)`{type: ${t}}`:(0,H._)`{type: ${e}}`};function Kl(t){let e=x0(t);(0,p0.reportError)(e,y0)}Fe.reportTypeError=Kl;function x0(t){let{gen:e,data:r,schema:n}=t,o=(0,qg.schemaRefOrVal)(t,n,"type");return{gen:e,keyword:"type",data:r,schema:n.type,schemaCode:o,schemaValue:o,parentSchema:n,params:{},it:t}}});var Kg=T(ji=>{"use strict";Object.defineProperty(ji,"__esModule",{value:!0});ji.assignDefaults=void 0;var Bn=F(),v0=ee();function k0(t,e){let{properties:r,items:n}=t.schema;if(e==="object"&&r)for(let o in r)Vg(t,o,r[o].default);else e==="array"&&Array.isArray(n)&&n.forEach((o,s)=>Vg(t,s,o.default))}ji.assignDefaults=k0;function Vg(t,e,r){let{gen:n,compositeRule:o,data:s,opts:i}=t;if(r===void 0)return;let a=(0,Bn._)`${s}${(0,Bn.getProperty)(e)}`;if(o){(0,v0.checkStrictMode)(t,`default is ignored for: ${a}`);return}let c=(0,Bn._)`${a} === undefined`;i.useDefaults==="empty"&&(c=(0,Bn._)`${c} || ${a} === null || ${a} === ""`),n.if(c,(0,Bn._)`${a} = ${(0,Bn.stringify)(r)}`)}});var ft=T(se=>{"use strict";Object.defineProperty(se,"__esModule",{value:!0});se.validateUnion=se.validateArray=se.usePattern=se.callValidateCode=se.schemaProperties=se.allSchemaProperties=se.noPropertyInData=se.propertyInData=se.isOwnProperty=se.hasPropFunc=se.reportMissingProp=se.checkMissingProp=se.checkReportMissingProp=void 0;var fe=F(),Wl=ee(),vr=rr(),S0=ee();function b0(t,e){let{gen:r,data:n,it:o}=t;r.if(Gl(r,n,e,o.opts.ownProperties),()=>{t.setParams({missingProperty:(0,fe._)`${e}`},!0),t.error()})}se.checkReportMissingProp=b0;function w0({gen:t,data:e,it:{opts:r}},n,o){return(0,fe.or)(...n.map(s=>(0,fe.and)(Gl(t,e,s,r.ownProperties),(0,fe._)`${o} = ${s}`)))}se.checkMissingProp=w0;function E0(t,e){t.setParams({missingProperty:e},!0),t.error()}se.reportMissingProp=E0;function Wg(t){return t.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:(0,fe._)`Object.prototype.hasOwnProperty`})}se.hasPropFunc=Wg;function Jl(t,e,r){return(0,fe._)`${Wg(t)}.call(${e}, ${r})`}se.isOwnProperty=Jl;function T0(t,e,r,n){let o=(0,fe._)`${e}${(0,fe.getProperty)(r)} !== undefined`;return n?(0,fe._)`${o} && ${Jl(t,e,r)}`:o}se.propertyInData=T0;function Gl(t,e,r,n){let o=(0,fe._)`${e}${(0,fe.getProperty)(r)} === undefined`;return n?(0,fe.or)(o,(0,fe.not)(Jl(t,e,r))):o}se.noPropertyInData=Gl;function Jg(t){return t?Object.keys(t).filter(e=>e!=="__proto__"):[]}se.allSchemaProperties=Jg;function $0(t,e){return Jg(e).filter(r=>!(0,Wl.alwaysValidSchema)(t,e[r]))}se.schemaProperties=$0;function P0({schemaCode:t,data:e,it:{gen:r,topSchemaRef:n,schemaPath:o,errorPath:s},it:i},a,c,u){let l=u?(0,fe._)`${t}, ${e}, ${n}${o}`:e,d=[[vr.default.instancePath,(0,fe.strConcat)(vr.default.instancePath,s)],[vr.default.parentData,i.parentData],[vr.default.parentDataProperty,i.parentDataProperty],[vr.default.rootData,vr.default.rootData]];i.opts.dynamicRef&&d.push([vr.default.dynamicAnchors,vr.default.dynamicAnchors]);let f=(0,fe._)`${l}, ${r.object(...d)}`;return c!==fe.nil?(0,fe._)`${a}.call(${c}, ${f})`:(0,fe._)`${a}(${f})`}se.callValidateCode=P0;var R0=(0,fe._)`new RegExp`;function O0({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,fe._)`${o.code==="new RegExp"?R0:(0,S0.useFunc)(t,o)}(${r}, ${n})`})}se.usePattern=O0;function C0(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,fe._)`${r}.length`);e.forRange("i",0,c,u=>{t.subschema({keyword:n,dataProp:u,dataPropType:Wl.Type.Num},s),e.if((0,fe.not)(s),a)})}}se.validateArray=C0;function I0(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,Wl.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,fe._)`${i} || ${a}`),t.mergeValidEvaluated(l,a)||e.if((0,fe.not)(i))})),t.result(i,()=>t.reset(),()=>t.error(!0))}se.validateUnion=I0});var Xg=T(Zt=>{"use strict";Object.defineProperty(Zt,"__esModule",{value:!0});Zt.validateKeywordUsage=Zt.validSchemaType=Zt.funcKeywordCode=Zt.macroKeywordCode=void 0;var Je=F(),un=rr(),N0=ft(),z0=Yo();function A0(t,e){let{gen:r,keyword:n,schema:o,parentSchema:s,it:i}=t,a=e.macro.call(i.self,o,s,i),c=Yg(r,n,a);i.opts.validateSchema!==!1&&i.self.validateSchema(a,!0);let u=r.name("valid");t.subschema({schema:a,schemaPath:Je.nil,errSchemaPath:`${i.errSchemaPath}/${n}`,topSchemaRef:c,compositeRule:!0},u),t.pass(u,()=>t.error(!0))}Zt.macroKeywordCode=A0;function j0(t,e){var r;let{gen:n,keyword:o,schema:s,parentSchema:i,$data:a,it:c}=t;D0(c,e);let u=!a&&e.compile?e.compile.call(c.self,s,i,c):e.validate,l=Yg(n,o,u),d=n.let("valid");t.block$data(d,f),t.ok((r=e.valid)!==null&&r!==void 0?r:d);function f(){if(e.errors===!1)h(),e.modifying&&Gg(t),g(()=>t.error());else{let x=e.async?m():p();e.modifying&&Gg(t),g(()=>M0(t,x))}}function m(){let x=n.let("ruleErrs",null);return n.try(()=>h((0,Je._)`await `),y=>n.assign(d,!1).if((0,Je._)`${y} instanceof ${c.ValidationError}`,()=>n.assign(x,(0,Je._)`${y}.errors`),()=>n.throw(y))),x}function p(){let x=(0,Je._)`${l}.errors`;return n.assign(x,null),h(Je.nil),x}function h(x=e.async?(0,Je._)`await `:Je.nil){let y=c.opts.passContext?un.default.this:un.default.self,k=!("compile"in e&&!a||e.schema===!1);n.assign(d,(0,Je._)`${x}${(0,N0.callValidateCode)(t,l,y,k)}`,e.modifying)}function g(x){var y;n.if((0,Je.not)((y=e.valid)!==null&&y!==void 0?y:d),x)}}Zt.funcKeywordCode=j0;function Gg(t){let{gen:e,data:r,it:n}=t;e.if(n.parentData,()=>e.assign(r,(0,Je._)`${n.parentData}[${n.parentDataProperty}]`))}function M0(t,e){let{gen:r}=t;r.if((0,Je._)`Array.isArray(${e})`,()=>{r.assign(un.default.vErrors,(0,Je._)`${un.default.vErrors} === null ? ${e} : ${un.default.vErrors}.concat(${e})`).assign(un.default.errors,(0,Je._)`${un.default.vErrors}.length`),(0,z0.extendErrors)(t)},()=>t.error())}function D0({schemaEnv:t},e){if(e.async&&!t.$async)throw new Error("async keyword in sync schema")}function Yg(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,Je.stringify)(r)})}function L0(t,e,r=!1){return!e.length||e.some(n=>n==="array"?Array.isArray(t):n==="object"?t&&typeof t=="object"&&!Array.isArray(t):typeof t==n||r&&typeof t>"u")}Zt.validSchemaType=L0;function Z0({schema:t,opts:e,self:r,errSchemaPath:n},o,s){if(Array.isArray(o.keyword)?!o.keyword.includes(s):o.keyword!==s)throw new Error("ajv implementation error");let i=o.dependencies;if(i?.some(a=>!Object.prototype.hasOwnProperty.call(t,a)))throw new Error(`parent schema must have dependencies of ${s}: ${i.join(",")}`);if(o.validateSchema&&!o.validateSchema(t[s])){let c=`keyword "${s}" value is invalid at path "${n}": `+r.errorsText(o.validateSchema.errors);if(e.validateSchema==="log")r.logger.error(c);else throw new Error(c)}}Zt.validateKeywordUsage=Z0});var e_=T(kr=>{"use strict";Object.defineProperty(kr,"__esModule",{value:!0});kr.extendSubschemaMode=kr.extendSubschemaData=kr.getSubschema=void 0;var Ut=F(),Qg=ee();function U0(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,Ut._)`${t.schemaPath}${(0,Ut.getProperty)(e)}`,errSchemaPath:`${t.errSchemaPath}/${e}`}:{schema:a[r],schemaPath:(0,Ut._)`${t.schemaPath}${(0,Ut.getProperty)(e)}${(0,Ut.getProperty)(r)}`,errSchemaPath:`${t.errSchemaPath}/${e}/${(0,Qg.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')}kr.getSubschema=U0;function H0(t,e,{dataProp:r,dataPropType:n,data:o,dataTypes:s,propertyName:i}){if(o!==void 0&&r!==void 0)throw new Error('both "data" and "dataProp" passed, only one allowed');let{gen:a}=e;if(r!==void 0){let{errorPath:u,dataPathArr:l,opts:d}=e,f=a.let("data",(0,Ut._)`${e.data}${(0,Ut.getProperty)(r)}`,!0);c(f),t.errorPath=(0,Ut.str)`${u}${(0,Qg.getErrorPath)(r,n,d.jsPropertySyntax)}`,t.parentDataProperty=(0,Ut._)`${r}`,t.dataPathArr=[...l,t.parentDataProperty]}if(o!==void 0){let u=o instanceof Ut.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]}}kr.extendSubschemaData=H0;function q0(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}kr.extendSubschemaMode=q0});var Yl=T((Y1,t_)=>{"use strict";t_.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 n_=T((X1,r_)=>{"use strict";var Sr=r_.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(){};Mi(e,n,o,t,"",t)};Sr.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};Sr.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};Sr.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};Sr.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 Mi(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 Sr.arrayKeywords)for(var f=0;f<d.length;f++)Mi(t,e,r,d[f],o+"/"+l+"/"+f,s,o,l,n,f)}else if(l in Sr.propsKeywords){if(d&&typeof d=="object")for(var m in d)Mi(t,e,r,d[m],o+"/"+l+"/"+F0(m),s,o,l,n,m)}else(l in Sr.keywords||t.allKeys&&!(l in Sr.skipKeywords))&&Mi(t,e,r,d,o+"/"+l,s,o,l,n)}r(n,o,s,i,a,c,u)}}function F0(t){return t.replace(/~/g,"~0").replace(/\//g,"~1")}});var Qo=T(rt=>{"use strict";Object.defineProperty(rt,"__esModule",{value:!0});rt.getSchemaRefs=rt.resolveUrl=rt.normalizeId=rt._getFullPath=rt.getFullPath=rt.inlineRef=void 0;var B0=ee(),V0=Yl(),K0=n_(),W0=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function J0(t,e=!0){return typeof t=="boolean"?!0:e===!0?!Xl(t):e?o_(t)<=e:!1}rt.inlineRef=J0;var G0=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function Xl(t){for(let e in t){if(G0.has(e))return!0;let r=t[e];if(Array.isArray(r)&&r.some(Xl)||typeof r=="object"&&Xl(r))return!0}return!1}function o_(t){let e=0;for(let r in t){if(r==="$ref")return 1/0;if(e++,!W0.has(r)&&(typeof t[r]=="object"&&(0,B0.eachItem)(t[r],n=>e+=o_(n)),e===1/0))return 1/0}return e}function s_(t,e="",r){r!==!1&&(e=Vn(e));let n=t.parse(e);return i_(t,n)}rt.getFullPath=s_;function i_(t,e){return t.serialize(e).split("#")[0]+"#"}rt._getFullPath=i_;var Y0=/#\/?$/;function Vn(t){return t?t.replace(Y0,""):""}rt.normalizeId=Vn;function X0(t,e,r){return r=Vn(r),t.resolve(e,r)}rt.resolveUrl=X0;var Q0=/^[a-z_][-a-z0-9._]*$/i;function e$(t,e){if(typeof t=="boolean")return{};let{schemaId:r,uriResolver:n}=this.opts,o=Vn(t[r]||e),s={"":o},i=s_(n,o,!1),a={},c=new Set;return K0(t,{allKeys:!0},(d,f,m,p)=>{if(p===void 0)return;let h=i+f,g=s[p];typeof d[r]=="string"&&(g=x.call(this,d[r])),y.call(this,d.$anchor),y.call(this,d.$dynamicAnchor),s[f]=g;function x(k){let w=this.opts.uriResolver.resolve;if(k=Vn(g?w(g,k):k),c.has(k))throw l(k);c.add(k);let O=this.refs[k];return typeof O=="string"&&(O=this.refs[O]),typeof O=="object"?u(d,O.schema,k):k!==Vn(h)&&(k[0]==="#"?(u(d,a[k],k),a[k]=d):this.refs[k]=h),k}function y(k){if(typeof k=="string"){if(!Q0.test(k))throw new Error(`invalid anchor "${k}"`);x.call(this,`#${k}`)}}}),a;function u(d,f,m){if(f!==void 0&&!V0(d,f))throw l(m)}function l(d){return new Error(`reference "${d}" resolves to more than one schema`)}}rt.getSchemaRefs=e$});var rs=T(br=>{"use strict";Object.defineProperty(br,"__esModule",{value:!0});br.getData=br.KeywordCxt=br.validateFunctionCode=void 0;var d_=Zg(),a_=Xo(),ed=Fl(),Di=Xo(),t$=Kg(),ts=Xg(),Ql=e_(),N=F(),Z=rr(),r$=Qo(),nr=ee(),es=Yo();function n$(t){if(m_(t)&&(h_(t),f_(t))){i$(t);return}p_(t,()=>(0,d_.topBoolOrEmptySchema)(t))}br.validateFunctionCode=n$;function p_({gen:t,validateName:e,schema:r,schemaEnv:n,opts:o},s){o.code.es5?t.func(e,(0,N._)`${Z.default.data}, ${Z.default.valCxt}`,n.$async,()=>{t.code((0,N._)`"use strict"; ${c_(r,o)}`),s$(t,o),t.code(s)}):t.func(e,(0,N._)`${Z.default.data}, ${o$(o)}`,n.$async,()=>t.code(c_(r,o)).code(s))}function o$(t){return(0,N._)`{${Z.default.instancePath}="", ${Z.default.parentData}, ${Z.default.parentDataProperty}, ${Z.default.rootData}=${Z.default.data}${t.dynamicRef?(0,N._)`, ${Z.default.dynamicAnchors}={}`:N.nil}}={}`}function s$(t,e){t.if(Z.default.valCxt,()=>{t.var(Z.default.instancePath,(0,N._)`${Z.default.valCxt}.${Z.default.instancePath}`),t.var(Z.default.parentData,(0,N._)`${Z.default.valCxt}.${Z.default.parentData}`),t.var(Z.default.parentDataProperty,(0,N._)`${Z.default.valCxt}.${Z.default.parentDataProperty}`),t.var(Z.default.rootData,(0,N._)`${Z.default.valCxt}.${Z.default.rootData}`),e.dynamicRef&&t.var(Z.default.dynamicAnchors,(0,N._)`${Z.default.valCxt}.${Z.default.dynamicAnchors}`)},()=>{t.var(Z.default.instancePath,(0,N._)`""`),t.var(Z.default.parentData,(0,N._)`undefined`),t.var(Z.default.parentDataProperty,(0,N._)`undefined`),t.var(Z.default.rootData,Z.default.data),e.dynamicRef&&t.var(Z.default.dynamicAnchors,(0,N._)`{}`)})}function i$(t){let{schema:e,opts:r,gen:n}=t;p_(t,()=>{r.$comment&&e.$comment&&__(t),d$(t),n.let(Z.default.vErrors,null),n.let(Z.default.errors,0),r.unevaluated&&a$(t),g_(t),m$(t)})}function a$(t){let{gen:e,validateName:r}=t;t.evaluated=e.const("evaluated",(0,N._)`${r}.evaluated`),e.if((0,N._)`${t.evaluated}.dynamicProps`,()=>e.assign((0,N._)`${t.evaluated}.props`,(0,N._)`undefined`)),e.if((0,N._)`${t.evaluated}.dynamicItems`,()=>e.assign((0,N._)`${t.evaluated}.items`,(0,N._)`undefined`))}function c_(t,e){let r=typeof t=="object"&&t[e.schemaId];return r&&(e.code.source||e.code.process)?(0,N._)`/*# sourceURL=${r} */`:N.nil}function c$(t,e){if(m_(t)&&(h_(t),f_(t))){u$(t,e);return}(0,d_.boolOrEmptySchema)(t,e)}function f_({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 m_(t){return typeof t.schema!="boolean"}function u$(t,e){let{schema:r,gen:n,opts:o}=t;o.$comment&&r.$comment&&__(t),p$(t),f$(t);let s=n.const("_errs",Z.default.errors);g_(t,s),n.var(e,(0,N._)`${s} === ${Z.default.errors}`)}function h_(t){(0,nr.checkUnknownRules)(t),l$(t)}function g_(t,e){if(t.opts.jtd)return u_(t,[],!1,e);let r=(0,a_.getSchemaTypes)(t.schema),n=(0,a_.coerceAndCheckDataType)(t,r);u_(t,r,!n,e)}function l$(t){let{schema:e,errSchemaPath:r,opts:n,self:o}=t;e.$ref&&n.ignoreKeywordsWithRef&&(0,nr.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,nr.checkStrictMode)(t,"default is ignored in the schema root")}function p$(t){let e=t.schema[t.opts.schemaId];e&&(t.baseId=(0,r$.resolveUrl)(t.opts.uriResolver,t.baseId,e))}function f$(t){if(t.schema.$async&&!t.schemaEnv.$async)throw new Error("async schema in sync schema")}function __({gen:t,schemaEnv:e,schema:r,errSchemaPath:n,opts:o}){let s=r.$comment;if(o.$comment===!0)t.code((0,N._)`${Z.default.self}.logger.log(${s})`);else if(typeof o.$comment=="function"){let i=(0,N.str)`${n}/$comment`,a=t.scopeValue("root",{ref:e.root});t.code((0,N._)`${Z.default.self}.opts.$comment(${s}, ${i}, ${a}.schema)`)}}function m$(t){let{gen:e,schemaEnv:r,validateName:n,ValidationError:o,opts:s}=t;r.$async?e.if((0,N._)`${Z.default.errors} === 0`,()=>e.return(Z.default.data),()=>e.throw((0,N._)`new ${o}(${Z.default.vErrors})`)):(e.assign((0,N._)`${n}.errors`,Z.default.vErrors),s.unevaluated&&h$(t),e.return((0,N._)`${Z.default.errors} === 0`))}function h$({gen:t,evaluated:e,props:r,items:n}){r instanceof N.Name&&t.assign((0,N._)`${e}.props`,r),n instanceof N.Name&&t.assign((0,N._)`${e}.items`,n)}function u_(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,nr.schemaHasRulesButRef)(s,l))){o.block(()=>x_(t,"$ref",l.all.$ref.definition));return}c.jtd||g$(t,e),o.block(()=>{for(let f of l.rules)d(f);d(l.post)});function d(f){(0,ed.shouldUseGroup)(s,f)&&(f.type?(o.if((0,Di.checkDataType)(f.type,i,c.strictNumbers)),l_(t,f),e.length===1&&e[0]===f.type&&r&&(o.else(),(0,Di.reportTypeError)(t)),o.endIf()):l_(t,f),a||o.if((0,N._)`${Z.default.errors} === ${n||0}`))}}function l_(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,ed.shouldUseRule)(n,s)&&x_(t,s.keyword,s.definition,e.type)})}function g$(t,e){t.schemaEnv.meta||!t.opts.strictTypes||(_$(t,e),t.opts.allowUnionTypes||y$(t,e),x$(t,t.dataTypes))}function _$(t,e){if(e.length){if(!t.dataTypes.length){t.dataTypes=e;return}e.forEach(r=>{y_(t.dataTypes,r)||td(t,`type "${r}" not allowed by context "${t.dataTypes.join(",")}"`)}),k$(t,e)}}function y$(t,e){e.length>1&&!(e.length===2&&e.includes("null"))&&td(t,"use allowUnionTypes to allow union type keyword")}function x$(t,e){let r=t.self.RULES.all;for(let n in r){let o=r[n];if(typeof o=="object"&&(0,ed.shouldUseRule)(t.schema,o)){let{type:s}=o.definition;s.length&&!s.some(i=>v$(e,i))&&td(t,`missing type "${s.join(",")}" for keyword "${n}"`)}}}function v$(t,e){return t.includes(e)||e==="number"&&t.includes("integer")}function y_(t,e){return t.includes(e)||e==="integer"&&t.includes("number")}function k$(t,e){let r=[];for(let n of t.dataTypes)y_(e,n)?r.push(n):e.includes("integer")&&n==="number"&&r.push("integer");t.dataTypes=r}function td(t,e){let r=t.schemaEnv.baseId+t.errSchemaPath;e+=` at "${r}" (strictTypes)`,(0,nr.checkStrictMode)(t,e,t.opts.strictTypes)}var Li=class{constructor(e,r,n){if((0,ts.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,nr.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",v_(this.$data,e));else if(this.schemaCode=this.schemaValue,!(0,ts.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",Z.default.errors))}result(e,r,n){this.failResult((0,N.not)(e),r,n)}failResult(e,r,n){this.gen.if(e),n?n():this.error(),r?(this.gen.else(),r(),this.allErrors&&this.gen.endIf()):this.allErrors?this.gen.endIf():this.gen.else()}pass(e,r){this.failResult((0,N.not)(e),void 0,r)}fail(e){if(e===void 0){this.error(),this.allErrors||this.gen.if(!1);return}this.gen.if(e),this.error(),this.allErrors?this.gen.endIf():this.gen.else()}fail$data(e){if(!this.$data)return this.fail(e);let{schemaCode:r}=this;this.fail((0,N._)`${r} !== undefined && (${(0,N.or)(this.invalid$data(),e)})`)}error(e,r,n){if(r){this.setParams(r),this._error(e,n),this.setParams({});return}this._error(e,n)}_error(e,r){(e?es.reportExtraError:es.reportError)(this,this.def.error,r)}$dataError(){(0,es.reportError)(this,this.def.$dataError||es.keyword$DataError)}reset(){if(this.errsCount===void 0)throw new Error('add "trackErrors" to keyword definition');(0,es.resetErrorsCount)(this.gen,this.errsCount)}ok(e){this.allErrors||this.gen.if(e)}setParams(e,r){r?Object.assign(this.params,e):this.params=e}block$data(e,r,n=N.nil){this.gen.block(()=>{this.check$data(e,n),r()})}check$data(e=N.nil,r=N.nil){if(!this.$data)return;let{gen:n,schemaCode:o,schemaType:s,def:i}=this;n.if((0,N.or)((0,N._)`${o} === undefined`,r)),e!==N.nil&&n.assign(e,!0),(s.length||i.validateSchema)&&(n.elseIf(this.invalid$data()),this.$dataError(),e!==N.nil&&n.assign(e,!1)),n.else()}invalid$data(){let{gen:e,schemaCode:r,schemaType:n,def:o,it:s}=this;return(0,N.or)(i(),a());function i(){if(n.length){if(!(r instanceof N.Name))throw new Error("ajv implementation error");let c=Array.isArray(n)?n:[n];return(0,N._)`${(0,Di.checkDataTypes)(c,r,s.opts.strictNumbers,Di.DataType.Wrong)}`}return N.nil}function a(){if(o.validateSchema){let c=e.scopeValue("validate$data",{ref:o.validateSchema});return(0,N._)`!${c}(${r})`}return N.nil}}subschema(e,r){let n=(0,Ql.getSubschema)(this.it,e);(0,Ql.extendSubschemaData)(n,this.it,e),(0,Ql.extendSubschemaMode)(n,e);let o={...this.it,...n,items:void 0,props:void 0};return c$(o,r),o}mergeEvaluated(e,r){let{it:n,gen:o}=this;n.opts.unevaluated&&(n.props!==!0&&e.props!==void 0&&(n.props=nr.mergeEvaluated.props(o,e.props,n.props,r)),n.items!==!0&&e.items!==void 0&&(n.items=nr.mergeEvaluated.items(o,e.items,n.items,r)))}mergeValidEvaluated(e,r){let{it:n,gen:o}=this;if(n.opts.unevaluated&&(n.props!==!0||n.items!==!0))return o.if(r,()=>this.mergeEvaluated(e,N.Name)),!0}};br.KeywordCxt=Li;function x_(t,e,r,n){let o=new Li(t,r,e);"code"in r?r.code(o,n):o.$data&&r.validate?(0,ts.funcKeywordCode)(o,r):"macro"in r?(0,ts.macroKeywordCode)(o,r):(r.compile||r.validate)&&(0,ts.funcKeywordCode)(o,r)}var S$=/^\/(?:[^~]|~0|~1)*$/,b$=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function v_(t,{dataLevel:e,dataNames:r,dataPathArr:n}){let o,s;if(t==="")return Z.default.rootData;if(t[0]==="/"){if(!S$.test(t))throw new Error(`Invalid JSON-pointer: ${t}`);o=t,s=Z.default.rootData}else{let u=b$.exec(t);if(!u)throw new Error(`Invalid JSON-pointer: ${t}`);let l=+u[1];if(o=u[2],o==="#"){if(l>=e)throw new Error(c("property/index",l));return n[e-l]}if(l>e)throw new Error(c("data",l));if(s=r[e-l],!o)return s}let i=s,a=o.split("/");for(let u of a)u&&(s=(0,N._)`${s}${(0,N.getProperty)((0,nr.unescapeJsonPointer)(u))}`,i=(0,N._)`${i} && ${s}`);return i;function c(u,l){return`Cannot access ${u} ${l} levels up, current level is ${e}`}}br.getData=v_});var Zi=T(nd=>{"use strict";Object.defineProperty(nd,"__esModule",{value:!0});var rd=class extends Error{constructor(e){super("validation failed"),this.errors=e,this.ajv=this.validation=!0}};nd.default=rd});var ns=T(id=>{"use strict";Object.defineProperty(id,"__esModule",{value:!0});var od=Qo(),sd=class extends Error{constructor(e,r,n,o){super(o||`can't resolve reference ${n} from id ${r}`),this.missingRef=(0,od.resolveUrl)(e,r,n),this.missingSchema=(0,od.normalizeId)((0,od.getFullPath)(e,this.missingRef))}};id.default=sd});var Hi=T(mt=>{"use strict";Object.defineProperty(mt,"__esModule",{value:!0});mt.resolveSchema=mt.getCompilingSchema=mt.resolveRef=mt.compileSchema=mt.SchemaEnv=void 0;var Pt=F(),w$=Zi(),ln=rr(),Rt=Qo(),k_=ee(),E$=rs(),Kn=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,Rt.normalizeId)(n?.[e.schemaId||"$id"]),this.schemaPath=e.schemaPath,this.localRefs=e.localRefs,this.meta=e.meta,this.$async=n?.$async,this.refs={}}};mt.SchemaEnv=Kn;function cd(t){let e=S_.call(this,t);if(e)return e;let r=(0,Rt.getFullPath)(this.opts.uriResolver,t.root.baseId),{es5:n,lines:o}=this.opts.code,{ownProperties:s}=this.opts,i=new Pt.CodeGen(this.scope,{es5:n,lines:o,ownProperties:s}),a;t.$async&&(a=i.scopeValue("Error",{ref:w$.default,code:(0,Pt._)`require("ajv/dist/runtime/validation_error").default`}));let c=i.scopeName("validate");t.validateName=c;let u={gen:i,allErrors:this.opts.allErrors,data:ln.default.data,parentData:ln.default.parentData,parentDataProperty:ln.default.parentDataProperty,dataNames:[ln.default.data],dataPathArr:[Pt.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:i.scopeValue("schema",this.opts.code.source===!0?{ref:t.schema,code:(0,Pt.stringify)(t.schema)}:{ref:t.schema}),validateName:c,ValidationError:a,schema:t.schema,schemaEnv:t,rootId:r,baseId:t.baseId||r,schemaPath:Pt.nil,errSchemaPath:t.schemaPath||(this.opts.jtd?"":"#"),errorPath:(0,Pt._)`""`,opts:this.opts,self:this},l;try{this._compilations.add(t),(0,E$.validateFunctionCode)(u),i.optimize(this.opts.code.optimize);let d=i.toString();l=`${i.scopeRefs(ln.default.scope)}return ${d}`,this.opts.code.process&&(l=this.opts.code.process(l,t));let m=new Function(`${ln.default.self}`,`${ln.default.scope}`,l)(this,this.scope.get());if(this.scope.value(c,{ref:m}),m.errors=null,m.schema=t.schema,m.schemaEnv=t,t.$async&&(m.$async=!0),this.opts.code.source===!0&&(m.source={validateName:c,validateCode:d,scopeValues:i._values}),this.opts.unevaluated){let{props:p,items:h}=u;m.evaluated={props:p instanceof Pt.Name?void 0:p,items:h instanceof Pt.Name?void 0:h,dynamicProps:p instanceof Pt.Name,dynamicItems:h instanceof Pt.Name},m.source&&(m.source.evaluated=(0,Pt.stringify)(m.evaluated))}return t.validate=m,t}catch(d){throw delete t.validate,delete t.validateName,l&&this.logger.error("Error compiling schema, function code:",l),d}finally{this._compilations.delete(t)}}mt.compileSchema=cd;function T$(t,e,r){var n;r=(0,Rt.resolveUrl)(this.opts.uriResolver,e,r);let o=t.refs[r];if(o)return o;let s=R$.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 Kn({schema:i,schemaId:a,root:t,baseId:e}))}if(s!==void 0)return t.refs[r]=$$.call(this,s)}mt.resolveRef=T$;function $$(t){return(0,Rt.inlineRef)(t.schema,this.opts.inlineRefs)?t.schema:t.validate?t:cd.call(this,t)}function S_(t){for(let e of this._compilations)if(P$(e,t))return e}mt.getCompilingSchema=S_;function P$(t,e){return t.schema===e.schema&&t.root===e.root&&t.baseId===e.baseId}function R$(t,e){let r;for(;typeof(r=this.refs[e])=="string";)e=r;return r||this.schemas[e]||Ui.call(this,t,e)}function Ui(t,e){let r=this.opts.uriResolver.parse(e),n=(0,Rt._getFullPath)(this.opts.uriResolver,r),o=(0,Rt.getFullPath)(this.opts.uriResolver,t.baseId,void 0);if(Object.keys(t.schema).length>0&&n===o)return ad.call(this,r,t);let s=(0,Rt.normalizeId)(n),i=this.refs[s]||this.schemas[s];if(typeof i=="string"){let a=Ui.call(this,t,i);return typeof a?.schema!="object"?void 0:ad.call(this,r,a)}if(typeof i?.schema=="object"){if(i.validate||cd.call(this,i),s===(0,Rt.normalizeId)(e)){let{schema:a}=i,{schemaId:c}=this.opts,u=a[c];return u&&(o=(0,Rt.resolveUrl)(this.opts.uriResolver,o,u)),new Kn({schema:a,schemaId:c,root:t,baseId:o})}return ad.call(this,r,i)}}mt.resolveSchema=Ui;var O$=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function ad(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,k_.unescapeFragment)(a)];if(c===void 0)return;r=c;let u=typeof r=="object"&&r[this.opts.schemaId];!O$.has(a)&&u&&(e=(0,Rt.resolveUrl)(this.opts.uriResolver,e,u))}let s;if(typeof r!="boolean"&&r.$ref&&!(0,k_.schemaHasRulesButRef)(r,this.RULES)){let a=(0,Rt.resolveUrl)(this.opts.uriResolver,e,r.$ref);s=Ui.call(this,n,a)}let{schemaId:i}=this.opts;if(s=s||new Kn({schema:r,schemaId:i,root:n,baseId:e}),s.schema!==s.root.schema)return s}});var b_=T((oD,C$)=>{C$.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 ld=T((sD,$_)=>{"use strict";var I$=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),E_=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function ud(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 N$=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function w_(t){return t.length=0,!0}function z$(t,e,r){if(t.length){let n=ud(t);if(n!=="")e.push(n);else return r.error=!0,!1;t.length=0}return!0}function A$(t){let e=0,r={error:!1,address:"",zone:""},n=[],o=[],s=!1,i=!1,a=z$;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=w_}else{o.push(u);continue}}return o.length&&(a===w_?r.zone=o.join(""):i?n.push(o.join("")):n.push(ud(o))),r.address=n.join(""),r}function T_(t){if(j$(t,":")<2)return{host:t,isIPV6:!1};let e=A$(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 j$(t,e){let r=0;for(let n=0;n<t.length;n++)t[n]===e&&r++;return r}function M$(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 D$(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 L$(t){let e=[];if(t.userinfo!==void 0&&(e.push(t.userinfo),e.push("@")),t.host!==void 0){let r=unescape(t.host);if(!E_(r)){let n=T_(r);n.isIPV6===!0?r=`[${n.escapedHost}]`:r=t.host}e.push(r)}return(typeof t.port=="number"||typeof t.port=="string")&&(e.push(":"),e.push(String(t.port))),e.length?e.join(""):void 0}$_.exports={nonSimpleDomain:N$,recomposeAuthority:L$,normalizeComponentEncoding:D$,removeDotSegments:M$,isIPv4:E_,isUUID:I$,normalizeIPv6:T_,stringArrayToHexStripped:ud}});var I_=T((iD,C_)=>{"use strict";var{isUUID:Z$}=ld(),U$=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,H$=["http","https","ws","wss","urn","urn:uuid"];function q$(t){return H$.indexOf(t)!==-1}function dd(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 P_(t){return t.host||(t.error=t.error||"HTTP URIs must have a host."),t}function R_(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 F$(t){return t.secure=dd(t),t.resourceName=(t.path||"/")+(t.query?"?"+t.query:""),t.path=void 0,t.query=void 0,t}function B$(t){if((t.port===(dd(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 V$(t,e){if(!t.path)return t.error="URN can not be parsed",t;let r=t.path.match(U$);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=pd(o);t.path=void 0,s&&(t=s.parse(t,e))}else t.error=t.error||"URN can not be parsed.";return t}function K$(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=pd(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 W$(t,e){let r=t;return r.uuid=r.nss,r.nss=void 0,!e.tolerant&&(!r.uuid||!Z$(r.uuid))&&(r.error=r.error||"UUID is not valid."),r}function J$(t){let e=t;return e.nss=(t.uuid||"").toLowerCase(),e}var O_={scheme:"http",domainHost:!0,parse:P_,serialize:R_},G$={scheme:"https",domainHost:O_.domainHost,parse:P_,serialize:R_},qi={scheme:"ws",domainHost:!0,parse:F$,serialize:B$},Y$={scheme:"wss",domainHost:qi.domainHost,parse:qi.parse,serialize:qi.serialize},X$={scheme:"urn",parse:V$,serialize:K$,skipNormalize:!0},Q$={scheme:"urn:uuid",parse:W$,serialize:J$,skipNormalize:!0},Fi={http:O_,https:G$,ws:qi,wss:Y$,urn:X$,"urn:uuid":Q$};Object.setPrototypeOf(Fi,null);function pd(t){return t&&(Fi[t]||Fi[t.toLowerCase()])||void 0}C_.exports={wsIsSecure:dd,SCHEMES:Fi,isValidSchemeName:q$,getSchemeHandler:pd}});var A_=T((aD,Vi)=>{"use strict";var{normalizeIPv6:eP,removeDotSegments:os,recomposeAuthority:tP,normalizeComponentEncoding:Bi,isIPv4:rP,nonSimpleDomain:nP}=ld(),{SCHEMES:oP,getSchemeHandler:N_}=I_();function sP(t,e){return typeof t=="string"?t=Ht(or(t,e),e):typeof t=="object"&&(t=or(Ht(t,e),e)),t}function iP(t,e,r){let n=r?Object.assign({scheme:"null"},r):{scheme:"null"},o=z_(or(t,n),or(e,n),n,!0);return n.skipEscape=!0,Ht(o,n)}function z_(t,e,r,n){let o={};return n||(t=or(Ht(t,r),r),e=or(Ht(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=os(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=os(e.path||""),o.query=e.query):(e.path?(e.path[0]==="/"?o.path=os(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=os(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=Ht(Bi(or(t,r),!0),{...r,skipEscape:!0})):typeof t=="object"&&(t=Ht(Bi(t,!0),{...r,skipEscape:!0})),typeof e=="string"?(e=unescape(e),e=Ht(Bi(or(e,r),!0),{...r,skipEscape:!0})):typeof e=="object"&&(e=Ht(Bi(e,!0),{...r,skipEscape:!0})),t.toLowerCase()===e.toLowerCase()}function Ht(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=N_(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=os(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 cP=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function or(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(cP);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(rP(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=N_(r.scheme||n.scheme);if(!r.unicodeSupport&&(!i||!i.unicodeSupport)&&n.host&&(r.domainHost||i&&i.domainHost)&&o===!1&&nP(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 fd={SCHEMES:oP,normalize:sP,resolve:iP,resolveComponent:z_,equal:aP,serialize:Ht,parse:or};Vi.exports=fd;Vi.exports.default=fd;Vi.exports.fastUri=fd});var M_=T(md=>{"use strict";Object.defineProperty(md,"__esModule",{value:!0});var j_=A_();j_.code='require("ajv/dist/runtime/uri").default';md.default=j_});var B_=T(Ae=>{"use strict";Object.defineProperty(Ae,"__esModule",{value:!0});Ae.CodeGen=Ae.Name=Ae.nil=Ae.stringify=Ae.str=Ae._=Ae.KeywordCxt=void 0;var uP=rs();Object.defineProperty(Ae,"KeywordCxt",{enumerable:!0,get:function(){return uP.KeywordCxt}});var Wn=F();Object.defineProperty(Ae,"_",{enumerable:!0,get:function(){return Wn._}});Object.defineProperty(Ae,"str",{enumerable:!0,get:function(){return Wn.str}});Object.defineProperty(Ae,"stringify",{enumerable:!0,get:function(){return Wn.stringify}});Object.defineProperty(Ae,"nil",{enumerable:!0,get:function(){return Wn.nil}});Object.defineProperty(Ae,"Name",{enumerable:!0,get:function(){return Wn.Name}});Object.defineProperty(Ae,"CodeGen",{enumerable:!0,get:function(){return Wn.CodeGen}});var lP=Zi(),H_=ns(),dP=ql(),ss=Hi(),pP=F(),is=Qo(),Ki=Xo(),gd=ee(),D_=b_(),fP=M_(),q_=(t,e)=>new RegExp(t,e);q_.code="new RegExp";var mP=["removeAdditional","useDefaults","coerceTypes"],hP=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),gP={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."},_P={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},L_=200;function yP(t){var e,r,n,o,s,i,a,c,u,l,d,f,m,p,h,g,x,y,k,w,O,G,$e,K,Le;let Se=t.strict,Nr=(e=t.code)===null||e===void 0?void 0:e.optimize,Pf=Nr===!0||Nr===void 0?1:Nr||0,Rf=(n=(r=t.code)===null||r===void 0?void 0:r.regExp)!==null&&n!==void 0?n:q_,gk=(o=t.uriResolver)!==null&&o!==void 0?o:fP.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:(f=(d=t.strictTuples)!==null&&d!==void 0?d:Se)!==null&&f!==void 0?f:"log",strictRequired:(p=(m=t.strictRequired)!==null&&m!==void 0?m:Se)!==null&&p!==void 0?p:!1,code:t.code?{...t.code,optimize:Pf,regExp:Rf}:{optimize:Pf,regExp:Rf},loopRequired:(h=t.loopRequired)!==null&&h!==void 0?h:L_,loopEnum:(g=t.loopEnum)!==null&&g!==void 0?g:L_,meta:(x=t.meta)!==null&&x!==void 0?x:!0,messages:(y=t.messages)!==null&&y!==void 0?y:!0,inlineRefs:(k=t.inlineRefs)!==null&&k!==void 0?k:!0,schemaId:(w=t.schemaId)!==null&&w!==void 0?w:"$id",addUsedSchema:(O=t.addUsedSchema)!==null&&O!==void 0?O:!0,validateSchema:(G=t.validateSchema)!==null&&G!==void 0?G:!0,validateFormats:($e=t.validateFormats)!==null&&$e!==void 0?$e:!0,unicodeRegExp:(K=t.unicodeRegExp)!==null&&K!==void 0?K:!0,int32range:(Le=t.int32range)!==null&&Le!==void 0?Le:!0,uriResolver:gk}}var as=class{constructor(e={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,e=this.opts={...e,...yP(e)};let{es5:r,lines:n}=this.opts.code;this.scope=new pP.ValueScope({scope:{},prefixes:hP,es5:r,lines:n}),this.logger=wP(e.logger);let o=e.validateFormats;e.validateFormats=!1,this.RULES=(0,dP.getRules)(),Z_.call(this,gP,e,"NOT SUPPORTED"),Z_.call(this,_P,e,"DEPRECATED","warn"),this._metaOpts=SP.call(this),e.formats&&vP.call(this),this._addVocabularies(),this._addDefaultMetaSchema(),e.keywords&&kP.call(this,e.keywords),typeof e.meta=="object"&&this.addMetaSchema(e.meta),xP.call(this),e.validateFormats=o}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:e,meta:r,schemaId:n}=this.opts,o=D_;n==="id"&&(o={...D_},o.id=o.$id,delete o.$id),r&&e&&this.addMetaSchema(o,o[n],!1)}defaultMeta(){let{meta:e,schemaId:r}=this.opts;return this.opts.defaultMeta=typeof e=="object"?e[r]||e:void 0}validate(e,r){let n;if(typeof e=="string"){if(n=this.getSchema(e),!n)throw new Error(`no schema with key or ref "${e}"`)}else n=this.compile(e);let o=n(r);return"$async"in n||(this.errors=n.errors),o}compile(e,r){let n=this._addSchema(e,r);return n.validate||this._compileSchemaEnv(n)}compileAsync(e,r){if(typeof this.opts.loadSchema!="function")throw new Error("options.loadSchema should be a function");let{loadSchema:n}=this.opts;return o.call(this,e,r);async function o(l,d){await s.call(this,l.$schema);let f=this._addSchema(l,d);return f.validate||i.call(this,f)}async function s(l){l&&!this.getSchema(l)&&await o.call(this,{$ref:l},!0)}async function i(l){try{return this._compileSchemaEnv(l)}catch(d){if(!(d instanceof H_.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,is.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=U_.call(this,e))=="string";)e=r;if(r===void 0){let{schemaId:n}=this.opts,o=new ss.SchemaEnv({schema:{},schemaId:n});if(r=ss.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=U_.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,is.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(TP.call(this,n,r),!r)return(0,gd.eachItem)(n,s=>hd.call(this,s)),this;PP.call(this,r);let o={...r,type:(0,Ki.getJSONTypes)(r.type),schemaType:(0,Ki.getJSONTypes)(r.schemaType)};return(0,gd.eachItem)(n,o.type.length===0?s=>hd.call(this,s,o):s=>o.type.forEach(i=>hd.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]=F_(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,is.normalizeId)(i||n);let u=is.getSchemaRefs.call(this,e,n);return c=new ss.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):ss.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{ss.compileSchema.call(this,e)}finally{this.opts=r}}};as.ValidationError=lP.default;as.MissingRefError=H_.default;Ae.default=as;function Z_(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 U_(t){return t=(0,is.normalizeId)(t),this.schemas[t]||this.refs[t]}function xP(){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 vP(){for(let t in this.opts.formats){let e=this.opts.formats[t];e&&this.addFormat(t,e)}}function kP(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 SP(){let t={...this.opts};for(let e of mP)delete t[e];return t}var bP={log(){},warn(){},error(){}};function wP(t){if(t===!1)return bP;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 EP=/^[a-z_$][a-z0-9_$:-]*$/i;function TP(t,e){let{RULES:r}=this;if((0,gd.eachItem)(t,n=>{if(r.keywords[n])throw new Error(`Keyword ${n} is already defined`);if(!EP.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 hd(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,Ki.getJSONTypes)(e.type),schemaType:(0,Ki.getJSONTypes)(e.schemaType)}};e.before?$P.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 $P(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 PP(t){let{metaSchema:e}=t;e!==void 0&&(t.$data&&this.opts.$data&&(e=F_(e)),t.validateSchema=this.compile(e,!0))}var RP={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function F_(t){return{anyOf:[t,RP]}}});var V_=T(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});var OP={keyword:"id",code(){throw new Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};_d.default=OP});var G_=T(dn=>{"use strict";Object.defineProperty(dn,"__esModule",{value:!0});dn.callRef=dn.getValidate=void 0;var CP=ns(),K_=ft(),nt=F(),Jn=rr(),W_=Hi(),Wi=ee(),IP={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=W_.resolveRef.call(c,u,o,r);if(l===void 0)throw new CP.default(n.opts.uriResolver,o,r);if(l instanceof W_.SchemaEnv)return f(l);return m(l);function d(){if(s===u)return Ji(t,i,s,s.$async);let p=e.scopeValue("root",{ref:u});return Ji(t,(0,nt._)`${p}.validate`,u,u.$async)}function f(p){let h=J_(t,p);Ji(t,h,p,p.$async)}function m(p){let h=e.scopeValue("schema",a.code.source===!0?{ref:p,code:(0,nt.stringify)(p)}:{ref:p}),g=e.name("valid"),x=t.subschema({schema:p,dataTypes:[],schemaPath:nt.nil,topSchemaRef:h,errSchemaPath:r},g);t.mergeEvaluated(x),t.ok(g)}}};function J_(t,e){let{gen:r}=t;return e.validate?r.scopeValue("validate",{ref:e.validate}):(0,nt._)`${r.scopeValue("wrapper",{ref:e})}.validate`}dn.getValidate=J_;function Ji(t,e,r,n){let{gen:o,it:s}=t,{allErrors:i,schemaEnv:a,opts:c}=s,u=c.passContext?Jn.default.this:nt.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,nt._)`await ${(0,K_.callValidateCode)(t,e,u)}`),m(e),i||o.assign(p,!0)},h=>{o.if((0,nt._)`!(${h} instanceof ${s.ValidationError})`,()=>o.throw(h)),f(h),i||o.assign(p,!1)}),t.ok(p)}function d(){t.result((0,K_.callValidateCode)(t,e,u),()=>m(e),()=>f(e))}function f(p){let h=(0,nt._)`${p}.errors`;o.assign(Jn.default.vErrors,(0,nt._)`${Jn.default.vErrors} === null ? ${h} : ${Jn.default.vErrors}.concat(${h})`),o.assign(Jn.default.errors,(0,nt._)`${Jn.default.vErrors}.length`)}function m(p){var h;if(!s.opts.unevaluated)return;let g=(h=r?.validate)===null||h===void 0?void 0:h.evaluated;if(s.props!==!0)if(g&&!g.dynamicProps)g.props!==void 0&&(s.props=Wi.mergeEvaluated.props(o,g.props,s.props));else{let x=o.var("props",(0,nt._)`${p}.evaluated.props`);s.props=Wi.mergeEvaluated.props(o,x,s.props,nt.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,nt._)`${p}.evaluated.items`);s.items=Wi.mergeEvaluated.items(o,x,s.items,nt.Name)}}}dn.callRef=Ji;dn.default=IP});var Y_=T(yd=>{"use strict";Object.defineProperty(yd,"__esModule",{value:!0});var NP=V_(),zP=G_(),AP=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",NP.default,zP.default];yd.default=AP});var X_=T(xd=>{"use strict";Object.defineProperty(xd,"__esModule",{value:!0});var Gi=F(),wr=Gi.operators,Yi={maximum:{okStr:"<=",ok:wr.LTE,fail:wr.GT},minimum:{okStr:">=",ok:wr.GTE,fail:wr.LT},exclusiveMaximum:{okStr:"<",ok:wr.LT,fail:wr.GTE},exclusiveMinimum:{okStr:">",ok:wr.GT,fail:wr.LTE}},jP={message:({keyword:t,schemaCode:e})=>(0,Gi.str)`must be ${Yi[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Gi._)`{comparison: ${Yi[t].okStr}, limit: ${e}}`},MP={keyword:Object.keys(Yi),type:"number",schemaType:"number",$data:!0,error:jP,code(t){let{keyword:e,data:r,schemaCode:n}=t;t.fail$data((0,Gi._)`${r} ${Yi[e].fail} ${n} || isNaN(${r})`)}};xd.default=MP});var Q_=T(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});var cs=F(),DP={message:({schemaCode:t})=>(0,cs.str)`must be multiple of ${t}`,params:({schemaCode:t})=>(0,cs._)`{multipleOf: ${t}}`},LP={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:DP,code(t){let{gen:e,data:r,schemaCode:n,it:o}=t,s=o.opts.multipleOfPrecision,i=e.let("res"),a=s?(0,cs._)`Math.abs(Math.round(${i}) - ${i}) > 1e-${s}`:(0,cs._)`${i} !== parseInt(${i})`;t.fail$data((0,cs._)`(${n} === 0 || (${i} = ${r}/${n}, ${a}))`)}};vd.default=LP});var ty=T(kd=>{"use strict";Object.defineProperty(kd,"__esModule",{value:!0});function ey(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=ey;ey.code='require("ajv/dist/runtime/ucs2length").default'});var ry=T(Sd=>{"use strict";Object.defineProperty(Sd,"__esModule",{value:!0});var pn=F(),ZP=ee(),UP=ty(),HP={message({keyword:t,schemaCode:e}){let r=t==="maxLength"?"more":"fewer";return(0,pn.str)`must NOT have ${r} than ${e} characters`},params:({schemaCode:t})=>(0,pn._)`{limit: ${t}}`},qP={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:HP,code(t){let{keyword:e,data:r,schemaCode:n,it:o}=t,s=e==="maxLength"?pn.operators.GT:pn.operators.LT,i=o.opts.unicode===!1?(0,pn._)`${r}.length`:(0,pn._)`${(0,ZP.useFunc)(t.gen,UP.default)}(${r})`;t.fail$data((0,pn._)`${i} ${s} ${n}`)}};Sd.default=qP});var ny=T(bd=>{"use strict";Object.defineProperty(bd,"__esModule",{value:!0});var FP=ft(),BP=ee(),Gn=F(),VP={message:({schemaCode:t})=>(0,Gn.str)`must match pattern "${t}"`,params:({schemaCode:t})=>(0,Gn._)`{pattern: ${t}}`},KP={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:VP,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,Gn._)`new RegExp`:(0,BP.useFunc)(e,c),l=e.let("valid");e.try(()=>e.assign(l,(0,Gn._)`${u}(${s}, ${a}).test(${r})`),()=>e.assign(l,!1)),t.fail$data((0,Gn._)`!${l}`)}else{let c=(0,FP.usePattern)(t,o);t.fail$data((0,Gn._)`!${c}.test(${r})`)}}};bd.default=KP});var oy=T(wd=>{"use strict";Object.defineProperty(wd,"__esModule",{value:!0});var us=F(),WP={message({keyword:t,schemaCode:e}){let r=t==="maxProperties"?"more":"fewer";return(0,us.str)`must NOT have ${r} than ${e} properties`},params:({schemaCode:t})=>(0,us._)`{limit: ${t}}`},JP={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:WP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxProperties"?us.operators.GT:us.operators.LT;t.fail$data((0,us._)`Object.keys(${r}).length ${o} ${n}`)}};wd.default=JP});var sy=T(Ed=>{"use strict";Object.defineProperty(Ed,"__esModule",{value:!0});var ls=ft(),ds=F(),GP=ee(),YP={message:({params:{missingProperty:t}})=>(0,ds.str)`must have required property '${t}'`,params:({params:{missingProperty:t}})=>(0,ds._)`{missingProperty: ${t}}`},XP={keyword:"required",type:"object",schemaType:"array",$data:!0,error:YP,code(t){let{gen:e,schema:r,schemaCode:n,data:o,$data:s,it:i}=t,{opts:a}=i;if(!s&&r.length===0)return;let c=r.length>=a.loopRequired;if(i.allErrors?u():l(),a.strictRequired){let m=t.parentSchema.properties,{definedProperties:p}=t.it;for(let h of r)if(m?.[h]===void 0&&!p.has(h)){let g=i.schemaEnv.baseId+i.errSchemaPath,x=`required property "${h}" is not defined at "${g}" (strictRequired)`;(0,GP.checkStrictMode)(i,x,i.opts.strictRequired)}}function u(){if(c||s)t.block$data(ds.nil,d);else for(let m of r)(0,ls.checkReportMissingProp)(t,m)}function l(){let m=e.let("missing");if(c||s){let p=e.let("valid",!0);t.block$data(p,()=>f(m,p)),t.ok(p)}else e.if((0,ls.checkMissingProp)(t,r,m)),(0,ls.reportMissingProp)(t,m),e.else()}function d(){e.forOf("prop",n,m=>{t.setParams({missingProperty:m}),e.if((0,ls.noPropertyInData)(e,o,m,a.ownProperties),()=>t.error())})}function f(m,p){t.setParams({missingProperty:m}),e.forOf(m,n,()=>{e.assign(p,(0,ls.propertyInData)(e,o,m,a.ownProperties)),e.if((0,ds.not)(p),()=>{t.error(),e.break()})},ds.nil)}}};Ed.default=XP});var iy=T(Td=>{"use strict";Object.defineProperty(Td,"__esModule",{value:!0});var ps=F(),QP={message({keyword:t,schemaCode:e}){let r=t==="maxItems"?"more":"fewer";return(0,ps.str)`must NOT have ${r} than ${e} items`},params:({schemaCode:t})=>(0,ps._)`{limit: ${t}}`},eR={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:QP,code(t){let{keyword:e,data:r,schemaCode:n}=t,o=e==="maxItems"?ps.operators.GT:ps.operators.LT;t.fail$data((0,ps._)`${r}.length ${o} ${n}`)}};Td.default=eR});var Xi=T($d=>{"use strict";Object.defineProperty($d,"__esModule",{value:!0});var ay=Yl();ay.code='require("ajv/dist/runtime/equal").default';$d.default=ay});var cy=T(Rd=>{"use strict";Object.defineProperty(Rd,"__esModule",{value:!0});var Pd=Xo(),je=F(),tR=ee(),rR=Xi(),nR={message:({params:{i:t,j:e}})=>(0,je.str)`must NOT have duplicate items (items ## ${e} and ${t} are identical)`,params:({params:{i:t,j:e}})=>(0,je._)`{i: ${t}, j: ${e}}`},oR={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:nR,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,Pd.getSchemaTypes)(s.items):[];t.block$data(c,l,(0,je._)`${i} === false`),t.ok(c);function l(){let p=e.let("i",(0,je._)`${r}.length`),h=e.let("j");t.setParams({i:p,j:h}),e.assign(c,!0),e.if((0,je._)`${p} > 1`,()=>(d()?f:m)(p,h))}function d(){return u.length>0&&!u.some(p=>p==="object"||p==="array")}function f(p,h){let g=e.name("item"),x=(0,Pd.checkDataTypes)(u,g,a.opts.strictNumbers,Pd.DataType.Wrong),y=e.const("indices",(0,je._)`{}`);e.for((0,je._)`;${p}--;`,()=>{e.let(g,(0,je._)`${r}[${p}]`),e.if(x,(0,je._)`continue`),u.length>1&&e.if((0,je._)`typeof ${g} == "string"`,(0,je._)`${g} += "_"`),e.if((0,je._)`typeof ${y}[${g}] == "number"`,()=>{e.assign(h,(0,je._)`${y}[${g}]`),t.error(),e.assign(c,!1).break()}).code((0,je._)`${y}[${g}] = ${p}`)})}function m(p,h){let g=(0,tR.useFunc)(e,rR.default),x=e.name("outer");e.label(x).for((0,je._)`;${p}--;`,()=>e.for((0,je._)`${h} = ${p}; ${h}--;`,()=>e.if((0,je._)`${g}(${r}[${p}], ${r}[${h}])`,()=>{t.error(),e.assign(c,!1).break(x)})))}}};Rd.default=oR});var uy=T(Cd=>{"use strict";Object.defineProperty(Cd,"__esModule",{value:!0});var Od=F(),sR=ee(),iR=Xi(),aR={message:"must be equal to constant",params:({schemaCode:t})=>(0,Od._)`{allowedValue: ${t}}`},cR={keyword:"const",$data:!0,error:aR,code(t){let{gen:e,data:r,$data:n,schemaCode:o,schema:s}=t;n||s&&typeof s=="object"?t.fail$data((0,Od._)`!${(0,sR.useFunc)(e,iR.default)}(${r}, ${o})`):t.fail((0,Od._)`${s} !== ${r}`)}};Cd.default=cR});var ly=T(Id=>{"use strict";Object.defineProperty(Id,"__esModule",{value:!0});var fs=F(),uR=ee(),lR=Xi(),dR={message:"must be equal to one of the allowed values",params:({schemaCode:t})=>(0,fs._)`{allowedValues: ${t}}`},pR={keyword:"enum",schemaType:"array",$data:!0,error:dR,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,uR.useFunc)(e,lR.default)),l;if(a||n)l=e.let("valid"),t.block$data(l,d);else{if(!Array.isArray(o))throw new Error("ajv implementation error");let m=e.const("vSchema",s);l=(0,fs.or)(...o.map((p,h)=>f(m,h)))}t.pass(l);function d(){e.assign(l,!1),e.forOf("v",s,m=>e.if((0,fs._)`${u()}(${r}, ${m})`,()=>e.assign(l,!0).break()))}function f(m,p){let h=o[p];return typeof h=="object"&&h!==null?(0,fs._)`${u()}(${r}, ${m}[${p}])`:(0,fs._)`${r} === ${h}`}}};Id.default=pR});var dy=T(Nd=>{"use strict";Object.defineProperty(Nd,"__esModule",{value:!0});var fR=X_(),mR=Q_(),hR=ry(),gR=ny(),_R=oy(),yR=sy(),xR=iy(),vR=cy(),kR=uy(),SR=ly(),bR=[fR.default,mR.default,hR.default,gR.default,_R.default,yR.default,xR.default,vR.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},kR.default,SR.default];Nd.default=bR});var Ad=T(ms=>{"use strict";Object.defineProperty(ms,"__esModule",{value:!0});ms.validateAdditionalItems=void 0;var fn=F(),zd=ee(),wR={message:({params:{len:t}})=>(0,fn.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,fn._)`{limit: ${t}}`},ER={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:wR,code(t){let{parentSchema:e,it:r}=t,{items:n}=e;if(!Array.isArray(n)){(0,zd.checkStrictMode)(r,'"additionalItems" is ignored when "items" is not an array of schemas');return}py(t,n)}};function py(t,e){let{gen:r,schema:n,data:o,keyword:s,it:i}=t;i.items=!0;let a=r.const("len",(0,fn._)`${o}.length`);if(n===!1)t.setParams({len:e.length}),t.pass((0,fn._)`${a} <= ${e.length}`);else if(typeof n=="object"&&!(0,zd.alwaysValidSchema)(i,n)){let u=r.var("valid",(0,fn._)`${a} <= ${e.length}`);r.if((0,fn.not)(u),()=>c(u)),t.ok(u)}function c(u){r.forRange("i",e.length,a,l=>{t.subschema({keyword:s,dataProp:l,dataPropType:zd.Type.Num},u),i.allErrors||r.if((0,fn.not)(u),()=>r.break())})}}ms.validateAdditionalItems=py;ms.default=ER});var jd=T(hs=>{"use strict";Object.defineProperty(hs,"__esModule",{value:!0});hs.validateTuple=void 0;var fy=F(),Qi=ee(),TR=ft(),$R={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(t){let{schema:e,it:r}=t;if(Array.isArray(e))return my(t,"additionalItems",e);r.items=!0,!(0,Qi.alwaysValidSchema)(r,e)&&t.ok((0,TR.validateArray)(t))}};function my(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=Qi.mergeEvaluated.items(n,r.length,a.items));let c=n.name("valid"),u=n.const("len",(0,fy._)`${s}.length`);r.forEach((d,f)=>{(0,Qi.alwaysValidSchema)(a,d)||(n.if((0,fy._)`${u} > ${f}`,()=>t.subschema({keyword:i,schemaProp:f,dataProp:f},c)),t.ok(c))});function l(d){let{opts:f,errSchemaPath:m}=a,p=r.length,h=p===d.minItems&&(p===d.maxItems||d[e]===!1);if(f.strictTuples&&!h){let g=`"${i}" is ${p}-tuple, but minItems or maxItems/${e} are not specified or different at path "${m}"`;(0,Qi.checkStrictMode)(a,g,f.strictTuples)}}}hs.validateTuple=my;hs.default=$R});var hy=T(Md=>{"use strict";Object.defineProperty(Md,"__esModule",{value:!0});var PR=jd(),RR={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:t=>(0,PR.validateTuple)(t,"items")};Md.default=RR});var _y=T(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});var gy=F(),OR=ee(),CR=ft(),IR=Ad(),NR={message:({params:{len:t}})=>(0,gy.str)`must NOT have more than ${t} items`,params:({params:{len:t}})=>(0,gy._)`{limit: ${t}}`},zR={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:NR,code(t){let{schema:e,parentSchema:r,it:n}=t,{prefixItems:o}=r;n.items=!0,!(0,OR.alwaysValidSchema)(n,e)&&(o?(0,IR.validateAdditionalItems)(t,o):t.ok((0,CR.validateArray)(t)))}};Dd.default=zR});var yy=T(Ld=>{"use strict";Object.defineProperty(Ld,"__esModule",{value:!0});var ht=F(),ea=ee(),AR={message:({params:{min:t,max:e}})=>e===void 0?(0,ht.str)`must contain at least ${t} valid item(s)`:(0,ht.str)`must contain at least ${t} and no more than ${e} valid item(s)`,params:({params:{min:t,max:e}})=>e===void 0?(0,ht._)`{minContains: ${t}}`:(0,ht._)`{minContains: ${t}, maxContains: ${e}}`},jR={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:AR,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,ht._)`${o}.length`);if(t.setParams({min:i,max:a}),a===void 0&&i===0){(0,ea.checkStrictMode)(s,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(a!==void 0&&i>a){(0,ea.checkStrictMode)(s,'"minContains" > "maxContains" is always invalid'),t.fail();return}if((0,ea.alwaysValidSchema)(s,r)){let h=(0,ht._)`${l} >= ${i}`;a!==void 0&&(h=(0,ht._)`${h} && ${l} <= ${a}`),t.pass(h);return}s.items=!0;let d=e.name("valid");a===void 0&&i===1?m(d,()=>e.if(d,()=>e.break())):i===0?(e.let(d,!0),a!==void 0&&e.if((0,ht._)`${o}.length > 0`,f)):(e.let(d,!1),f()),t.result(d,()=>t.reset());function f(){let h=e.name("_valid"),g=e.let("count",0);m(h,()=>e.if(h,()=>p(g)))}function m(h,g){e.forRange("i",0,l,x=>{t.subschema({keyword:"contains",dataProp:x,dataPropType:ea.Type.Num,compositeRule:!0},h),g()})}function p(h){e.code((0,ht._)`${h}++`),a===void 0?e.if((0,ht._)`${h} >= ${i}`,()=>e.assign(d,!0).break()):(e.if((0,ht._)`${h} > ${a}`,()=>e.assign(d,!1).break()),i===1?e.assign(d,!0):e.if((0,ht._)`${h} >= ${i}`,()=>e.assign(d,!0)))}}};Ld.default=jR});var ky=T(qt=>{"use strict";Object.defineProperty(qt,"__esModule",{value:!0});qt.validateSchemaDeps=qt.validatePropertyDeps=qt.error=void 0;var Zd=F(),MR=ee(),gs=ft();qt.error={message:({params:{property:t,depsCount:e,deps:r}})=>{let n=e===1?"property":"properties";return(0,Zd.str)`must have ${n} ${r} when property ${t} is present`},params:({params:{property:t,depsCount:e,deps:r,missingProperty:n}})=>(0,Zd._)`{property: ${t},
7
7
  missingProperty: ${n},
8
8
  depsCount: ${e},
9
- deps: ${r}}`};var DR={keyword:"dependencies",type:"object",schemaType:"object",error:Ht.error,code(t){let[e,r]=LR(t);xy(t,e),vy(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 xy(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,gs.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,gs.checkReportMissingProp)(t,u)}):(r.if((0,Ld._)`${c} && (${(0,gs.checkMissingProp)(t,a,s)})`),(0,gs.reportMissingProp)(t,s),r.else())}}Ht.validatePropertyDeps=xy;function vy(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,MR.alwaysValidSchema)(s,e[a])||(r.if((0,gs.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))}Ht.validateSchemaDeps=vy;Ht.default=DR});var by=T(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});var Sy=F(),ZR=ee(),UR={message:"property name must be valid",params:({params:t})=>(0,Sy._)`{propertyName: ${t.propertyName}}`},HR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:UR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,ZR.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)}};Zd.default=HR});var Hd=T(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var ta=ft(),Rt=F(),qR=tr(),ra=ee(),FR={message:"must NOT have additional properties",params:({params:t})=>(0,Rt._)`{additionalProperty: ${t.additionalProperty}}`},BR={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:FR,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,ra.alwaysValidSchema)(i,r))return;let u=(0,ta.allSchemaProperties)(n.properties),l=(0,ta.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Rt._)`${s} === ${qR.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(f(g),()=>p(g))})}function f(g){let y;if(u.length>8){let x=(0,ra.schemaRefOrVal)(i,n.properties,"properties");y=(0,ta.isOwnProperty)(e,x,g)}else u.length?y=(0,Rt.or)(...u.map(x=>(0,Rt._)`${g} === ${x}`)):y=Rt.nil;return l.length&&(y=(0,Rt.or)(y,...l.map(x=>(0,Rt._)`${(0,ta.usePattern)(t,x)}.test(${g})`))),(0,Rt.not)(y)}function m(g){e.code((0,Rt._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,ra.alwaysValidSchema)(i,r)){let y=e.name("valid");c.removeAdditional==="failing"?(h(g,y,!1),e.if((0,Rt.not)(y),()=>{t.reset(),m(g)})):(h(g,y),a||e.if((0,Rt.not)(y),()=>e.break()))}}function h(g,y,x){let k={keyword:"additionalProperties",dataProp:g,dataPropType:ra.Type.Str};x===!1&&Object.assign(k,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(k,y)}}};Ud.default=BR});var Ty=T(Fd=>{"use strict";Object.defineProperty(Fd,"__esModule",{value:!0});var VR=rs(),wy=ft(),qd=ee(),Ey=Hd(),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&&Ey.default.code(new VR.KeywordCxt(s,Ey.default,"additionalProperties"));let i=(0,wy.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=qd.mergeEvaluated.props(e,(0,qd.toHash)(i),s.props));let a=i.filter(d=>!(0,qd.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,wy.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)}}};Fd.default=KR});var Oy=T(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var $y=ft(),na=F(),Py=ee(),Ry=ee(),WR={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,$y.allSchemaProperties)(r),c=a.filter(h=>(0,Py.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 na.Name)&&(s.props=(0,Ry.evaluatedPropsToName)(e,s.props));let{props:d}=s;f();function f(){for(let h of a)u&&m(h),s.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function m(h){for(let g in u)new RegExp(h).test(g)&&(0,Py.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,na._)`${(0,$y.usePattern)(t,h)}.test(${g})`,()=>{let y=c.includes(h);y||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:Ry.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,na._)`${d}[${g}]`,!0):!y&&!s.allErrors&&e.if((0,na.not)(l),()=>e.break())})})}}};Bd.default=WR});var Cy=T(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var JR=ee(),GR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,JR.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"}};Vd.default=GR});var Iy=T(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var YR=ft(),XR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:YR.validateUnion,error:{message:"must match a schema in anyOf"}};Kd.default=XR});var Ny=T(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var oa=F(),QR=ee(),eO={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,oa._)`{passingSchemas: ${t.passing}}`},tO={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:eO,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let f;(0,QR.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,oa._)`${c} && ${i}`).assign(i,!1).assign(a,(0,oa._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,oa.Name)})})}}};Wd.default=tO});var zy=T(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var rO=ee(),nO={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,rO.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Jd.default=nO});var My=T(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var sa=F(),jy=ee(),oO={message:({params:t})=>(0,sa.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,sa._)`{failingKeyword: ${t.ifClause}}`},sO={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:oO,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,jy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Ay(n,"then"),s=Ay(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,sa.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,sa._)`${l}`):t.setParams({ifClause:l})}}}};function Ay(t,e){let r=t.schema[e];return r!==void 0&&!(0,jy.alwaysValidSchema)(t,r)}Gd.default=sO});var Dy=T(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});var iO=ee(),aO={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,iO.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Yd.default=aO});var Ly=T(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});var cO=zd(),uO=hy(),lO=Ad(),dO=_y(),pO=yy(),fO=ky(),mO=by(),hO=Hd(),gO=Ty(),_O=Oy(),yO=Cy(),xO=Iy(),vO=Ny(),kO=zy(),SO=My(),bO=Dy();function wO(t=!1){let e=[yO.default,xO.default,vO.default,kO.default,SO.default,bO.default,mO.default,hO.default,fO.default,gO.default,_O.default];return t?e.push(uO.default,dO.default):e.push(cO.default,lO.default),e.push(pO.default),e}Xd.default=wO});var Zy=T(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});var be=F(),EO={message:({schemaCode:t})=>(0,be.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,be._)`{format: ${t}}`},TO={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:EO,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,be._)`${p}[${i}]`),g=r.let("fType"),y=r.let("format");r.if((0,be._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,be._)`${h}.type || "string"`).assign(y,(0,be._)`${h}.validate`),()=>r.assign(g,(0,be._)`"string"`).assign(y,h)),t.fail$data((0,be.or)(x(),k()));function x(){return c.strictSchema===!1?be.nil:(0,be._)`${i} && !${y}`}function k(){let w=l.$async?(0,be._)`(${h}.async ? await ${y}(${n}) : ${y}(${n}))`:(0,be._)`${y}(${n})`,O=(0,be._)`(typeof ${y} == "function" ? ${w} : ${y}.test(${n}))`;return(0,be._)`${y} && ${y} !== true && ${g} === ${e} && !${O}`}}function m(){let p=d.formats[s];if(!p){x();return}if(p===!0)return;let[h,g,y]=k(p);h===e&&t.pass(w());function x(){if(c.strictSchema===!1){d.logger.warn(O());return}throw new Error(O());function O(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function k(O){let G=O instanceof RegExp?(0,be.regexpCode)(O):c.code.formats?(0,be._)`${c.code.formats}${(0,be.getProperty)(s)}`:void 0,$e=r.scopeValue("formats",{key:s,ref:O,code:G});return typeof O=="object"&&!(O instanceof RegExp)?[O.type||"string",O.validate,(0,be._)`${$e}.validate`]:["string",O,$e]}function w(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,be._)`await ${y}(${n})`}return typeof g=="function"?(0,be._)`${y}(${n})`:(0,be._)`${y}.test(${n})`}}}};Qd.default=TO});var Uy=T(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});var $O=Zy(),PO=[$O.default];ep.default=PO});var Hy=T(Yn=>{"use strict";Object.defineProperty(Yn,"__esModule",{value:!0});Yn.contentVocabulary=Yn.metadataVocabulary=void 0;Yn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Yn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Fy=T(tp=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});var RO=Y_(),OO=dy(),CO=Ly(),IO=Uy(),qy=Hy(),NO=[RO.default,OO.default,(0,CO.default)(),IO.default,qy.metadataVocabulary,qy.contentVocabulary];tp.default=NO});var Vy=T(ia=>{"use strict";Object.defineProperty(ia,"__esModule",{value:!0});ia.DiscrError=void 0;var By;(function(t){t.Tag="tag",t.Mapping="mapping"})(By||(ia.DiscrError=By={}))});var Wy=T(np=>{"use strict";Object.defineProperty(np,"__esModule",{value:!0});var Xn=F(),rp=Vy(),Ky=Hi(),zO=ns(),AO=ee(),jO={message:({params:{discrError:t,tagName:e}})=>t===rp.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Xn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},MO={keyword:"discriminator",type:"object",schemaType:"object",error:jO,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,Xn._)`${r}${(0,Xn.getProperty)(a)}`);e.if((0,Xn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:rp.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,Xn._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:rp.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,Xn.Name),p}function f(){var m;let p={},h=y(o),g=!0;for(let w=0;w<i.length;w++){let O=i[w];if(O?.$ref&&!(0,AO.schemaHasRulesButRef)(O,s.self.RULES)){let $e=O.$ref;if(O=Ky.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,$e),O instanceof Ky.SchemaEnv&&(O=O.schema),O===void 0)throw new zO.default(s.opts.uriResolver,s.baseId,$e)}let G=(m=O?.properties)===null||m===void 0?void 0:m[a];if(typeof G!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||y(O)),x(G,w)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function y({required:w}){return Array.isArray(w)&&w.includes(a)}function x(w,O){if(w.const)k(w.const,O);else if(w.enum)for(let G of w.enum)k(G,O);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function k(w,O){if(typeof w!="string"||w in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[w]=O}}}};np.default=MO});var Jy=T((JD,DO)=>{DO.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 sp=T((fe,op)=>{"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=B_(),ZO=Fy(),UO=Wy(),Gy=Jy(),HO=["/properties"],aa="http://json-schema.org/draft-07/schema",Qn=class extends LO.default{_addVocabularies(){super._addVocabularies(),ZO.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(UO.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Gy,HO):Gy;this.addMetaSchema(e,aa,!1),this.refs["http://json-schema.org/schema"]=aa}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(aa)?aa:void 0)}};fe.Ajv=Qn;op.exports=fe=Qn;op.exports.Ajv=Qn;Object.defineProperty(fe,"__esModule",{value:!0});fe.default=Qn;var qO=rs();Object.defineProperty(fe,"KeywordCxt",{enumerable:!0,get:function(){return qO.KeywordCxt}});var eo=F();Object.defineProperty(fe,"_",{enumerable:!0,get:function(){return eo._}});Object.defineProperty(fe,"str",{enumerable:!0,get:function(){return eo.str}});Object.defineProperty(fe,"stringify",{enumerable:!0,get:function(){return eo.stringify}});Object.defineProperty(fe,"nil",{enumerable:!0,get:function(){return eo.nil}});Object.defineProperty(fe,"Name",{enumerable:!0,get:function(){return eo.Name}});Object.defineProperty(fe,"CodeGen",{enumerable:!0,get:function(){return eo.CodeGen}});var FO=Zi();Object.defineProperty(fe,"ValidationError",{enumerable:!0,get:function(){return FO.default}});var BO=ns();Object.defineProperty(fe,"MissingRefError",{enumerable:!0,get:function(){return BO.default}})});var ox=T(Ft=>{"use strict";Object.defineProperty(Ft,"__esModule",{value:!0});Ft.formatNames=Ft.fastFormats=Ft.fullFormats=void 0;function qt(t,e){return{validate:t,compare:e}}Ft.fullFormats={date:qt(ex,up),time:qt(ap(!0),lp),"date-time":qt(Yy(!0),rx),"iso-time":qt(ap(),tx),"iso-date-time":qt(Yy(),nx),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:YO,"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:oC,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:XO,int32:{type:"number",validate:tC},int64:{type:"number",validate:rC},float:{type:"number",validate:Qy},double:{type:"number",validate:Qy},password:!0,binary:!0};Ft.fastFormats={...Ft.fullFormats,date:qt(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,up),time:qt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,lp),"date-time":qt(/^\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,rx),"iso-time":qt(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,tx),"iso-date-time":qt(/^\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,nx),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};Ft.formatNames=Object.keys(Ft.fullFormats);function VO(t){return t%4===0&&(t%100!==0||t%400===0)}var KO=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,WO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function ex(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:WO[n])}function up(t,e){if(t&&e)return t>e?1:t<e?-1:0}var ip=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function ap(t){return function(r){let n=ip.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,f=o-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&i<61}}function lp(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 tx(t,e){if(!(t&&e))return;let r=ip.exec(t),n=ip.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 cp=/t|\s/i;function Yy(t){let e=ap(t);return function(n){let o=n.split(cp);return o.length===2&&ex(o[0])&&e(o[1])}}function rx(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function nx(t,e){if(!(t&&e))return;let[r,n]=t.split(cp),[o,s]=e.split(cp),i=up(r,o);if(i!==void 0)return i||lp(n,s)}var JO=/\/|:/,GO=/^(?:[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 YO(t){return JO.test(t)&&GO.test(t)}var Xy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function XO(t){return Xy.lastIndex=0,Xy.test(t)}var QO=-(2**31),eC=2**31-1;function tC(t){return Number.isInteger(t)&&t<=eC&&t>=QO}function rC(t){return Number.isInteger(t)}function Qy(){return!0}var nC=/[^\\]\\Z/;function oC(t){if(nC.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var sx=T(to=>{"use strict";Object.defineProperty(to,"__esModule",{value:!0});to.formatLimitDefinition=void 0;var sC=sp(),Ot=F(),br=Ot.operators,ca={formatMaximum:{okStr:"<=",ok:br.LTE,fail:br.GT},formatMinimum:{okStr:">=",ok:br.GTE,fail:br.LT},formatExclusiveMaximum:{okStr:"<",ok:br.LT,fail:br.GTE},formatExclusiveMinimum:{okStr:">",ok:br.GT,fail:br.LTE}},iC={message:({keyword:t,schemaCode:e})=>(0,Ot.str)`should be ${ca[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ot._)`{comparison: ${ca[t].okStr}, limit: ${e}}`};to.formatLimitDefinition={keyword:Object.keys(ca),type:"string",schemaType:"string",$data:!0,error:iC,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 sC.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,Ot._)`${f}[${c.schemaCode}]`);t.fail$data((0,Ot.or)((0,Ot._)`typeof ${m} != "object"`,(0,Ot._)`${m} instanceof RegExp`,(0,Ot._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:i.code.formats?(0,Ot._)`${i.code.formats}${(0,Ot.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,Ot._)`${f}.compare(${r}, ${n}) ${ca[o].fail} 0`}},dependencies:["format"]};var aC=t=>(t.addKeyword(to.formatLimitDefinition),t);to.default=aC});var ux=T((_s,cx)=>{"use strict";Object.defineProperty(_s,"__esModule",{value:!0});var ro=ox(),cC=sx(),dp=F(),ix=new dp.Name("fullFormats"),uC=new dp.Name("fastFormats"),pp=(t,e={keywords:!0})=>{if(Array.isArray(e))return ax(t,e,ro.fullFormats,ix),t;let[r,n]=e.mode==="fast"?[ro.fastFormats,uC]:[ro.fullFormats,ix],o=e.formats||ro.formatNames;return ax(t,o,r,n),e.keywords&&(0,cC.default)(t),t};pp.get=(t,e="full")=>{let n=(e==="fast"?ro.fastFormats:ro.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function ax(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,dp._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}cx.exports=_s=pp;Object.defineProperty(_s,"__esModule",{value:!0});_s.default=pp});var Yx,Xx=de(()=>{"use strict";Yx={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot","JetBrains Client":"jetbrains-copilot","IntelliJ IDEA":"jetbrains-copilot",PyCharm:"jetbrains-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed","qwen-code":"qwen-code","qwen-cli-mcp-client":"qwen-code"}});import{createHash as Qx}from"node:crypto";import{join as zp}from"node:path";import{accessSync as QC,copyFileSync as eI,constants as tI,mkdirSync as rI}from"node:fs";import{homedir as nI}from"node:os";var ke,It=de(()=>{"use strict";ke=class{constructor(e){this.sessionDirSegments=e}sessionDirSegments;getSessionDir(){let e=zp(nI(),...this.sessionDirSegments,"context-mode","sessions");return rI(e,{recursive:!0}),e}getSessionDBPath(e){let r=Qx("sha256").update(e).digest("hex").slice(0,16);return zp(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Qx("sha256").update(e).digest("hex").slice(0,16);return zp(this.getSessionDir(),`${r}-events.md`)}backupSettings(){let e=this.getSettingsPath();try{QC(e,tI.R_OK);let r=e+".bak";return eI(e,r),r}catch{return null}}}});var co,Ap=de(()=>{"use strict";It();co=class extends ke{parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar],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[this.projectDirEnvVar],raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar],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[this.projectDirEnvVar],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??""}}});function bs(t,e){let r=Ss[e],n=jp(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function jp(t,e){if(e){let r=Ss[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}function Mp(t){return t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function Dp(t){let e=Object.values(Ss);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var Nt,oI,ev,sI,yZ,Ss,tv,xZ,rv=de(()=>{"use strict";Nt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},oI=["Bash","WebFetch","Read","Grep","Agent","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"],ev=oI.join("|"),sI=["Bash","Read","Write","Edit","NotebookEdit","Glob","Grep","TodoWrite","TaskCreate","TaskUpdate","EnterPlanMode","ExitPlanMode","Skill","Agent","AskUserQuestion","EnterWorktree","mcp__"],yZ=sI.join("|"),Ss={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},tv=[Nt.PRE_TOOL_USE,Nt.SESSION_START],xZ=[Nt.POST_TOOL_USE,Nt.PRE_COMPACT,Nt.USER_PROMPT_SUBMIT]});var Zp={};Ze(Zp,{ClaudeCodeAdapter:()=>Lp});import{readFileSync as ba,writeFileSync as nv,existsSync as iI,readdirSync as aI,chmodSync as cI,accessSync as uI,constants as lI}from"node:fs";import{resolve as mn,join as ov}from"node:path";import{homedir as ws}from"node:os";var Lp,Up=de(()=>{"use strict";Ap();rv();Lp=class extends co{constructor(){super([".claude"])}name="Claude Code";paradigm="json-stdio";projectDirEnvVar="CLAUDE_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return mn(ws(),".claude","settings.json")}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=ba(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){nv(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,Nt.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,Nt.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=[ov(e,"hooks","hooks.json"),ov(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=ba(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=>bs(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>bs(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=mn(ws(),".claude","plugins","installed_plugins.json"),o=JSON.parse(ba(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=[mn(ws(),".claude"),mn(ws(),".config","claude")];for(let r of e){let n=mn(r,"plugins","cache","context-mode","context-mode");try{let s=aI(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let a of Object.keys(n)){let c=n[a];if(!Array.isArray(c))continue;let u=c.filter(d=>{let f=d;if(!Dp(f))return!0;let m=f.hooks??[];return m.every(h=>!h.command||!Mp(h.command))?!0:m.every(h=>{let g=h.command?Mp(h.command):null;return g?iI(g):!0})}),l=c.length-u.length;l>0&&(n[a]=u,o.push(`Removed ${l} stale ${a} hook(s)`))}let s=this.readPluginHooks(e);if(s&&tv.every(c=>this.checkHookType(void 0,s,c))){for(let c of Object.keys(n)){let u=n[c];if(!Array.isArray(u))continue;let l=u.filter(f=>!Dp(f)),d=u.length-l.length;d>0&&(n[c]=l,o.push(`Removed ${d} duplicate ${c} hook(s) \u2014 covered by plugin hooks.json`))}return r.hooks=n,this.writeSettings(r),o.push("Skipped settings.json registration \u2014 plugin hooks.json is sufficient"),o}let i=[Nt.PRE_TOOL_USE,Nt.SESSION_START];for(let a of i){let c=jp(a,e);if(a===Nt.PRE_TOOL_USE){let u={matcher:ev,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(f=>bs(f,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n.PreToolUse=l}else n.PreToolUse=[u],o.push(`Created ${a} hooks section`)}else{let u={matcher:"",hooks:[{type:"command",command:c}]},l=n[a];if(l&&Array.isArray(l)){let d=l.findIndex(f=>bs(f,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n[a]=l}else n[a]=[u],o.push(`Created ${a} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(Ss)){let o=mn(e,"hooks",n);try{uI(o,lI.R_OK),cI(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=mn(ws(),".claude","plugins","installed_plugins.json"),o=JSON.parse(ba(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();nv(n,JSON.stringify(o,null,2)+`
11
- `,"utf-8")}catch{}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function uo(t,e){let r=Hp[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var we,Hp,TZ,$Z,sv=de(()=>{"use strict";we={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},Hp={[we.BEFORE_TOOL]:"beforetool.mjs",[we.AFTER_TOOL]:"aftertool.mjs",[we.PRE_COMPRESS]:"precompress.mjs",[we.SESSION_START]:"sessionstart.mjs"},TZ=[we.BEFORE_TOOL,we.SESSION_START],$Z=[we.AFTER_TOOL,we.PRE_COMPRESS]});var av={};Ze(av,{GeminiCLIAdapter:()=>Fp});import{readFileSync as qp,writeFileSync as iv,mkdirSync as dI,accessSync as pI,chmodSync as fI,constants as mI}from"node:fs";import{resolve as Es,join as hI}from"node:path";import{homedir as wa}from"node:os";var Fp,cv=de(()=>{"use strict";It();sv();Fp=class extends ke{constructor(){super([".gemini"])}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 Es(wa(),".gemini","settings.json")}generateHookConfig(e){return{[we.BEFORE_TOOL]:[{matcher:"run_shell_command|read_file|read_many_files|grep_search|search_file_content|web_fetch|activate_skill|mcp__plugin_context-mode",hooks:[{type:"command",command:uo(we.BEFORE_TOOL,e)}]}],[we.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:uo(we.AFTER_TOOL,e)}]}],[we.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:uo(we.PRE_COMPRESS,e)}]}],[we.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:uo(we.SESSION_START,e)}]}]}}readSettings(){try{let e=qp(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=Es(wa(),".gemini");dI(r,{recursive:!0}),iv(this.getSettingsPath(),JSON.stringify(e,null,2)+`
12
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[we.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?.[we.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=Es(wa(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(qp(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:we.BEFORE_TOOL},{name:we.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:uo(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(m=>m.command?.includes("context-mode")));l>=0?(u[l]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[],n=hI(e,"hooks","gemini-cli");for(let o of Object.values(Hp)){let s=Es(n,o);try{pI(s,mI.R_OK),fI(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Es(wa(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(qp(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),iv(n,JSON.stringify(o,null,2)+`
13
- `,"utf-8")}catch{}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var hn,zZ,AZ,uv=de(()=>{"use strict";hn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},zZ=[hn.BEFORE,hn.AFTER],AZ=[hn.COMPACTING]});var dv={};Ze(dv,{OpenCodeAdapter:()=>Bp});import{readFileSync as lv,writeFileSync as _I,mkdirSync as yI,copyFileSync as xI,accessSync as vI,constants as kI}from"node:fs";import{resolve as Bt,join as gn}from"node:path";import{homedir as Er}from"node:os";function gI(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var Bp,pv=de(()=>{"use strict";It();uv();Bp=class extends ke{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};platform;constructor(e="opencode"){super([".config",e]),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??Bt(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[Bt("kilo.json"),Bt("kilo.jsonc"),Bt(".kilo","kilo.json"),Bt(".kilo","kilo.jsonc"),gn(Er(),".config","kilo","kilo.json"),gn(Er(),".config","kilo","kilo.jsonc")]:[Bt("opencode.json"),Bt("opencode.jsonc"),Bt(".opencode","opencode.json"),Bt(".opencode","opencode.jsonc"),gn(Er(),".config","opencode","opencode.json"),gn(Er(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e;process.platform==="win32"?e=process.env.APPDATA||gn(Er(),"AppData","Roaming"):e=process.env.XDG_CONFIG_HOME||gn(Er(),".config");let r=gn(e,this.platform,"context-mode","sessions");return yI(r,{recursive:!0}),r}generateHookConfig(e){return{[hn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[hn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[hn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;let e=this.paths(),r=new Set(e.filter(s=>s.includes(Er()))),n=null,o;for(let s of e)try{let i=lv(s,"utf-8"),a=s.endsWith(".jsonc")?gI(i):i,c=JSON.parse(a);n||(n=c,o=s);let u=r.has(s);if(this.hasContextModePlugin(c)||u)return this.settingsPath=s,c}catch{continue}return n?(this.settingsPath=o,n):null}writeSettings(e){_I(this.getSettingsPath(),JSON.stringify(e,null,2)+`
14
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r;let o=this.hasContextModePlugin(n);return Array.isArray(n.plugin)?r.push({check:"Plugin registration",status:o?"pass":"fail",message:o?"context-mode found in plugin array":"context-mode not found in plugin array",fix:o?void 0:"context-mode upgrade"}):r.push({check:"Plugin registration",status:"fail",message:`No plugin array found in ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r.push({check:"SessionStart hook",status:"warn",message:`SessionStart not supported in ${this.name} (see issues #14808, #5409)`}),r}checkPluginRegistration(){let e=this.readSettings();return e?this.hasContextModePlugin(e)?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:`context-mode not found in ${this.platform}.json plugin array`,fix:"context-mode upgrade"}:{check:"Plugin registration",status:"warn",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`}}getInstalledVersion(){try{let e=Bt(Er(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(lv(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){let e=this.checkPluginRegistration();if(!this.settingsPath)return null;if(e.status==="pass")return this.settingsPath;try{vI(this.settingsPath,kI.R_OK);let r=this.settingsPath+".bak";return xI(this.settingsPath,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}hasContextModePlugin(e){let r=e.plugin;return Array.isArray(r)&&r.some(n=>typeof n=="string"&&n.includes("context-mode"))}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var _n,HZ,qZ,fv=de(()=>{"use strict";_n={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},HZ=[_n.TOOL_CALL_BEFORE,_n.TOOL_CALL_AFTER],qZ=[_n.COMMAND_NEW]});var hv={};Ze(hv,{OpenClawAdapter:()=>Wp});import{readFileSync as Vp,writeFileSync as SI,copyFileSync as bI,accessSync as wI,constants as EI}from"node:fs";import{resolve as Tr,join as mv}from"node:path";import{homedir as Kp}from"node:os";var Wp,gv=de(()=>{"use strict";It();fv();Wp=class extends ke{constructor(){super([".openclaw"])}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 Tr("openclaw.json")}generateHookConfig(e){return{[_n.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[_n.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[_n.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Tr("openclaw.json"),Tr(".openclaw","openclaw.json"),mv(Kp(),".openclaw","openclaw.json")];for(let r of e)try{let n=Vp(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Tr("openclaw.json");SI(r,JSON.stringify(e,null,2)+`
15
- `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read openclaw.json",fix:"context-mode upgrade"}),r;let o=n.plugins,s=o?.entries;if(s){let a=Object.keys(s).some(c=>c.includes("context-mode"));if(r.push({check:"Plugin registration",status:a?"pass":"fail",message:a?"context-mode found in plugins.entries":"context-mode not found in plugins.entries",fix:a?void 0:"context-mode upgrade"}),a){let u=s["context-mode"]?.enabled!==!1;r.push({check:"Plugin enabled",status:u?"pass":"warn",message:u?"context-mode plugin is enabled":"context-mode plugin is disabled"})}}else r.push({check:"Plugin registration",status:"fail",message:"No plugins.entries found in openclaw.json",fix:"context-mode upgrade"});return o?.slots?.contextEngine==="context-mode"?r.push({check:"Context engine",status:"pass",message:"context-mode registered as context engine (owns compaction)"}):r.push({check:"Context engine",status:"warn",message:"context-mode not set as context engine \u2014 compaction will use default engine"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read openclaw.json"};let n=e.plugins?.entries;return n&&Object.keys(n).some(s=>s.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugins.entries"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in openclaw.json plugins.entries",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=Tr(Kp(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Vp(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=Tr("node_modules","context-mode","package.json"),r=JSON.parse(Vp(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[];r.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=[Tr("openclaw.json"),Tr(".openclaw","openclaw.json"),mv(Kp(),".openclaw","openclaw.json")];for(let r of e)try{wI(r,EI.R_OK);let n=r+".bak";return bI(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var yv={};Ze(yv,{CodexAdapter:()=>Gp});import{readFileSync as Jp}from"node:fs";import{resolve as _v,dirname as TI}from"node:path";import{fileURLToPath as $I}from"node:url";import{homedir as PI}from"node:os";var Gp,xv=de(()=>{"use strict";It();Gp=class extends ke{constructor(){super([".codex"])}name="Codex CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_response,sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:r.cwd,raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{hookSpecificOutput:{hookEventName:"PreToolUse",permissionDecision:"deny",permissionDecisionReason:e.reason??"Blocked by context-mode hook"}}:e.decision==="context"&&e.additionalContext?{}:{}}formatPostToolUseResponse(e){return e.additionalContext?{hookSpecificOutput:{hookEventName:"PostToolUse",additionalContext:e.additionalContext}}:{}}formatPreCompactResponse(e){return e.context?{hookSpecificOutput:{additionalContext:e.context}}:{}}formatSessionStartResponse(e){return e.context?{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:e.context}}:{}}getSettingsPath(){return _v(PI(),".codex","config.toml")}generateHookConfig(e){return{PreToolUse:[{matcher:"local_shell|shell|shell_command|exec_command|container.exec|Bash|Shell|grep_files|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",hooks:[{type:"command",command:`node ${e}/hooks/pretooluse.mjs`}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{return{_raw_toml:Jp(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"pass",message:"Codex CLI hooks are stable. Configure ~/.codex/hooks.json for PreToolUse, PostToolUse, and SessionStart."}]}checkPluginRegistration(){try{let e=Jp(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[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=_v(TI($I(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Jp(e,"utf-8")}catch{return`# context-mode
9
+ deps: ${r}}`};var DR={keyword:"dependencies",type:"object",schemaType:"object",error:qt.error,code(t){let[e,r]=LR(t);xy(t,e),vy(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 xy(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,gs.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,gs.checkReportMissingProp)(t,u)}):(r.if((0,Zd._)`${c} && (${(0,gs.checkMissingProp)(t,a,s)})`),(0,gs.reportMissingProp)(t,s),r.else())}}qt.validatePropertyDeps=xy;function vy(t,e=t.schema){let{gen:r,data:n,keyword:o,it:s}=t,i=r.name("valid");for(let a in e)(0,MR.alwaysValidSchema)(s,e[a])||(r.if((0,gs.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))}qt.validateSchemaDeps=vy;qt.default=DR});var by=T(Ud=>{"use strict";Object.defineProperty(Ud,"__esModule",{value:!0});var Sy=F(),ZR=ee(),UR={message:"property name must be valid",params:({params:t})=>(0,Sy._)`{propertyName: ${t.propertyName}}`},HR={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:UR,code(t){let{gen:e,schema:r,data:n,it:o}=t;if((0,ZR.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)}};Ud.default=HR});var qd=T(Hd=>{"use strict";Object.defineProperty(Hd,"__esModule",{value:!0});var ta=ft(),Ot=F(),qR=rr(),ra=ee(),FR={message:"must NOT have additional properties",params:({params:t})=>(0,Ot._)`{additionalProperty: ${t.additionalProperty}}`},BR={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:FR,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,ra.alwaysValidSchema)(i,r))return;let u=(0,ta.allSchemaProperties)(n.properties),l=(0,ta.allSchemaProperties)(n.patternProperties);d(),t.ok((0,Ot._)`${s} === ${qR.default.errors}`);function d(){e.forIn("key",o,g=>{!u.length&&!l.length?p(g):e.if(f(g),()=>p(g))})}function f(g){let x;if(u.length>8){let y=(0,ra.schemaRefOrVal)(i,n.properties,"properties");x=(0,ta.isOwnProperty)(e,y,g)}else u.length?x=(0,Ot.or)(...u.map(y=>(0,Ot._)`${g} === ${y}`)):x=Ot.nil;return l.length&&(x=(0,Ot.or)(x,...l.map(y=>(0,Ot._)`${(0,ta.usePattern)(t,y)}.test(${g})`))),(0,Ot.not)(x)}function m(g){e.code((0,Ot._)`delete ${o}[${g}]`)}function p(g){if(c.removeAdditional==="all"||c.removeAdditional&&r===!1){m(g);return}if(r===!1){t.setParams({additionalProperty:g}),t.error(),a||e.break();return}if(typeof r=="object"&&!(0,ra.alwaysValidSchema)(i,r)){let x=e.name("valid");c.removeAdditional==="failing"?(h(g,x,!1),e.if((0,Ot.not)(x),()=>{t.reset(),m(g)})):(h(g,x),a||e.if((0,Ot.not)(x),()=>e.break()))}}function h(g,x,y){let k={keyword:"additionalProperties",dataProp:g,dataPropType:ra.Type.Str};y===!1&&Object.assign(k,{compositeRule:!0,createErrors:!1,allErrors:!1}),t.subschema(k,x)}}};Hd.default=BR});var Ty=T(Bd=>{"use strict";Object.defineProperty(Bd,"__esModule",{value:!0});var VR=rs(),wy=ft(),Fd=ee(),Ey=qd(),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&&Ey.default.code(new VR.KeywordCxt(s,Ey.default,"additionalProperties"));let i=(0,wy.allSchemaProperties)(r);for(let d of i)s.definedProperties.add(d);s.opts.unevaluated&&i.length&&s.props!==!0&&(s.props=Fd.mergeEvaluated.props(e,(0,Fd.toHash)(i),s.props));let a=i.filter(d=>!(0,Fd.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,wy.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)}}};Bd.default=KR});var Oy=T(Vd=>{"use strict";Object.defineProperty(Vd,"__esModule",{value:!0});var $y=ft(),na=F(),Py=ee(),Ry=ee(),WR={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,$y.allSchemaProperties)(r),c=a.filter(h=>(0,Py.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 na.Name)&&(s.props=(0,Ry.evaluatedPropsToName)(e,s.props));let{props:d}=s;f();function f(){for(let h of a)u&&m(h),s.allErrors?p(h):(e.var(l,!0),p(h),e.if(l))}function m(h){for(let g in u)new RegExp(h).test(g)&&(0,Py.checkStrictMode)(s,`property ${g} matches pattern ${h} (use allowMatchingProperties)`)}function p(h){e.forIn("key",n,g=>{e.if((0,na._)`${(0,$y.usePattern)(t,h)}.test(${g})`,()=>{let x=c.includes(h);x||t.subschema({keyword:"patternProperties",schemaProp:h,dataProp:g,dataPropType:Ry.Type.Str},l),s.opts.unevaluated&&d!==!0?e.assign((0,na._)`${d}[${g}]`,!0):!x&&!s.allErrors&&e.if((0,na.not)(l),()=>e.break())})})}}};Vd.default=WR});var Cy=T(Kd=>{"use strict";Object.defineProperty(Kd,"__esModule",{value:!0});var JR=ee(),GR={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(t){let{gen:e,schema:r,it:n}=t;if((0,JR.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"}};Kd.default=GR});var Iy=T(Wd=>{"use strict";Object.defineProperty(Wd,"__esModule",{value:!0});var YR=ft(),XR={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:YR.validateUnion,error:{message:"must match a schema in anyOf"}};Wd.default=XR});var Ny=T(Jd=>{"use strict";Object.defineProperty(Jd,"__esModule",{value:!0});var oa=F(),QR=ee(),eO={message:"must match exactly one schema in oneOf",params:({params:t})=>(0,oa._)`{passingSchemas: ${t.passing}}`},tO={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:eO,code(t){let{gen:e,schema:r,parentSchema:n,it:o}=t;if(!Array.isArray(r))throw new Error("ajv implementation error");if(o.opts.discriminator&&n.discriminator)return;let s=r,i=e.let("valid",!1),a=e.let("passing",null),c=e.name("_valid");t.setParams({passing:a}),e.block(u),t.result(i,()=>t.reset(),()=>t.error(!0));function u(){s.forEach((l,d)=>{let f;(0,QR.alwaysValidSchema)(o,l)?e.var(c,!0):f=t.subschema({keyword:"oneOf",schemaProp:d,compositeRule:!0},c),d>0&&e.if((0,oa._)`${c} && ${i}`).assign(i,!1).assign(a,(0,oa._)`[${a}, ${d}]`).else(),e.if(c,()=>{e.assign(i,!0),e.assign(a,d),f&&t.mergeEvaluated(f,oa.Name)})})}}};Jd.default=tO});var zy=T(Gd=>{"use strict";Object.defineProperty(Gd,"__esModule",{value:!0});var rO=ee(),nO={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,rO.alwaysValidSchema)(n,s))return;let a=t.subschema({keyword:"allOf",schemaProp:i},o);t.ok(o),t.mergeEvaluated(a)})}};Gd.default=nO});var My=T(Yd=>{"use strict";Object.defineProperty(Yd,"__esModule",{value:!0});var sa=F(),jy=ee(),oO={message:({params:t})=>(0,sa.str)`must match "${t.ifClause}" schema`,params:({params:t})=>(0,sa._)`{failingKeyword: ${t.ifClause}}`},sO={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:oO,code(t){let{gen:e,parentSchema:r,it:n}=t;r.then===void 0&&r.else===void 0&&(0,jy.checkStrictMode)(n,'"if" without "then" and "else" is ignored');let o=Ay(n,"then"),s=Ay(n,"else");if(!o&&!s)return;let i=e.let("valid",!0),a=e.name("_valid");if(c(),t.reset(),o&&s){let l=e.let("ifClause");t.setParams({ifClause:l}),e.if(a,u("then",l),u("else",l))}else o?e.if(a,u("then")):e.if((0,sa.not)(a),u("else"));t.pass(i,()=>t.error(!0));function c(){let l=t.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},a);t.mergeEvaluated(l)}function u(l,d){return()=>{let f=t.subschema({keyword:l},a);e.assign(i,a),t.mergeValidEvaluated(f,i),d?e.assign(d,(0,sa._)`${l}`):t.setParams({ifClause:l})}}}};function Ay(t,e){let r=t.schema[e];return r!==void 0&&!(0,jy.alwaysValidSchema)(t,r)}Yd.default=sO});var Dy=T(Xd=>{"use strict";Object.defineProperty(Xd,"__esModule",{value:!0});var iO=ee(),aO={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:t,parentSchema:e,it:r}){e.if===void 0&&(0,iO.checkStrictMode)(r,`"${t}" without "if" is ignored`)}};Xd.default=aO});var Ly=T(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});var cO=Ad(),uO=hy(),lO=jd(),dO=_y(),pO=yy(),fO=ky(),mO=by(),hO=qd(),gO=Ty(),_O=Oy(),yO=Cy(),xO=Iy(),vO=Ny(),kO=zy(),SO=My(),bO=Dy();function wO(t=!1){let e=[yO.default,xO.default,vO.default,kO.default,SO.default,bO.default,mO.default,hO.default,fO.default,gO.default,_O.default];return t?e.push(uO.default,dO.default):e.push(cO.default,lO.default),e.push(pO.default),e}Qd.default=wO});var Zy=T(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});var be=F(),EO={message:({schemaCode:t})=>(0,be.str)`must match format "${t}"`,params:({schemaCode:t})=>(0,be._)`{format: ${t}}`},TO={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:EO,code(t,e){let{gen:r,data:n,$data:o,schema:s,schemaCode:i,it:a}=t,{opts:c,errSchemaPath:u,schemaEnv:l,self:d}=a;if(!c.validateFormats)return;o?f():m();function f(){let p=r.scopeValue("formats",{ref:d.formats,code:c.code.formats}),h=r.const("fDef",(0,be._)`${p}[${i}]`),g=r.let("fType"),x=r.let("format");r.if((0,be._)`typeof ${h} == "object" && !(${h} instanceof RegExp)`,()=>r.assign(g,(0,be._)`${h}.type || "string"`).assign(x,(0,be._)`${h}.validate`),()=>r.assign(g,(0,be._)`"string"`).assign(x,h)),t.fail$data((0,be.or)(y(),k()));function y(){return c.strictSchema===!1?be.nil:(0,be._)`${i} && !${x}`}function k(){let w=l.$async?(0,be._)`(${h}.async ? await ${x}(${n}) : ${x}(${n}))`:(0,be._)`${x}(${n})`,O=(0,be._)`(typeof ${x} == "function" ? ${w} : ${x}.test(${n}))`;return(0,be._)`${x} && ${x} !== true && ${g} === ${e} && !${O}`}}function m(){let p=d.formats[s];if(!p){y();return}if(p===!0)return;let[h,g,x]=k(p);h===e&&t.pass(w());function y(){if(c.strictSchema===!1){d.logger.warn(O());return}throw new Error(O());function O(){return`unknown format "${s}" ignored in schema at path "${u}"`}}function k(O){let G=O instanceof RegExp?(0,be.regexpCode)(O):c.code.formats?(0,be._)`${c.code.formats}${(0,be.getProperty)(s)}`:void 0,$e=r.scopeValue("formats",{key:s,ref:O,code:G});return typeof O=="object"&&!(O instanceof RegExp)?[O.type||"string",O.validate,(0,be._)`${$e}.validate`]:["string",O,$e]}function w(){if(typeof p=="object"&&!(p instanceof RegExp)&&p.async){if(!l.$async)throw new Error("async format in sync schema");return(0,be._)`await ${x}(${n})`}return typeof g=="function"?(0,be._)`${x}(${n})`:(0,be._)`${x}.test(${n})`}}}};ep.default=TO});var Uy=T(tp=>{"use strict";Object.defineProperty(tp,"__esModule",{value:!0});var $O=Zy(),PO=[$O.default];tp.default=PO});var Hy=T(Yn=>{"use strict";Object.defineProperty(Yn,"__esModule",{value:!0});Yn.contentVocabulary=Yn.metadataVocabulary=void 0;Yn.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Yn.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Fy=T(rp=>{"use strict";Object.defineProperty(rp,"__esModule",{value:!0});var RO=Y_(),OO=dy(),CO=Ly(),IO=Uy(),qy=Hy(),NO=[RO.default,OO.default,(0,CO.default)(),IO.default,qy.metadataVocabulary,qy.contentVocabulary];rp.default=NO});var Vy=T(ia=>{"use strict";Object.defineProperty(ia,"__esModule",{value:!0});ia.DiscrError=void 0;var By;(function(t){t.Tag="tag",t.Mapping="mapping"})(By||(ia.DiscrError=By={}))});var Wy=T(op=>{"use strict";Object.defineProperty(op,"__esModule",{value:!0});var Xn=F(),np=Vy(),Ky=Hi(),zO=ns(),AO=ee(),jO={message:({params:{discrError:t,tagName:e}})=>t===np.DiscrError.Tag?`tag "${e}" must be string`:`value of tag "${e}" must be in oneOf`,params:({params:{discrError:t,tag:e,tagName:r}})=>(0,Xn._)`{error: ${t}, tag: ${r}, tagValue: ${e}}`},MO={keyword:"discriminator",type:"object",schemaType:"object",error:jO,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,Xn._)`${r}${(0,Xn.getProperty)(a)}`);e.if((0,Xn._)`typeof ${u} == "string"`,()=>l(),()=>t.error(!1,{discrError:np.DiscrError.Tag,tag:u,tagName:a})),t.ok(c);function l(){let m=f();e.if(!1);for(let p in m)e.elseIf((0,Xn._)`${u} === ${p}`),e.assign(c,d(m[p]));e.else(),t.error(!1,{discrError:np.DiscrError.Mapping,tag:u,tagName:a}),e.endIf()}function d(m){let p=e.name("valid"),h=t.subschema({keyword:"oneOf",schemaProp:m},p);return t.mergeEvaluated(h,Xn.Name),p}function f(){var m;let p={},h=x(o),g=!0;for(let w=0;w<i.length;w++){let O=i[w];if(O?.$ref&&!(0,AO.schemaHasRulesButRef)(O,s.self.RULES)){let $e=O.$ref;if(O=Ky.resolveRef.call(s.self,s.schemaEnv.root,s.baseId,$e),O instanceof Ky.SchemaEnv&&(O=O.schema),O===void 0)throw new zO.default(s.opts.uriResolver,s.baseId,$e)}let G=(m=O?.properties)===null||m===void 0?void 0:m[a];if(typeof G!="object")throw new Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${a}"`);g=g&&(h||x(O)),y(G,w)}if(!g)throw new Error(`discriminator: "${a}" must be required`);return p;function x({required:w}){return Array.isArray(w)&&w.includes(a)}function y(w,O){if(w.const)k(w.const,O);else if(w.enum)for(let G of w.enum)k(G,O);else throw new Error(`discriminator: "properties/${a}" must have "const" or "enum"`)}function k(w,O){if(typeof w!="string"||w in p)throw new Error(`discriminator: "${a}" values must be unique strings`);p[w]=O}}}};op.default=MO});var Jy=T((JD,DO)=>{DO.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 ip=T((me,sp)=>{"use strict";Object.defineProperty(me,"__esModule",{value:!0});me.MissingRefError=me.ValidationError=me.CodeGen=me.Name=me.nil=me.stringify=me.str=me._=me.KeywordCxt=me.Ajv=void 0;var LO=B_(),ZO=Fy(),UO=Wy(),Gy=Jy(),HO=["/properties"],aa="http://json-schema.org/draft-07/schema",Qn=class extends LO.default{_addVocabularies(){super._addVocabularies(),ZO.default.forEach(e=>this.addVocabulary(e)),this.opts.discriminator&&this.addKeyword(UO.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let e=this.opts.$data?this.$dataMetaSchema(Gy,HO):Gy;this.addMetaSchema(e,aa,!1),this.refs["http://json-schema.org/schema"]=aa}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(aa)?aa:void 0)}};me.Ajv=Qn;sp.exports=me=Qn;sp.exports.Ajv=Qn;Object.defineProperty(me,"__esModule",{value:!0});me.default=Qn;var qO=rs();Object.defineProperty(me,"KeywordCxt",{enumerable:!0,get:function(){return qO.KeywordCxt}});var eo=F();Object.defineProperty(me,"_",{enumerable:!0,get:function(){return eo._}});Object.defineProperty(me,"str",{enumerable:!0,get:function(){return eo.str}});Object.defineProperty(me,"stringify",{enumerable:!0,get:function(){return eo.stringify}});Object.defineProperty(me,"nil",{enumerable:!0,get:function(){return eo.nil}});Object.defineProperty(me,"Name",{enumerable:!0,get:function(){return eo.Name}});Object.defineProperty(me,"CodeGen",{enumerable:!0,get:function(){return eo.CodeGen}});var FO=Zi();Object.defineProperty(me,"ValidationError",{enumerable:!0,get:function(){return FO.default}});var BO=ns();Object.defineProperty(me,"MissingRefError",{enumerable:!0,get:function(){return BO.default}})});var ox=T(Bt=>{"use strict";Object.defineProperty(Bt,"__esModule",{value:!0});Bt.formatNames=Bt.fastFormats=Bt.fullFormats=void 0;function Ft(t,e){return{validate:t,compare:e}}Bt.fullFormats={date:Ft(ex,lp),time:Ft(cp(!0),dp),"date-time":Ft(Yy(!0),rx),"iso-time":Ft(cp(),tx),"iso-date-time":Ft(Yy(),nx),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:YO,"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:oC,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:XO,int32:{type:"number",validate:tC},int64:{type:"number",validate:rC},float:{type:"number",validate:Qy},double:{type:"number",validate:Qy},password:!0,binary:!0};Bt.fastFormats={...Bt.fullFormats,date:Ft(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,lp),time:Ft(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,dp),"date-time":Ft(/^\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,rx),"iso-time":Ft(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,tx),"iso-date-time":Ft(/^\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,nx),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};Bt.formatNames=Object.keys(Bt.fullFormats);function VO(t){return t%4===0&&(t%100!==0||t%400===0)}var KO=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,WO=[0,31,28,31,30,31,30,31,31,30,31,30,31];function ex(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:WO[n])}function lp(t,e){if(t&&e)return t>e?1:t<e?-1:0}var ap=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function cp(t){return function(r){let n=ap.exec(r);if(!n)return!1;let o=+n[1],s=+n[2],i=+n[3],a=n[4],c=n[5]==="-"?-1:1,u=+(n[6]||0),l=+(n[7]||0);if(u>23||l>59||t&&!a)return!1;if(o<=23&&s<=59&&i<60)return!0;let d=s-l*c,f=o-u*c-(d<0?1:0);return(f===23||f===-1)&&(d===59||d===-1)&&i<61}}function dp(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 tx(t,e){if(!(t&&e))return;let r=ap.exec(t),n=ap.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 up=/t|\s/i;function Yy(t){let e=cp(t);return function(n){let o=n.split(up);return o.length===2&&ex(o[0])&&e(o[1])}}function rx(t,e){if(!(t&&e))return;let r=new Date(t).valueOf(),n=new Date(e).valueOf();if(r&&n)return r-n}function nx(t,e){if(!(t&&e))return;let[r,n]=t.split(up),[o,s]=e.split(up),i=lp(r,o);if(i!==void 0)return i||dp(n,s)}var JO=/\/|:/,GO=/^(?:[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 YO(t){return JO.test(t)&&GO.test(t)}var Xy=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function XO(t){return Xy.lastIndex=0,Xy.test(t)}var QO=-(2**31),eC=2**31-1;function tC(t){return Number.isInteger(t)&&t<=eC&&t>=QO}function rC(t){return Number.isInteger(t)}function Qy(){return!0}var nC=/[^\\]\\Z/;function oC(t){if(nC.test(t))return!1;try{return new RegExp(t),!0}catch{return!1}}});var sx=T(to=>{"use strict";Object.defineProperty(to,"__esModule",{value:!0});to.formatLimitDefinition=void 0;var sC=ip(),Ct=F(),Er=Ct.operators,ca={formatMaximum:{okStr:"<=",ok:Er.LTE,fail:Er.GT},formatMinimum:{okStr:">=",ok:Er.GTE,fail:Er.LT},formatExclusiveMaximum:{okStr:"<",ok:Er.LT,fail:Er.GTE},formatExclusiveMinimum:{okStr:">",ok:Er.GT,fail:Er.LTE}},iC={message:({keyword:t,schemaCode:e})=>(0,Ct.str)`should be ${ca[t].okStr} ${e}`,params:({keyword:t,schemaCode:e})=>(0,Ct._)`{comparison: ${ca[t].okStr}, limit: ${e}}`};to.formatLimitDefinition={keyword:Object.keys(ca),type:"string",schemaType:"string",$data:!0,error:iC,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 sC.KeywordCxt(s,a.RULES.all.format.definition,"format");c.$data?u():l();function u(){let f=e.scopeValue("formats",{ref:a.formats,code:i.code.formats}),m=e.const("fmt",(0,Ct._)`${f}[${c.schemaCode}]`);t.fail$data((0,Ct.or)((0,Ct._)`typeof ${m} != "object"`,(0,Ct._)`${m} instanceof RegExp`,(0,Ct._)`typeof ${m}.compare != "function"`,d(m)))}function l(){let f=c.schema,m=a.formats[f];if(!m||m===!0)return;if(typeof m!="object"||m instanceof RegExp||typeof m.compare!="function")throw new Error(`"${o}": format "${f}" does not define "compare" function`);let p=e.scopeValue("formats",{key:f,ref:m,code:i.code.formats?(0,Ct._)`${i.code.formats}${(0,Ct.getProperty)(f)}`:void 0});t.fail$data(d(p))}function d(f){return(0,Ct._)`${f}.compare(${r}, ${n}) ${ca[o].fail} 0`}},dependencies:["format"]};var aC=t=>(t.addKeyword(to.formatLimitDefinition),t);to.default=aC});var ux=T((_s,cx)=>{"use strict";Object.defineProperty(_s,"__esModule",{value:!0});var ro=ox(),cC=sx(),pp=F(),ix=new pp.Name("fullFormats"),uC=new pp.Name("fastFormats"),fp=(t,e={keywords:!0})=>{if(Array.isArray(e))return ax(t,e,ro.fullFormats,ix),t;let[r,n]=e.mode==="fast"?[ro.fastFormats,uC]:[ro.fullFormats,ix],o=e.formats||ro.formatNames;return ax(t,o,r,n),e.keywords&&(0,cC.default)(t),t};fp.get=(t,e="full")=>{let n=(e==="fast"?ro.fastFormats:ro.fullFormats)[t];if(!n)throw new Error(`Unknown format "${t}"`);return n};function ax(t,e,r,n){var o,s;(o=(s=t.opts.code).formats)!==null&&o!==void 0||(s.formats=(0,pp._)`require("ajv-formats/dist/formats").${n}`);for(let i of e)t.addFormat(i,r[i])}cx.exports=_s=fp;Object.defineProperty(_s,"__esModule",{value:!0});_s.default=fp});var Yx,Xx=pe(()=>{"use strict";Yx={"claude-code":"claude-code","gemini-cli-mcp-client":"gemini-cli","antigravity-client":"antigravity","cursor-vscode":"cursor","Visual-Studio-Code":"vscode-copilot","JetBrains Client":"jetbrains-copilot","IntelliJ IDEA":"jetbrains-copilot",PyCharm:"jetbrains-copilot",Codex:"codex","codex-mcp-client":"codex","Kilo Code":"kilo","Kiro CLI":"kiro","Pi CLI":"pi","Pi Coding Agent":"pi",Zed:"zed",zed:"zed","qwen-code":"qwen-code","qwen-cli-mcp-client":"qwen-code"}});import{createHash as Qx}from"node:crypto";import{join as Ap}from"node:path";import{accessSync as QC,copyFileSync as eI,constants as tI,mkdirSync as rI}from"node:fs";import{homedir as nI}from"node:os";var ke,Nt=pe(()=>{"use strict";ke=class{constructor(e){this.sessionDirSegments=e}sessionDirSegments;getSessionDir(){let e=Ap(nI(),...this.sessionDirSegments,"context-mode","sessions");return rI(e,{recursive:!0}),e}getSessionDBPath(e){let r=Qx("sha256").update(e).digest("hex").slice(0,16);return Ap(this.getSessionDir(),`${r}.db`)}getSessionEventsPath(e){let r=Qx("sha256").update(e).digest("hex").slice(0,16);return Ap(this.getSessionDir(),`${r}-events.md`)}backupSettings(){let e=this.getSettingsPath();try{QC(e,tI.R_OK);let r=e+".bak";return eI(e,r),r}catch{return null}}}});var co,jp=pe(()=>{"use strict";Nt();co=class extends ke{parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar],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[this.projectDirEnvVar],raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:process.env[this.projectDirEnvVar],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[this.projectDirEnvVar],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??""}}});function bs(t,e){let r=Ss[e],n=Mp(e);return t.hooks?.some(o=>o.command?.includes(r)||o.command?.includes(n))??!1}function Mp(t,e){if(e){let r=Ss[t];return`node "${e}/hooks/${r}"`}return`context-mode hook claude-code ${t.toLowerCase()}`}function Dp(t){return t.match(/node\s+"?([^"]+\.mjs)"?/)?.[1]??null}function Lp(t){let e=Object.values(Ss);return t.hooks?.some(r=>r.command!=null&&(e.some(n=>r.command.includes(n))||r.command.includes("context-mode hook")))??!1}var zt,oI,ev,sI,yZ,Ss,tv,xZ,rv=pe(()=>{"use strict";zt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",USER_PROMPT_SUBMIT:"UserPromptSubmit"},oI=["Bash","WebFetch","Read","Grep","Agent","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"],ev=oI.join("|"),sI=["Bash","Read","Write","Edit","NotebookEdit","Glob","Grep","TodoWrite","TaskCreate","TaskUpdate","EnterPlanMode","ExitPlanMode","Skill","Agent","AskUserQuestion","EnterWorktree","mcp__"],yZ=sI.join("|"),Ss={PreToolUse:"pretooluse.mjs",PostToolUse:"posttooluse.mjs",PreCompact:"precompact.mjs",SessionStart:"sessionstart.mjs",UserPromptSubmit:"userpromptsubmit.mjs"},tv=[zt.PRE_TOOL_USE,zt.SESSION_START],xZ=[zt.POST_TOOL_USE,zt.PRE_COMPACT,zt.USER_PROMPT_SUBMIT]});var Up={};Ze(Up,{ClaudeCodeAdapter:()=>Zp});import{readFileSync as ba,writeFileSync as nv,existsSync as iI,readdirSync as aI,chmodSync as cI,accessSync as uI,constants as lI}from"node:fs";import{resolve as hn,join as ov}from"node:path";import{homedir as ws}from"node:os";var Zp,Hp=pe(()=>{"use strict";jp();rv();Zp=class extends co{constructor(){super([".claude"])}name="Claude Code";paradigm="json-stdio";projectDirEnvVar="CLAUDE_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return hn(ws(),".claude","settings.json")}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=ba(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){nv(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,zt.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,zt.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=[ov(e,"hooks","hooks.json"),ov(e,".claude-plugin","hooks","hooks.json")];for(let n of r)try{let o=ba(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=>bs(i,n)))return!0;let s=r?.[n];return!!(s&&s.length>0&&s.some(i=>bs(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=hn(ws(),".claude","plugins","installed_plugins.json"),o=JSON.parse(ba(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=[hn(ws(),".claude"),hn(ws(),".config","claude")];for(let r of e){let n=hn(r,"plugins","cache","context-mode","context-mode");try{let s=aI(n).filter(i=>/^\d+\.\d+\.\d+/.test(i)).sort((i,a)=>{let c=i.split(".").map(Number),u=a.split(".").map(Number);for(let l=0;l<3;l++)if((c[l]??0)!==(u[l]??0))return(c[l]??0)-(u[l]??0);return 0});if(s.length>0)return s[s.length-1]}catch{}}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=r.hooks??{},o=[];for(let a of Object.keys(n)){let c=n[a];if(!Array.isArray(c))continue;let u=c.filter(d=>{let f=d;if(!Lp(f))return!0;let m=f.hooks??[];return m.every(h=>!h.command||!Dp(h.command))?!0:m.every(h=>{let g=h.command?Dp(h.command):null;return g?iI(g):!0})}),l=c.length-u.length;l>0&&(n[a]=u,o.push(`Removed ${l} stale ${a} hook(s)`))}let s=this.readPluginHooks(e);if(s&&tv.every(c=>this.checkHookType(void 0,s,c))){for(let c of Object.keys(n)){let u=n[c];if(!Array.isArray(u))continue;let l=u.filter(f=>!Lp(f)),d=u.length-l.length;d>0&&(n[c]=l,o.push(`Removed ${d} duplicate ${c} hook(s) \u2014 covered by plugin hooks.json`))}return r.hooks=n,this.writeSettings(r),o.push("Skipped settings.json registration \u2014 plugin hooks.json is sufficient"),o}let i=[zt.PRE_TOOL_USE,zt.SESSION_START];for(let a of i){let c=Mp(a,e);if(a===zt.PRE_TOOL_USE){let u={matcher:ev,hooks:[{type:"command",command:c}]},l=n.PreToolUse;if(l&&Array.isArray(l)){let d=l.findIndex(f=>bs(f,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n.PreToolUse=l}else n.PreToolUse=[u],o.push(`Created ${a} hooks section`)}else{let u={matcher:"",hooks:[{type:"command",command:c}]},l=n[a];if(l&&Array.isArray(l)){let d=l.findIndex(f=>bs(f,a));d>=0?(l[d]=u,o.push(`Updated existing ${a} hook entry`)):(l.push(u),o.push(`Added ${a} hook entry`)),n[a]=l}else n[a]=[u],o.push(`Created ${a} hooks section`)}}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[];for(let[,n]of Object.entries(Ss)){let o=hn(e,"hooks",n);try{uI(o,lI.R_OK),cI(o,493),r.push(o)}catch{}}return r}updatePluginRegistry(e,r){try{let n=hn(ws(),".claude","plugins","installed_plugins.json"),o=JSON.parse(ba(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();nv(n,JSON.stringify(o,null,2)+`
11
+ `,"utf-8")}catch{}}extractSessionId(e){if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return e.session_id?e.session_id:process.env.CLAUDE_SESSION_ID?process.env.CLAUDE_SESSION_ID:`pid-${process.ppid}`}}});function uo(t,e){let r=qp[t];return e&&r?`node "${e}/hooks/${r}"`:`context-mode hook gemini-cli ${t.toLowerCase()}`}var we,qp,TZ,$Z,sv=pe(()=>{"use strict";we={BEFORE_TOOL:"BeforeTool",AFTER_TOOL:"AfterTool",PRE_COMPRESS:"PreCompress",SESSION_START:"SessionStart"},qp={[we.BEFORE_TOOL]:"beforetool.mjs",[we.AFTER_TOOL]:"aftertool.mjs",[we.PRE_COMPRESS]:"precompress.mjs",[we.SESSION_START]:"sessionstart.mjs"},TZ=[we.BEFORE_TOOL,we.SESSION_START],$Z=[we.AFTER_TOOL,we.PRE_COMPRESS]});var av={};Ze(av,{GeminiCLIAdapter:()=>Bp});import{readFileSync as Fp,writeFileSync as iv,mkdirSync as dI,accessSync as pI,chmodSync as fI,constants as mI}from"node:fs";import{resolve as Es,join as hI}from"node:path";import{homedir as wa}from"node:os";var Bp,cv=pe(()=>{"use strict";Nt();sv();Bp=class extends ke{constructor(){super([".gemini"])}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 Es(wa(),".gemini","settings.json")}generateHookConfig(e){return{[we.BEFORE_TOOL]:[{matcher:"run_shell_command|read_file|read_many_files|grep_search|search_file_content|web_fetch|activate_skill|mcp__plugin_context-mode",hooks:[{type:"command",command:uo(we.BEFORE_TOOL,e)}]}],[we.AFTER_TOOL]:[{matcher:"",hooks:[{type:"command",command:uo(we.AFTER_TOOL,e)}]}],[we.PRE_COMPRESS]:[{matcher:"",hooks:[{type:"command",command:uo(we.PRE_COMPRESS,e)}]}],[we.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:uo(we.SESSION_START,e)}]}]}}readSettings(){try{let e=Fp(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=Es(wa(),".gemini");dI(r,{recursive:!0}),iv(this.getSettingsPath(),JSON.stringify(e,null,2)+`
12
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"BeforeTool hook",status:"fail",message:"Could not read ~/.gemini/settings.json",fix:"context-mode upgrade"}),r;let o=n.hooks,s=o?.[we.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?.[we.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=Es(wa(),".gemini","extensions","context-mode","package.json"),r=JSON.parse(Fp(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:we.BEFORE_TOOL},{name:we.SESSION_START}];for(let i of s){let c={matcher:"",hooks:[{type:"command",command:uo(i.name,e)}]},u=n[i.name];if(u&&Array.isArray(u)){let l=u.findIndex(d=>d.hooks?.some(m=>m.command?.includes("context-mode")));l>=0?(u[l]=c,o.push(`Updated existing ${i.name} hook entry`)):(u.push(c),o.push(`Added ${i.name} hook entry`)),n[i.name]=u}else n[i.name]=[c],o.push(`Created ${i.name} hooks section`)}return r.hooks=n,this.writeSettings(r),o}setHookPermissions(e){let r=[],n=hI(e,"hooks","gemini-cli");for(let o of Object.values(qp)){let s=Es(n,o);try{pI(s,mI.R_OK),fI(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){try{let n=Es(wa(),".gemini","extensions","context-mode","package.json"),o=JSON.parse(Fp(n,"utf-8"));o.version=r,o.installPath=e,o.lastUpdated=new Date().toISOString(),iv(n,JSON.stringify(o,null,2)+`
13
+ `,"utf-8")}catch{}}getProjectDir(){return process.env.GEMINI_PROJECT_DIR??process.env.CLAUDE_PROJECT_DIR}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});var gn,zZ,AZ,uv=pe(()=>{"use strict";gn={BEFORE:"tool.execute.before",AFTER:"tool.execute.after",COMPACTING:"experimental.session.compacting"},zZ=[gn.BEFORE,gn.AFTER],AZ=[gn.COMPACTING]});var dv={};Ze(dv,{OpenCodeAdapter:()=>Vp});import{readFileSync as lv,writeFileSync as _I,mkdirSync as yI,copyFileSync as xI,accessSync as vI,constants as kI}from"node:fs";import{resolve as Vt,join as _n}from"node:path";import{homedir as $r}from"node:os";function gI(t){return t.replace(/\/\/.*$/gm,"").replace(/\/\*[\s\S]*?\*\//g,"").replace(/,(\s*[}\]])/g,"$1")}var Vp,pv=pe(()=>{"use strict";Nt();uv();Vp=class extends ke{get name(){return this.platform==="kilo"?"KiloCode":"OpenCode"}paradigm="ts-plugin";settingsPath;capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!1};platform;constructor(e="opencode"){super([".config",e]),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??Vt(`${this.platform}.json`)}paths(){return this.platform==="kilo"?[Vt("kilo.json"),Vt("kilo.jsonc"),Vt(".kilo","kilo.json"),Vt(".kilo","kilo.jsonc"),_n($r(),".config","kilo","kilo.json"),_n($r(),".config","kilo","kilo.jsonc")]:[Vt("opencode.json"),Vt("opencode.jsonc"),Vt(".opencode","opencode.json"),Vt(".opencode","opencode.jsonc"),_n($r(),".config","opencode","opencode.json"),_n($r(),".config","opencode","opencode.jsonc")]}getSessionDir(){let e;process.platform==="win32"?e=process.env.APPDATA||_n($r(),"AppData","Roaming"):e=process.env.XDG_CONFIG_HOME||_n($r(),".config");let r=_n(e,this.platform,"context-mode","sessions");return yI(r,{recursive:!0}),r}generateHookConfig(e){return{[gn.BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[gn.AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[gn.COMPACTING]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){this.settingsPath=void 0;let e=this.paths(),r=new Set(e.filter(s=>s.includes($r()))),n=null,o;for(let s of e)try{let i=lv(s,"utf-8"),a=s.endsWith(".jsonc")?gI(i):i,c=JSON.parse(a);n||(n=c,o=s);let u=r.has(s);if(this.hasContextModePlugin(c)||u)return this.settingsPath=s,c}catch{continue}return n?(this.settingsPath=o,n):null}writeSettings(e){_I(this.getSettingsPath(),JSON.stringify(e,null,2)+`
14
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r;let o=this.hasContextModePlugin(n);return Array.isArray(n.plugin)?r.push({check:"Plugin registration",status:o?"pass":"fail",message:o?"context-mode found in plugin array":"context-mode not found in plugin array",fix:o?void 0:"context-mode upgrade"}):r.push({check:"Plugin registration",status:"fail",message:`No plugin array found in ${this.platform}.json or ${this.platform}.jsonc`,fix:"context-mode upgrade"}),r.push({check:"SessionStart hook",status:"warn",message:`SessionStart not supported in ${this.name} (see issues #14808, #5409)`}),r}checkPluginRegistration(){let e=this.readSettings();return e?this.hasContextModePlugin(e)?{check:"Plugin registration",status:"pass",message:"context-mode found in plugin array"}:{check:"Plugin registration",status:"fail",message:`context-mode not found in ${this.platform}.json plugin array`,fix:"context-mode upgrade"}:{check:"Plugin registration",status:"warn",message:`Could not read ${this.platform}.json or ${this.platform}.jsonc`}}getInstalledVersion(){try{let e=Vt($r(),".cache",this.platform,"node_modules","context-mode","package.json"),r=JSON.parse(lv(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}return"not installed"}configureAllHooks(e){let r=this.readSettings()??{},n=[],o=r.plugin??[];return o.some(s=>s.includes("context-mode"))?n.push("context-mode already in plugin array"):(o.push("context-mode"),n.push("Added context-mode to plugin array")),r.plugin=o,this.writeSettings(r),n}backupSettings(){let e=this.checkPluginRegistration();if(!this.settingsPath)return null;if(e.status==="pass")return this.settingsPath;try{vI(this.settingsPath,kI.R_OK);let r=this.settingsPath+".bak";return xI(this.settingsPath,r),r}catch{return null}}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}hasContextModePlugin(e){let r=e.plugin;return Array.isArray(r)&&r.some(n=>typeof n=="string"&&n.includes("context-mode"))}extractSessionId(e){return e.sessionID?e.sessionID:`pid-${process.ppid}`}}});var yn,HZ,qZ,fv=pe(()=>{"use strict";yn={TOOL_CALL_BEFORE:"tool_call:before",TOOL_CALL_AFTER:"tool_call:after",COMMAND_NEW:"command:new",COMMAND_RESET:"command:reset",COMMAND_STOP:"command:stop"},HZ=[yn.TOOL_CALL_BEFORE,yn.TOOL_CALL_AFTER],qZ=[yn.COMMAND_NEW]});var hv={};Ze(hv,{OpenClawAdapter:()=>Jp});import{readFileSync as Kp,writeFileSync as SI,copyFileSync as bI,accessSync as wI,constants as EI}from"node:fs";import{resolve as Pr,join as mv}from"node:path";import{homedir as Wp}from"node:os";var Jp,gv=pe(()=>{"use strict";Nt();fv();Jp=class extends ke{constructor(){super([".openclaw"])}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 Pr("openclaw.json")}generateHookConfig(e){return{[yn.TOOL_CALL_BEFORE]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[yn.TOOL_CALL_AFTER]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}],[yn.COMMAND_NEW]:[{matcher:"",hooks:[{type:"plugin",command:"context-mode"}]}]}}readSettings(){let e=[Pr("openclaw.json"),Pr(".openclaw","openclaw.json"),mv(Wp(),".openclaw","openclaw.json")];for(let r of e)try{let n=Kp(r,"utf-8");return JSON.parse(n)}catch{continue}return null}writeSettings(e){let r=Pr("openclaw.json");SI(r,JSON.stringify(e,null,2)+`
15
+ `,"utf-8")}validateHooks(e){let r=[],n=this.readSettings();if(!n)return r.push({check:"Plugin configuration",status:"fail",message:"Could not read openclaw.json",fix:"context-mode upgrade"}),r;let o=n.plugins,s=o?.entries;if(s){let a=Object.keys(s).some(c=>c.includes("context-mode"));if(r.push({check:"Plugin registration",status:a?"pass":"fail",message:a?"context-mode found in plugins.entries":"context-mode not found in plugins.entries",fix:a?void 0:"context-mode upgrade"}),a){let u=s["context-mode"]?.enabled!==!1;r.push({check:"Plugin enabled",status:u?"pass":"warn",message:u?"context-mode plugin is enabled":"context-mode plugin is disabled"})}}else r.push({check:"Plugin registration",status:"fail",message:"No plugins.entries found in openclaw.json",fix:"context-mode upgrade"});return o?.slots?.contextEngine==="context-mode"?r.push({check:"Context engine",status:"pass",message:"context-mode registered as context engine (owns compaction)"}):r.push({check:"Context engine",status:"warn",message:"context-mode not set as context engine \u2014 compaction will use default engine"}),r}checkPluginRegistration(){let e=this.readSettings();if(!e)return{check:"Plugin registration",status:"warn",message:"Could not read openclaw.json"};let n=e.plugins?.entries;return n&&Object.keys(n).some(s=>s.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in plugins.entries"}:{check:"Plugin registration",status:"fail",message:"context-mode not found in openclaw.json plugins.entries",fix:"context-mode upgrade"}}getInstalledVersion(){try{let e=Pr(Wp(),".openclaw","extensions","context-mode","package.json"),r=JSON.parse(Kp(e,"utf-8"));if(typeof r.version=="string")return r.version}catch{}try{let e=Pr("node_modules","context-mode","package.json"),r=JSON.parse(Kp(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=[Pr("openclaw.json"),Pr(".openclaw","openclaw.json"),mv(Wp(),".openclaw","openclaw.json")];for(let r of e)try{wI(r,EI.R_OK);let n=r+".bak";return bI(r,n),n}catch{continue}return null}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}extractSessionId(e){return e.sessionId?e.sessionId:`pid-${process.ppid}`}}});var yv={};Ze(yv,{CodexAdapter:()=>Yp});import{readFileSync as Gp}from"node:fs";import{resolve as _v,dirname as TI}from"node:path";import{fileURLToPath as $I}from"node:url";import{homedir as PI}from"node:os";var Yp,xv=pe(()=>{"use strict";Nt();Yp=class extends ke{constructor(){super([".codex"])}name="Codex CLI";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!0,canModifyArgs:!1,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_response,sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parsePreCompactInput(e){let r=e;return{sessionId:this.extractSessionId(r),projectDir:r.cwd,raw:e}}parseSessionStartInput(e){let r=e,n=r.source??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:r.cwd,raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{hookSpecificOutput:{hookEventName:"PreToolUse",permissionDecision:"deny",permissionDecisionReason:e.reason??"Blocked by context-mode hook"}}:e.decision==="context"&&e.additionalContext?{}:{}}formatPostToolUseResponse(e){return e.additionalContext?{hookSpecificOutput:{hookEventName:"PostToolUse",additionalContext:e.additionalContext}}:{}}formatPreCompactResponse(e){return e.context?{hookSpecificOutput:{additionalContext:e.context}}:{}}formatSessionStartResponse(e){return e.context?{hookSpecificOutput:{hookEventName:"SessionStart",additionalContext:e.context}}:{}}getSettingsPath(){return _v(PI(),".codex","config.toml")}generateHookConfig(e){return{PreToolUse:[{matcher:"local_shell|shell|shell_command|exec_command|container.exec|Bash|Shell|grep_files|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",hooks:[{type:"command",command:`node ${e}/hooks/pretooluse.mjs`}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}]}}readSettings(){try{return{_raw_toml:Gp(this.getSettingsPath(),"utf-8")}}catch{return null}}writeSettings(e){}validateHooks(e){return[{check:"Hook support",status:"pass",message:"Codex CLI hooks are stable. Configure ~/.codex/hooks.json for PreToolUse, PostToolUse, and SessionStart."}]}checkPluginRegistration(){try{let e=Gp(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[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=_v(TI($I(import.meta.url)),"..","..","..","configs","codex","AGENTS.md");try{return Gp(e,"utf-8")}catch{return`# context-mode
16
16
 
17
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});import{readFileSync as vv,writeFileSync as RI,mkdirSync as OI,accessSync as CI,chmodSync as II,constants as NI}from"node:fs";import{resolve as Ea,join as zI}from"node:path";var lo,Yp=de(()=>{"use strict";It();lo=class extends ke{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{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.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:this.hookModule.HOOK_TYPES.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Ea(".github","hooks","context-mode.json")}generateHookConfig(e){let{HOOK_TYPES:r,buildHookCommand:n}=this.hookModule;return{[r.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_TOOL_USE,e)}]}],[r.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.POST_TOOL_USE,e)}]}],[r.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_COMPACT,e)}]}],[r.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:n(r.SESSION_START,e)}]}]}}readSettings(){try{let e=vv(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{}try{let e=vv(Ea(".claude","settings.json"),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();OI(Ea(".github","hooks"),{recursive:!0}),RI(r,JSON.stringify(e,null,2)+`
18
- `,"utf-8")}configureAllHooks(e){let r=[],n=this.readSettings()??{},o=n.hooks??{},{HOOK_TYPES:s,HOOK_SCRIPTS:i,buildHookCommand:a}=this.hookModule,c=[s.PRE_TOOL_USE,s.POST_TOOL_USE,s.PRE_COMPACT,s.SESSION_START];for(let u of c)i[u]&&(o[u]=[{matcher:"",hooks:[{type:"command",command:a(u,e)}]}],r.push(`Configured ${u} hook`));return n.hooks=o,this.writeSettings(n),r.push(`Wrote hook config to ${this.getSettingsPath()}`),r}setHookPermissions(e){let r=[],n=zI(e,"hooks",this.hookSubdir);for(let o of Object.values(this.hookModule.HOOK_SCRIPTS)){let s=Ea(n,o);try{CI(s,NI.R_OK),II(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}}});function kv(t,e){let r=Xp[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 _t,Xp,sU,iU,Sv=de(()=>{"use strict";_t={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Xp={[_t.PRE_TOOL_USE]:"pretooluse.mjs",[_t.POST_TOOL_USE]:"posttooluse.mjs",[_t.PRE_COMPACT]:"precompact.mjs",[_t.SESSION_START]:"sessionstart.mjs"},sU=[_t.PRE_TOOL_USE,_t.SESSION_START],iU=[_t.POST_TOOL_USE,_t.PRE_COMPACT]});var bv={};Ze(bv,{VSCodeCopilotAdapter:()=>tf});import{readFileSync as Qp,mkdirSync as AI,accessSync as jI,existsSync as MI,constants as DI}from"node:fs";import{resolve as Ts,join as Ta}from"node:path";import{homedir as ef}from"node:os";var tf,wv=de(()=>{"use strict";Yp();Sv();tf=class extends lo{constructor(){super([".vscode"])}name="VS Code Copilot";hookModule={HOOK_TYPES:_t,HOOK_SCRIPTS:Xp,buildHookCommand:kv};hookSubdir="vscode-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}getProjectDir(){return process.env.CLAUDE_PROJECT_DIR||process.cwd()}getSessionDir(){let e=Ts(".github","context-mode","sessions"),r=Ta(ef(),".vscode","context-mode","sessions"),n=MI(Ts(".github"))?e:r;return AI(n,{recursive:!0}),n}validateHooks(e){let r=[],n=Ts(".github","hooks");try{jI(n,DI.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=Ts(n,"context-mode.json");try{let s=Qp(o,"utf-8"),a=JSON.parse(s).hooks;a?.[_t.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?.[_t.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=Ts(".vscode","mcp.json"),r=Qp(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=[Ta(ef(),".vscode","extensions"),Ta(ef(),".vscode-insiders","extensions")];for(let r of e)try{let n=Qp(Ta(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"}}});function Ev(t,e){let r=rf[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/jetbrains-copilot/${r}"`:`context-mode hook jetbrains-copilot ${t.toLowerCase()}`}var yt,rf,fU,mU,Tv=de(()=>{"use strict";yt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},rf={[yt.PRE_TOOL_USE]:"pretooluse.mjs",[yt.POST_TOOL_USE]:"posttooluse.mjs",[yt.PRE_COMPACT]:"precompact.mjs",[yt.SESSION_START]:"sessionstart.mjs"},fU=[yt.PRE_TOOL_USE,yt.SESSION_START],mU=[yt.POST_TOOL_USE,yt.PRE_COMPACT]});var $v={};Ze($v,{JetBrainsCopilotAdapter:()=>nf});import{readFileSync as LI}from"node:fs";var nf,Pv=de(()=>{"use strict";Yp();Tv();nf=class extends lo{constructor(){super([".config","JetBrains"])}name="JetBrains Copilot";hookModule={HOOK_TYPES:yt,HOOK_SCRIPTS:rf,buildHookCommand:Ev};hookSubdir="jetbrains-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.JETBRAINS_CLIENT_ID?`jetbrains-${process.env.JETBRAINS_CLIENT_ID}`:process.env.IDEA_HOME?`idea-${process.pid}`:`pid-${process.ppid}`}getProjectDir(){return process.env.IDEA_INITIAL_DIRECTORY||process.env.CLAUDE_PROJECT_DIR||process.cwd()}validateHooks(e){let r=[];try{let n=LI(this.getSettingsPath(),"utf-8"),s=JSON.parse(n).hooks;s?.[yt.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in .github/hooks/context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"}),s?.[yt.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in .github/hooks/context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in .github/hooks/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:"Hook scripts",status:"warn",message:`JetBrains hook wrappers should resolve to ${e}/hooks/jetbrains-copilot/*.mjs`}),r}checkPluginRegistration(){return{check:"MCP registration",status:"warn",message:"JetBrains stores MCP config via Settings UI \u2014 not CLI-inspectable",fix:"Verify in IDE: Settings > Tools > GitHub Copilot > MCP > ensure a context-mode server entry exists"}}getInstalledVersion(){let r=this.readSettings()?.hooks;return r&&Object.keys(r).length>0?"configured":"unknown"}}});function $a(t,e){let r=of[e],n=xt(e);if("command"in t){let s=t.command??"";return r!=null&&s.includes(r)||s.includes(n)}return t.hooks?.some(s=>{let i=s.command??"";return r!=null&&i.includes(r)||i.includes(n)})??!1}function xt(t){return`context-mode hook cursor ${t.toLowerCase()}`}var ae,of,ZI,sf,Rv,Ov,Cv=de(()=>{"use strict";ae={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},of={[ae.PRE_TOOL_USE]:"pretooluse.mjs",[ae.POST_TOOL_USE]:"posttooluse.mjs",[ae.SESSION_START]:"sessionstart.mjs",[ae.STOP]:"stop.mjs"},ZI=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],sf=ZI.join("|"),Rv=[ae.PRE_TOOL_USE],Ov=[ae.POST_TOOL_USE]});var zv={};Ze(zv,{CursorAdapter:()=>uf});import{readFileSync as af,writeFileSync as UI,mkdirSync as HI,accessSync as qI,chmodSync as FI,constants as BI,existsSync as Iv}from"node:fs";import{execSync as VI}from"node:child_process";import{resolve as po,join as Pa}from"node:path";import{homedir as cf}from"node:os";var Nv,uf,Av=de(()=>{"use strict";It();Cv();Nv="/Library/Application Support/Cursor/hooks.json",uf=class extends ke{constructor(){super([".cursor"])}name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}parseStopInput(e){let r=e;return{sessionId:r.conversation_id??`pid-${process.ppid}`,status:r.status??"completed",loopCount:r.loop_count??0,generationId:r.generation_id,transcriptPath:r.transcript_path??void 0}}formatStopResponse(e){return e.followupMessage?{followup_message:e.followupMessage}:{}}parseAfterAgentResponseInput(e){return{text:e.text??""}}getSettingsPath(){return po(".cursor","hooks.json")}generateHookConfig(e){return{[ae.PRE_TOOL_USE]:[{type:"command",command:xt(ae.PRE_TOOL_USE),matcher:sf,loop_limit:null,failClosed:!1}],[ae.POST_TOOL_USE]:[{type:"command",command:xt(ae.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[ae.SESSION_START]:[{type:"command",command:xt(ae.SESSION_START),loop_limit:null,failClosed:!1}],[ae.STOP]:[{type:"command",command:xt(ae.STOP),loop_limit:null,failClosed:!1}],[ae.AFTER_AGENT_RESPONSE]:[{type:"command",command:xt(ae.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=af(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();HI(po(".cursor"),{recursive:!0}),UI(r,JSON.stringify(e,null,2)+`
19
- `,"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 Rv){let i=o[s],a=Array.isArray(i)&&i.some(c=>$a(c,s));r.push({check:s,status:a?"pass":"fail",message:a?`${s} hook configured`:`${s} hook not configured in ${n.path}`,fix:a?void 0:"context-mode upgrade"})}for(let s of Ov){let i=o[s],a=Array.isArray(i)&&i.some(c=>$a(c,s));r.push({check:s,status:a?"pass":"warn",message:a?`${s} hook configured`:`${s} hook missing \u2014 session event capture will be reduced`})}}return Iv(Nv)&&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=[po(".cursor","mcp.json"),Pa(cf(),".cursor","mcp.json")];for(let r of e)try{let n=af(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 VI("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,ae.PRE_TOOL_USE,{type:"command",command:xt(ae.PRE_TOOL_USE),matcher:sf,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,ae.POST_TOOL_USE,{type:"command",command:xt(ae.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,ae.SESSION_START,{type:"command",command:xt(ae.SESSION_START),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,ae.STOP,{type:"command",command:xt(ae.STOP),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,ae.AFTER_AGENT_RESPONSE,{type:"command",command:xt(ae.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}setHookPermissions(e){let r=[],n=Pa(e,"hooks","cursor");for(let o of Object.values(of)){let s=po(n,o);try{qI(s,BI.R_OK),FI(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),Pa(cf(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(Nv),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=af(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[po(".claude","settings.json"),po(".claude","settings.local.json"),Pa(cf(),".claude","settings.json")].some(r=>Iv(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>$a(c,r));a>=0?(i[a]=n,o.push(`Updated existing ${r} hook entry`)):(i.push(n),o.push(`Added ${r} hook entry`)),e[r]=i}}});var Dv={};Ze(Dv,{AntigravityAdapter:()=>df});import{readFileSync as Ra,writeFileSync as KI,mkdirSync as WI}from"node:fs";import{resolve as lf,dirname as jv}from"node:path";import{fileURLToPath as JI}from"node:url";import{homedir as Mv}from"node:os";var df,Lv=de(()=>{"use strict";It();df=class extends ke{constructor(){super([".gemini"])}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 lf(Mv(),".gemini","antigravity","mcp_config.json")}generateHookConfig(e){return{}}readSettings(){try{let e=Ra(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();WI(jv(r),{recursive:!0}),KI(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=Ra(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=lf(Mv(),".gemini","extensions","context-mode","package.json");return JSON.parse(Ra(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=lf(jv(JI(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return Ra(e,"utf-8")}catch{return`# context-mode
17
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}extractSessionId(e){return e.session_id?e.session_id:`pid-${process.ppid}`}}});import{readFileSync as vv,writeFileSync as RI,mkdirSync as OI,accessSync as CI,chmodSync as II,constants as NI}from"node:fs";import{resolve as Ea,join as zI}from"node:path";var lo,Xp=pe(()=>{"use strict";Nt();lo=class extends ke{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{permissionDecision:"deny",reason:e.reason??"Blocked by context-mode hook"};if(e.decision==="modify"&&e.updatedInput)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.PRE_TOOL_USE,updatedInput:e.updatedInput}};if(e.decision==="context"&&e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.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:this.hookModule.HOOK_TYPES.POST_TOOL_USE,decision:"block",reason:e.updatedOutput}};if(e.additionalContext)return{hookSpecificOutput:{hookEventName:this.hookModule.HOOK_TYPES.POST_TOOL_USE,additionalContext:e.additionalContext}}}formatPreCompactResponse(e){return e.context??""}formatSessionStartResponse(e){return e.context??""}getSettingsPath(){return Ea(".github","hooks","context-mode.json")}generateHookConfig(e){let{HOOK_TYPES:r,buildHookCommand:n}=this.hookModule;return{[r.PRE_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_TOOL_USE,e)}]}],[r.POST_TOOL_USE]:[{matcher:"",hooks:[{type:"command",command:n(r.POST_TOOL_USE,e)}]}],[r.PRE_COMPACT]:[{matcher:"",hooks:[{type:"command",command:n(r.PRE_COMPACT,e)}]}],[r.SESSION_START]:[{matcher:"",hooks:[{type:"command",command:n(r.SESSION_START,e)}]}]}}readSettings(){try{let e=vv(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{}try{let e=vv(Ea(".claude","settings.json"),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();OI(Ea(".github","hooks"),{recursive:!0}),RI(r,JSON.stringify(e,null,2)+`
18
+ `,"utf-8")}configureAllHooks(e){let r=[],n=this.readSettings()??{},o=n.hooks??{},{HOOK_TYPES:s,HOOK_SCRIPTS:i,buildHookCommand:a}=this.hookModule,c=[s.PRE_TOOL_USE,s.POST_TOOL_USE,s.PRE_COMPACT,s.SESSION_START];for(let u of c)i[u]&&(o[u]=[{matcher:"",hooks:[{type:"command",command:a(u,e)}]}],r.push(`Configured ${u} hook`));return n.hooks=o,this.writeSettings(n),r.push(`Wrote hook config to ${this.getSettingsPath()}`),r}setHookPermissions(e){let r=[],n=zI(e,"hooks",this.hookSubdir);for(let o of Object.values(this.hookModule.HOOK_SCRIPTS)){let s=Ea(n,o);try{CI(s,NI.R_OK),II(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}}});function kv(t,e){let r=Qp[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 _t,Qp,sU,iU,Sv=pe(()=>{"use strict";_t={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},Qp={[_t.PRE_TOOL_USE]:"pretooluse.mjs",[_t.POST_TOOL_USE]:"posttooluse.mjs",[_t.PRE_COMPACT]:"precompact.mjs",[_t.SESSION_START]:"sessionstart.mjs"},sU=[_t.PRE_TOOL_USE,_t.SESSION_START],iU=[_t.POST_TOOL_USE,_t.PRE_COMPACT]});var bv={};Ze(bv,{VSCodeCopilotAdapter:()=>rf});import{readFileSync as ef,mkdirSync as AI,accessSync as jI,existsSync as MI,constants as DI}from"node:fs";import{resolve as Ts,join as Ta}from"node:path";import{homedir as tf}from"node:os";var rf,wv=pe(()=>{"use strict";Xp();Sv();rf=class extends lo{constructor(){super([".vscode"])}name="VS Code Copilot";hookModule={HOOK_TYPES:_t,HOOK_SCRIPTS:Qp,buildHookCommand:kv};hookSubdir="vscode-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.VSCODE_PID?`vscode-${process.env.VSCODE_PID}`:`pid-${process.ppid}`}getProjectDir(){return process.env.CLAUDE_PROJECT_DIR||process.cwd()}getSessionDir(){let e=Ts(".github","context-mode","sessions"),r=Ta(tf(),".vscode","context-mode","sessions"),n=MI(Ts(".github"))?e:r;return AI(n,{recursive:!0}),n}validateHooks(e){let r=[],n=Ts(".github","hooks");try{jI(n,DI.R_OK)}catch{return r.push({check:"Hooks directory",status:"fail",message:".github/hooks/ directory not found",fix:"context-mode upgrade"}),r}let o=Ts(n,"context-mode.json");try{let s=ef(o,"utf-8"),a=JSON.parse(s).hooks;a?.[_t.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?.[_t.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=Ts(".vscode","mcp.json"),r=ef(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=[Ta(tf(),".vscode","extensions"),Ta(tf(),".vscode-insiders","extensions")];for(let r of e)try{let n=ef(Ta(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"}}});function Ev(t,e){let r=nf[t];if(!r)throw new Error(`No script defined for hook type: ${t}`);return e?`node "${e}/hooks/jetbrains-copilot/${r}"`:`context-mode hook jetbrains-copilot ${t.toLowerCase()}`}var yt,nf,fU,mU,Tv=pe(()=>{"use strict";yt={PRE_TOOL_USE:"PreToolUse",POST_TOOL_USE:"PostToolUse",PRE_COMPACT:"PreCompact",SESSION_START:"SessionStart",STOP:"Stop",SUBAGENT_START:"SubagentStart",SUBAGENT_STOP:"SubagentStop"},nf={[yt.PRE_TOOL_USE]:"pretooluse.mjs",[yt.POST_TOOL_USE]:"posttooluse.mjs",[yt.PRE_COMPACT]:"precompact.mjs",[yt.SESSION_START]:"sessionstart.mjs"},fU=[yt.PRE_TOOL_USE,yt.SESSION_START],mU=[yt.POST_TOOL_USE,yt.PRE_COMPACT]});var $v={};Ze($v,{JetBrainsCopilotAdapter:()=>of});import{readFileSync as LI}from"node:fs";var of,Pv=pe(()=>{"use strict";Xp();Tv();of=class extends lo{constructor(){super([".config","JetBrains"])}name="JetBrains Copilot";hookModule={HOOK_TYPES:yt,HOOK_SCRIPTS:nf,buildHookCommand:Ev};hookSubdir="jetbrains-copilot";extractSessionId(e){return e.sessionId?e.sessionId:process.env.JETBRAINS_CLIENT_ID?`jetbrains-${process.env.JETBRAINS_CLIENT_ID}`:process.env.IDEA_HOME?`idea-${process.pid}`:`pid-${process.ppid}`}getProjectDir(){return process.env.IDEA_INITIAL_DIRECTORY||process.env.CLAUDE_PROJECT_DIR||process.cwd()}validateHooks(e){let r=[];try{let n=LI(this.getSettingsPath(),"utf-8"),s=JSON.parse(n).hooks;s?.[yt.PRE_TOOL_USE]?r.push({check:"PreToolUse hook",status:"pass",message:"PreToolUse hook configured in .github/hooks/context-mode.json"}):r.push({check:"PreToolUse hook",status:"fail",message:"PreToolUse not found in .github/hooks/context-mode.json",fix:"context-mode upgrade"}),s?.[yt.SESSION_START]?r.push({check:"SessionStart hook",status:"pass",message:"SessionStart hook configured in .github/hooks/context-mode.json"}):r.push({check:"SessionStart hook",status:"fail",message:"SessionStart not found in .github/hooks/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:"Hook scripts",status:"warn",message:`JetBrains hook wrappers should resolve to ${e}/hooks/jetbrains-copilot/*.mjs`}),r}checkPluginRegistration(){return{check:"MCP registration",status:"warn",message:"JetBrains stores MCP config via Settings UI \u2014 not CLI-inspectable",fix:"Verify in IDE: Settings > Tools > GitHub Copilot > MCP > ensure a context-mode server entry exists"}}getInstalledVersion(){let r=this.readSettings()?.hooks;return r&&Object.keys(r).length>0?"configured":"unknown"}}});function $a(t,e){let r=sf[e],n=xt(e);if("command"in t){let s=t.command??"";return r!=null&&s.includes(r)||s.includes(n)}return t.hooks?.some(s=>{let i=s.command??"";return r!=null&&i.includes(r)||i.includes(n)})??!1}function xt(t){return`context-mode hook cursor ${t.toLowerCase()}`}var ae,sf,ZI,af,Rv,Ov,Cv=pe(()=>{"use strict";ae={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",SESSION_START:"sessionStart",STOP:"stop",AFTER_AGENT_RESPONSE:"afterAgentResponse"},sf={[ae.PRE_TOOL_USE]:"pretooluse.mjs",[ae.POST_TOOL_USE]:"posttooluse.mjs",[ae.SESSION_START]:"sessionstart.mjs",[ae.STOP]:"stop.mjs"},ZI=["Shell","Read","Grep","WebFetch","mcp_web_fetch","mcp_fetch_tool","Task","MCP:ctx_execute","MCP:ctx_execute_file","MCP:ctx_batch_execute"],af=ZI.join("|"),Rv=[ae.PRE_TOOL_USE],Ov=[ae.POST_TOOL_USE]});var zv={};Ze(zv,{CursorAdapter:()=>lf});import{readFileSync as cf,writeFileSync as UI,mkdirSync as HI,accessSync as qI,chmodSync as FI,constants as BI,existsSync as Iv}from"node:fs";import{execSync as VI}from"node:child_process";import{resolve as po,join as Pa}from"node:path";import{homedir as uf}from"node:os";var Nv,lf,Av=pe(()=>{"use strict";Nt();Cv();Nv="/Library/Application Support/Cursor/hooks.json",lf=class extends ke{constructor(){super([".cursor"])}name="Cursor";paradigm="json-stdio";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!1,sessionStart:!1,canModifyArgs:!0,canModifyOutput:!1,canInjectSessionContext:!0};parsePreToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parsePostToolUseInput(e){let r=e;return{toolName:r.tool_name??"",toolInput:r.tool_input??{},toolOutput:r.tool_output??r.error_message,isError:!!r.error_message,sessionId:this.extractSessionId(r),projectDir:this.getProjectDir(r),raw:e}}parseSessionStartInput(e){let r=e,n=r.source??r.trigger??"startup",o;switch(n){case"compact":o="compact";break;case"resume":o="resume";break;case"clear":o="clear";break;default:o="startup"}return{sessionId:this.extractSessionId(r),source:o,projectDir:this.getProjectDir(r),raw:e}}formatPreToolUseResponse(e){return e.decision==="deny"?{permission:"deny",user_message:e.reason??"Blocked by context-mode hook"}:e.decision==="modify"&&e.updatedInput?{updated_input:e.updatedInput}:e.decision==="context"&&e.additionalContext?{agent_message:e.additionalContext}:e.decision==="ask"?{permission:"ask",user_message:e.reason??"Action requires user confirmation (security policy)"}:{agent_message:""}}formatPostToolUseResponse(e){return{additional_context:e.additionalContext??""}}formatSessionStartResponse(e){return{additional_context:e.context??""}}parseStopInput(e){let r=e;return{sessionId:r.conversation_id??`pid-${process.ppid}`,status:r.status??"completed",loopCount:r.loop_count??0,generationId:r.generation_id,transcriptPath:r.transcript_path??void 0}}formatStopResponse(e){return e.followupMessage?{followup_message:e.followupMessage}:{}}parseAfterAgentResponseInput(e){return{text:e.text??""}}getSettingsPath(){return po(".cursor","hooks.json")}generateHookConfig(e){return{[ae.PRE_TOOL_USE]:[{type:"command",command:xt(ae.PRE_TOOL_USE),matcher:af,loop_limit:null,failClosed:!1}],[ae.POST_TOOL_USE]:[{type:"command",command:xt(ae.POST_TOOL_USE),loop_limit:null,failClosed:!1}],[ae.SESSION_START]:[{type:"command",command:xt(ae.SESSION_START),loop_limit:null,failClosed:!1}],[ae.STOP]:[{type:"command",command:xt(ae.STOP),loop_limit:null,failClosed:!1}],[ae.AFTER_AGENT_RESPONSE]:[{type:"command",command:xt(ae.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1}]}}readSettings(){for(let e of this.getCandidateHookConfigPaths())try{let r=cf(e,"utf-8");return JSON.parse(r)}catch{continue}return null}writeSettings(e){let r=this.getSettingsPath();HI(po(".cursor"),{recursive:!0}),UI(r,JSON.stringify(e,null,2)+`
19
+ `,"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 Rv){let i=o[s],a=Array.isArray(i)&&i.some(c=>$a(c,s));r.push({check:s,status:a?"pass":"fail",message:a?`${s} hook configured`:`${s} hook not configured in ${n.path}`,fix:a?void 0:"context-mode upgrade"})}for(let s of Ov){let i=o[s],a=Array.isArray(i)&&i.some(c=>$a(c,s));r.push({check:s,status:a?"pass":"warn",message:a?`${s} hook configured`:`${s} hook missing \u2014 session event capture will be reduced`})}}return Iv(Nv)&&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=[po(".cursor","mcp.json"),Pa(uf(),".cursor","mcp.json")];for(let r of e)try{let n=cf(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 VI("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,ae.PRE_TOOL_USE,{type:"command",command:xt(ae.PRE_TOOL_USE),matcher:af,loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,ae.POST_TOOL_USE,{type:"command",command:xt(ae.POST_TOOL_USE),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,ae.SESSION_START,{type:"command",command:xt(ae.SESSION_START),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,ae.STOP,{type:"command",command:xt(ae.STOP),loop_limit:null,failClosed:!1},o),this.upsertHookEntry(n,ae.AFTER_AGENT_RESPONSE,{type:"command",command:xt(ae.AFTER_AGENT_RESPONSE),loop_limit:null,failClosed:!1},o),r.version=1,r.hooks=n,this.writeSettings(r),o.push(`Wrote native Cursor hooks to ${this.getSettingsPath()}`),o}setHookPermissions(e){let r=[],n=Pa(e,"hooks","cursor");for(let o of Object.values(sf)){let s=po(n,o);try{qI(s,BI.R_OK),FI(s,493),r.push(s)}catch{}}return r}updatePluginRegistry(e,r){}getCandidateHookConfigPaths(){let e=[this.getSettingsPath(),Pa(uf(),".cursor","hooks.json")];return process.platform==="darwin"&&e.push(Nv),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=cf(e,"utf-8"),n=JSON.parse(r);if(n&&typeof n=="object")return{path:e,config:n}}catch{continue}return null}hasClaudeCompatibilityHooks(){return[po(".claude","settings.json"),po(".claude","settings.local.json"),Pa(uf(),".claude","settings.json")].some(r=>Iv(r))}upsertHookEntry(e,r,n,o){let s=e[r],i=Array.isArray(s)?[...s]:[],a=i.findIndex(c=>$a(c,r));a>=0?(i[a]=n,o.push(`Updated existing ${r} hook entry`)):(i.push(n),o.push(`Added ${r} hook entry`)),e[r]=i}}});var Dv={};Ze(Dv,{AntigravityAdapter:()=>pf});import{readFileSync as Ra,writeFileSync as KI,mkdirSync as WI}from"node:fs";import{resolve as df,dirname as jv}from"node:path";import{fileURLToPath as JI}from"node:url";import{homedir as Mv}from"node:os";var pf,Lv=pe(()=>{"use strict";Nt();pf=class extends ke{constructor(){super([".gemini"])}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 df(Mv(),".gemini","antigravity","mcp_config.json")}generateHookConfig(e){return{}}readSettings(){try{let e=Ra(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();WI(jv(r),{recursive:!0}),KI(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=Ra(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=df(Mv(),".gemini","extensions","context-mode","package.json");return JSON.parse(Ra(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=df(jv(JI(import.meta.url)),"..","..","..","configs","antigravity","GEMINI.md");try{return Ra(e,"utf-8")}catch{return`# context-mode
20
20
 
21
- 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 $s(t,e){let r=Zv[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function Ps(t,e){let r=Zv[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var Ee,Zv,GI,pf,CU,IU,Uv=de(()=>{"use strict";Ee={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},Zv={[Ee.PRE_TOOL_USE]:"pretooluse.mjs",[Ee.POST_TOOL_USE]:"posttooluse.mjs"},GI=["execute_bash","fs_read","@context-mode/ctx_execute","@context-mode/ctx_execute_file","@context-mode/ctx_batch_execute"],pf=GI.join("|"),CU=[Ee.PRE_TOOL_USE],IU=[Ee.POST_TOOL_USE]});var Bv={};Ze(Bv,{KiroAdapter:()=>ff});import{readFileSync as fo,writeFileSync as Hv,mkdirSync as qv}from"node:fs";import{resolve as mo,dirname as Fv}from"node:path";import{fileURLToPath as YI}from"node:url";import{homedir as Oa}from"node:os";var ff,Vv=de(()=>{"use strict";It();Uv();ff=class extends ke{constructor(){super([".kiro"])}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 mo(Oa(),".kiro","settings","mcp.json")}generateHookConfig(e){return{[Ee.PRE_TOOL_USE]:[{matcher:pf,hooks:[{type:"command",command:Ps(Ee.PRE_TOOL_USE,e)}]}],[Ee.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:Ps(Ee.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=fo(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();qv(Fv(r),{recursive:!0}),Hv(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=mo(Oa(),".kiro","agents","default.json");try{let s=JSON.parse(fo(n,"utf-8")).hooks??{};for(let i of[Ee.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>$s(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[Ee.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>$s(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=fo(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=mo(Oa(),".kiro","extensions","context-mode","package.json");return JSON.parse(fo(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=mo(Oa(),".kiro","agents"),o=mo(n,"default.json");try{qv(n,{recursive:!0});let s={};try{s=JSON.parse(fo(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[Ee.PRE_TOOL_USE]??[];a.some(u=>$s(u,Ee.PRE_TOOL_USE))||(a.push({matcher:pf,command:Ps(Ee.PRE_TOOL_USE,e)}),i[Ee.PRE_TOOL_USE]=a,r.push(`Added ${Ee.PRE_TOOL_USE} hook to ${o}`));let c=i[Ee.POST_TOOL_USE]??[];c.some(u=>$s(u,Ee.POST_TOOL_USE))||(c.push({matcher:"*",command:Ps(Ee.POST_TOOL_USE,e)}),i[Ee.POST_TOOL_USE]=c,r.push(`Added ${Ee.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,Hv(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=mo(Fv(YI(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return fo(e,"utf-8")}catch{return`# context-mode
21
+ 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 $s(t,e){let r=Zv[e];return r&&(t.command?.includes(r)||t.command?.includes("context-mode hook kiro"))||!1}function Ps(t,e){let r=Zv[t];return e&&r?`node "${e}/hooks/kiro/${r}"`:`context-mode hook kiro ${t.toLowerCase()}`}var Ee,Zv,GI,ff,CU,IU,Uv=pe(()=>{"use strict";Ee={PRE_TOOL_USE:"preToolUse",POST_TOOL_USE:"postToolUse",AGENT_SPAWN:"agentSpawn",USER_PROMPT_SUBMIT:"userPromptSubmit"},Zv={[Ee.PRE_TOOL_USE]:"pretooluse.mjs",[Ee.POST_TOOL_USE]:"posttooluse.mjs"},GI=["execute_bash","fs_read","@context-mode/ctx_execute","@context-mode/ctx_execute_file","@context-mode/ctx_batch_execute"],ff=GI.join("|"),CU=[Ee.PRE_TOOL_USE],IU=[Ee.POST_TOOL_USE]});var Bv={};Ze(Bv,{KiroAdapter:()=>mf});import{readFileSync as fo,writeFileSync as Hv,mkdirSync as qv}from"node:fs";import{resolve as mo,dirname as Fv}from"node:path";import{fileURLToPath as YI}from"node:url";import{homedir as Oa}from"node:os";var mf,Vv=pe(()=>{"use strict";Nt();Uv();mf=class extends ke{constructor(){super([".kiro"])}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 mo(Oa(),".kiro","settings","mcp.json")}generateHookConfig(e){return{[Ee.PRE_TOOL_USE]:[{matcher:ff,hooks:[{type:"command",command:Ps(Ee.PRE_TOOL_USE,e)}]}],[Ee.POST_TOOL_USE]:[{matcher:"*",hooks:[{type:"command",command:Ps(Ee.POST_TOOL_USE,e)}]}]}}readSettings(){try{let e=fo(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();qv(Fv(r),{recursive:!0}),Hv(r,JSON.stringify(e,null,2),"utf-8")}validateHooks(e){let r=[],n=mo(Oa(),".kiro","agents","default.json");try{let s=JSON.parse(fo(n,"utf-8")).hooks??{};for(let i of[Ee.PRE_TOOL_USE]){let c=(s[i]??[]).some(u=>$s(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[Ee.POST_TOOL_USE]){let c=(s[i]??[]).some(u=>$s(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=fo(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=mo(Oa(),".kiro","extensions","context-mode","package.json");return JSON.parse(fo(e,"utf-8")).version??"unknown"}catch{return"not installed"}}configureAllHooks(e){let r=[],n=mo(Oa(),".kiro","agents"),o=mo(n,"default.json");try{qv(n,{recursive:!0});let s={};try{s=JSON.parse(fo(o,"utf-8"))}catch{}let i=s.hooks??{},a=i[Ee.PRE_TOOL_USE]??[];a.some(u=>$s(u,Ee.PRE_TOOL_USE))||(a.push({matcher:ff,command:Ps(Ee.PRE_TOOL_USE,e)}),i[Ee.PRE_TOOL_USE]=a,r.push(`Added ${Ee.PRE_TOOL_USE} hook to ${o}`));let c=i[Ee.POST_TOOL_USE]??[];c.some(u=>$s(u,Ee.POST_TOOL_USE))||(c.push({matcher:"*",command:Ps(Ee.POST_TOOL_USE,e)}),i[Ee.POST_TOOL_USE]=c,r.push(`Added ${Ee.POST_TOOL_USE} hook to ${o}`)),s.hooks=i,Hv(o,JSON.stringify(s,null,2),"utf-8")}catch(s){r.push(`Failed to configure hooks: ${s.message}`)}return r}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=mo(Fv(YI(import.meta.url)),"..","..","..","configs","kiro","KIRO.md");try{return fo(e,"utf-8")}catch{return`# context-mode
22
22
 
23
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});var Jv={};Ze(Jv,{ZedAdapter:()=>hf});import{readFileSync as mf,writeFileSync as XI,mkdirSync as QI}from"node:fs";import{resolve as Kv,dirname as Wv}from"node:path";import{fileURLToPath as eN}from"node:url";import{homedir as tN}from"node:os";var hf,Gv=de(()=>{"use strict";It();hf=class extends ke{constructor(){super([".config","zed"])}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 Kv(tN(),".config","zed","settings.json")}generateHookConfig(e){return{}}readSettings(){try{let e=mf(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();QI(Wv(r),{recursive:!0}),XI(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=mf(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[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Kv(Wv(eN(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return mf(e,"utf-8")}catch{return`# context-mode
23
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of run_command/view_file for data-heavy operations.`}}}});var Jv={};Ze(Jv,{ZedAdapter:()=>gf});import{readFileSync as hf,writeFileSync as XI,mkdirSync as QI}from"node:fs";import{resolve as Kv,dirname as Wv}from"node:path";import{fileURLToPath as eN}from"node:url";import{homedir as tN}from"node:os";var gf,Gv=pe(()=>{"use strict";Nt();gf=class extends ke{constructor(){super([".config","zed"])}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 Kv(tN(),".config","zed","settings.json")}generateHookConfig(e){return{}}readSettings(){try{let e=hf(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let r=this.getSettingsPath();QI(Wv(r),{recursive:!0}),XI(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=hf(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[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructions(){let e=Kv(Wv(eN(import.meta.url)),"..","..","..","configs","zed","AGENTS.md");try{return hf(e,"utf-8")}catch{return`# context-mode
24
24
 
25
- Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var Qv={};Ze(Qv,{QwenCodeAdapter:()=>gf});import{readFileSync as rN}from"node:fs";import{resolve as Yv,join as nN}from"node:path";import{homedir as Xv}from"node:os";var gf,ek=de(()=>{"use strict";Ap();gf=class extends co{constructor(){super([".qwen"])}name="Qwen Code";paradigm="json-stdio";projectDirEnvVar="QWEN_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return Yv(Xv(),".qwen","settings.json")}generateHookConfig(e){return{PreToolUse:[{matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","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"].join("|"),hooks:[{type:"command",command:`node ${e}/hooks/pretooluse.mjs`}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}]}}readSettings(){try{let e=rN(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let{writeFileSync:r}=Sk("node:fs");r(this.getSettingsPath(),JSON.stringify(e,null,2))}validateHooks(e){let r=[],o=this.readSettings()?.hooks??{};for(let s of["PreToolUse","PostToolUse","SessionStart","PreCompact","UserPromptSubmit"]){let i=Array.isArray(o[s])&&o[s].length>0;r.push({check:`${s} hook`,status:i?"pass":"fail",message:i?`${s} hook configured in ~/.qwen/settings.json`:`${s} hook not found in ~/.qwen/settings.json`,...i?{}:{fix:`Add ${s} hook to ~/.qwen/settings.json`}})}return r}checkPluginRegistration(){try{let e=this.readSettings();if(e?.mcpServers&&typeof e.mcpServers=="object"){let r=e.mcpServers;return Object.keys(r).some(n=>n.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in mcpServers"}:{check:"Plugin registration",status:"fail",message:"mcpServers exists but context-mode not found",fix:"Add context-mode to mcpServers in ~/.qwen/settings.json"}}return{check:"Plugin registration",status:"warn",message:"No mcpServers in ~/.qwen/settings.json"}}catch{return{check:"Plugin registration",status:"warn",message:"Could not read ~/.qwen/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{instructionsPath:Yv(nN(Xv(),".qwen","QWEN.md")),targetPath:"QWEN.md",platformName:"Qwen Code"}}extractSessionId(e){if(e.session_id)return e.session_id;if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return process.env.QWEN_SESSION_ID?process.env.QWEN_SESSION_ID:`pid-${process.ppid}`}}});var nk={};Ze(nk,{PLATFORM_ENV_VARS:()=>tk,detectPlatform:()=>rk,getAdapter:()=>sN});import{existsSync as vt}from"node:fs";import{resolve as kt}from"node:path";import{homedir as oN}from"node:os";function rk(t){if(t?.name){let n=Yx[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`};if(t.name.startsWith("qwen-cli-mcp-client"))return{platform:"qwen-code",confidence:"high",reason:`MCP clientInfo.name="${t.name}" (qwen-cli pattern)`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","jetbrains-copilot","cursor","antigravity","kiro","pi","zed","qwen-code"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};for(let[n,o]of tk)if(o.some(s=>process.env[s]))return{platform:n,confidence:"high",reason:`${o.join(" or ")} env var set`};let r=oN();return vt(kt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:vt(kt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:vt(kt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:vt(kt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:vt(kt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:vt(kt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:vt(kt(r,".qwen"))?{platform:"qwen-code",confidence:"medium",reason:"~/.qwen/ directory exists"}:vt(kt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:vt(kt(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:vt(kt(r,".config","JetBrains"))?{platform:"jetbrains-copilot",confidence:"medium",reason:"~/.config/JetBrains/ directory exists"}:vt(kt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:vt(kt(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 sN(t){let e=t??rk().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Up(),Zp));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(cv(),av));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(pv(),dv));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(gv(),hv));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(xv(),yv));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(wv(),bv));return new r}case"jetbrains-copilot":{let{JetBrainsCopilotAdapter:r}=await Promise.resolve().then(()=>(Pv(),$v));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(Av(),zv));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(Lv(),Dv));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(Vv(),Bv));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(Gv(),Jv));return new r}case"qwen-code":{let{QwenCodeAdapter:r}=await Promise.resolve().then(()=>(ek(),Qv));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Up(),Zp));return new r}}}var tk,ok=de(()=>{"use strict";Xx();tk=[["claude-code",["CLAUDE_PROJECT_DIR","CLAUDE_SESSION_ID"]],["gemini-cli",["GEMINI_PROJECT_DIR","GEMINI_CLI"]],["openclaw",["OPENCLAW_HOME","OPENCLAW_CLI"]],["kilo",["KILO","KILO_PID"]],["opencode",["OPENCODE","OPENCODE_PID"]],["codex",["CODEX_CI","CODEX_THREAD_ID"]],["cursor",["CURSOR_TRACE_ID","CURSOR_CLI"]],["vscode-copilot",["VSCODE_PID","VSCODE_CWD"]],["jetbrains-copilot",["IDEA_INITIAL_DIRECTORY","IDEA_HOME","JETBRAINS_CLIENT_ID"]],["qwen-code",["QWEN_PROJECT_DIR","QWEN_SESSION_ID"]]]});var L={};Ze(L,{BRAND:()=>Jk,DIRTY:()=>Nr,EMPTY_PATH:()=>$k,INVALID:()=>A,NEVER:()=>IS,OK:()=>Ue,ParseStatus:()=>Oe,Schema:()=>q,ZodAny:()=>cr,ZodArray:()=>Yt,ZodBigInt:()=>Ar,ZodBoolean:()=>jr,ZodBranded:()=>_o,ZodCatch:()=>Kr,ZodDate:()=>Mr,ZodDefault:()=>Vr,ZodDiscriminatedUnion:()=>Is,ZodEffects:()=>ct,ZodEnum:()=>Fr,ZodError:()=>Ge,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>zs,ZodIntersection:()=>Ur,ZodIssueCode:()=>S,ZodLazy:()=>Hr,ZodLiteral:()=>qr,ZodMap:()=>Tn,ZodNaN:()=>Pn,ZodNativeEnum:()=>Br,ZodNever:()=>St,ZodNull:()=>Lr,ZodNullable:()=>Mt,ZodNumber:()=>zr,ZodObject:()=>Xe,ZodOptional:()=>Ye,ZodParsedType:()=>$,ZodPipeline:()=>yo,ZodPromise:()=>ur,ZodReadonly:()=>Wr,ZodRecord:()=>Ns,ZodSchema:()=>q,ZodSet:()=>$n,ZodString:()=>ar,ZodSymbol:()=>wn,ZodTransformer:()=>ct,ZodTuple:()=>jt,ZodType:()=>q,ZodUndefined:()=>Dr,ZodUnion:()=>Zr,ZodUnknown:()=>Gt,ZodVoid:()=>En,addIssueToContext:()=>E,any:()=>oS,array:()=>cS,bigint:()=>Qk,boolean:()=>Uf,coerce:()=>CS,custom:()=>Df,date:()=>eS,datetimeRegex:()=>jf,defaultErrorMap:()=>Wt,discriminatedUnion:()=>dS,effect:()=>bS,enum:()=>vS,function:()=>_S,getErrorMap:()=>kn,getParsedType:()=>At,instanceof:()=>Yk,intersection:()=>pS,isAborted:()=>Os,isAsync:()=>Sn,isDirty:()=>Cs,isValid:()=>ir,late:()=>Gk,lazy:()=>yS,literal:()=>xS,makeIssue:()=>go,map:()=>hS,nan:()=>Xk,nativeEnum:()=>kS,never:()=>iS,null:()=>nS,nullable:()=>ES,number:()=>Zf,object:()=>Ha,objectUtil:()=>La,oboolean:()=>OS,onumber:()=>RS,optional:()=>wS,ostring:()=>PS,pipeline:()=>$S,preprocess:()=>TS,promise:()=>SS,quotelessJson:()=>wk,record:()=>mS,set:()=>gS,setErrorMap:()=>Tk,strictObject:()=>uS,string:()=>Lf,symbol:()=>tS,transformer:()=>bS,tuple:()=>fS,undefined:()=>rS,union:()=>lS,unknown:()=>sS,util:()=>W,void:()=>aS});var W;(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})(W||(W={}));var La;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(La||(La={}));var $=W.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),At=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=W.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"]),wk=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Ge=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,W.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()}};Ge.create=t=>new Ge(t);var Ek=(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,W.jsonStringifyReplacer)}`;break;case S.unrecognized_keys:r=`Unrecognized key(s) in object: ${W.joinValues(t.keys,", ")}`;break;case S.invalid_union:r="Invalid input";break;case S.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${W.joinValues(t.options)}`;break;case S.invalid_enum_value:r=`Invalid enum value. Expected ${W.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}"`:W.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,W.assertNever(t)}return{message:r}},Wt=Ek;var Cf=Wt;function Tk(t){Cf=t}function kn(){return Cf}var go=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}},$k=[];function E(t,e){let r=kn(),n=go({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Wt?void 0:Wt].filter(o=>!!o)});t.common.issues.push(n)}var Oe=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"}),Nr=t=>({status:"dirty",value:t}),Ue=t=>({status:"valid",value:t}),Os=t=>t.status==="aborted",Cs=t=>t.status==="dirty",ir=t=>t.status==="valid",Sn=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 at=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},If=(t,e)=>{if(ir(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 Ge(t.common.issues);return this._error=r,this._error}}};function U(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var q=class{get description(){return this._def.description}_getType(e){return At(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:At(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Oe,ctx:{common:e.parent.common,data:e.data,parsedType:At(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Sn(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:At(e)},o=this._parseSync({data:e,path:n.path,parent:n});return If(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:At(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return ir(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=>ir(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:At(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(Sn(o)?o:Promise.resolve(o));return If(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 ct({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 Ye.create(this,this._def)}nullable(){return Mt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Yt.create(this)}promise(){return ur.create(this,this._def)}or(e){return Zr.create([this,e],this._def)}and(e){return Ur.create(this,e,this._def)}transform(e){return new ct({...U(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Vr({...U(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new _o({typeName:b.ZodBranded,type:this,...U(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Kr({...U(this._def),innerType:this,catchValue:r,typeName:b.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return yo.create(this,e)}readonly(){return Wr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Pk=/^c[^\s-]{8,}$/i,Rk=/^[0-9a-z]+$/,Ok=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Ck=/^[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,Nk=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,zk=/^[-+]?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)?)??$/,Ak=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,jk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Za,Mk=/^(?:(?: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])$/,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])\/(3[0-2]|[12]?[0-9])$/,Lk=/^(([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]))$/,Zk=/^(([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])$/,Uk=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Hk=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,zf="((\\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])))",qk=new RegExp(`^${zf}$`);function Af(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 Fk(t){return new RegExp(`^${Af(t)}$`)}function jf(t){let e=`${zf}T${Af(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 Bk(t,e){return!!((e==="v4"||!e)&&Mk.test(t)||(e==="v6"||!e)&&Lk.test(t))}function Vk(t,e){if(!Nk.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)&&Dk.test(t)||(e==="v6"||!e)&&Zk.test(t))}var ar=class t extends q{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==$.string){let s=this._getOrReturnCtx(e);return E(s,{code:S.invalid_type,expected:$.string,received:s.parsedType}),A}let n=new Oe,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: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),E(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?E(o,{code:S.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&E(o,{code:S.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")Ak.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"email",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Za||(Za=new RegExp(jk,"u")),Za.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"emoji",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")Ck.test(e.data)||(o=this._getOrReturnCtx(e,o),E(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),E(o,{validation:"nanoid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")Pk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Rk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(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),E(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),E(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),E(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),E(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),E(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),E(o,{code:S.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?jf(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:S.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?qk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:S.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?Fk(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:S.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?zk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"duration",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?Bk(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(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),E(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),E(o,{validation:"cidr",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?Uk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?Hk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64url",code:S.invalid_string,message:s.message}),n.dirty()):W.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}};ar.create=t=>new ar({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...U(t)});function Wk(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 zr=class t extends q{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==$.number){let s=this._getOrReturnCtx(e);return E(s,{code:S.invalid_type,expected:$.number,received:s.parsedType}),A}let n,o=new Oe;for(let s of this._def.checks)s.kind==="int"?W.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),E(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),E(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),E(n,{code:S.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?Wk(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),E(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),E(n,{code:S.not_finite,message:s.message}),o.dirty()):W.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"&&W.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)}};zr.create=t=>new zr({checks:[],typeName:b.ZodNumber,coerce:t?.coerce||!1,...U(t)});var Ar=class t extends q{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==$.bigint)return this._getInvalidInput(e);let n,o=new Oe;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: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),E(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),E(n,{code:S.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):W.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return E(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}};Ar.create=t=>new Ar({checks:[],typeName:b.ZodBigInt,coerce:t?.coerce??!1,...U(t)});var jr=class extends q{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==$.boolean){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.boolean,received:n.parsedType}),A}return Ue(e.data)}};jr.create=t=>new jr({typeName:b.ZodBoolean,coerce:t?.coerce||!1,...U(t)});var Mr=class t extends q{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==$.date){let s=this._getOrReturnCtx(e);return E(s,{code:S.invalid_type,expected:$.date,received:s.parsedType}),A}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return E(s,{code:S.invalid_date}),A}let n=new Oe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),E(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),E(o,{code:S.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):W.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}};Mr.create=t=>new Mr({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...U(t)});var wn=class extends q{_parse(e){if(this._getType(e)!==$.symbol){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.symbol,received:n.parsedType}),A}return Ue(e.data)}};wn.create=t=>new wn({typeName:b.ZodSymbol,...U(t)});var Dr=class extends q{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.undefined,received:n.parsedType}),A}return Ue(e.data)}};Dr.create=t=>new Dr({typeName:b.ZodUndefined,...U(t)});var Lr=class extends q{_parse(e){if(this._getType(e)!==$.null){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.null,received:n.parsedType}),A}return Ue(e.data)}};Lr.create=t=>new Lr({typeName:b.ZodNull,...U(t)});var cr=class extends q{constructor(){super(...arguments),this._any=!0}_parse(e){return Ue(e.data)}};cr.create=t=>new cr({typeName:b.ZodAny,...U(t)});var Gt=class extends q{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ue(e.data)}};Gt.create=t=>new Gt({typeName:b.ZodUnknown,...U(t)});var St=class extends q{_parse(e){let r=this._getOrReturnCtx(e);return E(r,{code:S.invalid_type,expected:$.never,received:r.parsedType}),A}};St.create=t=>new St({typeName:b.ZodNever,...U(t)});var En=class extends q{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.void,received:n.parsedType}),A}return Ue(e.data)}};En.create=t=>new En({typeName:b.ZodVoid,...U(t)});var Yt=class t extends q{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==$.array)return E(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)&&(E(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&&(E(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&&(E(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 at(r,i,r.path,a)))).then(i=>Oe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new at(r,i,r.path,a)));return Oe.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)}};Yt.create=(t,e)=>new Yt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...U(e)});function bn(t){if(t instanceof Xe){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ye.create(bn(n))}return new Xe({...t._def,shape:()=>e})}else return t instanceof Yt?new Yt({...t._def,type:bn(t.element)}):t instanceof Ye?Ye.create(bn(t.unwrap())):t instanceof Mt?Mt.create(bn(t.unwrap())):t instanceof jt?jt.create(t.items.map(e=>bn(e))):t}var Xe=class t extends q{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=W.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: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 St&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new at(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof St){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: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 at(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>Oe.mergeObjectSync(n,u)):Oe.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 W.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 W.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return bn(this)}partial(e){let r={};for(let n of W.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 W.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Ye;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Mf(W.objectKeys(this.shape))}};Xe.create=(t,e)=>new Xe({shape:()=>t,unknownKeys:"strip",catchall:St.create(),typeName:b.ZodObject,...U(e)});Xe.strictCreate=(t,e)=>new Xe({shape:()=>t,unknownKeys:"strict",catchall:St.create(),typeName:b.ZodObject,...U(e)});Xe.lazycreate=(t,e)=>new Xe({shape:t,unknownKeys:"strip",catchall:St.create(),typeName:b.ZodObject,...U(e)});var Zr=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new Ge(a.ctx.common.issues));return E(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 Ge(c));return E(r,{code:S.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};Zr.create=(t,e)=>new Zr({options:t,typeName:b.ZodUnion,...U(e)});var Jt=t=>t instanceof Hr?Jt(t.schema):t instanceof ct?Jt(t.innerType()):t instanceof qr?[t.value]:t instanceof Fr?t.options:t instanceof Br?W.objectValues(t.enum):t instanceof Vr?Jt(t._def.innerType):t instanceof Dr?[void 0]:t instanceof Lr?[null]:t instanceof Ye?[void 0,...Jt(t.unwrap())]:t instanceof Mt?[null,...Jt(t.unwrap())]:t instanceof _o||t instanceof Wr?Jt(t.unwrap()):t instanceof Kr?Jt(t._def.innerType):[],Is=class t extends q{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.object)return E(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}):(E(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=Jt(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:b.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...U(n)})}};function Ua(t,e){let r=At(t),n=At(e);if(t===e)return{valid:!0,data:t};if(r===$.object&&n===$.object){let o=W.objectKeys(e),s=W.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Ua(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=Ua(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 Ur=class extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Os(s)||Os(i))return A;let a=Ua(s.value,i.value);return a.valid?((Cs(s)||Cs(i))&&r.dirty(),{status:r.value,value:a.data}):(E(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}))}};Ur.create=(t,e,r)=>new Ur({left:t,right:e,typeName:b.ZodIntersection,...U(r)});var jt=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.array)return E(n,{code:S.invalid_type,expected:$.array,received:n.parsedType}),A;if(n.data.length<this._def.items.length)return E(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&&(E(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 at(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Oe.mergeArray(r,i)):Oe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};jt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new jt({items:t,typeName:b.ZodTuple,rest:null,...U(e)})};var Ns=class t extends q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.object)return E(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 at(n,a,n.path,a)),value:i._parse(new at(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Oe.mergeObjectAsync(r,o):Oe.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof q?new t({keyType:e,valueType:r,typeName:b.ZodRecord,...U(n)}):new t({keyType:ar.create(),valueType:e,typeName:b.ZodRecord,...U(r)})}},Tn=class extends q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.map)return E(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 at(n,a,n.path,[u,"key"])),value:s._parse(new at(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return 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}}}};Tn.create=(t,e,r)=>new Tn({valueType:e,keyType:t,typeName:b.ZodMap,...U(r)});var $n=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.set)return E(n,{code:S.invalid_type,expected:$.set,received:n.parsedType}),A;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(E(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&&(E(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 at(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message: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)}};$n.create=(t,e)=>new $n({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...U(e)});var zs=class t extends q{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.function)return E(r,{code:S.invalid_type,expected:$.function,received:r.parsedType}),A;function n(a,c){return go({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,kn(),Wt].filter(u=>!!u),issueData:{code:S.invalid_arguments,argumentsError:c}})}function o(a,c){return go({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,kn(),Wt].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 ur){let a=this;return Ue(async function(...c){let u=new Ge([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return Ue(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Ge([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Ge([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:jt.create(e).rest(Gt.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||jt.create([]).rest(Gt.create()),returns:r||Gt.create(),typeName:b.ZodFunction,...U(n)})}},Hr=class extends q{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};Hr.create=(t,e)=>new Hr({getter:t,typeName:b.ZodLazy,...U(e)});var qr=class extends q{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return E(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}};qr.create=(t,e)=>new qr({value:t,typeName:b.ZodLiteral,...U(e)});function Mf(t,e){return new Fr({values:t,typeName:b.ZodEnum,...U(e)})}var Fr=class t extends q{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{expected:W.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 E(r,{received:r.data,code:S.invalid_enum_value,options:n}),A}return Ue(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})}};Fr.create=Mf;var Br=class extends q{_parse(e){let r=W.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==$.string&&n.parsedType!==$.number){let o=W.objectValues(r);return E(n,{expected:W.joinValues(o),received:n.parsedType,code:S.invalid_type}),A}if(this._cache||(this._cache=new Set(W.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=W.objectValues(r);return E(n,{received:n.data,code:S.invalid_enum_value,options:o}),A}return Ue(e.data)}get enum(){return this._def.values}};Br.create=(t,e)=>new Br({values:t,typeName:b.ZodNativeEnum,...U(e)});var ur=class extends q{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.promise&&r.common.async===!1)return E(r,{code:S.invalid_type,expected:$.promise,received:r.parsedType}),A;let n=r.parsedType===$.promise?r.data:Promise.resolve(r.data);return Ue(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};ur.create=(t,e)=>new ur({type:t,typeName:b.ZodPromise,...U(e)});var ct=class extends q{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===b.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{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"?Nr(c.value):r.value==="dirty"?Nr(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"?Nr(a.value):r.value==="dirty"?Nr(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(!ir(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=>ir(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);W.assertNever(o)}};ct.create=(t,e,r)=>new ct({schema:t,typeName:b.ZodEffects,effect:e,...U(r)});ct.createWithPreprocess=(t,e,r)=>new ct({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...U(r)});var Ye=class extends q{_parse(e){return this._getType(e)===$.undefined?Ue(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ye.create=(t,e)=>new Ye({innerType:t,typeName:b.ZodOptional,...U(e)});var Mt=class extends q{_parse(e){return this._getType(e)===$.null?Ue(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Mt.create=(t,e)=>new Mt({innerType:t,typeName:b.ZodNullable,...U(e)});var Vr=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===$.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Vr.create=(t,e)=>new Vr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...U(e)});var Kr=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Sn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Ge(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ge(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Kr.create=(t,e)=>new Kr({innerType:t,typeName:b.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...U(e)});var Pn=class extends q{_parse(e){if(this._getType(e)!==$.nan){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};Pn.create=t=>new Pn({typeName:b.ZodNaN,...U(t)});var Jk=Symbol("zod_brand"),_o=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},yo=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?A:s.status==="dirty"?(r.dirty(),Nr(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})}},Wr=class extends q{_parse(e){let r=this._def.innerType._parse(e),n=o=>(ir(o)&&(o.value=Object.freeze(o.value)),o);return Sn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Wr.create=(t,e)=>new Wr({innerType:t,typeName:b.ZodReadonly,...U(e)});function Nf(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Df(t,e={},r){return t?cr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Nf(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Nf(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):cr.create()}var Gk={object:Xe.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 Yk=(t,e={message:`Input not instance of ${t.name}`})=>Df(r=>r instanceof t,e),Lf=ar.create,Zf=zr.create,Xk=Pn.create,Qk=Ar.create,Uf=jr.create,eS=Mr.create,tS=wn.create,rS=Dr.create,nS=Lr.create,oS=cr.create,sS=Gt.create,iS=St.create,aS=En.create,cS=Yt.create,Ha=Xe.create,uS=Xe.strictCreate,lS=Zr.create,dS=Is.create,pS=Ur.create,fS=jt.create,mS=Ns.create,hS=Tn.create,gS=$n.create,_S=zs.create,yS=Hr.create,xS=qr.create,vS=Fr.create,kS=Br.create,SS=ur.create,bS=ct.create,wS=Ye.create,ES=Mt.create,TS=ct.createWithPreprocess,$S=yo.create,PS=()=>Lf().optional(),RS=()=>Zf().optional(),OS=()=>Uf().optional(),CS={string:(t=>ar.create({...t,coerce:!0})),number:(t=>zr.create({...t,coerce:!0})),boolean:(t=>jr.create({...t,coerce:!0})),bigint:(t=>Ar.create({...t,coerce:!0})),date:(t=>Mr.create({...t,coerce:!0}))};var IS=A;var NS=Object.freeze({status:"aborted"});function v(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Xt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},As={};function ot(t){return t&&Object.assign(As,t),As}var J={};Ze(J,{BIGINT_FORMAT_RANGES:()=>qf,Class:()=>Fa,NUMBER_FORMAT_RANGES:()=>Ya,aborted:()=>Gr,allowsEval:()=>Wa,assert:()=>DS,assertEqual:()=>zS,assertIs:()=>jS,assertNever:()=>MS,assertNotEqual:()=>AS,assignProp:()=>Ka,cached:()=>ko,captureStackTrace:()=>Ms,cleanEnum:()=>YS,cleanRegex:()=>bo,clone:()=>st,createTransparentProxy:()=>FS,defineLazy:()=>ce,esc:()=>Jr,escapeRegex:()=>lr,extend:()=>KS,finalizeIssue:()=>bt,floatSafeRemainder:()=>Va,getElementAtPath:()=>LS,getEnumValues:()=>vo,getLengthableOrigin:()=>wo,getParsedType:()=>qS,getSizableOrigin:()=>Ff,isObject:()=>Rn,isPlainObject:()=>On,issue:()=>Xa,joinValues:()=>js,jsonStringifyReplacer:()=>Ba,merge:()=>WS,normalizeParams:()=>j,nullish:()=>So,numKeys:()=>HS,omit:()=>VS,optionalKeys:()=>Ga,partial:()=>JS,pick:()=>BS,prefixIssues:()=>Dt,primitiveTypes:()=>Hf,promiseAllObject:()=>ZS,propertyKeyTypes:()=>Ja,randomString:()=>US,required:()=>GS,stringifyPrimitive:()=>Ds,unwrapMessage:()=>xo});function zS(t){return t}function AS(t){return t}function jS(t){}function MS(t){throw new Error}function DS(t){}function vo(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function js(t,e="|"){return t.map(r=>Ds(r)).join(e)}function Ba(t,e){return typeof e=="bigint"?e.toString():e}function ko(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function So(t){return t==null}function bo(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Va(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function ce(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Ka(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function LS(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function ZS(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 US(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Jr(t){return JSON.stringify(t)}var Ms=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function Rn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Wa=ko(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function On(t){if(Rn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(Rn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function HS(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var qS=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}`)}},Ja=new Set(["string","number","symbol"]),Hf=new Set(["string","number","bigint","boolean","symbol","undefined"]);function lr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function st(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function 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 FS(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 Ds(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ga(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Ya={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]},qf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function BS(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return st(t,{...t._zod.def,shape:r,checks:[]})}function 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 st(t,{...t._zod.def,shape:r,checks:[]})}function KS(t,e){if(!On(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 Ka(this,"shape",n),n},checks:[]};return st(t,r)}function WS(t,e){return st(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Ka(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function JS(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return st(e,{...e._zod.def,shape:o,checks:[]})}function GS(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return st(e,{...e._zod.def,shape:o,checks:[]})}function Gr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Dt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function xo(t){return typeof t=="string"?t:t?.message}function bt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=xo(t.inst?._zod.def?.error?.(t))??xo(e?.error?.(t))??xo(r.customError?.(t))??xo(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Ff(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function wo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Xa(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function YS(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Fa=class{constructor(...e){}};var Bf=(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,Ba,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Ls=v("$ZodError",Bf),Eo=v("$ZodError",Bf,{Parent:Error});function Qa(t,e=r=>r.message){let r={},n=[];for(let o of t.issues)o.path.length>0?(r[o.path[0]]=r[o.path[0]]||[],r[o.path[0]].push(e(o))):n.push(e(o));return{formErrors:n,fieldErrors:r}}function ec(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 tc=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 Xt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>bt(c,s,ot())));throw Ms(a,o?.callee),a}return i.value},rc=tc(Eo),nc=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=>bt(c,s,ot())));throw Ms(a,o?.callee),a}return i.value},oc=nc(Eo),sc=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 Xt;return s.issues.length?{success:!1,error:new(t??Ls)(s.issues.map(i=>bt(i,o,ot())))}:{success:!0,data:s.value}},Yr=sc(Eo),ic=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=>bt(i,o,ot())))}:{success:!0,data:s.value}},Xr=ic(Eo);var Vf=/^[cC][^\s-]{8,}$/,Kf=/^[0-9a-z]+$/,Wf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Jf=/^[0-9a-vA-V]{20}$/,Gf=/^[A-Za-z0-9]{27}$/,Yf=/^[a-zA-Z0-9_-]{21}$/,Xf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Qf=/^([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})$/,ac=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 em=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var QS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function tm(){return new RegExp(QS,"u")}var rm=/^(?:(?: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])$/,nm=/^(([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})$/,om=/^((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])$/,sm=/^(([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])$/,im=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,cc=/^[A-Za-z0-9_-]*$/,am=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var cm=/^\+(?:[0-9]){6,14}[0-9]$/,um="(?:(?:\\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])))",lm=new RegExp(`^${um}$`);function dm(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 pm(t){return new RegExp(`^${dm(t)}$`)}function fm(t){let e=dm({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(`^${um}T(?:${n})$`)}var mm=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var hm=/^\d+$/,gm=/^-?\d+(?:\.\d+)?/i,_m=/true|false/i,ym=/null/i;var xm=/^[^A-Z]*$/,vm=/^[^a-z]*$/;var Ce=v("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),km={number:"number",bigint:"bigint",object:"date"},uc=v("$ZodCheckLessThan",(t,e)=>{Ce.init(t,e);let r=km[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})}}),lc=v("$ZodCheckGreaterThan",(t,e)=>{Ce.init(t,e);let r=km[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=v("$ZodCheckMultipleOf",(t,e)=>{Ce.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):Va(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})}}),bm=v("$ZodCheckNumberFormat",(t,e)=>{Ce.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Ya[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=hm)}),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 wm=v("$ZodCheckMaxLength",(t,e)=>{var r;Ce.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!So(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=wo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Em=v("$ZodCheckMinLength",(t,e)=>{var r;Ce.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!So(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=wo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Tm=v("$ZodCheckLengthEquals",(t,e)=>{var r;Ce.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!So(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=wo(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})}}),To=v("$ZodCheckStringFormat",(t,e)=>{var r,n;Ce.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=()=>{})}),$m=v("$ZodCheckRegex",(t,e)=>{To.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})}}),Pm=v("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=xm),To.init(t,e)}),Rm=v("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=vm),To.init(t,e)}),Om=v("$ZodCheckIncludes",(t,e)=>{Ce.init(t,e);let r=lr(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})}}),Cm=v("$ZodCheckStartsWith",(t,e)=>{Ce.init(t,e);let r=new RegExp(`^${lr(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),Im=v("$ZodCheckEndsWith",(t,e)=>{Ce.init(t,e);let r=new RegExp(`.*${lr(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 Nm=v("$ZodCheckOverwrite",(t,e)=>{Ce.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Us=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
25
+ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_index, search) instead of bash/cat/curl for data-heavy operations.`}}}});var Qv={};Ze(Qv,{QwenCodeAdapter:()=>_f});import{readFileSync as rN}from"node:fs";import{resolve as Yv,join as nN}from"node:path";import{homedir as Xv}from"node:os";var _f,ek=pe(()=>{"use strict";jp();_f=class extends co{constructor(){super([".qwen"])}name="Qwen Code";paradigm="json-stdio";projectDirEnvVar="QWEN_PROJECT_DIR";capabilities={preToolUse:!0,postToolUse:!0,preCompact:!0,sessionStart:!0,canModifyArgs:!0,canModifyOutput:!0,canInjectSessionContext:!0};getSettingsPath(){return Yv(Xv(),".qwen","settings.json")}generateHookConfig(e){return{PreToolUse:[{matcher:["run_shell_command","read_file","read_many_files","grep_search","web_fetch","agent","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"].join("|"),hooks:[{type:"command",command:`node ${e}/hooks/pretooluse.mjs`}]}],PostToolUse:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/posttooluse.mjs`}]}],SessionStart:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/sessionstart.mjs`}]}],PreCompact:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/precompact.mjs`}]}],UserPromptSubmit:[{matcher:"",hooks:[{type:"command",command:`node ${e}/hooks/userpromptsubmit.mjs`}]}]}}readSettings(){try{let e=rN(this.getSettingsPath(),"utf-8");return JSON.parse(e)}catch{return null}}writeSettings(e){let{writeFileSync:r}=Sk("node:fs");r(this.getSettingsPath(),JSON.stringify(e,null,2))}validateHooks(e){let r=[],o=this.readSettings()?.hooks??{};for(let s of["PreToolUse","PostToolUse","SessionStart","PreCompact","UserPromptSubmit"]){let i=Array.isArray(o[s])&&o[s].length>0;r.push({check:`${s} hook`,status:i?"pass":"fail",message:i?`${s} hook configured in ~/.qwen/settings.json`:`${s} hook not found in ~/.qwen/settings.json`,...i?{}:{fix:`Add ${s} hook to ~/.qwen/settings.json`}})}return r}checkPluginRegistration(){try{let e=this.readSettings();if(e?.mcpServers&&typeof e.mcpServers=="object"){let r=e.mcpServers;return Object.keys(r).some(n=>n.includes("context-mode"))?{check:"Plugin registration",status:"pass",message:"context-mode found in mcpServers"}:{check:"Plugin registration",status:"fail",message:"mcpServers exists but context-mode not found",fix:"Add context-mode to mcpServers in ~/.qwen/settings.json"}}return{check:"Plugin registration",status:"warn",message:"No mcpServers in ~/.qwen/settings.json"}}catch{return{check:"Plugin registration",status:"warn",message:"Could not read ~/.qwen/settings.json"}}}getInstalledVersion(){return"not installed"}configureAllHooks(e){return[]}setHookPermissions(e){return[]}updatePluginRegistry(e,r){}getRoutingInstructionsConfig(){return{instructionsPath:Yv(nN(Xv(),".qwen","QWEN.md")),targetPath:"QWEN.md",platformName:"Qwen Code"}}extractSessionId(e){if(e.session_id)return e.session_id;if(e.transcript_path){let r=e.transcript_path.match(/([a-f0-9-]{36})\.jsonl$/);if(r)return r[1]}return process.env.QWEN_SESSION_ID?process.env.QWEN_SESSION_ID:`pid-${process.ppid}`}}});var nk={};Ze(nk,{PLATFORM_ENV_VARS:()=>tk,detectPlatform:()=>rk,getAdapter:()=>sN});import{existsSync as vt}from"node:fs";import{resolve as kt}from"node:path";import{homedir as oN}from"node:os";function rk(t){if(t?.name){let n=Yx[t.name];if(n)return{platform:n,confidence:"high",reason:`MCP clientInfo.name="${t.name}"`};if(t.name.startsWith("qwen-cli-mcp-client"))return{platform:"qwen-code",confidence:"high",reason:`MCP clientInfo.name="${t.name}" (qwen-cli pattern)`}}let e=process.env.CONTEXT_MODE_PLATFORM;if(e&&["claude-code","gemini-cli","kilo","opencode","codex","vscode-copilot","jetbrains-copilot","cursor","antigravity","kiro","pi","zed","qwen-code"].includes(e))return{platform:e,confidence:"high",reason:`CONTEXT_MODE_PLATFORM=${e} override`};for(let[n,o]of tk)if(o.some(s=>process.env[s]))return{platform:n,confidence:"high",reason:`${o.join(" or ")} env var set`};let r=oN();return vt(kt(r,".claude"))?{platform:"claude-code",confidence:"medium",reason:"~/.claude/ directory exists"}:vt(kt(r,".gemini"))?{platform:"gemini-cli",confidence:"medium",reason:"~/.gemini/ directory exists"}:vt(kt(r,".codex"))?{platform:"codex",confidence:"medium",reason:"~/.codex/ directory exists"}:vt(kt(r,".cursor"))?{platform:"cursor",confidence:"medium",reason:"~/.cursor/ directory exists"}:vt(kt(r,".kiro"))?{platform:"kiro",confidence:"medium",reason:"~/.kiro/ directory exists"}:vt(kt(r,".pi"))?{platform:"pi",confidence:"medium",reason:"~/.pi/ directory exists"}:vt(kt(r,".qwen"))?{platform:"qwen-code",confidence:"medium",reason:"~/.qwen/ directory exists"}:vt(kt(r,".openclaw"))?{platform:"openclaw",confidence:"medium",reason:"~/.openclaw/ directory exists"}:vt(kt(r,".config","kilo"))?{platform:"kilo",confidence:"medium",reason:"~/.config/kilo/ directory exists"}:vt(kt(r,".config","JetBrains"))?{platform:"jetbrains-copilot",confidence:"medium",reason:"~/.config/JetBrains/ directory exists"}:vt(kt(r,".config","opencode"))?{platform:"opencode",confidence:"medium",reason:"~/.config/opencode/ directory exists"}:vt(kt(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 sN(t){let e=t??rk().platform;switch(e){case"claude-code":{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Hp(),Up));return new r}case"gemini-cli":{let{GeminiCLIAdapter:r}=await Promise.resolve().then(()=>(cv(),av));return new r}case"kilo":case"opencode":{let{OpenCodeAdapter:r}=await Promise.resolve().then(()=>(pv(),dv));return new r(e)}case"openclaw":{let{OpenClawAdapter:r}=await Promise.resolve().then(()=>(gv(),hv));return new r}case"codex":{let{CodexAdapter:r}=await Promise.resolve().then(()=>(xv(),yv));return new r}case"vscode-copilot":{let{VSCodeCopilotAdapter:r}=await Promise.resolve().then(()=>(wv(),bv));return new r}case"jetbrains-copilot":{let{JetBrainsCopilotAdapter:r}=await Promise.resolve().then(()=>(Pv(),$v));return new r}case"cursor":{let{CursorAdapter:r}=await Promise.resolve().then(()=>(Av(),zv));return new r}case"antigravity":{let{AntigravityAdapter:r}=await Promise.resolve().then(()=>(Lv(),Dv));return new r}case"kiro":{let{KiroAdapter:r}=await Promise.resolve().then(()=>(Vv(),Bv));return new r}case"zed":{let{ZedAdapter:r}=await Promise.resolve().then(()=>(Gv(),Jv));return new r}case"qwen-code":{let{QwenCodeAdapter:r}=await Promise.resolve().then(()=>(ek(),Qv));return new r}default:{let{ClaudeCodeAdapter:r}=await Promise.resolve().then(()=>(Hp(),Up));return new r}}}var tk,ok=pe(()=>{"use strict";Xx();tk=[["claude-code",["CLAUDE_PROJECT_DIR","CLAUDE_SESSION_ID"]],["gemini-cli",["GEMINI_PROJECT_DIR","GEMINI_CLI"]],["openclaw",["OPENCLAW_HOME","OPENCLAW_CLI"]],["kilo",["KILO","KILO_PID"]],["opencode",["OPENCODE","OPENCODE_PID"]],["codex",["CODEX_CI","CODEX_THREAD_ID"]],["cursor",["CURSOR_TRACE_ID","CURSOR_CLI"]],["vscode-copilot",["VSCODE_PID","VSCODE_CWD"]],["jetbrains-copilot",["IDEA_INITIAL_DIRECTORY","IDEA_HOME","JETBRAINS_CLIENT_ID"]],["qwen-code",["QWEN_PROJECT_DIR","QWEN_SESSION_ID"]]]});var L={};Ze(L,{BRAND:()=>Jk,DIRTY:()=>zr,EMPTY_PATH:()=>$k,INVALID:()=>A,NEVER:()=>IS,OK:()=>Ue,ParseStatus:()=>Oe,Schema:()=>q,ZodAny:()=>lr,ZodArray:()=>Xt,ZodBigInt:()=>jr,ZodBoolean:()=>Mr,ZodBranded:()=>_o,ZodCatch:()=>Wr,ZodDate:()=>Dr,ZodDefault:()=>Kr,ZodDiscriminatedUnion:()=>Is,ZodEffects:()=>ct,ZodEnum:()=>Br,ZodError:()=>Ge,ZodFirstPartyTypeKind:()=>b,ZodFunction:()=>zs,ZodIntersection:()=>Hr,ZodIssueCode:()=>S,ZodLazy:()=>qr,ZodLiteral:()=>Fr,ZodMap:()=>Tn,ZodNaN:()=>Pn,ZodNativeEnum:()=>Vr,ZodNever:()=>bt,ZodNull:()=>Zr,ZodNullable:()=>Dt,ZodNumber:()=>Ar,ZodObject:()=>Xe,ZodOptional:()=>Ye,ZodParsedType:()=>$,ZodPipeline:()=>yo,ZodPromise:()=>dr,ZodReadonly:()=>Jr,ZodRecord:()=>Ns,ZodSchema:()=>q,ZodSet:()=>$n,ZodString:()=>ur,ZodSymbol:()=>wn,ZodTransformer:()=>ct,ZodTuple:()=>Mt,ZodType:()=>q,ZodUndefined:()=>Lr,ZodUnion:()=>Ur,ZodUnknown:()=>Yt,ZodVoid:()=>En,addIssueToContext:()=>E,any:()=>oS,array:()=>cS,bigint:()=>Qk,boolean:()=>Uf,coerce:()=>CS,custom:()=>Df,date:()=>eS,datetimeRegex:()=>jf,defaultErrorMap:()=>Jt,discriminatedUnion:()=>dS,effect:()=>bS,enum:()=>vS,function:()=>_S,getErrorMap:()=>kn,getParsedType:()=>jt,instanceof:()=>Yk,intersection:()=>pS,isAborted:()=>Os,isAsync:()=>Sn,isDirty:()=>Cs,isValid:()=>cr,late:()=>Gk,lazy:()=>yS,literal:()=>xS,makeIssue:()=>go,map:()=>hS,nan:()=>Xk,nativeEnum:()=>kS,never:()=>iS,null:()=>nS,nullable:()=>ES,number:()=>Zf,object:()=>qa,objectUtil:()=>Za,oboolean:()=>OS,onumber:()=>RS,optional:()=>wS,ostring:()=>PS,pipeline:()=>$S,preprocess:()=>TS,promise:()=>SS,quotelessJson:()=>wk,record:()=>mS,set:()=>gS,setErrorMap:()=>Tk,strictObject:()=>uS,string:()=>Lf,symbol:()=>tS,transformer:()=>bS,tuple:()=>fS,undefined:()=>rS,union:()=>lS,unknown:()=>sS,util:()=>W,void:()=>aS});var W;(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})(W||(W={}));var Za;(function(t){t.mergeShapes=(e,r)=>({...e,...r})})(Za||(Za={}));var $=W.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),jt=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=W.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"]),wk=t=>JSON.stringify(t,null,2).replace(/"([^"]+)":/g,"$1:"),Ge=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,W.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()}};Ge.create=t=>new Ge(t);var Ek=(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,W.jsonStringifyReplacer)}`;break;case S.unrecognized_keys:r=`Unrecognized key(s) in object: ${W.joinValues(t.keys,", ")}`;break;case S.invalid_union:r="Invalid input";break;case S.invalid_union_discriminator:r=`Invalid discriminator value. Expected ${W.joinValues(t.options)}`;break;case S.invalid_enum_value:r=`Invalid enum value. Expected ${W.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}"`:W.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,W.assertNever(t)}return{message:r}},Jt=Ek;var Cf=Jt;function Tk(t){Cf=t}function kn(){return Cf}var go=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}},$k=[];function E(t,e){let r=kn(),n=go({issueData:e,data:t.data,path:t.path,errorMaps:[t.common.contextualErrorMap,t.schemaErrorMap,r,r===Jt?void 0:Jt].filter(o=>!!o)});t.common.issues.push(n)}var Oe=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"}),zr=t=>({status:"dirty",value:t}),Ue=t=>({status:"valid",value:t}),Os=t=>t.status==="aborted",Cs=t=>t.status==="dirty",cr=t=>t.status==="valid",Sn=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 at=class{constructor(e,r,n,o){this._cachedPath=[],this.parent=e,this.data=r,this._path=n,this._key=o}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}},If=(t,e)=>{if(cr(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 Ge(t.common.issues);return this._error=r,this._error}}};function U(t){if(!t)return{};let{errorMap:e,invalid_type_error:r,required_error:n,description:o}=t;if(e&&(r||n))throw new Error(`Can't use "invalid_type_error" or "required_error" in conjunction with custom error map.`);return e?{errorMap:e,description:o}:{errorMap:(i,a)=>{let{message:c}=t;return i.code==="invalid_enum_value"?{message:c??a.defaultError}:typeof a.data>"u"?{message:c??n??a.defaultError}:i.code!=="invalid_type"?{message:a.defaultError}:{message:c??r??a.defaultError}},description:o}}var q=class{get description(){return this._def.description}_getType(e){return jt(e.data)}_getOrReturnCtx(e,r){return r||{common:e.parent.common,data:e.data,parsedType:jt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}_processInputParams(e){return{status:new Oe,ctx:{common:e.parent.common,data:e.data,parsedType:jt(e.data),schemaErrorMap:this._def.errorMap,path:e.path,parent:e.parent}}}_parseSync(e){let r=this._parse(e);if(Sn(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:jt(e)},o=this._parseSync({data:e,path:n.path,parent:n});return If(n,o)}"~validate"(e){let r={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:e,parsedType:jt(e)};if(!this["~standard"].async)try{let n=this._parseSync({data:e,path:[],parent:r});return cr(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=>cr(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:jt(e)},o=this._parse({data:e,path:n.path,parent:n}),s=await(Sn(o)?o:Promise.resolve(o));return If(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 ct({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 Ye.create(this,this._def)}nullable(){return Dt.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return Xt.create(this)}promise(){return dr.create(this,this._def)}or(e){return Ur.create([this,e],this._def)}and(e){return Hr.create(this,e,this._def)}transform(e){return new ct({...U(this._def),schema:this,typeName:b.ZodEffects,effect:{type:"transform",transform:e}})}default(e){let r=typeof e=="function"?e:()=>e;return new Kr({...U(this._def),innerType:this,defaultValue:r,typeName:b.ZodDefault})}brand(){return new _o({typeName:b.ZodBranded,type:this,...U(this._def)})}catch(e){let r=typeof e=="function"?e:()=>e;return new Wr({...U(this._def),innerType:this,catchValue:r,typeName:b.ZodCatch})}describe(e){let r=this.constructor;return new r({...this._def,description:e})}pipe(e){return yo.create(this,e)}readonly(){return Jr.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}},Pk=/^c[^\s-]{8,}$/i,Rk=/^[0-9a-z]+$/,Ok=/^[0-9A-HJKMNP-TV-Z]{26}$/i,Ck=/^[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,Nk=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,zk=/^[-+]?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)?)??$/,Ak=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,jk="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$",Ua,Mk=/^(?:(?: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])$/,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])\/(3[0-2]|[12]?[0-9])$/,Lk=/^(([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]))$/,Zk=/^(([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])$/,Uk=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,Hk=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,zf="((\\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])))",qk=new RegExp(`^${zf}$`);function Af(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 Fk(t){return new RegExp(`^${Af(t)}$`)}function jf(t){let e=`${zf}T${Af(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 Bk(t,e){return!!((e==="v4"||!e)&&Mk.test(t)||(e==="v6"||!e)&&Lk.test(t))}function Vk(t,e){if(!Nk.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)&&Dk.test(t)||(e==="v6"||!e)&&Zk.test(t))}var ur=class t extends q{_parse(e){if(this._def.coerce&&(e.data=String(e.data)),this._getType(e)!==$.string){let s=this._getOrReturnCtx(e);return E(s,{code:S.invalid_type,expected:$.string,received:s.parsedType}),A}let n=new Oe,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: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),E(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?E(o,{code:S.too_big,maximum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}):a&&E(o,{code:S.too_small,minimum:s.value,type:"string",inclusive:!0,exact:!0,message:s.message}),n.dirty())}else if(s.kind==="email")Ak.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"email",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="emoji")Ua||(Ua=new RegExp(jk,"u")),Ua.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"emoji",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="uuid")Ck.test(e.data)||(o=this._getOrReturnCtx(e,o),E(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),E(o,{validation:"nanoid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid")Pk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"cuid",code:S.invalid_string,message:s.message}),n.dirty());else if(s.kind==="cuid2")Rk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(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),E(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),E(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),E(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),E(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),E(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),E(o,{code:S.invalid_string,validation:{endsWith:s.value},message:s.message}),n.dirty()):s.kind==="datetime"?jf(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:S.invalid_string,validation:"datetime",message:s.message}),n.dirty()):s.kind==="date"?qk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:S.invalid_string,validation:"date",message:s.message}),n.dirty()):s.kind==="time"?Fk(s).test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{code:S.invalid_string,validation:"time",message:s.message}),n.dirty()):s.kind==="duration"?zk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"duration",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="ip"?Bk(e.data,s.version)||(o=this._getOrReturnCtx(e,o),E(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),E(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),E(o,{validation:"cidr",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64"?Uk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64",code:S.invalid_string,message:s.message}),n.dirty()):s.kind==="base64url"?Hk.test(e.data)||(o=this._getOrReturnCtx(e,o),E(o,{validation:"base64url",code:S.invalid_string,message:s.message}),n.dirty()):W.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}};ur.create=t=>new ur({checks:[],typeName:b.ZodString,coerce:t?.coerce??!1,...U(t)});function Wk(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 Ar=class t extends q{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(e){if(this._def.coerce&&(e.data=Number(e.data)),this._getType(e)!==$.number){let s=this._getOrReturnCtx(e);return E(s,{code:S.invalid_type,expected:$.number,received:s.parsedType}),A}let n,o=new Oe;for(let s of this._def.checks)s.kind==="int"?W.isInteger(e.data)||(n=this._getOrReturnCtx(e,n),E(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),E(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),E(n,{code:S.too_big,maximum:s.value,type:"number",inclusive:s.inclusive,exact:!1,message:s.message}),o.dirty()):s.kind==="multipleOf"?Wk(e.data,s.value)!==0&&(n=this._getOrReturnCtx(e,n),E(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),E(n,{code:S.not_finite,message:s.message}),o.dirty()):W.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"&&W.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)}};Ar.create=t=>new Ar({checks:[],typeName:b.ZodNumber,coerce:t?.coerce||!1,...U(t)});var jr=class t extends q{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(e){if(this._def.coerce)try{e.data=BigInt(e.data)}catch{return this._getInvalidInput(e)}if(this._getType(e)!==$.bigint)return this._getInvalidInput(e);let n,o=new Oe;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: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),E(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),E(n,{code:S.not_multiple_of,multipleOf:s.value,message:s.message}),o.dirty()):W.assertNever(s);return{status:o.value,value:e.data}}_getInvalidInput(e){let r=this._getOrReturnCtx(e);return E(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}};jr.create=t=>new jr({checks:[],typeName:b.ZodBigInt,coerce:t?.coerce??!1,...U(t)});var Mr=class extends q{_parse(e){if(this._def.coerce&&(e.data=!!e.data),this._getType(e)!==$.boolean){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.boolean,received:n.parsedType}),A}return Ue(e.data)}};Mr.create=t=>new Mr({typeName:b.ZodBoolean,coerce:t?.coerce||!1,...U(t)});var Dr=class t extends q{_parse(e){if(this._def.coerce&&(e.data=new Date(e.data)),this._getType(e)!==$.date){let s=this._getOrReturnCtx(e);return E(s,{code:S.invalid_type,expected:$.date,received:s.parsedType}),A}if(Number.isNaN(e.data.getTime())){let s=this._getOrReturnCtx(e);return E(s,{code:S.invalid_date}),A}let n=new Oe,o;for(let s of this._def.checks)s.kind==="min"?e.data.getTime()<s.value&&(o=this._getOrReturnCtx(e,o),E(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),E(o,{code:S.too_big,message:s.message,inclusive:!0,exact:!1,maximum:s.value,type:"date"}),n.dirty()):W.assertNever(s);return{status:n.value,value:new Date(e.data.getTime())}}_addCheck(e){return new t({...this._def,checks:[...this._def.checks,e]})}min(e,r){return this._addCheck({kind:"min",value:e.getTime(),message:R.toString(r)})}max(e,r){return this._addCheck({kind:"max",value:e.getTime(),message:R.toString(r)})}get minDate(){let e=null;for(let r of this._def.checks)r.kind==="min"&&(e===null||r.value>e)&&(e=r.value);return e!=null?new Date(e):null}get maxDate(){let e=null;for(let r of this._def.checks)r.kind==="max"&&(e===null||r.value<e)&&(e=r.value);return e!=null?new Date(e):null}};Dr.create=t=>new Dr({checks:[],coerce:t?.coerce||!1,typeName:b.ZodDate,...U(t)});var wn=class extends q{_parse(e){if(this._getType(e)!==$.symbol){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.symbol,received:n.parsedType}),A}return Ue(e.data)}};wn.create=t=>new wn({typeName:b.ZodSymbol,...U(t)});var Lr=class extends q{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.undefined,received:n.parsedType}),A}return Ue(e.data)}};Lr.create=t=>new Lr({typeName:b.ZodUndefined,...U(t)});var Zr=class extends q{_parse(e){if(this._getType(e)!==$.null){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.null,received:n.parsedType}),A}return Ue(e.data)}};Zr.create=t=>new Zr({typeName:b.ZodNull,...U(t)});var lr=class extends q{constructor(){super(...arguments),this._any=!0}_parse(e){return Ue(e.data)}};lr.create=t=>new lr({typeName:b.ZodAny,...U(t)});var Yt=class extends q{constructor(){super(...arguments),this._unknown=!0}_parse(e){return Ue(e.data)}};Yt.create=t=>new Yt({typeName:b.ZodUnknown,...U(t)});var bt=class extends q{_parse(e){let r=this._getOrReturnCtx(e);return E(r,{code:S.invalid_type,expected:$.never,received:r.parsedType}),A}};bt.create=t=>new bt({typeName:b.ZodNever,...U(t)});var En=class extends q{_parse(e){if(this._getType(e)!==$.undefined){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.void,received:n.parsedType}),A}return Ue(e.data)}};En.create=t=>new En({typeName:b.ZodVoid,...U(t)});var Xt=class t extends q{_parse(e){let{ctx:r,status:n}=this._processInputParams(e),o=this._def;if(r.parsedType!==$.array)return E(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)&&(E(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&&(E(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&&(E(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 at(r,i,r.path,a)))).then(i=>Oe.mergeArray(n,i));let s=[...r.data].map((i,a)=>o.type._parseSync(new at(r,i,r.path,a)));return Oe.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)}};Xt.create=(t,e)=>new Xt({type:t,minLength:null,maxLength:null,exactLength:null,typeName:b.ZodArray,...U(e)});function bn(t){if(t instanceof Xe){let e={};for(let r in t.shape){let n=t.shape[r];e[r]=Ye.create(bn(n))}return new Xe({...t._def,shape:()=>e})}else return t instanceof Xt?new Xt({...t._def,type:bn(t.element)}):t instanceof Ye?Ye.create(bn(t.unwrap())):t instanceof Dt?Dt.create(bn(t.unwrap())):t instanceof Mt?Mt.create(t.items.map(e=>bn(e))):t}var Xe=class t extends q{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(this._cached!==null)return this._cached;let e=this._def.shape(),r=W.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: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 bt&&this._def.unknownKeys==="strip"))for(let u in o.data)i.includes(u)||a.push(u);let c=[];for(let u of i){let l=s[u],d=o.data[u];c.push({key:{status:"valid",value:u},value:l._parse(new at(o,d,o.path,u)),alwaysSet:u in o.data})}if(this._def.catchall instanceof bt){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: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 at(o,d,o.path,l)),alwaysSet:l in o.data})}}return o.common.async?Promise.resolve().then(async()=>{let u=[];for(let l of c){let d=await l.key,f=await l.value;u.push({key:d,value:f,alwaysSet:l.alwaysSet})}return u}).then(u=>Oe.mergeObjectSync(n,u)):Oe.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 W.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 W.objectKeys(this.shape))e[n]||(r[n]=this.shape[n]);return new t({...this._def,shape:()=>r})}deepPartial(){return bn(this)}partial(e){let r={};for(let n of W.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 W.objectKeys(this.shape))if(e&&!e[n])r[n]=this.shape[n];else{let s=this.shape[n];for(;s instanceof Ye;)s=s._def.innerType;r[n]=s}return new t({...this._def,shape:()=>r})}keyof(){return Mf(W.objectKeys(this.shape))}};Xe.create=(t,e)=>new Xe({shape:()=>t,unknownKeys:"strip",catchall:bt.create(),typeName:b.ZodObject,...U(e)});Xe.strictCreate=(t,e)=>new Xe({shape:()=>t,unknownKeys:"strict",catchall:bt.create(),typeName:b.ZodObject,...U(e)});Xe.lazycreate=(t,e)=>new Xe({shape:t,unknownKeys:"strip",catchall:bt.create(),typeName:b.ZodObject,...U(e)});var Ur=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n=this._def.options;function o(s){for(let a of s)if(a.result.status==="valid")return a.result;for(let a of s)if(a.result.status==="dirty")return r.common.issues.push(...a.ctx.common.issues),a.result;let i=s.map(a=>new Ge(a.ctx.common.issues));return E(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 Ge(c));return E(r,{code:S.invalid_union,unionErrors:a}),A}}get options(){return this._def.options}};Ur.create=(t,e)=>new Ur({options:t,typeName:b.ZodUnion,...U(e)});var Gt=t=>t instanceof qr?Gt(t.schema):t instanceof ct?Gt(t.innerType()):t instanceof Fr?[t.value]:t instanceof Br?t.options:t instanceof Vr?W.objectValues(t.enum):t instanceof Kr?Gt(t._def.innerType):t instanceof Lr?[void 0]:t instanceof Zr?[null]:t instanceof Ye?[void 0,...Gt(t.unwrap())]:t instanceof Dt?[null,...Gt(t.unwrap())]:t instanceof _o||t instanceof Jr?Gt(t.unwrap()):t instanceof Wr?Gt(t._def.innerType):[],Is=class t extends q{_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.object)return E(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}):(E(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=Gt(s.shape[e]);if(!i.length)throw new Error(`A discriminator value for key \`${e}\` could not be extracted from all schema options`);for(let a of i){if(o.has(a))throw new Error(`Discriminator property ${String(e)} has duplicate value ${String(a)}`);o.set(a,s)}}return new t({typeName:b.ZodDiscriminatedUnion,discriminator:e,options:r,optionsMap:o,...U(n)})}};function Ha(t,e){let r=jt(t),n=jt(e);if(t===e)return{valid:!0,data:t};if(r===$.object&&n===$.object){let o=W.objectKeys(e),s=W.objectKeys(t).filter(a=>o.indexOf(a)!==-1),i={...t,...e};for(let a of s){let c=Ha(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=Ha(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 Hr=class extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=(s,i)=>{if(Os(s)||Os(i))return A;let a=Ha(s.value,i.value);return a.valid?((Cs(s)||Cs(i))&&r.dirty(),{status:r.value,value:a.data}):(E(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}))}};Hr.create=(t,e,r)=>new Hr({left:t,right:e,typeName:b.ZodIntersection,...U(r)});var Mt=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.array)return E(n,{code:S.invalid_type,expected:$.array,received:n.parsedType}),A;if(n.data.length<this._def.items.length)return E(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&&(E(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 at(n,i,n.path,a)):null}).filter(i=>!!i);return n.common.async?Promise.all(s).then(i=>Oe.mergeArray(r,i)):Oe.mergeArray(r,s)}get items(){return this._def.items}rest(e){return new t({...this._def,rest:e})}};Mt.create=(t,e)=>{if(!Array.isArray(t))throw new Error("You must pass an array of schemas to z.tuple([ ... ])");return new Mt({items:t,typeName:b.ZodTuple,rest:null,...U(e)})};var Ns=class t extends q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.object)return E(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 at(n,a,n.path,a)),value:i._parse(new at(n,n.data[a],n.path,a)),alwaysSet:a in n.data});return n.common.async?Oe.mergeObjectAsync(r,o):Oe.mergeObjectSync(r,o)}get element(){return this._def.valueType}static create(e,r,n){return r instanceof q?new t({keyType:e,valueType:r,typeName:b.ZodRecord,...U(n)}):new t({keyType:ur.create(),valueType:e,typeName:b.ZodRecord,...U(r)})}},Tn=class extends q{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.map)return E(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 at(n,a,n.path,[u,"key"])),value:s._parse(new at(n,c,n.path,[u,"value"]))}));if(n.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of i){let u=await c.key,l=await c.value;if(u.status==="aborted"||l.status==="aborted")return 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}}}};Tn.create=(t,e,r)=>new Tn({valueType:e,keyType:t,typeName:b.ZodMap,...U(r)});var $n=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.parsedType!==$.set)return E(n,{code:S.invalid_type,expected:$.set,received:n.parsedType}),A;let o=this._def;o.minSize!==null&&n.data.size<o.minSize.value&&(E(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&&(E(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 at(n,c,n.path,u)));return n.common.async?Promise.all(a).then(c=>i(c)):i(a)}min(e,r){return new t({...this._def,minSize:{value:e,message: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)}};$n.create=(t,e)=>new $n({valueType:t,minSize:null,maxSize:null,typeName:b.ZodSet,...U(e)});var zs=class t extends q{constructor(){super(...arguments),this.validate=this.implement}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.function)return E(r,{code:S.invalid_type,expected:$.function,received:r.parsedType}),A;function n(a,c){return go({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,kn(),Jt].filter(u=>!!u),issueData:{code:S.invalid_arguments,argumentsError:c}})}function o(a,c){return go({data:a,path:r.path,errorMaps:[r.common.contextualErrorMap,r.schemaErrorMap,kn(),Jt].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 dr){let a=this;return Ue(async function(...c){let u=new Ge([]),l=await a._def.args.parseAsync(c,s).catch(m=>{throw u.addIssue(n(c,m)),u}),d=await Reflect.apply(i,this,l);return await a._def.returns._def.type.parseAsync(d,s).catch(m=>{throw u.addIssue(o(d,m)),u})})}else{let a=this;return Ue(function(...c){let u=a._def.args.safeParse(c,s);if(!u.success)throw new Ge([n(c,u.error)]);let l=Reflect.apply(i,this,u.data),d=a._def.returns.safeParse(l,s);if(!d.success)throw new Ge([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:Mt.create(e).rest(Yt.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||Mt.create([]).rest(Yt.create()),returns:r||Yt.create(),typeName:b.ZodFunction,...U(n)})}},qr=class extends q{get schema(){return this._def.getter()}_parse(e){let{ctx:r}=this._processInputParams(e);return this._def.getter()._parse({data:r.data,path:r.path,parent:r})}};qr.create=(t,e)=>new qr({getter:t,typeName:b.ZodLazy,...U(e)});var Fr=class extends q{_parse(e){if(e.data!==this._def.value){let r=this._getOrReturnCtx(e);return E(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}};Fr.create=(t,e)=>new Fr({value:t,typeName:b.ZodLiteral,...U(e)});function Mf(t,e){return new Br({values:t,typeName:b.ZodEnum,...U(e)})}var Br=class t extends q{_parse(e){if(typeof e.data!="string"){let r=this._getOrReturnCtx(e),n=this._def.values;return E(r,{expected:W.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 E(r,{received:r.data,code:S.invalid_enum_value,options:n}),A}return Ue(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})}};Br.create=Mf;var Vr=class extends q{_parse(e){let r=W.getValidEnumValues(this._def.values),n=this._getOrReturnCtx(e);if(n.parsedType!==$.string&&n.parsedType!==$.number){let o=W.objectValues(r);return E(n,{expected:W.joinValues(o),received:n.parsedType,code:S.invalid_type}),A}if(this._cache||(this._cache=new Set(W.getValidEnumValues(this._def.values))),!this._cache.has(e.data)){let o=W.objectValues(r);return E(n,{received:n.data,code:S.invalid_enum_value,options:o}),A}return Ue(e.data)}get enum(){return this._def.values}};Vr.create=(t,e)=>new Vr({values:t,typeName:b.ZodNativeEnum,...U(e)});var dr=class extends q{unwrap(){return this._def.type}_parse(e){let{ctx:r}=this._processInputParams(e);if(r.parsedType!==$.promise&&r.common.async===!1)return E(r,{code:S.invalid_type,expected:$.promise,received:r.parsedType}),A;let n=r.parsedType===$.promise?r.data:Promise.resolve(r.data);return Ue(n.then(o=>this._def.type.parseAsync(o,{path:r.path,errorMap:r.common.contextualErrorMap})))}};dr.create=(t,e)=>new dr({type:t,typeName:b.ZodPromise,...U(e)});var ct=class extends q{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===b.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(e){let{status:r,ctx:n}=this._processInputParams(e),o=this._def.effect||null,s={addIssue:i=>{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"?zr(c.value):r.value==="dirty"?zr(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"?zr(a.value):r.value==="dirty"?zr(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(!cr(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=>cr(i)?Promise.resolve(o.transform(i.value,s)).then(a=>({status:r.value,value:a})):A);W.assertNever(o)}};ct.create=(t,e,r)=>new ct({schema:t,typeName:b.ZodEffects,effect:e,...U(r)});ct.createWithPreprocess=(t,e,r)=>new ct({schema:e,effect:{type:"preprocess",transform:t},typeName:b.ZodEffects,...U(r)});var Ye=class extends q{_parse(e){return this._getType(e)===$.undefined?Ue(void 0):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Ye.create=(t,e)=>new Ye({innerType:t,typeName:b.ZodOptional,...U(e)});var Dt=class extends q{_parse(e){return this._getType(e)===$.null?Ue(null):this._def.innerType._parse(e)}unwrap(){return this._def.innerType}};Dt.create=(t,e)=>new Dt({innerType:t,typeName:b.ZodNullable,...U(e)});var Kr=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return r.parsedType===$.undefined&&(n=this._def.defaultValue()),this._def.innerType._parse({data:n,path:r.path,parent:r})}removeDefault(){return this._def.innerType}};Kr.create=(t,e)=>new Kr({innerType:t,typeName:b.ZodDefault,defaultValue:typeof e.default=="function"?e.default:()=>e.default,...U(e)});var Wr=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n={...r,common:{...r.common,issues:[]}},o=this._def.innerType._parse({data:n.data,path:n.path,parent:{...n}});return Sn(o)?o.then(s=>({status:"valid",value:s.status==="valid"?s.value:this._def.catchValue({get error(){return new Ge(n.common.issues)},input:n.data})})):{status:"valid",value:o.status==="valid"?o.value:this._def.catchValue({get error(){return new Ge(n.common.issues)},input:n.data})}}removeCatch(){return this._def.innerType}};Wr.create=(t,e)=>new Wr({innerType:t,typeName:b.ZodCatch,catchValue:typeof e.catch=="function"?e.catch:()=>e.catch,...U(e)});var Pn=class extends q{_parse(e){if(this._getType(e)!==$.nan){let n=this._getOrReturnCtx(e);return E(n,{code:S.invalid_type,expected:$.nan,received:n.parsedType}),A}return{status:"valid",value:e.data}}};Pn.create=t=>new Pn({typeName:b.ZodNaN,...U(t)});var Jk=Symbol("zod_brand"),_o=class extends q{_parse(e){let{ctx:r}=this._processInputParams(e),n=r.data;return this._def.type._parse({data:n,path:r.path,parent:r})}unwrap(){return this._def.type}},yo=class t extends q{_parse(e){let{status:r,ctx:n}=this._processInputParams(e);if(n.common.async)return(async()=>{let s=await this._def.in._parseAsync({data:n.data,path:n.path,parent:n});return s.status==="aborted"?A:s.status==="dirty"?(r.dirty(),zr(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})}},Jr=class extends q{_parse(e){let r=this._def.innerType._parse(e),n=o=>(cr(o)&&(o.value=Object.freeze(o.value)),o);return Sn(r)?r.then(o=>n(o)):n(r)}unwrap(){return this._def.innerType}};Jr.create=(t,e)=>new Jr({innerType:t,typeName:b.ZodReadonly,...U(e)});function Nf(t,e){let r=typeof t=="function"?t(e):typeof t=="string"?{message:t}:t;return typeof r=="string"?{message:r}:r}function Df(t,e={},r){return t?lr.create().superRefine((n,o)=>{let s=t(n);if(s instanceof Promise)return s.then(i=>{if(!i){let a=Nf(e,n),c=a.fatal??r??!0;o.addIssue({code:"custom",...a,fatal:c})}});if(!s){let i=Nf(e,n),a=i.fatal??r??!0;o.addIssue({code:"custom",...i,fatal:a})}}):lr.create()}var Gk={object:Xe.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 Yk=(t,e={message:`Input not instance of ${t.name}`})=>Df(r=>r instanceof t,e),Lf=ur.create,Zf=Ar.create,Xk=Pn.create,Qk=jr.create,Uf=Mr.create,eS=Dr.create,tS=wn.create,rS=Lr.create,nS=Zr.create,oS=lr.create,sS=Yt.create,iS=bt.create,aS=En.create,cS=Xt.create,qa=Xe.create,uS=Xe.strictCreate,lS=Ur.create,dS=Is.create,pS=Hr.create,fS=Mt.create,mS=Ns.create,hS=Tn.create,gS=$n.create,_S=zs.create,yS=qr.create,xS=Fr.create,vS=Br.create,kS=Vr.create,SS=dr.create,bS=ct.create,wS=Ye.create,ES=Dt.create,TS=ct.createWithPreprocess,$S=yo.create,PS=()=>Lf().optional(),RS=()=>Zf().optional(),OS=()=>Uf().optional(),CS={string:(t=>ur.create({...t,coerce:!0})),number:(t=>Ar.create({...t,coerce:!0})),boolean:(t=>Mr.create({...t,coerce:!0})),bigint:(t=>jr.create({...t,coerce:!0})),date:(t=>Dr.create({...t,coerce:!0}))};var IS=A;var NS=Object.freeze({status:"aborted"});function v(t,e,r){function n(a,c){var u;Object.defineProperty(a,"_zod",{value:a._zod??{},enumerable:!1}),(u=a._zod).traits??(u.traits=new Set),a._zod.traits.add(t),e(a,c);for(let l in i.prototype)l in a||Object.defineProperty(a,l,{value:i.prototype[l].bind(a)});a._zod.constr=i,a._zod.def=c}let o=r?.Parent??Object;class s extends o{}Object.defineProperty(s,"name",{value:t});function i(a){var c;let u=r?.Parent?new s:this;n(u,a),(c=u._zod).deferred??(c.deferred=[]);for(let l of u._zod.deferred)l();return u}return Object.defineProperty(i,"init",{value:n}),Object.defineProperty(i,Symbol.hasInstance,{value:a=>r?.Parent&&a instanceof r.Parent?!0:a?._zod?.traits?.has(t)}),Object.defineProperty(i,"name",{value:t}),i}var Qt=class extends Error{constructor(){super("Encountered Promise during synchronous parse. Use .parseAsync() instead.")}},As={};function ot(t){return t&&Object.assign(As,t),As}var J={};Ze(J,{BIGINT_FORMAT_RANGES:()=>qf,Class:()=>Ba,NUMBER_FORMAT_RANGES:()=>Xa,aborted:()=>Yr,allowsEval:()=>Ja,assert:()=>DS,assertEqual:()=>zS,assertIs:()=>jS,assertNever:()=>MS,assertNotEqual:()=>AS,assignProp:()=>Wa,cached:()=>ko,captureStackTrace:()=>Ms,cleanEnum:()=>YS,cleanRegex:()=>bo,clone:()=>st,createTransparentProxy:()=>FS,defineLazy:()=>ce,esc:()=>Gr,escapeRegex:()=>pr,extend:()=>KS,finalizeIssue:()=>wt,floatSafeRemainder:()=>Ka,getElementAtPath:()=>LS,getEnumValues:()=>vo,getLengthableOrigin:()=>wo,getParsedType:()=>qS,getSizableOrigin:()=>Ff,isObject:()=>Rn,isPlainObject:()=>On,issue:()=>Qa,joinValues:()=>js,jsonStringifyReplacer:()=>Va,merge:()=>WS,normalizeParams:()=>j,nullish:()=>So,numKeys:()=>HS,omit:()=>VS,optionalKeys:()=>Ya,partial:()=>JS,pick:()=>BS,prefixIssues:()=>Lt,primitiveTypes:()=>Hf,promiseAllObject:()=>ZS,propertyKeyTypes:()=>Ga,randomString:()=>US,required:()=>GS,stringifyPrimitive:()=>Ds,unwrapMessage:()=>xo});function zS(t){return t}function AS(t){return t}function jS(t){}function MS(t){throw new Error}function DS(t){}function vo(t){let e=Object.values(t).filter(n=>typeof n=="number");return Object.entries(t).filter(([n,o])=>e.indexOf(+n)===-1).map(([n,o])=>o)}function js(t,e="|"){return t.map(r=>Ds(r)).join(e)}function Va(t,e){return typeof e=="bigint"?e.toString():e}function ko(t){return{get value(){{let r=t();return Object.defineProperty(this,"value",{value:r}),r}throw new Error("cached value already set")}}}function So(t){return t==null}function bo(t){let e=t.startsWith("^")?1:0,r=t.endsWith("$")?t.length-1:t.length;return t.slice(e,r)}function Ka(t,e){let r=(t.toString().split(".")[1]||"").length,n=(e.toString().split(".")[1]||"").length,o=r>n?r:n,s=Number.parseInt(t.toFixed(o).replace(".","")),i=Number.parseInt(e.toFixed(o).replace(".",""));return s%i/10**o}function ce(t,e,r){Object.defineProperty(t,e,{get(){{let o=r();return t[e]=o,o}throw new Error("cached value already set")},set(o){Object.defineProperty(t,e,{value:o})},configurable:!0})}function Wa(t,e,r){Object.defineProperty(t,e,{value:r,writable:!0,enumerable:!0,configurable:!0})}function LS(t,e){return e?e.reduce((r,n)=>r?.[n],t):t}function ZS(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 US(t=10){let e="abcdefghijklmnopqrstuvwxyz",r="";for(let n=0;n<t;n++)r+=e[Math.floor(Math.random()*e.length)];return r}function Gr(t){return JSON.stringify(t)}var Ms=Error.captureStackTrace?Error.captureStackTrace:(...t)=>{};function Rn(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)}var Ja=ko(()=>{if(typeof navigator<"u"&&navigator?.userAgent?.includes("Cloudflare"))return!1;try{let t=Function;return new t(""),!0}catch{return!1}});function On(t){if(Rn(t)===!1)return!1;let e=t.constructor;if(e===void 0)return!0;let r=e.prototype;return!(Rn(r)===!1||Object.prototype.hasOwnProperty.call(r,"isPrototypeOf")===!1)}function HS(t){let e=0;for(let r in t)Object.prototype.hasOwnProperty.call(t,r)&&e++;return e}var qS=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}`)}},Ga=new Set(["string","number","symbol"]),Hf=new Set(["string","number","bigint","boolean","symbol","undefined"]);function pr(t){return t.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function st(t,e,r){let n=new t._zod.constr(e??t._zod.def);return(!e||r?.parent)&&(n._zod.parent=t),n}function 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 FS(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 Ds(t){return typeof t=="bigint"?t.toString()+"n":typeof t=="string"?`"${t}"`:`${t}`}function Ya(t){return Object.keys(t).filter(e=>t[e]._zod.optin==="optional"&&t[e]._zod.optout==="optional")}var Xa={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]},qf={int64:[BigInt("-9223372036854775808"),BigInt("9223372036854775807")],uint64:[BigInt(0),BigInt("18446744073709551615")]};function BS(t,e){let r={},n=t._zod.def;for(let o in e){if(!(o in n.shape))throw new Error(`Unrecognized key: "${o}"`);e[o]&&(r[o]=n.shape[o])}return st(t,{...t._zod.def,shape:r,checks:[]})}function 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 st(t,{...t._zod.def,shape:r,checks:[]})}function KS(t,e){if(!On(e))throw new Error("Invalid input to extend: expected a plain object");let r={...t._zod.def,get shape(){let n={...t._zod.def.shape,...e};return Wa(this,"shape",n),n},checks:[]};return st(t,r)}function WS(t,e){return st(t,{...t._zod.def,get shape(){let r={...t._zod.def.shape,...e._zod.def.shape};return Wa(this,"shape",r),r},catchall:e._zod.def.catchall,checks:[]})}function JS(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in n))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=t?new t({type:"optional",innerType:n[s]}):n[s])}else for(let s in n)o[s]=t?new t({type:"optional",innerType:n[s]}):n[s];return st(e,{...e._zod.def,shape:o,checks:[]})}function GS(t,e,r){let n=e._zod.def.shape,o={...n};if(r)for(let s in r){if(!(s in o))throw new Error(`Unrecognized key: "${s}"`);r[s]&&(o[s]=new t({type:"nonoptional",innerType:n[s]}))}else for(let s in n)o[s]=new t({type:"nonoptional",innerType:n[s]});return st(e,{...e._zod.def,shape:o,checks:[]})}function Yr(t,e=0){for(let r=e;r<t.issues.length;r++)if(t.issues[r]?.continue!==!0)return!0;return!1}function Lt(t,e){return e.map(r=>{var n;return(n=r).path??(n.path=[]),r.path.unshift(t),r})}function xo(t){return typeof t=="string"?t:t?.message}function wt(t,e,r){let n={...t,path:t.path??[]};if(!t.message){let o=xo(t.inst?._zod.def?.error?.(t))??xo(e?.error?.(t))??xo(r.customError?.(t))??xo(r.localeError?.(t))??"Invalid input";n.message=o}return delete n.inst,delete n.continue,e?.reportInput||delete n.input,n}function Ff(t){return t instanceof Set?"set":t instanceof Map?"map":t instanceof File?"file":"unknown"}function wo(t){return Array.isArray(t)?"array":typeof t=="string"?"string":"unknown"}function Qa(...t){let[e,r,n]=t;return typeof e=="string"?{message:e,code:"custom",input:r,inst:n}:{...e}}function YS(t){return Object.entries(t).filter(([e,r])=>Number.isNaN(Number.parseInt(e,10))).map(e=>e[1])}var Ba=class{constructor(...e){}};var Bf=(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,Va,2)},enumerable:!0}),Object.defineProperty(t,"toString",{value:()=>t.message,enumerable:!1})},Ls=v("$ZodError",Bf),Eo=v("$ZodError",Bf,{Parent:Error});function ec(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 tc(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 rc=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 Qt;if(i.issues.length){let a=new(o?.Err??t)(i.issues.map(c=>wt(c,s,ot())));throw Ms(a,o?.callee),a}return i.value},nc=rc(Eo),oc=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=>wt(c,s,ot())));throw Ms(a,o?.callee),a}return i.value},sc=oc(Eo),ic=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 Qt;return s.issues.length?{success:!1,error:new(t??Ls)(s.issues.map(i=>wt(i,o,ot())))}:{success:!0,data:s.value}},Xr=ic(Eo),ac=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=>wt(i,o,ot())))}:{success:!0,data:s.value}},Qr=ac(Eo);var Vf=/^[cC][^\s-]{8,}$/,Kf=/^[0-9a-z]+$/,Wf=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,Jf=/^[0-9a-vA-V]{20}$/,Gf=/^[A-Za-z0-9]{27}$/,Yf=/^[a-zA-Z0-9_-]{21}$/,Xf=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/;var Qf=/^([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})$/,cc=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 em=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/;var QS="^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$";function tm(){return new RegExp(QS,"u")}var rm=/^(?:(?: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])$/,nm=/^(([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})$/,om=/^((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])$/,sm=/^(([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])$/,im=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,uc=/^[A-Za-z0-9_-]*$/,am=/^([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+$/;var cm=/^\+(?:[0-9]){6,14}[0-9]$/,um="(?:(?:\\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])))",lm=new RegExp(`^${um}$`);function dm(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 pm(t){return new RegExp(`^${dm(t)}$`)}function fm(t){let e=dm({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(`^${um}T(?:${n})$`)}var mm=t=>{let e=t?`[\\s\\S]{${t?.minimum??0},${t?.maximum??""}}`:"[\\s\\S]*";return new RegExp(`^${e}$`)};var hm=/^\d+$/,gm=/^-?\d+(?:\.\d+)?/i,_m=/true|false/i,ym=/null/i;var xm=/^[^A-Z]*$/,vm=/^[^a-z]*$/;var Ce=v("$ZodCheck",(t,e)=>{var r;t._zod??(t._zod={}),t._zod.def=e,(r=t._zod).onattach??(r.onattach=[])}),km={number:"number",bigint:"bigint",object:"date"},lc=v("$ZodCheckLessThan",(t,e)=>{Ce.init(t,e);let r=km[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})}}),dc=v("$ZodCheckGreaterThan",(t,e)=>{Ce.init(t,e);let r=km[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=v("$ZodCheckMultipleOf",(t,e)=>{Ce.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):Ka(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})}}),bm=v("$ZodCheckNumberFormat",(t,e)=>{Ce.init(t,e),e.format=e.format||"float64";let r=e.format?.includes("int"),n=r?"int":"number",[o,s]=Xa[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=hm)}),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 wm=v("$ZodCheckMaxLength",(t,e)=>{var r;Ce.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!So(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=wo(o);n.issues.push({origin:i,code:"too_big",maximum:e.maximum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Em=v("$ZodCheckMinLength",(t,e)=>{var r;Ce.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!So(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=wo(o);n.issues.push({origin:i,code:"too_small",minimum:e.minimum,inclusive:!0,input:o,inst:t,continue:!e.abort})}}),Tm=v("$ZodCheckLengthEquals",(t,e)=>{var r;Ce.init(t,e),(r=t._zod.def).when??(r.when=n=>{let o=n.value;return!So(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=wo(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})}}),To=v("$ZodCheckStringFormat",(t,e)=>{var r,n;Ce.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=()=>{})}),$m=v("$ZodCheckRegex",(t,e)=>{To.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})}}),Pm=v("$ZodCheckLowerCase",(t,e)=>{e.pattern??(e.pattern=xm),To.init(t,e)}),Rm=v("$ZodCheckUpperCase",(t,e)=>{e.pattern??(e.pattern=vm),To.init(t,e)}),Om=v("$ZodCheckIncludes",(t,e)=>{Ce.init(t,e);let r=pr(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})}}),Cm=v("$ZodCheckStartsWith",(t,e)=>{Ce.init(t,e);let r=new RegExp(`^${pr(e.prefix)}.*`);e.pattern??(e.pattern=r),t._zod.onattach.push(n=>{let o=n._zod.bag;o.patterns??(o.patterns=new Set),o.patterns.add(r)}),t._zod.check=n=>{n.value.startsWith(e.prefix)||n.issues.push({origin:"string",code:"invalid_format",format:"starts_with",prefix:e.prefix,input:n.value,inst:t,continue:!e.abort})}}),Im=v("$ZodCheckEndsWith",(t,e)=>{Ce.init(t,e);let r=new RegExp(`.*${pr(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 Nm=v("$ZodCheckOverwrite",(t,e)=>{Ce.init(t,e),t._zod.check=r=>{r.value=e.tx(r.value)}});var Us=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),this.indent-=1}write(e){if(typeof e=="function"){e(this,{execution:"sync"}),e(this,{execution:"async"});return}let n=e.split(`
26
26
  `).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(`
27
- `))}};var Am={major:4,minor:0,patch:0};var oe=v("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Am;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=Gr(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,f=l._zod.check(s);if(f instanceof Promise&&a?.async===!1)throw new Xt;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=Gr(s,d)))});else{if(s.issues.length===d)continue;c||(c=Gr(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 Xt;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Yr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Xr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),$o=v("$ZodString",(t,e)=>{oe.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??mm(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),ue=v("$ZodStringFormat",(t,e)=>{To.init(t,e),$o.init(t,e)}),pc=v("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Qf),ue.init(t,e)}),fc=v("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=ac(n))}else e.pattern??(e.pattern=ac());ue.init(t,e)}),mc=v("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=em),ue.init(t,e)}),hc=v("$ZodURL",(t,e)=>{ue.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:am.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})}}}),gc=v("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=tm()),ue.init(t,e)}),_c=v("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Yf),ue.init(t,e)}),yc=v("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Vf),ue.init(t,e)}),xc=v("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Kf),ue.init(t,e)}),vc=v("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Wf),ue.init(t,e)}),kc=v("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Jf),ue.init(t,e)}),Sc=v("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Gf),ue.init(t,e)}),Bm=v("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=fm(e)),ue.init(t,e)}),Vm=v("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=lm),ue.init(t,e)}),Km=v("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=pm(e)),ue.init(t,e)}),Wm=v("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Xf),ue.init(t,e)}),bc=v("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=rm),ue.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),wc=v("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=nm),ue.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),Ec=v("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=om),ue.init(t,e)}),Tc=v("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=sm),ue.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Jm(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var $c=v("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=im),ue.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Jm(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function eb(t){if(!cc.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Jm(r)}var Pc=v("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=cc),ue.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{eb(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Rc=v("$ZodE164",(t,e)=>{e.pattern??(e.pattern=cm),ue.init(t,e)});function tb(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||e&&(!("alg"in o)||o.alg!==e))}catch{return!1}}var Oc=v("$ZodJWT",(t,e)=>{ue.init(t,e),t._zod.check=r=>{tb(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var qs=v("$ZodNumber",(t,e)=>{oe.init(t,e),t._zod.pattern=t._zod.bag.pattern??gm,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}}),Cc=v("$ZodNumber",(t,e)=>{bm.init(t,e),qs.init(t,e)}),Ic=v("$ZodBoolean",(t,e)=>{oe.init(t,e),t._zod.pattern=_m,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 Nc=v("$ZodNull",(t,e)=>{oe.init(t,e),t._zod.pattern=ym,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 zc=v("$ZodUnknown",(t,e)=>{oe.init(t,e),t._zod.parse=r=>r}),Ac=v("$ZodNever",(t,e)=>{oe.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function jm(t,e,r){t.issues.length&&e.issues.push(...Dt(r,t.issues)),e.value[r]=t.value}var jc=v("$ZodArray",(t,e)=>{oe.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=>jm(u,r,i))):jm(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Hs(t,e,r){t.issues.length&&e.issues.push(...Dt(r,t.issues)),e.value[r]=t.value}function Mm(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(...Dt(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Fs=v("$ZodObject",(t,e)=>{oe.init(t,e);let r=ko(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof oe))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=Ga(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});ce(t._zod,"propValues",()=>{let d=e.shape,f={};for(let m in d){let p=d[m]._zod;if(p.values){f[m]??(f[m]=new Set);for(let h of p.values)f[m].add(h)}}return f});let n=d=>{let f=new Us(["shape","payload","ctx"]),m=r.value,p=x=>{let k=Jr(x);return`shape[${k}]._zod.run({ value: input[${k}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),g=0;for(let x of m.keys)h[x]=`key_${g++}`;f.write("const newResult = {}");for(let x of m.keys)if(m.optionalKeys.has(x)){let k=h[x];f.write(`const ${k} = ${p(x)};`);let w=Jr(x);f.write(`
27
+ `))}};var Am={major:4,minor:0,patch:0};var oe=v("$ZodType",(t,e)=>{var r;t??(t={}),t._zod.def=e,t._zod.bag=t._zod.bag||{},t._zod.version=Am;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=Yr(s),u;for(let l of i){if(l._zod.def.when){if(!l._zod.def.when(s))continue}else if(c)continue;let d=s.issues.length,f=l._zod.check(s);if(f instanceof Promise&&a?.async===!1)throw new Qt;if(u||f instanceof Promise)u=(u??Promise.resolve()).then(async()=>{await f,s.issues.length!==d&&(c||(c=Yr(s,d)))});else{if(s.issues.length===d)continue;c||(c=Yr(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 Qt;return a.then(c=>o(c,n,i))}return o(a,n,i)}}t["~standard"]={validate:o=>{try{let s=Xr(t,o);return s.success?{value:s.data}:{issues:s.error?.issues}}catch{return Qr(t,o).then(i=>i.success?{value:i.data}:{issues:i.error?.issues})}},vendor:"zod",version:1}}),$o=v("$ZodString",(t,e)=>{oe.init(t,e),t._zod.pattern=[...t?._zod.bag?.patterns??[]].pop()??mm(t._zod.bag),t._zod.parse=(r,n)=>{if(e.coerce)try{r.value=String(r.value)}catch{}return typeof r.value=="string"||r.issues.push({expected:"string",code:"invalid_type",input:r.value,inst:t}),r}}),ue=v("$ZodStringFormat",(t,e)=>{To.init(t,e),$o.init(t,e)}),fc=v("$ZodGUID",(t,e)=>{e.pattern??(e.pattern=Qf),ue.init(t,e)}),mc=v("$ZodUUID",(t,e)=>{if(e.version){let n={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[e.version];if(n===void 0)throw new Error(`Invalid UUID version: "${e.version}"`);e.pattern??(e.pattern=cc(n))}else e.pattern??(e.pattern=cc());ue.init(t,e)}),hc=v("$ZodEmail",(t,e)=>{e.pattern??(e.pattern=em),ue.init(t,e)}),gc=v("$ZodURL",(t,e)=>{ue.init(t,e),t._zod.check=r=>{try{let n=r.value,o=new URL(n),s=o.href;e.hostname&&(e.hostname.lastIndex=0,e.hostname.test(o.hostname)||r.issues.push({code:"invalid_format",format:"url",note:"Invalid hostname",pattern:am.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})}}}),_c=v("$ZodEmoji",(t,e)=>{e.pattern??(e.pattern=tm()),ue.init(t,e)}),yc=v("$ZodNanoID",(t,e)=>{e.pattern??(e.pattern=Yf),ue.init(t,e)}),xc=v("$ZodCUID",(t,e)=>{e.pattern??(e.pattern=Vf),ue.init(t,e)}),vc=v("$ZodCUID2",(t,e)=>{e.pattern??(e.pattern=Kf),ue.init(t,e)}),kc=v("$ZodULID",(t,e)=>{e.pattern??(e.pattern=Wf),ue.init(t,e)}),Sc=v("$ZodXID",(t,e)=>{e.pattern??(e.pattern=Jf),ue.init(t,e)}),bc=v("$ZodKSUID",(t,e)=>{e.pattern??(e.pattern=Gf),ue.init(t,e)}),Bm=v("$ZodISODateTime",(t,e)=>{e.pattern??(e.pattern=fm(e)),ue.init(t,e)}),Vm=v("$ZodISODate",(t,e)=>{e.pattern??(e.pattern=lm),ue.init(t,e)}),Km=v("$ZodISOTime",(t,e)=>{e.pattern??(e.pattern=pm(e)),ue.init(t,e)}),Wm=v("$ZodISODuration",(t,e)=>{e.pattern??(e.pattern=Xf),ue.init(t,e)}),wc=v("$ZodIPv4",(t,e)=>{e.pattern??(e.pattern=rm),ue.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv4"})}),Ec=v("$ZodIPv6",(t,e)=>{e.pattern??(e.pattern=nm),ue.init(t,e),t._zod.onattach.push(r=>{let n=r._zod.bag;n.format="ipv6"}),t._zod.check=r=>{try{new URL(`http://[${r.value}]`)}catch{r.issues.push({code:"invalid_format",format:"ipv6",input:r.value,inst:t,continue:!e.abort})}}}),Tc=v("$ZodCIDRv4",(t,e)=>{e.pattern??(e.pattern=om),ue.init(t,e)}),$c=v("$ZodCIDRv6",(t,e)=>{e.pattern??(e.pattern=sm),ue.init(t,e),t._zod.check=r=>{let[n,o]=r.value.split("/");try{if(!o)throw new Error;let s=Number(o);if(`${s}`!==o)throw new Error;if(s<0||s>128)throw new Error;new URL(`http://[${n}]`)}catch{r.issues.push({code:"invalid_format",format:"cidrv6",input:r.value,inst:t,continue:!e.abort})}}});function Jm(t){if(t==="")return!0;if(t.length%4!==0)return!1;try{return atob(t),!0}catch{return!1}}var Pc=v("$ZodBase64",(t,e)=>{e.pattern??(e.pattern=im),ue.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64"}),t._zod.check=r=>{Jm(r.value)||r.issues.push({code:"invalid_format",format:"base64",input:r.value,inst:t,continue:!e.abort})}});function eb(t){if(!uc.test(t))return!1;let e=t.replace(/[-_]/g,n=>n==="-"?"+":"/"),r=e.padEnd(Math.ceil(e.length/4)*4,"=");return Jm(r)}var Rc=v("$ZodBase64URL",(t,e)=>{e.pattern??(e.pattern=uc),ue.init(t,e),t._zod.onattach.push(r=>{r._zod.bag.contentEncoding="base64url"}),t._zod.check=r=>{eb(r.value)||r.issues.push({code:"invalid_format",format:"base64url",input:r.value,inst:t,continue:!e.abort})}}),Oc=v("$ZodE164",(t,e)=>{e.pattern??(e.pattern=cm),ue.init(t,e)});function tb(t,e=null){try{let r=t.split(".");if(r.length!==3)return!1;let[n]=r;if(!n)return!1;let o=JSON.parse(atob(n));return!("typ"in o&&o?.typ!=="JWT"||!o.alg||e&&(!("alg"in o)||o.alg!==e))}catch{return!1}}var Cc=v("$ZodJWT",(t,e)=>{ue.init(t,e),t._zod.check=r=>{tb(r.value,e.alg)||r.issues.push({code:"invalid_format",format:"jwt",input:r.value,inst:t,continue:!e.abort})}});var qs=v("$ZodNumber",(t,e)=>{oe.init(t,e),t._zod.pattern=t._zod.bag.pattern??gm,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}}),Ic=v("$ZodNumber",(t,e)=>{bm.init(t,e),qs.init(t,e)}),Nc=v("$ZodBoolean",(t,e)=>{oe.init(t,e),t._zod.pattern=_m,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 zc=v("$ZodNull",(t,e)=>{oe.init(t,e),t._zod.pattern=ym,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 Ac=v("$ZodUnknown",(t,e)=>{oe.init(t,e),t._zod.parse=r=>r}),jc=v("$ZodNever",(t,e)=>{oe.init(t,e),t._zod.parse=(r,n)=>(r.issues.push({expected:"never",code:"invalid_type",input:r.value,inst:t}),r)});function jm(t,e,r){t.issues.length&&e.issues.push(...Lt(r,t.issues)),e.value[r]=t.value}var Mc=v("$ZodArray",(t,e)=>{oe.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=>jm(u,r,i))):jm(c,r,i)}return s.length?Promise.all(s).then(()=>r):r}});function Hs(t,e,r){t.issues.length&&e.issues.push(...Lt(r,t.issues)),e.value[r]=t.value}function Mm(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(...Lt(r,t.issues)):t.value===void 0?r in n&&(e.value[r]=void 0):e.value[r]=t.value}var Fs=v("$ZodObject",(t,e)=>{oe.init(t,e);let r=ko(()=>{let d=Object.keys(e.shape);for(let m of d)if(!(e.shape[m]instanceof oe))throw new Error(`Invalid element at key "${m}": expected a Zod schema`);let f=Ya(e.shape);return{shape:e.shape,keys:d,keySet:new Set(d),numKeys:d.length,optionalKeys:new Set(f)}});ce(t._zod,"propValues",()=>{let d=e.shape,f={};for(let m in d){let p=d[m]._zod;if(p.values){f[m]??(f[m]=new Set);for(let h of p.values)f[m].add(h)}}return f});let n=d=>{let f=new Us(["shape","payload","ctx"]),m=r.value,p=y=>{let k=Gr(y);return`shape[${k}]._zod.run({ value: input[${k}], issues: [] }, ctx)`};f.write("const input = payload.value;");let h=Object.create(null),g=0;for(let y of m.keys)h[y]=`key_${g++}`;f.write("const newResult = {}");for(let y of m.keys)if(m.optionalKeys.has(y)){let k=h[y];f.write(`const ${k} = ${p(y)};`);let w=Gr(y);f.write(`
28
28
  if (${k}.issues.length) {
29
29
  if (input[${w}] === undefined) {
30
30
  if (${w} in input) {
@@ -43,20 +43,20 @@ Use context-mode MCP tools (execute, execute_file, batch_execute, fetch_and_inde
43
43
  } else {
44
44
  newResult[${w}] = ${k}.value;
45
45
  }
46
- `)}else{let k=h[x];f.write(`const ${k} = ${p(x)};`),f.write(`
46
+ `)}else{let k=h[y];f.write(`const ${k} = ${p(y)};`),f.write(`
47
47
  if (${k}.issues.length) payload.issues = payload.issues.concat(${k}.issues.map(iss => ({
48
48
  ...iss,
49
- path: iss.path ? [${Jr(x)}, ...iss.path] : [${Jr(x)}]
50
- })));`),f.write(`newResult[${Jr(x)}] = ${k}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let y=f.compile();return(x,k)=>y(d,x,k)},o,s=Rn,i=!As.jitless,c=i&&Wa.value,u=e.catchall,l;t._zod.parse=(d,f)=>{l??(l=r.value);let m=d.value;if(!s(m))return d.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),d;let p=[];if(i&&c&&f?.async===!1&&f.jitless!==!0)o||(o=n(e.shape)),d=o(d,f);else{d.value={};let k=l.shape;for(let w of l.keys){let O=k[w],G=O._zod.run({value:m[w],issues:[]},f),$e=O._zod.optin==="optional"&&O._zod.optout==="optional";G instanceof Promise?p.push(G.then(K=>$e?Mm(K,d,w,m):Hs(K,d,w))):$e?Mm(G,d,w,m):Hs(G,d,w)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,y=u._zod,x=y.def.type;for(let k of Object.keys(m)){if(g.has(k))continue;if(x==="never"){h.push(k);continue}let w=y.run({value:m[k],issues:[]},f);w instanceof Promise?p.push(w.then(O=>Hs(O,d,k))):Hs(w,d,k)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function Dm(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=>bt(s,n,ot())))}),e}var Bs=v("$ZodUnion",(t,e)=>{oe.init(t,e),ce(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ce(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ce(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ce(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>bo(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=>Dm(i,r,t,n)):Dm(s,r,t,n)}}),Mc=v("$ZodDiscriminatedUnion",(t,e)=>{Bs.init(t,e);let r=t._zod.parse;ce(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=ko(()=>{let o=e.options,s=new Map;for(let i of o){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!Rn(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),Dc=v("$ZodIntersection",(t,e)=>{oe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>Lm(r,c,u)):Lm(r,s,i)}});function dc(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(On(t)&&On(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=dc(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=dc(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Lm(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Gr(t))return t;let n=dc(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 Lc=v("$ZodRecord",(t,e)=>{oe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!On(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(...Dt(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Dt(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=>bt(u,n,ot())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Dt(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Dt(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Zc=v("$ZodEnum",(t,e)=>{oe.init(t,e);let r=vo(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ja.has(typeof n)).map(n=>typeof n=="string"?lr(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}}),Uc=v("$ZodLiteral",(t,e)=>{oe.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?lr(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 Hc=v("$ZodTransform",(t,e)=>{oe.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 Xt;return r.value=o,r}}),qc=v("$ZodOptional",(t,e)=>{oe.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ce(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ce(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${bo(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)}),Fc=v("$ZodNullable",(t,e)=>{oe.init(t,e),ce(t._zod,"optin",()=>e.innerType._zod.optin),ce(t._zod,"optout",()=>e.innerType._zod.optout),ce(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${bo(r.source)}|null)$`):void 0}),ce(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),Bc=v("$ZodDefault",(t,e)=>{oe.init(t,e),t._zod.optin="optional",ce(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Zm(s,e)):Zm(o,e)}});function Zm(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Vc=v("$ZodPrefault",(t,e)=>{oe.init(t,e),t._zod.optin="optional",ce(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Kc=v("$ZodNonOptional",(t,e)=>{oe.init(t,e),ce(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Um(s,t)):Um(o,t)}});function Um(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=v("$ZodCatch",(t,e)=>{oe.init(t,e),t._zod.optin="optional",ce(t._zod,"optout",()=>e.innerType._zod.optout),ce(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>bt(i,n,ot()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>bt(s,n,ot()))},input:r.value}),r.issues=[]),r)}});var Jc=v("$ZodPipe",(t,e)=>{oe.init(t,e),ce(t._zod,"values",()=>e.in._zod.values),ce(t._zod,"optin",()=>e.in._zod.optin),ce(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>Hm(s,e,n)):Hm(o,e,n)}});function Hm(t,e,r){return Gr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Gc=v("$ZodReadonly",(t,e)=>{oe.init(t,e),ce(t._zod,"propValues",()=>e.innerType._zod.propValues),ce(t._zod,"values",()=>e.innerType._zod.values),ce(t._zod,"optin",()=>e.innerType._zod.optin),ce(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(qm):qm(o)}});function qm(t){return t.value=Object.freeze(t.value),t}var Yc=v("$ZodCustom",(t,e)=>{Ce.init(t,e),oe.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=>Fm(s,r,n,t));Fm(o,r,n,t)}});function Fm(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(Xa(o))}}var rb=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},nb=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${rb(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Ds(n.values[0])}`:`Invalid option: expected one of ${js(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${js(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Gm(){return{localeError:nb()}}var Po=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 Ym(){return new Po}var dr=Ym();function Xc(t,e){return new t({type:"string",...j(e)})}function Qc(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Vs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function eu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function tu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function ru(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function nu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function ou(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function su(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function iu(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function uu(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function lu(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function du(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function pu(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function fu(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function mu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function hu(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function gu(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function _u(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function yu(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function xu(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function Xm(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function Qm(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function eh(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function th(t,e){return new t({type:"string",format:"duration",check:"string_format",...j(e)})}function vu(t,e){return new t({type:"number",checks:[],...j(e)})}function ku(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function Su(t,e){return new t({type:"boolean",...j(e)})}function bu(t,e){return new t({type:"null",...j(e)})}function wu(t){return new t({type:"unknown"})}function Eu(t,e){return new t({type:"never",...j(e)})}function Ks(t,e){return new uc({check:"less_than",...j(e),value:t,inclusive:!1})}function Ro(t,e){return new uc({check:"less_than",...j(e),value:t,inclusive:!0})}function Ws(t,e){return new lc({check:"greater_than",...j(e),value:t,inclusive:!1})}function Oo(t,e){return new lc({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 wm({check:"max_length",...j(e),maximum:t})}function Cn(t,e){return new Em({check:"min_length",...j(e),minimum:t})}function Ys(t,e){return new Tm({check:"length_equals",...j(e),length:t})}function Tu(t,e){return new $m({check:"string_format",format:"regex",...j(e),pattern:t})}function $u(t){return new Pm({check:"string_format",format:"lowercase",...j(t)})}function Pu(t){return new Rm({check:"string_format",format:"uppercase",...j(t)})}function Ru(t,e){return new Om({check:"string_format",format:"includes",...j(e),includes:t})}function Ou(t,e){return new Cm({check:"string_format",format:"starts_with",...j(e),prefix:t})}function Cu(t,e){return new Im({check:"string_format",format:"ends_with",...j(e),suffix:t})}function Qr(t){return new Nm({check:"overwrite",tx:t})}function Iu(t){return Qr(e=>e.normalize(t))}function Nu(){return Qr(t=>t.trim())}function zu(){return Qr(t=>t.toLowerCase())}function Au(){return Qr(t=>t.toUpperCase())}function rh(t,e,r){return new t({type:"array",element:e,...j(r)})}function ju(t,e,r){let n=j(r);return n.abort??(n.abort=!0),new t({type:"custom",check:"custom",fn:e,...n})}function Mu(t,e,r){return new t({type:"custom",check:"custom",fn:e,...j(r)})}var Xs=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??dr,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},f=e._zod.parent;if(f)a.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{let m=a.schema;switch(o.type){case"string":{let p=m;p.type="string";let{minimum:h,maximum:g,format:y,patterns:x,contentEncoding:k}=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),k&&(p.contentEncoding=k),x&&x.size>0){let w=[...x];w.length===1?p.pattern=w[0].source:w.length>1&&(a.schema.allOf=[...w.map(O=>({...this.target==="draft-7"?{type:"string"}:{},pattern:O.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:y,multipleOf:x,exclusiveMaximum:k,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 k=="number"&&(p.exclusiveMaximum=k),typeof g=="number"&&(p.maximum=g,typeof k=="number"&&(k<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof x=="number"&&(p.multipleOf=x);break}case"boolean":{let p=m;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{m.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{m.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=m,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=m;p.type="object",p.properties={};let h=o.shape;for(let x in h)p.properties[x]=this.process(h[x],{...d,path:[...d.path,"properties",x]});let g=new Set(Object.keys(h)),y=new Set([...g].filter(x=>{let k=o.shape[x]._zod;return this.io==="input"?k.optin===void 0:k.optout===void 0}));y.size>0&&(p.required=Array.from(y)),o.catchall?._zod.def.type==="never"?p.additionalProperties=!1:o.catchall?o.catchall&&(p.additionalProperties=this.process(o.catchall,{...d,path:[...d.path,"additionalProperties"]})):this.io==="output"&&(p.additionalProperties=!1);break}case"union":{let p=m;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=m,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),y=k=>"allOf"in k&&Object.keys(k).length===1,x=[...y(h)?h.allOf:[h],...y(g)?g.allOf:[g]];p.allOf=x;break}case"tuple":{let p=m;p.type="array";let h=o.items.map((x,k)=>this.process(x,{...d,path:[...d.path,"prefixItems",k]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let x=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=x:p.additionalItems=x}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:y}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof y=="number"&&(p.maxItems=y);break}case"record":{let p=m;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=m,h=vo(o.entries);h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),p.enum=h;break}case"literal":{let p=m,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];p.type=g===null?"null":typeof g,p.const=g}else h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),h.every(g=>typeof g=="boolean")&&(p.type="string"),h.every(g=>g===null)&&(p.type="null"),p.enum=h;break}case"file":{let p=m,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:y,mime:x}=e._zod.bag;g!==void 0&&(h.minLength=g),y!==void 0&&(h.maxLength=y),x?x.length===1?(h.contentMediaType=x[0],Object.assign(p,h)):p.anyOf=x.map(k=>({...h,contentMediaType:k})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);m.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=m;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,m.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}m.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=m,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=h.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,m.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&Pe(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(x=>x);if(h)return{ref:g(h)};let y=l[1].defId??l[1].schema.id??`schema${this.counter++}`;return l[1].defId=y,{defId:y,ref:`${g("__shared")}#/${d}/${y}`}}if(l[1]===o)return{ref:"#"};let m=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:m+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:f,defId:m}=s(l);d.def={...d.schema},m&&(d.defId=m);let p=d.schema;for(let h in p)delete p[h];p.$ref=f};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
49
+ path: iss.path ? [${Gr(y)}, ...iss.path] : [${Gr(y)}]
50
+ })));`),f.write(`newResult[${Gr(y)}] = ${k}.value`)}f.write("payload.value = newResult;"),f.write("return payload;");let x=f.compile();return(y,k)=>x(d,y,k)},o,s=Rn,i=!As.jitless,c=i&&Ja.value,u=e.catchall,l;t._zod.parse=(d,f)=>{l??(l=r.value);let m=d.value;if(!s(m))return d.issues.push({expected:"object",code:"invalid_type",input:m,inst:t}),d;let p=[];if(i&&c&&f?.async===!1&&f.jitless!==!0)o||(o=n(e.shape)),d=o(d,f);else{d.value={};let k=l.shape;for(let w of l.keys){let O=k[w],G=O._zod.run({value:m[w],issues:[]},f),$e=O._zod.optin==="optional"&&O._zod.optout==="optional";G instanceof Promise?p.push(G.then(K=>$e?Mm(K,d,w,m):Hs(K,d,w))):$e?Mm(G,d,w,m):Hs(G,d,w)}}if(!u)return p.length?Promise.all(p).then(()=>d):d;let h=[],g=l.keySet,x=u._zod,y=x.def.type;for(let k of Object.keys(m)){if(g.has(k))continue;if(y==="never"){h.push(k);continue}let w=x.run({value:m[k],issues:[]},f);w instanceof Promise?p.push(w.then(O=>Hs(O,d,k))):Hs(w,d,k)}return h.length&&d.issues.push({code:"unrecognized_keys",keys:h,input:m,inst:t}),p.length?Promise.all(p).then(()=>d):d}});function Dm(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=>wt(s,n,ot())))}),e}var Bs=v("$ZodUnion",(t,e)=>{oe.init(t,e),ce(t._zod,"optin",()=>e.options.some(r=>r._zod.optin==="optional")?"optional":void 0),ce(t._zod,"optout",()=>e.options.some(r=>r._zod.optout==="optional")?"optional":void 0),ce(t._zod,"values",()=>{if(e.options.every(r=>r._zod.values))return new Set(e.options.flatMap(r=>Array.from(r._zod.values)))}),ce(t._zod,"pattern",()=>{if(e.options.every(r=>r._zod.pattern)){let r=e.options.map(n=>n._zod.pattern);return new RegExp(`^(${r.map(n=>bo(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=>Dm(i,r,t,n)):Dm(s,r,t,n)}}),Dc=v("$ZodDiscriminatedUnion",(t,e)=>{Bs.init(t,e);let r=t._zod.parse;ce(t._zod,"propValues",()=>{let o={};for(let s of e.options){let i=s._zod.propValues;if(!i||Object.keys(i).length===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(s)}"`);for(let[a,c]of Object.entries(i)){o[a]||(o[a]=new Set);for(let u of c)o[a].add(u)}}return o});let n=ko(()=>{let o=e.options,s=new Map;for(let i of o){let a=i._zod.propValues[e.discriminator];if(!a||a.size===0)throw new Error(`Invalid discriminated union option at index "${e.options.indexOf(i)}"`);for(let c of a){if(s.has(c))throw new Error(`Duplicate discriminator value "${String(c)}"`);s.set(c,i)}}return s});t._zod.parse=(o,s)=>{let i=o.value;if(!Rn(i))return o.issues.push({code:"invalid_type",expected:"object",input:i,inst:t}),o;let a=n.value.get(i?.[e.discriminator]);return a?a._zod.run(o,s):e.unionFallback?r(o,s):(o.issues.push({code:"invalid_union",errors:[],note:"No matching discriminator",input:i,path:[e.discriminator],inst:t}),o)}}),Lc=v("$ZodIntersection",(t,e)=>{oe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value,s=e.left._zod.run({value:o,issues:[]},n),i=e.right._zod.run({value:o,issues:[]},n);return s instanceof Promise||i instanceof Promise?Promise.all([s,i]).then(([c,u])=>Lm(r,c,u)):Lm(r,s,i)}});function pc(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(On(t)&&On(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=pc(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=pc(o,s);if(!i.valid)return{valid:!1,mergeErrorPath:[n,...i.mergeErrorPath]};r.push(i.data)}return{valid:!0,data:r}}return{valid:!1,mergeErrorPath:[]}}function Lm(t,e,r){if(e.issues.length&&t.issues.push(...e.issues),r.issues.length&&t.issues.push(...r.issues),Yr(t))return t;let n=pc(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 Zc=v("$ZodRecord",(t,e)=>{oe.init(t,e),t._zod.parse=(r,n)=>{let o=r.value;if(!On(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(...Lt(c,l.issues)),r.value[c]=l.value})):(u.issues.length&&r.issues.push(...Lt(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=>wt(u,n,ot())),input:i,path:[i],inst:t}),r.value[a.value]=a.value;continue}let c=e.valueType._zod.run({value:o[i],issues:[]},n);c instanceof Promise?s.push(c.then(u=>{u.issues.length&&r.issues.push(...Lt(i,u.issues)),r.value[a.value]=u.value})):(c.issues.length&&r.issues.push(...Lt(i,c.issues)),r.value[a.value]=c.value)}}return s.length?Promise.all(s).then(()=>r):r}});var Uc=v("$ZodEnum",(t,e)=>{oe.init(t,e);let r=vo(e.entries);t._zod.values=new Set(r),t._zod.pattern=new RegExp(`^(${r.filter(n=>Ga.has(typeof n)).map(n=>typeof n=="string"?pr(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}}),Hc=v("$ZodLiteral",(t,e)=>{oe.init(t,e),t._zod.values=new Set(e.values),t._zod.pattern=new RegExp(`^(${e.values.map(r=>typeof r=="string"?pr(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 qc=v("$ZodTransform",(t,e)=>{oe.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 Qt;return r.value=o,r}}),Fc=v("$ZodOptional",(t,e)=>{oe.init(t,e),t._zod.optin="optional",t._zod.optout="optional",ce(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,void 0]):void 0),ce(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${bo(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)}),Bc=v("$ZodNullable",(t,e)=>{oe.init(t,e),ce(t._zod,"optin",()=>e.innerType._zod.optin),ce(t._zod,"optout",()=>e.innerType._zod.optout),ce(t._zod,"pattern",()=>{let r=e.innerType._zod.pattern;return r?new RegExp(`^(${bo(r.source)}|null)$`):void 0}),ce(t._zod,"values",()=>e.innerType._zod.values?new Set([...e.innerType._zod.values,null]):void 0),t._zod.parse=(r,n)=>r.value===null?r:e.innerType._zod.run(r,n)}),Vc=v("$ZodDefault",(t,e)=>{oe.init(t,e),t._zod.optin="optional",ce(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{if(r.value===void 0)return r.value=e.defaultValue,r;let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Zm(s,e)):Zm(o,e)}});function Zm(t,e){return t.value===void 0&&(t.value=e.defaultValue),t}var Kc=v("$ZodPrefault",(t,e)=>{oe.init(t,e),t._zod.optin="optional",ce(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>(r.value===void 0&&(r.value=e.defaultValue),e.innerType._zod.run(r,n))}),Wc=v("$ZodNonOptional",(t,e)=>{oe.init(t,e),ce(t._zod,"values",()=>{let r=e.innerType._zod.values;return r?new Set([...r].filter(n=>n!==void 0)):void 0}),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>Um(s,t)):Um(o,t)}});function Um(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 Jc=v("$ZodCatch",(t,e)=>{oe.init(t,e),t._zod.optin="optional",ce(t._zod,"optout",()=>e.innerType._zod.optout),ce(t._zod,"values",()=>e.innerType._zod.values),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(s=>(r.value=s.value,s.issues.length&&(r.value=e.catchValue({...r,error:{issues:s.issues.map(i=>wt(i,n,ot()))},input:r.value}),r.issues=[]),r)):(r.value=o.value,o.issues.length&&(r.value=e.catchValue({...r,error:{issues:o.issues.map(s=>wt(s,n,ot()))},input:r.value}),r.issues=[]),r)}});var Gc=v("$ZodPipe",(t,e)=>{oe.init(t,e),ce(t._zod,"values",()=>e.in._zod.values),ce(t._zod,"optin",()=>e.in._zod.optin),ce(t._zod,"optout",()=>e.out._zod.optout),t._zod.parse=(r,n)=>{let o=e.in._zod.run(r,n);return o instanceof Promise?o.then(s=>Hm(s,e,n)):Hm(o,e,n)}});function Hm(t,e,r){return Yr(t)?t:e.out._zod.run({value:t.value,issues:t.issues},r)}var Yc=v("$ZodReadonly",(t,e)=>{oe.init(t,e),ce(t._zod,"propValues",()=>e.innerType._zod.propValues),ce(t._zod,"values",()=>e.innerType._zod.values),ce(t._zod,"optin",()=>e.innerType._zod.optin),ce(t._zod,"optout",()=>e.innerType._zod.optout),t._zod.parse=(r,n)=>{let o=e.innerType._zod.run(r,n);return o instanceof Promise?o.then(qm):qm(o)}});function qm(t){return t.value=Object.freeze(t.value),t}var Xc=v("$ZodCustom",(t,e)=>{Ce.init(t,e),oe.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=>Fm(s,r,n,t));Fm(o,r,n,t)}});function Fm(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(Qa(o))}}var rb=t=>{let e=typeof t;switch(e){case"number":return Number.isNaN(t)?"NaN":"number";case"object":{if(Array.isArray(t))return"array";if(t===null)return"null";if(Object.getPrototypeOf(t)!==Object.prototype&&t.constructor)return t.constructor.name}}return e},nb=()=>{let t={string:{unit:"characters",verb:"to have"},file:{unit:"bytes",verb:"to have"},array:{unit:"items",verb:"to have"},set:{unit:"items",verb:"to have"}};function e(n){return t[n]??null}let r={regex:"input",email:"email address",url:"URL",emoji:"emoji",uuid:"UUID",uuidv4:"UUIDv4",uuidv6:"UUIDv6",nanoid:"nanoid",guid:"GUID",cuid:"cuid",cuid2:"cuid2",ulid:"ULID",xid:"XID",ksuid:"KSUID",datetime:"ISO datetime",date:"ISO date",time:"ISO time",duration:"ISO duration",ipv4:"IPv4 address",ipv6:"IPv6 address",cidrv4:"IPv4 range",cidrv6:"IPv6 range",base64:"base64-encoded string",base64url:"base64url-encoded string",json_string:"JSON string",e164:"E.164 number",jwt:"JWT",template_literal:"input"};return n=>{switch(n.code){case"invalid_type":return`Invalid input: expected ${n.expected}, received ${rb(n.input)}`;case"invalid_value":return n.values.length===1?`Invalid input: expected ${Ds(n.values[0])}`:`Invalid option: expected one of ${js(n.values,"|")}`;case"too_big":{let o=n.inclusive?"<=":"<",s=e(n.origin);return s?`Too big: expected ${n.origin??"value"} to have ${o}${n.maximum.toString()} ${s.unit??"elements"}`:`Too big: expected ${n.origin??"value"} to be ${o}${n.maximum.toString()}`}case"too_small":{let o=n.inclusive?">=":">",s=e(n.origin);return s?`Too small: expected ${n.origin} to have ${o}${n.minimum.toString()} ${s.unit}`:`Too small: expected ${n.origin} to be ${o}${n.minimum.toString()}`}case"invalid_format":{let o=n;return o.format==="starts_with"?`Invalid string: must start with "${o.prefix}"`:o.format==="ends_with"?`Invalid string: must end with "${o.suffix}"`:o.format==="includes"?`Invalid string: must include "${o.includes}"`:o.format==="regex"?`Invalid string: must match pattern ${o.pattern}`:`Invalid ${r[o.format]??n.format}`}case"not_multiple_of":return`Invalid number: must be a multiple of ${n.divisor}`;case"unrecognized_keys":return`Unrecognized key${n.keys.length>1?"s":""}: ${js(n.keys,", ")}`;case"invalid_key":return`Invalid key in ${n.origin}`;case"invalid_union":return"Invalid input";case"invalid_element":return`Invalid value in ${n.origin}`;default:return"Invalid input"}}};function Gm(){return{localeError:nb()}}var Po=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 Ym(){return new Po}var fr=Ym();function Qc(t,e){return new t({type:"string",...j(e)})}function eu(t,e){return new t({type:"string",format:"email",check:"string_format",abort:!1,...j(e)})}function Vs(t,e){return new t({type:"string",format:"guid",check:"string_format",abort:!1,...j(e)})}function tu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,...j(e)})}function ru(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v4",...j(e)})}function nu(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v6",...j(e)})}function ou(t,e){return new t({type:"string",format:"uuid",check:"string_format",abort:!1,version:"v7",...j(e)})}function su(t,e){return new t({type:"string",format:"url",check:"string_format",abort:!1,...j(e)})}function iu(t,e){return new t({type:"string",format:"emoji",check:"string_format",abort:!1,...j(e)})}function au(t,e){return new t({type:"string",format:"nanoid",check:"string_format",abort:!1,...j(e)})}function cu(t,e){return new t({type:"string",format:"cuid",check:"string_format",abort:!1,...j(e)})}function uu(t,e){return new t({type:"string",format:"cuid2",check:"string_format",abort:!1,...j(e)})}function lu(t,e){return new t({type:"string",format:"ulid",check:"string_format",abort:!1,...j(e)})}function du(t,e){return new t({type:"string",format:"xid",check:"string_format",abort:!1,...j(e)})}function pu(t,e){return new t({type:"string",format:"ksuid",check:"string_format",abort:!1,...j(e)})}function fu(t,e){return new t({type:"string",format:"ipv4",check:"string_format",abort:!1,...j(e)})}function mu(t,e){return new t({type:"string",format:"ipv6",check:"string_format",abort:!1,...j(e)})}function hu(t,e){return new t({type:"string",format:"cidrv4",check:"string_format",abort:!1,...j(e)})}function gu(t,e){return new t({type:"string",format:"cidrv6",check:"string_format",abort:!1,...j(e)})}function _u(t,e){return new t({type:"string",format:"base64",check:"string_format",abort:!1,...j(e)})}function yu(t,e){return new t({type:"string",format:"base64url",check:"string_format",abort:!1,...j(e)})}function xu(t,e){return new t({type:"string",format:"e164",check:"string_format",abort:!1,...j(e)})}function vu(t,e){return new t({type:"string",format:"jwt",check:"string_format",abort:!1,...j(e)})}function Xm(t,e){return new t({type:"string",format:"datetime",check:"string_format",offset:!1,local:!1,precision:null,...j(e)})}function Qm(t,e){return new t({type:"string",format:"date",check:"string_format",...j(e)})}function eh(t,e){return new t({type:"string",format:"time",check:"string_format",precision:null,...j(e)})}function th(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 Su(t,e){return new t({type:"number",check:"number_format",abort:!1,format:"safeint",...j(e)})}function bu(t,e){return new t({type:"boolean",...j(e)})}function wu(t,e){return new t({type:"null",...j(e)})}function Eu(t){return new t({type:"unknown"})}function Tu(t,e){return new t({type:"never",...j(e)})}function Ks(t,e){return new lc({check:"less_than",...j(e),value:t,inclusive:!1})}function Ro(t,e){return new lc({check:"less_than",...j(e),value:t,inclusive:!0})}function Ws(t,e){return new dc({check:"greater_than",...j(e),value:t,inclusive:!1})}function Oo(t,e){return new dc({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 wm({check:"max_length",...j(e),maximum:t})}function Cn(t,e){return new Em({check:"min_length",...j(e),minimum:t})}function Ys(t,e){return new Tm({check:"length_equals",...j(e),length:t})}function $u(t,e){return new $m({check:"string_format",format:"regex",...j(e),pattern:t})}function Pu(t){return new Pm({check:"string_format",format:"lowercase",...j(t)})}function Ru(t){return new Rm({check:"string_format",format:"uppercase",...j(t)})}function Ou(t,e){return new Om({check:"string_format",format:"includes",...j(e),includes:t})}function Cu(t,e){return new Cm({check:"string_format",format:"starts_with",...j(e),prefix:t})}function Iu(t,e){return new Im({check:"string_format",format:"ends_with",...j(e),suffix:t})}function en(t){return new Nm({check:"overwrite",tx:t})}function Nu(t){return en(e=>e.normalize(t))}function zu(){return en(t=>t.trim())}function Au(){return en(t=>t.toLowerCase())}function ju(){return en(t=>t.toUpperCase())}function rh(t,e,r){return new t({type:"array",element:e,...j(r)})}function Mu(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 Xs=class{constructor(e){this.counter=0,this.metadataRegistry=e?.metadata??fr,this.target=e?.target??"draft-2020-12",this.unrepresentable=e?.unrepresentable??"throw",this.override=e?.override??(()=>{}),this.io=e?.io??"output",this.seen=new Map}process(e,r={path:[],schemaPath:[]}){var n;let o=e._zod.def,s={guid:"uuid",url:"uri",datetime:"date-time",json_string:"json-string",regex:""},i=this.seen.get(e);if(i)return i.count++,r.schemaPath.includes(e)&&(i.cycle=r.path),i.schema;let a={schema:{},count:1,cycle:void 0,path:r.path};this.seen.set(e,a);let c=e._zod.toJSONSchema?.();if(c)a.schema=c;else{let d={...r,schemaPath:[...r.schemaPath,e],path:r.path},f=e._zod.parent;if(f)a.ref=f,this.process(f,d),this.seen.get(f).isParent=!0;else{let m=a.schema;switch(o.type){case"string":{let p=m;p.type="string";let{minimum:h,maximum:g,format:x,patterns:y,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),y&&y.size>0){let w=[...y];w.length===1?p.pattern=w[0].source:w.length>1&&(a.schema.allOf=[...w.map(O=>({...this.target==="draft-7"?{type:"string"}:{},pattern:O.source}))])}break}case"number":{let p=m,{minimum:h,maximum:g,format:x,multipleOf:y,exclusiveMaximum:k,exclusiveMinimum:w}=e._zod.bag;typeof x=="string"&&x.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 k=="number"&&(p.exclusiveMaximum=k),typeof g=="number"&&(p.maximum=g,typeof k=="number"&&(k<=g?delete p.maximum:delete p.exclusiveMaximum)),typeof y=="number"&&(p.multipleOf=y);break}case"boolean":{let p=m;p.type="boolean";break}case"bigint":{if(this.unrepresentable==="throw")throw new Error("BigInt cannot be represented in JSON Schema");break}case"symbol":{if(this.unrepresentable==="throw")throw new Error("Symbols cannot be represented in JSON Schema");break}case"null":{m.type="null";break}case"any":break;case"unknown":break;case"undefined":{if(this.unrepresentable==="throw")throw new Error("Undefined cannot be represented in JSON Schema");break}case"void":{if(this.unrepresentable==="throw")throw new Error("Void cannot be represented in JSON Schema");break}case"never":{m.not={};break}case"date":{if(this.unrepresentable==="throw")throw new Error("Date cannot be represented in JSON Schema");break}case"array":{let p=m,{minimum:h,maximum:g}=e._zod.bag;typeof h=="number"&&(p.minItems=h),typeof g=="number"&&(p.maxItems=g),p.type="array",p.items=this.process(o.element,{...d,path:[...d.path,"items"]});break}case"object":{let p=m;p.type="object",p.properties={};let h=o.shape;for(let y in h)p.properties[y]=this.process(h[y],{...d,path:[...d.path,"properties",y]});let g=new Set(Object.keys(h)),x=new Set([...g].filter(y=>{let k=o.shape[y]._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=m;p.anyOf=o.options.map((h,g)=>this.process(h,{...d,path:[...d.path,"anyOf",g]}));break}case"intersection":{let p=m,h=this.process(o.left,{...d,path:[...d.path,"allOf",0]}),g=this.process(o.right,{...d,path:[...d.path,"allOf",1]}),x=k=>"allOf"in k&&Object.keys(k).length===1,y=[...x(h)?h.allOf:[h],...x(g)?g.allOf:[g]];p.allOf=y;break}case"tuple":{let p=m;p.type="array";let h=o.items.map((y,k)=>this.process(y,{...d,path:[...d.path,"prefixItems",k]}));if(this.target==="draft-2020-12"?p.prefixItems=h:p.items=h,o.rest){let y=this.process(o.rest,{...d,path:[...d.path,"items"]});this.target==="draft-2020-12"?p.items=y:p.additionalItems=y}o.rest&&(p.items=this.process(o.rest,{...d,path:[...d.path,"items"]}));let{minimum:g,maximum:x}=e._zod.bag;typeof g=="number"&&(p.minItems=g),typeof x=="number"&&(p.maxItems=x);break}case"record":{let p=m;p.type="object",p.propertyNames=this.process(o.keyType,{...d,path:[...d.path,"propertyNames"]}),p.additionalProperties=this.process(o.valueType,{...d,path:[...d.path,"additionalProperties"]});break}case"map":{if(this.unrepresentable==="throw")throw new Error("Map cannot be represented in JSON Schema");break}case"set":{if(this.unrepresentable==="throw")throw new Error("Set cannot be represented in JSON Schema");break}case"enum":{let p=m,h=vo(o.entries);h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),p.enum=h;break}case"literal":{let p=m,h=[];for(let g of o.values)if(g===void 0){if(this.unrepresentable==="throw")throw new Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof g=="bigint"){if(this.unrepresentable==="throw")throw new Error("BigInt literals cannot be represented in JSON Schema");h.push(Number(g))}else h.push(g);if(h.length!==0)if(h.length===1){let g=h[0];p.type=g===null?"null":typeof g,p.const=g}else h.every(g=>typeof g=="number")&&(p.type="number"),h.every(g=>typeof g=="string")&&(p.type="string"),h.every(g=>typeof g=="boolean")&&(p.type="string"),h.every(g=>g===null)&&(p.type="null"),p.enum=h;break}case"file":{let p=m,h={type:"string",format:"binary",contentEncoding:"binary"},{minimum:g,maximum:x,mime:y}=e._zod.bag;g!==void 0&&(h.minLength=g),x!==void 0&&(h.maxLength=x),y?y.length===1?(h.contentMediaType=y[0],Object.assign(p,h)):p.anyOf=y.map(k=>({...h,contentMediaType:k})):Object.assign(p,h);break}case"transform":{if(this.unrepresentable==="throw")throw new Error("Transforms cannot be represented in JSON Schema");break}case"nullable":{let p=this.process(o.innerType,d);m.anyOf=[p,{type:"null"}];break}case"nonoptional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"success":{let p=m;p.type="boolean";break}case"default":{this.process(o.innerType,d),a.ref=o.innerType,m.default=JSON.parse(JSON.stringify(o.defaultValue));break}case"prefault":{this.process(o.innerType,d),a.ref=o.innerType,this.io==="input"&&(m._prefault=JSON.parse(JSON.stringify(o.defaultValue)));break}case"catch":{this.process(o.innerType,d),a.ref=o.innerType;let p;try{p=o.catchValue(void 0)}catch{throw new Error("Dynamic catch values are not supported in JSON Schema")}m.default=p;break}case"nan":{if(this.unrepresentable==="throw")throw new Error("NaN cannot be represented in JSON Schema");break}case"template_literal":{let p=m,h=e._zod.pattern;if(!h)throw new Error("Pattern not found in template literal");p.type="string",p.pattern=h.source;break}case"pipe":{let p=this.io==="input"?o.in._zod.def.type==="transform"?o.out:o.in:o.out;this.process(p,d),a.ref=p;break}case"readonly":{this.process(o.innerType,d),a.ref=o.innerType,m.readOnly=!0;break}case"promise":{this.process(o.innerType,d),a.ref=o.innerType;break}case"optional":{this.process(o.innerType,d),a.ref=o.innerType;break}case"lazy":{let p=e._zod.innerType;this.process(p,d),a.ref=p;break}case"custom":{if(this.unrepresentable==="throw")throw new Error("Custom types cannot be represented in JSON Schema");break}default:}}}let u=this.metadataRegistry.get(e);return u&&Object.assign(a.schema,u),this.io==="input"&&Pe(e)&&(delete a.schema.examples,delete a.schema.default),this.io==="input"&&a.schema._prefault&&((n=a.schema).default??(n.default=a.schema._prefault)),delete a.schema._prefault,this.seen.get(e).schema}emit(e,r){let n={cycles:r?.cycles??"ref",reused:r?.reused??"inline",external:r?.external??void 0},o=this.seen.get(e);if(!o)throw new Error("Unprocessed schema. This is a bug in Zod.");let s=l=>{let d=this.target==="draft-2020-12"?"$defs":"definitions";if(n.external){let h=n.external.registry.get(l[0])?.id,g=n.external.uri??(y=>y);if(h)return{ref:g(h)};let 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 m=`#/${d}/`,p=l[1].schema.id??`__schema${this.counter++}`;return{defId:p,ref:m+p}},i=l=>{if(l[1].schema.$ref)return;let d=l[1],{ref:f,defId:m}=s(l);d.def={...d.schema},m&&(d.defId=m);let p=d.schema;for(let h in p)delete p[h];p.$ref=f};if(n.cycles==="throw")for(let l of this.seen.entries()){let d=l[1];if(d.cycle)throw new Error(`Cycle detected: #/${d.cycle?.join("/")}/<root>
51
51
 
52
- Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let m=n.external.registry.get(l[0])?.id;if(e!==l[0]&&m){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let f=this.seen.get(l),m=f.def??f.schema,p={...m};if(f.ref===null)return;let h=f.ref;if(f.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(m.allOf=m.allOf??[],m.allOf.push(g)):(Object.assign(m,g),Object.assign(m,p))}f.isParent||this.override({zodSchema:l,jsonSchema:m,path:f.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}};function Du(t,e){if(t instanceof Po){let n=new Xs(e),o={};for(let a of t._idmap.entries()){let[c,u]=a;n.process(u)}let s={},i={registry:t,uri:e?.uri,defs:o};for(let a of t._idmap.entries()){let[c,u]=a;s[c]=n.emit(u,{...e,external:i})}if(Object.keys(o).length>0){let a=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[a]:o}}return{schemas:s}}let r=new Xs(e);return r.process(t),r.emit(t,e)}function Pe(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 Pe(o.element,r);case"object":{for(let s in o.shape)if(Pe(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Pe(s,r))return!0;return!1}case"intersection":return Pe(o.left,r)||Pe(o.right,r);case"tuple":{for(let s of o.items)if(Pe(s,r))return!0;return!!(o.rest&&Pe(o.rest,r))}case"record":return Pe(o.keyType,r)||Pe(o.valueType,r);case"map":return Pe(o.keyType,r)||Pe(o.valueType,r);case"set":return Pe(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Pe(o.innerType,r);case"lazy":return Pe(o.getter(),r);case"default":return Pe(o.innerType,r);case"prefault":return Pe(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Pe(o.in,r)||Pe(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Db=v("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");oe.init(t,e),t.def=e,t.parse=(r,n)=>rc(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Yr(t,r,n),t.parseAsync=async(r,n)=>oc(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Xr(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>st(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var Lb=v("ZodMiniObject",(t,e)=>{Fs.init(t,e),Db.init(t,e),J.defineLazy(t,"shape",()=>e.shape)});function Lu(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new Lb(r)}function ut(t){return!!t._zod}function tn(t){let e=Object.values(t);if(e.length===0)return Lu({});let r=e.every(ut),n=e.every(o=>!ut(o));if(r)return Lu(t);if(n)return Ha(t);throw new Error("Mixed Zod versions detected in object shape.")}function pr(t,e){return ut(t)?Yr(t,e):t.safeParse(e)}async function Qs(t,e){return ut(t)?await Xr(t,e):await t.safeParseAsync(e)}function fr(t){if(!t)return;let e;if(ut(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function In(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 tn(t)}}if(ut(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function ei(t){if(t&&typeof t=="object"){if("message"in t&&typeof t.message=="string")return t.message;if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0){let e=t.issues[0];if(e&&typeof e=="object"&&"message"in e)return String(e.message)}try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function oh(t){return t.description}function sh(t){if(ut(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function ti(t){if(ut(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 Co={};Ze(Co,{ZodISODate:()=>ah,ZodISODateTime:()=>ih,ZodISODuration:()=>uh,ZodISOTime:()=>ch,date:()=>Uu,datetime:()=>Zu,duration:()=>qu,time:()=>Hu});var ih=v("ZodISODateTime",(t,e)=>{Bm.init(t,e),he.init(t,e)});function Zu(t){return Xm(ih,t)}var ah=v("ZodISODate",(t,e)=>{Vm.init(t,e),he.init(t,e)});function Uu(t){return Qm(ah,t)}var ch=v("ZodISOTime",(t,e)=>{Km.init(t,e),he.init(t,e)});function Hu(t){return eh(ch,t)}var uh=v("ZodISODuration",(t,e)=>{Wm.init(t,e),he.init(t,e)});function qu(t){return th(uh,t)}var lh=(t,e)=>{Ls.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>ec(t,r)},flatten:{value:r=>Qa(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},dA=v("ZodError",lh),Io=v("ZodError",lh,{Parent:Error});var dh=tc(Io),ph=nc(Io),fh=sc(Io),mh=ic(Io);var ve=v("ZodType",(t,e)=>(oe.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>st(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>dh(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>fh(t,r,n),t.parseAsync=async(r,n)=>ph(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>mh(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(jw(r,n)),t.superRefine=r=>t.check(Mw(r)),t.overwrite=r=>t.check(Qr(r)),t.optional=()=>xe(t),t.nullable=()=>_h(t),t.nullish=()=>xe(_h(t)),t.nonoptional=r=>Rw(t,r),t.array=()=>Y(t),t.or=r=>le([t,r]),t.and=r=>ni(t,r),t.transform=r=>Bu(t,Sh(r)),t.default=r=>Tw(t,r),t.prefault=r=>Pw(t,r),t.catch=r=>Cw(t,r),t.pipe=r=>Bu(t,r),t.readonly=()=>zw(t),t.describe=r=>{let n=t.clone();return dr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return dr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return dr.get(t);let n=t.clone();return dr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),yh=v("_ZodString",(t,e)=>{$o.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(Tu(...n)),t.includes=(...n)=>t.check(Ru(...n)),t.startsWith=(...n)=>t.check(Ou(...n)),t.endsWith=(...n)=>t.check(Cu(...n)),t.min=(...n)=>t.check(Cn(...n)),t.max=(...n)=>t.check(Gs(...n)),t.length=(...n)=>t.check(Ys(...n)),t.nonempty=(...n)=>t.check(Cn(1,...n)),t.lowercase=n=>t.check($u(n)),t.uppercase=n=>t.check(Pu(n)),t.trim=()=>t.check(Nu()),t.normalize=(...n)=>t.check(Iu(...n)),t.toLowerCase=()=>t.check(zu()),t.toUpperCase=()=>t.check(Au())}),Wb=v("ZodString",(t,e)=>{$o.init(t,e),yh.init(t,e),t.email=r=>t.check(Qc(Jb,r)),t.url=r=>t.check(ou(Gb,r)),t.jwt=r=>t.check(xu(dw,r)),t.emoji=r=>t.check(su(Yb,r)),t.guid=r=>t.check(Vs(hh,r)),t.uuid=r=>t.check(eu(ri,r)),t.uuidv4=r=>t.check(tu(ri,r)),t.uuidv6=r=>t.check(ru(ri,r)),t.uuidv7=r=>t.check(nu(ri,r)),t.nanoid=r=>t.check(iu(Xb,r)),t.guid=r=>t.check(Vs(hh,r)),t.cuid=r=>t.check(au(Qb,r)),t.cuid2=r=>t.check(cu(ew,r)),t.ulid=r=>t.check(uu(tw,r)),t.base64=r=>t.check(gu(cw,r)),t.base64url=r=>t.check(_u(uw,r)),t.xid=r=>t.check(lu(rw,r)),t.ksuid=r=>t.check(du(nw,r)),t.ipv4=r=>t.check(pu(ow,r)),t.ipv6=r=>t.check(fu(sw,r)),t.cidrv4=r=>t.check(mu(iw,r)),t.cidrv6=r=>t.check(hu(aw,r)),t.e164=r=>t.check(yu(lw,r)),t.datetime=r=>t.check(Zu(r)),t.date=r=>t.check(Uu(r)),t.time=r=>t.check(Hu(r)),t.duration=r=>t.check(qu(r))});function _(t){return Xc(Wb,t)}var he=v("ZodStringFormat",(t,e)=>{ue.init(t,e),yh.init(t,e)}),Jb=v("ZodEmail",(t,e)=>{mc.init(t,e),he.init(t,e)});var hh=v("ZodGUID",(t,e)=>{pc.init(t,e),he.init(t,e)});var ri=v("ZodUUID",(t,e)=>{fc.init(t,e),he.init(t,e)});var Gb=v("ZodURL",(t,e)=>{hc.init(t,e),he.init(t,e)});var Yb=v("ZodEmoji",(t,e)=>{gc.init(t,e),he.init(t,e)});var Xb=v("ZodNanoID",(t,e)=>{_c.init(t,e),he.init(t,e)});var Qb=v("ZodCUID",(t,e)=>{yc.init(t,e),he.init(t,e)});var ew=v("ZodCUID2",(t,e)=>{xc.init(t,e),he.init(t,e)});var tw=v("ZodULID",(t,e)=>{vc.init(t,e),he.init(t,e)});var rw=v("ZodXID",(t,e)=>{kc.init(t,e),he.init(t,e)});var nw=v("ZodKSUID",(t,e)=>{Sc.init(t,e),he.init(t,e)});var ow=v("ZodIPv4",(t,e)=>{bc.init(t,e),he.init(t,e)});var sw=v("ZodIPv6",(t,e)=>{wc.init(t,e),he.init(t,e)});var iw=v("ZodCIDRv4",(t,e)=>{Ec.init(t,e),he.init(t,e)});var aw=v("ZodCIDRv6",(t,e)=>{Tc.init(t,e),he.init(t,e)});var cw=v("ZodBase64",(t,e)=>{$c.init(t,e),he.init(t,e)});var uw=v("ZodBase64URL",(t,e)=>{Pc.init(t,e),he.init(t,e)});var lw=v("ZodE164",(t,e)=>{Rc.init(t,e),he.init(t,e)});var dw=v("ZodJWT",(t,e)=>{Oc.init(t,e),he.init(t,e)});var xh=v("ZodNumber",(t,e)=>{qs.init(t,e),ve.init(t,e),t.gt=(n,o)=>t.check(Ws(n,o)),t.gte=(n,o)=>t.check(Oo(n,o)),t.min=(n,o)=>t.check(Oo(n,o)),t.lt=(n,o)=>t.check(Ks(n,o)),t.lte=(n,o)=>t.check(Ro(n,o)),t.max=(n,o)=>t.check(Ro(n,o)),t.int=n=>t.check(gh(n)),t.safe=n=>t.check(gh(n)),t.positive=n=>t.check(Ws(0,n)),t.nonnegative=n=>t.check(Oo(0,n)),t.negative=n=>t.check(Ks(0,n)),t.nonpositive=n=>t.check(Ro(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 ne(t){return vu(xh,t)}var pw=v("ZodNumberFormat",(t,e)=>{Cc.init(t,e),xh.init(t,e)});function gh(t){return ku(pw,t)}var fw=v("ZodBoolean",(t,e)=>{Ic.init(t,e),ve.init(t,e)});function Re(t){return Su(fw,t)}var mw=v("ZodNull",(t,e)=>{Nc.init(t,e),ve.init(t,e)});function Vu(t){return bu(mw,t)}var hw=v("ZodUnknown",(t,e)=>{zc.init(t,e),ve.init(t,e)});function ge(){return wu(hw)}var gw=v("ZodNever",(t,e)=>{Ac.init(t,e),ve.init(t,e)});function _w(t){return Eu(gw,t)}var yw=v("ZodArray",(t,e)=>{jc.init(t,e),ve.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Cn(r,n)),t.nonempty=r=>t.check(Cn(1,r)),t.max=(r,n)=>t.check(Gs(r,n)),t.length=(r,n)=>t.check(Ys(r,n)),t.unwrap=()=>t.element});function Y(t,e){return rh(yw,t,e)}var vh=v("ZodObject",(t,e)=>{Fs.init(t,e),ve.init(t,e),J.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Qe(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:_w()}),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(bh,t,r[0]),t.required=(...r)=>J.required(wh,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 vh(r)}function Be(t,e){return new vh({type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},catchall:ge(),...J.normalizeParams(e)})}var kh=v("ZodUnion",(t,e)=>{Bs.init(t,e),ve.init(t,e),t.options=e.options});function le(t,e){return new kh({type:"union",options:t,...J.normalizeParams(e)})}var xw=v("ZodDiscriminatedUnion",(t,e)=>{kh.init(t,e),Mc.init(t,e)});function Ku(t,e,r){return new xw({type:"union",options:e,discriminator:t,...J.normalizeParams(r)})}var vw=v("ZodIntersection",(t,e)=>{Dc.init(t,e),ve.init(t,e)});function ni(t,e){return new vw({type:"intersection",left:t,right:e})}var kw=v("ZodRecord",(t,e)=>{Lc.init(t,e),ve.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function _e(t,e,r){return new kw({type:"record",keyType:t,valueType:e,...J.normalizeParams(r)})}var Fu=v("ZodEnum",(t,e)=>{Zc.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 Fu({...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 Fu({...e,checks:[],...J.normalizeParams(o),entries:s})}});function Qe(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Fu({type:"enum",entries:r,...J.normalizeParams(e)})}var Sw=v("ZodLiteral",(t,e)=>{Uc.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 Sw({type:"literal",values:Array.isArray(t)?t:[t],...J.normalizeParams(e)})}var bw=v("ZodTransform",(t,e)=>{Hc.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 bw({type:"transform",transform:t})}var bh=v("ZodOptional",(t,e)=>{qc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function xe(t){return new bh({type:"optional",innerType:t})}var ww=v("ZodNullable",(t,e)=>{Fc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function _h(t){return new ww({type:"nullable",innerType:t})}var Ew=v("ZodDefault",(t,e)=>{Bc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Tw(t,e){return new Ew({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var $w=v("ZodPrefault",(t,e)=>{Vc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Pw(t,e){return new $w({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var wh=v("ZodNonOptional",(t,e)=>{Kc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Rw(t,e){return new wh({type:"nonoptional",innerType:t,...J.normalizeParams(e)})}var Ow=v("ZodCatch",(t,e)=>{Wc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Cw(t,e){return new Ow({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Iw=v("ZodPipe",(t,e)=>{Jc.init(t,e),ve.init(t,e),t.in=e.in,t.out=e.out});function Bu(t,e){return new Iw({type:"pipe",in:t,out:e})}var Nw=v("ZodReadonly",(t,e)=>{Gc.init(t,e),ve.init(t,e)});function zw(t){return new Nw({type:"readonly",innerType:t})}var Eh=v("ZodCustom",(t,e)=>{Yc.init(t,e),ve.init(t,e)});function Aw(t){let e=new Ce({check:"custom"});return e._zod.check=t,e}function Th(t,e){return ju(Eh,t??(()=>!0),e)}function jw(t,e={}){return Mu(Eh,t,e)}function Mw(t){let e=Aw(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 Bu(Sh(t),e)}ot(Gm());var Gu="2025-11-25";var $h=[Gu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],mr="io.modelcontextprotocol/related-task",si="2.0",Ie=Th(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Ph=le([_(),ne().int()]),Rh=_(),EA=Be({ttl:le([ne(),Vu()]).optional(),pollInterval:ne().optional()}),Dw=P({ttl:ne().optional()}),Lw=P({taskId:_()}),Yu=Be({progressToken:Ph.optional(),[mr]:Lw.optional()}),it=P({_meta:Yu.optional()}),No=it.extend({task:Dw.optional()}),Oh=t=>No.safeParse(t).success,Ne=P({method:_(),params:it.loose().optional()}),lt=P({_meta:Yu.optional()}),dt=P({method:_(),params:lt.loose().optional()}),ze=Be({_meta:Yu.optional()}),ii=le([_(),ne().int()]),Ch=P({jsonrpc:I(si),id:ii,...Ne.shape}).strict(),Xu=t=>Ch.safeParse(t).success,Ih=P({jsonrpc:I(si),...dt.shape}).strict(),Nh=t=>Ih.safeParse(t).success,Qu=P({jsonrpc:I(si),id:ii,result:ze}).strict(),zo=t=>Qu.safeParse(t).success;var z;(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"})(z||(z={}));var el=P({jsonrpc:I(si),id:ii.optional(),error:P({code:ne().int(),message:_(),data:ge().optional()})}).strict();var zh=t=>el.safeParse(t).success;var Ah=le([Ch,Ih,Qu,el]),TA=le([Qu,el]),ai=ze.strict(),Zw=lt.extend({requestId:ii.optional(),reason:_().optional()}),ci=dt.extend({method:I("notifications/cancelled"),params:Zw}),Uw=P({src:_(),mimeType:_().optional(),sizes:Y(_()).optional(),theme:Qe(["light","dark"]).optional()}),Ao=P({icons:Y(Uw).optional()}),Nn=P({name:_(),title:_().optional()}),jh=Nn.extend({...Nn.shape,...Ao.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),Hw=ni(P({applyDefaults:Re().optional()}),_e(_(),ge())),qw=Wu(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ni(P({form:Hw.optional(),url:Ie.optional()}),_e(_(),ge()).optional())),Fw=Be({list:Ie.optional(),cancel:Ie.optional(),requests:Be({sampling:Be({createMessage:Ie.optional()}).optional(),elicitation:Be({create:Ie.optional()}).optional()}).optional()}),Bw=Be({list:Ie.optional(),cancel:Ie.optional(),requests:Be({tools:Be({call:Ie.optional()}).optional()}).optional()}),Vw=P({experimental:_e(_(),Ie).optional(),sampling:P({context:Ie.optional(),tools:Ie.optional()}).optional(),elicitation:qw.optional(),roots:P({listChanged:Re().optional()}).optional(),tasks:Fw.optional()}),Kw=it.extend({protocolVersion:_(),capabilities:Vw,clientInfo:jh}),tl=Ne.extend({method:I("initialize"),params:Kw});var Ww=P({experimental:_e(_(),Ie).optional(),logging:Ie.optional(),completions:Ie.optional(),prompts:P({listChanged:Re().optional()}).optional(),resources:P({subscribe:Re().optional(),listChanged:Re().optional()}).optional(),tools:P({listChanged:Re().optional()}).optional(),tasks:Bw.optional()}),Jw=ze.extend({protocolVersion:_(),capabilities:Ww,serverInfo:jh,instructions:_().optional()}),rl=dt.extend({method:I("notifications/initialized"),params:lt.optional()});var ui=Ne.extend({method:I("ping"),params:it.optional()}),Gw=P({progress:ne(),total:xe(ne()),message:xe(_())}),Yw=P({...lt.shape,...Gw.shape,progressToken:Ph}),li=dt.extend({method:I("notifications/progress"),params:Yw}),Xw=it.extend({cursor:Rh.optional()}),jo=Ne.extend({params:Xw.optional()}),Mo=ze.extend({nextCursor:Rh.optional()}),Qw=Qe(["working","input_required","completed","failed","cancelled"]),Do=P({taskId:_(),status:Qw,ttl:le([ne(),Vu()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:xe(ne()),statusMessage:xe(_())}),zn=ze.extend({task:Do}),eE=lt.merge(Do),Lo=dt.extend({method:I("notifications/tasks/status"),params:eE}),di=Ne.extend({method:I("tasks/get"),params:it.extend({taskId:_()})}),pi=ze.merge(Do),fi=Ne.extend({method:I("tasks/result"),params:it.extend({taskId:_()})}),$A=ze.loose(),mi=jo.extend({method:I("tasks/list")}),hi=Mo.extend({tasks:Y(Do)}),gi=Ne.extend({method:I("tasks/cancel"),params:it.extend({taskId:_()})}),Mh=ze.merge(Do),Dh=P({uri:_(),mimeType:xe(_()),_meta:_e(_(),ge()).optional()}),Lh=Dh.extend({text:_()}),nl=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Zh=Dh.extend({blob:nl}),Zo=Qe(["user","assistant"]),An=P({audience:Y(Zo).optional(),priority:ne().min(0).max(1).optional(),lastModified:Co.datetime({offset:!0}).optional()}),Uh=P({...Nn.shape,...Ao.shape,uri:_(),description:xe(_()),mimeType:xe(_()),annotations:An.optional(),_meta:xe(Be({}))}),tE=P({...Nn.shape,...Ao.shape,uriTemplate:_(),description:xe(_()),mimeType:xe(_()),annotations:An.optional(),_meta:xe(Be({}))}),jn=jo.extend({method:I("resources/list")}),rE=Mo.extend({resources:Y(Uh)}),Mn=jo.extend({method:I("resources/templates/list")}),nE=Mo.extend({resourceTemplates:Y(tE)}),ol=it.extend({uri:_()}),oE=ol,_i=Ne.extend({method:I("resources/read"),params:oE}),sE=ze.extend({contents:Y(le([Lh,Zh]))}),iE=dt.extend({method:I("notifications/resources/list_changed"),params:lt.optional()}),aE=ol,cE=Ne.extend({method:I("resources/subscribe"),params:aE}),uE=ol,lE=Ne.extend({method:I("resources/unsubscribe"),params:uE}),dE=lt.extend({uri:_()}),pE=dt.extend({method:I("notifications/resources/updated"),params:dE}),fE=P({name:_(),description:xe(_()),required:xe(Re())}),mE=P({...Nn.shape,...Ao.shape,description:xe(_()),arguments:xe(Y(fE)),_meta:xe(Be({}))}),Dn=jo.extend({method:I("prompts/list")}),hE=Mo.extend({prompts:Y(mE)}),gE=it.extend({name:_(),arguments:_e(_(),_()).optional()}),yi=Ne.extend({method:I("prompts/get"),params:gE}),sl=P({type:I("text"),text:_(),annotations:An.optional(),_meta:_e(_(),ge()).optional()}),il=P({type:I("image"),data:nl,mimeType:_(),annotations:An.optional(),_meta:_e(_(),ge()).optional()}),al=P({type:I("audio"),data:nl,mimeType:_(),annotations:An.optional(),_meta:_e(_(),ge()).optional()}),_E=P({type:I("tool_use"),name:_(),id:_(),input:_e(_(),ge()),_meta:_e(_(),ge()).optional()}),yE=P({type:I("resource"),resource:le([Lh,Zh]),annotations:An.optional(),_meta:_e(_(),ge()).optional()}),xE=Uh.extend({type:I("resource_link")}),cl=le([sl,il,al,xE,yE]),vE=P({role:Zo,content:cl}),kE=ze.extend({description:_().optional(),messages:Y(vE)}),SE=dt.extend({method:I("notifications/prompts/list_changed"),params:lt.optional()}),bE=P({title:_().optional(),readOnlyHint:Re().optional(),destructiveHint:Re().optional(),idempotentHint:Re().optional(),openWorldHint:Re().optional()}),wE=P({taskSupport:Qe(["required","optional","forbidden"]).optional()}),Hh=P({...Nn.shape,...Ao.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:_e(_(),Ie).optional(),required:Y(_()).optional()}).catchall(ge()),outputSchema:P({type:I("object"),properties:_e(_(),Ie).optional(),required:Y(_()).optional()}).catchall(ge()).optional(),annotations:bE.optional(),execution:wE.optional(),_meta:_e(_(),ge()).optional()}),xi=jo.extend({method:I("tools/list")}),EE=Mo.extend({tools:Y(Hh)}),vi=ze.extend({content:Y(cl).default([]),structuredContent:_e(_(),ge()).optional(),isError:Re().optional()}),PA=vi.or(ze.extend({toolResult:ge()})),TE=No.extend({name:_(),arguments:_e(_(),ge()).optional()}),Ln=Ne.extend({method:I("tools/call"),params:TE}),$E=dt.extend({method:I("notifications/tools/list_changed"),params:lt.optional()}),RA=P({autoRefresh:Re().default(!0),debounceMs:ne().int().nonnegative().default(300)}),Uo=Qe(["debug","info","notice","warning","error","critical","alert","emergency"]),PE=it.extend({level:Uo}),ul=Ne.extend({method:I("logging/setLevel"),params:PE}),RE=lt.extend({level:Uo,logger:_().optional(),data:ge()}),OE=dt.extend({method:I("notifications/message"),params:RE}),CE=P({name:_().optional()}),IE=P({hints:Y(CE).optional(),costPriority:ne().min(0).max(1).optional(),speedPriority:ne().min(0).max(1).optional(),intelligencePriority:ne().min(0).max(1).optional()}),NE=P({mode:Qe(["auto","required","none"]).optional()}),zE=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:Y(cl).default([]),structuredContent:P({}).loose().optional(),isError:Re().optional(),_meta:_e(_(),ge()).optional()}),AE=Ku("type",[sl,il,al]),oi=Ku("type",[sl,il,al,_E,zE]),jE=P({role:Zo,content:le([oi,Y(oi)]),_meta:_e(_(),ge()).optional()}),ME=No.extend({messages:Y(jE),modelPreferences:IE.optional(),systemPrompt:_().optional(),includeContext:Qe(["none","thisServer","allServers"]).optional(),temperature:ne().optional(),maxTokens:ne().int(),stopSequences:Y(_()).optional(),metadata:Ie.optional(),tools:Y(Hh).optional(),toolChoice:NE.optional()}),DE=Ne.extend({method:I("sampling/createMessage"),params:ME}),ll=ze.extend({model:_(),stopReason:xe(Qe(["endTurn","stopSequence","maxTokens"]).or(_())),role:Zo,content:AE}),dl=ze.extend({model:_(),stopReason:xe(Qe(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Zo,content:le([oi,Y(oi)])}),LE=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:Re().optional()}),ZE=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:ne().optional(),maxLength:ne().optional(),format:Qe(["email","uri","date","date-time"]).optional(),default:_().optional()}),UE=P({type:Qe(["number","integer"]),title:_().optional(),description:_().optional(),minimum:ne().optional(),maximum:ne().optional(),default:ne().optional()}),HE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:Y(_()),default:_().optional()}),qE=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:Y(P({const:_(),title:_()})),default:_().optional()}),FE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:Y(_()),enumNames:Y(_()).optional(),default:_().optional()}),BE=le([HE,qE]),VE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:ne().optional(),maxItems:ne().optional(),items:P({type:I("string"),enum:Y(_())}),default:Y(_()).optional()}),KE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:ne().optional(),maxItems:ne().optional(),items:P({anyOf:Y(P({const:_(),title:_()}))}),default:Y(_()).optional()}),WE=le([VE,KE]),JE=le([FE,BE,WE]),GE=le([JE,LE,ZE,UE]),YE=No.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:_e(_(),GE),required:Y(_()).optional()})}),XE=No.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),QE=le([YE,XE]),eT=Ne.extend({method:I("elicitation/create"),params:QE}),tT=lt.extend({elicitationId:_()}),rT=dt.extend({method:I("notifications/elicitation/complete"),params:tT}),ki=ze.extend({action:Qe(["accept","decline","cancel"]),content:Wu(t=>t===null?void 0:t,_e(_(),le([_(),ne(),Re(),Y(_())])).optional())}),nT=P({type:I("ref/resource"),uri:_()});var oT=P({type:I("ref/prompt"),name:_()}),sT=it.extend({ref:le([oT,nT]),argument:P({name:_(),value:_()}),context:P({arguments:_e(_(),_()).optional()}).optional()}),Si=Ne.extend({method:I("completion/complete"),params:sT});function qh(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Fh(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var iT=ze.extend({completion:Be({values:Y(_()).max(100),total:xe(ne().int()),hasMore:xe(Re())})}),aT=P({uri:_().startsWith("file://"),name:_().optional(),_meta:_e(_(),ge()).optional()}),cT=Ne.extend({method:I("roots/list"),params:it.optional()}),pl=ze.extend({roots:Y(aT)}),uT=dt.extend({method:I("notifications/roots/list_changed"),params:lt.optional()}),OA=le([ui,tl,Si,ul,yi,Dn,jn,Mn,_i,cE,lE,Ln,xi,di,fi,mi,gi]),CA=le([ci,li,rl,uT,Lo]),IA=le([ai,ll,dl,ki,pl,pi,hi,zn]),NA=le([ui,DE,eT,cT,di,fi,mi,gi]),zA=le([ci,li,OE,pE,iE,$E,SE,Lo,rT]),AA=le([ai,Jw,iT,kE,hE,rE,nE,sE,vi,EE,pi,hi,zn]),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===z.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Ju(o.elicitations,r)}return new t(e,r,n)}},Ju=class extends C{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(z.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function hr(t){return t==="completed"||t==="failed"||t==="cancelled"}var Vh=Symbol("Let zodToJsonSchema decide on which parser to use");var Bh={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},Kh=t=>typeof t=="string"?{...Bh,name:t}:{...Bh,...t};var Wh=t=>{let e=Kh(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...e.basePath,e.definitionPath,n],jsonSchema:void 0}]))}};function fl(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function X(t,e,r,n,o){t[e]=r,fl(t,e,n,o)}var bi=(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"?bi(e,t.currentPath):e.join("/")}}function Jh(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&&X(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&X(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(X(r,"minItems",t.exactLength.value,t.exactLength.message,e),X(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Gh(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?X(r,"minimum",n.value,n.message,e):X(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),X(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?X(r,"maximum",n.value,n.message,e):X(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),X(r,"maximum",n.value,n.message,e));break;case"multipleOf":X(r,"multipleOf",n.value,n.message,e);break}return r}function Yh(){return{type:"boolean"}}function wi(t,e){return M(t.type._def,e)}var Xh=(t,e)=>M(t.innerType._def,e);function ml(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>ml(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 lT(t,e)}}var lT=(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":X(r,"minimum",n.value,n.message,e);break;case"max":X(r,"maximum",n.value,n.message,e);break}return r};function Qh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function eg(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):ye(e)}function tg(t){return{type:"string",enum:Array.from(t.values)}}var dT=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function rg(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(dT(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 ng(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 hl,wt={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:()=>(hl===void 0&&(hl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),hl),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 Ei(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":X(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":X(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":Et(r,"email",n.message,e);break;case"format:idn-email":Et(r,"idn-email",n.message,e);break;case"pattern:zod":Ve(r,wt.email,n.message,e);break}break;case"url":Et(r,"uri",n.message,e);break;case"uuid":Et(r,"uuid",n.message,e);break;case"regex":Ve(r,n.regex,n.message,e);break;case"cuid":Ve(r,wt.cuid,n.message,e);break;case"cuid2":Ve(r,wt.cuid2,n.message,e);break;case"startsWith":Ve(r,RegExp(`^${gl(n.value,e)}`),n.message,e);break;case"endsWith":Ve(r,RegExp(`${gl(n.value,e)}$`),n.message,e);break;case"datetime":Et(r,"date-time",n.message,e);break;case"date":Et(r,"date",n.message,e);break;case"time":Et(r,"time",n.message,e);break;case"duration":Et(r,"duration",n.message,e);break;case"length":X(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),X(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Ve(r,RegExp(gl(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&Et(r,"ipv4",n.message,e),n.version!=="v4"&&Et(r,"ipv6",n.message,e);break}case"base64url":Ve(r,wt.base64url,n.message,e);break;case"jwt":Ve(r,wt.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ve(r,wt.ipv4Cidr,n.message,e),n.version!=="v4"&&Ve(r,wt.ipv6Cidr,n.message,e);break}case"emoji":Ve(r,wt.emoji(),n.message,e);break;case"ulid":{Ve(r,wt.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Et(r,"binary",n.message,e);break}case"contentEncoding:base64":{X(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ve(r,wt.base64,n.message,e);break}}break}case"nanoid":Ve(r,wt.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function gl(t,e){return e.patternStrategy==="escape"?fT(t):t}var pT=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function fT(t){let e="";for(let r=0;r<t.length;r++)pT.has(t[r])||(e+="\\"),e+=t[r];return e}function Et(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}}})):X(t,"format",e,r,n)}function Ve(t,e,r,n){t.pattern||t.allOf?.some(o=>o.pattern)?(t.allOf||(t.allOf=[]),t.pattern&&(t.allOf.push({pattern:t.pattern,...t.errorMessage&&n.errorMessages&&{errorMessage:{pattern:t.errorMessage.pattern}}}),delete t.pattern,t.errorMessage&&(delete t.errorMessage.pattern,Object.keys(t.errorMessage).length===0&&delete t.errorMessage)),t.allOf.push({pattern:og(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):X(t,"pattern",og(e,n),r,n)}function og(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
52
+ Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let l of this.seen.entries()){let d=l[1];if(e===l[0]){i(l);continue}if(n.external){let m=n.external.registry.get(l[0])?.id;if(e!==l[0]&&m){i(l);continue}}if(this.metadataRegistry.get(l[0])?.id){i(l);continue}if(d.cycle){i(l);continue}if(d.count>1&&n.reused==="ref"){i(l);continue}}let a=(l,d)=>{let f=this.seen.get(l),m=f.def??f.schema,p={...m};if(f.ref===null)return;let h=f.ref;if(f.ref=null,h){a(h,d);let g=this.seen.get(h).schema;g.$ref&&d.target==="draft-7"?(m.allOf=m.allOf??[],m.allOf.push(g)):(Object.assign(m,g),Object.assign(m,p))}f.isParent||this.override({zodSchema:l,jsonSchema:m,path:f.path??[]})};for(let l of[...this.seen.entries()].reverse())a(l[0],{target:this.target});let c={};if(this.target==="draft-2020-12"?c.$schema="https://json-schema.org/draft/2020-12/schema":this.target==="draft-7"?c.$schema="http://json-schema.org/draft-07/schema#":console.warn(`Invalid target: ${this.target}`),n.external?.uri){let l=n.external.registry.get(e)?.id;if(!l)throw new Error("Schema is missing an `id` property");c.$id=n.external.uri(l)}Object.assign(c,o.def);let u=n.external?.defs??{};for(let l of this.seen.entries()){let d=l[1];d.def&&d.defId&&(u[d.defId]=d.def)}n.external||Object.keys(u).length>0&&(this.target==="draft-2020-12"?c.$defs=u:c.definitions=u);try{return JSON.parse(JSON.stringify(c))}catch{throw new Error("Error converting schema to JSON.")}}};function Lu(t,e){if(t instanceof Po){let n=new Xs(e),o={};for(let a of t._idmap.entries()){let[c,u]=a;n.process(u)}let s={},i={registry:t,uri:e?.uri,defs:o};for(let a of t._idmap.entries()){let[c,u]=a;s[c]=n.emit(u,{...e,external:i})}if(Object.keys(o).length>0){let a=n.target==="draft-2020-12"?"$defs":"definitions";s.__shared={[a]:o}}return{schemas:s}}let r=new Xs(e);return r.process(t),r.emit(t,e)}function Pe(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 Pe(o.element,r);case"object":{for(let s in o.shape)if(Pe(o.shape[s],r))return!0;return!1}case"union":{for(let s of o.options)if(Pe(s,r))return!0;return!1}case"intersection":return Pe(o.left,r)||Pe(o.right,r);case"tuple":{for(let s of o.items)if(Pe(s,r))return!0;return!!(o.rest&&Pe(o.rest,r))}case"record":return Pe(o.keyType,r)||Pe(o.valueType,r);case"map":return Pe(o.keyType,r)||Pe(o.valueType,r);case"set":return Pe(o.valueType,r);case"promise":case"optional":case"nonoptional":case"nullable":case"readonly":return Pe(o.innerType,r);case"lazy":return Pe(o.getter(),r);case"default":return Pe(o.innerType,r);case"prefault":return Pe(o.innerType,r);case"custom":return!1;case"transform":return!0;case"pipe":return Pe(o.in,r)||Pe(o.out,r);case"success":return!1;case"catch":return!1;default:}throw new Error(`Unknown schema type: ${o.type}`)}var Db=v("ZodMiniType",(t,e)=>{if(!t._zod)throw new Error("Uninitialized schema in ZodMiniType.");oe.init(t,e),t.def=e,t.parse=(r,n)=>nc(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>Xr(t,r,n),t.parseAsync=async(r,n)=>sc(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>Qr(t,r,n),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>st(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t))});var Lb=v("ZodMiniObject",(t,e)=>{Fs.init(t,e),Db.init(t,e),J.defineLazy(t,"shape",()=>e.shape)});function Zu(t,e){let r={type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},...J.normalizeParams(e)};return new Lb(r)}function ut(t){return!!t._zod}function rn(t){let e=Object.values(t);if(e.length===0)return Zu({});let r=e.every(ut),n=e.every(o=>!ut(o));if(r)return Zu(t);if(n)return qa(t);throw new Error("Mixed Zod versions detected in object shape.")}function mr(t,e){return ut(t)?Xr(t,e):t.safeParse(e)}async function Qs(t,e){return ut(t)?await Qr(t,e):await t.safeParseAsync(e)}function hr(t){if(!t)return;let e;if(ut(t)?e=t._zod?.def?.shape:e=t.shape,!!e){if(typeof e=="function")try{return e()}catch{return}return e}}function In(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 rn(t)}}if(ut(t)){let r=t._zod?.def;if(r&&(r.type==="object"||r.shape!==void 0))return t}else if(t.shape!==void 0)return t}}function ei(t){if(t&&typeof t=="object"){if("message"in t&&typeof t.message=="string")return t.message;if("issues"in t&&Array.isArray(t.issues)&&t.issues.length>0){let e=t.issues[0];if(e&&typeof e=="object"&&"message"in e)return String(e.message)}try{return JSON.stringify(t)}catch{return String(t)}}return String(t)}function oh(t){return t.description}function sh(t){if(ut(t))return t._zod?.def?.type==="optional";let e=t;return typeof t.isOptional=="function"?t.isOptional():e._def?.typeName==="ZodOptional"}function ti(t){if(ut(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 Co={};Ze(Co,{ZodISODate:()=>ah,ZodISODateTime:()=>ih,ZodISODuration:()=>uh,ZodISOTime:()=>ch,date:()=>Hu,datetime:()=>Uu,duration:()=>Fu,time:()=>qu});var ih=v("ZodISODateTime",(t,e)=>{Bm.init(t,e),he.init(t,e)});function Uu(t){return Xm(ih,t)}var ah=v("ZodISODate",(t,e)=>{Vm.init(t,e),he.init(t,e)});function Hu(t){return Qm(ah,t)}var ch=v("ZodISOTime",(t,e)=>{Km.init(t,e),he.init(t,e)});function qu(t){return eh(ch,t)}var uh=v("ZodISODuration",(t,e)=>{Wm.init(t,e),he.init(t,e)});function Fu(t){return th(uh,t)}var lh=(t,e)=>{Ls.init(t,e),t.name="ZodError",Object.defineProperties(t,{format:{value:r=>tc(t,r)},flatten:{value:r=>ec(t,r)},addIssue:{value:r=>t.issues.push(r)},addIssues:{value:r=>t.issues.push(...r)},isEmpty:{get(){return t.issues.length===0}}})},dA=v("ZodError",lh),Io=v("ZodError",lh,{Parent:Error});var dh=rc(Io),ph=oc(Io),fh=ic(Io),mh=ac(Io);var ve=v("ZodType",(t,e)=>(oe.init(t,e),t.def=e,Object.defineProperty(t,"_def",{value:e}),t.check=(...r)=>t.clone({...e,checks:[...e.checks??[],...r.map(n=>typeof n=="function"?{_zod:{check:n,def:{check:"custom"},onattach:[]}}:n)]}),t.clone=(r,n)=>st(t,r,n),t.brand=()=>t,t.register=((r,n)=>(r.add(t,n),t)),t.parse=(r,n)=>dh(t,r,n,{callee:t.parse}),t.safeParse=(r,n)=>fh(t,r,n),t.parseAsync=async(r,n)=>ph(t,r,n,{callee:t.parseAsync}),t.safeParseAsync=async(r,n)=>mh(t,r,n),t.spa=t.safeParseAsync,t.refine=(r,n)=>t.check(jw(r,n)),t.superRefine=r=>t.check(Mw(r)),t.overwrite=r=>t.check(en(r)),t.optional=()=>xe(t),t.nullable=()=>_h(t),t.nullish=()=>xe(_h(t)),t.nonoptional=r=>Rw(t,r),t.array=()=>Y(t),t.or=r=>le([t,r]),t.and=r=>ni(t,r),t.transform=r=>Vu(t,Sh(r)),t.default=r=>Tw(t,r),t.prefault=r=>Pw(t,r),t.catch=r=>Cw(t,r),t.pipe=r=>Vu(t,r),t.readonly=()=>zw(t),t.describe=r=>{let n=t.clone();return fr.add(n,{description:r}),n},Object.defineProperty(t,"description",{get(){return fr.get(t)?.description},configurable:!0}),t.meta=(...r)=>{if(r.length===0)return fr.get(t);let n=t.clone();return fr.add(n,r[0]),n},t.isOptional=()=>t.safeParse(void 0).success,t.isNullable=()=>t.safeParse(null).success,t)),yh=v("_ZodString",(t,e)=>{$o.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($u(...n)),t.includes=(...n)=>t.check(Ou(...n)),t.startsWith=(...n)=>t.check(Cu(...n)),t.endsWith=(...n)=>t.check(Iu(...n)),t.min=(...n)=>t.check(Cn(...n)),t.max=(...n)=>t.check(Gs(...n)),t.length=(...n)=>t.check(Ys(...n)),t.nonempty=(...n)=>t.check(Cn(1,...n)),t.lowercase=n=>t.check(Pu(n)),t.uppercase=n=>t.check(Ru(n)),t.trim=()=>t.check(zu()),t.normalize=(...n)=>t.check(Nu(...n)),t.toLowerCase=()=>t.check(Au()),t.toUpperCase=()=>t.check(ju())}),Wb=v("ZodString",(t,e)=>{$o.init(t,e),yh.init(t,e),t.email=r=>t.check(eu(Jb,r)),t.url=r=>t.check(su(Gb,r)),t.jwt=r=>t.check(vu(dw,r)),t.emoji=r=>t.check(iu(Yb,r)),t.guid=r=>t.check(Vs(hh,r)),t.uuid=r=>t.check(tu(ri,r)),t.uuidv4=r=>t.check(ru(ri,r)),t.uuidv6=r=>t.check(nu(ri,r)),t.uuidv7=r=>t.check(ou(ri,r)),t.nanoid=r=>t.check(au(Xb,r)),t.guid=r=>t.check(Vs(hh,r)),t.cuid=r=>t.check(cu(Qb,r)),t.cuid2=r=>t.check(uu(ew,r)),t.ulid=r=>t.check(lu(tw,r)),t.base64=r=>t.check(_u(cw,r)),t.base64url=r=>t.check(yu(uw,r)),t.xid=r=>t.check(du(rw,r)),t.ksuid=r=>t.check(pu(nw,r)),t.ipv4=r=>t.check(fu(ow,r)),t.ipv6=r=>t.check(mu(sw,r)),t.cidrv4=r=>t.check(hu(iw,r)),t.cidrv6=r=>t.check(gu(aw,r)),t.e164=r=>t.check(xu(lw,r)),t.datetime=r=>t.check(Uu(r)),t.date=r=>t.check(Hu(r)),t.time=r=>t.check(qu(r)),t.duration=r=>t.check(Fu(r))});function _(t){return Qc(Wb,t)}var he=v("ZodStringFormat",(t,e)=>{ue.init(t,e),yh.init(t,e)}),Jb=v("ZodEmail",(t,e)=>{hc.init(t,e),he.init(t,e)});var hh=v("ZodGUID",(t,e)=>{fc.init(t,e),he.init(t,e)});var ri=v("ZodUUID",(t,e)=>{mc.init(t,e),he.init(t,e)});var Gb=v("ZodURL",(t,e)=>{gc.init(t,e),he.init(t,e)});var Yb=v("ZodEmoji",(t,e)=>{_c.init(t,e),he.init(t,e)});var Xb=v("ZodNanoID",(t,e)=>{yc.init(t,e),he.init(t,e)});var Qb=v("ZodCUID",(t,e)=>{xc.init(t,e),he.init(t,e)});var ew=v("ZodCUID2",(t,e)=>{vc.init(t,e),he.init(t,e)});var tw=v("ZodULID",(t,e)=>{kc.init(t,e),he.init(t,e)});var rw=v("ZodXID",(t,e)=>{Sc.init(t,e),he.init(t,e)});var nw=v("ZodKSUID",(t,e)=>{bc.init(t,e),he.init(t,e)});var ow=v("ZodIPv4",(t,e)=>{wc.init(t,e),he.init(t,e)});var sw=v("ZodIPv6",(t,e)=>{Ec.init(t,e),he.init(t,e)});var iw=v("ZodCIDRv4",(t,e)=>{Tc.init(t,e),he.init(t,e)});var aw=v("ZodCIDRv6",(t,e)=>{$c.init(t,e),he.init(t,e)});var cw=v("ZodBase64",(t,e)=>{Pc.init(t,e),he.init(t,e)});var uw=v("ZodBase64URL",(t,e)=>{Rc.init(t,e),he.init(t,e)});var lw=v("ZodE164",(t,e)=>{Oc.init(t,e),he.init(t,e)});var dw=v("ZodJWT",(t,e)=>{Cc.init(t,e),he.init(t,e)});var xh=v("ZodNumber",(t,e)=>{qs.init(t,e),ve.init(t,e),t.gt=(n,o)=>t.check(Ws(n,o)),t.gte=(n,o)=>t.check(Oo(n,o)),t.min=(n,o)=>t.check(Oo(n,o)),t.lt=(n,o)=>t.check(Ks(n,o)),t.lte=(n,o)=>t.check(Ro(n,o)),t.max=(n,o)=>t.check(Ro(n,o)),t.int=n=>t.check(gh(n)),t.safe=n=>t.check(gh(n)),t.positive=n=>t.check(Ws(0,n)),t.nonnegative=n=>t.check(Oo(0,n)),t.negative=n=>t.check(Ks(0,n)),t.nonpositive=n=>t.check(Ro(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 ne(t){return ku(xh,t)}var pw=v("ZodNumberFormat",(t,e)=>{Ic.init(t,e),xh.init(t,e)});function gh(t){return Su(pw,t)}var fw=v("ZodBoolean",(t,e)=>{Nc.init(t,e),ve.init(t,e)});function Re(t){return bu(fw,t)}var mw=v("ZodNull",(t,e)=>{zc.init(t,e),ve.init(t,e)});function Ku(t){return wu(mw,t)}var hw=v("ZodUnknown",(t,e)=>{Ac.init(t,e),ve.init(t,e)});function ge(){return Eu(hw)}var gw=v("ZodNever",(t,e)=>{jc.init(t,e),ve.init(t,e)});function _w(t){return Tu(gw,t)}var yw=v("ZodArray",(t,e)=>{Mc.init(t,e),ve.init(t,e),t.element=e.element,t.min=(r,n)=>t.check(Cn(r,n)),t.nonempty=r=>t.check(Cn(1,r)),t.max=(r,n)=>t.check(Gs(r,n)),t.length=(r,n)=>t.check(Ys(r,n)),t.unwrap=()=>t.element});function Y(t,e){return rh(yw,t,e)}var vh=v("ZodObject",(t,e)=>{Fs.init(t,e),ve.init(t,e),J.defineLazy(t,"shape",()=>e.shape),t.keyof=()=>Qe(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:_w()}),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(bh,t,r[0]),t.required=(...r)=>J.required(wh,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 vh(r)}function Ve(t,e){return new vh({type:"object",get shape(){return J.assignProp(this,"shape",{...t}),this.shape},catchall:ge(),...J.normalizeParams(e)})}var kh=v("ZodUnion",(t,e)=>{Bs.init(t,e),ve.init(t,e),t.options=e.options});function le(t,e){return new kh({type:"union",options:t,...J.normalizeParams(e)})}var xw=v("ZodDiscriminatedUnion",(t,e)=>{kh.init(t,e),Dc.init(t,e)});function Wu(t,e,r){return new xw({type:"union",options:e,discriminator:t,...J.normalizeParams(r)})}var vw=v("ZodIntersection",(t,e)=>{Lc.init(t,e),ve.init(t,e)});function ni(t,e){return new vw({type:"intersection",left:t,right:e})}var kw=v("ZodRecord",(t,e)=>{Zc.init(t,e),ve.init(t,e),t.keyType=e.keyType,t.valueType=e.valueType});function _e(t,e,r){return new kw({type:"record",keyType:t,valueType:e,...J.normalizeParams(r)})}var Bu=v("ZodEnum",(t,e)=>{Uc.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 Bu({...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 Bu({...e,checks:[],...J.normalizeParams(o),entries:s})}});function Qe(t,e){let r=Array.isArray(t)?Object.fromEntries(t.map(n=>[n,n])):t;return new Bu({type:"enum",entries:r,...J.normalizeParams(e)})}var Sw=v("ZodLiteral",(t,e)=>{Hc.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 Sw({type:"literal",values:Array.isArray(t)?t:[t],...J.normalizeParams(e)})}var bw=v("ZodTransform",(t,e)=>{qc.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 bw({type:"transform",transform:t})}var bh=v("ZodOptional",(t,e)=>{Fc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function xe(t){return new bh({type:"optional",innerType:t})}var ww=v("ZodNullable",(t,e)=>{Bc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function _h(t){return new ww({type:"nullable",innerType:t})}var Ew=v("ZodDefault",(t,e)=>{Vc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeDefault=t.unwrap});function Tw(t,e){return new Ew({type:"default",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var $w=v("ZodPrefault",(t,e)=>{Kc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Pw(t,e){return new $w({type:"prefault",innerType:t,get defaultValue(){return typeof e=="function"?e():e}})}var wh=v("ZodNonOptional",(t,e)=>{Wc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType});function Rw(t,e){return new wh({type:"nonoptional",innerType:t,...J.normalizeParams(e)})}var Ow=v("ZodCatch",(t,e)=>{Jc.init(t,e),ve.init(t,e),t.unwrap=()=>t._zod.def.innerType,t.removeCatch=t.unwrap});function Cw(t,e){return new Ow({type:"catch",innerType:t,catchValue:typeof e=="function"?e:()=>e})}var Iw=v("ZodPipe",(t,e)=>{Gc.init(t,e),ve.init(t,e),t.in=e.in,t.out=e.out});function Vu(t,e){return new Iw({type:"pipe",in:t,out:e})}var Nw=v("ZodReadonly",(t,e)=>{Yc.init(t,e),ve.init(t,e)});function zw(t){return new Nw({type:"readonly",innerType:t})}var Eh=v("ZodCustom",(t,e)=>{Xc.init(t,e),ve.init(t,e)});function Aw(t){let e=new Ce({check:"custom"});return e._zod.check=t,e}function Th(t,e){return Mu(Eh,t??(()=>!0),e)}function jw(t,e={}){return Du(Eh,t,e)}function Mw(t){let e=Aw(r=>(r.addIssue=n=>{if(typeof n=="string")r.issues.push(J.issue(n,r.value,e._zod.def));else{let o=n;o.fatal&&(o.continue=!1),o.code??(o.code="custom"),o.input??(o.input=r.value),o.inst??(o.inst=e),o.continue??(o.continue=!e._zod.def.abort),r.issues.push(J.issue(o))}},t(r.value,r)));return e}function Ju(t,e){return Vu(Sh(t),e)}ot(Gm());var Yu="2025-11-25";var $h=[Yu,"2025-06-18","2025-03-26","2024-11-05","2024-10-07"],gr="io.modelcontextprotocol/related-task",si="2.0",Ie=Th(t=>t!==null&&(typeof t=="object"||typeof t=="function")),Ph=le([_(),ne().int()]),Rh=_(),EA=Ve({ttl:le([ne(),Ku()]).optional(),pollInterval:ne().optional()}),Dw=P({ttl:ne().optional()}),Lw=P({taskId:_()}),Xu=Ve({progressToken:Ph.optional(),[gr]:Lw.optional()}),it=P({_meta:Xu.optional()}),No=it.extend({task:Dw.optional()}),Oh=t=>No.safeParse(t).success,Ne=P({method:_(),params:it.loose().optional()}),lt=P({_meta:Xu.optional()}),dt=P({method:_(),params:lt.loose().optional()}),ze=Ve({_meta:Xu.optional()}),ii=le([_(),ne().int()]),Ch=P({jsonrpc:I(si),id:ii,...Ne.shape}).strict(),Qu=t=>Ch.safeParse(t).success,Ih=P({jsonrpc:I(si),...dt.shape}).strict(),Nh=t=>Ih.safeParse(t).success,el=P({jsonrpc:I(si),id:ii,result:ze}).strict(),zo=t=>el.safeParse(t).success;var z;(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"})(z||(z={}));var tl=P({jsonrpc:I(si),id:ii.optional(),error:P({code:ne().int(),message:_(),data:ge().optional()})}).strict();var zh=t=>tl.safeParse(t).success;var Ah=le([Ch,Ih,el,tl]),TA=le([el,tl]),ai=ze.strict(),Zw=lt.extend({requestId:ii.optional(),reason:_().optional()}),ci=dt.extend({method:I("notifications/cancelled"),params:Zw}),Uw=P({src:_(),mimeType:_().optional(),sizes:Y(_()).optional(),theme:Qe(["light","dark"]).optional()}),Ao=P({icons:Y(Uw).optional()}),Nn=P({name:_(),title:_().optional()}),jh=Nn.extend({...Nn.shape,...Ao.shape,version:_(),websiteUrl:_().optional(),description:_().optional()}),Hw=ni(P({applyDefaults:Re().optional()}),_e(_(),ge())),qw=Ju(t=>t&&typeof t=="object"&&!Array.isArray(t)&&Object.keys(t).length===0?{form:{}}:t,ni(P({form:Hw.optional(),url:Ie.optional()}),_e(_(),ge()).optional())),Fw=Ve({list:Ie.optional(),cancel:Ie.optional(),requests:Ve({sampling:Ve({createMessage:Ie.optional()}).optional(),elicitation:Ve({create:Ie.optional()}).optional()}).optional()}),Bw=Ve({list:Ie.optional(),cancel:Ie.optional(),requests:Ve({tools:Ve({call:Ie.optional()}).optional()}).optional()}),Vw=P({experimental:_e(_(),Ie).optional(),sampling:P({context:Ie.optional(),tools:Ie.optional()}).optional(),elicitation:qw.optional(),roots:P({listChanged:Re().optional()}).optional(),tasks:Fw.optional()}),Kw=it.extend({protocolVersion:_(),capabilities:Vw,clientInfo:jh}),rl=Ne.extend({method:I("initialize"),params:Kw});var Ww=P({experimental:_e(_(),Ie).optional(),logging:Ie.optional(),completions:Ie.optional(),prompts:P({listChanged:Re().optional()}).optional(),resources:P({subscribe:Re().optional(),listChanged:Re().optional()}).optional(),tools:P({listChanged:Re().optional()}).optional(),tasks:Bw.optional()}),Jw=ze.extend({protocolVersion:_(),capabilities:Ww,serverInfo:jh,instructions:_().optional()}),nl=dt.extend({method:I("notifications/initialized"),params:lt.optional()});var ui=Ne.extend({method:I("ping"),params:it.optional()}),Gw=P({progress:ne(),total:xe(ne()),message:xe(_())}),Yw=P({...lt.shape,...Gw.shape,progressToken:Ph}),li=dt.extend({method:I("notifications/progress"),params:Yw}),Xw=it.extend({cursor:Rh.optional()}),jo=Ne.extend({params:Xw.optional()}),Mo=ze.extend({nextCursor:Rh.optional()}),Qw=Qe(["working","input_required","completed","failed","cancelled"]),Do=P({taskId:_(),status:Qw,ttl:le([ne(),Ku()]),createdAt:_(),lastUpdatedAt:_(),pollInterval:xe(ne()),statusMessage:xe(_())}),zn=ze.extend({task:Do}),eE=lt.merge(Do),Lo=dt.extend({method:I("notifications/tasks/status"),params:eE}),di=Ne.extend({method:I("tasks/get"),params:it.extend({taskId:_()})}),pi=ze.merge(Do),fi=Ne.extend({method:I("tasks/result"),params:it.extend({taskId:_()})}),$A=ze.loose(),mi=jo.extend({method:I("tasks/list")}),hi=Mo.extend({tasks:Y(Do)}),gi=Ne.extend({method:I("tasks/cancel"),params:it.extend({taskId:_()})}),Mh=ze.merge(Do),Dh=P({uri:_(),mimeType:xe(_()),_meta:_e(_(),ge()).optional()}),Lh=Dh.extend({text:_()}),ol=_().refine(t=>{try{return atob(t),!0}catch{return!1}},{message:"Invalid Base64 string"}),Zh=Dh.extend({blob:ol}),Zo=Qe(["user","assistant"]),An=P({audience:Y(Zo).optional(),priority:ne().min(0).max(1).optional(),lastModified:Co.datetime({offset:!0}).optional()}),Uh=P({...Nn.shape,...Ao.shape,uri:_(),description:xe(_()),mimeType:xe(_()),annotations:An.optional(),_meta:xe(Ve({}))}),tE=P({...Nn.shape,...Ao.shape,uriTemplate:_(),description:xe(_()),mimeType:xe(_()),annotations:An.optional(),_meta:xe(Ve({}))}),jn=jo.extend({method:I("resources/list")}),rE=Mo.extend({resources:Y(Uh)}),Mn=jo.extend({method:I("resources/templates/list")}),nE=Mo.extend({resourceTemplates:Y(tE)}),sl=it.extend({uri:_()}),oE=sl,_i=Ne.extend({method:I("resources/read"),params:oE}),sE=ze.extend({contents:Y(le([Lh,Zh]))}),iE=dt.extend({method:I("notifications/resources/list_changed"),params:lt.optional()}),aE=sl,cE=Ne.extend({method:I("resources/subscribe"),params:aE}),uE=sl,lE=Ne.extend({method:I("resources/unsubscribe"),params:uE}),dE=lt.extend({uri:_()}),pE=dt.extend({method:I("notifications/resources/updated"),params:dE}),fE=P({name:_(),description:xe(_()),required:xe(Re())}),mE=P({...Nn.shape,...Ao.shape,description:xe(_()),arguments:xe(Y(fE)),_meta:xe(Ve({}))}),Dn=jo.extend({method:I("prompts/list")}),hE=Mo.extend({prompts:Y(mE)}),gE=it.extend({name:_(),arguments:_e(_(),_()).optional()}),yi=Ne.extend({method:I("prompts/get"),params:gE}),il=P({type:I("text"),text:_(),annotations:An.optional(),_meta:_e(_(),ge()).optional()}),al=P({type:I("image"),data:ol,mimeType:_(),annotations:An.optional(),_meta:_e(_(),ge()).optional()}),cl=P({type:I("audio"),data:ol,mimeType:_(),annotations:An.optional(),_meta:_e(_(),ge()).optional()}),_E=P({type:I("tool_use"),name:_(),id:_(),input:_e(_(),ge()),_meta:_e(_(),ge()).optional()}),yE=P({type:I("resource"),resource:le([Lh,Zh]),annotations:An.optional(),_meta:_e(_(),ge()).optional()}),xE=Uh.extend({type:I("resource_link")}),ul=le([il,al,cl,xE,yE]),vE=P({role:Zo,content:ul}),kE=ze.extend({description:_().optional(),messages:Y(vE)}),SE=dt.extend({method:I("notifications/prompts/list_changed"),params:lt.optional()}),bE=P({title:_().optional(),readOnlyHint:Re().optional(),destructiveHint:Re().optional(),idempotentHint:Re().optional(),openWorldHint:Re().optional()}),wE=P({taskSupport:Qe(["required","optional","forbidden"]).optional()}),Hh=P({...Nn.shape,...Ao.shape,description:_().optional(),inputSchema:P({type:I("object"),properties:_e(_(),Ie).optional(),required:Y(_()).optional()}).catchall(ge()),outputSchema:P({type:I("object"),properties:_e(_(),Ie).optional(),required:Y(_()).optional()}).catchall(ge()).optional(),annotations:bE.optional(),execution:wE.optional(),_meta:_e(_(),ge()).optional()}),xi=jo.extend({method:I("tools/list")}),EE=Mo.extend({tools:Y(Hh)}),vi=ze.extend({content:Y(ul).default([]),structuredContent:_e(_(),ge()).optional(),isError:Re().optional()}),PA=vi.or(ze.extend({toolResult:ge()})),TE=No.extend({name:_(),arguments:_e(_(),ge()).optional()}),Ln=Ne.extend({method:I("tools/call"),params:TE}),$E=dt.extend({method:I("notifications/tools/list_changed"),params:lt.optional()}),RA=P({autoRefresh:Re().default(!0),debounceMs:ne().int().nonnegative().default(300)}),Uo=Qe(["debug","info","notice","warning","error","critical","alert","emergency"]),PE=it.extend({level:Uo}),ll=Ne.extend({method:I("logging/setLevel"),params:PE}),RE=lt.extend({level:Uo,logger:_().optional(),data:ge()}),OE=dt.extend({method:I("notifications/message"),params:RE}),CE=P({name:_().optional()}),IE=P({hints:Y(CE).optional(),costPriority:ne().min(0).max(1).optional(),speedPriority:ne().min(0).max(1).optional(),intelligencePriority:ne().min(0).max(1).optional()}),NE=P({mode:Qe(["auto","required","none"]).optional()}),zE=P({type:I("tool_result"),toolUseId:_().describe("The unique identifier for the corresponding tool call."),content:Y(ul).default([]),structuredContent:P({}).loose().optional(),isError:Re().optional(),_meta:_e(_(),ge()).optional()}),AE=Wu("type",[il,al,cl]),oi=Wu("type",[il,al,cl,_E,zE]),jE=P({role:Zo,content:le([oi,Y(oi)]),_meta:_e(_(),ge()).optional()}),ME=No.extend({messages:Y(jE),modelPreferences:IE.optional(),systemPrompt:_().optional(),includeContext:Qe(["none","thisServer","allServers"]).optional(),temperature:ne().optional(),maxTokens:ne().int(),stopSequences:Y(_()).optional(),metadata:Ie.optional(),tools:Y(Hh).optional(),toolChoice:NE.optional()}),DE=Ne.extend({method:I("sampling/createMessage"),params:ME}),dl=ze.extend({model:_(),stopReason:xe(Qe(["endTurn","stopSequence","maxTokens"]).or(_())),role:Zo,content:AE}),pl=ze.extend({model:_(),stopReason:xe(Qe(["endTurn","stopSequence","maxTokens","toolUse"]).or(_())),role:Zo,content:le([oi,Y(oi)])}),LE=P({type:I("boolean"),title:_().optional(),description:_().optional(),default:Re().optional()}),ZE=P({type:I("string"),title:_().optional(),description:_().optional(),minLength:ne().optional(),maxLength:ne().optional(),format:Qe(["email","uri","date","date-time"]).optional(),default:_().optional()}),UE=P({type:Qe(["number","integer"]),title:_().optional(),description:_().optional(),minimum:ne().optional(),maximum:ne().optional(),default:ne().optional()}),HE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:Y(_()),default:_().optional()}),qE=P({type:I("string"),title:_().optional(),description:_().optional(),oneOf:Y(P({const:_(),title:_()})),default:_().optional()}),FE=P({type:I("string"),title:_().optional(),description:_().optional(),enum:Y(_()),enumNames:Y(_()).optional(),default:_().optional()}),BE=le([HE,qE]),VE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:ne().optional(),maxItems:ne().optional(),items:P({type:I("string"),enum:Y(_())}),default:Y(_()).optional()}),KE=P({type:I("array"),title:_().optional(),description:_().optional(),minItems:ne().optional(),maxItems:ne().optional(),items:P({anyOf:Y(P({const:_(),title:_()}))}),default:Y(_()).optional()}),WE=le([VE,KE]),JE=le([FE,BE,WE]),GE=le([JE,LE,ZE,UE]),YE=No.extend({mode:I("form").optional(),message:_(),requestedSchema:P({type:I("object"),properties:_e(_(),GE),required:Y(_()).optional()})}),XE=No.extend({mode:I("url"),message:_(),elicitationId:_(),url:_().url()}),QE=le([YE,XE]),eT=Ne.extend({method:I("elicitation/create"),params:QE}),tT=lt.extend({elicitationId:_()}),rT=dt.extend({method:I("notifications/elicitation/complete"),params:tT}),ki=ze.extend({action:Qe(["accept","decline","cancel"]),content:Ju(t=>t===null?void 0:t,_e(_(),le([_(),ne(),Re(),Y(_())])).optional())}),nT=P({type:I("ref/resource"),uri:_()});var oT=P({type:I("ref/prompt"),name:_()}),sT=it.extend({ref:le([oT,nT]),argument:P({name:_(),value:_()}),context:P({arguments:_e(_(),_()).optional()}).optional()}),Si=Ne.extend({method:I("completion/complete"),params:sT});function qh(t){if(t.params.ref.type!=="ref/prompt")throw new TypeError(`Expected CompleteRequestPrompt, but got ${t.params.ref.type}`)}function Fh(t){if(t.params.ref.type!=="ref/resource")throw new TypeError(`Expected CompleteRequestResourceTemplate, but got ${t.params.ref.type}`)}var iT=ze.extend({completion:Ve({values:Y(_()).max(100),total:xe(ne().int()),hasMore:xe(Re())})}),aT=P({uri:_().startsWith("file://"),name:_().optional(),_meta:_e(_(),ge()).optional()}),cT=Ne.extend({method:I("roots/list"),params:it.optional()}),fl=ze.extend({roots:Y(aT)}),uT=dt.extend({method:I("notifications/roots/list_changed"),params:lt.optional()}),OA=le([ui,rl,Si,ll,yi,Dn,jn,Mn,_i,cE,lE,Ln,xi,di,fi,mi,gi]),CA=le([ci,li,nl,uT,Lo]),IA=le([ai,dl,pl,ki,fl,pi,hi,zn]),NA=le([ui,DE,eT,cT,di,fi,mi,gi]),zA=le([ci,li,OE,pE,iE,$E,SE,Lo,rT]),AA=le([ai,Jw,iT,kE,hE,rE,nE,sE,vi,EE,pi,hi,zn]),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===z.UrlElicitationRequired&&n){let o=n;if(o.elicitations)return new Gu(o.elicitations,r)}return new t(e,r,n)}},Gu=class extends C{constructor(e,r=`URL elicitation${e.length>1?"s":""} required`){super(z.UrlElicitationRequired,r,{elicitations:e})}get elicitations(){return this.data?.elicitations??[]}};function _r(t){return t==="completed"||t==="failed"||t==="cancelled"}var Vh=Symbol("Let zodToJsonSchema decide on which parser to use");var Bh={name:void 0,$refStrategy:"root",basePath:["#"],effectStrategy:"input",pipeStrategy:"all",dateStrategy:"format:date-time",mapStrategy:"entries",removeAdditionalStrategy:"passthrough",allowedAdditionalProperties:!0,rejectedAdditionalProperties:!1,definitionPath:"definitions",target:"jsonSchema7",strictUnions:!1,definitions:{},errorMessages:!1,markdownDescription:!1,patternStrategy:"escape",applyRegexFlags:!1,emailStrategy:"format:email",base64Strategy:"contentEncoding:base64",nameStrategy:"ref",openAiAnyTypeName:"OpenAiAnyType"},Kh=t=>typeof t=="string"?{...Bh,name:t}:{...Bh,...t};var Wh=t=>{let e=Kh(t),r=e.name!==void 0?[...e.basePath,e.definitionPath,e.name]:e.basePath;return{...e,flags:{hasReferencedOpenAiAnyType:!1},currentPath:r,propertyPath:void 0,seen:new Map(Object.entries(e.definitions).map(([n,o])=>[o._def,{def:o._def,path:[...e.basePath,e.definitionPath,n],jsonSchema:void 0}]))}};function ml(t,e,r,n){n?.errorMessages&&r&&(t.errorMessage={...t.errorMessage,[e]:r})}function X(t,e,r,n,o){t[e]=r,ml(t,e,n,o)}var bi=(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"?bi(e,t.currentPath):e.join("/")}}function Jh(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&&X(r,"minItems",t.minLength.value,t.minLength.message,e),t.maxLength&&X(r,"maxItems",t.maxLength.value,t.maxLength.message,e),t.exactLength&&(X(r,"minItems",t.exactLength.value,t.exactLength.message,e),X(r,"maxItems",t.exactLength.value,t.exactLength.message,e)),r}function Gh(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?X(r,"minimum",n.value,n.message,e):X(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),X(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?X(r,"maximum",n.value,n.message,e):X(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),X(r,"maximum",n.value,n.message,e));break;case"multipleOf":X(r,"multipleOf",n.value,n.message,e);break}return r}function Yh(){return{type:"boolean"}}function wi(t,e){return M(t.type._def,e)}var Xh=(t,e)=>M(t.innerType._def,e);function hl(t,e,r){let n=r??e.dateStrategy;if(Array.isArray(n))return{anyOf:n.map((o,s)=>hl(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 lT(t,e)}}var lT=(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":X(r,"minimum",n.value,n.message,e);break;case"max":X(r,"maximum",n.value,n.message,e);break}return r};function Qh(t,e){return{...M(t.innerType._def,e),default:t.defaultValue()}}function eg(t,e){return e.effectStrategy==="input"?M(t.schema._def,e):ye(e)}function tg(t){return{type:"string",enum:Array.from(t.values)}}var dT=t=>"type"in t&&t.type==="string"?!1:"allOf"in t;function rg(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(dT(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 ng(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 gl,Et={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:()=>(gl===void 0&&(gl=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),gl),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 Ei(t,e){let r={type:"string"};if(t.checks)for(let n of t.checks)switch(n.kind){case"min":X(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e);break;case"max":X(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":Tt(r,"email",n.message,e);break;case"format:idn-email":Tt(r,"idn-email",n.message,e);break;case"pattern:zod":Ke(r,Et.email,n.message,e);break}break;case"url":Tt(r,"uri",n.message,e);break;case"uuid":Tt(r,"uuid",n.message,e);break;case"regex":Ke(r,n.regex,n.message,e);break;case"cuid":Ke(r,Et.cuid,n.message,e);break;case"cuid2":Ke(r,Et.cuid2,n.message,e);break;case"startsWith":Ke(r,RegExp(`^${_l(n.value,e)}`),n.message,e);break;case"endsWith":Ke(r,RegExp(`${_l(n.value,e)}$`),n.message,e);break;case"datetime":Tt(r,"date-time",n.message,e);break;case"date":Tt(r,"date",n.message,e);break;case"time":Tt(r,"time",n.message,e);break;case"duration":Tt(r,"duration",n.message,e);break;case"length":X(r,"minLength",typeof r.minLength=="number"?Math.max(r.minLength,n.value):n.value,n.message,e),X(r,"maxLength",typeof r.maxLength=="number"?Math.min(r.maxLength,n.value):n.value,n.message,e);break;case"includes":{Ke(r,RegExp(_l(n.value,e)),n.message,e);break}case"ip":{n.version!=="v6"&&Tt(r,"ipv4",n.message,e),n.version!=="v4"&&Tt(r,"ipv6",n.message,e);break}case"base64url":Ke(r,Et.base64url,n.message,e);break;case"jwt":Ke(r,Et.jwt,n.message,e);break;case"cidr":{n.version!=="v6"&&Ke(r,Et.ipv4Cidr,n.message,e),n.version!=="v4"&&Ke(r,Et.ipv6Cidr,n.message,e);break}case"emoji":Ke(r,Et.emoji(),n.message,e);break;case"ulid":{Ke(r,Et.ulid,n.message,e);break}case"base64":{switch(e.base64Strategy){case"format:binary":{Tt(r,"binary",n.message,e);break}case"contentEncoding:base64":{X(r,"contentEncoding","base64",n.message,e);break}case"pattern:zod":{Ke(r,Et.base64,n.message,e);break}}break}case"nanoid":Ke(r,Et.nanoid,n.message,e);case"toLowerCase":case"toUpperCase":case"trim":break;default:}return r}function _l(t,e){return e.patternStrategy==="escape"?fT(t):t}var pT=new Set("ABCDEFGHIJKLMNOPQRSTUVXYZabcdefghijklmnopqrstuvxyz0123456789");function fT(t){let e="";for(let r=0;r<t.length;r++)pT.has(t[r])||(e+="\\"),e+=t[r];return e}function Tt(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}}})):X(t,"format",e,r,n)}function Ke(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:og(e,n),...r&&n.errorMessages&&{errorMessage:{pattern:r}}})):X(t,"pattern",og(e,n),r,n)}function og(t,e){if(!e.applyRegexFlags||!t.flags)return t.source;let r={i:t.flags.includes("i"),m:t.flags.includes("m"),s:t.flags.includes("s")},n=r.i?t.source.toLowerCase():t.source,o="",s=!1,i=!1,a=!1;for(let c=0;c<n.length;c++){if(s){o+=n[c],s=!1;continue}if(r.i){if(i){if(n[c].match(/[a-z]/)){a?(o+=n[c],o+=`${n[c-2]}-${n[c]}`.toUpperCase(),a=!1):n[c+1]==="-"&&n[c+2]?.match(/[a-z]/)?(o+=n[c],a=!0):o+=`${n[c]}${n[c].toUpperCase()}`;continue}}else if(n[c].match(/[a-z]/)){o+=`[${n[c]}${n[c].toUpperCase()}]`;continue}}if(r.m){if(n[c]==="^"){o+=`(^|(?<=[\r
53
53
  ]))`;continue}else if(n[c]==="$"){o+=`($|(?=[\r
54
54
  ]))`;continue}}if(r.s&&n[c]==="."){o+=i?`${n[c]}\r
55
55
  `:`[${n[c]}\r
56
- ]`;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 Ti(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}=Ei(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}=wi(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function sg(t,e){if(e.mapStrategy==="record")return Ti(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 ig(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 ag(t){return t.target==="openAi"?void 0:{not:ye({...t,currentPath:[...t.currentPath,"not"]})}}function cg(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Ho={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function lg(t,e){if(e.target==="openApi3")return ug(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Ho&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Ho[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 ug(t,e)}var ug=(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 dg(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:Ho[t.innerType._def.typeName],nullable:!0}:{type:[Ho[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 pg(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",fl(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?X(r,"minimum",n.value,n.message,e):X(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),X(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?X(r,"maximum",n.value,n.message,e):X(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),X(r,"maximum",n.value,n.message,e));break;case"multipleOf":X(r,"multipleOf",n.value,n.message,e);break}return r}function fg(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=hT(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=mT(t,e);return i!==void 0&&(n.additionalProperties=i),n}function mT(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 hT(t){try{return t.isOptional()}catch{return!0}}var mg=(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 hg=(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 gg(t,e){return M(t.type._def,e)}function _g(t,e){let n={type:"array",uniqueItems:!0,items:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&X(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&X(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function yg(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 xg(t){return{not:ye(t)}}function vg(t){return ye(t)}var kg=(t,e)=>M(t.innerType._def,e);var Sg=(t,e,r)=>{switch(e){case b.ZodString:return Ei(t,r);case b.ZodNumber:return pg(t,r);case b.ZodObject:return fg(t,r);case b.ZodBigInt:return Gh(t,r);case b.ZodBoolean:return Yh();case b.ZodDate:return ml(t,r);case b.ZodUndefined:return xg(r);case b.ZodNull:return cg(r);case b.ZodArray:return Jh(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return lg(t,r);case b.ZodIntersection:return rg(t,r);case b.ZodTuple:return yg(t,r);case b.ZodRecord:return Ti(t,r);case b.ZodLiteral:return ng(t,r);case b.ZodEnum:return tg(t);case b.ZodNativeEnum:return ig(t);case b.ZodNullable:return dg(t,r);case b.ZodOptional:return mg(t,r);case b.ZodMap:return sg(t,r);case b.ZodSet:return _g(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return gg(t,r);case b.ZodNaN:case b.ZodNever:return ag(r);case b.ZodEffects:return eg(t,r);case b.ZodAny:return ye(r);case b.ZodUnknown:return vg(r);case b.ZodDefault:return Qh(t,r);case b.ZodBranded:return wi(t,r);case b.ZodReadonly:return kg(t,r);case b.ZodCatch:return Xh(t,r);case b.ZodPipeline:return hg(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!==Vh)return a}if(n&&!r){let a=gT(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&&_T(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var gT=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:bi(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}},_T=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var _l=(t,e)=>{let r=Wh(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 yT(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function yl(t,e){return ut(t)?Du(t,{target:yT(e?.target),io:e?.pipeStrategy??"input"}):_l(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function xl(t){let r=fr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ti(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function vl(t,e){let r=pr(t,e);if(!r.success)throw r.error;return r.data}var xT=6e4,$i=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(ci,r=>{this._oncancel(r)}),this.setNotificationHandler(li,r=>{this._onprogress(r)}),this.setRequestHandler(ui,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(di,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(z.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(fi,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,f=new C(d.error.code,d.error.message,d.error.data);l(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new C(z.InvalidParams,`Task not found: ${s}`);if(!hr(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(hr(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[mr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(mi,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new C(z.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(gi,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(z.InvalidParams,`Task not found: ${r.params.taskId}`);if(hr(o.status))throw new C(z.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(z.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof C?o:new C(z.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(z.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),zo(s)||zh(s)?this._onresponse(s):Xu(s)?this._onrequest(s,i):Nh(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(z.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?.[mr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:z.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=Oh(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,f)=>{if(i.signal.aborted)throw new C(z.ConnectionClosed,"Request was cancelled");let m={...f,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let p=m.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:z.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),zo(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(zo(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),zo(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(z.InternalError,String(i))}}return}let s;try{let i=await this.request(e,zn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new C(z.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},hr(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(z.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new C(z.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(z.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=x=>{l(x)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(x){d(x);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[mr]:c}});let p=x=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String(x)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(w=>this._onerror(new Error(`Failed to send cancellation: ${w}`)));let k=x instanceof C?x:new C(z.RequestTimeout,String(x));l(k)};this._responseHandlers.set(f,x=>{if(!n?.signal?.aborted){if(x instanceof Error)return l(x);try{let k=pr(r,x.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??xT,g=()=>p(C.fromError(z.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let y=c?.taskId;if(y){let x=k=>{let w=this._responseHandlers.get(f);w?w(k):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,x),this._enqueueTaskMessage(y,{type:"request",message:m,timestamp:Date.now()}).catch(k=>{this._cleanupTimeout(f),l(k)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(x=>{this._cleanupTimeout(f),l(x)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},pi,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},hi,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Mh,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||{},[mr]: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||{},[mr]: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||{},[mr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=xl(e);this.assertRequestHandlerCapability(n),this._requestHandlers.set(n,(o,s)=>{let i=vl(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=xl(e);this._notificationHandlers.set(n,o=>{let s=vl(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"&&Xu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new C(z.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(z.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new C(z.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(z.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=Lo.parse({method:"notifications/tasks/status",params:a});await this.notification(c),hr(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(z.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(hr(a.status))throw new C(z.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=Lo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),hr(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function bg(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function wg(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];bg(i)&&bg(s)?r[o]={...i,...s}:r[o]=s}return r}var lx=Of(sp(),1),dx=Of(ux(),1);function lC(){let t=new lx.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,dx.default)(t),t}var ua=class{constructor(e){this._ajv=e??lC()}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 la=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 px(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 fx(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 da=class extends $i{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Uo.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 ua,this.setRequestHandler(tl,n=>this._oninitialize(n)),this.setNotificationHandler(rl,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(ul,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Uo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new la(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=wg(this._capabilities,e)}setRequestHandler(e,r){let o=fr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(ut(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=pr(Ln,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new C(z.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=pr(zn,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new C(z.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=pr(vi,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new C(z.InvalidParams,`Invalid tools/call result: ${p}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){fx(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&px(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:$h.includes(r)?r:Gu,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},ai)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],s=o.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},dl,r):this.request({method:"sampling/createMessage",params:e},ll,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},ki,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},ki,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(z.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof C?i:new C(z.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},pl,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 hx=Symbol.for("mcp.completable");function fp(t){return!!t&&typeof t=="object"&&hx in t}function gx(t){return t[hx]?.complete}var mx;(function(t){t.Completable="McpCompletable"})(mx||(mx={}));var dC=/^[A-Za-z0-9._-]{1,128}$/;function pC(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"),!dC.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 fC(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 mp(t){let e=pC(t);return fC(t,e.warnings),e.isValid}var pa=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 fa=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 da(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new pa(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(wr(xi)),this.server.assertCanSetRequestHandler(wr(Ln)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(xi,()=>({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=In(r.inputSchema);return o?yl(o,{strictUnions:!0,pipeStrategy:"input"}):mC})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=In(r.outputSchema);o&&(n.outputSchema=yl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(Ln,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new C(z.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new C(z.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(z.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new C(z.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===z.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=In(e.inputSchema)??e.inputSchema,i=await Qs(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=ei(a);throw new C(z.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(z.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=In(e.outputSchema),s=await Qs(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=ei(i);throw new C(z.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new C(z.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(wr(Si)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Si,async e=>{switch(e.params.ref.type){case"ref/prompt":return qh(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Fh(e),this.handleResourceCompletion(e,e.params.ref);default:throw new C(z.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(z.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new C(z.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return ys;let s=fr(n.argsSchema)?.[e.params.argument.name];if(!fp(s))return ys;let i=gx(s);if(!i)return ys;let a=await i(e.params.argument.value,e.params.context);return yx(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 ys;throw new C(z.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return ys;let s=await o(e.params.argument.value,e.params.context);return yx(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(wr(jn)),this.server.assertCanSetRequestHandler(wr(Mn)),this.server.assertCanSetRequestHandler(wr(_i)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(jn,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(Mn,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(_i,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new C(z.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(z.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(wr(Dn)),this.server.assertCanSetRequestHandler(wr(yi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Dn,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?gC(r.argsSchema):void 0}))})),this.server.setRequestHandler(yi,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new C(z.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new C(z.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=In(n.argsSchema),s=await Qs(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=ei(c);throw new C(z.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:tn(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=tn(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 Ye?c._def?.innerType:c;return fp(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){mp(e);let l={title:r,description:n,inputSchema:_x(o),outputSchema:_x(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"&&mp(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=tn(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=tn(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];hp(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!hp(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 mC={type:"object",properties:{}};function xx(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function hC(t){return"_def"in t||"_zod"in t||xx(t)}function hp(t){return typeof t!="object"||t===null||hC(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(xx)}function _x(t){if(t)return hp(t)?tn(t):t}function gC(t){let e=fr(t);return e?Object.entries(e).map(([r,n])=>{let o=oh(n),s=sh(n);return{name:r,description:o,required:!s}}):[]}function wr(t){let r=fr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ti(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function yx(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var ys={completion:{values:[],hasMore:!1}};import kx from"node:process";var ma=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
56
+ ]`;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 Ti(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}=Ei(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}=wi(t.keyType._def,e);return{...r,propertyNames:o}}}return r}function sg(t,e){if(e.mapStrategy==="record")return Ti(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 ig(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 ag(t){return t.target==="openAi"?void 0:{not:ye({...t,currentPath:[...t.currentPath,"not"]})}}function cg(t){return t.target==="openApi3"?{enum:["null"],nullable:!0}:{type:"null"}}var Ho={ZodString:"string",ZodNumber:"number",ZodBigInt:"integer",ZodBoolean:"boolean",ZodNull:"null"};function lg(t,e){if(e.target==="openApi3")return ug(t,e);let r=t.options instanceof Map?Array.from(t.options.values()):t.options;if(r.every(n=>n._def.typeName in Ho&&(!n._def.checks||!n._def.checks.length))){let n=r.reduce((o,s)=>{let i=Ho[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 ug(t,e)}var ug=(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 dg(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:Ho[t.innerType._def.typeName],nullable:!0}:{type:[Ho[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 pg(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",ml(r,"type",n.message,e);break;case"min":e.target==="jsonSchema7"?n.inclusive?X(r,"minimum",n.value,n.message,e):X(r,"exclusiveMinimum",n.value,n.message,e):(n.inclusive||(r.exclusiveMinimum=!0),X(r,"minimum",n.value,n.message,e));break;case"max":e.target==="jsonSchema7"?n.inclusive?X(r,"maximum",n.value,n.message,e):X(r,"exclusiveMaximum",n.value,n.message,e):(n.inclusive||(r.exclusiveMaximum=!0),X(r,"maximum",n.value,n.message,e));break;case"multipleOf":X(r,"multipleOf",n.value,n.message,e);break}return r}function fg(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=hT(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=mT(t,e);return i!==void 0&&(n.additionalProperties=i),n}function mT(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 hT(t){try{return t.isOptional()}catch{return!0}}var mg=(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 hg=(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 gg(t,e){return M(t.type._def,e)}function _g(t,e){let n={type:"array",uniqueItems:!0,items:M(t.valueType._def,{...e,currentPath:[...e.currentPath,"items"]})};return t.minSize&&X(n,"minItems",t.minSize.value,t.minSize.message,e),t.maxSize&&X(n,"maxItems",t.maxSize.value,t.maxSize.message,e),n}function yg(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 xg(t){return{not:ye(t)}}function vg(t){return ye(t)}var kg=(t,e)=>M(t.innerType._def,e);var Sg=(t,e,r)=>{switch(e){case b.ZodString:return Ei(t,r);case b.ZodNumber:return pg(t,r);case b.ZodObject:return fg(t,r);case b.ZodBigInt:return Gh(t,r);case b.ZodBoolean:return Yh();case b.ZodDate:return hl(t,r);case b.ZodUndefined:return xg(r);case b.ZodNull:return cg(r);case b.ZodArray:return Jh(t,r);case b.ZodUnion:case b.ZodDiscriminatedUnion:return lg(t,r);case b.ZodIntersection:return rg(t,r);case b.ZodTuple:return yg(t,r);case b.ZodRecord:return Ti(t,r);case b.ZodLiteral:return ng(t,r);case b.ZodEnum:return tg(t);case b.ZodNativeEnum:return ig(t);case b.ZodNullable:return dg(t,r);case b.ZodOptional:return mg(t,r);case b.ZodMap:return sg(t,r);case b.ZodSet:return _g(t,r);case b.ZodLazy:return()=>t.getter()._def;case b.ZodPromise:return gg(t,r);case b.ZodNaN:case b.ZodNever:return ag(r);case b.ZodEffects:return eg(t,r);case b.ZodAny:return ye(r);case b.ZodUnknown:return vg(r);case b.ZodDefault:return Qh(t,r);case b.ZodBranded:return wi(t,r);case b.ZodReadonly:return kg(t,r);case b.ZodCatch:return Xh(t,r);case b.ZodPipeline:return hg(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!==Vh)return a}if(n&&!r){let a=gT(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&&_T(t,e,i),e.postProcess){let a=e.postProcess(i,t,e);return o.jsonSchema=i,a}return o.jsonSchema=i,i}var gT=(t,e)=>{switch(e.$refStrategy){case"root":return{$ref:t.path.join("/")};case"relative":return{$ref:bi(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}},_T=(t,e,r)=>(t.description&&(r.description=t.description,e.markdownDescription&&(r.markdownDescription=t.description)),r);var yl=(t,e)=>{let r=Wh(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 yT(t){return!t||t==="jsonSchema7"||t==="draft-7"?"draft-7":t==="jsonSchema2019-09"||t==="draft-2020-12"?"draft-2020-12":"draft-7"}function xl(t,e){return ut(t)?Lu(t,{target:yT(e?.target),io:e?.pipeStrategy??"input"}):yl(t,{strictUnions:e?.strictUnions??!0,pipeStrategy:e?.pipeStrategy??"input"})}function vl(t){let r=hr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ti(r);if(typeof n!="string")throw new Error("Schema method literal must be a string");return n}function kl(t,e){let r=mr(t,e);if(!r.success)throw r.error;return r.data}var xT=6e4,$i=class{constructor(e){this._options=e,this._requestMessageId=0,this._requestHandlers=new Map,this._requestHandlerAbortControllers=new Map,this._notificationHandlers=new Map,this._responseHandlers=new Map,this._progressHandlers=new Map,this._timeoutInfo=new Map,this._pendingDebouncedNotifications=new Set,this._taskProgressTokens=new Map,this._requestResolvers=new Map,this.setNotificationHandler(ci,r=>{this._oncancel(r)}),this.setNotificationHandler(li,r=>{this._onprogress(r)}),this.setRequestHandler(ui,r=>({})),this._taskStore=e?.taskStore,this._taskMessageQueue=e?.taskMessageQueue,this._taskStore&&(this.setRequestHandler(di,async(r,n)=>{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(z.InvalidParams,"Failed to retrieve task: Task not found");return{...o}}),this.setRequestHandler(fi,async(r,n)=>{let o=async()=>{let s=r.params.taskId;if(this._taskMessageQueue){let a;for(;a=await this._taskMessageQueue.dequeue(s,n.sessionId);){if(a.type==="response"||a.type==="error"){let c=a.message,u=c.id,l=this._requestResolvers.get(u);if(l)if(this._requestResolvers.delete(u),a.type==="response")l(c);else{let d=c,f=new C(d.error.code,d.error.message,d.error.data);l(f)}else{let d=a.type==="response"?"Response":"Error";this._onerror(new Error(`${d} handler missing for request ${u}`))}continue}await this._transport?.send(a.message,{relatedRequestId:n.requestId})}}let i=await this._taskStore.getTask(s,n.sessionId);if(!i)throw new C(z.InvalidParams,`Task not found: ${s}`);if(!_r(i.status))return await this._waitForTaskUpdate(s,n.signal),await o();if(_r(i.status)){let a=await this._taskStore.getTaskResult(s,n.sessionId);return this._clearTaskQueue(s),{...a,_meta:{...a._meta,[gr]:{taskId:s}}}}return await o()};return await o()}),this.setRequestHandler(mi,async(r,n)=>{try{let{tasks:o,nextCursor:s}=await this._taskStore.listTasks(r.params?.cursor,n.sessionId);return{tasks:o,nextCursor:s,_meta:{}}}catch(o){throw new C(z.InvalidParams,`Failed to list tasks: ${o instanceof Error?o.message:String(o)}`)}}),this.setRequestHandler(gi,async(r,n)=>{try{let o=await this._taskStore.getTask(r.params.taskId,n.sessionId);if(!o)throw new C(z.InvalidParams,`Task not found: ${r.params.taskId}`);if(_r(o.status))throw new C(z.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(z.InvalidParams,`Task not found after cancellation: ${r.params.taskId}`);return{_meta:{},...s}}catch(o){throw o instanceof C?o:new C(z.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(z.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),zo(s)||zh(s)?this._onresponse(s):Qu(s)?this._onrequest(s,i):Nh(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(z.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?.[gr]?.taskId;if(n===void 0){let l={jsonrpc:"2.0",id:e.id,error:{code:z.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=Oh(e.params)?e.params.task:void 0,c=this._taskStore?this.requestTaskStore(e,o?.sessionId):void 0,u={signal:i.signal,sessionId:o?.sessionId,_meta:e.params?._meta,sendNotification:async l=>{if(i.signal.aborted)return;let d={relatedRequestId:e.id};s&&(d.relatedTask={taskId:s}),await this.notification(l,d)},sendRequest:async(l,d,f)=>{if(i.signal.aborted)throw new C(z.ConnectionClosed,"Request was cancelled");let m={...f,relatedRequestId:e.id};s&&!m.relatedTask&&(m.relatedTask={taskId:s});let p=m.relatedTask?.taskId??s;return p&&c&&await c.updateTaskStatus(p,"input_required"),await this.request(l,d,m)},authInfo:r?.authInfo,requestId:e.id,requestInfo:r?.requestInfo,taskId:s,taskStore:c,taskRequestedTtl:a?.ttl,closeSSEStream:r?.closeSSEStream,closeStandaloneSSEStream:r?.closeStandaloneSSEStream};Promise.resolve().then(()=>{a&&this.assertTaskHandlerCapability(e.method)}).then(()=>n(e,u)).then(async l=>{if(i.signal.aborted)return;let d={result:l,jsonrpc:"2.0",id:e.id};s&&this._taskMessageQueue?await this._enqueueTaskMessage(s,{type:"response",message:d,timestamp:Date.now()},o?.sessionId):await o?.send(d)},async l=>{if(i.signal.aborted)return;let d={jsonrpc:"2.0",id:e.id,error:{code:Number.isSafeInteger(l.code)?l.code:z.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),zo(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(zo(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),zo(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(z.InternalError,String(i))}}return}let s;try{let i=await this.request(e,zn,n);if(i.task)s=i.task.taskId,yield{type:"taskCreated",task:i.task};else throw new C(z.InternalError,"Task creation did not return a task");for(;;){let a=await this.getTask({taskId:s},n);if(yield{type:"taskStatus",task:a},_r(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(z.InternalError,`Task ${s} failed`)}:a.status==="cancelled"&&(yield{type:"error",error:new C(z.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(z.InternalError,String(i))}}}request(e,r,n){let{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i,task:a,relatedTask:c}=n??{};return new Promise((u,l)=>{let d=y=>{l(y)};if(!this._transport){d(new Error("Not connected"));return}if(this._options?.enforceStrictCapabilities===!0)try{this.assertCapabilityForMethod(e.method),a&&this.assertTaskCapability(e.method)}catch(y){d(y);return}n?.signal?.throwIfAborted();let f=this._requestMessageId++,m={...e,jsonrpc:"2.0",id:f};n?.onprogress&&(this._progressHandlers.set(f,n.onprogress),m.params={...e.params,_meta:{...e.params?._meta||{},progressToken:f}}),a&&(m.params={...m.params,task:a}),c&&(m.params={...m.params,_meta:{...m.params?._meta||{},[gr]:c}});let p=y=>{this._responseHandlers.delete(f),this._progressHandlers.delete(f),this._cleanupTimeout(f),this._transport?.send({jsonrpc:"2.0",method:"notifications/cancelled",params:{requestId:f,reason:String(y)}},{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(w=>this._onerror(new Error(`Failed to send cancellation: ${w}`)));let k=y instanceof C?y:new C(z.RequestTimeout,String(y));l(k)};this._responseHandlers.set(f,y=>{if(!n?.signal?.aborted){if(y instanceof Error)return l(y);try{let k=mr(r,y.result);k.success?u(k.data):l(k.error)}catch(k){l(k)}}}),n?.signal?.addEventListener("abort",()=>{p(n?.signal?.reason)});let h=n?.timeout??xT,g=()=>p(C.fromError(z.RequestTimeout,"Request timed out",{timeout:h}));this._setupTimeout(f,h,n?.maxTotalTimeout,g,n?.resetTimeoutOnProgress??!1);let x=c?.taskId;if(x){let y=k=>{let w=this._responseHandlers.get(f);w?w(k):this._onerror(new Error(`Response handler missing for side-channeled request ${f}`))};this._requestResolvers.set(f,y),this._enqueueTaskMessage(x,{type:"request",message:m,timestamp:Date.now()}).catch(k=>{this._cleanupTimeout(f),l(k)})}else this._transport.send(m,{relatedRequestId:o,resumptionToken:s,onresumptiontoken:i}).catch(y=>{this._cleanupTimeout(f),l(y)})})}async getTask(e,r){return this.request({method:"tasks/get",params:e},pi,r)}async getTaskResult(e,r,n){return this.request({method:"tasks/result",params:e},r,n)}async listTasks(e,r){return this.request({method:"tasks/list",params:e},hi,r)}async cancelTask(e,r){return this.request({method:"tasks/cancel",params:e},Mh,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||{},[gr]: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||{},[gr]: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||{},[gr]:r.relatedTask}}}),await this._transport.send(i,r)}setRequestHandler(e,r){let n=vl(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=vl(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"&&Qu(o.message)){let s=o.message.id,i=this._requestResolvers.get(s);i?(i(new C(z.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(z.InvalidRequest,"Request cancelled"));return}let i=setTimeout(o,n);r.addEventListener("abort",()=>{clearTimeout(i),s(new C(z.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(z.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=Lo.parse({method:"notifications/tasks/status",params:a});await this.notification(c),_r(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(z.InvalidParams,`Task "${o}" not found - it may have been cleaned up`);if(_r(a.status))throw new C(z.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=Lo.parse({method:"notifications/tasks/status",params:c});await this.notification(u),_r(c.status)&&this._cleanupTaskProgressHandler(o)}},listTasks:o=>n.listTasks(o,r)}}};function bg(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}function wg(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];bg(i)&&bg(s)?r[o]={...i,...s}:r[o]=s}return r}var lx=Of(ip(),1),dx=Of(ux(),1);function lC(){let t=new lx.default({strict:!1,validateFormats:!0,validateSchema:!1,allErrors:!0});return(0,dx.default)(t),t}var ua=class{constructor(e){this._ajv=e??lC()}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 la=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 px(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 fx(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 da=class extends $i{constructor(e,r){super(r),this._serverInfo=e,this._loggingLevels=new Map,this.LOG_LEVEL_SEVERITY=new Map(Uo.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 ua,this.setRequestHandler(rl,n=>this._oninitialize(n)),this.setNotificationHandler(nl,()=>this.oninitialized?.()),this._capabilities.logging&&this.setRequestHandler(ll,async(n,o)=>{let s=o.sessionId||o.requestInfo?.headers["mcp-session-id"]||void 0,{level:i}=n.params,a=Uo.safeParse(i);return a.success&&this._loggingLevels.set(s,a.data),{}})}get experimental(){return this._experimental||(this._experimental={tasks:new la(this)}),this._experimental}registerCapabilities(e){if(this.transport)throw new Error("Cannot register capabilities after connecting to transport");this._capabilities=wg(this._capabilities,e)}setRequestHandler(e,r){let o=hr(e)?.method;if(!o)throw new Error("Schema is missing a method literal");let s;if(ut(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=mr(Ln,c);if(!l.success){let p=l.error instanceof Error?l.error.message:String(l.error);throw new C(z.InvalidParams,`Invalid tools/call request: ${p}`)}let{params:d}=l.data,f=await Promise.resolve(r(c,u));if(d.task){let p=mr(zn,f);if(!p.success){let h=p.error instanceof Error?p.error.message:String(p.error);throw new C(z.InvalidParams,`Invalid task creation result: ${h}`)}return p.data}let m=mr(vi,f);if(!m.success){let p=m.error instanceof Error?m.error.message:String(m.error);throw new C(z.InvalidParams,`Invalid tools/call result: ${p}`)}return m.data};return super.setRequestHandler(e,a)}return super.setRequestHandler(e,r)}assertCapabilityForMethod(e){switch(e){case"sampling/createMessage":if(!this._clientCapabilities?.sampling)throw new Error(`Client does not support sampling (required for ${e})`);break;case"elicitation/create":if(!this._clientCapabilities?.elicitation)throw new Error(`Client does not support elicitation (required for ${e})`);break;case"roots/list":if(!this._clientCapabilities?.roots)throw new Error(`Client does not support listing roots (required for ${e})`);break;case"ping":break}}assertNotificationCapability(e){switch(e){case"notifications/message":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"notifications/resources/updated":case"notifications/resources/list_changed":if(!this._capabilities.resources)throw new Error(`Server does not support notifying about resources (required for ${e})`);break;case"notifications/tools/list_changed":if(!this._capabilities.tools)throw new Error(`Server does not support notifying of tool list changes (required for ${e})`);break;case"notifications/prompts/list_changed":if(!this._capabilities.prompts)throw new Error(`Server does not support notifying of prompt list changes (required for ${e})`);break;case"notifications/elicitation/complete":if(!this._clientCapabilities?.elicitation?.url)throw new Error(`Client does not support URL elicitation (required for ${e})`);break;case"notifications/cancelled":break;case"notifications/progress":break}}assertRequestHandlerCapability(e){if(this._capabilities)switch(e){case"completion/complete":if(!this._capabilities.completions)throw new Error(`Server does not support completions (required for ${e})`);break;case"logging/setLevel":if(!this._capabilities.logging)throw new Error(`Server does not support logging (required for ${e})`);break;case"prompts/get":case"prompts/list":if(!this._capabilities.prompts)throw new Error(`Server does not support prompts (required for ${e})`);break;case"resources/list":case"resources/templates/list":case"resources/read":if(!this._capabilities.resources)throw new Error(`Server does not support resources (required for ${e})`);break;case"tools/call":case"tools/list":if(!this._capabilities.tools)throw new Error(`Server does not support tools (required for ${e})`);break;case"tasks/get":case"tasks/list":case"tasks/result":case"tasks/cancel":if(!this._capabilities.tasks)throw new Error(`Server does not support tasks capability (required for ${e})`);break;case"ping":case"initialize":break}}assertTaskCapability(e){fx(this._clientCapabilities?.tasks?.requests,e,"Client")}assertTaskHandlerCapability(e){this._capabilities&&px(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:$h.includes(r)?r:Yu,capabilities:this.getCapabilities(),serverInfo:this._serverInfo,...this._instructions&&{instructions:this._instructions}}}getClientCapabilities(){return this._clientCapabilities}getClientVersion(){return this._clientVersion}getCapabilities(){return this._capabilities}async ping(){return this.request({method:"ping"},ai)}async createMessage(e,r){if((e.tools||e.toolChoice)&&!this._clientCapabilities?.sampling?.tools)throw new Error("Client does not support sampling tools capability.");if(e.messages.length>0){let n=e.messages[e.messages.length-1],o=Array.isArray(n.content)?n.content:[n.content],s=o.some(u=>u.type==="tool_result"),i=e.messages.length>1?e.messages[e.messages.length-2]:void 0,a=i?Array.isArray(i.content)?i.content:[i.content]:[],c=a.some(u=>u.type==="tool_use");if(s){if(o.some(u=>u.type!=="tool_result"))throw new Error("The last message must contain only tool_result content if any is present");if(!c)throw new Error("tool_result blocks are not matching any tool_use from the previous message")}if(c){let u=new Set(a.filter(d=>d.type==="tool_use").map(d=>d.id)),l=new Set(o.filter(d=>d.type==="tool_result").map(d=>d.toolUseId));if(u.size!==l.size||![...u].every(d=>l.has(d)))throw new Error("ids of tool_result blocks and tool_use blocks from previous message do not match")}}return e.tools?this.request({method:"sampling/createMessage",params:e},pl,r):this.request({method:"sampling/createMessage",params:e},dl,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},ki,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},ki,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(z.InvalidParams,`Elicitation response content does not match requested schema: ${a.errorMessage}`)}catch(i){throw i instanceof C?i:new C(z.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},fl,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 hx=Symbol.for("mcp.completable");function mp(t){return!!t&&typeof t=="object"&&hx in t}function gx(t){return t[hx]?.complete}var mx;(function(t){t.Completable="McpCompletable"})(mx||(mx={}));var dC=/^[A-Za-z0-9._-]{1,128}$/;function pC(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"),!dC.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 fC(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 hp(t){let e=pC(t);return fC(t,e.warnings),e.isValid}var pa=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 fa=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 da(e,r)}get experimental(){return this._experimental||(this._experimental={tasks:new pa(this)}),this._experimental}async connect(e){return await this.server.connect(e)}async close(){await this.server.close()}setToolRequestHandlers(){this._toolHandlersInitialized||(this.server.assertCanSetRequestHandler(Tr(xi)),this.server.assertCanSetRequestHandler(Tr(Ln)),this.server.registerCapabilities({tools:{listChanged:!0}}),this.server.setRequestHandler(xi,()=>({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=In(r.inputSchema);return o?xl(o,{strictUnions:!0,pipeStrategy:"input"}):mC})(),annotations:r.annotations,execution:r.execution,_meta:r._meta};if(r.outputSchema){let o=In(r.outputSchema);o&&(n.outputSchema=xl(o,{strictUnions:!0,pipeStrategy:"output"}))}return n})})),this.server.setRequestHandler(Ln,async(e,r)=>{try{let n=this._registeredTools[e.params.name];if(!n)throw new C(z.InvalidParams,`Tool ${e.params.name} not found`);if(!n.enabled)throw new C(z.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(z.InternalError,`Tool ${e.params.name} has taskSupport '${s}' but was not registered with registerToolTask`);if(s==="required"&&!o)throw new C(z.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===z.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=In(e.inputSchema)??e.inputSchema,i=await Qs(s,r);if(!i.success){let a="error"in i?i.error:"Unknown error",c=ei(a);throw new C(z.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(z.InvalidParams,`Output validation error: Tool ${n} has an output schema but no structured content was provided`);let o=In(e.outputSchema),s=await Qs(o,r.structuredContent);if(!s.success){let i="error"in s?s.error:"Unknown error",a=ei(i);throw new C(z.InvalidParams,`Output validation error: Invalid structured content for tool ${n}: ${a}`)}}async executeToolHandler(e,r,n){let o=e.handler;if("createTask"in o){if(!n.taskStore)throw new Error("No task store provided.");let i={...n,taskStore:n.taskStore};if(e.inputSchema){let a=o;return await Promise.resolve(a.createTask(r,i))}else{let a=o;return await Promise.resolve(a.createTask(i))}}if(e.inputSchema){let i=o;return await Promise.resolve(i(r,n))}else{let i=o;return await Promise.resolve(i(n))}}async handleAutomaticTaskPolling(e,r,n){if(!n.taskStore)throw new Error("No task store provided for task-capable tool.");let o=await this.validateToolInput(e,r.params.arguments,r.params.name),s=e.handler,i={...n,taskStore:n.taskStore},a=o?await Promise.resolve(s.createTask(o,i)):await Promise.resolve(s.createTask(i)),c=a.task.taskId,u=a.task,l=u.pollInterval??5e3;for(;u.status!=="completed"&&u.status!=="failed"&&u.status!=="cancelled";){await new Promise(f=>setTimeout(f,l));let d=await n.taskStore.getTask(c);if(!d)throw new C(z.InternalError,`Task ${c} not found during polling`);u=d}return await n.taskStore.getTaskResult(c)}setCompletionRequestHandler(){this._completionHandlerInitialized||(this.server.assertCanSetRequestHandler(Tr(Si)),this.server.registerCapabilities({completions:{}}),this.server.setRequestHandler(Si,async e=>{switch(e.params.ref.type){case"ref/prompt":return qh(e),this.handlePromptCompletion(e,e.params.ref);case"ref/resource":return Fh(e),this.handleResourceCompletion(e,e.params.ref);default:throw new C(z.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(z.InvalidParams,`Prompt ${r.name} not found`);if(!n.enabled)throw new C(z.InvalidParams,`Prompt ${r.name} disabled`);if(!n.argsSchema)return ys;let s=hr(n.argsSchema)?.[e.params.argument.name];if(!mp(s))return ys;let i=gx(s);if(!i)return ys;let a=await i(e.params.argument.value,e.params.context);return yx(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 ys;throw new C(z.InvalidParams,`Resource template ${e.params.ref.uri} not found`)}let o=n.resourceTemplate.completeCallback(e.params.argument.name);if(!o)return ys;let s=await o(e.params.argument.value,e.params.context);return yx(s)}setResourceRequestHandlers(){this._resourceHandlersInitialized||(this.server.assertCanSetRequestHandler(Tr(jn)),this.server.assertCanSetRequestHandler(Tr(Mn)),this.server.assertCanSetRequestHandler(Tr(_i)),this.server.registerCapabilities({resources:{listChanged:!0}}),this.server.setRequestHandler(jn,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(Mn,async()=>({resourceTemplates:Object.entries(this._registeredResourceTemplates).map(([r,n])=>({name:r,uriTemplate:n.resourceTemplate.uriTemplate.toString(),...n.metadata}))})),this.server.setRequestHandler(_i,async(e,r)=>{let n=new URL(e.params.uri),o=this._registeredResources[n.toString()];if(o){if(!o.enabled)throw new C(z.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(z.InvalidParams,`Resource ${n} not found`)}),this._resourceHandlersInitialized=!0)}setPromptRequestHandlers(){this._promptHandlersInitialized||(this.server.assertCanSetRequestHandler(Tr(Dn)),this.server.assertCanSetRequestHandler(Tr(yi)),this.server.registerCapabilities({prompts:{listChanged:!0}}),this.server.setRequestHandler(Dn,()=>({prompts:Object.entries(this._registeredPrompts).filter(([,e])=>e.enabled).map(([e,r])=>({name:e,title:r.title,description:r.description,arguments:r.argsSchema?gC(r.argsSchema):void 0}))})),this.server.setRequestHandler(yi,async(e,r)=>{let n=this._registeredPrompts[e.params.name];if(!n)throw new C(z.InvalidParams,`Prompt ${e.params.name} not found`);if(!n.enabled)throw new C(z.InvalidParams,`Prompt ${e.params.name} disabled`);if(n.argsSchema){let o=In(n.argsSchema),s=await Qs(o,e.params.arguments);if(!s.success){let c="error"in s?s.error:"Unknown error",u=ei(c);throw new C(z.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:rn(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=rn(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 Ye?c._def?.innerType:c;return mp(u)})&&this.setCompletionRequestHandler(),i}_createRegisteredTool(e,r,n,o,s,i,a,c,u){hp(e);let l={title:r,description:n,inputSchema:_x(o),outputSchema:_x(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"&&hp(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=rn(d.paramsSchema)),typeof d.outputSchema<"u"&&(l.outputSchema=rn(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];gp(c)?(o=r.shift(),r.length>1&&typeof r[0]=="object"&&r[0]!==null&&!gp(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 mC={type:"object",properties:{}};function xx(t){return t!==null&&typeof t=="object"&&"parse"in t&&typeof t.parse=="function"&&"safeParse"in t&&typeof t.safeParse=="function"}function hC(t){return"_def"in t||"_zod"in t||xx(t)}function gp(t){return typeof t!="object"||t===null||hC(t)?!1:Object.keys(t).length===0?!0:Object.values(t).some(xx)}function _x(t){if(t)return gp(t)?rn(t):t}function gC(t){let e=hr(t);return e?Object.entries(e).map(([r,n])=>{let o=oh(n),s=sh(n);return{name:r,description:o,required:!s}}):[]}function Tr(t){let r=hr(t)?.method;if(!r)throw new Error("Schema is missing a method literal");let n=ti(r);if(typeof n=="string")return n;throw new Error("Schema method literal must be a string")}function yx(t){return{completion:{values:t.slice(0,100),total:t.length,hasMore:t.length>100}}}var ys={completion:{values:[],hasMore:!1}};import kx from"node:process";var ma=class{append(e){this._buffer=this._buffer?Buffer.concat([this._buffer,e]):e}readMessage(){if(!this._buffer)return null;let e=this._buffer.indexOf(`
57
57
  `);if(e===-1)return null;let r=this._buffer.toString("utf8",0,e).replace(/\r$/,"");return this._buffer=this._buffer.subarray(e+1),_C(r)}clear(){this._buffer=void 0}};function _C(t){return Ah.parse(JSON.parse(t))}function vx(t){return JSON.stringify(t)+`
58
- `}var ha=class{constructor(e=kx.stdin,r=kx.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ma,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=vx(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as lk}from"node:module";import{createHash as iN}from"node:crypto";import{existsSync as Je,unlinkSync as Pr,readdirSync as aN,readFileSync as dk,writeFileSync as pk,rmSync as vf,mkdirSync as Sf,cpSync as cN,statSync as sk}from"node:fs";import{execSync as $r}from"node:child_process";import{join as me,dirname as Rr,resolve as sr}from"node:path";import{fileURLToPath as uN}from"node:url";import{homedir as bf,tmpdir as wf}from"node:os";import{request as lN}from"node:https";import{spawn as kC,execSync as SC,execFileSync as Cx}from"node:child_process";import{mkdtempSync as bC,writeFileSync as Px,rmSync as Rx,existsSync as Ox}from"node:fs";import{join as xa,resolve as Ix}from"node:path";import{tmpdir as wC}from"node:os";import{execFileSync as yC,execSync as Sx}from"node:child_process";import{existsSync as gp}from"node:fs";var ga=process.platform==="win32";function Me(t){try{let e=ga?`where ${t}`:`command -v ${t}`;return Sx(e,{stdio:"pipe"}),!0}catch{return!1}}function bx(){if(Me("bun"))return!0;for(let t of wx())if(gp(t))return!0;return!1}function xC(){if(Me("bun"))return"bun";for(let e of wx())if(gp(e))return e;let t=process.env.HOME??process.env.USERPROFILE??"";return ga?`${t}\\.bun\\bin\\bun.exe`:`${t}/.bun/bin/bun`}function wx(){let t=process.env.HOME??process.env.USERPROFILE??"";if(ga){let e=process.env.LOCALAPPDATA??"";return[...t?[`${t}\\.bun\\bin\\bun.exe`]:[],...e?[`${e}\\bun\\bin\\bun.exe`]:[]]}return t?[`${t}/.bun/bin/bun`]:[]}function vC(){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(gp(e))return e;try{let r=Sx("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 Ct(t,e=["--version"]){try{return yC(t,e,{encoding:"utf-8",shell:process.platform==="win32",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function _a(){let e=bx()?xC():null;return{javascript:e??process.execPath,typescript:e||(Me("tsx")?"tsx":Me("ts-node")?"ts-node":null),python:Me("python3")?"python3":Me("python")?"python":null,shell:ga?vC()??(Me("sh")?"sh":Me("powershell")?"powershell":"cmd.exe"):Me("bash")?"bash":"sh",ruby:Me("ruby")?"ruby":null,go:Me("go")?"go":null,rust:Me("rustc")?"rustc":null,php:Me("php")?"php":null,perl:Me("perl")?"perl":null,r:Me("Rscript")?"Rscript":Me("r")?"r":null,elixir:Me("elixir")?"elixir":null}}function ya(){return bx()}function Ex(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${Ct(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${Ct(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${Ct(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${Ct(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${Ct(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${Ct(t.go,["version"])})`),t.rust&&e.push(` Rust: ${t.rust} (${Ct(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${Ct(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${Ct(t.perl)})`),t.r&&e.push(` R: ${t.r} (${Ct(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${Ct(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
59
- `)}function Tx(t){let e=["javascript","shell"];return t.typescript&&e.push("typescript"),t.python&&e.push("python"),t.ruby&&e.push("ruby"),t.go&&e.push("go"),t.rust&&e.push("rust"),t.php&&e.push("php"),t.perl&&e.push("perl"),t.r&&e.push("r"),t.elixir&&e.push("elixir"),e}function $x(t,e,r){switch(e){case"javascript":return t.javascript.endsWith("bun")?[t.javascript,"run",r]:[t.javascript,r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript?.endsWith("bun")?[t.typescript,"run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}var gt=process.platform==="win32",EC=(()=>{if(gt)return process.env.TEMP??process.env.TMP??wC();try{let t=Cx(process.platform==="darwin"?"getconf":"mktemp",process.platform==="darwin"?["DARWIN_USER_TEMP_DIR"]:["-u","-d"],{env:{...process.env,TMPDIR:void 0},encoding:"utf-8"}).trim(),e=process.platform==="darwin"?t:Ix(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();function _p(t){if(gt&&t.pid)try{SC(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var xs=class{#e;#t;#n;#o=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024,this.#t=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??_a()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(gt?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=bC(xa(EC,".ctx-mode-"));try{let a=this.#i(i,n,r),c=$x(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#t:i,l=await this.#s(c,u,i,o,s);if(!l.backgrounded)try{Rx(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{Rx(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=Ix(this.#t,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
58
+ `}var ha=class{constructor(e=kx.stdin,r=kx.stdout){this._stdin=e,this._stdout=r,this._readBuffer=new ma,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=vx(e);this._stdout.write(n)?r():this._stdout.once("drain",r)})}};import{createRequire as lk}from"node:module";import{createHash as iN}from"node:crypto";import{existsSync as Be,unlinkSync as Rr,readdirSync as aN,readFileSync as dk,writeFileSync as pk,rmSync as Na,mkdirSync as Sf,cpSync as cN,statSync as sk}from"node:fs";import{execSync as St}from"node:child_process";import{join as de,dirname as ar,resolve as ir}from"node:path";import{fileURLToPath as uN}from"node:url";import{homedir as bf,tmpdir as wf}from"node:os";import{request as lN}from"node:https";import{spawn as kC,execSync as SC,execFileSync as Cx}from"node:child_process";import{mkdtempSync as bC,writeFileSync as Px,rmSync as Rx,existsSync as Ox}from"node:fs";import{join as xa,resolve as Ix}from"node:path";import{tmpdir as wC}from"node:os";import{execFileSync as yC,execSync as Sx}from"node:child_process";import{existsSync as _p}from"node:fs";var ga=process.platform==="win32";function Me(t){try{let e=ga?`where ${t}`:`command -v ${t}`;return Sx(e,{stdio:"pipe"}),!0}catch{return!1}}function bx(){if(Me("bun"))return!0;for(let t of wx())if(_p(t))return!0;return!1}function xC(){if(Me("bun"))return"bun";for(let e of wx())if(_p(e))return e;let t=process.env.HOME??process.env.USERPROFILE??"";return ga?`${t}\\.bun\\bin\\bun.exe`:`${t}/.bun/bin/bun`}function wx(){let t=process.env.HOME??process.env.USERPROFILE??"";if(ga){let e=process.env.LOCALAPPDATA??"";return[...t?[`${t}\\.bun\\bin\\bun.exe`]:[],...e?[`${e}\\bun\\bin\\bun.exe`]:[]]}return t?[`${t}/.bun/bin/bun`]:[]}function vC(){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(_p(e))return e;try{let r=Sx("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 It(t,e=["--version"]){try{return yC(t,e,{encoding:"utf-8",shell:process.platform==="win32",stdio:["pipe","pipe","pipe"],timeout:5e3}).trim().split(/\r?\n/)[0]}catch{return"unknown"}}function _a(){let e=bx()?xC():null;return{javascript:e??process.execPath,typescript:e||(Me("tsx")?"tsx":Me("ts-node")?"ts-node":null),python:Me("python3")?"python3":Me("python")?"python":null,shell:ga?vC()??(Me("sh")?"sh":Me("powershell")?"powershell":"cmd.exe"):Me("bash")?"bash":"sh",ruby:Me("ruby")?"ruby":null,go:Me("go")?"go":null,rust:Me("rustc")?"rustc":null,php:Me("php")?"php":null,perl:Me("perl")?"perl":null,r:Me("Rscript")?"Rscript":Me("r")?"r":null,elixir:Me("elixir")?"elixir":null}}function ya(){return bx()}function Ex(t){let e=[],r=t.javascript?.endsWith("bun")??!1;return e.push(` JavaScript: ${t.javascript} (${It(t.javascript)})${r?" \u26A1":""}`),t.typescript?e.push(` TypeScript: ${t.typescript} (${It(t.typescript)})`):e.push(" TypeScript: not available (install bun, tsx, or ts-node)"),t.python?e.push(` Python: ${t.python} (${It(t.python)})`):e.push(" Python: not available"),e.push(` Shell: ${t.shell} (${It(t.shell)})`),t.ruby&&e.push(` Ruby: ${t.ruby} (${It(t.ruby)})`),t.go&&e.push(` Go: ${t.go} (${It(t.go,["version"])})`),t.rust&&e.push(` Rust: ${t.rust} (${It(t.rust)})`),t.php&&e.push(` PHP: ${t.php} (${It(t.php)})`),t.perl&&e.push(` Perl: ${t.perl} (${It(t.perl)})`),t.r&&e.push(` R: ${t.r} (${It(t.r)})`),t.elixir&&e.push(` Elixir: ${t.elixir} (${It(t.elixir)})`),r||(e.push(""),e.push(" Tip: Install Bun for 3-5x faster JS/TS execution \u2192 https://bun.sh")),e.join(`
59
+ `)}function Tx(t){let e=["javascript","shell"];return t.typescript&&e.push("typescript"),t.python&&e.push("python"),t.ruby&&e.push("ruby"),t.go&&e.push("go"),t.rust&&e.push("rust"),t.php&&e.push("php"),t.perl&&e.push("perl"),t.r&&e.push("r"),t.elixir&&e.push("elixir"),e}function $x(t,e,r){switch(e){case"javascript":return t.javascript.endsWith("bun")?[t.javascript,"run",r]:[t.javascript,r];case"typescript":if(!t.typescript)throw new Error("No TypeScript runtime available. Install one of: bun (recommended), tsx (npm i -g tsx), or ts-node.");return t.typescript?.endsWith("bun")?[t.typescript,"run",r]:t.typescript==="tsx"?["tsx",r]:["ts-node",r];case"python":if(!t.python)throw new Error("No Python runtime available. Install python3 or python.");return[t.python,r];case"shell":return[t.shell,r];case"ruby":if(!t.ruby)throw new Error("Ruby not available. Install ruby.");return[t.ruby,r];case"go":if(!t.go)throw new Error("Go not available. Install go.");return["go","run",r];case"rust":{if(!t.rust)throw new Error("Rust not available. Install rustc via https://rustup.rs");return["__rust_compile_run__",r]}case"php":if(!t.php)throw new Error("PHP not available. Install php.");return["php",r];case"perl":if(!t.perl)throw new Error("Perl not available. Install perl.");return["perl",r];case"r":if(!t.r)throw new Error("R not available. Install R / Rscript.");return[t.r,r];case"elixir":if(!t.elixir)throw new Error("Elixir not available. Install elixir.");return["elixir",r]}}var gt=process.platform==="win32",EC=(()=>{if(gt)return process.env.TEMP??process.env.TMP??wC();try{let t=Cx(process.platform==="darwin"?"getconf":"mktemp",process.platform==="darwin"?["DARWIN_USER_TEMP_DIR"]:["-u","-d"],{env:{...process.env,TMPDIR:void 0},encoding:"utf-8"}).trim(),e=process.platform==="darwin"?t:Ix(t,"..");if(e&&e!==process.cwd())return e}catch{}return"/tmp"})();function yp(t){if(gt&&t.pid)try{SC(`taskkill /F /T /PID ${t.pid}`,{stdio:"pipe"})}catch{}else if(t.pid)try{process.kill(-t.pid,"SIGKILL")}catch{}}var xs=class{#e;#t;#n;#o=new Set;constructor(e){this.#e=e?.hardCapBytes??100*1024*1024,this.#t=e?.projectRoot??process.cwd(),this.#n=e?.runtimes??_a()}get runtimes(){return{...this.#n}}cleanupBackgrounded(){for(let e of this.#o)try{process.kill(gt?e:-e,"SIGTERM")}catch{}this.#o.clear()}async execute(e){let{language:r,code:n,timeout:o=3e4,background:s=!1}=e,i=bC(xa(EC,".ctx-mode-"));try{let a=this.#i(i,n,r),c=$x(this.#n,r,a);if(c[0]==="__rust_compile_run__")return await this.#a(a,i,o);let u=r==="shell"?this.#t:i,l=await this.#s(c,u,i,o,s);if(!l.backgrounded)try{Rx(i,{recursive:!0,force:!0})}catch{}return l}catch(a){try{Rx(i,{recursive:!0,force:!0})}catch{}throw a}}async executeFile(e){let{path:r,language:n,code:o,timeout:s=3e4}=e,i=Ix(this.#t,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
60
60
 
61
61
  import "fmt"
62
62
 
@@ -68,8 +68,8 @@ ${r}`),n==="elixir"&&Ox(xa(this.#t,"mix.exs"))&&(r=`Path.wildcard(Path.join(${JS
68
68
  |> Enum.each(&Code.prepend_path/1)
69
69
 
70
70
  ${r}`);let s=xa(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=gt?".exe":"",s=e.replace(/\.rs$/,"")+o;try{Cx("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:
71
- ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,r,n)}async#s(e,r,n,o,s=!1){return new Promise(i=>{let a=gt&&["tsx","ts-node","elixir"].includes(e[0]),c=e[0],u;gt&&e.length===2&&e[1]?u=[e[1].replace(/\\/g,"/")]:u=gt?e.slice(1).map(x=>x.replace(/\\/g,"/")):e.slice(1);let l=kC(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(n),shell:a,detached:!gt}),d=!1,f=!1,m=setTimeout(()=>{if(d=!0,s){f=!0,l.pid&&this.#o.add(l.pid),l.unref(),l.stdout.destroy(),l.stderr.destroy();let x=Buffer.concat(p).toString("utf-8"),k=Buffer.concat(h).toString("utf-8");i({stdout:x,stderr:k,exitCode:0,timedOut:!0,backgrounded:!0})}else _p(l)},o),p=[],h=[],g=0,y=!1;l.stdout.on("data",x=>{g+=x.length,g<=this.#e?p.push(x):y||(y=!0,_p(l))}),l.stderr.on("data",x=>{g+=x.length,g<=this.#e?h.push(x):y||(y=!0,_p(l))}),l.on("close",x=>{if(clearTimeout(m),f)return;let k=Buffer.concat(p).toString("utf-8"),w=Buffer.concat(h).toString("utf-8");y&&(w+=`
72
- [output capped at ${(this.#e/1024/1024).toFixed(0)}MB \u2014 process killed]`),i({stdout:k,stderr:w,exitCode:d?1:x??1,timedOut:d})}),l.on("error",x=>{clearTimeout(m),!f&&i({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",gt&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=gt?"":"/usr/local/bin:/usr/bin:/bin"),gt){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=gt?[]:["/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(Ox(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};
71
+ ${i instanceof Error?i.stderr||i.message:String(i)}`,exitCode:1,timedOut:!1}}return this.#s([s],r,r,n)}async#s(e,r,n,o,s=!1){return new Promise(i=>{let a=gt&&["tsx","ts-node","elixir"].includes(e[0]),c=e[0],u;gt&&e.length===2&&e[1]?u=[e[1].replace(/\\/g,"/")]:u=gt?e.slice(1).map(y=>y.replace(/\\/g,"/")):e.slice(1);let l=kC(c,u,{cwd:r,stdio:["ignore","pipe","pipe"],env:this.#c(n),shell:a,detached:!gt}),d=!1,f=!1,m=setTimeout(()=>{if(d=!0,s){f=!0,l.pid&&this.#o.add(l.pid),l.unref(),l.stdout.destroy(),l.stderr.destroy();let y=Buffer.concat(p).toString("utf-8"),k=Buffer.concat(h).toString("utf-8");i({stdout:y,stderr:k,exitCode:0,timedOut:!0,backgrounded:!0})}else yp(l)},o),p=[],h=[],g=0,x=!1;l.stdout.on("data",y=>{g+=y.length,g<=this.#e?p.push(y):x||(x=!0,yp(l))}),l.stderr.on("data",y=>{g+=y.length,g<=this.#e?h.push(y):x||(x=!0,yp(l))}),l.on("close",y=>{if(clearTimeout(m),f)return;let k=Buffer.concat(p).toString("utf-8"),w=Buffer.concat(h).toString("utf-8");x&&(w+=`
72
+ [output capped at ${(this.#e/1024/1024).toFixed(0)}MB \u2014 process killed]`),i({stdout:k,stderr:w,exitCode:d?1:y??1,timedOut:d})}),l.on("error",y=>{clearTimeout(m),!f&&i({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",gt&&!o.PATH&&o.Path&&(o.PATH=o.Path,delete o.Path),o.PATH||(o.PATH=gt?"":"/usr/local/bin:/usr/bin:/bin"),gt){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=gt?[]:["/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(Ox(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};
73
73
  const file_path = FILE_CONTENT_PATH;
74
74
  const FILE_CONTENT = require("fs").readFileSync(FILE_CONTENT_PATH, "utf-8");
75
75
  ${n}`;case"python":return`FILE_CONTENT_PATH = ${o}
@@ -124,7 +124,7 @@ FILE_CONTENT <- paste(FILE_CONTENT, collapse="\\n")
124
124
  ${n}`;case"elixir":return`file_content_path = ${o}
125
125
  file_path = file_content_path
126
126
  file_content = File.read!(file_content_path)
127
- ${n}`}}};import{createRequire as TC}from"node:module";import{existsSync as $C,unlinkSync as Nx,renameSync as UL}from"node:fs";var yp=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()}},xp=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){return this.#e.exec(e),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>r.get(...n),all:(...n)=>r.all(...n),iterate:(...n)=>typeof r.iterate=="function"?r.iterate(...n):r.all(...n)[Symbol.iterator]()}}transaction(e){return(...r)=>{this.#e.exec("BEGIN");try{let n=e(...r);return this.#e.exec("COMMIT"),n}catch(n){throw this.#e.exec("ROLLBACK"),n}}}close(){this.#e.close()}},no=null;function ks(){if(!no){let t=TC(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;no=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0}),i=new yp(s);return o?.timeout&&i.pragma(`busy_timeout = ${o.timeout}`),i}}else if(process.platform==="linux")try{let{DatabaseSync:e}=t(["node","sqlite"].join(":"));no=function(n,o){let s=new e(n,{readOnly:o?.readonly??!1});return new xp(s)}}catch{no=t("better-sqlite3")}else no=t("better-sqlite3")}return no}function vp(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL");try{t.pragma("mmap_size = 268435456")}catch{}}function kp(t){if(!$C(t))for(let e of["-wal","-shm"])try{Nx(t+e)}catch{}}function zx(t){for(let e of["","-wal","-shm"])try{Nx(t+e)}catch{}}function Sp(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}function oo(t,e=[100,500,2e3]){let r;for(let n=0;n<=e.length;n++)try{return t()}catch(o){let s=o instanceof Error?o.message:String(o);if(!s.includes("SQLITE_BUSY")&&!s.includes("database is locked"))throw o;if(r=o instanceof Error?o:new Error(s),n<e.length){let i=e[n],a=Date.now();for(;Date.now()-a<i;);}}throw new Error(`SQLITE_BUSY: database is locked after ${e.length} retries. Original error: ${r?.message}`)}function Ax(t){return t.includes("SQLITE_CORRUPT")||t.includes("SQLITE_NOTADB")||t.includes("database disk image is malformed")||t.includes("file is not a database")}var vs=Symbol.for("__context_mode_live_dbs__"),HL=(()=>{let t=globalThis;return t[vs]||(t[vs]=new Set,process.on("exit",()=>{for(let e of t[vs])Sp(e);t[vs].clear()})),t[vs]})();import{readFileSync as jx,readdirSync as Lx,unlinkSync as wp,existsSync as bp,statSync as va}from"node:fs";import{createHash as Mx}from"node:crypto";import{tmpdir as Zx}from"node:os";import{join as Ep}from"node:path";var so=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 Ux(t){let e=new Set,r=[];for(let n of t){let o=n.toLowerCase();e.has(o)||(e.add(o),r.push(n))}return r}function PC(t,e="AND"){let r=Ux(t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(s=>s.length>0&&!["AND","OR","NOT","NEAR"].includes(s.toUpperCase())));if(r.length===0)return'""';let n=r.filter(s=>!so.has(s.toLowerCase()));return(n.length>0?n:r).map(s=>`"${s}"`).join(e==="OR"?" OR ":" ")}function RC(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=Ux(r.split(/\s+/).filter(i=>i.length>=3));if(n.length===0)return"";let o=n.filter(i=>!so.has(i.toLowerCase()));return(o.length>0?o:n).map(i=>`"${i}"`).join(e==="OR"?" OR ":" ")}function OC(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 CC(t){return t<=4?1:t<=12?2:3}var Dx=4096;function Tp(){let t=Zx(),e=0;try{let r=Lx(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=Ep(t,n);for(let a of["","-wal","-shm"])try{wp(i+a)}catch{}e++}}}catch{}return e}function $p(t,e){let r=0;try{if(!bp(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=Lx(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=Ep(t,s),c=va(i).mtimeMs<n;if(!c){let u=i+"-wal";if(bp(u))try{let l=va(u);l.size>0&&Date.now()-l.mtimeMs>36e5&&(c=!0)}catch{}}if(c){for(let u of["","-wal","-shm"])try{wp(i+u)}catch{}r++}}catch{}}catch{}return r}function IC(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function NC(t){if(t.length===0)return 1/0;if(t.length===1)return 0;let e=t.map(o=>[...o].sort((s,i)=>s-i)),r=new Array(e.length).fill(0),n=1/0;for(;;){let o=1/0,s=-1/0,i=0;for(let c=0;c<e.length;c++){let u=e[c][r[c]];u<o&&(o=u,i=c),u>s&&(s=u)}let a=s-o;if(a<n&&(n=a),r[i]++,r[i]>=e[i].length)break}return n}var ka=class t{#e;#t;#n;#o;#i;#a;#s;#c;#u;#p;#f;#m;#h;#g;#_;#y;#x;#v;#k;#S;#b;#w;#E;#T;#$;#P;#R;#O;#C;#I;#N;#z;#A=0;static OPTIMIZE_EVERY=50;#r=new Map;static FUZZY_CACHE_SIZE=256;constructor(e){let r=ks();this.#t=e??Ep(Zx(),`context-mode-${process.pid}.db`),kp(this.#t);let n;try{n=new r(this.#t,{timeout:3e4}),vp(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(Ax(s)){zx(this.#t),kp(this.#t);try{n=new r(this.#t,{timeout:3e4}),vp(n)}catch(i){throw new Error(`Failed to create fresh DB after deleting corrupt file: ${i instanceof Error?i.message:String(i)}`)}}else throw o}this.#e=n,this.#U(),this.#H()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{wp(this.#t+e)}catch{}}#U(){this.#e.exec(`
127
+ ${n}`}}};import{createRequire as TC}from"node:module";import{existsSync as $C,unlinkSync as Nx,renameSync as UL}from"node:fs";var xp=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()}},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){return this.#e.exec(e),this}prepare(e){let r=this.#e.prepare(e);return{run:(...n)=>r.run(...n),get:(...n)=>r.get(...n),all:(...n)=>r.all(...n),iterate:(...n)=>typeof r.iterate=="function"?r.iterate(...n):r.all(...n)[Symbol.iterator]()}}transaction(e){return(...r)=>{this.#e.exec("BEGIN");try{let n=e(...r);return this.#e.exec("COMMIT"),n}catch(n){throw this.#e.exec("ROLLBACK"),n}}}close(){this.#e.close()}},no=null;function ks(){if(!no){let t=TC(import.meta.url);if(globalThis.Bun){let e=t(["bun","sqlite"].join(":")).Database;no=function(n,o){let s=new e(n,{readonly:o?.readonly,create:!0}),i=new xp(s);return o?.timeout&&i.pragma(`busy_timeout = ${o.timeout}`),i}}else if(process.platform==="linux")try{let{DatabaseSync:e}=t(["node","sqlite"].join(":"));no=function(n,o){let s=new e(n,{readOnly:o?.readonly??!1});return new vp(s)}}catch{no=t("better-sqlite3")}else no=t("better-sqlite3")}return no}function kp(t){t.pragma("journal_mode = WAL"),t.pragma("synchronous = NORMAL");try{t.pragma("mmap_size = 268435456")}catch{}}function Sp(t){if(!$C(t))for(let e of["-wal","-shm"])try{Nx(t+e)}catch{}}function zx(t){for(let e of["","-wal","-shm"])try{Nx(t+e)}catch{}}function bp(t){try{t.pragma("wal_checkpoint(TRUNCATE)")}catch{}try{t.close()}catch{}}function oo(t,e=[100,500,2e3]){let r;for(let n=0;n<=e.length;n++)try{return t()}catch(o){let s=o instanceof Error?o.message:String(o);if(!s.includes("SQLITE_BUSY")&&!s.includes("database is locked"))throw o;if(r=o instanceof Error?o:new Error(s),n<e.length){let i=e[n],a=Date.now();for(;Date.now()-a<i;);}}throw new Error(`SQLITE_BUSY: database is locked after ${e.length} retries. Original error: ${r?.message}`)}function Ax(t){return t.includes("SQLITE_CORRUPT")||t.includes("SQLITE_NOTADB")||t.includes("database disk image is malformed")||t.includes("file is not a database")}var vs=Symbol.for("__context_mode_live_dbs__"),HL=(()=>{let t=globalThis;return t[vs]||(t[vs]=new Set,process.on("exit",()=>{for(let e of t[vs])bp(e);t[vs].clear()})),t[vs]})();import{readFileSync as jx,readdirSync as Lx,unlinkSync as Ep,existsSync as wp,statSync as va}from"node:fs";import{createHash as Mx}from"node:crypto";import{tmpdir as Zx}from"node:os";import{join as Tp}from"node:path";var so=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 Ux(t){let e=new Set,r=[];for(let n of t){let o=n.toLowerCase();e.has(o)||(e.add(o),r.push(n))}return r}function PC(t,e="AND"){let r=Ux(t.replace(/['"(){}[\]*:^~]/g," ").split(/\s+/).filter(s=>s.length>0&&!["AND","OR","NOT","NEAR"].includes(s.toUpperCase())));if(r.length===0)return'""';let n=r.filter(s=>!so.has(s.toLowerCase()));return(n.length>0?n:r).map(s=>`"${s}"`).join(e==="OR"?" OR ":" ")}function RC(t,e="AND"){let r=t.replace(/["'(){}[\]*:^~]/g,"").trim();if(r.length<3)return"";let n=Ux(r.split(/\s+/).filter(i=>i.length>=3));if(n.length===0)return"";let o=n.filter(i=>!so.has(i.toLowerCase()));return(o.length>0?o:n).map(i=>`"${i}"`).join(e==="OR"?" OR ":" ")}function OC(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 CC(t){return t<=4?1:t<=12?2:3}var Dx=4096;function $p(){let t=Zx(),e=0;try{let r=Lx(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=Tp(t,n);for(let a of["","-wal","-shm"])try{Ep(i+a)}catch{}e++}}}catch{}return e}function Pp(t,e){let r=0;try{if(!wp(t))return 0;let n=Date.now()-e*24*60*60*1e3,o=Lx(t).filter(s=>s.endsWith(".db"));for(let s of o)try{let i=Tp(t,s),c=va(i).mtimeMs<n;if(!c){let u=i+"-wal";if(wp(u))try{let l=va(u);l.size>0&&Date.now()-l.mtimeMs>36e5&&(c=!0)}catch{}}if(c){for(let u of["","-wal","-shm"])try{Ep(i+u)}catch{}r++}}catch{}}catch{}return r}function IC(t,e){let r=[],n=t.indexOf(e);for(;n!==-1;)r.push(n),n=t.indexOf(e,n+1);return r}function NC(t){if(t.length===0)return 1/0;if(t.length===1)return 0;let e=t.map(o=>[...o].sort((s,i)=>s-i)),r=new Array(e.length).fill(0),n=1/0;for(;;){let o=1/0,s=-1/0,i=0;for(let c=0;c<e.length;c++){let u=e[c][r[c]];u<o&&(o=u,i=c),u>s&&(s=u)}let a=s-o;if(a<n&&(n=a),r[i]++,r[i]>=e[i].length)break}return n}var ka=class t{#e;#t;#n;#o;#i;#a;#s;#c;#u;#p;#f;#m;#h;#g;#_;#y;#x;#v;#k;#S;#b;#w;#E;#T;#$;#P;#R;#O;#C;#I;#N;#z;#A=0;static OPTIMIZE_EVERY=50;#r=new Map;static FUZZY_CACHE_SIZE=256;constructor(e){let r=ks();this.#t=e??Tp(Zx(),`context-mode-${process.pid}.db`),Sp(this.#t);let n;try{n=new r(this.#t,{timeout:3e4}),kp(n)}catch(o){let s=o instanceof Error?o.message:String(o);if(Ax(s)){zx(this.#t),Sp(this.#t);try{n=new r(this.#t,{timeout:3e4}),kp(n)}catch(i){throw new Error(`Failed to create fresh DB after deleting corrupt file: ${i instanceof Error?i.message:String(i)}`)}}else throw o}this.#e=n,this.#U(),this.#H()}cleanup(){try{this.#e.close()}catch{}for(let e of["","-wal","-shm"])try{Ep(this.#t+e)}catch{}}#U(){this.#e.exec(`
128
128
  CREATE TABLE IF NOT EXISTS sources (
129
129
  id INTEGER PRIMARY KEY AUTOINCREMENT,
130
130
  label TEXT NOT NULL,
@@ -321,29 +321,29 @@ ${n}`}}};import{createRequire as TC}from"node:module";import{existsSync as $C,un
321
321
  (SELECT COUNT(*) FROM sources) AS sources,
322
322
  (SELECT COUNT(*) FROM chunks) AS chunks,
323
323
  (SELECT COUNT(*) FROM chunks WHERE content_type = 'code') AS codeChunks
324
- `),this.#I=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#N=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#z=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')")}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??jx(n,"utf-8"),i=o??n??"untitled",a=this.#B(s),c=n??void 0,u=c?Mx("sha256").update(s).digest("hex"):void 0;return oo(()=>this.#l(a,i,s,c,u))}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#V(e,n);return oo(()=>this.#l(o.map(s=>({...s,hasCode:!1})),r,e))}indexJSON(e,r,n=Dx){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.#Z(o,[],s,n),s.length===0?this.indexPlainText(e,r):oo(()=>this.#l(s,r,e))}#l(e,r,n,o,s){let i=e.filter(u=>u.hasCode).length,c=this.#e.transaction(()=>{if(this.#c.run(r),this.#u.run(r),this.#p.run(r),e.length===0){let d=this.#n.run(r,o??null,s??null);return Number(d.lastInsertRowid)}let u=this.#o.run(r,e.length,i,o??null,s??null),l=Number(u.lastInsertRowid);for(let d of e){let f=d.hasCode?"code":"prose";this.#i.run(d.title,d.content,l,f),this.#a.run(d.title,d.content,l,f)}return l})();return n&&this.#F(n),this.#A++,this.#A%t.OPTIMIZE_EVERY===0&&this.#L(),{sourceId:c,label:r,totalChunks:e.length,codeChunks:i}}#j(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=PC(e,o),c,u;return n&&s?(c=i==="exact"?this.#S:this.#k,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#h:this.#m,u=[a,this.#d(n,i),r]):s?(c=this.#v,u=[a,s,r]):(c=this.#f,u=[a,r]),oo(()=>this.#j(c.all(...u)))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=RC(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#E:this.#w,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#y:this.#_,u=[a,this.#d(n,i),r]):s?(c=this.#b,u=[a,s,r]):(c=this.#g,u=[a,r]),oo(()=>this.#j(c.all(...u)))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;if(this.#r.has(r)){let u=this.#r.get(r)??null;return this.#r.delete(r),this.#r.set(r,u),u}let n=CC(r.length),o=this.#x.all(r.length-n,r.length+n),s=null,i=n+1,a=!1;for(let{word:u}of o){if(u===r){a=!0;break}let l=OC(r,u);l<i&&(i=l,s=u)}let c=a?null:i<=n?s:null;if(this.#r.size>=t.FUZZY_CACHE_SIZE){let u=this.#r.keys().next().value;u!==void 0&&this.#r.delete(u)}return this.#r.set(r,c),c}#M(e,r,n,o,s="like"){let a=Math.max(r*2,10),c=this.search(e,a,n,"OR",o,s),u=this.searchTrigram(e,a,n,"OR",o,s),l=new Map,d=f=>`${f.source}::${f.title}`;for(let[f,m]of c.entries()){let p=d(m),h=l.get(p);h?h.score+=1/(60+f+1):l.set(p,{result:m,score:1/(60+f+1)})}for(let[f,m]of u.entries()){let p=d(m),h=l.get(p);h?h.score+=1/(60+f+1):l.set(p,{result:m,score:1/(60+f+1)})}return Array.from(l.values()).sort((f,m)=>m.score-f.score).slice(0,r).map(({result:f,score:m})=>({...f,rank:-m}))}#D(e,r){let n=r.toLowerCase().split(/\s+/).filter(i=>i.length>=2),o=n.filter(i=>!so.has(i)),s=o.length>0?o:n;return e.map(i=>{let a=i.title.toLowerCase(),c=s.filter(f=>a.includes(f)).length,u=i.contentType==="code"?.6:.3,l=c>0?u*(c/s.length):0,d=0;if(s.length>=2){let f=i.content.toLowerCase(),m=s.map(p=>IC(f,p));m.some(p=>p.length===0)||(d=1/(1+NC(m)/Math.max(f.length,1)))}return{result:i,boost:l+d}}).sort((i,a)=>a.boost-i.boost||i.result.rank-a.result.rank).map(({result:i})=>i)}searchWithFallback(e,r=3,n,o,s="like"){this.#q();let i=this.#M(e,r,n,o,s);if(i.length>0)return this.#D(i,e).map(f=>({...f,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3&&!so.has(d)),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#M(l,r,n,o,s);if(d.length>0)return this.#D(d,l).map(m=>({...m,matchLayer:"rrf-fuzzy"}))}return[]}lastRefreshCount=0;#q(){this.lastRefreshCount=0;let e=this.#e.prepare("SELECT label, file_path, content_hash, indexed_at FROM sources WHERE file_path IS NOT NULL").all();for(let r of e)try{if(!bp(r.file_path))continue;let n=va(r.file_path).mtime,o=new Date(r.indexed_at+"Z");if(n<=o)continue;let s=jx(r.file_path,"utf-8");if(Mx("sha256").update(s).digest("hex")===r.content_hash)continue;this.index({path:r.file_path,source:r.label}),this.lastRefreshCount++}catch{}}getSourceMeta(e){let r=this.#C.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at,filePath:r.file_path??null,contentHash:r.content_hash??null}:null}listSources(){return this.#T.all()}getChunksBySource(e){return this.#$.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.#P.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.#R.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!so.has(f)));for(let f of d)a.set(f,(a.get(f)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let f=Math.log(o/d),m=Math.min(l.length/20,.5),p=/[_]/.test(l),h=l.length>=12,g=p?1.5:h?.8:0;return{word:l,score:f+m+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#O.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){return this.#e.transaction(o=>(this.#I.run(o),this.#N.run(o),this.#z.run(o)))(e).changes}getDBSizeBytes(){try{return va(this.#t).size}catch{return 0}}#L(){try{this.#e.exec("INSERT INTO chunks(chunks) VALUES('optimize')"),this.#e.exec("INSERT INTO chunks_trigram(chunks_trigram) VALUES('optimize')")}catch{}}close(){this.#L(),Sp(this.#e)}#F(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(s=>s.length>=3&&!so.has(s)),n=[...new Set(r)],o=0;this.#e.transaction(()=>{for(let s of n){let i=this.#s.run(s);o+=i.changes}})(),o>0&&this.#r.clear()}#B(e,r=Dx){let n=[],o=e.split(`
324
+ `),this.#I=this.#e.prepare("DELETE FROM chunks WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#N=this.#e.prepare("DELETE FROM chunks_trigram WHERE source_id IN (SELECT id FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days'))"),this.#z=this.#e.prepare("DELETE FROM sources WHERE datetime(indexed_at) < datetime('now', '-' || ? || ' days')")}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??jx(n,"utf-8"),i=o??n??"untitled",a=this.#B(s),c=n??void 0,u=c?Mx("sha256").update(s).digest("hex"):void 0;return oo(()=>this.#l(a,i,s,c,u))}indexPlainText(e,r,n=20){if(!e||e.trim().length===0)return this.#l([],r,"");let o=this.#V(e,n);return oo(()=>this.#l(o.map(s=>({...s,hasCode:!1})),r,e))}indexJSON(e,r,n=Dx){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.#Z(o,[],s,n),s.length===0?this.indexPlainText(e,r):oo(()=>this.#l(s,r,e))}#l(e,r,n,o,s){let i=e.filter(u=>u.hasCode).length,c=this.#e.transaction(()=>{if(this.#c.run(r),this.#u.run(r),this.#p.run(r),e.length===0){let d=this.#n.run(r,o??null,s??null);return Number(d.lastInsertRowid)}let u=this.#o.run(r,e.length,i,o??null,s??null),l=Number(u.lastInsertRowid);for(let d of e){let f=d.hasCode?"code":"prose";this.#i.run(d.title,d.content,l,f),this.#a.run(d.title,d.content,l,f)}return l})();return n&&this.#F(n),this.#A++,this.#A%t.OPTIMIZE_EVERY===0&&this.#L(),{sourceId:c,label:r,totalChunks:e.length,codeChunks:i}}#j(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=PC(e,o),c,u;return n&&s?(c=i==="exact"?this.#S:this.#k,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#h:this.#m,u=[a,this.#d(n,i),r]):s?(c=this.#v,u=[a,s,r]):(c=this.#f,u=[a,r]),oo(()=>this.#j(c.all(...u)))}searchTrigram(e,r=3,n,o="AND",s,i="like"){let a=RC(e,o);if(!a)return[];let c,u;return n&&s?(c=i==="exact"?this.#E:this.#w,u=[a,this.#d(n,i),s,r]):n?(c=i==="exact"?this.#y:this.#_,u=[a,this.#d(n,i),r]):s?(c=this.#b,u=[a,s,r]):(c=this.#g,u=[a,r]),oo(()=>this.#j(c.all(...u)))}fuzzyCorrect(e){let r=e.toLowerCase().trim();if(r.length<3)return null;if(this.#r.has(r)){let u=this.#r.get(r)??null;return this.#r.delete(r),this.#r.set(r,u),u}let n=CC(r.length),o=this.#x.all(r.length-n,r.length+n),s=null,i=n+1,a=!1;for(let{word:u}of o){if(u===r){a=!0;break}let l=OC(r,u);l<i&&(i=l,s=u)}let c=a?null:i<=n?s:null;if(this.#r.size>=t.FUZZY_CACHE_SIZE){let u=this.#r.keys().next().value;u!==void 0&&this.#r.delete(u)}return this.#r.set(r,c),c}#M(e,r,n,o,s="like"){let a=Math.max(r*2,10),c=this.search(e,a,n,"OR",o,s),u=this.searchTrigram(e,a,n,"OR",o,s),l=new Map,d=f=>`${f.source}::${f.title}`;for(let[f,m]of c.entries()){let p=d(m),h=l.get(p);h?h.score+=1/(60+f+1):l.set(p,{result:m,score:1/(60+f+1)})}for(let[f,m]of u.entries()){let p=d(m),h=l.get(p);h?h.score+=1/(60+f+1):l.set(p,{result:m,score:1/(60+f+1)})}return Array.from(l.values()).sort((f,m)=>m.score-f.score).slice(0,r).map(({result:f,score:m})=>({...f,rank:-m}))}#D(e,r){let n=r.toLowerCase().split(/\s+/).filter(i=>i.length>=2),o=n.filter(i=>!so.has(i)),s=o.length>0?o:n;return e.map(i=>{let a=i.title.toLowerCase(),c=s.filter(f=>a.includes(f)).length,u=i.contentType==="code"?.6:.3,l=c>0?u*(c/s.length):0,d=0;if(s.length>=2){let f=i.content.toLowerCase(),m=s.map(p=>IC(f,p));m.some(p=>p.length===0)||(d=1/(1+NC(m)/Math.max(f.length,1)))}return{result:i,boost:l+d}}).sort((i,a)=>a.boost-i.boost||i.result.rank-a.result.rank).map(({result:i})=>i)}searchWithFallback(e,r=3,n,o,s="like"){this.#q();let i=this.#M(e,r,n,o,s);if(i.length>0)return this.#D(i,e).map(f=>({...f,matchLayer:"rrf"}));let a=e.toLowerCase().trim().split(/\s+/).filter(d=>d.length>=3&&!so.has(d)),c=a.join(" "),l=a.map(d=>this.fuzzyCorrect(d)??d).join(" ");if(l!==c){let d=this.#M(l,r,n,o,s);if(d.length>0)return this.#D(d,l).map(m=>({...m,matchLayer:"rrf-fuzzy"}))}return[]}lastRefreshCount=0;#q(){this.lastRefreshCount=0;let e=this.#e.prepare("SELECT label, file_path, content_hash, indexed_at FROM sources WHERE file_path IS NOT NULL").all();for(let r of e)try{if(!wp(r.file_path))continue;let n=va(r.file_path).mtime,o=new Date(r.indexed_at+"Z");if(n<=o)continue;let s=jx(r.file_path,"utf-8");if(Mx("sha256").update(s).digest("hex")===r.content_hash)continue;this.index({path:r.file_path,source:r.label}),this.lastRefreshCount++}catch{}}getSourceMeta(e){let r=this.#C.get(e);return r?{label:r.label,chunkCount:r.chunk_count,codeChunkCount:r.code_chunk_count,indexedAt:r.indexed_at,filePath:r.file_path??null,contentHash:r.content_hash??null}:null}listSources(){return this.#T.all()}getChunksBySource(e){return this.#$.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.#P.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.#R.iterate(e)){let d=new Set(l.content.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(f=>f.length>=3&&!so.has(f)));for(let f of d)a.set(f,(a.get(f)??0)+1)}return Array.from(a.entries()).filter(([,l])=>l>=s&&l<=i).map(([l,d])=>{let f=Math.log(o/d),m=Math.min(l.length/20,.5),p=/[_]/.test(l),h=l.length>=12,g=p?1.5:h?.8:0;return{word:l,score:f+m+g}}).sort((l,d)=>d.score-l.score).slice(0,r).map(l=>l.word)}getStats(){let e=this.#O.get();return{sources:e?.sources??0,chunks:e?.chunks??0,codeChunks:e?.codeChunks??0}}cleanupStaleSources(e){return this.#e.transaction(o=>(this.#I.run(o),this.#N.run(o),this.#z.run(o)))(e).changes}getDBSizeBytes(){try{return va(this.#t).size}catch{return 0}}#L(){try{this.#e.exec("INSERT INTO chunks(chunks) VALUES('optimize')"),this.#e.exec("INSERT INTO chunks_trigram(chunks_trigram) VALUES('optimize')")}catch{}}close(){this.#L(),bp(this.#e)}#F(e){let r=e.toLowerCase().split(/[^\p{L}\p{N}_-]+/u).filter(s=>s.length>=3&&!so.has(s)),n=[...new Set(r)],o=0;this.#e.transaction(()=>{for(let s of n){let i=this.#s.run(s);o+=i.changes}})(),o>0&&this.#r.clear()}#B(e,r=Dx){let n=[],o=e.split(`
325
325
  `),s=[],i=[],a="",c=()=>{let l=i.join(`
326
- `).trim();if(l.length===0)return;let d=this.#G(s,a),f=i.some(y=>/^`{3,}/.test(y));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:f}),i=[];return}let m=l.split(/\n\n+/),p=[],h=1,g=()=>{if(p.length===0)return;let y=p.join(`
326
+ `).trim();if(l.length===0)return;let d=this.#G(s,a),f=i.some(x=>/^`{3,}/.test(x));if(Buffer.byteLength(l)<=r){n.push({title:d,content:l,hasCode:f}),i=[];return}let m=l.split(/\n\n+/),p=[],h=1,g=()=>{if(p.length===0)return;let x=p.join(`
327
327
 
328
- `).trim();if(y.length===0)return;let x=m.length>1?`${d} (${h})`:d;h++,n.push({title:x,content:y,hasCode:y.includes("```")}),p=[]};for(let y of m){p.push(y);let x=p.join(`
328
+ `).trim();if(x.length===0)return;let y=m.length>1?`${d} (${h})`:d;h++,n.push({title:y,content:x,hasCode:x.includes("```")}),p=[]};for(let x of m){p.push(x);let y=p.join(`
329
329
 
330
- `);Buffer.byteLength(x)>r&&p.length>1&&(p.pop(),g(),p=[y])}g(),i=[]},u=0;for(;u<o.length;){let l=o[u];if(/^[-_*]{3,}\s*$/.test(l)){c(),u++;continue}let d=l.match(/^(#{1,4})\s+(.+)$/);if(d){c();let m=d[1].length,p=d[2].trim();for(;s.length>0&&s[s.length-1].level>=m;)s.pop();s.push({level:m,text:p}),a=p,i.push(l),u++;continue}let f=l.match(/^(`{3,})(.*)?$/);if(f){let m=f[1],p=[l];for(u++;u<o.length;){if(p.push(o[u]),o[u].startsWith(m)&&o[u].trim()===m){u++;break}u++}i.push(...p);continue}i.push(l),u++}return c(),n}#V(e,r){let n=e.split(/\n\s*\n/);if(n.length>=3&&n.length<=200&&n.every(c=>Buffer.byteLength(c)<5e3))return n.map((c,u)=>{let l=c.trim();return{title:l.split(`
330
+ `);Buffer.byteLength(y)>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 m=d[1].length,p=d[2].trim();for(;s.length>0&&s[s.length-1].level>=m;)s.pop();s.push({level:m,text:p}),a=p,i.push(l),u++;continue}let f=l.match(/^(`{3,})(.*)?$/);if(f){let m=f[1],p=[l];for(u++;u<o.length;){if(p.push(o[u]),o[u].startsWith(m)&&o[u].trim()===m){u++;break}u++}i.push(...p);continue}i.push(l),u++}return c(),n}#V(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(`
331
331
  `)[0].slice(0,80)||`Section ${u+1}`,content:l}}).filter(c=>c.content.length>0);let o=e.split(`
332
332
  `);if(o.length<=r)return[{title:"Output",content:e}];let s=[],a=Math.max(r-2,1);for(let c=0;c<o.length;c+=a){let u=o.slice(c,c+r);if(u.length===0)break;let l=c+1,d=Math.min(c+u.length,o.length),f=u[0]?.trim().slice(0,80);s.push({title:f||`Lines ${l}-${d}`,content:u.join(`
333
- `)})}return s}#Z(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.#Z(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})}#K(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}#W(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.#K(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#W(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)}#G(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as qx,realpathSync as zC}from"node:fs";import{resolve as fn}from"node:path";import{homedir as Fx}from"node:os";function Bx(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function AC(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function jC(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function Hx(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function MC(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=jC(o),a=Hx(s);r=`^${i}(\\s${a})?$`}else r=`^${Hx(t)}$`;return new RegExp(r,e?"i":"")}function DC(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 LC(t,e,r=!1){for(let n of e){let o=Bx(n);if(o&&MC(o,r).test(t))return n}return null}function ZC(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 Pp(t){let e;try{e=qx(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"&&Bx(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function Rp(t,e){let r=[];if(t){let s=fn(t,".claude","settings.local.json"),i=Pp(s);i&&r.push(i);let a=fn(t,".claude","settings.json"),c=Pp(a);c&&r.push(c)}let n=e??fn(Fx(),".claude","settings.json"),o=Pp(n);return o&&r.push(o),r}function Vx(t,e,r){let n=[],o=a=>{let c;try{c=qx(a,"utf-8")}catch{return null}let u;try{u=JSON.parse(c)}catch{return null}let l=u?.permissions?.deny;if(!Array.isArray(l))return[];let d=[];for(let f of l){if(typeof f!="string")continue;let m=AC(f);m&&m.tool===t&&d.push(m.glob)}return d};if(e){let a=o(fn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(fn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??fn(Fx(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function Op(t,e,r=process.platform==="win32"){let n=ZC(t);for(let o of n)for(let s of e){let i=LC(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function Kx(t,e,r=process.platform==="win32",n){let o=i=>i.replace(/\\/g,"/"),s=new Set;if(s.add(o(t)),n){let i=fn(n,t);s.add(o(i));try{s.add(o(zC(i)))}catch{}}for(let i of e)for(let a of i){let c=DC(a,r);for(let u of s)if(c.test(u))return{denied:!0,matchedPattern:a}}return{denied:!1}}var UC={python:[/os\.system\(\s*(['"])(.*?)\1\s*\)/g,/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*(['"])(.*?)\1/g],javascript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],typescript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],ruby:[/system\(\s*(['"])(.*?)\1/g,/`(.*?)`/g],go:[/exec\.Command\(\s*(['"`])(.*?)\1/g],php:[/shell_exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])system\(\s*(['"`])(.*?)\1/g,/passthru\(\s*(['"`])(.*?)\1/g,/proc_open\(\s*(['"`])(.*?)\1/g],rust:[/Command::new\(\s*(['"`])(.*?)\1/g]};function HC(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 Wx(t,e){let r=UC[e];if(!r&&e!=="python")return[];let n=[];if(r)for(let o of r){o.lastIndex=0;let s;for(;(s=o.exec(t))!==null;){let i=s[s.length-1];i&&n.push(i)}}return e==="python"&&n.push(...HC(t)),n}function Cp(t){let{language:e,exitCode:r,stdout:n,stderr:o}=t,s=e==="shell"&&r===1&&n.trim().length>0;return{isError:!s,output:s?n:`Exit code: ${r}
333
+ `)})}return s}#Z(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.#Z(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})}#K(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}#W(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.#K(e),a=[],c=0,u=l=>{if(a.length===0)return;let d=this.#W(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)}#G(e,r){return e.length===0?r||"Untitled":e.map(n=>n.text).join(" > ")}};import{readFileSync as qx,realpathSync as zC}from"node:fs";import{resolve as mn}from"node:path";import{homedir as Fx}from"node:os";function Bx(t){let e=t.match(/^Bash\((.+)\)$/);return e?e[1]:null}function AC(t){let e=t.match(/^(\w+)\((.+)\)$/);return e?{tool:e[1],glob:e[2]}:null}function jC(t){return t.replace(/[.*+?^${}()|[\]\\\/\-]/g,"\\$&")}function Hx(t){return t.replace(/[.+?^${}()|[\]\\\/\-]/g,"\\$&").replace(/\*/g,".*")}function MC(t,e=!1){let r,n=t.indexOf(":");if(n!==-1){let o=t.slice(0,n),s=t.slice(n+1),i=jC(o),a=Hx(s);r=`^${i}(\\s${a})?$`}else r=`^${Hx(t)}$`;return new RegExp(r,e?"i":"")}function DC(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 LC(t,e,r=!1){for(let n of e){let o=Bx(n);if(o&&MC(o,r).test(t))return n}return null}function ZC(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 Rp(t){let e;try{e=qx(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"&&Bx(i)!==null):[];return{allow:o(n.allow),deny:o(n.deny),ask:o(n.ask)}}function Op(t,e){let r=[];if(t){let s=mn(t,".claude","settings.local.json"),i=Rp(s);i&&r.push(i);let a=mn(t,".claude","settings.json"),c=Rp(a);c&&r.push(c)}let n=e??mn(Fx(),".claude","settings.json"),o=Rp(n);return o&&r.push(o),r}function Vx(t,e,r){let n=[],o=a=>{let c;try{c=qx(a,"utf-8")}catch{return null}let u;try{u=JSON.parse(c)}catch{return null}let l=u?.permissions?.deny;if(!Array.isArray(l))return[];let d=[];for(let f of l){if(typeof f!="string")continue;let m=AC(f);m&&m.tool===t&&d.push(m.glob)}return d};if(e){let a=o(mn(e,".claude","settings.local.json"));a!==null&&n.push(a);let c=o(mn(e,".claude","settings.json"));c!==null&&n.push(c)}let s=r??mn(Fx(),".claude","settings.json"),i=o(s);return i!==null&&n.push(i),n}function Cp(t,e,r=process.platform==="win32"){let n=ZC(t);for(let o of n)for(let s of e){let i=LC(o,s.deny,r);if(i)return{decision:"deny",matchedPattern:i}}return{decision:"allow"}}function Kx(t,e,r=process.platform==="win32",n){let o=i=>i.replace(/\\/g,"/"),s=new Set;if(s.add(o(t)),n){let i=mn(n,t);s.add(o(i));try{s.add(o(zC(i)))}catch{}}for(let i of e)for(let a of i){let c=DC(a,r);for(let u of s)if(c.test(u))return{denied:!0,matchedPattern:a}}return{denied:!1}}var UC={python:[/os\.system\(\s*(['"])(.*?)\1\s*\)/g,/subprocess\.(?:run|call|Popen|check_output|check_call)\(\s*(['"])(.*?)\1/g],javascript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],typescript:[/exec(?:Sync|File|FileSync)?\(\s*(['"`])(.*?)\1/g,/spawn(?:Sync)?\(\s*(['"`])(.*?)\1/g],ruby:[/system\(\s*(['"])(.*?)\1/g,/`(.*?)`/g],go:[/exec\.Command\(\s*(['"`])(.*?)\1/g],php:[/shell_exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])exec\(\s*(['"`])(.*?)\1/g,/(?:^|[^.])system\(\s*(['"`])(.*?)\1/g,/passthru\(\s*(['"`])(.*?)\1/g,/proc_open\(\s*(['"`])(.*?)\1/g],rust:[/Command::new\(\s*(['"`])(.*?)\1/g]};function HC(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 Wx(t,e){let r=UC[e];if(!r&&e!=="python")return[];let n=[];if(r)for(let o of r){o.lastIndex=0;let s;for(;(s=o.exec(t))!==null;){let i=s[s.length-1];i&&n.push(i)}}return e==="python"&&n.push(...HC(t)),n}function Ip(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}
334
334
 
335
335
  stdout:
336
336
  ${n}
337
337
 
338
338
  stderr:
339
- ${o}`}}import{execFileSync as qC}from"node:child_process";function FC(){if(process.platform==="win32")return NaN;let t=process.ppid;if(!t||t<=1)return NaN;try{let e=qC("ps",["-o","ppid=","-p",String(t)],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim(),r=parseInt(e,10);return Number.isFinite(r)?r:NaN}catch{return NaN}}function BC(t={}){let e=t.getPpid??(()=>process.ppid),r=t.readGrandparentPpid??FC,n=e(),o=r();return()=>{let s=e();return!(s!==n||s===0||s===1||!Number.isNaN(o)&&o>1&&r()===1)}}var VC=BC();function Jx(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??VC,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=["SIGTERM","SIGINT"];process.platform!=="win32"&&i.push("SIGHUP");for(let a of i)process.on(a,o);return()=>{n=!0,clearInterval(s);for(let a of i)process.removeListener(a,o)}}import{createHash as KC}from"node:crypto";import{execFileSync as WC}from"node:child_process";function Ip(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=WC("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`__${KC("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}function JC(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}var GC={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"},YC={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\u2019t 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"},ao=class{db;constructor(e){this.db=e}static contextSavingsTotal(e,r){let n=e-r,o=e>0?Math.round(n/e*1e3)/10:0;return{rawBytes:e,contextBytes:r,savedBytes:n,savedPercent:o}}static thinkInCodeComparison(e,r){let n=r>0?Math.round(e/r*10)/10:0;return{fileBytes:e,outputBytes:r,ratio:n}}static toolSavings(e){return e.map(r=>({...r,savedBytes:r.rawBytes-r.contextBytes}))}static sandboxIO(e,r){return{inputBytes:e,outputBytes:r}}queryAll(e){let n=this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??"",o=Object.values(e.bytesReturned).reduce((K,Le)=>K+Le,0),s=Object.values(e.calls).reduce((K,Le)=>K+Le,0),i=e.bytesIndexed+e.bytesSandboxed,a=i+o,c=a/Math.max(o,1),u=a>0?Math.round((1-o/a)*100):0,l=new Set([...Object.keys(e.calls),...Object.keys(e.bytesReturned)]),d=Array.from(l).sort().map(K=>({tool:K,calls:e.calls[K]||0,context_kb:Math.round((e.bytesReturned[K]||0)/1024*10)/10,tokens:Math.round((e.bytesReturned[K]||0)/4)})),m=((Date.now()-e.sessionStart)/6e4).toFixed(1),p;if(e.cacheHits>0||e.cacheBytesSaved>0){let K=a+e.cacheBytesSaved,Le=K/Math.max(o,1),Se=Math.max(0,24-Math.floor((Date.now()-e.sessionStart)/(3600*1e3)));p={hits:e.cacheHits,bytes_saved:e.cacheBytesSaved,ttl_hours_left:Se,total_with_cache:K,total_savings_ratio:Le}}let h=this.db.prepare("SELECT COUNT(*) as cnt FROM session_events WHERE session_id = ?").get(n).cnt,g=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events WHERE session_id = ? GROUP BY category ORDER BY cnt DESC").all(n),x=this.db.prepare("SELECT compact_count FROM session_meta WHERE session_id = ?").get(n)?.compact_count??0,k=this.db.prepare("SELECT event_count, consumed FROM session_resume WHERE session_id = ? ORDER BY created_at DESC LIMIT 1").get(n),w=k?!k.consumed:!1,O=this.db.prepare("SELECT category, type, data FROM session_events WHERE session_id = ? ORDER BY id DESC").all(n),G=new Map;for(let K of O){G.has(K.category)||G.set(K.category,new Set);let Le=G.get(K.category);if(Le.size<5){let Se=K.data;K.category==="file"?Se=K.data.split("/").pop()||K.data:K.category==="prompt"&&(Se=Se.length>50?Se.slice(0,47)+"...":Se),Se.length>40&&(Se=Se.slice(0,37)+"..."),Le.add(Se)}}let $e=g.map(K=>({category:K.category,count:K.cnt,label:GC[K.category]||K.category,preview:G.get(K.category)?Array.from(G.get(K.category)).join(", "):"",why:YC[K.category]||"Survives context resets"}));return{savings:{processed_kb:Math.round(a/1024*10)/10,entered_kb:Math.round(o/1024*10)/10,saved_kb:Math.round(i/1024*10)/10,pct:u,savings_ratio:Math.round(c*10)/10,by_tool:d,total_calls:s,total_bytes_returned:o,kept_out:i,total_processed:a},cache:p,session:{id:n,uptime_min:m},continuity:{total_events:h,by_category:$e,compact_count:x,resume_ready:w}}}};function io(t){return t>=1024*1024?`${(t/1024/1024).toFixed(1)} MB`:t>=1024?`${(t/1024).toFixed(1)} KB`:`${Math.round(t)} B`}function XC(t){let e=parseFloat(t);if(isNaN(e)||e<1)return"< 1 min";if(e<60)return`${Math.round(e)} min`;let r=Math.floor(e/60),n=Math.round(e%60);return n>0?`${r}h ${n}m`:`${r}h`}function Np(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}function Gx(t,e,r=40){if(e<=0)return"\u2591".repeat(r);let n=Math.max(1,Math.round(t/e*r));return"\u2588".repeat(Math.min(n,r))+"\u2591".repeat(Math.max(0,r-n))}function Sa(t,e,r){let n=[],o=XC(t.session.uptime_min),s=t.savings.kept_out+(t.cache?t.cache.bytes_saved:0),i=t.savings.total_bytes_returned,a=t.savings.total_calls,c=s+i,u=c>0?s/c*100:0,l=Math.round(s/4);if(s===0){n.push(`context-mode ${o} ${a} calls`),n.push(""),a===0?n.push("No tool calls yet. Use batch_execute or execute to start saving tokens."):n.push(`${io(i)} entered context | 0 tokens saved`),n.push("");let p=e?`v${e}`:"context-mode";return n.push(p),e&&r&&r!=="unknown"&&JC(r,e)&&n.push(`Update available: v${e} -> v${r} | ctx_upgrade`),n.join(`
340
- `)}n.push(`${Np(l)} tokens saved \xB7 ${u.toFixed(1)}% reduction \xB7 ${o}`),n.push(""),n.push(`Without context-mode |${Gx(c,c)}| ${io(c)}`),n.push(`With context-mode |${Gx(i,c)}| ${io(i)}`),n.push(""),n.push(`${io(s)} kept out of your conversation. Never entered context.`),n.push("");let d=[`${a} calls`];t.cache&&t.cache.hits>0&&d.push(`${t.cache.hits} cache hits (+${io(t.cache.bytes_saved)})`),n.push(d.join(" \xB7 "));let f=t.savings.by_tool.filter(p=>p.calls>0);if(f.length>=2){n.push("");let p=f.map(h=>{let g=h.context_kb*1024,y=u<100?g/(1-u/100):g,x=Math.max(0,y-g);return{...h,returnedBytes:g,estimatedSaved:x}}).sort((h,g)=>g.estimatedSaved-h.estimatedSaved);for(let h of p){let g=h.tool.length>22?h.tool.slice(0,19)+"...":h.tool;n.push(` ${g.padEnd(22)} ${String(h.calls).padStart(4)} calls ${io(h.estimatedSaved).padStart(8)} saved`)}}if(t.continuity.total_events>0){n.push("");let p=t.continuity.by_category,h=[],g=p.find(G=>G.category==="file")?.count,y=p.find(G=>G.category==="git")?.count,x=p.find(G=>G.category==="prompt")?.count,k=p.find(G=>G.category==="error")?.count,w=p.find(G=>G.category==="task")?.count;g&&h.push(`${g} files`),y&&h.push(`${y} git ops`),x&&h.push(`${x} prompts`),k&&h.push(`${k} errors`),w&&h.push(`${w} tasks`);let O=h.length>0?` \xB7 ${h.join(", ")}`:"";t.continuity.compact_count>0?(n.push(`${Np(t.continuity.total_events)} events remembered across ${t.continuity.compact_count} compaction${t.continuity.compact_count!==1?"s":""}${O}`),n.push("Zero knowledge lost \u2014 picks up exactly where you left off.")):n.push(`${Np(t.continuity.total_events)} events tracked${O}`)}n.push("");let m=e?`v${e}`:"context-mode";return n.push(m),e&&r&&r!=="unknown"&&r!==e&&n.push(`Update available: v${e} -> v${r} | ctx_upgrade`),n.join(`
341
- `)}var Kt=Rr(uN(import.meta.url)),Or=(()=>{for(let t of["../package.json","./package.json"]){let e=sr(Kt,t);if(Je(e))try{return JSON.parse(dk(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
339
+ ${o}`}}import{execFileSync as qC}from"node:child_process";function FC(){if(process.platform==="win32")return NaN;let t=process.ppid;if(!t||t<=1)return NaN;try{let e=qC("ps",["-o","ppid=","-p",String(t)],{encoding:"utf-8",timeout:2e3,stdio:["ignore","pipe","ignore"]}).trim(),r=parseInt(e,10);return Number.isFinite(r)?r:NaN}catch{return NaN}}function BC(t={}){let e=t.getPpid??(()=>process.ppid),r=t.readGrandparentPpid??FC,n=e(),o=r();return()=>{let s=e();return!(s!==n||s===0||s===1||!Number.isNaN(o)&&o>1&&r()===1)}}var VC=BC();function Jx(t){let e=t.checkIntervalMs??3e4,r=t.isParentAlive??VC,n=!1,o=()=>{n||(n=!0,t.onShutdown())},s=setInterval(()=>{r()||o()},e);s.unref();let i=["SIGTERM","SIGINT"];process.platform!=="win32"&&i.push("SIGHUP");for(let a of i)process.on(a,o);return()=>{n=!0,clearInterval(s);for(let a of i)process.removeListener(a,o)}}import{createHash as KC}from"node:crypto";import{execFileSync as WC}from"node:child_process";function Np(){let t=process.env.CONTEXT_MODE_SESSION_SUFFIX;if(t!==void 0)return t?`__${t}`:"";try{let e=process.cwd(),r=WC("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`__${KC("sha256").update(e).digest("hex").slice(0,8)}`}catch{}return""}function JC(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}var GC={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"},YC={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\u2019t 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"},ao=class{db;constructor(e){this.db=e}static contextSavingsTotal(e,r){let n=e-r,o=e>0?Math.round(n/e*1e3)/10:0;return{rawBytes:e,contextBytes:r,savedBytes:n,savedPercent:o}}static thinkInCodeComparison(e,r){let n=r>0?Math.round(e/r*10)/10:0;return{fileBytes:e,outputBytes:r,ratio:n}}static toolSavings(e){return e.map(r=>({...r,savedBytes:r.rawBytes-r.contextBytes}))}static sandboxIO(e,r){return{inputBytes:e,outputBytes:r}}queryAll(e){let n=this.db.prepare("SELECT session_id FROM session_meta ORDER BY started_at DESC LIMIT 1").get()?.session_id??"",o=Object.values(e.bytesReturned).reduce((K,Le)=>K+Le,0),s=Object.values(e.calls).reduce((K,Le)=>K+Le,0),i=e.bytesIndexed+e.bytesSandboxed,a=i+o,c=a/Math.max(o,1),u=a>0?Math.round((1-o/a)*100):0,l=new Set([...Object.keys(e.calls),...Object.keys(e.bytesReturned)]),d=Array.from(l).sort().map(K=>({tool:K,calls:e.calls[K]||0,context_kb:Math.round((e.bytesReturned[K]||0)/1024*10)/10,tokens:Math.round((e.bytesReturned[K]||0)/4)})),m=((Date.now()-e.sessionStart)/6e4).toFixed(1),p;if(e.cacheHits>0||e.cacheBytesSaved>0){let K=a+e.cacheBytesSaved,Le=K/Math.max(o,1),Se=Math.max(0,24-Math.floor((Date.now()-e.sessionStart)/(3600*1e3)));p={hits:e.cacheHits,bytes_saved:e.cacheBytesSaved,ttl_hours_left:Se,total_with_cache:K,total_savings_ratio:Le}}let h=this.db.prepare("SELECT COUNT(*) as cnt FROM session_events WHERE session_id = ?").get(n).cnt,g=this.db.prepare("SELECT category, COUNT(*) as cnt FROM session_events WHERE session_id = ? GROUP BY category ORDER BY cnt DESC").all(n),y=this.db.prepare("SELECT compact_count FROM session_meta WHERE session_id = ?").get(n)?.compact_count??0,k=this.db.prepare("SELECT event_count, consumed FROM session_resume WHERE session_id = ? ORDER BY created_at DESC LIMIT 1").get(n),w=k?!k.consumed:!1,O=this.db.prepare("SELECT category, type, data FROM session_events WHERE session_id = ? ORDER BY id DESC").all(n),G=new Map;for(let K of O){G.has(K.category)||G.set(K.category,new Set);let Le=G.get(K.category);if(Le.size<5){let Se=K.data;K.category==="file"?Se=K.data.split("/").pop()||K.data:K.category==="prompt"&&(Se=Se.length>50?Se.slice(0,47)+"...":Se),Se.length>40&&(Se=Se.slice(0,37)+"..."),Le.add(Se)}}let $e=g.map(K=>({category:K.category,count:K.cnt,label:GC[K.category]||K.category,preview:G.get(K.category)?Array.from(G.get(K.category)).join(", "):"",why:YC[K.category]||"Survives context resets"}));return{savings:{processed_kb:Math.round(a/1024*10)/10,entered_kb:Math.round(o/1024*10)/10,saved_kb:Math.round(i/1024*10)/10,pct:u,savings_ratio:Math.round(c*10)/10,by_tool:d,total_calls:s,total_bytes_returned:o,kept_out:i,total_processed:a},cache:p,session:{id:n,uptime_min:m},continuity:{total_events:h,by_category:$e,compact_count:y,resume_ready:w}}}};function io(t){return t>=1024*1024?`${(t/1024/1024).toFixed(1)} MB`:t>=1024?`${(t/1024).toFixed(1)} KB`:`${Math.round(t)} B`}function XC(t){let e=parseFloat(t);if(isNaN(e)||e<1)return"< 1 min";if(e<60)return`${Math.round(e)} min`;let r=Math.floor(e/60),n=Math.round(e%60);return n>0?`${r}h ${n}m`:`${r}h`}function zp(t){return t>=1e6?`${(t/1e6).toFixed(1)}M`:t>=1e3?`${(t/1e3).toFixed(1)}K`:String(t)}function Gx(t,e,r=40){if(e<=0)return"\u2591".repeat(r);let n=Math.max(1,Math.round(t/e*r));return"\u2588".repeat(Math.min(n,r))+"\u2591".repeat(Math.max(0,r-n))}function Sa(t,e,r){let n=[],o=XC(t.session.uptime_min),s=t.savings.kept_out+(t.cache?t.cache.bytes_saved:0),i=t.savings.total_bytes_returned,a=t.savings.total_calls,c=s+i,u=c>0?s/c*100:0,l=Math.round(s/4);if(s===0){n.push(`context-mode ${o} ${a} calls`),n.push(""),a===0?n.push("No tool calls yet. Use batch_execute or execute to start saving tokens."):n.push(`${io(i)} entered context | 0 tokens saved`),n.push("");let p=e?`v${e}`:"context-mode";return n.push(p),e&&r&&r!=="unknown"&&JC(r,e)&&n.push(`Update available: v${e} -> v${r} | ctx_upgrade`),n.join(`
340
+ `)}n.push(`${zp(l)} tokens saved \xB7 ${u.toFixed(1)}% reduction \xB7 ${o}`),n.push(""),n.push(`Without context-mode |${Gx(c,c)}| ${io(c)}`),n.push(`With context-mode |${Gx(i,c)}| ${io(i)}`),n.push(""),n.push(`${io(s)} kept out of your conversation. Never entered context.`),n.push("");let d=[`${a} calls`];t.cache&&t.cache.hits>0&&d.push(`${t.cache.hits} cache hits (+${io(t.cache.bytes_saved)})`),n.push(d.join(" \xB7 "));let f=t.savings.by_tool.filter(p=>p.calls>0);if(f.length>=2){n.push("");let p=f.map(h=>{let g=h.context_kb*1024,x=u<100?g/(1-u/100):g,y=Math.max(0,x-g);return{...h,returnedBytes:g,estimatedSaved:y}}).sort((h,g)=>g.estimatedSaved-h.estimatedSaved);for(let h of p){let g=h.tool.length>22?h.tool.slice(0,19)+"...":h.tool;n.push(` ${g.padEnd(22)} ${String(h.calls).padStart(4)} calls ${io(h.estimatedSaved).padStart(8)} saved`)}}if(t.continuity.total_events>0){n.push("");let p=t.continuity.by_category,h=[],g=p.find(G=>G.category==="file")?.count,x=p.find(G=>G.category==="git")?.count,y=p.find(G=>G.category==="prompt")?.count,k=p.find(G=>G.category==="error")?.count,w=p.find(G=>G.category==="task")?.count;g&&h.push(`${g} files`),x&&h.push(`${x} git ops`),y&&h.push(`${y} prompts`),k&&h.push(`${k} errors`),w&&h.push(`${w} tasks`);let O=h.length>0?` \xB7 ${h.join(", ")}`:"";t.continuity.compact_count>0?(n.push(`${zp(t.continuity.total_events)} events remembered across ${t.continuity.compact_count} compaction${t.continuity.compact_count!==1?"s":""}${O}`),n.push("Zero knowledge lost \u2014 picks up exactly where you left off.")):n.push(`${zp(t.continuity.total_events)} events tracked${O}`)}n.push("");let m=e?`v${e}`:"context-mode";return n.push(m),e&&r&&r!=="unknown"&&r!==e&&n.push(`Update available: v${e} -> v${r} | ctx_upgrade`),n.join(`
341
+ `)}var Wt=ar(uN(import.meta.url)),Or=(()=>{for(let t of["../package.json","./package.json"]){let e=ir(Wt,t);if(Be(e))try{return JSON.parse(dk(e,"utf8")).version}catch{}}return"unknown"})();process.on("unhandledRejection",t=>{process.stderr.write(`[context-mode] unhandledRejection: ${t}
342
342
  `)});process.on("uncaughtException",t=>{process.stderr.write(`[context-mode] uncaughtException: ${t?.message??t}
343
- `)});var Ma=_a(),Ia=Tx(Ma),De=new fa({name:"context-mode",version:Or});De.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});De.server.setRequestHandler(Dn,async()=>({prompts:[]}));De.server.setRequestHandler(jn,async()=>({resources:[]}));De.server.setRequestHandler(Mn,async()=>({resourceTemplates:[]}));var Rs=new xs({runtimes:Ma,projectRoot:process.env.CLAUDE_PROJECT_DIR}),Ef=me(wf(),`cm-fs-preload-${process.pid}.js`);pk(Ef,`(function(){var __cm_fs=0;process.on('exit',function(){if(__cm_fs>0)try{process.stderr.write('__CM_FS__:'+__cm_fs+'\\n')}catch(e){}});try{var f=require('fs');var ors=f.readFileSync;f.readFileSync=function(){var r=ors.apply(this,arguments);if(Buffer.isBuffer(r))__cm_fs+=r.length;else if(typeof r==='string')__cm_fs+=Buffer.byteLength(r);return r;};}catch(e){}})();
344
- `);var Vt=null;function dN(t){try{let e=xn();if(!Je(e))return;let r=aN(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=me(e,n);try{t.index({path:o,source:"session-events"}),Pr(o)}catch{}}}catch{}}var Na=null,or=null;function xn(){if(Na)return Na.getSessionDir();let t=me(bf(),".claude","context-mode","sessions");return Sf(t,{recursive:!0}),t}function pN(){return process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.VSCODE_CWD||process.env.OPENCODE_PROJECT_DIR||process.env.PI_PROJECT_DIR||process.env.CONTEXT_MODE_PROJECT_DIR||process.cwd()}function za(){let e=pN().replace(/\\/g,"/");return iN("sha256").update(e).digest("hex").slice(0,16)}function kf(){let t=za(),e=xn(),r=me(Rr(e),"content");return Sf(r,{recursive:!0}),me(r,`${t}.db`)}function vn(){if(!Vt){let t=kf();Vt=new ka(t);try{let e=Rr(kf());$p(e,14),Vt.cleanupStaleSources(14);let r=me(bf(),".context-mode","content");Je(r)&&$p(r,0)}catch{}Tp()}return dN(Vt),Vt}var Te={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()},Cr=null,Ca=0,ik=0,fN=3,mN=3600*1e3;async function hN(){return new Promise(t=>{let e=lN("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}function gN(){let t=Na?.name;return t==="Claude Code"?"/ctx-upgrade":t==="OpenClaw"?"npm run install:openclaw":t==="Pi"?"npm run build":"npm update -g context-mode"}function _N(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function yN(){return!Cr||Cr==="unknown"?!1:_N(Cr,Or)}function xN(){if(!yN())return!1;let t=Date.now();if(Ca>=fN){if(t-ik<mN)return!1;Ca=0}return Ca===0&&(ik=t),Ca++,!0}function D(t,e){if(xN()&&e.content.length>0){let n=gN();e.content[0].text=`\u26A0\uFE0F context-mode v${Or} outdated \u2192 v${Cr} available. Upgrade: ${n}
343
+ `)});var Da=_a(),Ia=Tx(Da),De=new fa({name:"context-mode",version:Or});De.server.registerCapabilities({prompts:{listChanged:!1},resources:{listChanged:!1}});De.server.setRequestHandler(Dn,async()=>({prompts:[]}));De.server.setRequestHandler(jn,async()=>({resources:[]}));De.server.setRequestHandler(Mn,async()=>({resourceTemplates:[]}));var Rs=new xs({runtimes:Da,projectRoot:process.env.CLAUDE_PROJECT_DIR}),Ef=de(wf(),`cm-fs-preload-${process.pid}.js`);pk(Ef,`(function(){var __cm_fs=0;process.on('exit',function(){if(__cm_fs>0)try{process.stderr.write('__CM_FS__:'+__cm_fs+'\\n')}catch(e){}});try{var f=require('fs');var ors=f.readFileSync;f.readFileSync=function(){var r=ors.apply(this,arguments);if(Buffer.isBuffer(r))__cm_fs+=r.length;else if(typeof r==='string')__cm_fs+=Buffer.byteLength(r);return r;};}catch(e){}})();
344
+ `);var Kt=null;function dN(t){try{let e=Cr();if(!Be(e))return;let r=aN(e).filter(n=>n.endsWith("-events.md"));for(let n of r){let o=de(e,n);try{t.index({path:o,source:"session-events"}),Rr(o)}catch{}}}catch{}}var za=null,sr=null;function Cr(){if(za)return za.getSessionDir();let t=de(bf(),".claude","context-mode","sessions");return Sf(t,{recursive:!0}),t}function pN(){return process.env.CLAUDE_PROJECT_DIR||process.env.GEMINI_PROJECT_DIR||process.env.VSCODE_CWD||process.env.OPENCODE_PROJECT_DIR||process.env.PI_PROJECT_DIR||process.env.CONTEXT_MODE_PROJECT_DIR||process.cwd()}function Aa(){let e=pN().replace(/\\/g,"/");return iN("sha256").update(e).digest("hex").slice(0,16)}function kf(){let t=Aa(),e=Cr(),r=de(ar(e),"content");return Sf(r,{recursive:!0}),de(r,`${t}.db`)}function vn(){if(!Kt){let t=kf();Kt=new ka(t);try{let e=ar(kf());Pp(e,14),Kt.cleanupStaleSources(14);let r=de(bf(),".context-mode","content");Be(r)&&Pp(r,0)}catch{}$p()}return dN(Kt),Kt}var Te={calls:{},bytesReturned:{},bytesIndexed:0,bytesSandboxed:0,cacheHits:0,cacheBytesSaved:0,sessionStart:Date.now()},Ir=null,Ca=0,ik=0,fN=3,mN=3600*1e3;async function hN(){return new Promise(t=>{let e=lN("https://registry.npmjs.org/context-mode/latest",{headers:{Connection:"close"}},r=>{let n="";r.on("data",o=>{n+=o}),r.on("end",()=>{try{let o=JSON.parse(n);t(o.version??"unknown")}catch{t("unknown")}})});e.on("error",()=>t("unknown")),e.setTimeout(5e3,()=>{e.destroy(),t("unknown")}),e.end()})}function gN(){let t=za?.name;return t==="Claude Code"?"/ctx-upgrade":t==="OpenClaw"?"npm run install:openclaw":t==="Pi"?"npm run build":"npm update -g context-mode"}function _N(t,e){let r=t.split(".").map(Number),n=e.split(".").map(Number);for(let o=0;o<3;o++){if((r[o]??0)>(n[o]??0))return!0;if((r[o]??0)<(n[o]??0))return!1}return!1}function yN(){return!Ir||Ir==="unknown"?!1:_N(Ir,Or)}function xN(){if(!yN())return!1;let t=Date.now();if(Ca>=fN){if(t-ik<mN)return!1;Ca=0}return Ca===0&&(ik=t),Ca++,!0}function D(t,e){if(xN()&&e.content.length>0){let n=gN();e.content[0].text=`\u26A0\uFE0F context-mode v${Or} outdated \u2192 v${Ir} available. Upgrade: ${n}
345
345
 
346
- `+e.content[0].text}let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return Te.calls[t]=(Te.calls[t]||0)+1,Te.bytesReturned[t]=(Te.bytesReturned[t]||0)+r,e}function zt(t){Te.bytesIndexed+=t}function Tf(t,e){try{let r=Rp(process.env.CLAUDE_PROJECT_DIR),n=Op(t,r);if(n.decision==="deny")return D(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function fk(t,e,r){try{let n=Wx(t,e);if(n.length===0)return null;let o=Rp(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=Op(s,o);if(i.decision==="deny")return D(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 vN(t,e){try{let r=process.env.CLAUDE_PROJECT_DIR??process.cwd(),n=Vx("Read",r),o=Kx(t,n,process.platform==="win32",r);if(o.denied)return D(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${o.matchedPattern}`}],isError:!0})}catch{}return null}var kN=Ia.join(", "),SN=ya()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",bN="",wN="";function EN(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===bN){for(e.push(r),n++;n<t.length&&t[n]!==wN;)r++,n++;n<t.length&&n++}else r++,n++;return e}function mk(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of EN(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(d=>d.length>2),l=t.toLowerCase();for(let d of u){let f=l.indexOf(d);for(;f!==-1;)o.push(f),f=l.indexOf(d,f+1)}}if(o.length===0)return t.slice(0,r)+`
346
+ `+e.content[0].text}let r=e.content.reduce((n,o)=>n+Buffer.byteLength(o.text),0);return Te.calls[t]=(Te.calls[t]||0)+1,Te.bytesReturned[t]=(Te.bytesReturned[t]||0)+r,e}function At(t){Te.bytesIndexed+=t}function Tf(t,e){try{let r=Op(process.env.CLAUDE_PROJECT_DIR),n=Cp(t,r);if(n.decision==="deny")return D(e,{content:[{type:"text",text:`Command blocked by security policy: matches deny pattern ${n.matchedPattern}`}],isError:!0})}catch{}return null}function fk(t,e,r){try{let n=Wx(t,e);if(n.length===0)return null;let o=Op(process.env.CLAUDE_PROJECT_DIR);for(let s of n){let i=Cp(s,o);if(i.decision==="deny")return D(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 vN(t,e){try{let r=process.env.CLAUDE_PROJECT_DIR??process.cwd(),n=Vx("Read",r),o=Kx(t,n,process.platform==="win32",r);if(o.denied)return D(e,{content:[{type:"text",text:`File access blocked by security policy: path matches Read deny pattern ${o.matchedPattern}`}],isError:!0})}catch{}return null}var kN=Ia.join(", "),SN=ya()?" (Bun detected \u2014 JS/TS runs 3-5x faster)":"",bN="",wN="";function EN(t){let e=[],r=0,n=0;for(;n<t.length;)if(t[n]===bN){for(e.push(r),n++;n<t.length&&t[n]!==wN;)r++,n++;n<t.length&&n++}else r++,n++;return e}function mk(t,e,r=1500,n){if(t.length<=r)return t;let o=[];if(n)for(let u of EN(n))o.push(u);if(o.length===0){let u=e.toLowerCase().split(/\s+/).filter(d=>d.length>2),l=t.toLowerCase();for(let d of u){let f=l.indexOf(d);for(;f!==-1;)o.push(f),f=l.indexOf(d,f+1)}}if(o.length===0)return t.slice(0,r)+`
347
347
  \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(`
348
348
 
349
349
  `)}function TN(t,e,r,n=80*1024){let o=[],s=0;for(let i of e){if(s>n){o.push(`## ${i}
@@ -422,8 +422,8 @@ _(process backgrounded after ${r}ms \u2014 still running)_`}]}):l?D("ctx_execute
422
422
  _(timed out after ${r}ms \u2014 partial output shown above)_`}]}):D("ctx_execute",{content:[{type:"text",text:`Execution timed out after ${r}ms
423
423
 
424
424
  stderr:
425
- ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:l,output:d}=Cp({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(d)>Aa?(zt(Buffer.byteLength(d)),D("ctx_execute",{content:[{type:"text",text:ho(d,o,l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):Buffer.byteLength(d)>ja?(zt(Buffer.byteLength(d)),D("ctx_execute",{content:[{type:"text",text:ho(d,"errors failures exceptions",l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):D("ctx_execute",{content:[{type:"text",text:d}],isError:l})}let u=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(u)>Aa?(zt(Buffer.byteLength(u)),D("ctx_execute",{content:[{type:"text",text:ho(u,o,`execute:${t}`)}]})):Buffer.byteLength(u)>ja?D("ctx_execute",hk(u,`execute:${t}`)):D("ctx_execute",{content:[{type:"text",text:u}]})}catch(s){let i=s instanceof Error?s.message:String(s);return D("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});function hk(t,e){let r=vn();zt(Buffer.byteLength(t));let n=r.index({content:t,source:e});return{content:[{type:"text",text:`Indexed ${n.totalChunks} sections (${n.codeChunks} with code) from: ${n.label}
426
- Use search(queries: ["..."]) to query this content. Use source: "${n.label}" to scope results.`}]}}var Aa=5e3,ja=102400;function ho(t,e,r,n=5){let o=t.split(`
425
+ ${i.stderr}`}],isError:!0})}if(i.exitCode!==0){let{isError:l,output:d}=Ip({language:t,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(d)>ja?(At(Buffer.byteLength(d)),D("ctx_execute",{content:[{type:"text",text:ho(d,o,l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):Buffer.byteLength(d)>Ma?(At(Buffer.byteLength(d)),D("ctx_execute",{content:[{type:"text",text:ho(d,"errors failures exceptions",l?`execute:${t}:error`:`execute:${t}`)}],isError:l})):D("ctx_execute",{content:[{type:"text",text:d}],isError:l})}let u=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(u)>ja?(At(Buffer.byteLength(u)),D("ctx_execute",{content:[{type:"text",text:ho(u,o,`execute:${t}`)}]})):Buffer.byteLength(u)>Ma?D("ctx_execute",hk(u,`execute:${t}`)):D("ctx_execute",{content:[{type:"text",text:u}]})}catch(s){let i=s instanceof Error?s.message:String(s);return D("ctx_execute",{content:[{type:"text",text:`Runtime error: ${i}`}],isError:!0})}});function hk(t,e){let r=vn();At(Buffer.byteLength(t));let n=r.index({content:t,source:e});return{content:[{type:"text",text:`Indexed ${n.totalChunks} sections (${n.codeChunks} with code) from: ${n.label}
426
+ Use search(queries: ["..."]) to query this content. Use source: "${n.label}" to scope results.`}]}}var ja=5e3,Ma=102400;function ho(t,e,r,n=5){let o=t.split(`
427
427
  `).length,s=Buffer.byteLength(t),i=vn(),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(`
428
428
  `)}let l=[`Indexed ${a.totalChunks} sections from "${r}" into knowledge base.`,`${c.length} sections matched "${e}" (${o} lines, ${(s/1024).toFixed(1)}KB):`,""];for(let d of c){let f=d.content.split(`
429
429
  `)[0].slice(0,120);l.push(` - ${d.title}: ${f}`)}return u.length>0&&(l.push(""),l.push(`Searchable terms: ${u.join(", ")}`)),l.push(""),l.push("Use search(queries: [...]) to retrieve full content of any section."),l.join(`
@@ -433,7 +433,7 @@ PREFER THIS OVER Read/cat for: log files, data files (CSV, JSON, XML), large sou
433
433
 
434
434
  THINK IN CODE: Write code that processes FILE_CONTENT and console.log() only the answer. Don't read files into context to analyze mentally. Write robust, pure JavaScript \u2014 no npm deps, try/catch, null-safe. Node.js + Bun compatible.
435
435
 
436
- When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:L.object({path:L.string().describe("Absolute file path or relative to project root"),language:L.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:L.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:L.coerce.number().optional().default(3e4).describe("Max execution time in ms"),intent:L.string().optional().describe("What you're looking for in the output. When provided and output is large (>5KB), returns only matching sections via BM25 search instead of truncated output.")})},async({path:t,language:e,code:r,timeout:n,intent:o})=>{let s=vN(t,"execute_file");if(s)return s;if(e==="shell"){let i=Tf(r,"execute_file");if(i)return i}else{let i=fk(r,e,"execute_file");if(i)return i}try{let i=await Rs.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return D("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}=Cp({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>Aa?(zt(Buffer.byteLength(u)),D("ctx_execute_file",{content:[{type:"text",text:ho(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>ja?(zt(Buffer.byteLength(u)),D("ctx_execute_file",{content:[{type:"text",text:ho(u,"errors failures exceptions",c?`file:${t}:error`:`file:${t}`)}],isError:c})):D("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?(zt(Buffer.byteLength(a)),D("ctx_execute_file",{content:[{type:"text",text:ho(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>ja?D("ctx_execute_file",hk(a,`file:${t}`)):D("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return D("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});De.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.
436
+ When reporting results \u2014 terse like caveman. Technical substance exact. Only fluff die. Pattern: [thing] [action] [reason]. [next step].`,inputSchema:L.object({path:L.string().describe("Absolute file path or relative to project root"),language:L.enum(["javascript","typescript","python","shell","ruby","go","rust","php","perl","r","elixir"]).describe("Runtime language"),code:L.string().describe("Code to process FILE_CONTENT (file_content in Elixir). Print summary via console.log/print/echo/IO.puts."),timeout:L.coerce.number().optional().default(3e4).describe("Max execution time in ms"),intent:L.string().optional().describe("What you're looking for in the output. When provided and output is large (>5KB), returns only matching sections via BM25 search instead of truncated output.")})},async({path:t,language:e,code:r,timeout:n,intent:o})=>{let s=vN(t,"execute_file");if(s)return s;if(e==="shell"){let i=Tf(r,"execute_file");if(i)return i}else{let i=fk(r,e,"execute_file");if(i)return i}try{let i=await Rs.executeFile({path:t,language:e,code:r,timeout:n});if(i.timedOut)return D("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}=Ip({language:e,exitCode:i.exitCode,stdout:i.stdout,stderr:i.stderr});return o&&o.trim().length>0&&Buffer.byteLength(u)>ja?(At(Buffer.byteLength(u)),D("ctx_execute_file",{content:[{type:"text",text:ho(u,o,c?`file:${t}:error`:`file:${t}`)}],isError:c})):Buffer.byteLength(u)>Ma?(At(Buffer.byteLength(u)),D("ctx_execute_file",{content:[{type:"text",text:ho(u,"errors failures exceptions",c?`file:${t}:error`:`file:${t}`)}],isError:c})):D("ctx_execute_file",{content:[{type:"text",text:u}],isError:c})}let a=i.stdout||"(no output)";return o&&o.trim().length>0&&Buffer.byteLength(a)>ja?(At(Buffer.byteLength(a)),D("ctx_execute_file",{content:[{type:"text",text:ho(a,o,`file:${t}`)}]})):Buffer.byteLength(a)>Ma?D("ctx_execute_file",hk(a,`file:${t}`)):D("ctx_execute_file",{content:[{type:"text",text:a}]})}catch(i){let a=i instanceof Error?i.message:String(i);return D("ctx_execute_file",{content:[{type:"text",text:`Runtime error: ${a}`}],isError:!0})}});De.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.
437
437
 
438
438
  WHEN TO USE:
439
439
  - Documentation from Context7, Skills, or MCP tools (API docs, framework guides, code examples)
@@ -445,8 +445,8 @@ WHEN TO USE:
445
445
 
446
446
  After indexing, use 'search' to retrieve specific sections on-demand.
447
447
  When \`path\` is provided, a content hash is stored for automatic stale detection in search results.
448
- Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:L.object({content:L.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:L.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:L.string().optional().describe("Label for the indexed content (e.g., 'Context7: React useEffect', 'Skill: frontend-design')")})},async({content:t,path:e,source:r})=>{if(!t&&!e)return D("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)zt(Buffer.byteLength(t));else if(e)try{let s=await import("fs");zt(s.readFileSync(e).byteLength)}catch{}let o=vn().index({content:t,path:e,source:r});return D("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
449
- 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 D("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});var yn=0,_f=Date.now(),$N=6e4,ak=3,ck=8;function $f(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function PN(t){let e=$f(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}De.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. File-backed sources are auto-refreshed when the source file changes.
448
+ Do NOT use for: log files, test output, CSV, build output \u2014 use 'execute_file' for those.`,inputSchema:L.object({content:L.string().optional().describe("Raw text/markdown to index. Provide this OR path, not both."),path:L.string().optional().describe("File path to read and index (content never enters context). Provide this OR content."),source:L.string().optional().describe("Label for the indexed content (e.g., 'Context7: React useEffect', 'Skill: frontend-design')")})},async({content:t,path:e,source:r})=>{if(!t&&!e)return D("ctx_index",{content:[{type:"text",text:"Error: Either content or path must be provided"}],isError:!0});try{if(t)At(Buffer.byteLength(t));else if(e)try{let s=await import("fs");At(s.readFileSync(e).byteLength)}catch{}let o=vn().index({content:t,path:e,source:r});return D("ctx_index",{content:[{type:"text",text:`Indexed ${o.totalChunks} sections (${o.codeChunks} with code) from: ${o.label}
449
+ 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 D("ctx_index",{content:[{type:"text",text:`Index error: ${o}`}],isError:!0})}});var xn=0,yf=Date.now(),$N=6e4,ak=3,ck=8;function $f(t){if(typeof t=="string")try{let e=JSON.parse(t);if(Array.isArray(e))return e}catch{}return t}function PN(t){let e=$f(t);return Array.isArray(e)?e.map((r,n)=>typeof r=="string"?{label:`cmd_${n+1}`,command:r}:r):e}De.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. File-backed sources are auto-refreshed when the source file changes.
450
450
 
451
451
  TIPS: 2-4 specific terms per query. Use 'source' to scope results.
452
452
 
@@ -457,10 +457,10 @@ ctx_search is a follow-up tool that queries previously indexed content. To gathe
457
457
  \u2022 ctx_fetch_and_index(url) \u2014 fetch a URL, index it, then search with ctx_search
458
458
  \u2022 ctx_index(content, source) \u2014 manually index text content
459
459
 
460
- 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 D("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-_f>$N&&(yn=0,_f=a),yn++,yn>ck)return D("ctx_search",{content:[{type:"text",text:`BLOCKED: ${yn} search calls in ${Math.round((a-_f)/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=yn>ak?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let m of n){if(l>u){d.push(`## ${m}
460
+ 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 D("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-yf>$N&&(xn=0,yf=a),xn++,xn>ck)return D("ctx_search",{content:[{type:"text",text:`BLOCKED: ${xn} search calls in ${Math.round((a-yf)/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=xn>ak?1:Math.min(o,2),u=40*1024,l=0,d=[];for(let m of n){if(l>u){d.push(`## ${m}
461
461
  (output cap reached)
462
462
  `);continue}let p=e.searchWithFallback(m,c,s,i);if(p.length===0){d.push(`## ${m}
463
- No results found.`);continue}let h=p.map((g,y)=>{let x=`--- [${g.source}] ---`,k=`### ${g.title}`,w=mk(g.content,m,1500,g.highlighted);return`${x}
463
+ No results found.`);continue}let h=p.map((g,x)=>{let y=`--- [${g.source}] ---`,k=`### ${g.title}`,w=mk(g.content,m,1500,g.highlighted);return`${y}
464
464
  ${k}
465
465
 
466
466
  ${w}`}).join(`
@@ -473,10 +473,10 @@ ${h}`),l+=h.length}let f=d.join(`
473
473
 
474
474
  `);if(e.lastRefreshCount>0&&(f=`> Auto-refreshed ${e.lastRefreshCount} stale source${e.lastRefreshCount>1?"s":""} (file changed since indexing).
475
475
 
476
- `+f),yn>=ak&&(f+=`
476
+ `+f),xn>=ak&&(f+=`
477
477
 
478
- \u26A0 search call #${yn}/${ck} in this window. Results limited to ${c}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),f.trim().length===0){let m=e.listSources(),p=m.length>0?`
479
- Indexed sources: ${m.map(h=>`"${h.label}" (${h.chunkCount} sections)`).join(", ")}`:"";return D("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return D("ctx_search",{content:[{type:"text",text:f}]})}catch(e){let r=e instanceof Error?e.message:String(e);return D("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});var yf=null,xf=null;function RN(){return yf||(yf=lk(import.meta.url).resolve("turndown")),yf}function ON(){return xf||(xf=lk(import.meta.url).resolve("turndown-plugin-gfm")),xf}function CN(t,e){let r=JSON.stringify(RN()),n=JSON.stringify(ON()),o=JSON.stringify(e);return`
478
+ \u26A0 search call #${xn}/${ck} in this window. Results limited to ${c}/query. Batch queries: search(queries: ["q1","q2","q3"]) or use batch_execute.`),f.trim().length===0){let m=e.listSources(),p=m.length>0?`
479
+ Indexed sources: ${m.map(h=>`"${h.label}" (${h.chunkCount} sections)`).join(", ")}`:"";return D("ctx_search",{content:[{type:"text",text:`No results found.${p}`}]})}return D("ctx_search",{content:[{type:"text",text:f}]})}catch(e){let r=e instanceof Error?e.message:String(e);return D("ctx_search",{content:[{type:"text",text:`Search error: ${r}`}],isError:!0})}});var xf=null,vf=null;function RN(){return xf||(xf=lk(import.meta.url).resolve("turndown")),xf}function ON(){return vf||(vf=lk(import.meta.url).resolve("turndown-plugin-gfm")),vf}function CN(t,e){let r=JSON.stringify(RN()),n=JSON.stringify(ON()),o=JSON.stringify(e);return`
480
480
  const TurndownService = require(${r});
481
481
  const { gfm } = require(${n});
482
482
  const fs = require('fs');
@@ -532,10 +532,10 @@ When reporting results \u2014 terse like caveman. Technical substance exact. Onl
532
532
  To refresh: call ctx_fetch_and_index again with \`force: true\`.
533
533
 
534
534
  You MUST call search() to answer questions about this content \u2014 this cached response contains no content.
535
- Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=me(wf(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=CN(t,n),s=await Rs.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return D("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=vn(),a=(s.stdout||"").trim(),c;try{c=dk(n,"utf-8").trim()}catch{return D("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return D("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});zt(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)+`
535
+ Use: search(queries: [...], source: "${i.label}")`}]})}}}let n=de(wf(),`ctx-fetch-${Date.now()}-${Math.random().toString(36).slice(2)}.dat`);try{let o=CN(t,n),s=await Rs.execute({language:"javascript",code:o,timeout:3e4});if(s.exitCode!==0)return D("ctx_fetch_and_index",{content:[{type:"text",text:`Failed to fetch ${t}: ${s.stderr||s.stdout}`}],isError:!0});let i=vn(),a=(s.stdout||"").trim(),c;try{c=dk(n,"utf-8").trim()}catch{return D("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but could not read subprocess output`}],isError:!0})}if(c.length===0)return D("ctx_fetch_and_index",{content:[{type:"text",text:`Fetched ${t} but got empty content`}],isError:!0});At(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)+`
536
536
 
537
537
  \u2026[truncated \u2014 use search() for full content]`:c,f=(Buffer.byteLength(c)/1024).toFixed(1),m=[`Fetched and indexed **${u.totalChunks} sections** (${f}KB) from: ${u.label}`,`Full content indexed in sandbox \u2014 use search(queries: [...], source: "${u.label}") for specific lookups.`,"","---","",d].join(`
538
- `);return D("ctx_fetch_and_index",{content:[{type:"text",text:m}]})}catch(o){let s=o instanceof Error?o.message:String(o);return D("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{vf(n)}catch{}}});De.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.
538
+ `);return D("ctx_fetch_and_index",{content:[{type:"text",text:m}]})}catch(o){let s=o instanceof Error?o.message:String(o);return D("ctx_fetch_and_index",{content:[{type:"text",text:`Fetch error: ${s}`}],isError:!0})}finally{try{Na(n)}catch{}}});De.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.
539
539
 
540
540
  THIS IS THE PRIMARY TOOL. Use this instead of multiple execute() calls.
541
541
 
@@ -550,24 +550,24 @@ When reporting results \u2014 terse like caveman. Technical substance exact. Onl
550
550
  `),s=!0;continue}let G=await Rs.execute({language:"shell",code:`${i}${k.command} 2>&1`,timeout:O}),$e=G.stdout||"(no output)",K=$e.matchAll(/__CM_FS__:(\d+)/g),Le=0;for(let Se of K)Le+=parseInt(Se[1]);if(Le>0&&(Te.bytesSandboxed+=Le,$e=$e.replace(/__CM_FS__:\d+\n?/g,"")),n.push(`# ${k.label}
551
551
 
552
552
  ${$e}
553
- `),G.timedOut){s=!0;let Se=t.indexOf(k);for(let Ir=Se+1;Ir<t.length;Ir++)n.push(`# ${t[Ir].label}
553
+ `),G.timedOut){s=!0;let Se=t.indexOf(k);for(let Nr=Se+1;Nr<t.length;Nr++)n.push(`# ${t[Nr].label}
554
554
 
555
555
  (skipped \u2014 batch timeout exceeded)
556
556
  `);break}}let a=n.join(`
557
557
  `),c=Buffer.byteLength(a),u=a.split(`
558
- `).length;if(s&&n.length===0)return D("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});zt(c);let l=vn(),d=`batch:${t.map(k=>k.label).join(",").slice(0,80)}`,f=l.index({content:a,source:d}),m=l.getChunksBySource(f.sourceId),p=["## Indexed Sections",""],h=[];for(let k of m){let w=Buffer.byteLength(k.content);p.push(`- ${k.title} (${(w/1024).toFixed(1)}KB)`),h.push(k.title)}let g=TN(l,e,d),y=l.getDistinctiveTerms?l.getDistinctiveTerms(f.sourceId):[],x=[`Executed ${t.length} commands (${u} lines, ${(c/1024).toFixed(1)}KB). Indexed ${f.totalChunks} sections. Searched ${e.length} queries.`,"",...p,"",...g,y.length>0?`
559
- Searchable terms for follow-up: ${y.join(", ")}`:""].join(`
560
- `);return D("ctx_batch_execute",{content:[{type:"text",text:x}]})}catch(n){let o=n instanceof Error?n.message:String(n);return D("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});function uk(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}De.registerTool("ctx_stats",{title:"Session Statistics",description:"Returns context consumption statistics for the current session. Shows total bytes returned to context, breakdown by tool, call counts, estimated token usage, and context savings ratio.",inputSchema:L.object({})},async()=>{let t;try{let e=za(),r=Ip(),n=me(xn(),`${e}${r}.db`);if(Je(n)){let o=ks(),s=new o(n,{readonly:!0});try{let a=new ao(s).queryAll(Te);t=Sa(a,Or,Cr)}finally{s.close()}}else{let s=new ao(uk()).queryAll(Te);t=Sa(s,Or,Cr)}}catch{let r=new ao(uk()).queryAll(Te);t=Sa(r,Or,Cr)}return D("ctx_stats",{content:[{type:"text",text:t}]})});De.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns results as a markdown checklist. No CLI execution needed.",inputSchema:L.object({})},async()=>{let t=["## context-mode doctor",""],e=Je(sr(Kt,"package.json"))?Kt:Rr(Kt),r=11,n=(Ia.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${Ia.length}/${r} (${n}%) \u2014 ${Ia.join(", ")}`),ya()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");{let s=new xs({runtimes:Ma});try{let i=await s.execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(i.exitCode===0&&i.stdout.trim()==="ok")t.push("- [x] Server test: PASS");else{let a=i.stderr?.trim()?` (${i.stderr.trim().slice(0,200)})`:"";t.push(`- [ ] Server test: FAIL \u2014 exit ${i.exitCode}${a}`)}}catch(i){t.push(`- [ ] Server test: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{s.cleanupBackgrounded()}}{let s;try{let i=ks();s=new i(":memory:"),s.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),s.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=s.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();a&&a.content==="hello world"?t.push("- [x] FTS5 / SQLite: PASS \u2014 native module works"):t.push("- [ ] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(i){t.push(`- [ ] FTS5 / SQLite: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{try{s?.close()}catch{}}}let o=sr(e,"hooks","pretooluse.mjs");return Je(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${Or}`),D("ctx_doctor",{content:[{type:"text",text:t.join(`
561
- `)}]})});De.registerTool("ctx_upgrade",{title:"Upgrade Plugin",description:"Upgrade context-mode to the latest version. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a checklist. Tell the user to restart their session after upgrade.",inputSchema:L.object({})},async()=>{let t=Je(sr(Kt,"package.json"))?Kt:Rr(Kt),e=sr(t,"cli.bundle.mjs"),r=sr(t,"build","cli.js"),n;if(Je(e))n=`node "${e}" upgrade`;else if(Je(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(`
562
- `),u=sr(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(`
563
- `);return D("ctx_upgrade",{content:[{type:"text",text:o}]})});De.registerTool("ctx_purge",{title:"Purge Knowledge Base",description:"Permanently deletes ALL session data for this project: FTS5 knowledge base (indexed content), session events DB (analytics, metadata, resume snapshots), and session events markdown. Resets in-memory stats. This is irreversible.",inputSchema:L.object({confirm:L.boolean().describe("Must be true to confirm the destructive operation.")})},async({confirm:t})=>{if(!t)return D("ctx_purge",{content:[{type:"text",text:"Purge cancelled. Pass confirm: true to proceed."}]});let e=[];if(Vt){let r=!1;try{Vt.cleanup(),r=!0}catch{}Vt=null,r&&e.push("knowledge base (FTS5)")}else{let r=kf(),n=!1;for(let o of["","-wal","-shm"])try{Pr(r+o),n=!0}catch{}n&&e.push("knowledge base (FTS5)")}try{let r=me(bf(),".context-mode","content",`${za()}.db`);for(let n of["","-wal","-shm"])try{Pr(r+n)}catch{}}catch{}try{let r=za(),n=Ip(),o=xn(),s=me(o,`${r}${n}.db`),i=me(o,`${r}${n}-events.md`),a=me(o,`${r}${n}.cleanup`),c=!1;for(let l of["","-wal","-shm"])try{Pr(s+l),c=!0}catch{}c&&e.push("session events DB");let u=!1;try{Pr(i),u=!0}catch{}u&&e.push("session events markdown");try{Pr(a)}catch{}}catch{}return Te.calls={},Te.bytesReturned={},Te.bytesIndexed=0,Te.bytesSandboxed=0,Te.cacheHits=0,Te.cacheBytesSaved=0,Te.sessionStart=Date.now(),e.push("session stats"),D("ctx_purge",{content:[{type:"text",text:`Purged: ${e.join(", ")}. All session data for this project has been permanently deleted.`}]})});De.registerTool("ctx_insight",{title:"Open Insight Dashboard",description:"Opens the context-mode Insight dashboard in the browser. Shows personal analytics: session activity, tool usage, error rate, parallel work patterns, project focus, and actionable insights. First run installs dependencies (~30s). Subsequent runs open instantly.",inputSchema:L.object({port:L.coerce.number().optional().describe("Port to serve on (default: 4747)")})},async({port:t})=>{let e=t||4747,r=Je(sr(Kt,"package.json"))?Kt:Rr(Kt),n=sr(r,"insight"),o=xn(),s=me(Rr(o),"insight-cache");if(!Je(me(n,"server.mjs")))return D("ctx_insight",{content:[{type:"text",text:"Error: Insight source not found in plugin. Try upgrading context-mode."}]});try{let i=[];Sf(s,{recursive:!0});let a=sk(me(n,"server.mjs")).mtimeMs,c=Je(me(s,"server.mjs"))?sk(me(s,"server.mjs")).mtimeMs:0;if(a>c&&(i.push("Copying source files..."),cN(n,s,{recursive:!0,force:!0}),i.push("Source files copied.")),!Je(me(s,"node_modules"))){i.push("Installing dependencies (first run, ~30s)...");try{$r("npm install --production=false",{cwd:s,stdio:"pipe",timeout:3e5})}catch{try{vf(me(s,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!Je(me(s,"node_modules","vite"))||!Je(me(s,"node_modules","better-sqlite3")))throw vf(me(s,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry");i.push("Dependencies installed.")}i.push("Building dashboard..."),$r("npx vite build",{cwd:s,stdio:"pipe",timeout:6e4}),i.push("Build complete.");try{let{request:p}=await import("node:http");await new Promise((y,x)=>{let k=p(`http://127.0.0.1:${e}/api/overview`,{timeout:2e3},w=>{w.resume(),y()});k.on("error",()=>x()),k.on("timeout",()=>{k.destroy(),x()}),k.end()}),i.push("Dashboard already running.");let h=`http://localhost:${e}`,g=process.platform;try{g==="darwin"?$r(`open "${h}"`,{stdio:"pipe"}):g==="win32"?$r(`start "" "${h}"`,{stdio:"pipe"}):$r(`xdg-open "${h}" 2>/dev/null || sensible-browser "${h}" 2>/dev/null`,{stdio:"pipe"})}catch{}return D("ctx_insight",{content:[{type:"text",text:`Dashboard already running at http://localhost:${e}`}]})}catch{}if(or&&or.pid&&!or.killed)try{or.kill("SIGTERM")}catch{}let{spawn:l}=await import("node:child_process"),d=l("node",[me(s,"server.mjs")],{cwd:s,env:{...process.env,PORT:String(e),INSIGHT_SESSION_DIR:xn(),INSIGHT_CONTENT_DIR:me(Rr(xn()),"content"),INSIGHT_PARENT_PID:String(process.pid)},detached:!0,stdio:"ignore"});d.on("error",()=>{}),d.unref(),or=d,await new Promise(p=>setTimeout(p,1500));try{let{request:p}=await import("node:http");await new Promise((h,g)=>{let y=p(`http://127.0.0.1:${e}/api/overview`,{timeout:3e3},x=>{h(),x.resume()});y.on("error",g),y.on("timeout",()=>{y.destroy(),g(new Error("timeout"))}),y.end()})}catch{return D("ctx_insight",{content:[{type:"text",text:`Port ${e} appears to be in use. Either a previous dashboard is still running, or another service is using this port.
558
+ `).length;if(s&&n.length===0)return D("ctx_batch_execute",{content:[{type:"text",text:`Batch timed out after ${r}ms. No output captured.`}],isError:!0});At(c);let l=vn(),d=`batch:${t.map(k=>k.label).join(",").slice(0,80)}`,f=l.index({content:a,source:d}),m=l.getChunksBySource(f.sourceId),p=["## Indexed Sections",""],h=[];for(let k of m){let w=Buffer.byteLength(k.content);p.push(`- ${k.title} (${(w/1024).toFixed(1)}KB)`),h.push(k.title)}let g=TN(l,e,d),x=l.getDistinctiveTerms?l.getDistinctiveTerms(f.sourceId):[],y=[`Executed ${t.length} commands (${u} lines, ${(c/1024).toFixed(1)}KB). Indexed ${f.totalChunks} sections. Searched ${e.length} queries.`,"",...p,"",...g,x.length>0?`
559
+ Searchable terms for follow-up: ${x.join(", ")}`:""].join(`
560
+ `);return D("ctx_batch_execute",{content:[{type:"text",text:y}]})}catch(n){let o=n instanceof Error?n.message:String(n);return D("ctx_batch_execute",{content:[{type:"text",text:`Batch execution error: ${o}`}],isError:!0})}});function uk(){return{prepare:()=>({run:()=>{},get:(...t)=>({cnt:0,compact_count:0,minutes:null,rate:0,avg:0,outcome:"exploratory"}),all:()=>[]})}}De.registerTool("ctx_stats",{title:"Session Statistics",description:"Returns context consumption statistics for the current session. Shows total bytes returned to context, breakdown by tool, call counts, estimated token usage, and context savings ratio.",inputSchema:L.object({})},async()=>{let t;try{let e=Aa(),r=Np(),n=de(Cr(),`${e}${r}.db`);if(Be(n)){let o=ks(),s=new o(n,{readonly:!0});try{let a=new ao(s).queryAll(Te);t=Sa(a,Or,Ir)}finally{s.close()}}else{let s=new ao(uk()).queryAll(Te);t=Sa(s,Or,Ir)}}catch{let r=new ao(uk()).queryAll(Te);t=Sa(r,Or,Ir)}return D("ctx_stats",{content:[{type:"text",text:t}]})});De.registerTool("ctx_doctor",{title:"Run Diagnostics",description:"Diagnose context-mode installation. Runs all checks server-side and returns results as a markdown checklist. No CLI execution needed.",inputSchema:L.object({})},async()=>{let t=["## context-mode doctor",""],e=Be(ir(Wt,"package.json"))?Wt:ar(Wt),r=11,n=(Ia.length/r*100).toFixed(0);t.push(`- [x] Runtimes: ${Ia.length}/${r} (${n}%) \u2014 ${Ia.join(", ")}`),ya()?t.push("- [x] Performance: FAST (Bun)"):t.push("- [-] Performance: NORMAL \u2014 install Bun for 3-5x speed boost");{let s=new xs({runtimes:Da});try{let i=await s.execute({language:"javascript",code:'console.log("ok");',timeout:5e3});if(i.exitCode===0&&i.stdout.trim()==="ok")t.push("- [x] Server test: PASS");else{let a=i.stderr?.trim()?` (${i.stderr.trim().slice(0,200)})`:"";t.push(`- [ ] Server test: FAIL \u2014 exit ${i.exitCode}${a}`)}}catch(i){t.push(`- [ ] Server test: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{s.cleanupBackgrounded()}}{let s;try{let i=ks();s=new i(":memory:"),s.exec("CREATE VIRTUAL TABLE fts_test USING fts5(content)"),s.exec("INSERT INTO fts_test(content) VALUES ('hello world')");let a=s.prepare("SELECT * FROM fts_test WHERE fts_test MATCH 'hello'").get();a&&a.content==="hello world"?t.push("- [x] FTS5 / SQLite: PASS \u2014 native module works"):t.push("- [ ] FTS5 / SQLite: FAIL \u2014 unexpected result")}catch(i){t.push(`- [ ] FTS5 / SQLite: FAIL \u2014 ${i instanceof Error?i.message:i}`)}finally{try{s?.close()}catch{}}}let o=ir(e,"hooks","pretooluse.mjs");return Be(o)?t.push(`- [x] Hook script: PASS \u2014 ${o}`):t.push(`- [ ] Hook script: FAIL \u2014 not found at ${o}`),t.push(`- [x] Version: v${Or}`),D("ctx_doctor",{content:[{type:"text",text:t.join(`
561
+ `)}]})});De.registerTool("ctx_upgrade",{title:"Upgrade Plugin",description:"Upgrade context-mode to the latest version. Returns a shell command to execute. You MUST run the returned command using your shell tool (Bash, shell_execute, run_in_terminal, etc.) and display the output as a checklist. Tell the user to restart their session after upgrade.",inputSchema:L.object({})},async()=>{let t=Be(ir(Wt,"package.json"))?Wt:ar(Wt),e=ir(t,"cli.bundle.mjs"),r=ir(t,"build","cli.js");try{let s=Cr(),i=de(ar(s),"insight-cache");if(Be(i)){try{process.platform==="win32"?St(`for /f "tokens=5" %a in ('netstat -ano ^| findstr :4747') do taskkill /F /PID %a`,{stdio:"pipe"}):St("lsof -ti:4747 | xargs kill 2>/dev/null",{stdio:"pipe"})}catch{}Na(i,{recursive:!0,force:!0})}}catch{}let n;if(Be(e))n=`node "${e}" upgrade`;else if(Be(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(process.platform==="win32"?"npm.cmd":"npm",["install"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','execFileSync(process.platform==="win32"?"npm.cmd":"npm",["run","build"],{cwd:T,stdio:"inherit",shell:process.platform==="win32"});','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(process.platform==="win32"?"npm.cmd":"npm",["install","--production"],{cwd:P,stdio:"inherit",shell:process.platform==="win32"});','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(`
562
+ `),u=ir(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(`
563
+ `);return D("ctx_upgrade",{content:[{type:"text",text:o}]})});De.registerTool("ctx_purge",{title:"Purge Knowledge Base",description:"Permanently deletes ALL session data for this project: FTS5 knowledge base (indexed content), session events DB (analytics, metadata, resume snapshots), and session events markdown. Resets in-memory stats. This is irreversible.",inputSchema:L.object({confirm:L.boolean().describe("Must be true to confirm the destructive operation.")})},async({confirm:t})=>{if(!t)return D("ctx_purge",{content:[{type:"text",text:"Purge cancelled. Pass confirm: true to proceed."}]});let e=[];if(Kt){let r=!1;try{Kt.cleanup(),r=!0}catch{}Kt=null,r&&e.push("knowledge base (FTS5)")}else{let r=kf(),n=!1;for(let o of["","-wal","-shm"])try{Rr(r+o),n=!0}catch{}n&&e.push("knowledge base (FTS5)")}try{let r=de(bf(),".context-mode","content",`${Aa()}.db`);for(let n of["","-wal","-shm"])try{Rr(r+n)}catch{}}catch{}try{let r=Aa(),n=Np(),o=Cr(),s=de(o,`${r}${n}.db`),i=de(o,`${r}${n}-events.md`),a=de(o,`${r}${n}.cleanup`),c=!1;for(let l of["","-wal","-shm"])try{Rr(s+l),c=!0}catch{}c&&e.push("session events DB");let u=!1;try{Rr(i),u=!0}catch{}u&&e.push("session events markdown");try{Rr(a)}catch{}}catch{}return Te.calls={},Te.bytesReturned={},Te.bytesIndexed=0,Te.bytesSandboxed=0,Te.cacheHits=0,Te.cacheBytesSaved=0,Te.sessionStart=Date.now(),e.push("session stats"),D("ctx_purge",{content:[{type:"text",text:`Purged: ${e.join(", ")}. All session data for this project has been permanently deleted.`}]})});De.registerTool("ctx_insight",{title:"Open Insight Dashboard",description:"Opens the context-mode Insight dashboard in the browser. Shows personal analytics: session activity, tool usage, error rate, parallel work patterns, project focus, and actionable insights. First run installs dependencies (~30s). Subsequent runs open instantly.",inputSchema:L.object({port:L.coerce.number().optional().describe("Port to serve on (default: 4747)")})},async({port:t})=>{let e=t||4747,r=Be(ir(Wt,"package.json"))?Wt:ar(Wt),n=ir(r,"insight"),o=Cr(),s=de(ar(o),"insight-cache");if(!Be(de(n,"server.mjs")))return D("ctx_insight",{content:[{type:"text",text:"Error: Insight source not found in plugin. Try upgrading context-mode."}]});try{let i=[],a=!1;Sf(s,{recursive:!0});let c=sk(de(n,"server.mjs")).mtimeMs,u=Be(de(s,"server.mjs"))?sk(de(s,"server.mjs")).mtimeMs:0;if(c>u&&(i.push("Copying source files..."),cN(n,s,{recursive:!0,force:!0}),i.push("Source files copied."),a=!0),!Be(de(s,"node_modules"))||a){i.push("Installing dependencies (first run, ~30s)...");try{St(process.platform==="win32"?"npm.cmd install --production=false":"npm install --production=false",{cwd:s,stdio:"pipe",timeout:3e5})}catch{try{Na(de(s,"node_modules"),{recursive:!0,force:!0})}catch{}throw new Error("npm install failed \u2014 please retry")}if(!Be(de(s,"node_modules","vite"))||!Be(de(s,"node_modules","better-sqlite3")))throw Na(de(s,"node_modules"),{recursive:!0,force:!0}),new Error("npm install incomplete \u2014 please retry");i.push("Dependencies installed.")}i.push("Building dashboard..."),St("npx vite build",{cwd:s,stdio:"pipe",timeout:6e4}),i.push("Build complete.");let d=!1;try{let{request:g}=await import("node:http");await new Promise((x,y)=>{let k=g(`http://127.0.0.1:${e}/api/overview`,{timeout:2e3},w=>{w.resume(),x()});k.on("error",()=>y()),k.on("timeout",()=>{k.destroy(),y()}),k.end()}),d=!0}catch{}if(d&&a){i.push("Killing stale dashboard server (source updated)...");try{process.platform==="win32"?St(`for /f "tokens=5" %a in ('netstat -ano ^| findstr :${e}') do taskkill /F /PID %a`,{stdio:"pipe"}):St(`lsof -ti:${e} | xargs kill 2>/dev/null`,{stdio:"pipe"}),await new Promise(g=>setTimeout(g,500))}catch{}i.push("Stale server killed.")}else if(d){i.push("Dashboard already running.");let g=`http://localhost:${e}`,x=process.platform;try{x==="darwin"?St(`open "${g}"`,{stdio:"pipe"}):x==="win32"?St(`start "" "${g}"`,{stdio:"pipe"}):St(`xdg-open "${g}" 2>/dev/null || sensible-browser "${g}" 2>/dev/null`,{stdio:"pipe"})}catch{}return D("ctx_insight",{content:[{type:"text",text:`Dashboard already running at http://localhost:${e}`}]})}if(sr&&sr.pid&&!sr.killed)try{sr.kill("SIGTERM")}catch{}let{spawn:f}=await import("node:child_process"),m=f("node",[de(s,"server.mjs")],{cwd:s,env:{...process.env,PORT:String(e),INSIGHT_SESSION_DIR:Cr(),INSIGHT_CONTENT_DIR:de(ar(Cr()),"content"),INSIGHT_PARENT_PID:String(process.pid)},detached:!0,stdio:"ignore"});m.on("error",()=>{}),m.unref(),sr=m,await new Promise(g=>setTimeout(g,1500));try{let{request:g}=await import("node:http");await new Promise((x,y)=>{let k=g(`http://127.0.0.1:${e}/api/overview`,{timeout:3e3},w=>{x(),w.resume()});k.on("error",y),k.on("timeout",()=>{k.destroy(),y(new Error("timeout"))}),k.end()})}catch{return D("ctx_insight",{content:[{type:"text",text:`Port ${e} appears to be in use. Either a previous dashboard is still running, or another service is using this port.
564
564
 
565
565
  To fix:
566
566
  - Kill the existing process: ${process.platform==="win32"?`netstat -ano | findstr :${e}`:`lsof -ti:${e} | xargs kill`}
567
- - Or use a different port: ctx_insight({ port: ${e+1} })`}]})}let f=`http://localhost:${e}`,m=process.platform;try{m==="darwin"?$r(`open "${f}"`,{stdio:"pipe"}):m==="win32"?$r(`start "" "${f}"`,{stdio:"pipe"}):$r(`xdg-open "${f}" 2>/dev/null || sensible-browser "${f}" 2>/dev/null`,{stdio:"pipe"})}catch{}return i.push(`Dashboard running at ${f}`),D("ctx_insight",{content:[{type:"text",text:i.map(p=>`- ${p}`).join(`
567
+ - Or use a different port: ctx_insight({ port: ${e+1} })`}]})}let p=`http://localhost:${e}`,h=process.platform;try{h==="darwin"?St(`open "${p}"`,{stdio:"pipe"}):h==="win32"?St(`start "" "${p}"`,{stdio:"pipe"}):St(`xdg-open "${p}" 2>/dev/null || sensible-browser "${p}" 2>/dev/null`,{stdio:"pipe"})}catch{}return i.push(`Dashboard running at ${p}`),D("ctx_insight",{content:[{type:"text",text:i.map(g=>`- ${g}`).join(`
568
568
  `)+`
569
569
 
570
- Open: ${f}
571
- PID: ${d.pid} \xB7 Stop: ${process.platform==="win32"?`taskkill /PID ${d.pid} /F`:`kill ${d.pid}`}`}]})}catch(i){let a=i instanceof Error?i.message:String(i);return D("ctx_insight",{content:[{type:"text",text:`Insight setup failed: ${a}`}]})}});async function IN(){let t=Tp();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=me(wf(),`context-mode-mcp-ready-${process.ppid}`),r=()=>{Rs.cleanupBackgrounded(),Vt&&Vt.close();try{Pr(Ef)}catch{}try{Pr(e)}catch{}if(or&&or.pid&&!or.killed)try{or.kill("SIGTERM")}catch{}},n=async()=>{r(),process.exit(0)};process.on("exit",r),process.on("SIGINT",()=>{n()}),process.on("SIGTERM",()=>{n()}),Jx({onShutdown:()=>n()});let o=new ha;await De.connect(o);try{pk(e,String(process.pid))}catch{}try{let{detectPlatform:s,getAdapter:i}=await Promise.resolve().then(()=>(ok(),nk)),a=De.server.getClientVersion(),c=s(a??void 0);Na=await i(c.platform),a&&console.error(`MCP client: ${a.name} v${a.version} \u2192 ${c.platform}`)}catch{}hN().then(s=>{s!=="unknown"&&(Cr=s)}),console.error(`Context Mode MCP server v${Or} running on stdio`),console.error(`Detected runtimes:
572
- ${Ex(Ma)}`),ya()||(console.error(`
570
+ Open: ${p}
571
+ PID: ${m.pid} \xB7 Stop: ${process.platform==="win32"?`taskkill /PID ${m.pid} /F`:`kill ${m.pid}`}`}]})}catch(i){let a=i instanceof Error?i.message:String(i);return D("ctx_insight",{content:[{type:"text",text:`Insight setup failed: ${a}`}]})}});async function IN(){let t=$p();t>0&&console.error(`Cleaned up ${t} stale DB file(s) from previous sessions`);let e=de(wf(),`context-mode-mcp-ready-${process.ppid}`),r=()=>{Rs.cleanupBackgrounded(),Kt&&Kt.close();try{Rr(Ef)}catch{}try{Rr(e)}catch{}if(sr&&sr.pid&&!sr.killed)try{sr.kill("SIGTERM")}catch{}},n=async()=>{r(),process.exit(0)};process.on("exit",r),process.on("SIGINT",()=>{n()}),process.on("SIGTERM",()=>{n()}),Jx({onShutdown:()=>n()});let o=new ha;await De.connect(o);try{pk(e,String(process.pid))}catch{}try{let{detectPlatform:s,getAdapter:i}=await Promise.resolve().then(()=>(ok(),nk)),a=De.server.getClientVersion(),c=s(a??void 0);za=await i(c.platform),a&&console.error(`MCP client: ${a.name} v${a.version} \u2192 ${c.platform}`)}catch{}hN().then(s=>{s!=="unknown"&&(Ir=s)}),console.error(`Context Mode MCP server v${Or} running on stdio`),console.error(`Detected runtimes:
572
+ ${Ex(Da)}`),ya()||(console.error(`
573
573
  Performance tip: Install Bun for 3-5x faster JS/TS execution`),console.error(" curl -fsSL https://bun.sh/install | bash"))}IN().catch(t=>{console.error("Fatal:",t),process.exit(1)});export{mk as extractSnippet,TN as formatBatchQueryResults,EN as positionsFromHighlight};